@charset "UTF-8";
@media (min-width:750px) and (max-width:768px){
	.sec01 .sec01_slider_wrapp .item {
		max-width: 768px !important;
	}
}
@media screen and (max-width:768px) {
	body{overflow-x:hidden;font-size:4vw;line-height: 1.5;}
	.imgr img{display:block;max-width:100%;height:auto;}
	.container{margin-right:auto;margin-left:auto;padding-left:4vw;padding-right:4vw;box-sizing:border-box;}
	.mar_au img{margin:0 auto;}
	.break_sp{display:block;}
	.break_pc{display:contents;}
	.none_sp{display:none;}
	.sp{display:block;}
	#wrapper{max-width:768px;width:100%;}
	.inner{padding:0 4vw;}
	img{width:100%;}
	p{margin:0 0 4vw 0;}
	.mb25{margin-bottom:3vw!important;}
	.mb30{margin-bottom:3vw!important;}
	.mb40{margin-bottom:4vw!important;}
	.mb45{margin-bottom:7.5vw!important;}
	.mb50{margin-bottom:5vw!important;}
	.mb60{margin-bottom:6vw!important;}
	.mb80{margin-bottom:8vw!important;}
	.mb90{margin-bottom:14vw!important;}
	.flex{display: block;}
	.sp_flex{display: flex;}
	
	/*-- fv -----------------------------------
	------------------------------------------*/
	.fv{
		background: transparent;
		position: relative;
		min-height: 100%;
	}
	.fv .inner{
		padding: 0;
        max-width: 100%!important;
        margin-top: 0vw!important;
	}
	.fv h1{
  		margin-top: 0;
	}
	.logo img {
    	max-width: 40vw;
		position: relative;
}

	.fv h1 img {
    max-width: 100%;
	}
	
	/*-- /fv ----------------------------------
	------------------------------------------*/

	/*-- sec01 --------------------------------
	------------------------------------------*/
	.sec01{
  		padding: 13vw 0;
	}
	.sec01 h3 {
	    margin-bottom: 1px;
	}
	.sec01 .sec01_slider{
		padding: 0 4vw;
		margin-bottom: 0vw;
	}
	.sec01 .sec01_slider_wrapp .item{
		max-width: 690px;
		margin: 0;
	}
	.sec01 .sec01_slider_wrapp .item img{
		max-width: 100%;
		height: auto;
	}
	.sec01 .slick-next{
		right: -3.2vw;
		width: 9.466666666666667vw;
		height: 9.466666666666667vw;
		max-width: 56px;
		background-size: contain;
	}
	.sec01 .slick-prev{
		left: -3.2vw;
		width: 9.466666666666667vw;
		height: 9.466666666666667vw;
		max-width: 56px;
		background-size: contain;
	}
	.sec01 .sec01_table{
		overflow-x: scroll;
	}
	.sec01 .sec01_table img{
		width: 150vw;
	}
	/*-- /sec01 -------------------------------
	------------------------------------------*/

	/*-- /cta ---------------------------------
	------------------------------------------*/
	.cta{
	  padding: 13vw 0;
	}
	.cta .cta_box{
		padding: 4vw;
	}
	.cta .cta_box ul{
		margin: 0 auto 2vw;
	}
	.cta .cta_box ul li{
		font-size: 4.3vw;
		letter-spacing: -0.05em;
		padding-left: 7vw;
		background-size: 5vw!important;
		background: url(../images/cta_li_icon.png) no-repeat left top 14%;
	}
	.cta .cta_box ul li:not(:last-child) {
    	margin-bottom: 1vw;
	}
	.cta .cta_box p{
		letter-spacing: 0;
	}
	.cta .cta_box02:before{
		border-width: 1vw;
	}
	.cta .cta_box02{
		padding: 5vw 4vw;
	}
	.cta .cta_box02 .cta_flex_txt{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.cta .cta_box02 .cta_txt{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		width: calc(100% - 19.73333333333333vw);
		padding-left: 2vw;
	}
	.cta .cta_box02 .cta_flex_txt h3{
		width: 100%;
		text-align: center;
	}
	.cta .cta_box02 .cta_flex_txt h3 span.ttl{
		font-size: 5vw;
		padding: 0 2vw;
		margin: 0 auto 2vw;
		order: 1;
	}
	.cta .cta_box02 .cta_flex_txt p{
		order: 3;
	}
	.cta .cta_box02 .cta_flex_txt p.txt{
		width: 60vw;
		float: left;
		padding-left: 2vw;
		font-size: 100%;
		letter-spacing: 0;
		margin-bottom: 0 !important;
	}
	.cta .cta_box02 .cta_flex_txt p.tel img{
/*		width: 72.53333333333333vw;*/
		width: 100%;
	}
	.cta .cta_box02 .cta_flex_txt .cta_thumb{
		margin-right: 0;
		width: 22vw;
		order: 2;
		line-height: 0;
	}
	.cta .cta_box02 .cta_btn,
	.cta .cta_box02 .cta_flex_txt .tel{
		width: 100%;
		text-align: center;
	}
	.cta .cta_box02 .cta_flex_txt .tel{
		margin-top: 2vw;
	}
	.cta .cta_box02 .cta_flex_txt .tel img{
		max-width: 72.53333333333333vw;
		height: auto;
		margin: 0 auto;
	}
	.cta .cta_box02 .cta_btn img{
/*		width: 78.13333333333333vw;*/
		width: 100%;
	}
	/*-- /cta ---------------------------------
	------------------------------------------*/

	/*-- sec02 --------------------------------
	------------------------------------------*/
	.sec02{
  		padding: 13vw 0;
	}
	.sec02 .sec02_box .sec02_box_flex ul {
    	width: 100%;
    	margin-bottom: 4vw;
	}
	.sec02 .sec02_box .sec02_box_flex ul li{
		font-size: 4.4vw;
		padding-left: 3vw;
	}
	.letter{
		letter-spacing: -0.07em!important;
	}
	.sec02 .sec02_box .sec02_box_flex ul li:before{
		width: 1.65vw;
		height: 1.65vw;
	}
	.sec02 .sec02_box .sec02_box_flex img{
		width: auto;
		height: auto;
		max-width: 100%;
	}
	/*-- /sec02 -------------------------------
	------------------------------------------*/

	/*-- sec03 --------------------------------
	------------------------------------------*/
	.sec03{
  		padding: 13vw 0;
	}
	.sec03 .sec03_box{
		display: flex;
		flex-wrap: wrap;
/*		padding: 0 4vw;*/
		margin-bottom: 12vw !important;
	}
	.sec03 .sec03_box .img_r{
		float: unset;
		margin: 5vw 0 0 0;
		order: 2;
	}
	.sec03 .sec03_box02_flex{
		padding: 0 4vw;
	}
	.sec03 .sec03_box02_flex .item{
		max-width: 40vw;
	}
	.sec03 .sec03_box02_flex .item .title{
		font-size: 3.85vw;
		margin-bottom: 1vw;
	}
	/*-- /sec03 -------------------------------
	------------------------------------------*/

	/*-- sec04 --------------------------------
	------------------------------------------*/
	.sec04{
  		padding: 13vw 0;
	}
	.sec04 .sec04_box .wrapp{
		padding: 0 4vw;
		max-width: 100%;
		min-height: 100%;
	}
	.sec04 .sec04_box .wrapp .txt {
    	max-width: 100vw;
    	padding-top: 3vw;
	}
	.sec04 .sec04_box{
		overflow: hidden;
		padding-bottom: 4vw;
	}
	.sec04 .sec04_box.mb30.fixL{
		margin-bottom: 0 !important;
	}
	.sec04 .sec04_box .wrapp .title.mb25{
		margin-bottom: 4vw !important;
	}
	.sec04 .sec04_box .wrapp .title.mb25.mb0sp{
		margin-bottom: 4vw !important;
	}
	.sec04 .sec04_box .wrapp .title span{
/*		font-size: 3.35vw;*/
		font-size: 5vw;
		padding: 0.5vw 2vw;
		display: table;
	}
	.sec04 .sec04_box .wrapp .title span.fix_bg{
		background: transparent;
		padding: 0;
	}
	.sec04 .sec04_box .wrapp .title span span{
  		display: table;
	}
	.sec04 .sec04_box .wrapp .title span span:last-child{
		margin-top: 3px;
	}
	.sec04 .sec04_box .wrapp .title .mb5{
		margin-bottom: 3px !important;
	}
	.sec04 .sec04_box.fixR .wrapp .txt{
/*
		left: 28vw;
		width: calc(100% - 28vw);
*/
		left: 19vw;
        width: calc(100% - 17vw);
	}
	.sec04 .sec04_box.fixR{
		margin-bottom: 8vw !important;
		margin-top: 8vw !important;
	}
	.sec04 .sec04_box .bg{
		min-height: auto;
	}
	.sec04 .sec04_box .bg .thumb{
		width: 100%;
	}
	.sec04 .sec04_box .wrapp .txt p.text{
	  text-shadow:#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px,#fff 0px 0px 3px;
	}
	/*-- /sec04 -------------------------------
	------------------------------------------*/

	/*-- sec05 --------------------------------
	------------------------------------------*/
	.sec05{
  		padding: 13vw 0;
	}
	.sec05 .sec05_flex{
		flex-wrap: wrap;
		padding: 6vw 4vw;
	}
	.sec05 .sec05_flex.mb30{
		margin-bottom: 5vw !important;
	}
	.sec05 .sec05_flex.mb45{
		margin-bottom: 6vw !important;
	}
	.sec05 .sec05_flex .txt{
		width: 100%;
		padding: 0;
		margin-bottom: 4vw;
	}
	.sec05 .sec05_flex .txt p{
		margin-bottom: 4vw;
	}
	.sec05 .sec05_flex .thumb{
		width: 100%;
	}
	/*-- /sec05 -------------------------------
	------------------------------------------*/

	/*-- sec06 --------------------------------
	------------------------------------------*/
	.sec06{
  		padding: 13vw 0;
	}
	.sec06 h2.mb60{
		margin-bottom: 8vw !important;
	}
	.sec06 .sec06_box .item{
		width: 45.06666666666667vw;
		display: flex;
        flex-wrap: wrap;
        justify-content: center;
	}
	.sec06 .sec06_box .item.mb80{
		margin-bottom: 10vw !important;
	}
	.sec06 .sec06_box .item h4{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		width: 100%;
		text-align: center;
		top: -10%;
	}
	.sec06 .sec06_box .item:nth-child(2) h4{
		top: -10%;
	}
	
/*
.sec06 .sec06_box .item h4 span{
  background: #563cfd;
  clear: both;
  display: inline-block;
}
*/

	.sec06 .sec06_box .item h4 span{
		font-size: 4vw;
		padding: 0 1vw;
/*		letter-spacing: -0.05em;*/
		display: block;
		background: #563cfd;
		background: transparent;
	}
	.sec06 .sec06_box .item h4 span.bg_w{
		background: #563cfd;
	}
/*
	.sec06 .sec06_box .item h4 span span{
		display: block;
		margin-top: 2px;
		background: #563cfd;
		padding: 0 1vw;
	}
*/
	.sec06 .sec06_box .item h4 span:first-child {
    	margin-bottom: 2px;
/*		background: #563cfd;*/		
	}
	/*-- /sec06 -------------------------------
	------------------------------------------*/

	/*-- sec07 --------------------------------
	------------------------------------------*/
	.sec07{
  		padding: 13vw 0;
	}
	.sec07 ul{
		padding: 0vw;
	}
	.sec07 ul li{
/*		max-width: 35.2vw;*/
		max-width: 48%;
	}
	/*-- /sec07 -------------------------------
	------------------------------------------*/

	/*-- sec08 --------------------------------
	------------------------------------------*/
	.sec08{
  		padding: 13vw 0;
	}
	.sec08 .box_qa{
		padding: 4vw;
	}
	.sec08 .box_qa.mb15{
		margin-bottom: 2vw !important;
	}
	.sec08 .box_qa dl dt p{
		font-size: 4.5vw;
		letter-spacing: -0.05em;
	}
	.sec08 .box_qa dl dt img, .sec08 .box_qa dl dd img{
		width: 8vw;
		height: 8vw;
	}
	.sec08 .box_qa dl dt p, .sec08 .box_qa dl dd .txt{
		width: calc(100% - 8vw);
		padding-left: 2vw;
	}
	.sec08 .box_qa dl dt{
		margin-bottom: 2vw;
	}
	/*-- /sec08 -------------------------------
	------------------------------------------*/

	/*-- sec09 --------------------------------
	------------------------------------------*/
	.sec09{
  		padding: 13vw 0;
	}
	.sec09 .box{
	padding: 0;
	border: none;
	}
	form > ul > li {
		padding: 20px 15px;
		border-bottom: 1px solid #ccc;
	}
	.form_head {
    	text-align: left;
	}
	.sec09 p{
		margin-bottom: 0vw;
	}
	.textarea {
		padding-right: 0px;
	}
	.check_agree span {
		padding-top: 0px;
	}
	.sbm {
		width: 100%;
	}
	
	/*-- /sec09 -------------------------------
	------------------------------------------*/

	/*------------thanks------------*/
	.thanks {
		padding: 30px 0;
	}
	.gl-header{
		background: #fff;
		display: block!important;
	}
	.btn {
		width: 80%;
	}
	  .gl-header {
		height: auto
	  }

	  .gl-header .header-inner {
		position: relative;
		height: 4.69333rem
	  }

	  .gl-header .sp-menu-modal {
		position: absolute;
		height: 100vh !important
	  }

	  .gl-header .sp-menu-modal .sp-menu {
		padding: .68267rem 1.36533rem 13.22667rem
	  }

	  .gl-header {
		width: 100%;
		height: 4.69333rem
	  }

	  .gl-header .header-inner {
		width: 100%
	  }

	  .header_th .logo img{
		position: relative;
/*		width: 20vw;*/
		width: auto;
        height: 4.69333rem;		
	}	
	@media screen and (max-width:500px) {
	  .header_th .logo img{
		position: relative;
		width: auto;
        height: 4.69333rem;		
	}	
		
	}
	
	/*-- footer --------------------------------
	------------------------------------------*/
	.sec_footer{
		padding: 8vw 0;
		padding-bottom: 28%;
	}
	.sec_footer p{
		font-size: 3vw;
		letter-spacing: 0;
		margin-bottom: 4vw;
	}
	.footer_th{
		padding-bottom: 10%;
	}
	.pagetop {
		bottom: 23vw;
		right: 2vw;
	}
	.pagetop a {
		width: 10vw;
		height: 10vw;
	}
	.float_btn img{
		width: 100%;
	}
	/*-- /footer -------------------------------
	------------------------------------------*/

	
/*==========================================================================*/
/*                             floating banner                                      */
/*==========================================================================*/
.float_btn{
	padding: 5px;
	padding-bottom: 3px;
}	
	


}