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

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;900&family=Rubik:wght@500&display=swap');

.rubik{font-family: 'Rubik', sans-serif;}

.borGRE{border: solid 1px #2AAB9F;}
.underB{border-bottom:1px solid #222222;}

.w200 { max-width: 200px; width: 100%;border-radius: 30px;}
.w250 { max-width: 250px; width: 100%;border-radius: 30px;}
.w240 { max-width: 240px; width: 100%;}
.w768 { max-width: 768px; width: 100%;margin:0 auto;}

#page-top {position: fixed;bottom: 40px;right: 40px;width: 60px; z-index:400;}
@media screen and (max-width: 896px) {
	#page-top {position: fixed;bottom: 5px;right: 5px;width: 30px; z-index:400;}
}

.ratioBox {position: relative;width: 100%;height: auto;}
.ratio1-1:before {content: "";display: block;padding-top: 100%; /* 1:1 */}
.ratio2-1:before {content: "";display: block;padding-top: 50%; /* 2:1 */}
.ratio3-2:before {content: "";display: block;padding-top: 66%; /* 3:2 */}
.ratio4-3:before{ content: "";display: block;padding-top: 75%; /* 4:3 */}
.ratioInner {position: absolute;top: 0; left: 0;width: 100%;height: 100%;}

.slideInup {opacity: 0; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; -webkit-transform: translateY(60px); -ms-transform: translateY(60px); transform: translateY(60px);}
.slideInup.appear {opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0);}
.fadeIn {opacity: 0; transition: all 1s;}
.fadeIn.appear {opacity: 1;}
.delay01 {transition-delay: .2s;}
.delay02 {transition-delay: .4s;}
.delay03 {transition-delay: .6s;}
.delay04 {transition-delay: .8s;}
.delay05 {transition-delay: 1s;}

@keyframes DownAnime{
  from {opacity: 0; transform: translateY(-100px);}
  to {opacity: 1; transform: translateY(0);}
}

header {width: 100%; background: #FFF; padding: 15px 30px; position: relative; z-index: 100;}
#under header {box-shadow: 0 3px 6px rgb(0 0 0 / 30%); position: relative; z-index: 100;}

#header h1 {max-width: 200px;}
#header.fixed {position: fixed; top: 0; z-index: 10; padding: 15px 20px; background: rgba(255,255,255,.8); animation: DownAnime 0.5s forwards; box-shadow: 0 3px 6px rgb(0 0 0 / 30%);}
#header.fixed h1 {width: 262px;}
.logoImg { /*max-width: 240px;*/}
.navArea{ /*width: calc(100% - 324px - 40px);*/ }
.navR{ width:calc(100% - 200px);}
.navR .gap{ gap:30px;}
.global_menu {/*visibility: hidden;*/ height: 100%; position: fixed; top: 0; left:0; color: #222; /*overflow-y: scroll;*/ text-align: center;}
.global_menu a {display: block; width: 100%; padding: 0 10px; color: #222222; box-shadow: inset 0 0 0 0 #006aa1; transition: color .3s ease-in-out, box-shadow .3s ease-in-out;}
.global_menu a:hover { color: #fff; box-shadow: inset 270px 0 0 0 #006aa1;}
.global_menu a.externalLink::after {content:""; display: inline-block;width:14px;height:14px;background: url("../img/cmn/link.svg");margin-left: 5px;}
.global_menu a.externalLink:hover::after {background: url("../img/cmn/link_wh.svg");}
#header .cmnBtn {background: #006AA1; box-shadow: none; margin: 0 0 0 12px;}
#header .cmnBtn:hover { background:#45cdf7;}
#header .cmnBtn2 {display: block; padding: 20px 0; text-align: center; background:#449BC9; transition: all 0.3s ease 0s; margin: 0 0 0 15px; border-radius: 6px;}
#header .cmnBtn2:hover {	color:white;background:#45cdf7; }
#header .pcOnly{margin-top: 0;}

/*.menu_wrap{ gap: 30px;} */
.menu {font-size: 16px; font-weight: 400; white-space: nowrap;transition:all 1s; margin: 0 5px;}
#hanburger {display: none;}
#hanburger:checked ~ .menu_button {top: 0; right: 0; background: transparent;}
#hanburger:checked ~ .span2 {display: none;}
#hanburger:checked ~ .span1 {width: 32px; transform: rotate(45deg); top: 26px; right: 10px;}
#hanburger:checked ~ .span3 {width: 32px; transform: rotate(-45deg); top: 26px; right: 10px;}
#hanburger:checked ~ .global_menu {visibility: visible;}
#hanburger,.spOnly {display: none;}
.navR .w250 {margin-left: 15px;}
.menu_button {width: 50px; height: 50px; position: fixed; top: 0; right: 0; background: #006AA1; z-index: 15;}
.mailBtn{  width: 50px; height: 50px; line-height:50px; position: fixed; top: 0; right: 50px; z-index: 2; }
.mailBtn img{  width: 18px; height: 18px;     vertical-align: middle;}
@media screen and (max-width: 1080px) {
	header { padding: 30px 15px; }
	.logoImg { max-width: 200px;}
	.navR {  width: calc(100% - 200px);}
	.menu_wrap { gap: 10px;}
}
@media screen and (min-width: 897px) {
  .global_menu {position: inherit; padding: 0; color: #0B4DA0; visibility: visible; overflow-y: visible; height: auto;}
  .menu:hover .child_menu {visibility: visible; top: 81px; opacity: 1;}
  .child_menu {width: 100%; position: absolute; top: 0; left: 0; padding: 10px; color: #FFF; background: #1B2B78; visibility: hidden; opacity: 0; transition: .5s top, .5s opacity; z-index: 10;}
  .child_menu > li {display: inline-block; margin: 0 10px; background: #FFF;}
  .child_menu > li a {padding: 10px 20px; border: 1px solid #FFF; transition: .5s all;}
  .child_menu > li a:hover {background: #1B2B78; color: #FFF;}
  .child_menu > li > ul > li a {padding: 10px; position: relative;}
  .menu_button {display: none;}
}
@media screen and (max-width: 896px) {
  .pcOnly {display: none;}
  #header .spOnly,.spOnly {display: block;}
  header { padding: 10px 15px; height: 60px;}  
  header h1 {padding: 0; width: initial;}
  .logoImg {max-width: 140px;}
  span.span1,span.span2,span.span3 {width: 30px; height: 1px; background-color: #FFF; right: 10px; transition: .3s; z-index: 100; position: fixed;}
  .span1 {top: 17px;}
  .span2 {top: 25px;}
  .span3 {top: 33px;}
  #hanburger:checked .global_menu {visibility: hidden;}
  .global_menu {z-index: 10;}
  #header .global_menu .cmnBtn{border:0; background: #FDA500; text-align: center; width: 90%; margin-left: 5%!important;}
  .menu {display: block;}
  .menu > label:hover {cursor: pointer; cursor: hand;}
  .menu input[type="checkbox"]:checked ~ .child_menu {max-height: inherit!important; overflow-y: visible; visibility: visible!important;}
  .menu > a {padding: 15px 20px; text-align: left; border-bottom: 1px solid #FFFFFF; font-weight: 400; }
  .menu:nth-of-type(5) > a {padding: 15px 20px; border-bottom: 0px; text-align: center; font-weight: 700; margin: 3% auto 0; width: 80%; background: #006AA1; border-radius: 50px;}
  .menu:nth-of-type(5)  > a:hover {box-shadow: none;}
  .menu:nth-of-type(6) > a {padding: 15px 20px; border-bottom: 0px; text-align: center; font-weight: 700; margin: 3% auto 0; width: 80%; background: #142C4D; border-radius: 50px;}
  .menu:nth-of-type(6) > a:hover {box-shadow: none;}
  .menu > a span {margin-right: 10px; width: 30px!important;}
  .menu > a span img {width: 100%;}
  .menu .pd {display: inline-block; width: 100%; position: absolute; top: 0; left: 0; height: 100%;}
  .menu .child_menu {border-top: 1px solid #DDD; position: relative; opacity: 1; top: 0; margin-left: auto; left: auto; width: auto;}
  .child_menu li {display: block;}
  .child_menu > li > a,.child_menu > li > ul > li a {padding: 10px 15px; color: #222; text-align: left; border-bottom: 1px dotted #999;}
  .child_menu > li > ul > li a {padding: 15px 20px 15px 35px; position: relative;}
  .child_menu > li > ul > li:last-child a {border-bottom: 1px solid #CCC;}
  .child_menu > li > ul > li a::before {border-top: solid 1px #222; content: ''; left: 20px; position: absolute; top: 50%; width: 10px;}
  .child_menu li {display: block;}
  .menu_wrap {display: none;}
  #hanburger:checked ~ * .menu_wrap {width: 100%; display: block; opacity: 1; min-height: 100vh; background:#67b7e1; position: fixed; top: 0; z-index: 5;}
  #hanburger:checked ~ * .menu {max-height: inherit; overflow-y: visible; padding: 0; margin-left: 0; position: relative;}
	#hanburger:checked ~ * .menu:first-child img{ max-width:158px;} 	
  #hanburger:checked ~ * .menu a { color: white;}
  #hanburger:checked ~ * .child_menu {max-height: 0; overflow-y: hidden; visibility: hidden; text-align: left;}
}

.footerArea {padding: 50px 0 40px 0;}
.footerArea nav {border-bottom: solid 1px white;}
.footerArea nav li {padding: 0 20px; border-right: 1px solid white;}
.footerArea nav li:first-child{padding-left: 0;}
.footerArea nav li:last-child{border-right: 0; padding-right: 0;}
.footerLogo {padding: 45px 0 40px 0;}
.footerLogo {width: 357px; margin: 0 auto;}
.footCopy {text-align: center;}
.footCopy small {font-size: 14px; line-height: 1.2;}
@media screen and (max-width: 568px) {
	.footerArea {padding: 40px 0;}
	.footerLogo {border-top: 1px solid #FFF; margin: 0; padding: 30px 0 20px; width: 100%;}
	.footerLogo a {width: 357px; margin: 0 auto;}
	.footerArea nav {font-size: 14px; padding-bottom: 25px; max-width: 315px; margin: 0 auto; border-bottom: none;}
	.footerArea nav li {margin: 0 0 15px 0;}
	.footerArea nav li:first-child {padding-left: 20px; border-left: 1px solid #FFF;}
	.footerArea nav li:nth-child(3),.footerArea nav li:nth-child(5) {border-left: 1px solid #FFF;}
	.footerArea nav li:last-child {border-right: 1px solid #FFF; padding-right: 20px;}
	.footerLogo img { max-width: 203px;}
	.footCopy small {font-size: 10px;}
}

.w1300 {width: 100%; max-width: 1332px; padding-left: 0; padding-right: 0;}
.w1500 {width: 100%; max-width: 1520px; padding-left: 0; padding-right: 0;}
.container {width: calc(100% - 40px); max-width: 1212px; padding-left: 0; padding-right: 0;}
.containers {width: calc(100% - 40px); max-width: 808px; padding-left: 0; padding-right: 0;}
.mlr,.container,.containers {margin-left: auto!important; margin-right: auto!important;}
.mlr5 {margin-left: 5px; margin-right: 5px;}
.mlr20,.col1,.col2,.col3,.col4,.col5,.col6 {margin-left: 20px; margin-right: 20px;}
.col1 {width: calc(100%/6 - 40px);}
.col2 {width: calc(100%/3 - 40px);}
.col3 {width: calc(50% - 40px);}
.col4 {width: calc(100%/1.5 - 40px);}
.col5 {width: calc(100%/1.2 - 40px);}
.col6 {width: calc(100% - 40px);}
.box4 {width: calc(25% - 30px); margin-left: 15px; margin-right: 15px;}
.w300 {max-width: 300px; width: 100%;}
.w25 {width: 25%;}
.w50 {width: 50%;}
.w75 {width: 75%;}

@media screen and (max-width: 896px) {
  .container,.containers {width: calc(100% - 20px);}
  .mlr20,.col1,.col2,.col3,.col4,.col5,.col6,.box3 {margin-left: 10px; margin-right: 10px;}
  .mlr5 {margin-left: 0; margin-right: 0;}
  .col1 {width: calc(100%/6 - 20px);}
  .col2 {width: calc(100%/3 - 20px);}
  .col3 {width: calc(50% - 20px);}
  .col4 {width: calc(100%/1.5 - 20px);}
  .col5 {width: calc(100%/1.2 - 20px);}
  .col6 {width: calc(100% - 20px);}
  .box4 {width: calc(25% - 20px); margin-left: 10px; margin-right: 10px;}
}
@media screen and (max-width: 568px) {
  .col1 {width: calc(100%/3 - 20px);}
  .col2,.col3,.col4,.col5,.col6 {width: calc(100% - 20px);}
  .box4 {width: calc(50% - 20px);}
}

ul.dot {list-style: disc; margin-left: 1.5em;}
ul.num {list-style: decimal; margin-left: 1.5em;}
.btnCmn {display: block; width: 100%; padding: 12px 32px; text-align: center; border: 1px solid #222; border-radius: 40px; color: #222; background: #FFF url("../img/cmn/arrow.svg") no-repeat right 20px center; transition: .3s;}
.btnCmn:hover {background: #222 url("../img/cmn/arrow_wh.svg") no-repeat right 10px center; color: #FFF;}

/*------------------------------------------------------

共通

------------------------------------------------------*/

.hd_btn a{
	background: #FFE100;
	width: auto;
	overflow: visible;
	transition: 0.3s;
	border-radius: 7px;
	justify-content: center;
	color: #153254;
	display: inline-block;
	position: relative;
	padding: 20px 75px 20px 25px;
	align-items: center;
	box-sizing: border-box;
	margin-left: 40px;
}
.hd_btn a span:before{
	content: url(../img/lp/contact_img.png);
	width: 62px;
	height: auto;
	position: absolute;
	bottom: -2px;
	right: 0;
} 

.hd_btn a:hover{
	opacity: 0.7;
}


@media screen and (max-width: 1080px) {
	.hd_btn a{margin-top: 20px;
	}
}
@media screen and (max-width: 896px) {
	.hd_btn a{
		width: 300px;
		font-size: 3vw;
		margin: 0 auto;
		display: block;
		text-align: center;
	}
}

@media screen and (max-width: 767px) {
	.hd_btn a{
	width: 320px;
    font-size: 4vw;
    max-width: 100%;
	}
}
@media screen and (max-width: 568px){
	.hd_btn a{font-size: 5vw;}
}


/* ------------------------- FV ------------------------- */
#fvarea{
	background: linear-gradient(90deg, #4d80bd, #32537A);
	padding:0;
	overflow: visible;
	color: #fff;
	position: relative;
}
.inner{
	width: 960px;
	margin: 0 auto;
	display: block;
	box-sizing: border-box;
}

#fvarea .inner{
	width: 100%;
	margin: 0 auto;
	display: block;
	padding: 0 5%;
	box-sizing: border-box;
	background: url(../img/lp/fv_mainimg_2411.png) right 1vw top -2.4vw no-repeat;
    background-size: auto 113%;
}

.inner img{
	width: initial;
	max-width: 100%;
	height: auto;
	}

#fvarea h2{
	color: #fff;
	font-weight: bold;
	text-align: left;
	text-shadow: #224d89 0 2px 4px;
	line-height: 1.2em;
	margin-bottom: 4%;
	display: flex;
	flex-direction: column;
}

.fv_box{
	display: block;
	width: 100%;
	padding: 60px 0;
}


.fv_box .spOnly_fv{
	display: none;
}

ul.fv_check li{
	background: url(../img/lp/fv_check.png) no-repeat left top 9px;
	background-size: 19px auto;
	padding-left: 25px;
	text-shadow: #224d89 0 2px 4px;
}

.fv_ctabtn{
	margin: 40px 0 0;
}

.fv_ctabtn a{
	background: #FFE100;
	width: auto;
	overflow: visible;
	transition: 0.3s;
	border-radius: 7px;
	justify-content: center;
	color: #153254;
	display: inline-block;
	position: relative;
	padding: 18px 25px 20px 90px;
	align-items: center;
	box-sizing: border-box;
}
.fv_ctabtn a span:before{
	content: url(../img/lp/cv_img.png);
	width: 71px;
	height: auto;
	position: absolute;
	bottom: -2px;
	left: 0;
} 

.fv_ctabtn a:hover{
	opacity: 0.7;
}

.fv_daybana{
	position: absolute;
	right: 5%;
	bottom: -100px;
	z-index: 3;
	width: 210px;
	height: auto;
	transition: 0.5s;
}

.fv_daybana a img{
	transition: 0.3s;
	filter: drop-shadow(2px 2px 5px rgba(0,0,0,0.5));
}

.fv_daybana a img:hover{
	opacity: 0.7;
}

.fv_daybana.fixed {
	position: fixed;
	bottom: 2%;
	right: 5%;
	z-index: 3;
	opacity: 0;
	transition: 0.5s;
	animation-name: fadein;
	animation-duration: 0.8s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}
.fv_daybana.fixed.none {
    opacity: 0;
}

@keyframes fadein {
	0% {
	   opacity: 0;
	   transform: translateY(20px);
	}
	100% {
	   opacity: 1;
	   transform: translateY(0);
	}
  }

  @media screen and (min-width: 1600px) {
	#fvarea .inner{
		width: 100%;
		margin: 0 auto;
		display: block;
		padding: 0 5%;
		box-sizing: border-box;
		background: url(../img/lp/fv_mainimg_2411.png) right 1vw top -2.4vw no-repeat;
		background-size: auto 115%;
	}
	.fv_box{
		display: block;
		width: 1200px;
		padding: 60px 0;
		margin: 0 auto;
	}
}
@media screen and (max-width: 896px) {
	.inner{
		max-width: 100%;
		padding:0 5%;
		box-sizing: border-box;
	}
	#fvarea h2{
		line-height: 0.8em;
	}
}

@media screen and (max-width: 767px) {
	#fvarea .inner{
		background: url(../img/lp/fv_mainimg_2411.png) right -2vw top -3vw no-repeat;
		background-size: 98% auto;
		}
	#fvarea h2{
		font-size: 6vw;
		line-height: 1.5em;
	}
	#fvarea h2 > span.txt32{
		line-height: 1.2em;
		margin-bottom: 10px;
	}
	#fvarea h2 > span.txt60{
		line-height: 1.4em;
		margin-bottom: 10px;
	}
	.fv_box {
		padding: 60% 0 40px;
	}
	ul.fv_check li{
		background: url(../img/lp/fv_check.png) no-repeat left top 6px;
		background-size: 16px;
		padding-left: 20px;
	}
	
	ul.fv_check li.txt20{
		font-size: 14px;
	}
	.fv_ctabtn a {
		display: block;
		padding: 18px 25px 20px 60px;
		text-align: center;
	}
	.fv_ctabtn a span.txt20{font-size: 4.5vw}

	.fv_daybana{
		position: fixed;
		right: -2%;
		bottom: 2%;
		z-index: 8;
		width: 25%;
		height: auto;
	}
	.fv_daybana.fixed {
		position: fixed;
		right: -2%;
		bottom: 2%;
		z-index: 8;
		width: 25%;
		height: auto;
	}
}

@media screen and (max-width: 431px) {
	.fv_box .spOnly_fv{
		display: inline;
	}
	#fvarea h2 > span.txt32{
		font-size: 5.5vw;
	}
	#fvarea h2 > span.txt60{
		font-size: 10vw;
	}
}

/* ------------------------- sec01 ------------------------- */
#sec01{
	padding: 70px 0;
	display: block;
	margin:0 auto;
	text-align: center;
	background: #F3F4F5;
}

#sec01 h2{
	color: #153254;
}

#sec01 h2 span{
	font-size: 150%;
}

.sec01_box{
	margin: 20px auto;
	display: flex;
	align-items: center;
}

.sec01_box div{
	width: 38%;
	height: auto;
	display: flex;
    flex-direction: column;
    align-items: center;
	overflow: visible;
}

.sec01_box div:first-of-type{
	width: 27%;
	height: auto;
	align-items: flex-end;
}

.sec01_box div:last-of-type{
	width: 27%;
	height: auto;
	align-items: flex-start;
}

.sec01_box img{
	width: 636px;
	height: auto;
}

.sec01_box h3{
	color: #fff;
	background: #153254;
	display: inline-block;
	padding: 5px 30px;
	text-align: center;
	margin-bottom: 30px;
}

.sec01_box div:first-of-type p{
	line-height: 1.3em;
	color: #333333;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 30px;
	box-sizing: border-box;
}

.sec01_box div:first-of-type p:nth-of-type(1){
	background: url(../img/lp/sec01_fuki-left01.png) no-repeat;
	background-size: 100% 100%;
	width: 225px;
	height: auto;
	padding: 9% 7%;
    margin-right: -4%;
	margin-top: 3%;
}
.sec01_box div:first-of-type p:nth-of-type(2){
	background: url(../img/lp/sec01_fuki-left02.png) no-repeat;
	background-size: 100% 100%;
	width: 260px;
	height: auto;
	padding: 12% 7%;
	margin-right:-5%;
}
.sec01_box div:first-of-type p:nth-of-type(3){
	background: url(../img/lp/sec01_fuki-left03.png) no-repeat;
	background-size: 100% 100%;
	width: 224px;
	height: auto;
    padding: 9% 6% 9% 8%;
    margin-right: -10%;
}


.sec01_box div:last-of-type p{
	line-height: 1.3em;
	color: #333333;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 30px;
	box-sizing: border-box;
}

.sec01_box div:last-of-type p:nth-of-type(1){
	background: url(../img/lp/sec01_fuki-right01.png) no-repeat;
	background-size: 100% 100%;
	width: 291px;
	height: auto;
	padding: 8% 7% 11% 8%;
	margin-left: -4%;
    margin-top: -10%;
}
.sec01_box div:last-of-type p:nth-of-type(2){
	background: url(../img/lp/sec01_fuki-right02.png) no-repeat;
	background-size: 100% 100%;
	width: 221px;
	height: auto;
    padding: 14% 7% 12% 7%;
    margin-left: 5%;
}
.sec01_box div:last-of-type p:nth-of-type(3){
	background: url(../img/lp/sec01_fuki-right03.png) no-repeat;
	background-size: 100% 100%;
	width: 287px;
	height: auto;
	padding: 11% 7%;
	margin-left: -10%;
    margin-bottom: -4%;
}

.sec01_issuebox{
	margin: 50px auto;
	display: flex;
	justify-content: center;
	gap: 30px;
	align-items: stretch;
}

.sec01_issuebox div.issuebox_inner{
	width: calc( 32% - 30px );
	box-sizing: border-box;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: center;
	background: #fff;
	filter: drop-shadow(0px 0px 12px rgba(0,0,0,0.1));
	border-radius: 8px;
}

.sec01_issuebox div.issuebox_inner h3{
	align-items: center;
    display: flex;
}

.sec01_issuebox div.issuebox_inner img{
	max-width: 90%;
	height: auto;
	margin: 20px auto;
}

.sec01_issuebox div.issuebox_inner:last-of-type img{
	max-width: 90%;
	height: auto;
	margin: 6px auto;
}

.sec01_issuebox div.issuebox_inner > div:last-of-type{
	display: flex;
}

.sec01_issuebox div.issuebox_inner > div p.txt14{
	flex:1;
	text-align: left;
}

@media screen and (max-width:767px) {
	#sec01 {padding: 10% 0;}

	#sec01 h2.txt32{
		font-size: 24px;
	}
	

	.sec01_box {
		flex-direction: column;
		margin: 10% auto;
	}

    .sec01_box div {
        width: 100%;
        margin-bottom: -20px;
        height: auto;
        position: relative;
        z-index: 3;
    }

	.sec01_box img{
		width: 90%;
	}
	.sec01_box div:first-of-type,
	.sec01_box div:last-of-type{
		width: 100%;
		margin: 0 auto;
		position: relative;
	}

	.sec01_box div:first-of-type{
		height: 52vw;
	}

	.sec01_box div:last-of-type{
		height: 60vw;
		position: relative;
        z-index: 2;
	}

	.sec01_box div:first-of-type p:nth-of-type(1) {
		width: 56vw;
		height: auto;
		position: absolute;
		left: -40px;
		font-size: 3vw;
	}
	.sec01_box div:first-of-type p:nth-of-type(2) {
		background: url(../img/lp/sec01_fuki-right01.png) no-repeat;
		background-size: 100% 100%;
		width: 63vw;
		position: absolute;
		top: 13vw;
		right: -40px;
		font-size: 3vw;
		margin: 0;
        padding: 9% 10% 9% 7%;
	}
	.sec01_box div:first-of-type p:nth-of-type(3) {
		background: url(../img/lp/sec01_fuki-left01.png) no-repeat;
		background-size: 100% 100%;
		width: 56vw;
		padding: 6%;
		position: absolute;
		left: -18px;
		top: 31vw;
		font-size: 3vw;
	}
    .sec01_box div:last-of-type p:nth-of-type(1) {
        background: url(../img/lp/sec01_fuki-left03.png) no-repeat;
        background-size: 100% 100%;
        width: 70vw;
        position: absolute;
        left: -8px;
        font-size: 3vw;
		padding: 8%;
        margin: 0;
    }
	.sec01_box div:last-of-type p:nth-of-type(2) {
		background: url(../img/lp/sec01_fuki-right03.png) no-repeat;
		background-size: 100% 100%;
		width: 59vw;
		position: absolute;
		right: -20px;
		font-size: 3vw;
		top: 20vw;
		padding: 9% 5%;
	}
	.sec01_box div:last-of-type p:nth-of-type(3) {
		background: url(../img/lp/sec01_fuki-right03.png) no-repeat;
		background-size: 100% 100%;
		width: 60vw;
		position: absolute;
		top: 35vw;
		z-index: -1;
		font-size: 3vw;
		margin:0;
		padding: 8% 7%; 
	}

	.sec01_issuebox{
		margin: 30px auto;
		gap: 20px;
		align-items: flex-start;
		justify-content: center;
		flex-direction: column;
	}
	
	.sec01_issuebox div.issuebox_inner{
		width: 100%;
		box-sizing: border-box;
		padding: 20px;
	}
}

/* ------------------------- sec01_btm ------------------------- */
#sec01btm{
	padding: 100px 0 150px;
	display: block;
	margin:0 auto;
	text-align: center;
	background: url(../img/lp/sec01btm_topbg.svg) no-repeat top 0 center;
	background-size: 150px auto;
}

#sec01btm .sec01btm_box01{
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: center;
	text-align: left;
	width: 100%;
	margin-bottom: 50px;
}

#sec01btm .sec01btm_box01 > div h3{
	display: block;
	background: #153254;
	color: #fff;
	width: 100%;
	padding: 10px;
	text-align: center;
	margin: 20px 0;
}

#sec01btm .sec01btm_box01 > div:last-of-type{
	width: 85%;
}

#sec01btm .sec01btm_box02{
	display: block;
	width: 100%;
	border-radius: 8px;
	background: #fff;
	filter: drop-shadow(0px 0px 12px rgba(0,0,0,0.1));
	padding: 5%;
	position: relative;
	margin-bottom: 80px;
}

#sec01btm .sec01btm_box02::before{
	position: absolute;
	content: url(../img/lp/sec01btm_y-arrow_btm.svg);
	top: -30px;
	left: 0;
	right: 0;
	z-index: 1;
}

.sec01_btm_box02_img img{
	width: 864px;
	height: 194px;
	display: block;
	max-width: initial;
}

#sec01btm .sec01btm_box03{
	display: block;
	width: 100%;
	border-radius: 8px;
	background: #fff;
	filter: drop-shadow(0px 0px 12px rgba(0,0,0,0.1));
	padding: 5%;
	position: relative;
}

#sec01btm .sec01btm_box03::before{
	position: absolute;
	content: url(../img/lp/sec01btm_y-arrow_btm.svg);
	top: -30px;
	left: 0;
	right: 0;
	z-index: 1;
}

#sec01btm .sec01btm_box03_inner{
	display: flex;
	justify-content: space-between;
	gap: 40px;
	align-items: flex-start;
	margin: 30px auto 0;
}

#sec01btm .sec01btm_box03_inner > div img{
	border: 1px solid #C6C6C6;
}

#sec01btm .sec01btm_box03_inner > div:first-of-type{
	width: 60%;
}


