@charset "utf-8";
/* CSS Document */

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px; /* --remに対応していないブラウザ用 -- */
	font-size: 1.4rem;
  background-color:#fff;
	/*-webkit-text-size-adjust: none;*/
	-webkit-text-size-adjust: 100%; /* -- 縦横でもフォントサイズが変わらない -- */
    
}

/* hoverエフェクト */
a:hover {
	opacity: 1;
	-webkit-animation: flash 1.5s;
	animation: flash 1.5s;
}

@-webkit-keyframes flash {
	0% {
		opacity: .4;
	}
	100% {
		opacity: 1;
	}
}
@keyframes flash {
	0% {
		opacity: .4;
	}
	100% {
		opacity: 1;
	}
}

.hidd {
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
}
.center{
  margin-left:auto;
  margin-right:auto;
  display:block;
}
.t-center{
  text-align: center;
}
.clear{
  clear:both;
}
.wrapper{
  width:100%;
  padding :0;
  margin: 0;
  overflow : hidden;
}
.red{
	color:red;
}
header{
 width:100%;
 height:5.79vw;
}
header .logo{
  padding:10px 1.5vw;
}
header .logo img{
  width:20vw;
}
header .button{
  float:right;
  padding-right:1.1vw;
}
header .button a{
  margin-right:1.1vw;
}
.sp_header .button{
  position:relative;top:-5.0vw;
  height:0;
}

header .button .tel{
  width:17.92vw;
  height:auto;
}
header .button .contact{
  width:13.21vw;
  height:auto;
}
.main{
  background: url("../img/main_bg.png") no-repeat bottom center;
  background-size:cover;
  height:34.75vw;
  width:100vw;
}
.main h1{
  position:absolute;
  width:91.8802vw;
  margin-top:0.7vw;
  margin-left:3vw;
  text-align:center;
}

.main h1 img:first-child{
  width:43.33854vw;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:6vw;
}
.main h1 img:last-child{
  width:48.54166vw;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:1vw;
}

.sec01{
  display:block;
  width:100%;
  text-align: center;
  margin-top:0;
  padding-top:0;
  padding-bottom:5vw;
}
.sec_bg{
  background:url("../img/delta.png")top center no-repeat;
}
.sec01 h2{
  color:#fff;
  background:#0b4697;
  font-size:2.3vw;
  line-height:1;
  padding-top:1.5vw;
  padding-bottom:1.5vw;
}
.sec01_com{
  width:100%;
}
.sec01_com img{
	margin-top:3vw;
	width:86.421vw;
}

.sec01 h4{
  font-size:1.354vw;
  margin:15px auto 20px
}
.sec01 li p{
  padding:15px;
  font-size:1.041vw;
  text-align:left;
}
.sec01 li p span{
   font-weight:bold;
	color:red;
}
.sp_br{
	display:none;
}
@media(max-width:600px){
	.sec01 h2{
	font-size:5.2vw;
	line-height:1.3
	}
	.sp_br{
		display:block;
	}
	.sec01 li{
	float:none;
	width:80vw;
	}
	.sec01 li img{
  width:80vw;
	}
}

.container{
  padding-top:3.5vw;
  padding-bottom:2vw;
  max-width:1450px;
  width:90%;
  margin:0 auto;
}
.sec02{
    width:100vw;
}
.sec02 h2{
  color:#fff;
  background:#0b4697;
  font-size:2.3vw;
  line-height:1;
  padding-top:1.5vw;
  padding-bottom:1.5vw;
  text-align:center;
}
.sec02 .container img:nth-child(1){
	width:70.31578vw;
	margin-left:7vw;
}
.sec02 .container img.com{
	width:55.3645vw;
	margin:3vw 19vw;

}
.sec02 table{
	max-width:1450px;
	width:95%;
	margin:20px auto;
	font-size:1.458vw;
	font-weight:500;
	border-collapse: collapse;
}
.sec02 th{
	color:#fff;
	background:#0b4697;
	text-align:center;
	font-size:1.2416vw;
	letter-spacing: 1.1em;
	padding:10px;
	height:2.5vw;
	vertical-align:middle;
	border: 1px solid #fff;
} 
.sec02 table tr:nth-child(2){
	background:#aeb4ff;
}
.sec02 table tr:nth-child(3){
	background:#e3e5ff;
}
.sec02 td{
	text-align:left;
	padding:1em;
	vertical-align:middle;
	border: 1px solid #fff;
}
.sec02 td:nth-child(2){
	text-align:center;
	padding: 1em;
}
.sec02 td.sub{
	font-size:1.1348vw;
	line-height:1.4;
	width:40%;
	padding: 0.2em 1em;
}
.sec02 h4{
	font-size:1.5625vw;
	margin:4vw auto 0 2vw;
}
.sec02 p{
	width:95%;
	margin:2vw;
	line-height:1.8
}

