@charset "UTF-8";

.company_block02_gazou {
  width: 800px;
  padding: 10px;
  text-align: center;
  margin: 30px auto;
}
/* スマホ　767px以下 */
@media only screen and (max-width: 767px) {
 .company_block02_gazou {
    width: 100%;
    height: auto;
  }
}
/* pc　768px以上 */
@media only screen and (min-width: 768px), print {
 .company_block02_gazou {
    width: 800px;
    height: auto;
  }
}

.sub-main {
  padding-top: 60px;
  margin-bottom: 60px;
  text-align: center;
}

@media only screen and (max-width: 690px) {
  .sub-main {
    padding-top: 40px;
    margin-bottom: 40px;
  }
  .subcon {
    width: 85%;
    margin-left: auto;
    margin-right: auto;
  }
}

.img img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.download .col{
  padding: 40px;
  border: 1px solid #dddddd;
  font-weight: 300;
}
.c_title{
  margin-top: 30px;
  margin-bottom: 10px;
  font-size: 20px;
  text-align: center;
}

@media only screen and (max-width: 979px) {
  .download .about-main-btns-wrap{
    margin-top: 20px;
  }
}
@media only screen and (max-width: 690px) {
  .download .col{
    padding: 20px;
  }
  .sub-cont{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}

.thanks .incont{
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  font-weight: 400;
}



.fcol2 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 80px;
}
.fcol {
  width: 48%;
}
.fcol + .fcol {
  margin-left: 4%;
}
@media only screen and (max-width: 979px) {
  .fcol {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
  .fcol + .fcol {
    margin-left: 0;
    margin-top: 30px;
    width: 100%;
  }
}
@media only screen and (max-width: 690px) {
  .fcol,
  .fcol + .fcol {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .fcol .img {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
}


.rss-list .rss_title{
  display: flex;
  aligns: flex-start;
  width: calc(100% - 120px);
}
.rss-list .rss_category{
  display: block;
  width: 150px;
}
.rss-list .rss_txt{
  width: calc(100% - 150px);
}
@media only screen and (max-width: 979px) {
  .rss-list .rss-inner{
    flex-wrap: wrap;
  }
  .rss-list .rss_date{
    width: 100%;
  }
  .rss-list .rss_title{
    width: 100%;
    margin-top: 10px;
  }
}
@media only screen and (max-width: 690px) {
  .rss-list .rss_title{
    flex-wrap: wrap;
  }
  .rss-list .rss_category{
    display: inline-block;
    width: 100%;
  }
  .rss-list .rss_txt{
    width: 100%;
    margin-top: 5px;
  }
}


/*
price tab 01
--------------------------------------------*/
.wide.section-desc{
  max-width: 940px;
}
.singleitem .col{
  border: 1px solid #cccccc;
  padding: 30px 25px;
  color: #484848;
}
.singleitem .col:nth-child(n+4){
  margin-top: 30px;
}
.siteminfo{
  display: flex;
  align-items: center;
}
.itemicon{
  width: 65px;
  margin-right: 20px;
}
.itemicon img{
  width: 100%;
  height: auto;
}
.sitemname{
  font-weight: 300;
  font-size: 12px;
}
.sitemtitle{
  font-size: 22px;
  color: #000000;
}
.sitemtxt{
  font-weight: 300;
  font-size: 12px;
  line-height: 2;
  letter-spacing: 1px;
}
.sitemprice{
  text-align: center;
  font-size: 32px;
  color: #00C896;
  line-height: 1.2;
  margin: 20px auto 25px;
}
.sitemprice .in{
  font-weight: 400;
  font-size: 18px;
  padding-left: .5em;
}

@media only screen and (max-width: 979px) {
  .singleitem .col:nth-child(n+3){
    margin-top: 20px;
  }
}
@media only screen and (max-width: 690px) {
  .singleitem .col:nth-child(n+2){
    margin-top: 20px;
  }
  .singleitem{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .singleitem .col{
    padding: 25px 20px;
  }
  .sitemprice{
    font-size: 28px;
    margin: 15px auto 20px;
  }
  .sitemprice .in{
    font-size: 16px;
  }
}


/*
price tab 02 03
--------------------------------------------*/
.ptitle{
  text-align: center;
  font-weight: 600;
  font-size: 22px;
  margin-bottom: 50px;
}
.pprice{
  padding: 40px 0 50px;
  box-shadow: 0 0 10px 2px rgba(0,0,0,.08);
  border-radius: 4px;
  text-align: center;
  font-weight: 300;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  font-size: 14px;
}
.pptitle{
  font-weight: 500;
  font-size: 26px;
  margin-bottom: 20px;
}
.pptitle.blue{color: #0064FF;}
.pptitle.purple{color: #B400FF;}

.ppricetxt{
  display: flex;
  align-items: center;
  justify-content: center;
}
.ppricetxt + .ppricetxt{
  margin-top: 10px;
}
.ppricetxt dt{
  margin-right: 20px;
  font-size: 22px;
  font-weight: 500;
}
.ppricetxt dd{
  font-size: 22px;
  font-weight: 500;
}
.ppricetxt dd .in{
  font-size: 16px;
  padding-left: 5px;
}

@media only screen and (max-width: 690px) {
  .ptitle{
    font-size: 18px;
    margin-bottom: 30px;
  }
  .pprice{
    width: 90%;
    padding: 20px 20px 30px;
  }
  .ppricetxt dt,
  .ppricetxt dd{
    margin-right: 15px;
    font-size: 18px;
  }
  .ppricetxt dd .in{
    font-size: 14px;
  }
}


/* ------------*/
.pitem{
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 50px;
  border-bottom: 1px solid #CAD6D6;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.pcoll{
  width: 50%;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.8;
}
.pcoll figure img{
  height: 60px;
  width: auto;
}
.pcolr{
  width: 40%;
  margin-left: auto;
}
.pcolr li{
  list-style: none;
  margin-bottom: 13px;
  padding-left: 35px;
  font-weight: 400;
  background: url('../image/common/icon_check.png') no-repeat left center;
}
.pitem + .pitem{
  margin-top: 60px;
}

.pprice .col + .col{
  border-left: 1px solid #cccccc;
}
@media only screen and (max-width: 690px) {
  .pitem{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 30px;
  }
  .pcoll{
    width: 100%;
    font-size: 14px;
  }
  .pcoll figure img{
    height: 40px;
  }
  .pcolr{
    width: 100%;
    margin-top: 20px;
    padding-left: 1em;
  }
  .pcolr li{
    margin-bottom: 10px;
    padding-left: 25px;
    background-size: 14px auto;
    font-size: 13px;
    font-weight: 300;
  }
  .pitem + .pitem{
    margin-top: 30px;
  }
  .pprice .col + .col{
    border-left: none;
    border-top: 1px solid #cccccc;
    padding-top: 15px;
    margin-top: 15px;
  }
}

/* products page tab
---------------------------------*/
.tab-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-top: -5px;
}
.tab-label {
  position: relative;
  order: -1;
  width: 25.333%;
  padding: 0 1em 20px;
  margin: auto 4%;
  text-align: center;
  border-bottom: 3px solid #ffffff;
  line-height: 1.4;
  cursor: pointer;
  color: #999999;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tab-label.ml0 {
  margin-right: 0;
}
.tab-content {
  display: none;
  margin-top: 70px;
  width: 100%;
}
.tab-switch:checked + .tab-label {
  border-bottom-color: #333333;
  color: #000000;
}
.tab-switch:checked + .tab-label + .tab-content {
  display: block;
}
.tab-switch {
  display: none;
}
@media only screen and (max-width: 979px) {
  .tab-content {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 690px) {
  .tab-label {
    width: 29.333%;
    padding: 0 .5em 20px;
    margin: auto 2%;
    font-size: 13px;
  }
}

.pricelink{
  display: flex;
  align-items: center;
  margin-bottom: 70px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
}
.pricelink li{
  width: 27.333%;
  padding: 0 1em 20px;
  margin: auto 3%;
  text-align: center;
  border-bottom: 3px solid #ffffff;
  line-height: 1.4;
  cursor: pointer;
  color: #999999;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pricelink li a{
  display: flex;
  align-items: center;
  justify-content: center;
}
.pricelink li.is-active {
  border-bottom-color: #333333;
  color: #000000;
}

@media only screen and (max-width: 979px) {
  .pricelink li{
    width: 29.333%;
    padding: 0 .5em 20px;
    margin: auto 2%;
  }
}
@media only screen and (max-width: 690px) {
  .pricelink li{
    width: 29.333%;
    padding: 0 .5em 20px;
    margin: auto 2%;
    font-size: 13px;
  }
  .pricelink{
    margin-bottom: 30px;
  }
}




/*
サポート
-------------------------------------------------------------------*/
.innerl{
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  width: 85%;
  font-weight: 400;
  line-height: 1.8;
}
.pageinfoA{
  background-color: #F2F2F2;
  margin-top: 84px;
  font-weight: 400;
  margin-bottom: 50px;
}
.pageinfoAin{
  max-width: 1500px;
  padding: 100px 0 0;
  margin: auto;
  background: url("../image/support_title_bg.png") no-repeat left center / auto 100%;
}
.pageinfoB{
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 100px;
}
.pagetitle{
  font-size: 45px;
  margin-bottom: 15px;
  font-weight: 500;
}
.pagelead{
  line-height: 2;
}
.pagelink{
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: -20px;
}
.pagelink li {
  margin: 0 1.5em;
}
.pagelink li a{
  font-size: 20px;
  padding-bottom: 20px;
  border-bottom: 2px solid transparent;
  display: block;
}
.pagelink li a:hover{
  color:  #999D9D;
  border-bottom-color: #999;
}
@media screen and (max-width: 979px) {
  .pageinfoAin{
    padding: 60px 0 0;
  }
  .pageinfoB{
    padding-bottom: 80px;
  }
  .pagelink li {
    margin: 0 1em;
  }
  .pagelink li a{
    font-size: 16px;
  }
}
@media screen and (max-width: 690px) {
  .pageinfoA{
    background-color: #fff;
    margin-top: 53px;
  }
  .pageinfoAin{
    padding: 0 0;
    width: 100%;
    background: none;
  }
  .pageinfoAin{
    background-image: none !important;
  }
  .pageinfoB{
    padding-bottom: 40px;
    padding: 40px 30px;
    width: 100%;
    background: #f2f2f2 url("../image/support_title_bg.png") no-repeat left center / auto 100%;
  }
  .pagetitle {
    font-size: 32px;
    margin-bottom: 10px;
  }
  .pagelink{
    flex-direction: column;
    padding: 20px 2em;
    border-bottom: 1px solid #ccc;
    width: 90%;
    margin: auto;
  }
  .pagelink li {
    margin: 10px auto;
  }
  .pagelink li a{
    font-size: 18px;
    text-align: center;
    padding-bottom: 0;
  }
}


.subtitle{
  text-align: center;
  font-size: 2.6rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 690px) {
  .subtitle{
    font-size: 2.4rem;
    margin-bottom: 15px;
  }
}
.scol2{
  display: flex;
  align-items: center;
}
.scol{
  width: 48%;
  padding: 40px;
  display: flex;
  align-items: center;
  background-color: #f2f2f2;
}
.scol+.scol{
  margin-left: 4%;
}
.scoli{
  width: 25%;
}
.scolt{
  margin-left: auto;
  width: 70%;
}
.scolt .title{
  margin-bottom: 5px;
  font-size: 2rem;
}
@media screen and (max-width: 979px) {
  .scol{
    flex-wrap: wrap;
  }
  .scoli{
    width: 30%;
    margin: auto auto 15px;
  }
  .scolt{
    margin-left: auto;
    width: 100%;
  }
  .scol{
    padding: 30px 30px ;
  }
  .scolt .title{
    text-align: center;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 690px) {
  .scol2{
    flex-wrap: wrap;
  }
  .scol{
    width: 100%;
  }
  .scol+.scol{
    margin-top: 20px;
    margin-left: 0;
  }
  .scolt .title{
    font-size: 1.8rem;
  }
}




.manuA{
  background-color: #f2f2f2;
  padding: 80px 0;
}
.manuB ul{
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
}
.manuB li{
  width: calc(20% - 12px);
  margin-right: 15px;
  text-align: center;
}
.manuB li:nth-child(5n){
  margin-right: 0;
}
.manuB li:nth-child(n+6){
  margin-top: 20px;
}
.manuB li a{
  display: block;
  background-color: #fff;
  border-radius: 8px;
  padding: 25px 10px;
  margin-bottom: 10px;

  transition: .6s;
}
.manuB li a:hover{
  box-shadow: rgba(45,45,45,0.05) 0px 2px 2px, rgba(49,49,49,0.05) 0px 4px 4px, rgba(42,42,42,0.05) 0px 8px 8px, rgba(32,32,32,0.05) 0px 16px 16px, rgba(49,49,49,0.05) 0px 32px 32px, rgba(35,35,35,0.05) 0px 64px 64px;
}
.manuB li img{
  max-height: 45px;
}
.manuB li > p{
  font-size: 1.2rem;
  line-height: 1.6;
  color: #888;
}
.manuB li > p .in{
  font-size: 1.4rem;
  color: #000;
  font-weight: 500;
  display: block;
}

@media screen and (max-width: 979px) {
  .manuA{
    padding: 60px 0;
  }
  .manuB li{
    width: calc(33.333% - 10px);
    margin-right: 15px;
  }
  .manuB li:nth-child(5n){
    margin-right: 15px;
  }
  .manuB li:nth-child(3n){
    margin-right: 0;
  }
  .manuB li:nth-child(n+4){
    margin-top: 20px;
  }
}
@media screen and (max-width: 690px) {
  .manuA{
    padding: 40px 0;
  }
  .manuB li{
    width: 100%;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    text-align: left;
  }
  .manuB li:nth-child(5n){
    margin-right: auto;
  }
  .manuB li:nth-child(n+2){
    margin-top: 10px;
  }
  .manuB li a{
    width: 55%;
    margin-bottom: 0;
  }
  .manuB li>p{
    width: 45%;
    padding-left: 1em;
    font-size: 1.4rem;
  }
  .manuB li > p .in{
    font-size: 1.6rem;
  }
}


.supositeA{
  padding: 80px 0;
}
.supositeA ul{
  display: flex;
  align-items: center;
}
.supositeA li{
  width: calc(33.333% - 20px);
  text-align: center;
}
.supositeA li+li{
  margin-left: 30px;
}
.supositeA li a{
  display: block;
  background-color: #f2f2f2;
  border-radius: 8px;
  padding: 35px 25px;
  margin-bottom: 10px;
  transition: .6s;
}
.supositeA li a:hover{
  box-shadow: rgba(45,45,45,0.05) 0px 2px 2px, rgba(49,49,49,0.05) 0px 4px 4px, rgba(42,42,42,0.05) 0px 8px 8px, rgba(32,32,32,0.05) 0px 16px 16px, rgba(49,49,49,0.05) 0px 32px 32px, rgba(35,35,35,0.05) 0px 64px 64px;
}
.supositeA li img{
  max-height: 30px;
}
.supositeA li > p{
  font-size: 1.4rem;
  line-height: 1.6;
}
@media screen and (max-width: 979px) {
  .supositeA{
    padding: 60px 0;
  }
  .supositeA li{
    width: calc(33.333% - 10px);
  }
  .supositeA li+li{
    margin-left: 15px;
  }
  .supositeA li a{
    padding: 35px 15px;
  }
}
@media screen and (max-width: 690px) {
  .supositeA{
    padding: 40px 0;
  }
  .supositeA ul{
    flex-wrap: wrap;
  }
  .supositeA li{
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  .supositeA li+li{
    margin-left: auto;
    margin-top: 25px;
  }
  .supositeA li a{
    padding: 30px 20px;
  }
}


.subtitlesub{
  text-align: center;
  display: inline-block;
  padding: 5px 10px;
  color: #fff;
  font-size: 1.4rem;
  letter-spacing: 2px;
  line-height: 1;
  background-color: #00C896;
  position: relative;
  top: -15px;
  margin: 0 auto 25px;
}
.ftofsupoA{
  background-color: #f2f2f2;
  padding: 80px 0;
}
.ftofsupoA ul{
  display: flex;
  align-items: center;
}
.ftofsupoA li{
  width: calc(33.333% - 20px);
  text-align: center;
}
.ftofsupoA li+li{
  margin-left: 30px;
}
.ftofsupoA li a{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  background-color: #fff;
  border-radius: 8px;
  padding: 25px 15px;
  margin-bottom: 10px;
  transition: .6s;
  border: 1px solid #00C896;
  text-align: center;
  justify-content: center;
  color: #00C896;
  position: relative;
  font-size: 2rem;
}
.ftofsupoA li a .in{
  font-size: 1.4rem;
  width: 100%;
  display: block;
}
.ftofsupoA li a .txts{
  font-size: 1.4rem;
}
.ftofsupoA li a::after {
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #00C896;
  transform: rotate(45deg);
  transition: .6s;
  vertical-align: middle;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
}
.ftofsupoA li a:hover{
  box-shadow: rgba(45,45,45,0.05) 0px 2px 2px, rgba(49,49,49,0.05) 0px 4px 4px, rgba(42,42,42,0.05) 0px 8px 8px, rgba(32,32,32,0.05) 0px 16px 16px, rgba(49,49,49,0.05) 0px 32px 32px, rgba(35,35,35,0.05) 0px 64px 64px;
}
@media screen and (max-width: 1119px) {
  .ftofsupoA li a{
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 979px) {
  .ftofsupoA{
    padding: 60px 0;
  }
  .ftofsupoA li{
    width: calc(33.333% - 10px);
  }
  .ftofsupoA li+li{
    margin-left: 15px;
  }
  .ftofsupoA li a .txts{
    font-size: 1.2rem;
  }
  .ftofsupoA li a::after {
    right: 10px;
  }
}
@media screen and (max-width: 690px) {
  .subtitlesub{
    margin: 0 auto 15px;
  }
  .ftofsupoA{
    padding: 40px 0;
  }
  .ftofsupoA ul{
    flex-wrap: wrap;
  }
  .ftofsupoA li{
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  .ftofsupoA li+li{
    margin-left: auto;
    margin-top: 10px;
  }
  .ftofsupoA li a{
    padding: 20px 15px;
    font-size: 1.8rem;
  }
  .ftofsupoA li a .txts{
    font-size: 1.4rem;
  }
  .ftofsupoA li a::after {
    right: 15px;
  }
}

#locator.bottom{
  margin-top: 40px;
}




/*-----------------------*/




/* company 20210609 */	
/* --------------------------------------------------------------- */
@font-face {
  font-family: "DINNextLTPro-Bold";
  src: url("../font/DINNextLTPro-Bold.otf") format("opentype");
}
@font-face {
  font-family: "DINNextLTPro-Regular";
  src: url("../font/DINNextLTPro-Regular.otf") format("opentype");
}

.company_main {
	width:100%;
	height:0;
	padding-bottom: 34.95%;
	background: url("../image/company_main_bg.jpg") no-repeat center center;
	background-size: cover;
	background-position: center center;
	position: relative;
	margin-top:84px;
}

.company_main .title_area {
	position: absolute;
	left:0;
	right:0;
	top:20%;
	margin-left:auto;
	margin-right:auto;
	max-width:90%;
	width:1200px;
	color:#ffffff;
}
.company_main .title_area h1 {
	font-size:77px;
	font-family:"DINNextLTPro-Regular", sans-serif;
	font-weight: normal;
	letter-spacing: 0.1em;
	line-height: 1;
}
.company_main .title_area .title_jp {
	font-size:26px;
	font-weight: bold;
	letter-spacing: 0.2em;
}


.company_main .main_link {
	display: flex;
	justify-content: center;
	position: absolute;
	left:0;
	right:0;
	bottom:0;
	margin-left:auto;
	margin-right:auto;
}
.company_main .main_link li a {
	font-size:20px;
	font-weight: bold;
	padding:0 30px 20px;
	display: block;
	position: relative;
}
.company_main .main_link li.current a {
	color:#999D9D;
}

.company_main .main_link li.current a::before {
	content:"";
	width:100%;
	height:4px;
	background: #999D9D;
	position: absolute;
	bottom:0;
	left:0;
}

.company_main .main_link li a:hover {
	color:#999D9D;
}



@media screen and (max-width: 1120px) { 
	.company_main .title_area h1 {
		font-size:6.5vw;
	}
	.company_main .title_area .title_jp {
		font-size:2.5vw
	}
}


@media screen and (max-width: 690px) { 
	.company_main {
		margin-top:53px;
		padding-bottom: 50%;
	}
	.company_main .title_area h1 {
		font-size:8vw;
	}
	.company_main .title_area .title_jp {
		font-size:3.5vw;
	}
	.company_main .main_link li a {
		font-size:16px;
	}
	.company_main .main_link {
		bottom:-67px;
	}
}


.company_title02_en {
	font-family:"DINNextLTPro-Bold", sans-serif;
	font-weight: bold;
	font-size: 50px;
	letter-spacing: 0.08em;
	padding-top:0.2em;
}

.company_block01.align_start .company_title02_en {
	padding-top:0;
}

.company_title02 {
	font-size:40px;
	line-height: 1.7;
}

.company_block01 {
	display: flex;
	align-items: center;
}
.company_block01.align_start {
	align-items:flex-start;
}
.company_block01 .left {
	width:34%;	
}

.company_block01 .right {
	width:66%;
}
.company_block01 .right .catch {
	font-weight: 700;
	font-size:80px;
	letter-spacing: 0.15em;
}

.company_block02 {
	padding-left:34%;
	font-size: 18px;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.1em;
}
.company_block02 .catch02 {
	font-size:30px;
	font-weight: bold;
	line-height: 1.7;	
}

.company_gray {
	background: #F2F2F2;
	padding:140px 0;
}

.person_box {
	display: flex;
	align-items: center;
}
.person_box .name {
	width:340px;
}
.person_box .img {
	width:185px;
}

.number_title {
	width: 786px;
	max-width: 90%;
	text-align: right;
	color:#999D9D;
	margin-left:auto;
	margin-right:auto;
}

.company_number_graph {
	border-top:1px solid #000000;
	border-bottom:1px solid #000000;
	padding:50px 0;
}

.number_title03 {
	font-size:34px;
	font-weight: bold;
	color:#999D9D;
	text-align: center;
}

.company_number_graph .number_2col {
	display: flex;
	justify-content: space-around;
	font-size:40px;
	font-weight: 900;
}
.company_number_graph .number_2col span {
	font-family:"DINNextLTPro-Bold", sans-serif;
	letter-spacing: 0;
	font-size:90px;
}

.number_3col {
	display: flex;
}
.number_3col > div {
	flex-grow: 1;
	text-align: center;
	border-left:1px solid #000000;
	font-size:40px;
	font-weight: 900;
	line-height: 1;
	padding-top:20px;
}

.number_3col > div span {
	font-family:"DINNextLTPro-Bold", sans-serif;
	font-size:90px;
}

.number_3col > div .font_s {
	font-size:15px;
	color:#999D9D;
	font-weight: bold;
}

.number_3col > div:first-child {
	border-left:none;
}

@media screen and (max-width: 1024px) {
	.company_number_graph .number_2col {
		font-size:3.5vw;
	}
	.company_number_graph .number_2col span {
		font-size:7.5vw
	}
	.number_3col .number_title03 {
		font-size:26px;
	}
	.number_3col > div {
		font-size:4vw;
	}
	.number_3col > div span {
		font-size:7.5vw;
	}
	
}

@media screen and (max-width: 979px) {
	
	.company_title02_en {
		font-size:42px;
	}
	.company_title02 {
		font-size:34px;
	}
	.company_block01 .right .catch {
		font-size:60px;
	}
	.company_block02 .catch02 {
		font-size:24px;
	}
	.company_block02 {
		font-size:17px;
	}
	.company_gray {
		padding:100px 0;
	}
}

@media screen and (max-width: 690px) {
	.company_block01 {
		flex-direction: column;
	}
	.company_block01 .left {
		width:100%;	
	}
	.company_block01 .right {
		width:100%;
	}
	.company_title02_en {
		font-size:28px;
	}
	.company_title02 {
		font-size:25px;
	}
	.company_block01 .right .catch {
		font-size:42px;
	}
	.company_block02 {
		padding-left:0;
		font-size:16px;
		letter-spacing: 0.05em;
	}
	.company_block02 .catch02 {
		font-size:22px;
	}
	.company_gray {
		padding:50px 0;
	}
	.person_box .name {
		width:62%;
		margin-right:3%;
		font-size:15px;
	}
	.person_box .img {
		width:35%;
	}
	.number_title03 {
		font-size:24px;
	}
	.number_3col {
		flex-direction: column;
	}
	.number_3col > div {
		border-left:none;
		border-bottom: 1px solid #000000;
		padding-bottom: 20px;
	}
	.number_3col > div {
		font-size:20px;
	}
	.number_3col > div span {
		font-size:40px;
	}
}

/* info */
/* ---------------------------------------------- */
table.c_outline th {
	background: #F2F2F2;
	width:200px;
	vertical-align: middle;
	text-align: center;
	font-size:18px;
	font-weight: 500;
}
table.c_outline td {
	width:calc(100% - 200px);
	font-size:18px;
	font-weight: 500;
	padding:25px;
}

.info_business {
	background: #F2F2F2;
	padding:80px 0 40px;
}
.info_business ul {
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
}
.info_business ul li {
	width:32%;
	margin-left:2%;
	margin-bottom: 40px;
}

.info_business ul li:first-child,
.info_business ul li:nth-child(4) {
	margin-left:0;
}

.info_business ul li a {
	background: #ffffff;
	display: block;
	text-align: center;
	padding:30px 0;
	border-radius:10px;
	font-size: 20px;
	font-weight: bold;
}

.info_business ul li a:hover {
	opacity:0.7;
}

@media screen and (max-width: 979px) {
	.info_business ul li {
		width:49%;
		margin-bottom: 30px;
	}
	.info_business ul li a {
		font-size:16px;
	}

	.info_business ul li:nth-child(4) {
		margin-left:2%;
	}
	.info_business ul li:nth-child(odd) {
		margin-left:0;
	}
}


@media screen and (max-width: 690px) {
	table.c_outline th,
	table.c_outline td {
		width:100%;
		display: block;
		font-size:16px;
		padding:15px;
	}
	.info_business {
		padding:50px 0 30px;
	}
	.info_business ul li {
		width:100%;
		margin-left:0;
		margin-bottom: 20px;
	}
	.info_business ul li:nth-child(4) {
		margin-left:0;
	}
}



.info_service {
	padding:80px 0 60px;
	background: #F2F2F2;
}

.info_service h3 {
	font-size:24px;
	text-align: center;
}


@media screen and (max-width: 690px) {
	.info_service h3 {
		font-size:22px;
	}
	
}

.tool_wrap {
	display: flex;
	justify-content: space-between;
}
.tool_wrap .left {
	width:240px;
}
.tool_wrap .right {
	width:calc(100% - 300px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.tool_wrap .right > div {
	width:330px;
	max-width: 48%;
	margin-bottom: 20px;
	line-height: 1.2;
}

.tool_wrap .right > div a {
	font-size:20px;
	font-weight: bold;
}
.tool_wrap .right > div a:hover {
	text-decoration: underline;
	opacity:0.7;
}
.tool_wrap .right > div .font_s {
	font-size:12px;
	font-weight: 500;
}


@media screen and (max-width: 1120px) {
	.tool_wrap .right {
		width:calc(100% - 260px);
	}	
}

@media screen and (max-width: 979px) {
	.tool_wrap {
		flex-direction: column;
		align-items: center;
	}
	.tool_wrap .left {
		margin-bottom: 30px;
	}
	.tool_wrap .right {
		width:100%;
	}
	
}


@media screen and (max-width: 690px) {
	.info_service {
		padding:50px 0 30px;
	}
	.tool_wrap .left {
		width:120px;
	}
	.tool_wrap .right {
		flex-direction: column;
	}
	.tool_wrap .right > div {
		max-width: 100%;
	}
}


.info_solution {
	padding:80px 0 40px;
	background: #F2F2F2;
}
.info_solution ul {
	display: flex;
	flex-wrap: wrap;
}

.info_solution ul li {
	width:33.33%;
	margin-bottom: 40px;
}

.info_solution ul li a {
	font-size:20px;
	font-weight: bold;
}

@media screen and (max-width: 979px) {
	.info_solution ul li a {
		font-size:18px;
	}
	.info_solution ul li { 
		width:50%;	
	}
}

@media screen and (max-width: 690px) {
	.info_solution {
		padding:50px 0 30px;
	}
	.info_solution ul li {
		width:100%;
		margin-bottom: 20px;
	}
	.info_solution ul li a { 
		font-size:16px;
	}
}

/* package */
/* ---------------------------------------------- */

.package-list {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.package-item {
    width: 31%;
    border: 1px solid #cacccc;
}

.package-item:not(:nth-child(3n + 1)) {
    margin-left: 3.5%;
}

.package-thum {
    position: relative;
    overflow: hidden;
}

.package-info {
    padding: 30px 25px;
    position: relative;
    padding-bottom: 28px;
}

.package-name {
    font-size: 18px;
    line-height: 1.3;
    min-height: 36px;
}

.package-name-add {
	text-align: center;
    font-size: 32px;
    color: #00C896;
    line-height: 1.2;
    margin: 20px auto 25px;
}

.package-name-add .in {
    font-weight: 400;
    font-size: 18px;
    padding-left: 0.5em;
}

.package_subject {
	color: #00C896;
	font-size: 14px;
	padding-left: 3.5em;
	text-indent: -3.7em;
}

.package_subject .s_in {
	border: 1px solid #707070;
	padding: 1px 8px;
    color: #707070;
    font-size: 12px;
    margin-right: 10px;
}

.package-desc {
    font-weight: 300;
    font-size: 12px;
    margin-top: 10px;
    line-height: 2;
    letter-spacing: 1px;
    min-height: 100px;
}

.package-icon-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: -25px;
    right: 15px;
}

.package-icon-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: -25px;
    right: 10px;
}

.package-icon-img {
    width: 38px;
    height: auto;
	margin: 0px 2px;
}

.package-btns-wrap {
    margin-top: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.package-btn {
    display: block;
    border: 2px solid #000;
    border-radius: 80px;
    position: relative;
    width: 47%;
    font-size: 12px;
    padding: 4px 0;
    padding-bottom: 5px;
    text-align: center;
}

.package-btn:hover:after {
  -webkit-transform: rotate(45deg) skew(-4deg, -5deg) translate(2px, -2px);
  -ms-transform: rotate(45deg) skew(-4deg, -5deg) translate(2px, -2px);
  transform: rotate(45deg) skew(-4deg, -5deg) translate(2px, -2px);
}

.package-btn:after {
  content: "";
  width: 7px;
  height: 7px;
  -webkit-transform: rotate(45deg) skew(-4deg, -5deg);
  -ms-transform: rotate(45deg) skew(-4deg, -5deg);
  transform: rotate(45deg) skew(-4deg, -5deg);
  border-top: 1px solid black;
  border-right: 1px solid black;
  display: inline-block;
  margin-left: 2px;
  margin-top: -3px;
  vertical-align: middle;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.package-btn:not(:first-child) {
  margin-left: 6%;
}

@media screen and (max-width: 767px) {
  .package-list {
    display: block;
    margin: 40px auto 0 auto;
	width: 85%;
  }
	
  .package-item {
    width: 100%;
	margin: 0 0 30px 0;
  }
	
.package-item:not(:nth-child(3n + 1)) {
     margin-left: 0;
}
}