#sec01btm .sec01btm_box03_inner > div:last-of-type{
	flex:1;
	text-align: left;
}

#sec01btm .sec01btm_box03_inner > div:last-of-type h4{
	border-bottom: 2px solid #153254;
	display: block;
	margin-bottom: 15px;
	line-height: 1.3;
}

#sec01btm .sec01btm_box03_inner > div:last-of-type h4 span{
	color: #fff;
	background: #153254;
    padding: 0 15px 0 20px;
	display: inline-block;
	position: relative;
	letter-spacing: 0.1em;
}

#sec01btm .sec01btm_box03_inner > div:last-of-type h4 span::after{
	background: #153254;
	content: '';
	height: 100%;
	width: 12px;
	clip-path: polygon(0.5px 0, 100% 100%, 0 100%);
    position: absolute;
    right: -11px;
    top: 0;
}

@media screen and (max-width:767px) {
	#sec01btm .sec01btm_box01{
		display: flex;
		flex-direction: column;
		justify-content: center;
		gap: 20px;
		align-items: flex-start;
		margin-bottom: 30px;
	}
	
	#sec01btm .sec01btm_box01 > div:last-of-type{
		width: 100%;
	}
	#sec01btm .sec01btm_box02,
	#sec01btm .sec01btm_box03{
		padding-top: 8%;
	}
	#sec01btm .sec01btm_box02::before,
	#sec01btm .sec01btm_box03::before{
		top: -45px;
	}
	#sec01btm .sec01btm_box03_inner{
		display: flex;
		justify-content: center;
		flex-direction: column;
		gap: 20px;
	}
	#sec01btm .sec01btm_box03_inner > div:first-of-type{
		width: 100%;
	}
}