.sec03{
  text-align: center;

}
.sec03 h2{
  color:#fff;
  background:#0b4697;
  font-size:2.3vw;
  line-height:1;
  padding-top:1.5vw;
  padding-bottom:1.5vw;
}
.sec03_bg{
	background:url("../img/sec03_bg.png")top center no-repeat;
	background-size:cover;
}
.sec03 .container ul{
	width:100%;
	list-style:none;
	margin-top:3vw;
	text-align: center;
}
.sec03 .container ul li{
	float:left;
	width:33%;
}
.sec03 .container ul li img{
	width:19.32vw;
	height:auto;
	margin-bottom:4vw
}

@media(max-width:600px){
	.sec03 th{
		text-align:center;
		padding-right:0 ;
		margin-bottom:30px
	}
	.sec03 th, .sec03 td{
		display:block;
		width:77vw;
		margin-left:auto;
		margin-right:auto;
	}
.sec02 .container img:nth-child(1){
	width:90.31578vw;
	margin-left:1vw;
}
.sec02 .container img.com{
	width:90.3645vw;
	margin:3vw 0vw;
}
.sec02 table{
	width:90vw;
}
.sec02 table th{
	font-size:2.5vw;
}
.sec02 table td{
	font-size:2.2vw;
}
.sec02 h4{
	font-size:3.0vw;
	text-align:left;
}
.sec02 p{
	font-size:2.8vw;
	text-align:left;
}
.sec03 .container ul li{
	float:left;
	width:50%;
}
.sec03 .container ul li img{
	width:30vw
	}
}

.sec04{
  width:100%;
}
.sec04 h2{
  color:#fff;
  background:#0b4697;
  font-size:2.3vw;
  line-height:1;
  padding-top:1.5vw;
  padding-bottom:1.5vw;
  text-align:center;
}
.sec04 .container{
	margin:0 auto;
	padding-top:3vw;
}

.sec04 .container div{
	display:block;
}
.sec04 .container ul{
	width:100%;
	list-style:none;
	margin:3vw auto; 
}
.sec04 .container ul li{
	float:left;
}
.sec04 .container ul li img{
	width:13.906vw;
	max-width:267px;
	height:auto;	
	margin-right:1.85vw
}
.sec04 .container ul li:nth-child(6) img{
	width:7.5vw !important;
	max-width:144px;
	margin-top:2.5vw;
}
@media(min-width:1600px){
	.sec04 .container ul li img{
	width:13.906vw;
	max-width:267px;
	height:auto;	
	margin-right:26px
}
}
@media(max-width:600px){
.sec04{
  width:100%;
}
.sec04 h2{
  color:#fff;
  background:#0b4697;
  font-size:2.3vw;
  line-height:1;
  padding-top:1.5vw;
  padding-bottom:1.5vw;
  text-align:center;
}
.sec04 .container{
	margin:0 auto;
	padding-top:3vw;
}

.sec04 .container div{
	display:block;
}
.sec04 .container ul{
	width:100%;
	list-style:none;
	margin:3vw auto; 
}
.sec04 .container ul li{
	float:left;
}
.sec04 .container ul li img{
	height:30vw !important;
	width:25vw !important;
	max-width:267px;
	margin-right:1vw;
}
.sec04 .container ul li:nth-child(6) img{
	width:14vw !important;
	height:22vw !important;
	max-width:144px;
	margin-top:5.5vw;
	}
}

@media(max-width:900px){
	.sec04 .container ul li img{
	width:13.2vw;
	max-width:267px;
	margin-right:1.15vw
}
}

.tel_bottom{
  margin-top: 5vw;
  background: url("../img/tel_bg.png") top center no-repeat;
  background-size:cover;
  padding:60px;
  text-align: center;
}
.tel_bottom img{
  width:34.07vw;
}

section.contact{
  padding-top:3vw;
  padding-bottom:3vw;
  background:#f5f5f5;
}

