@charset "UTF-8";
/* ----------------------------------------------------------------------------------------------------
*  page
* --------------------------------------------------------------------------------------------------*/
/* ------------------------------
    mv
------------------------------ */
.mv {
	position: relative;
	height: 596px;
	background: url("../img/mv_bg.png") center center no-repeat;
	background-size: cover;
	margin: 0 auto;
}

.mv .txt_mv {
	position: absolute;
	top: 40px;
	left: calc(50% - 512px);
}

@media screen and (max-width: 768px) {
	.mv {
		width: 100%;
		height: auto;
	}
	.mv .txt_mv {
		position: static;
		top: auto;
		left: auto;
		width: 100%;
		height: auto;
	}
	.mv .txt_mv img {
		width: 100%;
	}
}
/* ------------------------------
    info-box
------------------------------ */
.info-box{
	width: 100%;
	max-width: 87.8rem;
	margin: 3.8rem auto 4rem auto;
	box-sizing: border-box;
}

.info-box .box-head{
	text-align: center;
	background-image: linear-gradient(90deg, #0084ff, #47cbff);
	border-radius: .8rem .8rem 0 0;
	box-sizing: border-box;
}
.info-box .box-head .ttl{
	text-align: center;
	font-size: 4rem;
	line-height: calc(70 / 40);
	font-weight: 700;
	color: #FFF;
}

.info-box .box-cnts{
	padding: 0 0 3.5rem 0;
	border: 5px solid transparent; /* 枠線の太さを確保 */
	border-radius: 0 0 .8rem .8rem; /* 角丸の指定 */
	background-image: 
		linear-gradient(#fff, #fff), /* ① コンテンツ背景色（ベタ塗り） */
		linear-gradient(90deg, #0084ff, #47cbff);; /* ② 枠線のグラデーション */
	background-origin: border-box; /* 背景の基準位置 */
	background-clip: padding-box, border-box; /* 背景の切り抜き範囲をそれぞれ指定 */
	box-sizing: border-box;
}
.info-box .box-cnts .date{
	display: flex;
	justify-content: center;
	align-items: baseline;
	text-align: center;
	color: #094073;
	font-size: 3.9rem;
	line-height: calc(68 / 39);
	font-weight: 500;
}
.info-box .box-cnts .date .num{
	font-size: 6.5rem;
	line-height: calc(114 / 65);
	font-weight: 700;
	margin: 0 .4rem;
}
.info-box .box-cnts .date .youbi{
	position: relative;
	top: -.3rem;
	margin-right: .4rem;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4.1rem;
	height: 4.1rem;
	color: #FFF;
	font-size: 2.4rem;
	line-height: 1;
	font-weight: 700;
	background: #0089ce;
	border-radius: 100%;
	
}

.info-box .box-cnts .txt{
	text-align: center;
	font-size: 2.4rem;
	line-height: calc(40 / 24);
	letter-spacing: .75px;
	font-weight: 700;
}

@media screen and (max-width: 768px) {
	.info-box{
		width: 90%;
		max-width: inherit;
		margin: 3.2rem auto 3.6rem auto;
	}
	.info-box .box-head .ttl{
		font-size: 2.8rem;
	}

	.info-box .box-cnts{
		padding: 4.646vw 2.646vw 5.291vw 2.646vw;
	}
	.info-box .box-cnts .date{
		display: block;
		text-align: center;
		font-size: 6.349vw;
		margin-bottom: 4.762vw;
	}
	.info-box .box-cnts .date .num{
		font-size: 10.053vw;
		line-height: 1;
		margin: 0 .2rem;
	}
	.info-box .box-cnts .date .youbi{
		display: inline-block;
		vertical-align: middle;
		top: 0;
		margin-right: .2rem;
		padding: 1.4vw;
		width: 6.349vw;
		height: 6.349vw;
		font-size: 3.175vw;

	}

	.info-box .box-cnts .txt{
		text-align: left;
		font-size: 3.704vw;
	}
}

/* ------------------------------
    sec1
------------------------------ */
.sec1 {
	padding: 100px 0;
	position: relative;
	background: url(../img/sec1_bg.png) top repeat-x;
	background-size: 100px;
}

.sec1 .wrap {
	z-index: 2;
}

.sec1_bg_l {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.sec1_bg_r {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.sec1 .ttl {
	font-size: 4rem;
	font-weight: 900;
	margin-bottom: 70px;
	line-height: 1.6;
}

.sec1 .ttl .txt_line:before, .sec1 .ttl .txt_line:after {
	position: absolute;
	background: #fff;
	bottom: 0;
	width: 5px;
	height: 114px;
}

.sec1 .ttl .txt_line:before {
	left: -85px;
}

.sec1 .ttl .txt_line:after {
	right: -55px;
}

.gecko .sec1 .ttl .txt_line:before, .gecko .sec1 .ttl .txt_line:after {
	bottom: -1.5em;
}

.sec1_1 {
	margin-bottom: 67px;
}

.sec1_1 p {
	letter-spacing: 0.05em;
}

.sec1_2 .ttls {
	line-height: 1;
	padding: 0.65em 0;
	background: #043960;
}

.sec1_2 .inner {
	background: #fff;
	border: 2px solid #043960;
	border-top: none;
	padding: 41px 56px;
}

.sec1_2 .inner li {
	position: relative;
	padding-left: 35px;
	font-size: 1.9rem;
	letter-spacing: normal;
	border-bottom: 1px solid #ccc;
	padding-bottom: 11px;
}

.sec1_2 .inner li:before {
	content: "";
	display: block;
	position: absolute;
	width: 24px;
	height: 24px;
	background: url(../img/ico_check.png);
	background-size: contain;
	left: 0;
	top: 0.3em;
}

.sec1_2 .inner li + li {
	margin-top: 12px;
}

.sec1_img2 {
	position: absolute;
	right: -64px;
	bottom: -67px;
}

@media screen and (min-width: 769px) {
	.sec1 .ttl .txt_line {
		/*		display: inline-block;*/
	}
	.sec1_2 .inner ul {
		width: 427px;
	}
}
@media screen and (max-width: 768px) {
	.sec1 {
		padding: 9vw 0 12vw;
		background-size: 25vw;
	}
	.sec1_bg_l {
		width: 40vw;
	}
	.sec1_bg_r {
		width: 40vw;
	}
	.sec1 .ttl {
		font-size: 6vw;
		font-weight: 700;
		margin-bottom: 6vw;
		line-height: 1.5;
	}
	.sec1 .ttl .txt_line:before, .sec1 .ttl .txt_line:after {
		width: 3px;
		height: 14vw;
	}
	.sec1 .ttl .txt_line:before {
		left: -10vw;
	}
	.sec1 .ttl .txt_line:after {
		right: -10vw;
	}
	.sec1_1 {
		margin-bottom: 8vw;
	}
	.sec1_1 .txt {
		margin-top: 3vw;
	}
	.sec1_2 .inner {
		background: #fff;
		border-width: 1px;
		padding: 5.8vw 4vw 4vw;
	}
	.sec1_2 .inner li {
		padding-left: 6.6vw;
		font-size: 3.5vw;
		padding-bottom: 4vw;
		font-weight: 700;
		line-height: 1.3;
	}
	.sec1_2 .inner li:before {
		width: 4.8vw;
		height: 4.8vw;
		top: 0;
	}
	.sec1_2 .inner ul + ul, .sec1_2 .inner li + li {
		margin-top: 4vw;
	}
	.sec1_2 .inner ul + ul li:last-of-type {
		border-bottom: none;
		padding-bottom: 0;
	}
	.sec1_img2 {
		width: 24vw;
		right: -1.6vw;
		bottom: -8.5vw;
	}
}
/* ------------------------------
    sec2
------------------------------ */
/*--sec2_1--*/
.sec2_1 {
	overflow: hidden;
	position: relative;
	height: 690px;
	background: url(../img/sec2_1bg_pc.png) center bottom;
	background-repeat: no-repeat;
	background-size: cover;
}

.sec2_1txt {
	margin-top: 100px;
}

.sec2_1txt .ttl {
	margin-bottom: 34px;
	text-align: center;
}

.sec2_1txt ul {
	margin: 0 auto;
}

.sec2_1txt li {
	position: relative;
	padding-left: 32px;
	font-size: 1.9rem;
	letter-spacing: normal;
	font-weight: 500;
}

.sec2_1txt li:before {
	content: "";
	display: block;
	position: absolute;
	width: 21px;
	height: 21px;
	background: url(../img/ico_arr.png) no-repeat;
	background-size: contain;
	top: 0.4em;
	left: 0;
}

.sec2_1txt li + li {
	margin-top: 20px;
}

@media screen and (min-width: 769px) {
	.sec2_1txt ul {
		width: 610px;
	}
}
@media screen and (max-width: 768px) {
	/*--sec2_1--*/
	.sec2_1 {
		height: 130vw;
		background: url(../img/sec2_1bg_sp.png) center bottom;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.sec2_1txt {
		margin-top: 9vw;
	}
	.sec2_1txt .ttl {
		margin-bottom: 5.8vw;
		text-align: center;
	}
	.sec2_1txt li {
		position: relative;
		padding-left: 5vw;
		font-size: 3.3vw;
		line-height: 1.2;
		letter-spacing: normal;
		font-weight: 400;
	}
	.sec2_1txt li:before {
		width: 3.6vw;
		height: 3.6vw;
		top: 0.1em;
		left: 0;
	}
	.sec2_1txt li + li {
		margin-top: 5.4vw;
	}
}
/*--sec2_2--*/
.sec2_2 {
	padding: 63px 0 67px;
	text-align: center;
}

.sec2_2 .ttl {
	margin-bottom: 44px;
}

.sec2_2 img {
	margin-left: auto;
	margin-right: auto;
}

.sec2_2img1 {
	margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
	.sec2_2 {
		padding: 8vw 0;
	}
	.sec2_2 .wrap {
		width: 100%;
	}
	.sec2_2 .ttl {
		margin-bottom: 3vw;
	}
	.sec2_2 .ttl img {
		width: 90%;
	}
	.sec2_2img1 {
		width: 94.6%;
		margin-bottom: 0;
	}
}
/*--sec2_3--*/
.sec2_3 {
	padding: 95px 0;
	background-image: url(../img/sec2_3bg.png);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: contain;
	position: relative;
	overflow: hidden;
}

.sec2_3:before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	top: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 47px 55.5px 0 55.5px;
	border-color: #EDFAFF transparent transparent transparent;
}

.sec2_3 .ttl {
	font-size: 4rem;
	line-height: 1;
	letter-spacing: normal;
	padding: 0.58em 0;
	margin-bottom: 26px;
}

.moviewrap {
	margin: 0 auto 18px;
	position: relative;
	width: 800px;
	padding-top: 56.25%;
}

.moviewrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.sec2_3 p {
	letter-spacing: normal;
	font-size: 2.2rem;
}

@media screen and (min-width: 769px) {
	.sec2_3 p {
		text-align: center;
	}
}
@media screen and (max-width: 768px) {
	.sec2_3 {
		padding: 11vw 0;
	}
	.sec2_3:before {
		border-width: 4vw 5vw 0 5vw;
	}
	.sec2_3 .ttl {
		font-size: 4.8vw;
		padding: 0.58em 0;
		margin-bottom: 4vw;
	}
	.moviewrap {
		margin: 0 auto 2vw;
		width: 100%;
	}
	.sec2_3 p {
		letter-spacing: normal;
		font-size: 3.7vw;
	}
}
/* ------------------------------
    sec3
------------------------------ */
/*--sec3_lead--*/
.sec3_lead {
	padding-top: 70px;
	background: url(../img/sec3_lead_bg.png) bottom center no-repeat;
	background-size: 100%;
	height: 720px;
}

.sec3_lead .ttl_sec {
	margin-bottom: 45px;
}

@media screen and (min-width: 1361px) {
	.sec3_lead {
		min-height: 35vw;
	}
}
@media screen and (max-width: 768px) {
	/*--sec3_lead--*/
	.sec3_lead {
		padding-top: 9vw;
		padding-bottom: 7vw;
		height: auto;
	}
	.sec3_lead .ttl_sec {
		margin-bottom: 3vw;
	}
	.sec3_lead_img {
		width: 90%;
	}
}
/*--sec3_point--*/
.sec3_point {
	padding: 100px 0 50px;
	position: relative;
}

.sec3_point .ttl {
	font-size: 2.8rem;
	font-weight: 900;
	line-height: 1;
	margin-bottom: 55px;
}

.sec3_point .ttl img {
	margin-bottom: 25px;
}

.sec3_point_lead {
	font-size: 3.4rem;
	line-height: 1.3;
}

@media screen and (min-width: 769px) {
	.sec3_point_lead {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.sec3_point_lead img {
		margin: 0 13px 15px 0;
		width: 40px;
	}
}
@media screen and (max-width: 768px) {
	.sec3_point {
		padding: 9vw 0 8vw;
	}
	.sec3_point .ttl {
		font-size: 4.6vw;
		line-height: 1.4;
		font-weight: 700;
		margin-bottom: 6vw;
	}
	.sec3_point .ttl img {
		margin-bottom: 2vw;
		width: 16vw;
	}
	.sec3_point_lead {
		font-size: 4.2vw;
		line-height: 1.8;
		font-weight: 700;
	}
	.sec3_point_lead img {
		width: 6vw;
		margin-bottom: 0.5vw;
	}
}
/*--sec3_1--*/
.sec3_1 {
	margin-top: -68px;
	padding-top: 0;
}

.sec3_1img1 {
	margin-bottom: 42px;
}

.sec3_1txt1 {
	margin-bottom: 56px;
}

.sec3_1box {
	border: 3px solid #094073;
	padding: 35px 39px 30px 60px;
	margin-bottom: 42px;
}

.sec3_1box .ttls {
	margin-bottom: 22px;
}

.sec3_1box .ttls img {
	margin-left: 0;
}

.sec3_1box .txt {
	letter-spacing: 0.05em;
}

.sec3_1box p.smaller {
	font-size: 1.3rem;
	padding-top: 0.3em;
	margin-bottom: 1em;
}

@media screen and (min-width: 769px) {
	.sec3_1box .img {
		width: 336px;
		margin-left: 25px;
	}
	.sec3_1box .txt {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
}
@media screen and (max-width: 768px) {
	.sec3_1 {
		margin-top: 0;
	}
	.sec3_1img1 {
		margin-bottom: 4vw;
	}
	.sec3_1txt1 {
		margin-bottom: 6vw;
	}
	.sec3_1box {
		border-width: 2px;
		padding: 3vw;
		margin-bottom: 6vw;
	}
	.sec3_1box .ttls {
		margin-bottom: 3vw;
	}
	.sec3_1box .ttls img {
		margin-left: 0;
	}
	.sec3_1box p.smaller {
		font-size: 3vw;
		padding-top: 0.3em;
		margin-bottom: 1em;
		line-height: 1.4;
	}
	.sec3_1box .txt {
		margin-bottom: 4vw;
	}
	.sec3_1box .img img {
		width: 70vw;
	}
}
/*--sec3_2--*/
.sec3_2box {
	position: relative;
	margin-bottom: 36px;
}

@media screen and (min-width: 769px) {
	.sec3_2box {
		padding: 35px 35px 35px 476px;
		height: 280px;
	}
	.sec3_2box img {
		position: absolute;
		top: -73px;
		left: 44px;
	}
}
@media screen and (max-width: 768px) {
	.sec3_2box {
		position: relative;
		padding: 3vw;
		margin-bottom: 6vw;
	}
	.sec3_2box .img {
		margin-bottom: 4vw;
	}
	.sec3_2box .img img {
		width: 60vw;
	}
}
/*--sec3_3--*/
.sec3_3box {
	margin-bottom: 40px;
}

.sec3_3txt1 {
	margin-bottom: 36px;
	letter-spacing: 0.05em;
}

.sec3_3box .txt .box {
	padding: 20px 5px 20px 26px;
	font-weight: 500;
	font-size: 1.2rem;
}

.sec3_3box th {
	text-align: left;
}

.sec3_3box .txt .box + .smaller {
	font-weight: normal;
	font-size: 1.24rem;
	line-height: 1.715;
	margin-top: 0.5em;
}

@media screen and (min-width: 769px) {
	.sec3_3box .txt {
		width: 475px;
	}
}
@media screen and (max-width: 768px) {
	.sec3_3box {
		margin-bottom: 6vw;
	}
	.sec3_3txt1 {
		margin-bottom: 4vw;
		letter-spacing: normal;
	}
	.sec3_3box .txt .box {
		padding: 2vw 4vw;
		font-size: 3.2vw;
	}
	.sec3_3box td {
		padding-left: 1em;
		text-indent: -1em;
	}
	.sec3_3box .txt .box + .smaller {
		font-size: 3vw;
		margin-bottom: 6vw;
	}
}
/*--sec3_4--*/
.sec3_4 {
	overflow: hidden;
}

.sec3_4box {
	padding: 38px 58px 40px;
	margin-bottom: 38px;
}

.sec3_4img2 {
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: 282px;
}

@media screen and (min-width: 769px) {
	.sec3_4box .txt {
		width: 467px;
	}
}
@media screen and (max-width: 768px) {
	.sec3_4box {
		padding: 3vw;
		margin-bottom: 6vw;
	}
	.sec3_4box .img {
		margin-top: 2vw;
	}
	.sec3_4box img {
		/*width: 70vw;*/
	}
	.sec3_4img2 {
		width: 32vw;
		left: auto;
		right: -6vw;
		margin-left: 0;
	}
}
/*--sec3_5--*/
.sec3_5 {
	background: url(../img/sec3_5bg.png) bottom center no-repeat;
	background-size: 100%;
	padding-bottom: 87px;
}

.sec3_5box {
	margin-bottom: 76px;
}

.sec3_5txt1 {
	letter-spacing: 0.05em;
}

@media screen and (min-width: 769px) {
	.sec3_5box .txt {
		width: 470px;
	}
	.sec3_5 .sec3_point_lead {
		margin-top: 33px;
	}
}
@media screen and (max-width: 768px) {
	.sec3_5 {
		padding-bottom: 5vw;
	}
	.sec3_5box {
		margin-bottom: 10vw;
	}
	.sec3_5txt1 {
		padding: 4vw 0 6vw;
		letter-spacing: normal;
	}
	.sec3_5img2 {
		width: calc(100% + 6vw);
		margin-left: -3vw;
		max-width: initial;
	}
}
/* ------------------------------
    sec4
------------------------------ */
/*--sec4_1--*/
.sec4_1 {
	padding: 70px 0 102px;
}

.sec4_1img {
	margin-bottom: 40px;
}

.sec4_1box {
	padding: 28px 63px;
}

.sec4_1box .ttls {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-size: 2.2rem;
	margin-bottom: 20px;
}

.sec4_1box .ttls img {
	margin: 0 10px 0 0;
	width: 23px;
}

@media screen and (max-width: 768px) {
	.sec4_1 {
		padding: 9vw 0;
	}
	.sec4 .ttl_sec img {
		height: auto;
		width: 100%;
	}
	.sec4_1img {
		margin-bottom: 6vw;
	}
	.sec4_1box {
		padding: 3vw;
	}
	.sec4_1box .ttls {
		font-size: 4vw;
		margin-bottom: 4vw;
		line-height: 1.4;
		font-weight: 700;
	}
	.sec4_1box .ttls .txt {
		text-align: left;
	}
	.sec4_1box .ttls img {
		margin: 0 2vw 0 0;
		width: 6vw;
	}
	.sec4_1li ul {
		width: 60vw;
		margin: 0 auto;
	}
}
/*--sec4_2--*/
.sec4_2 {
	height: 819px;
	background: url(../img/sec4_2bg.png) center no-repeat;
	background-size: cover;
	position: relative;
	overflow: hidden;
	padding: 100px 0 60px;
}

.sec4_2:before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	top: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 47px 55.5px 0 55.5px;
	border-color: #fff transparent transparent transparent;
}

.sec4_2 p {
	font-size: 2.4rem;
}

.sec4_2 .txt1 {
	margin-bottom: 32px;
}

.sec4_2 .txt2 {
	margin-top: -46px;
	margin-bottom: 42px;
}

@media screen and (max-width: 768px) {
	.sec4_2 {
		height: auto;
		padding: 9vw 0 5vw;
	}
	.sec4_2:before {
		border-width: 4vw 5vw 0 5vw;
	}
	.sec4_2 p {
		font-size: 4vw;
	}
	.sec4_2 .txt1 {
		margin-bottom: 3vw;
	}
	.sec4_2 .txt2 {
		margin-top: -7vw;
		margin-bottom: 8vw;
	}
	.sec4_2img {
		width: 100vw;
		margin-left: -5vw;
		padding: 0 2.6%;
	}
}
/* ------------------------------
    sec5
------------------------------ */
/*--sec5--*/
.sec5 {
	padding: 70px 0 100px;
}

.sec5 .ttl_sec .txt2 {
	display: block;
	font-size: 2.4rem;
	margin-bottom: 0.5em;
}

@media screen and (max-width: 768px) {
	.sec5 {
		padding: 8vw 0 10vw;
	}
	.sec5 .ttl_sec .txt2 {
		display: block;
		font-size: 3.5vw;
		margin-bottom: 0.1em;
	}
}
/*--tab--*/
.tab_btn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin-bottom: 40px;
}

.tab_btn .btn {
	background: #094073;
	border-radius: 50px;
	-webkit-box-shadow: 0 4px #0B2E4F;
	        box-shadow: 0 4px #0B2E4F;
	line-height: 1;
	color: #fff;
	font-size: 1.7rem;
	width: 316px;
	height: 44px;
}

.tab_btn:after {
	display: block;
	content: "";
	width: 316px;
}

.tab_btn li:nth-of-type(n+4) {
	margin-top: 15px;
}

.tab_btn .btn:before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 6px;
	border-color: transparent transparent transparent #fff;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	right: 15px;
}

.tab_btn .btn.active {
	-webkit-transform: translate(0, 4px);
	        transform: translate(0, 4px);
	-webkit-box-shadow: none;
	        box-shadow: none;
	opacity: 0.7;
}

@media screen and (min-width: 769px) {
	.tab_btn .btn:hover {
		-webkit-transform: translate(0, 4px);
		        transform: translate(0, 4px);
		-webkit-box-shadow: none;
		        box-shadow: none;
		opacity: 0.7;
	}
}
@media screen and (max-width: 768px) {
	.tab_btn {
		margin-bottom: 3vw;
	}
	.tab_btn .btn {
		border-radius: 6vw;
		-webkit-box-shadow: 0 2px #0B2E4F;
		        box-shadow: 0 2px #0B2E4F;
		font-size: 2.6vw;
		width: 28vw;
		height: 10.8vw;
		font-weight: 400;
		text-align: center;
		line-height: 1.4;
	}
	.tab_btn:after {
		width: 28vw;
	}
	.tab_btn li:nth-of-type(n+4) {
		margin-top: 2vw;
	}
	.tab_btn .btn:before {
		border-width: 1vw 0 1vw 1vw;
		right: 2.6vw;
	}
	.tab_btn .btn.active {
		-webkit-transform: translate(0, 0);
		        transform: translate(0, 0);
		-webkit-box-shadow: 0 2px #0B2E4F;
		        box-shadow: 0 2px #0B2E4F;
	}
}
/*--.sec5_box--*/
.sec5_box {
	padding: 40px;
	border: 3px solid #094073;
	display: none;
}

.sec5_box.show {
	display: block;
}

.sec5_box .ttl {
	margin-bottom: 30px;
}

.sec5_box .ttl img {
	margin: 0;
}

.sec5_box .ttl .txt {
	border: 2px solid #094073;
	letter-spacing: normal;
}

.sec5_box .ttl .txt1 {
	font-size: 2.6rem;
}

.sec5_box .ttl .txt2 {
	font-size: 2rem;
}

.sec5_box .lead {
	text-align: center;
	font-size: 3rem;
	line-height: 1;
	margin-bottom: 30px;
}

.sec5_box .lead .txt_line:before, .sec5_box .lead .txt_line:after {
	background: #FF4031;
	width: 2px;
	height: 40px;
}

.sec5_box .lead .txt_line:before {
	-webkit-transform: translateY(10px) rotate(-26deg);
	        transform: translateY(10px) rotate(-26deg);
}

.sec5_box .lead .txt_line:after {
	-webkit-transform: translateY(10px) rotate(26deg);
	        transform: translateY(10px) rotate(26deg);
}

.sec5_box .ttls .txt1 {
	background: #094073;
	line-height: 1;
	text-align: center;
	font-size: 2rem;
	width: 156px;
	height: 48px;
	padding-right: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.sec5_box .ttls .txt2 {
	font-size: 2.4rem;
}

.sec5_box .ttls_txt {
	margin-bottom: 23px;
	letter-spacing: normal;
}

.sec5_box .ttls + .sec5_imgbox {
	margin-bottom: 23px;
}

.sec5_imgbox .caption {
	font-weight: 400;
	font-size: 1.4rem;
	margin-top: 0.3em;
	text-align: center;
}

.sec5_imgbox2 {
	margin-top: 40px;
}

.sec5_imgbox2 img {
	margin-bottom: 30px;
}

.sec5_imgbox2 .txtbox {
	border: 1px solid #6693CC;
}

.sec5_imgbox2 .txtbox + .txtbox {
	margin-top: 15px;
}

.sec5_imgbox2 .ttlss {
	text-align: center;
	color: #fff;
	background: #6693CC;
	line-height: 1;
	padding: 0.3em 0;
	font-size: 2rem;
}

.sec5_imgbox2 .txtbox p {
	text-align: center;
	padding: 1em 0;
	letter-spacing: normal;
}

@media screen and (min-width: 769px) {
	.sec5_box .ttl {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.sec5_box .ttl .txt {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		border-left: none;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		line-height: 1.2;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		padding-left: 18px;
	}
	.sec5_box .ttl .txt2 {
		margin-left: 22px;
	}
	.sec5_box .ttls {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		margin-bottom: 25px;
	}
	.sec5_box .ttls .txt1 {
		margin-right: 15px;
		position: relative;
	}
	.sec5_box .ttls .txt1:before, .sec5_box .ttls .txt1:after {
		content: "";
		display: block;
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		right: 0;
	}
	.sec5_box .ttls .txt1:before {
		bottom: 0;
		border-width: 0 0 24px 20px;
		border-color: transparent transparent #fff transparent;
	}
	.sec5_box .ttls .txt1:after {
		top: 0;
		border-width: 0 20px 24px 0;
		border-color: transparent #fff transparent transparent;
	}
	.sec5_imgbox .img, .sec5_imgbox2 .img {
		width: 433px;
	}
	.sec5_imgbox .ttls_txt {
		width: 460px;
	}
	.sec5_3img4 {
		margin-top: 20px;
	}
	.sec5_6imgbox .img:nth-child(1) {
		width: 378px;
	}
	.sec5_6imgbox .img:nth-child(2) {
		width: 490px;
	}
}
@media screen and (max-width: 768px) {
	.sec5_box {
		padding: 3vw;
		border-width: 2px;
	}
	.sec5_box .ttl {
		margin-bottom: 3.7vw;
	}
	.sec5_box .ttl img {
		margin: 0;
	}
	.sec5_box .ttl .txt {
		display: block;
		border-width: 1px;
		letter-spacing: normal;
		text-align: center;
		font-weight: 700;
		padding: 3.5vw 0;
	}
	.sec5_box .ttl .txt1 {
		display: block;
		font-size: 5vw;
		line-height: 1;
		margin-bottom: 2.4vw;
	}
	.sec5_box .ttl .txt2 {
		line-height: 1;
		display: block;
		font-size: 2.6vw;
	}
	.sec5_box .lead {
		font-size: 5vw;
		line-height: 1.27;
		margin-bottom: 4vw;
		font-weight: 700;
	}
	.sec5_box .lead .txt_line:before, .sec5_box .lead .txt_line:after {
		display: none;
	}
	.sec5_box .ttls {
		margin-bottom: 2.4vw;
	}
	.sec5_box .ttls .txt1 {
		font-size: 3.7vw;
		width: 100%;
		height: 8.2vw;
		padding-right: 0;
		margin-bottom: 2.4vw;
		letter-spacing: 0.05em;
	}
	.sec5_box .ttls .txt2 {
		display: block;
		font-size: 4.5vw;
		line-height: 1.4;
		text-align: center;
		font-weight: 700;
		letter-spacing: normal;
	}
	.sec5_box .ttls_txt {
		margin-bottom: 2.6vw;
		font-size: 3vw;
	}
	.sec5_box .ttls_txt .fw700 {
		font-weight: 700;
	}
	.sec5_box .ttls + .sec5_imgbox {
		margin-bottom: 2.6vw;
	}
	.sec5_imgbox .img + .img {
		margin-top: 3.7vw;
	}
	.sec5_imgbox .img + p, .sec5_imgbox p + .img {
		margin-top: 2.6vw;
	}
	.sec5_imgbox .caption {
		font-size: 2.9vw;
		margin-top: 0.2em;
		text-align: center;
	}
	.sec5_imgbox2 {
		margin-top: 3.7vw;
	}
	.sec5_imgbox2 img {
		margin-bottom: 4.6vw;
	}
	.sec5_imgbox2 .txtbox + .txtbox {
		margin-top: 2.5vw;
	}
	.sec5_imgbox2 .ttlss {
		padding: 0.4em 0 0.6em;
		font-size: 2.9vw;
	}
	.sec5_imgbox2 .txtbox p {
		font-size: 2.9vw;
		line-height: 1.5;
		text-align: center;
		padding: 0.6em 1em;
		letter-spacing: normal;
	}
	.sec5_imgbox2 .img + .img {
		margin-top: 7.4vw;
	}
	.sec5_6imgbox .caption {
		font-size: 2.9vw;
		margin-top: 0.2em;
		text-align: left;
	}
	.sec5_imgbox2 img.sec5_6img3 {
		margin: 10px 0;
	}
}
/* ------------------------------
    sec6
------------------------------ */
.sec6 {
	padding: 70px 0 100px;
}

.sec6_img1 {
	margin-bottom: 60px;
}

.sec6box {
	background: #fff;
	padding: 60px 40px 40px;
}

.sec6box + .sec6box {
	margin-top: 60px;
}

.sec6_1 {
	padding-top: 0;
}

.sec6_1 .ttl1 {
	width: calc(100% + 80px);
	margin-left: -40px;
	background: rgb(0, 133, 254);
	background: linear-gradient(50deg, rgb(0, 133, 254) 0%, rgb(71, 202, 254) 100%);
	font-size: 2.8rem;
	line-height: 1;
	padding: 0.6em;
	margin-bottom: 60px;
}

.sec6_img2 {
	margin-bottom: 50px;
}

.sec6lead {
	line-height: 2;
	font-size: 2.4rem;
	margin-bottom: 60px;
}

.sec6lead .txt_large {
	font-size: 3.3rem;
	line-height: 1.4;
	letter-spacing: 0.1em;
	padding: 0;
}

.sec6info {
	background: #F1F0F6;
	padding: 36px 40px;
}

.sec6_2 .ttl2 {
	font-size: 2.8rem;
	line-height: 1;
	margin-bottom: 60px;
}

.sec6_img3_pc {
	margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
	.sec6 {
		padding: 13vw 0;
	}
	.sec6 .ttl_sec {
		margin-bottom: 13vw;
	}
	.sec6_img1 {
		margin-bottom: 9.6vw;
	}
	.sec6box {
		padding: 6.6vw 3.7vw 3.4vw;
	}
	.sec6box + .sec6box {
		margin-top: 5.3vw;
	}
	.sec6_1 {
		padding-top: 0;
	}
	.sec6_1 .ttl1 {
		width: calc(100% + 7.4vw);
		margin-left: -3.7vw;
		font-size: 4vw;
		margin-bottom: 6vw;
	}
	.sec6_img2 {
		margin-bottom: 4vw;
	}
	.sec6lead {
		line-height: 2;
		font-size: 3.2vw;
		margin-bottom: 4vw;
		font-weight: 700;
		white-space: nowrap;
	}
	.sec6lead .txt_large {
		font-size: 4.4vw;
		line-height: 1.4;
		letter-spacing: normal;
		padding: 0;
	}
	.sec6info {
		padding: 3vw 4vw;
	}
	.sec6info p {
		line-height: 1.45;
		font-size: 2.65vw;
		font-weight: 700;
		letter-spacing: 0.05em;
	}
	.sec6_2 .ttl2 {
		font-weight: 700;
		font-size: 4vw;
		line-height: 1;
		margin-bottom: 6.6vw;
	}
	.sec6_img3_pc {
		margin-bottom: 5.3vw;
	}
}
/* ------------------------------
    sec7
------------------------------ */
.sec7 {
	padding: 100px 0 70px;
	background: url(../img/sec7_bg.png) bottom center no-repeat;
	background-size: 100%;
}

.sec7 .lead {
	line-height: 1;
	font-size: 2.4rem;
	margin-bottom: 1em;
}

.sec7li li {
	position: relative;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.sec7li li + li {
	margin-top: 23px;
	padding-top: 44px;
}

.sec7li li + li:before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 40px 46px 0 46px;
	border-color: #084073 transparent transparent transparent;
	left: 50%;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	top: 0;
}

.sec7li li .txt {
	letter-spacing: 0.1em;
}

.sec7li li .ttl {
	font-size: 2.4rem;
	line-height: 1;
	padding-bottom: 0.7em;
	border-bottom: 2px solid #094073;
	margin-bottom: 0.6em;
}

.sec7_link {
	display: inline-block;
	position: relative;
	text-decoration: underline;
	line-height: 1;
}

.sec7_link:after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 12px;
	border-color: transparent transparent transparent #FD4233;
	bottom: 0;
	right: 0;
}

.sec7_img6 {
	margin-top: -18px;
}

@media screen and (min-width: 769px) {
	.sec7li {
		width: 840px;
		margin: 0 auto;
	}
	.sec7li li + li:before {
		margin-left: 18px;
	}
	.sec7li li .img {
		margin-right: 40px;
	}
	.sec7li li .txt {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
}
@media screen and (max-width: 768px) {
	.sec7 {
		padding: 8vw 0 5vw;
	}
	.sec7 .lead {
		font-size: 3.7vw;
		margin-bottom: 8vw;
		font-weight: 700;
	}
	.sec7li {
		margin: 0 auto 6vw;
	}
	.sec7li {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}
	.sec7li li {
		width: 47%;
		position: relative;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.sec7li li + li {
		margin-top: 0;
		padding-top: 0;
	}
	.sec7li li + li:before {
		border-width: 5vw 0 5vw 4vw;
		border-color: transparent transparent transparent #084073;
		left: -3vw;
		top: 15vw;
	}
	.sec7li li:nth-of-type(n+3) {
		margin-top: 6vw;
	}
	.sec7li li:nth-of-type(2n+1):before {
		display: none;
	}
	.sec7li li .img {
		margin-bottom: 5vw;
	}
	.sec7li li .img img {
		margin-left: 0;
		width: 36vw;
	}
	.sec7li li .txt {
		letter-spacing: 0.1em;
	}
	.sec7li li .ttl {
		font-size: 4vw;
		padding-bottom: 0.7em;
		border-width: 1px;
		margin-bottom: 0.6em;
		font-weight: 700;
	}
	.sec7li li p {
		font-size: 3.2vw;
		line-height: 1.6;
		letter-spacing: normal;
	}
	.sec7_link {
		font-size: 3vw;
	}
	.sec7_link:after {
		border-width: 1.4vw 0 1.4vw 2.4vw;
	}
	.sec7_img6 {
		margin-top: 0;
		width: 95.2vw;
		margin-left: -2.4vw;
		max-width: initial;
	}
}
/* ------------------------------
    sec8
------------------------------ */
.sec8 {
	padding: 86px 0 100px;
}

.sec8 .lead {
	line-height: 1;
	font-size: 2.4rem;
	margin-bottom: 60px;
}

/*--qa_dl--*/
.qa_dl + .qa_dl {
	margin-top: 30px;
}

.qa_dl dt, .qa_dl dd {
	position: relative;
}

.qa_dl dt > .ico, .qa_dl dd > .ico {
	position: absolute;
	top: 15px;
	left: 20px;
	width: 18px;
}

.qa_dl dd > .ico {
	top: 24px;
}

.qa_dl dt {
	padding: 11px 13px 11px 55px;
	background: #094073;
	position: relative;
	font-size: 1.8rem;
	line-height: 1.4;
	letter-spacing: 0.05em;
}

.qa_dl dd {
	background: #fff;
	padding: 20px 20px 20px 55px;
}

.qa_dl table {
	width: 100%;
}

.qa_dl .imgbox .txt {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.qa_dl .imgbox_info {
	width: 380px;
	text-align: center;
	margin: 5px 0 0 auto;
	padding: 0.3em 0;
	font-weight: 500;
}

.qa_dl .imgbox_info .txt_smaller {
	font-size: 1.4rem;
}

.qa_dl dt.pullbtn {
	position: relative;
	cursor: pointer;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.qa_dl dt.pullbtn:before, .qa_dl dt.pullbtn:after {
	content: "";
	display: block;
	position: absolute;
	width: 22px;
	height: 4px;
	background: #fff;
	top: 50%;
	right: 20px;
}

.qa_dl dt.pullbtn:before {
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.qa_dl dt.pullbtn:after {
	-webkit-transform: translateY(-50%) rotate(90deg);
	        transform: translateY(-50%) rotate(90deg);
}

.qa_dl dt.pullbtn.active:after {
	display: none;
}

.qa_dl dt.pullbtn + dd {
	display: none;
}

.sec8_link {
	margin-top: 30px;
}

.sec8_link .btn1 {
	margin: 0 0 0 auto;
	background: #fff;
	color: #333;
	width: 280px;
}

.sec8_link .btn1:before {
	border-color: transparent transparent transparent #3AB7F0;
}

@media screen and (min-width: 769px) {
	.qa_dl .imgbox .img {
		margin-left: 30px;
	}
	.qa_dl dt.pullbtn:hover {
		opacity: 0.8;
	}
	.qa_dl table th {
		white-space: nowrap;
		width: 100px;
		padding-right: 1em;
	}
	.qa_dl .tbblock th,
	.qa_dl .tbblock td {
		display: block;
		width: 100%;
		letter-spacing: 0.07em;
		padding: 0;
	}
	.qa_dl .tbblock tr:not(:first-child) th {
		padding-top: 25px;
	}
	.qa_dl .tbblock td {
		font-weight: 400;
	}
}
@media screen and (max-width: 768px) {
	.sec8 {
		padding: 8vw 0;
	}
	.sec8 .lead {
		font-size: 3.7vw;
		font-weight: 500;
		margin-bottom: 8vw;
	}
	/*--qa_dl--*/
	.qa_dl + .qa_dl {
		margin-top: 2vw;
	}
	.qa_dl dt > .ico, .qa_dl dd > .ico {
		top: 2.7vw;
		left: 3vw;
		width: 4.5vw;
	}
	.qa_dl dd > .ico {
		top: 3.4vw;
	}
	.qa_dl dt {
		padding: 3vw 3vw 3vw 10vw;
		background: #094073;
		position: relative;
		font-size: 3.4vw;
		line-height: 1.4;
		letter-spacing: 0.05em;
	}
	.qa_dl dd {
		padding: 3vw 4vw 3vw 10vw;
	}
	.qa_dl table th, .qa_dl table td {
		width: 100%;
		display: block;
	}
	.qa_dl table td {
		padding-left: 1em;
	}
	.qa_dl .tbblock tr:not(:first-child) th {
		padding-top: 5vw;
	}
	.qa_dl .tbblock td {
		font-weight: 400;
	}
	.qa_dl .imgbox img {
		width: 100%;
	}
	.qa_dl .imgbox .txt {
		font-weight: 500;
	}
	.qa_dl .imgbox .txt + .img {
		margin-top: 3vw;
	}
	.qa_dl .imgbox_info {
		width: 100%;
		text-align: center;
		margin: 2vw 0 0 auto;
		padding: 1.6vw;
	}
	.qa_dl .imgbox_info .txt_smaller {
		font-size: 3.2vw;
	}
	.qa_dl dd .btn1 {
		margin-top: 2vw;
	}
	.qa_dl dt.pullbtn:before, .qa_dl dt.pullbtn:after {
		width: 3.4vw;
		height: 2px;
		right: 3vw;
	}
	.sec8_link {
		margin-top: 4vw;
	}
	.sec8_link .btn1 {
		width: 60%;
	}
}
/* ------------------------------
    sec9
------------------------------ */
.sec9 {
	padding: 90px 0 54px;
}

.sec9_tbl {
	margin: 0 auto 60px;
}

.sec9_tbl th, .sec9_tbl td {
	border: 1px solid #fff;
	font-size: 1.8rem;
	padding: 0.7em 40px;
	letter-spacing: 0.1em;
}

.sec9_tbl th {
	background: #094073;
	color: #fff;
	width: 275px;
}

.sec9_tbl td {
	background: #EDEDED;
	font-weight: 500;
	padding: 0.7em 20px 0.7em 30px;
}

.sec9_tbl tr:nth-of-type(even) td {
	background: #F5F5F5;
}

@media screen and (min-width: 769px) {
	.sec9_tbl {
		width: 813px;
	}
}
@media screen and (max-width: 768px) {
	.sec9 {
		padding: 8vw 0 3vw;
	}
	.sec9_tbl {
		margin: 0 auto 6vw;
		width: 90%;
	}
	.sec9_tbl th, .sec9_tbl td {
		width: 100%;
		display: block;
		font-size: 3.7vw;
		text-align: center;
	}
	.sec9_tbl th {
		padding: 0.1em 2vw;
	}
	.sec9_tbl td {
		padding: 1em 2vw;
	}
	.sec9_img {
		width: 92vw;
	}
}
/* ------------------------------
    sec10
------------------------------ */
.sec10 {
	padding: 75px 0 100px;
}

.sec10 .ttl_sec {
	margin-bottom: 66px;
}

.sec10_txt {
	text-align: center;
	font-size: 2.4rem;
	line-height: 2.2;
}

.sec10_txt .line {
	display: block;
	border-bottom: 2px dashed #fff;
}

@media screen and (min-width: 769px) {
	.sec10 .wrap {
		width: 666px;
	}
}
@media screen and (max-width: 768px) {
	.sec10 {
		padding: 8vw 0 12vw;
	}
	.sec10 .ttl_sec {
		margin-bottom: 7vw;
	}
	.sec10_txt {
		text-align: center;
		font-size: 3.6vw;
		white-space: nowrap;
		line-height: 2.2;
	}
	.sec10_txt .line {
		display: block;
		border-width: 1px;
	}
}
/* ----------------------------------------------------------------------------------------------------
*  contact_form
* --------------------------------------------------------------------------------------------------*/
.contact_form {
	padding: 77px 0 96px;
}

.form_txt1 {
	font-size: 2.4rem;
	line-height: 1;
	margin-bottom: 28px;
}

.form_txt2 {
	width: 750px;
	margin: 0 auto 40px;
	border: 2px solid #0089CE;
	color: #0089CE;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	line-height: 1.5;
	padding: 1em 0;
}

.form_txt2 a {
	text-decoration: underline;
}

.form_txt2 .ico {
	width: 46px;
	margin-right: 14px;
	margin-left: 0;
}

.form_tabbtn {
	border-bottom: 1px solid #F2F2F2;
	margin-bottom: 30px;
	padding-bottom: 20px;
	padding-right: 8px;
}

.form_tabbtn .form_tbl {
	width: auto;
	margin: 0 auto;
}

.radio_formselect {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.radio_formselect li + li {
	margin-left: 55px;
}

.form_content {
	/* display: none; */
}

.form_content.show {
	display: block;
}

.form_content0 {
	display: none;
}

.form_tbl label.error {
	font-size: 1.2rem;
	color: #ED1C24;
}

.input_num label.error {
	display: block;
}

@media screen and (min-width: 769px) {
	.contact_form .wrap {
		width: 900px;
	}
}
@media screen and (max-width: 768px) {
	.contact_form {
		padding: 8vw 0 13vw;
	}
	.form_txt1 {
		font-size: 3.7vw;
		line-height: 1.6;
		margin-bottom: 3vw;
	}
	.form_txt2 {
		width: 100%;
		margin: 0 auto 6vw;
		border-width: 1px;
		padding: 1.6vw 0;
		font-size: 3vw;
	}
	.form_txt2 .ico {
		width: 7.5vw;
		margin-right: 3vw;
		margin-left: 0;
	}
	.form_txt2 p {
		line-height: 1.5;
	}
	.form_tabbtn {
		margin-bottom: 6vw;
		padding-bottom: 4vw;
		padding-right: 0;
	}
	.form_tabbtn .form_tbl {
		width: auto;
		margin: 0 auto;
	}
	.form_tabbtn .form_tbl th {
		padding: 0 0 3vw;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		text-align: center;
	}
	.radio_formselect li + li {
		margin-left: 8vw;
	}
	.form_content {
		/* display: none; */
	}
	.form_content.show {
		display: block;
	}
	.form_content0 {
		display: none;
	}
}
/*--form_tbl--*/
.form_lead1 {
	font-size: 1.7rem;
	margin-bottom: 0.2em;
}

.form_lead2 {
	font-size: 1.4rem;
	margin-bottom: 2em;
}

.form_tbl {
	width: 100%;
}

.form_tbl th, .form_tbl td {
	font-size: 1.7rem;
}

.form_tbl th {
	width: 286px;
	padding: 14px 0 0 72px;
	position: relative;
	vertical-align: top;
}

.form_tbl td {
	padding: 10px 0;
	font-weight: 500;
}

.form_info {
	font-size: 1.2rem;
}

.form_tbl .ico_req {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 45px;
	height: 22px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: absolute;
	vertical-align: baseline;
	font-size: 1.4rem;
	color: #fff;
	background: #ED1C24;
	font-weight: 500;
	left: 18px;
	top: 20px;
}

.form_tbl input[type=text], .form_tbl input[type=tel], .form_tbl input[type=email], .form_tbl textarea {
	width: 100%;
	padding: 8px 1em;
	background: #f2f2f2;
}

.form_tbl input::-webkit-input-placeholder, .form_tbl textarea::-webkit-input-placeholder {
	color: #999999;
}

.form_tbl input::-moz-placeholder, .form_tbl textarea::-moz-placeholder {
	color: #999999;
}

.form_tbl input:-ms-input-placeholder, .form_tbl textarea:-ms-input-placeholder {
	color: #999999;
}

.form_tbl input::-ms-input-placeholder, .form_tbl textarea::-ms-input-placeholder {
	color: #999999;
}

.form_tbl input::placeholder, .form_tbl textarea::placeholder {
	color: #999999;
}

/* IE */
.form_tbl input:-ms-input-placeholder, .form_tbl textarea:-ms-input-placeholder {
	color: #999999;
}

/* Edge */
.form_tbl input::-ms-input-placeholder, .form_tbl textarea::-ms-input-placeholder {
	color: #999999;
}

.form_tbl textarea {
	resize: vertical;
	overflow: auto;
	height: 207px;
}

.selectwrap {
	position: relative;
	height: 100%;
	z-index: 1;
	background: #f2f2f2;
}

.selectwrap:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	width: 11px;
	height: 11px;
	right: 13px;
	top: 50%;
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	        transform: rotate(45deg) translate(-50%, -50%);
	border: 1px solid #000;
	border-left: none;
	border-top: none;
}

.selectwrap + .selectwrap {
	margin-top: 10px;
}

select {
	width: 100%;
	height: 100%;
	background: none;
	padding: 8px 1em;
	cursor: pointer;
}

input[type=radio] {
	visibility: hidden;
	width: 1px;
	padding: 0;
	position: absolute;
}

input[type=radio] + label {
	padding-left: 45px;
	position: relative;
	cursor: pointer;
	line-height: 1;
}

input[type=radio] + label::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	margin-top: 2px;
	left: 0;
	width: 30px;
	height: 30px;
	background: #F2F2F2;
	border-radius: 50%;
	top: 50%;
}

input[type=radio]:checked + label::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	margin-top: 2px;
	left: 5px;
	width: 20px;
	height: 20px;
	background: #333;
	border-radius: 50%;
}

.form_radioli {
	padding-bottom: 20px;
}

.form_radioli li + li {
	margin-top: 18px;
}

.form_radioli li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	/*	align-items: center;*/
}

.form_radioli p {
	width: 253px;
}

.form_radioli li div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.form_radioli li .radiobtn {
	width: 111px;
}

.input_numwrap {
	padding-right: 20px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.input_num .txt1 {
	margin-right: 0.5em;
}

.input_num .txt2 {
	margin-left: 0.5em;
}

.input_num input[type=text] {
	width: 104px;
}

.form_btn {
	margin-top: 45px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.form_btn .btn {
	width: 360px;
	height: 60px;
	font-size: 2rem;
	border-radius: 50px;
	line-height: 1;
	color: #fff;
}

.form_btn .btn_submit {
	-webkit-box-shadow: 0 4px #00A36D;
	        box-shadow: 0 4px #00A36D;
}

.form_btn .btn_back {
	background: #bbb;
	-webkit-box-shadow: 0 4px #999;
	        box-shadow: 0 4px #999;
}

@media screen and (min-width: 769px) {
	.form_btn {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-flow: row-reverse;
		        flex-flow: row-reverse;
	}
	.form_btn .btn:hover {
		-webkit-transform: translate(0, 2px);
		        transform: translate(0, 2px);
		-webkit-box-shadow: 0 2px #00A36D;
		        box-shadow: 0 2px #00A36D;
	}
	.form_btn .btn_back {
		width: 200px;
		margin-right: 30px;
	}
	.form_btn .btn_back:hover {
		-webkit-box-shadow: 0 2px #999;
		        box-shadow: 0 2px #999;
	}
	.selectwrap {
		width: 518px;
	}
}
@media screen and (max-width: 768px) {
	.form_lead1 {
		font-size: 3.7vw;
		margin-bottom: 0.2em;
	}
	.form_lead2 {
		font-size: 3vw;
		margin-bottom: 2em;
	}
	.form_tbl {
		width: 100%;
	}
	.form_tbl th, .form_tbl td {
		width: 100%;
		display: block;
		font-size: 3.7vw;
	}
	.form_tbl th {
		padding: 1vw 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		position: relative;
		vertical-align: top;
		font-weight: 700;
	}
	.form_tbl td {
		padding: 0 0 2vw;
		font-weight: 500;
		font-size: 3.6vw;
	}
	.form_info {
		font-size: 2.8vw;
		margin-top: 0.5em;
	}
	.form_tbl .ico_req {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 3em;
		height: 1.6em;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		position: relative;
		font-size: 2.9vw;
		font-weight: 500;
		left: 0;
		top: 0;
		margin-right: 0.5em;
		line-height: 1;
		padding-bottom: 0.2em;
	}
	.form_tbl input[type=text], .form_tbl input[type=tel], .form_tbl input[type=email], .form_tbl textarea {
		width: 100%;
		padding: 0.6em;
	}
	.form_tbl textarea {
		height: 207px;
	}
	.selectwrap:before {
		width: 2.6vw;
		height: 2.6vw;
		right: 2.8vw;
	}
	.selectwrap + .selectwrap {
		margin-top: 1.6vw;
	}
	select {
		width: 100%;
		height: 100%;
		background: none;
		padding: 0.6em 8.6vw 0.6em 0.6em;
		cursor: pointer;
	}
	input[type=radio] + label {
		padding-left: 8.5vw;
	}
	input[type=radio] + label::before {
		margin-top: 0.5vw;
		width: 7vw;
		height: 7vw;
	}
	input[type=radio]:checked + label::after {
		margin-top: 0.5vw;
		left: 1vw;
		width: 5vw;
		height: 5vw;
	}
	.form_radioli {
		padding-bottom: 5vw;
	}
	.form_radioli li + li {
		margin-top: 4vw;
	}
	.form_radioli p {
		padding-right: 0.5em;
		width: 45.8vw;
	}
	.form_radioli li div {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
	.form_radioli label.error {
		width: 100%;
		display: block;
		padding-top: 3vw;
	}
	.form_radioli li .radiobtn {
		width: 22vw;
	}
	.input_numwrap {
		padding-right: 0;
	}
	.input_num .txt1 {
		margin-right: 0.2em;
	}
	.input_num .txt2 {
		margin-left: 0.2em;
	}
	.input_num input[type=text] {
		width: 4em;
	}
	.form_btn {
		margin-top: 6vw;
	}
	.form_btn .btn {
		width: 80%;
		border-radius: 7vw;
		height: 12.5vw;
		font-size: 4.5vw;
	}
	.form_btn .btn_submit {
		-webkit-box-shadow: 0 3px #00A36D;
		        box-shadow: 0 3px #00A36D;
	}
	.form_btn .btn_back {
		height: 10vw;
		margin-top: 4vw;
		font-size: 4.2vw;
		-webkit-box-shadow: 0 3px #999;
		        box-shadow: 0 3px #999;
	}
}
/* ----------------------------------------------------------------------------------------------------
*  page_faq
* --------------------------------------------------------------------------------------------------*/
/* ------------------------------
    faq_list
------------------------------ */
.faq_list {
	margin-bottom: 80px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.faq_list .box {
	background: #fff;
}

.faq_list .box .ttl {
	background: #094073;
	color: #fff;
	text-align: center;
	line-height: 1;
	font-size: 2.4rem;
	padding: 0.75em;
}

.faq_list .box ul {
	padding: 30px 20px 36px 40px;
}

.faq_list .box li + li {
	margin-top: 0.75em;
}

.faq_list .box a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	letter-spacing: 0.02em;
	font-weight: 500;
}

.faq_list .box a .num {
	margin: 0.4em 0.7em 0 0;
	width: 32px;
}

.faq_list .box a .txt {
	text-decoration: underline;
}

@media screen and (min-width: 769px) {
	.faq_list .box {
		width: 470px;
	}
	.faq_list .box:nth-of-type(n+3) {
		margin-top: 60px;
	}
	.faq_list .box a:hover {
		opacity: 0.6;
	}
}
@media screen and (max-width: 768px) {
	.faq_list {
		margin-bottom: 13vw;
	}
	.faq_list .box .ttl {
		font-size: 3.4vw;
		padding: 0.4em;
	}
	.faq_list .box + .box {
		margin-top: 2vw;
	}
	.faq_list .box ul {
		padding: 3vw;
	}
	.faq_list .box li + li {
		margin-top: 0.75em;
	}
	.faq_list .box a {
		letter-spacing: normal;
		line-height: 1.6;
	}
	.faq_list .box a .num {
		margin: 0.4em 0.5em 0 0;
		width: 6vw;
	}
	.faq_list .box a .txt {
		text-decoration: underline;
	}
}
/* ------------------------------
    faq_blk
------------------------------ */
.faq_blk + .faq_blk {
	margin-top: 60px;
}

.faq_blk .ttl {
	line-height: 1;
	font-size: 3.4rem;
	margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
	.faq_blk + .faq_blk {
		margin-top: 10vw;
	}
	.faq_blk .ttl {
		font-size: 6vw;
		margin-bottom: 4vw;
	}
}
.btngr_faq {
	border-radius: 50px;
	-webkit-box-shadow: 0 4px #00a36d;
	        box-shadow: 0 4px #00a36d;
	font-size: 1.7rem;
	width: 250px;
	height: 44px;
	margin-top: 20px;
}

.btngr_faq .ico {
	width: 19px;
	height: 15px;
	margin-right: 8px;
}

@media screen and (min-width: 769px) {
	.btngr_faq:hover {
		-webkit-transform: translate(0, 2px);
		        transform: translate(0, 2px);
		-webkit-box-shadow: 0 2px #00a36d;
		        box-shadow: 0 2px #00a36d;
	}
}
@media screen and (max-width: 768px) {
	.btngr_faq {
		border-radius: 5vw;
		-webkit-box-shadow: 0 2px #00a36d;
		        box-shadow: 0 2px #00a36d;
		font-size: 3.4vw;
		width: 40vw;
		height: 8vw;
		margin-top: 2vw;
	}
	.btngr_faq .ico {
		width: 3.4vw;
		height: 3vw;
		margin-right: 1.6vw;
	}
}
/* ----------------------------------------------------------------------------------------------------
*  page_privacy
* --------------------------------------------------------------------------------------------------*/
.sec_privacy {
	padding: 70px 0 90px;
}

.privacy_lead, .privacy_li {
	letter-spacing: 0.05em;
}

.privacy_li {
	margin: 50px auto 0;
}

.privacy_li > li {
	padding-left: 1.3em !important;
	text-indent: -1.3em !important;
}

.privacy_li > li + li {
	margin-top: 30px;
}

.privacy_li .sub {
	padding-top: 8px;
}

.privacy_li .sub li + li {
	margin-top: 10px;
}

.privacy_li .sub > li {
	padding-left: 1.6em !important;
	text-indent: -1.6em !important;
}

@media screen and (min-width: 769px) {
	.privacy_lead {
		width: 780px;
		margin: 0 auto;
	}
	.privacy_li {
		width: 780px;
	}
}
@media screen and (max-width: 768px) {
	.sec_privacy {
		padding: 10vw 0;
	}
	.sec_privacy .ttl_sec img {
		width: 100%;
		height: auto;
	}
	.privacy_li {
		margin: 10vw auto 0;
	}
	.privacy_li > li + li {
		margin-top: 4vw;
	}
	.privacy_li .sub {
		padding-top: 0.5em;
	}
	.privacy_li .sub li + li {
		margin-top: 2.6vw;
	}
}
/* ----------------------------------------------------------------------------------------------------
*  page_troubleshooting
* --------------------------------------------------------------------------------------------------*/
.page_troubleshooting {
	padding-top: 0;
}

.page_troubleshooting header {
	position: relative !important;
}

.troubleshooting .pagettl {
	position: relative;
	height: 230px;
	background: url(../img/troubleshooting/pagettl_bg.png) no-repeat center/cover;
}

.troubleshooting .pagettl .wrap {
	height: 100%;
}

.troubleshooting .pagettl .ttl {
	font-weight: 700;
	color: #094073;
	font-size: 3.4rem;
	line-height: 1.25;
	letter-spacing: 0.05em;
}

.troubleshooting .pagettl .ttl span {
	display: inline-block;
	color: #fff;
	font-size: 2rem;
	background-color: #094073;
	padding: 0.35em 2em;
	margin-bottom: 0.5em;
}

.troubleshooting .qa_dl dt {
	padding: 11px 55px;
}

.troubleshooting .qa_dl dd {
	padding: 20px 30px 40px;
}

.troubleshooting .qa_dl dd .box + .box {
	padding-top: 33px;
	border-top: 1px solid #333333;
}

.troubleshooting .qa_dl dd .box:not(:last-of-type) {
	padding-bottom: 40px;
}

.troubleshooting .qa_dl dd p {
	font-weight: 500;
	line-height: 1.875;
}

.troubleshooting .qa_dl dd p:not(.txt_l) + p:not(.note),
.troubleshooting .qa_dl dd .img + p,
.troubleshooting .qa_dl dd div + p,
.troubleshooting .qa_dl dd p + div {
	margin-top: 1.5em;
}

.troubleshooting .qa_dl dd p + .img {
	margin-top: 10px;
}

.troubleshooting .qa_dl dd .img img {
	margin: 0;
}

.troubleshooting .qa_dl dd .bold {
	font-weight: 700;
}

.troubleshooting .qa_dl dd .txt_l {
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.6;
	margin-bottom: 0.5em;
}

.troubleshooting .qa_dl dd .txt_l + .flex_pc {
	margin-top: 0;
}

.troubleshooting .qa_dl dd p + .txt_l {
	margin-top: 1.5em;
}

.troubleshooting .qa_dl dd .txt_red {
	color: #ff4031;
}

.troubleshooting .qa_dl dd p.note {
	margin-right: -30px;
	margin-top: 95px;
}

.troubleshooting .qa_dl dd .meiryo {
	font-family: "メイリオ", "Meiryo", sans-serif;
}

.troubleshooting .qa_dl dd .indent {
	text-indent: -1em;
	padding-left: 1em;
}

.troubleshooting .qa_dl dd .indent2 {
	display: inline-block;
	text-indent: -2em;
	padding-left: 2em;
	margin-left: 0.5em;
}

.troubleshooting .qa_dl dd .link_txt {
	color: #3ab7f0;
}

.troubleshooting .qa_dl dd a:hover {
	opacity: 0.7;
}

.troubleshooting .qa_dl dd .txtbox {
	background-color: #ebf7ff;
	padding: 10px 60px 10px 30px;
}

.troubleshooting .qa_dl dd .txtbox + .txtbox {
	margin-top: 20px;
}

.troubleshooting .qa_dl dd .mt0 {
	margin-top: 0 !important;
}

.troubleshooting .troubleshooting_link {
	margin-top: 60px;
}

.troubleshooting .troubleshooting_link .btn1 {
	width: 632px;
	height: 82px;
	background-color: #094073;
	margin: 0 auto;
	-webkit-box-shadow: 0 4px #0b2e4f;
	        box-shadow: 0 4px #0b2e4f;
	font-size: 2.4rem;
}

.troubleshooting .troubleshooting_link .btn1::before {
	right: 30px;
}

.page_troubleshooting footer {
	padding: 15px 0;
}

@media screen and (min-width: 769px) {
	.troubleshooting .qa_dl .imgbox .img:first-child {
		margin-left: 0;
		margin-right: 30px;
	}
	.troubleshooting .qa_dl dd .flex_pc .w50 {
		width: 50%;
	}
	.troubleshooting .qa_dl dd .ml20 {
		margin-left: 20px !important;
	}
}
@media screen and (max-width: 768px) {
	.contents.troubleshooting .sec8 {
		min-height: calc(100vh - 50px - 10.5333vw - 38.2vw);
	}
	.troubleshooting .pagettl {
		padding: 8vw 0;
		height: auto;
		background: url(../img/troubleshooting/pagettl_bg.png) no-repeat center/cover;
	}
	.troubleshooting .pagettl .ttl {
		font-size: 5.4vw;
	}
	.troubleshooting .pagettl .ttl span {
		font-size: 3vw;
	}
	.troubleshooting .pagettl .img {
		width: 28vw;
		position: absolute;
		right: -3vw;
		bottom: -3vw;
	}
	.troubleshooting .qa_dl dt {
		padding: 3vw 10vw;
	}
	.troubleshooting .qa_dl dd {
		padding: 3vw 4vw 6vw;
	}
	.troubleshooting .qa_dl dd .box + .box {
		padding-top: 6vw;
		border-top: 1px solid #333333;
	}
	.troubleshooting .qa_dl dd .box:not(:last-of-type) {
		padding-bottom: 6vw;
	}
	.troubleshooting .qa_dl dd .flex_pc .img + .txt,
	.troubleshooting .qa_dl dd .flex_pc .txt + .img {
		margin-top: 3vw;
	}
	.troubleshooting .qa_dl dd p + .img {
		margin-top: 2vw;
	}
	.troubleshooting .qa_dl dd .txt_l {
		font-size: 3.6vw;
	}
	.troubleshooting .qa_dl dd p.note {
		margin-right: 0;
		margin-top: 12vw;
	}
	.troubleshooting .qa_dl dd .flex_pc .w50 + .w50 {
		margin-top: 6vw;
	}
	.troubleshooting .qa_dl dd .txtbox {
		padding: 2vw 4vw;
	}
	.troubleshooting .qa_dl dd .txtbox + .txtbox {
		margin-top: 4vw;
	}
	.troubleshooting .qa_dl dd .img img {
		margin-left: auto;
		margin-right: auto;
	}
	.troubleshooting .qa_dl dd .img img.img2 {
		width: 60%;
	}
	.troubleshooting .qa_dl dd .img img.img3 {
		width: 80%;
	}
	.troubleshooting .qa_dl dd .img img.img4 {
		width: 100%;
	}
	.troubleshooting .qa_dl dd .img img.img5 {
		width: 100%;
	}
	.troubleshooting .qa_dl dd .img img.img6 {
		width: 100%;
	}
	.troubleshooting .qa_dl dd .img img.img7 {
		width: 60%;
	}
	.troubleshooting .qa_dl dd .img img.img8 {
		width: 60%;
	}
	.troubleshooting .qa_dl dd .img img.img9 {
		width: 60%;
	}
	.troubleshooting .qa_dl dd .img img.img10 {
		width: 100%;
	}
	.troubleshooting .qa_dl dd .img img.img11 {
		width: 80%;
	}
	.troubleshooting .qa_dl dd .img img.img12 {
		width: 60%;
	}
	.troubleshooting .qa_dl dd .ml20 {
		margin-left: 3vw !important;
	}
	.troubleshooting .troubleshooting_link {
		margin-top: 12vw;
	}
	.troubleshooting .troubleshooting_link .btn1 {
		width: 100%;
		height: 14vw;
		-webkit-box-shadow: 0 2px #0b2e4f;
		        box-shadow: 0 2px #0b2e4f;
		font-size: 4.6vw;
		border-radius: 7vw;
	}
	.troubleshooting .troubleshooting_link .btn1::before {
		right: 6vw;
	}
	.page_troubleshooting footer {
		padding: 3vw 0;
	}
}
/* ----------------------------------------------------------------------------------------------------
*  pop up
* --------------------------------------------------------------------------------------------------*/
.page_bnr {
	padding-top: 0;
}

.page_bnr p {
	font-size: 1.6rem;
}

.page_bnr a {
	-webkit-transition: 0.3s;
	transition: 0.3s;
	display: block;
}

.page_bnr a:hover {
	opacity: 0.6;
}

.mt10 {
	margin-top: 10px;
}

/* ----------------------------------------------------------------------------------------------------
*  summer
* --------------------------------------------------------------------------------------------------*/
.summer {
	padding: 0 0 2em 0;
}

.summer_ttl {
	text-align: center;
	font-size: 2.4rem;
	background: #FFFF00;
	margin-bottom: 0.5em;
	padding: 0.5em 0;
}

.summer_txt {
	text-align: center;
}

@media screen and (max-width: 768px) {
	.summer {
		padding: 0 0 8vw 0;
	}
	.summer_ttl {
		font-size: 4.8vw;
	}
	.summer_txt {
		font-size: 3.4vw;
	}
}
/*-------- 夏季休業のお知らせ----------*/
.p-information__title {
	background-color: #FFFF00;
}
.p-information__title .title {
	padding: 0.2em 0;
	text-align: center;
	font-weight: bold;
	font-size: 2.6rem;
}
@media screen and (max-width: 768px) {
	.p-information__title .title {
		font-size: 4.6vw;
	}
}
.p-information__content {
	padding: 4rem 0;
}
@media screen and (max-width: 768px) {
	.p-information__content {
		padding: 4vw 0;
	}
}
.p-information__content .text {
	text-align: center;
	line-height: 2;
}