/* ------------------------- sec02 ------------------------- */
#sec02{
	padding: 0 0 2%;
	display: block;
	margin:0 auto;
	background: #F3F4F5;
	position: relative;
	overflow: visible;
}

#sec02 h2{
	color: #153254;
	text-align: center;
	margin-bottom: 20px;
	line-height: 1em;
}

#sec02 h2 img{
	width: 125px;
	height: auto;
	margin-top: -40px;
}

.sec02_meritbox{
	display: flex;
	justify-content: space-evenly;
}

.sec02_meritbox div.meritbox_inner{
	padding: 0 2% 2%;
	overflow: visible;
	width: calc(100%/3);
}

.sec02_meritbox div > div:first-of-type{
	padding: 0;
    width: 100%;
    background: #fff;
    border-radius: 7px;
    overflow: visible;
    height: 195px;
    position: relative;
    margin: 80px auto 20px;
}

.sec02_meritbox div > div:first-of-type > img{
	display: block;
    margin: 0% auto 15px;
    position: absolute;
    bottom: 0px;
}

.sec02_meritbox div:nth-of-type(1) > div:first-of-type > img{
    width: 67%;
    height: auto;
	left: 16.5%;
    right: 16.5%;
}
.sec02_meritbox div:nth-of-type(2) > div:first-of-type > img{
    width: 58%;
    height: auto;
	left: 21%;
    right: 21%;
}
.sec02_meritbox div:nth-of-type(3) > div:first-of-type > img{
    width: 80%;
    height: auto;
	left: 10%;
    right: 10%;
}