section.contact{
  text-align: center;

}
.contact .title{
   max-width:1204px;
   width:95vw;
   margin:40px auto;
   background:#28619d;
   padding:5px;
}
.contact h2{
   max-width:1200px;
   
   background:#28619d;
   text-align: center;
   color:#fff;
   padding-top:25px;
   padding-bottom:25px;
   border:solid 2px #fff;
}
.contact p{
	margin-bottom:40px
}
.contact img , .contact table{
  width:60.714vw;
  margin: 0 auto;
  font-size:1.0416vw;
}
.contact input, .contact textarea{
  font-size:1.0416vw;
  padding:3px;
}
.contact textarea{
  width:98%;
}
.contact th{
  text-align:left;
  vertical-align: top;
  padding:15px;
  white-space: nowrap
}
.contact th label{
	background: red;
	font-size:12px;
	color:#fff;
	padding:0 4px 1px;
	border-radius:5px;
	margin-right:5px;
}
.contact td{
  padding:10px;
  line-height:1.5;
  text-align: left
}
.contact td input[type=checkbox]{
  transform: scale(1.5);
}
.contact td a{
  font-size:0.9375vw;
}
.contact .send{
  text-align:center;
}
.contact .send .button2{
  width:150px;
  height:58px;
  margin:40px;
  border-radius:30px;
  background:#fff;
  color:#3F65A0;
  border:1.5px solid #3F65A0;
  font-size:1.0416vw;
  font-weight:700;
}
.contact .send .button3{
  width:280px;
  height: 58px;
  margin:40px;
  border-radius:30px;
  background:#3F65A0;
  color:#fff;
  border:0;
  font-size:1.0416vw;
  font-weight:700;  
}
.formTable li{
	list-style: none;
}
.tel_bottom{
	background:#D8E2F3;
}
.footbanner{
  background:#D8E2F3;
  text-align:center;
  height:11.85vw;

}
.footbanner img{
  width:67.85714vw;
}
.sec11{
  background: #fff;
  padding-bottom:30px;
}
.sec11 .container{
  width:90%;
  margin-left:auto;
  margin-right:auto;
  text-align: left;
  background: #fff;
  padding-top:1.5vw;
  padding-bottom:1vw
}
.sec11 .container img{
  margin-top:0px;
  margin-bottom: 0px;
  margin-right:30px;
  height:50px;
}
.sec11 .container span{
  float:right;
  padding-top:8px;
}
.sec11 .container span a{
  color:#333333;
  font-size:0.729vw;
  text-decoration: none;
}
footer{
  background:#D8E2F3;
  color:#333;
  font-size:16px;
  text-align: center;
  padding-top:0.833vw;
  padding-bottom:8px;
}
.thanks{
  font-size:2.5vw;
  line-height: 1.8;
  padding:60px 10px;
  text-align: center;
}
/* pagetop */
#page-top a {
	background: url('../images/top.png') no-repeat;
	width: 59px;
	height: 59px;
}
p#page-top a {
	position: fixed;
	right: 20px;
	bottom: 160px;
	display: block;
}
div#float{
	position: fixed;
	top:10vh;
	right: 1vw;
	z-index: 9999;
}
div#catalog a{
	width:100px;
	height:auto;
	background:#FB00A2;
	display:block;	
	border-radius: 15px;
	padding:26px 30px;
	color:#fff;
	font-weight:600;
	text-decoration: none;
	margin-bottom:20px;
}
div#order a{
	width:120px;
	height:auto;
	background:#003399;
	display:block;
	border-radius: 15px;
	padding:24px 20px 27px;
	color:#fff;
	font-weight:600;
	text-decoration: none
}


