@charset "utf-8";

body{font-family: "YakuHanJPs","Yu Gothic Medium","游ゴシック Medium",YuGothic,"游ゴシック体","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;}

.cl{clear: both;}
small{font-size: 80%}
big,
.big{font-size: 120%}
.red{color: #cc0000!important;}

.bg_y{background: #f7d368!important;}
.bg_b{background:#0070c0;}

.w1000{width: 1000px;margin:0 auto;display: block;overflow: hidden;}
.w800{width: 800px;margin:0 auto;display: block;overflow: hidden;}
.w400{width: 400px;display: block;overflow: hidden;}
.mt-20{margin-top: -20px!important;}
.mt-25{margin-top: -25px!important;}
.mt-30{margin-top: -30px!important;}
.mt160{margin-top: 170px!important;}
/*#mainSec{position: relative; background-position: center center;
    background-repeat: no-repeat;  background-size: cover;  background-image: url(../img/mv.jpg);
    height: 720px; padding-top: 88px;z-index: 0;}*/
.col_3,.col_2 {display: flex;
    justify-content: space-between;}

.box_w{background:#fff; padding: 30px 10px;text-align: center;border-radius: 40px;width: 60%;margin:20px auto 0px;}
.aro_w{margin-top: -20px;}

#mainSec{position: relative; margin:95px auto 0;overflow: hidden;background: #f7d368;height: 500px;}
.topmain{position: absolute;top:20%;right: 0px;}
/*.topmain img{width: 600px}*/

#mainSec h3{color: #004de6;padding: 20px 0;}
#sec00 dl::after {
border-top: 23px solid #f7d368; border-left: 30px solid transparent;border-right: 30px solid transparent;
content: "";
position: absolute;
bottom: -23px; /* 三角形の高さ＋ボックスのボーダーをマイナスに */
left: 20%;/* 中央寄せに使用 */
}

#sec00,#sec01,#sec02,#sec03,#sec04,#company,#tcc{padding: 20px 0 60px; overflow: hidden;}

header .cv_btn{width: 200px; }
header .cv_btn a{font-size: 95%;font-weight: 500;padding: 6px 0; border-radius: 15px;}

#mainSec .main {max-width: 1000px;margin:0 auto;display: block;overflow: hidden;padding: 0 10px;position: relative;}
#mainSec .fx{display: flex!important;z-index: 10;width: 800px;}

#measures .measureSec>.in ol>li dl dd ul li { display: block;font-size:18px;padding-left:15px;}
.disc ul { list-style: disc!important;}

#mainSec .main h2{color: #000099;letter-spacing: 0.05em; font-size: 200%;padding: 30px 0 20px;text-align: center;}
#mainSec .main h2 span,#sec03 h3 span{padding: 0 2px 3px 0;
    background: linear-gradient(transparent 50%, rgba(255,255,255,0.90) 0%);font-weight: 600;}
#mainSec .cv_btn{width: 290px; padding: 10px 0;margin: 20px auto 0;}
#mainSec .cv_btn a{font-size: 120%;font-weight: 500;}

#measures .measureSec>.in ol>li:last-child dl dd ul li:before { background-image:none;}

#sec00 h3{padding-top: 60px;}
#sec00 .naya{width: 30%; }
#sec00 .naya dl{background:/*#ffff99*/#f7d368; padding: 30px 20px 10px;text-align: center;border-radius: 15px;
	position: relative;margin: 20px 30px;}
#sec00 .naya img{margin:0 auto;display: block;}

#sec00 dl dt {
    position: absolute;left: 30%;top:-5px;
    transform: translate(-50%, -50%);
    z-index: 1; font-size: 24px; font-family: 'Open Sans', sans-serif;
    font-weight:600; color: #fff!important; background: #1c4c75;width: 100px;padding: 6px 0;border-radius: 25px; }

#sec00 dl dd{font-size: 18px;line-height: 160%;color: #0070c0;height: 110px;display: flex;
  justify-content: center; align-items: center;padding:15px 15px 25px;font-weight: bold}
/*#sec00 .a_bottm{position: relative;}*/
#sec01 .a_bottm img{margin:-30px auto 0;display: block;/*position: absolute;top: -10px;left: 50%;*/z-index: 99;}

/*#sec01,#sec00{z-index: 2;position:relative;}*/
#sec01 h3{margin-top: 40px;}

#sec01 .in h1{color: #fff;font-weight:bold;letter-spacing: 0.03em;text-shadow: 2px 3px 3px #555;margin-bottom: 20px;}
#sec01 .in h1 big{font-size: 140%;color: #004de6;}
#sec01 .box_w h4{font-size: 28px;text-align: center;font-weight: 600; color: #fff!important; background: #1c4c75;margin:0 0 5px 20px;width: 120px;padding: 6px 0;  border-radius: 25px; }
#sec01 .box_w p{font-size: 19px;text-align:center;line-height: 160%;font-weight: 400; padding:0px 0 20px;margin: -20px}
#sec01 .aro{margin: -10px auto 30px;width: 95%;display: block;text-align: center;}
/*.bg1{background:url("../img/sec01_bg_pict1.png") no-repeat center #fff; }
.bg2{background:url("../img/sec01_bg_pict2.png") no-repeat center #fff;}
.bg3{background:url("../img/sec01_bg_pict3.png") no-repeat center #fff;}*/
#sec01 .box_w {position: relative;}

#sec01 .bg1{position: absolute;z-index: 3;top:0; right: -50px;}
#sec01 .bg1 img{width: 200px;}
#sec01 .bg2{position: absolute;z-index: 3;bottom:0; right: -40px;}
#sec01 .bg2 img{width: 180px;}
#sec01 .bg3{position: absolute;z-index: 3;bottom:0; right: -50px;}
#sec01 .bg3 img{width: 190px;}


.dvd{position: absolute;left:20%;/*top:500px*/bottom:0;}
.prof{position: absolute;right:20%;/*top:380px;*/bottom:0;}
/*#mainSec p span{font-weight: bold;  color:#ffcc00;}*/
.smenu{margin-top: 15px;}
/*#header .smenu a{color: #000;}
#header .smenu a:hover{color:#1c4c75!important; }*/
.smenu span{padding-right:15px;text-decoration: underline;}
.smenu span:last-child {padding-right:3px;}

section .inner{max-width: 1200px;margin:0px auto;display: block;}
.in h1 {line-height: 1.2; text-align: center;font-size: 42px;}
.in h2,#company h2 {line-height: 1.2; text-align: center;font-size: 38px;padding: 70px 0 40px; color: darkblue;font-weight: bold;}
.in h3 {font-size: 32px;text-align: center; line-height: 1.2;margin: 20px 0;color: darkblue;font-weight: bold;}
.in h3 span{background: linear-gradient(transparent 50%, #EEE 0%);}
.in .text {text-align: center; font-size: 24px;}

.in a{text-decoration: underline;}
.info{font-size: 22px;text-align: center;}
#sec02 .box{width: 450px;background: #fff;/*background:url("../img/fuki.png");*/}
#sec02 .box img{margin:0 auto;display: block;width: 445px;}
#sec02 .box h3{color: #fff;text-shadow: 2px 3px 3px #555;margin-top: -15px;font-weight: bold}

#sec02 .bbox{width: 350px; /*border: 3px solid #0070c0;*/margin: 20px 0 40px;line-height: 180%;
    background: rgba(0,0,0,0.03);text-align: center;padding: 35px 15px 25px;font-size: 20px;box-shadow: 4px 5px 4px 0px rgba(0,0,0,0.2);
}
em{ font-weight: 600;  padding: 0 2px 3px 0;
    background: linear-gradient(transparent 50%, rgba(255,255,0,0.90) 0%);}
em { font-style: normal;}
#sec02 .bbox h4{color: #fff;text-align: center;font-weight: bold;font-size: 24px;margin:-60px auto 30px;display: block;}

/*まる*/
.circle {	
  position: relative;  display: inline-block;
  width: 90px;  height: 90px;  border-radius: 50%;
  background: #0070c0;
}
.circle span {
  position: absolute;  display: inline-block;
  left: 0;  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width :90px;  text-align:center;font-weight:bold;
}
#mainSec .circle{background: #fff;color:#0070c0;width: 120px;  height: 120px;font-weight: bold;}
#mainSec .circle span{width :120px;  }

.read{background: #fff; padding:15px 0 10px;border-radius: 25px;color: darkblue;margin:0 auto 15px;width:370px;text-align: center;font-size: 24px;font-weight:bold; }
#sec03 h3{color: #004de6;}

#sec03 .col_2{justify-content: center;}
.type{width: 400px; padding: 5px 20px 30px;text-align: center; background: #fff;
    border-top: 6px solid #e0e0e0;margin:30px 15px 20px ;
    box-shadow: 2px 3px 2px 2px rgba(0,0,0,0.08);font-size: 19px;}
.type h3{color: #fff!important;background:#1c4c75;padding: 6px 0px;width: 160px; font-size: /*24*/28px;font-weight:bold;text-shadow: 2px 3px 3px #808080;letter-spacing: 0.3px;margin:10px auto 10px;border-radius: 25px;}
.type p{line-height: 180%;font-size: 22px;font-weight:bold;}


section .b_box{border: 1px solid #DDD;}

.sideL { float: left;width:240px;padding: 0 0px 0 0;}
.sideR { float: right;	width: 370px;}
.sideL2 {float: left;width: 370px;padding: 0;}
.sideR2{ float: right;	width: 260px;} 
.sideR img { width: 350px!important;margin-top: 40px;}
.sideR2 img {margin-top: 20px;}
.w600{width: 550px;}

#sec04 .w600 p{line-height: 180%;font-size: 18px;}
#sec04 .w600 .txt{padding-left: 2em;}
#sec04 .fx{width: 100%;display: flex;}
#sec04 .con{display: flex;text-align: right;justify-content: flex-end;}
#sec04 .s4_aro{margin-top: 40px;}
#sec04 h3{text-shadow:1px 2px 2px #808080;font-size: 35px;color: #fff; background: #1c4c75;padding: 6px 0px;width: 160px; border-radius: 25px}
#sec04 .col_2 p{font-size: 18px;font-weight:bold;}


#sec04 .cv_btn{margin: 20px auto 0;}
#sec04 .cv_btn a{font-weight: bold;width: 250px;height: 80px;/*display: flex;align-items: center;*/text-align: center; }
#sec04 .cv_btn3{margin: 20px auto 0;}
#sec04 .cv_btn3 a{font-weight: bold;width: 270px;height: 80px;text-align: center;color: #fff;background:/* #0070c0*/#1c4c75;float: left;padding: 10px;border-radius: 20px;text-decoration: none; font-size: 18px;padding-top: 25px;box-shadow: 2px 2px 1px 0px rgba(0,0,0,0.3);}
#sec04 .cv_btn3 span{font-size: 85%;}
#sec04 .read{margin: 0px 0 15px 20px;position: relative}

#sec04 .read::after {
border-top: 23px solid #fff; border-left: 30px solid transparent;border-right: 30px solid transparent;
content: "";
position: absolute;
bottom: -23px; /* 三角形の高さ＋ボックスのボーダーをマイナスに */
left: 20%;/* 中央寄せに使用 */
}

#tcc{color: #fff;}
#tcc .tcc{padding: 25px; font-size: 19px;}
#tcc .tel{padding: 15px 0 25px; font-size:28px; text-align: right;}
#tcc h3{padding-left: 25px; font-size: 26px;font-weight: 500;text-align: left;color: #fff;}

#company .in section h3 {text-align: left !important;font-size: 26px;color: #333}
#company .in p{font-size: 18px;font-weight:  bold;line-height: 150%;}
#company .in section ul li {display: flex!important;  border-top: 1px dotted #AAA; padding: 10px 0;font-weight:  bold;}
#company .in ul li:before { display: block; content: ''; width: 18px; height: 1.5em; 
	background: url(../img/icon_check_after.svg) center center/contain no-repeat;
    margin-right: 10px;}

.cv_btn a{
    text-decoration: none; font-size: 18px;padding: 10px; display: block;  margin: 0 auto;
	border-radius: 20px ; color: #fff;background: #1c4c75; text-align: center; box-shadow: 2px 2px 1px 0px rgba(0,0,0,0.3);
}
.cv_btn a:hover,.cv_btn3 a:hover{opacity: 0.8;}
.cv_btn span{font-size: 85%;}
#contact h2{margin-bottom: 25px;}
#contact iframe {display: block; background: #FFF; width: 100%; max-width: 1050px;  height: 1020px; margin: 0 auto;}
#contact .btn a { width: 390px;padding: 15px 10px;font-weight: 500;font-size:110%;margin-bottom: 20px;text-decoration: none;margin:0 auto; display: block; border-radius: 100px; background-color: #A72126;
    color: #FFF; overflow: hidden;  text-align: center;}

#footer #pagetop { bottom: 150px;}
#footer #pagetop a{opacity:0.8;}
footer .cv_btn2 a {  position: fixed;  bottom: 10px; right: 10px; z-index: 999;  width: 220px;}
.cv_btn2 a {
    text-decoration: none; font-size: 16px;float: left;padding: 10px;
    font-weight: normal; display: block;  margin: 0 auto;border-radius: 10px ; 
    color: #fff;background: #1c4c75; text-align: center; width: 220px; height: 42px;
    box-shadow: 2px 2px 1px 0px rgba(0,0,0,0.3);
}


.tb{display: block!important;}



/*==================768UP=========================*/
@media screen and (min-width: 769px) {

#company .in { display: flex; flex-direction: row-reverse;}	
#company figure { width: 45%;padding-left: 40px;}
#company section {margin-top: 0 !important; width: 55%;}
#company .in section ul { margin-top: 40px;	}
	
}
/*==================768=========================*/
@media print, screen and (max-width: 768px) {


#mainSec>header{justify-content: flex-start;}
#mainSec {margin: 50px auto 0;}
	
.topmain {top: 35%; right: 0px;}
.topmain img{width: 360px;}	
	
.w1000{width: 100%;}	
section .inner{max-width: 100%;padding: 0 10px;}	

.in h2 {line-height: 1.2;   text-align: center;font-size: 28px;}
.in h3 {font-size: 24px;margin-bottom: 20px;text-align: center; line-height: 1.2;}	
	
#sec00 .naya dl {padding: 30px 10px 10px;margin: 20px 10px;}	
#sec00 dl dd {font-size: 16px; padding: 0px 5px 15px ;}	

#sec01 .bg1{position: absolute;z-index: 3;top:0; right: -20px;}
#sec01 .bg2{position: absolute;z-index: 3;bottom:0; right: -20px;}
#sec01 .bg3{position: absolute;z-index: 3;bottom:0; right: -20px;}
#sec01 .box_w {width: 90%;padding: 20px 0px 30px 35px;}
#sec01 .box_w h4{ margin: 0 0 15px 10px;}	
#sec01 .box_w p {text-align: left;padding-top: 15px;}	

#sec02 .bbox {padding: 15px 5px 10px; margin: 10px 0 20px;font-size: 18px;width: 100%;}
#sec02 .box{width: 100%;}
#sec02 .box img{margin:0 auto;display: block;width: 380px;}
#sec02 .box h3{margin-top: 5px;}
	
	
.sideL,.sideR2{box-sizing: border-box;margin-bottom: 10px; float: none; margin:20px auto 10px;  width:90%;}
.sideL2,.sideR {box-sizing: border-box;margin-bottom: 10px; float: none; width: 100%; }		
.sideL img, .sideR2 img{margin-top: 20px;display: block;margin:0 auto;width: 170px;}	
.w600{width: 130%;}
.w420{width: 380px;padding-right:20px;}	
	
#company .in{padding: 0 15px ;}
#contact h2 {margin-bottom: 5px;}	
	
.tb{display: block!important;}
.sp{display: none!important;}		
	
}

/*==================480=========================*/
@media print, screen and (max-width: 480px) {
#sec00, #sec01, #sec02, #sec03, #sec04, #company, #tcc {
    padding: 20px 0 30px;}	
	
pl20{padding-left: 0px;}
.mt160{margin-top: 10px!important;}	
	
.sideL,.sideL2,.sideR2 {width: 100%;padding: 0 0px 0 0;}
.sideL img,.sideR2 img{display: block;margin:0 auto}
	
.smenu {font-size: 14px; }

.w400 {width: 100%;padding: 0 10px;}
#mainSec .fx {justify-content: space-between}
#mainSec .main h2 {  font-size: 180%;}
.col_2,.col_3{display: block;}	
#sec01 .box_w p {font-size: 16px ; text-align: left; padding: 10px 15px 20px 10px ;}
#sec01 .box_w h4{ margin: -30px 0 15px 10px;}		
#sec01 .box_w{width: 99%; padding: 20px 0px 30px 15px ;}
#sec01 .in h1{font-size: 36px;}	
#sec00 .naya { width: 100%;}	
#sec00 h3 { padding-top: 0px;}
#sec02 .in h2 {padding: 30px 0 0px;}
#sec02 .box{margin-bottom: 45px;}
#sec02 .bbox { margin: 10px 0 45px;}	
.in h2{padding:30px 0 20px}
.type {width: 100%;margin: 15px auto 15px;
	padding: 15px 10px 20px;}

.flex {
    display: block;
    margin: 20px 5px;}
	.flex .box1,.flex .box2	{width: 100%;}
.flex .box2 {padding: 15px 15px 15px; margin: -10px 0 0;}
#sec04 .fx { display: block;}	
/*#sec04 .s4_aro{transform: rotate(90deg);margin-top: 40px;margin:0 auto;display: block;width: 80px;}*/
#sec04 .cv_btn3 a {width: 170px;}
#sec04 .cv_btn a {width: 190px;}
#sec04 .read {margin: 0px 0 15px 0px;	}
#sec04 .w600 .txt{padding-left: 0em;}	
	
.w600{width:100%;margin-left: 10px;}
.w420{padding-right:0px;}	

#tcc .tcc{padding: 15px 0; font-size: 14px;}
#tcc .tel{padding: 15px 0 ; font-size:22px; text-align: center;}
#tcc h3{padding-left: 0px; font-size: 18px;}	
#tcc  img{width: 50%;}	
	
#contact iframe {  height: 1300px;}
#contact .btn a {width: 360px;padding: 15px 0px;}	
#footer #pagetop { bottom: 90px;}	
	
.tb{display: none!important;}	
.sp{display: block!important;}	
	}