#sec02 .sec02_meritbox div h3{
	width: initial;
	background: none;
	border: none;
	text-align: center;
	display: block;
	margin-bottom: 10px;
}

#sec02 .sec02_meritbox div p{
	text-align: left;
}

#sec02 .sec02_servicebox{
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin: 80px auto 50px;
}

#sec02 .sec02_servicebox .servicebox_inner{
	display: flex;
	justify-content: space-around;
	width: 100%;
	border-radius: 8px;
	background: #fff;
	filter: drop-shadow(0px 0px 12px rgba(0,0,0,0.1));
    padding: 1% 0;
    position: relative;
    overflow: visible;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

#sec02 .sec02_servicebox .servicebox_inner div:first-of-type{
	width: 13%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: "Abel", sans-serif;
	color:  rgba(94, 155, 209, 0.4);
	font-size: 65px;
	padding-left: 20px;
}

#sec02 .sec02_servicebox .servicebox_inner div:nth-of-type(2){
	flex:1;
}

#sec02 .sec02_servicebox .servicebox_inner div:last-of-type{
    width: 20%;
    display: flex;
    justify-content: center;
}

#sec02 .sec02_servicebox .servicebox_inner div:last-of-type img{
	margin-top: -40px;
    width: 90%;
    margin-right: 10%;
	margin-bottom: -10px;
}