/* タブレット用 */
@media (max-width:900px){
  .main{
    width:100%;
    height:120vw;
  }
  .main h1{
     margin-top:5vw;
	 margin-left:3.5vw;
  }
	h1.logo  a img{
		width: 50vw !important;
	}
  .main h1 img:first-child{
  width: 90vw !important;
  height:auto ;
}
	.main h1 img:last-child{
  width: 80vw !important;
  height:auto ;
}


  .sec02 p img{
    width:95vw;
    margin-top:4.5vw;
    
  }
  .sec03 h2 img{
	  width:65vw;
	}
.sec03 h3 img{
  width:45vw;
  margin-bottom:1vw;
}
  .sec03 p img{
  width:95vw;
}
	.sec03_com{
	margin-left:7.8vw;
	margin-top:2vw;
}

.sec03 li img{
  width:40vw;
  margin:0.7vw;
}	
	
.qr h2 img{
	width:70vw;
	padding-bottom:3vw;
}
.qr h3 img{
	width:90vw;
}	
  .sec04 h3 img{
  width:16.0714vw;
}
  .sec04 h2 img{
  width:65vw;
}
 .sec04_com{
	margin-left:7.5vw;
	margin-top:2vw;
} 
.sec04 ul li img{
  width:19vw;
  margin:1.1vw
}	

ul.sec05-02{
	width:81vw !important;
	list-style:none;
	margin:20px auto;
}
ul.sec05-02 li img{
	width:19.2vw;
	margin:0.4vw;
}
  .sp_header .logo img{
    width:95vw;
    height:auto;
  }
  header{
    height:23.5vw;
  }
  header .button{
    float:right;
  }
  .sp_header .button{
  position:inherit;
    top:0;
  height:0;
}
  header .button .pattent{
    width:14.11vw;
  }
  header .button .tel{
  width:26.88vw;
  height:auto;
}
header .button .contact{
  width:22.815vw;
  height:auto;
}
}
@media (max-width:600px){
	h1.logo  a img{
		width: 70vw !important;
	}
 header{
    height:34.5vw;
  }
 header .button .tel{
  width:45vw;
  height:auto;
  padding-right:3vw;
}
 header .button .contact{
  width:35vw;
  height:auto;
}
 .main h1 img:last-child{
	width:88vw;
	}
	.banner{
	margin-top:8vw;
	}
 .banner a img{
	width:80vw;
	margin:5px;
}
 .sec01 img:first-child{
		margin-top:5vw;
	}
.sec02{
  width:100%;
  text-align: center;
  margin-top:5vw;
  padding-bottom:4vw
}
	.sec01 h2,
.sec02 h2, .sec03 h2, .sec04 h2{
	font-size:5vw;
	}

.sec02 div img:first-child{
  width:91.714vw;
  margin-top:2vw;
}

.sec03 p img{
  width:67.857vw;
  margin-bottom:3vw;
}
.sec03 ul{
	float:none
}
.sec03 li{
	list-style: none;
}
.sec03 li img{
  width:70vw;
  margin:0.7vw;
}
.sec04{
  width:100%;
  text-align: center;
  padding-top:4vw;
}
.sec04 ul{
  width:100%;
  text-align: center;
  padding-top:1vw;
  padding-bottom:1vw;
}
.sec04 ul li {
	float:left;
	list-style:none;
}
.sec04 ul li img{
  width:32vw;
  margin:2vw
}
.thanks{
  font-size:3.2vw;
	}

.tel_bottom img{
  width:55vw;
}
	
	.contact .formTable th, .contact .formTable td{
		display:block !important;
	}
.contact h3{
  text-align: center;
	margin-bottom:20px;
}
  .contact img , .contact table{
  width:85vw;
  margin: 0 auto;
  font-size:4vw;
}
  .contact input, .contact textarea{
  font-size:4vw;
  padding:3px;
}
  .contact .send .button2{
  width:180px;
  margin:25px;
}
  .contact .send .button2,
  .contact .send .button3{
	 font-size:18px;	
	}
  .footbanner{
    height:17.124vw;
  }
  .footbanner img{
    width:98vw;
  }
  .sec11{
	padding-bottom:70px !important;
	}
  .sec11 .container img{
  margin-top:10px;
  margin-bottom: 10px;
}
.sec11 .container span{
  float:right;
  padding-top:8px;
}
  footer{
    margin-top:30px;
    margin-bottom:10px;
  }
div#float{
	position: fixed;
	top:90vh;
	right: 45vw;
	z-index: 9999;
	display:table;
}
div#catalog a{
	width:100px;
	height:auto;
	background:#FB00A2;
	display:table-cell;	
	border-radius: 15px;
	padding:18px 30px;
	color:#fff;
	font-weight:600;
	text-decoration: none;
	margin-bottom:20px;
	position:absolute !important;
	bottom:-15px;
	left:-180px;
}
div#order a{
	width:120px;
	height:auto;
	background:#003399;
	display:table-cell;
	border-radius: 15px;
	padding:18px 20px 19px;
	color:#fff;
	font-weight:600;
	text-decoration: none;
    position:absolute !important;
	bottom:5px;	 
 }
}