#sec02 .sec02_servicebox .servicebox_inner:nth-of-type(3) div:last-of-type img,
#sec02 .sec02_servicebox .servicebox_inner:nth-of-type(1) div:last-of-type img{
	margin-top: -50px;
    width: 90%;
    margin-right: 10%;
}

#sec02 .sec02_servicebox .servicebox_inner:nth-of-type(1) div:last-of-type img{
	margin-bottom: 0;
}


@media screen and (max-width:896px) {
	#sec02 h2::after {
		background-size: contain;
		width: 25px;
		height: 60px;
		margin: -5px 10px 0;
	}
	#sec02 .sec02_servicebox .servicebox_inner{
		padding: 3% 0;
	}
	#sec02 .sec02_servicebox .servicebox_inner div:last-of-type {
		width: 25%;
	}
}
@media screen and (max-width:767px) {
	#sec02 {
		padding: 30px 0 7%;
		background-size: 40%;
	}
	#sec02 h2{
		font-size: 5vw;
		margin-top: -12px;
	}

	#sec02 h2 img{
		width: 100px;
		margin-top: -70px;
	}

	.sec02_catch{
		text-align: left;
		font-size: 22px;
	}

	.sec02_meritbox {
		display: flex;
		justify-content: space-evenly;
		flex-wrap: wrap;
		flex-direction: column;
	}

	.sec02_meritbox div.meritbox_inner {
		padding: 0 0 2%;
		width: 100%;
	}
	.sec02_meritbox > div {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-content: center;
		align-items: center;
		margin-bottom: 5%;
		padding: 4%;
	}

	.sec02_meritbox div > div:first-of-type {
		height: 60vw;
		position: relative;

	}
	.sec02_meritbox div:first-of-type > div:first-of-type {
		margin: 45px auto 20px;
	}
	.sec02_meritbox div:nth-of-type(2) > div:first-of-type {
		margin: 30px auto 20px;
	}
	.sec02_meritbox div:last-of-type > div:first-of-type {
		margin: 40px auto 20px;
	}

	.sec02_meritbox div > div {
		background: none;
		padding: 0;
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		margin-bottom: 0;
	}

	.sec02_meritbox div > div > img {
		display: block;
		margin: 5% auto;
		width: 72%;
		height: auto;
	}

	.sec02_meritbox div > div > h3.txt16{
		font-size: 16px;
		margin: 0 auto;
	}
	.sec02_meritbox div > div > p.txt14{
		font-size: 14px;
	}

	#sec02 .sec02_servicebox .servicebox_inner{
		flex-direction: column;
		justify-content: center;
		padding: 5%;
		overflow: initial;
		margin-bottom: 0;
	}

	#sec02 .sec02_servicebox .servicebox_inner div h3{
		font-size: 20px;
	}
	#sec02 .sec02_servicebox .servicebox_inner div:first-of-type{
		width: 100%;
		padding: 10px 0;
	}
	
	#sec02 .sec02_servicebox .servicebox_inner div:last-of-type{
		width: 100%;
	}
	#sec02 .sec02_servicebox .servicebox_inner div:last-of-type img,
	#sec02 .sec02_servicebox .servicebox_inner:nth-of-type(3) div:last-of-type img,
	#sec02 .sec02_servicebox .servicebox_inner:nth-of-type(1) div:last-of-type img{
		width: 60%;
		margin: 0 auto;
	}
}



/* ------------------------- sec03 ------------------------- */
#sec03{
	padding: 75px 0 0;
	display: block;
	margin:0 auto;
	text-align: center;
	background: #fff url(../img/lp/sec03_arrow.svg?=202408271623) no-repeat top -1px center;
	background-size: 100px auto;
}

#sec03 h2{
	background: #153254;
	color: #fff;
	font-weight: bold;
	text-align: center;
	display: block;
	padding: 1% 5%;
	box-sizing: border-box;
	border-radius: 8px;
	margin-bottom: 2%;
}

#sec03 .sec03_meritbox{
	display: flex;
	justify-content: space-evenly;
}

#sec03 .sec03_meritbox > div{
	width: calc( 100% / 3 );
	padding: 0 1.5%;
	box-sizing: border-box;
}

#sec03 .sec03_meritbox > div h3{
	background: #4D80BD;
	border-radius: 50px;
	padding: 10px;
	width: 100%;
	display: block;
	position: relative;
	overflow: visible;
}

#sec03 .sec03_meritbox > div:nth-of-type(1) h3 span:after{
	position: absolute;
	content: url(../img/lp/sec03_img01.png);
	right: 15px;
	bottom: 5px;
}
#sec03 .sec03_meritbox > div:nth-of-type(2) h3 span:after{
	position: absolute;
	content: url(../img/lp/sec03_img02.png);
	right: 15px;
	bottom: 5px;
}
#sec03 .sec03_meritbox > div:nth-of-type(3) h3 span:after{
	position: absolute;
	content: url(../img/lp/sec03_img03.png);
	right: 15px;
	bottom: 3px;
}

#sec03 .sec03_meritbox > div dl{
	width: 100%;
	margin: 20px auto 0;
	padding: 0 5px 20px;
	box-sizing: border-box;
	border-bottom: 1px #DDDDDD dashed;
	min-height: 150px;
}

#sec03 .sec03_meritbox > div dl:nth-of-type(2){
	min-height: 128px;
}

#sec03 .sec03_meritbox > div dl:last-of-type{border-bottom: none;}

#sec03 .sec03_meritbox > div dt{
	display: block;
	margin-bottom: 10px;
	position: relative;
	letter-spacing: -0.08em;
}

#sec03 .sec03_meritbox > div dt span{
	display: inline;
	background: url(../img/lp/sec03_icon01.png) no-repeat left top 1px;
	background-size: 18px auto;
	padding-left: 20px;
}

#sec03 .sec03_meritbox > div dd{text-align: left;}

#sec03 .sec03_bana{
	width: 100%;
	display: block;
	margin: 50px auto;
}

#sec03 .sec03_bana a img{
	transition: 0.3s;
}
#sec03 .sec03_bana a img:hover{
	opacity: 0.7;
}


#sec03 h3{
	border-bottom: 1px dashed #4D80BD;
	display: block;
	margin-bottom: 15px;
	text-align: left;
	padding-bottom: 5px;
}

#sec03 h3 span{
	color: #fff;
	background: #4D80BD;
    padding: 5px 15px 5px 20px;
	display: inline-block;
	position: relative;
	letter-spacing: 0.1em;
}

#sec03 h3 span::after{
	background: #4D80BD;
	content: '';
	height: 100%;
	width: 20px;
	clip-path: polygon(0.5px 0, 100% 100%, 0 100%);
	position: absolute;
	right: -19px;
	top: 0;
}

#sec03 .sec03_theme{
	display: flex;
	flex-wrap: wrap;
	gap: 8px 15px;
	margin-bottom: 50px;
	justify-content: flex-start;
}

#sec03 .sec03_theme p{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: calc( 25% - 15px );
	border: 1px solid #4D80BD;
	background: #fff;
	padding: 7px 10px;
	font-size: 14px;
	font-weight: bold;
	color: #153254;
	letter-spacing: 0.1em;
}

#sec03 .sec03_theme p:nth-of-type(n+5):nth-child(-n+8),
#sec03 .sec03_theme p:nth-of-type(n+13):nth-child(-n+16),
#sec03 .sec03_theme p:nth-of-type(n+21):nth-child(-n+24),
#sec03 .sec03_theme p:nth-of-type(n+29):nth-child(-n+32){
	background:#EEF3F9;
}


@media screen and (max-width:767px) {
	#sec03 {
		background-size: 20%;
		padding: 55px 0 5%;
	}
	#sec03 h2 {
		padding: 3%;
		border-radius: 6.4px;
	}

	#sec03 .sec03_meritbox {
		flex-direction: column;
		margin-top: 30px;
	}
	#sec03 .sec03_meritbox > div {
		width: 100%;
		padding: 0;
	}

	#sec03 .sec03_meritbox > div:last-of-type {
		margin-bottom: 30px;
	}

	#sec03 .sec03_meritbox > div > dl {
		padding-bottom: 0;
	}

	#sec03 .sec03_meritbox > div:nth-of-type(2),
	#sec03 .sec03_meritbox > div:nth-of-type(3) {
		margin-top: 15px;
	}
	#sec03 .sec03_meritbox > div h3.txt16{font-size:16px;}
	#sec03 .sec03_meritbox > div dl,
	#sec03 .sec03_meritbox > div dl:nth-of-type(2){
		min-height: initial;
	}

	#sec03 .sec03_meritbox > div dt.txt14,
	#sec03 .sec03_meritbox > div dd.txt14{
		font-size: 14px;
	}

	#sec03 .sec03_bana{
		margin: 25px auto 0;
	}

	#sec03 .sec03_theme{
		gap: 10px;
		margin-bottom: 30px;
	}
	#sec03 .sec03_theme p{
		width: calc( 50% - 10px );
		letter-spacing: initial;
		padding: 7px;
	}
	#sec03 .sec03_theme p:nth-of-type(n+5):nth-of-type(-n+8),
	#sec03 .sec03_theme p:nth-of-type(n+13):nth-of-type(-n+16),
	#sec03 .sec03_theme p:nth-of-type(n+21):nth-of-type(-n+24),
	#sec03 .sec03_theme p:nth-of-type(n+29):nth-of-type(-n+32){
		background:#fff;
	}
	#sec03 .sec03_theme p:nth-of-type(n+3):nth-of-type(-n+4),
	#sec03 .sec03_theme p:nth-of-type(n+7):nth-of-type(-n+8),
	#sec03 .sec03_theme p:nth-of-type(n+11):nth-of-type(-n+12),
	#sec03 .sec03_theme p:nth-of-type(n+15):nth-of-type(-n+16),
	#sec03 .sec03_theme p:nth-of-type(n+19):nth-of-type(-n+20),
	#sec03 .sec03_theme p:nth-of-type(n+23):nth-of-type(-n+24),
	#sec03 .sec03_theme p:nth-of-type(n+27):nth-of-type(-n+28){
		background:#EEF3F9;
	}
}

/* ------------------------- sec04 ------------------------- */
#sec04{
	padding: 50px 0 100px;
	display: block;
}

#sec04 .inner{
	border-top: 1px dashed #4D80BD;
	padding-top: 50px;
}

#sec04 h2{
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
    justify-content: center;
	margin: 0 auto 3%;
}

#sec04 h2 img{width: 53px; height: auto;}

.sec04_box{
	display: flex;
	justify-content: space-around;
	gap: 8px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.sec04_box > div{
	position: relative;
	display: flex;
	flex-direction: column;
	width: calc( 100% / 5 );
	background: #fff;
	text-align: center;
	padding: 20px 1%;
	filter: drop-shadow(0px 3px 5px rgba(0,0,0,0.2));
	z-index: 0;
}
.sec04_box > div:nth-of-type(1){border-top: solid #6392C9 6px;}
.sec04_box > div:nth-of-type(2){border-top: solid #5983B6 6px;}
.sec04_box > div:nth-of-type(3){border-top: solid #527AA9 6px;}
.sec04_box > div:nth-of-type(4){border-top: solid #496F9A 6px;}
.sec04_box > div:nth-of-type(5){border-top: solid #34567F 6px;}

.sec04_box > div:nth-of-type(2)::before{
	content: url(../img/lp/sec04_arrow01.png);
	position: absolute;
	left: -15px;
	top: 10%;
	z-index: 10;
}
.sec04_box > div:nth-of-type(3)::before{
	content: url(../img/lp/sec04_arrow02.png);
	position: absolute;
	left: -15px;
	top: 10%;
	z-index: 10;
}
.sec04_box > div:nth-of-type(4)::before{
	content: url(../img/lp/sec04_arrow03.png);
	position: absolute;
	left: -15px;
	top: 10%;
	z-index: 10;
}
.sec04_box > div:nth-of-type(5)::before{
	content: url(../img/lp/sec04_arrow04.png);
	position: absolute;
	left: -15px;
	top: 10%;
	z-index: 10;
}

.sec04_box > div img{
	height: 33px;
	width: auto;
	margin-bottom: 5px;
}

.sec04_box > div p.txt12{
	text-align: left;
	padding-left: 1em;
	text-indent: -1em;
	margin-left: 10px;
}

.flow_txt{
	font-family: "Inter", sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	font-size: 9px;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #ddd;
}

.sec04_box > div:nth-of-type(1) .flow_txt, .sec04_box > div:nth-of-type(1) h3{color: #6392C9;}
.sec04_box > div:nth-of-type(2) .flow_txt, .sec04_box > div:nth-of-type(2) h3{color: #6392C9;}
.sec04_box > div:nth-of-type(3) .flow_txt, .sec04_box > div:nth-of-type(3) h3{color: #6392C9;}
.sec04_box > div:nth-of-type(4) .flow_txt, .sec04_box > div:nth-of-type(4) h3{color: #6392C9;}
.sec04_box > div:nth-of-type(5) .flow_txt, .sec04_box > div:nth-of-type(5) h3{color: #6392C9;}

.sec04_box > div h4{
	background: #F3F4F5;
	color: #333;
	padding: 3px;
	margin: 10px auto 5px;
	width: 100%;
}

.sec04_box > div ul li{
	font-size: 14px;
}

.ls-05{letter-spacing: -0.05em;}

.sec04_box > div ul li.txt14{
	text-align: left;
}

@media screen and (max-width:896px) {
	.sec04_wrap.spOnly{
		display: none;
	}
}

@media screen and (max-width:767px) {
	.sec04_box{
		width: 960px;
		max-width: initial;
	}
	#sec04 h2{
		margin: 0 auto 6%;
	}

	.sec04_wrap.spOnly{
		display: block;
	}
	.sec04_box.pcOnly{
		display: none!important;
	}
	.sec04_box > div{
		filter: none;
		border-right: 1px solid #e2e2e2;
		border-left: 1px solid #e2e2e2;
		border-bottom: 1px solid #e2e2e2;
	}
	.sec04_box > div ul li{
		font-size: 12px;
	}
	.sec04_box > div ul li.txt14{
		text-align: left;
		font-size: 12px;
	}
}


/* ------------------------- sec05 ------------------------- */

#sec05{
	padding: 0 0 7%;
	display: block;
	margin:0 auto;
	background: #F3F4F5;
	position: relative;
	overflow: visible;
}

#sec05 h2{
	color: #153254;
	text-align: center;
	position: absolute;
    margin-top: -15px;
    left: 45%;
	line-height: 1em;
}

#sec05 h2 img{
	width: 120px;
    height: auto;
    margin-top: -30px;
}

@media screen and (max-width: 767px) {
	#sec05{
		padding: 30px 0 50px;
		background-size: 30%;
	}
	#sec05 h2 {
		position: initial;
		margin-top: -50px;
		left: initial;
	}
}


/*------ Q&A ------*/
.qa-list{padding-top: 115px;}
.qa-list dl {
    position: relative;
    margin: 0 auto 30px;
    padding: 28px 30px /* 28px 80px 28px 30px*/;
    /* cursor: pointer; */
	background: #fff;
	box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.16);
    border-radius: 10px;
}
/*
.qa-list dl::before {
    position: absolute;
    top: 35px;
    right: 35px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #142C4D;
    border-right: 2px solid #142C4D;
}
.qa-list .open::before {
    transform: rotate(-45deg);
}
*/
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 0 0 0 55px;
}
.qa-list dl dt::before {
    line-height: 1;
    position: absolute;
    top: -4px;
    left: 0;
    display: block;
    content: '　';
	background: url(../img/lp/sec05_faq_q.png) no-repeat left center;
	background-size: 40px 40px;
	width: 40px;
	height: 40px;
}
.qa-list dl dd::before {
    line-height: 1;
    position: absolute;
    top: -4px;
    left: 2px;
    display: block;
    content: '　';
	background: url(../img/lp/sec05_faq_a.png) no-repeat left center;
	background-size: 40px 40px;
	width: 40px;
	height: 40px;
	margin-top: 20px;
}
.qa-list dl dd {
    position: relative;
    display: /*none*/ block;
    height: auto;
    margin: 20px 0 0;
    padding: 20px 0 0 55px;
	line-height: 1.4em;
	border-top: 1px solid #C7C7C7;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}

@media screen and (max-width: 767px) {
	.qa-list{padding-top: 20px;}

	.qa-list dl {
		position: relative;
		padding: 15px 40px 15px 20px;
	}
	.qa-list dl::before {
		top: 20px;
		right: 20px;
		width: 7px;
		height: 7px;
	}

	.qa-list dl dt::before,
	.qa-list dl dd::before {
		background-size: 30px 30px;
		width: 30px;
		height: 30px;
	}

	.qa-list dl dt, .qa-list dl dd {
		padding: 0 0 0 50px;
	}

	.qa-list dl dd p {
		margin: 30px 0 0;
		padding-top: 15px;
	}
	.qa-list dl dd p:first-child{
		margin-top: 0;
	}
}

/* ------------------------- cvarea ------------------------- */
.sec_cvarea{
	background: linear-gradient(90deg, #4d80bd, #32537A);
	padding: 50px 0 70px;
	display: block;
	margin:0 auto;
	text-align: center;
	color: #fff;
}

.sec_cvarea .inner{
	width:1000px;
	max-width: 100%;
}

.sec_cvarea h2{
    padding: 0 0 30px;
    box-sizing: border-box;
	text-align: center;
	line-height: 1.3em;
	margin-bottom: 3%;
	color:#fff;
	border-bottom: 1px solid #fff;
	letter-spacing: 1px;
}

.sec_cvarea h2 span{
	color: #FFE100;
}

.cv_ctabtn{
	margin: 40px auto 0;
	display: block;
}

.cv_ctabtn a{
	background: #FFE100;
	width: auto;
	overflow: visible;
	transition: 0.3s;
	border-radius: 7px;
	justify-content: center;
	color: #153254;
	display: inline-block;
	position: relative;
    padding: 18px 25px 20px 90px;
	align-items: center;
	box-sizing: border-box;
}
.cv_ctabtn a span:before{
	content: url(../img/lp/cv_img.png);
	width: 71px;
	height: auto;
	position: absolute;
	bottom: -2px;
	left: 0;
} 

.cv_ctabtn a:hover{
	opacity: 0.7;
}


@media screen and (max-width:768px) {
	.sec_cvarea h2.txt28 {
		font-size: 5.2vw;		
	}
	.cv_ctabtn a {
		display: block;
		padding: 16px 20px 16px 60px;
		text-align: center;
	}
	.cv_ctabtn a span.txt20{font-size: 4.5vw}

}


/* ------------------------- footer ------------------------- */
#footer{
	padding: 3% 0 0;
	background: #142C4D;
	color: #fff;
	text-align: center;
}

#footer img{
	width: 20%;
	max-width: 350px;
	height: auto;
}
.footer_link {
	margin: 30px auto;
	display: flex;
	justify-content: center;
}
.footer_link a{
	color: #fff;
	margin: 0 15px;
	line-height: 1.1em;
}
.footer_link a:hover{
	text-decoration: underline;
}


.footer_link a:after{
	content: '　';
	background: url(../img/cmn/newwindow.png) no-repeat;
	background-size: 15px auto;
	background-position: right center;
	padding-right: 10px;
	margin: auto;
}

#copyright{
	border-top: 1px solid #fff;
	padding: 2%;
}

@media screen and (max-width: 767px) {


	#footer {
		padding: 35px 0 0;
	}
	#footer img {
		width: 65%;
		height: auto;
	}

}

/*====================================================================
slick
====================================================================*/

.prev_icon,.next_icon{ position: absolute; top: 50%; transform: translate(0,-50%); width: 30px; height:60px; z-index: 1;}
.prev_icon{ left: 0;}
	.next_icon{ right: 0; }


/* ハンバーガーボタンのデザイン */
.drawer__button {display: none;}
.drawer__nav{display: none;}
@media screen and (max-width: 896px){
	.drawer__button {
		display: inline;
        position: fixed;
        width: 60px;
        height: 60px;
		background-color: transparent;
		border: none;
		cursor: pointer;
		z-index: 999; /* メニューを開いている時もクリックできるよう設定 */
		top: 0;
		right: 0;
		background: #006AA1;
	}
	/* ハンバーガーボタン内の線 */
	.drawer__button > span {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 2rem;
		height: 2px;
		background-color: #fff;
		transform: translateX(-50%);
	}
	.drawer__button > span:first-child {
		transform: translate(-50%, calc(-50% - 0.5rem));
		transition: transform 0.3s ease;
	}
	.drawer__button > span:nth-child(2) {
		transform: translate(-50%, -50%);
		transition: opacity 0.3s ease;
	}
	.drawer__button > span:last-child {
		transform: translate(-50%, calc(-50% + 0.5rem));
		transition: transform 0.3s ease;
	}
	/* 展開時のデザイン */
	.drawer__button.active > span:first-child {
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	.drawer__button.active > span:nth-child(2) {
		opacity: 0;
	}
	.drawer__button.active > span:last-child {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	/* メニューのデザイン */
	.drawer__nav {
		display: block;
		position: fixed; /* 追従ヘッダーなどでも表示できるよう設定しておく */
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background-color: rgba(0, 0, 0, 0.5);
		transition: opacity 0.3s ease;
		opacity: 0;
		visibility: hidden;
	}
	.drawer__nav.active {
		opacity: 1;
		visibility: visible;
	}
	.drawer__nav__inner {
		position: relative;
		width: 100%;
		height: 100%;
		background-color: #67b7e1;
		padding: 4rem 1.5rem 1rem;
		margin: 0 0 0 auto;
		overflow: scroll;
		transform: translateX(100%);
		transition: transform 0.3s ease;
	}
	.drawer__nav.active .drawer__nav__inner {
		transform: translateX(0);
	}
	.drawer__nav__menu {
		list-style: none;
		padding-left: 0;
	}
	.drawer__nav__link {
		display: block;
		color: #fff;
		text-decoration: none;
		padding: 1rem 1rem;
		border-bottom: solid 1px rgb(255, 255, 255);
		font-size: 1.2rem;
	}

	.sp_btn a{
		border-radius: 50px!important;
		width: 80%!important;
		margin: 3% auto 0!important;
	}
	.sp_btn:first-of-type a{
		background-color: #006AA1!important;
	}
	.sp_btn:last-of-type a{
		background-color: #142C4D!important;
	}
	
	/* ハンバーガーメニュー展開時、背景を固定 */
	body.active {
		height: 100%;
		overflow: hidden;
	}
}