@charset "UTF-8";



/* ------------------------------------------

  global

------------------------------------------ */
* {
	margin: 0px;
	padding: 0px;
	}

html {
	font-size: 62.5%;
	height: 100%;

    -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
}

body {font-size: 10px; font-size: 1.0rem;}


body {
	text-align: center;

	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	font-family: 'Noto Sans JP', sans-serif !important;

	/* 長いURL改行対策 */
	word-break: break-all;
	}

/* img
-----------------------------------------------------------  */
img {
	padding: 0px;
	margin: 0px;
	border: none;
	vertical-align: bottom;
	display: block;
	max-width: 100%;
	max-height: 100%;
	}

/* text link
----------------------------------------------------------- */
a:link,
a:visited,
a:active {
	color: #ee7d18;
	text-decoration: underline;
	}

a:hover {
	color: #999999;
	text-decoration: underline;
	}



/* h
----------------------------------------------------------- */
h1,h2,h3,h4,h5,h6 {
	margin: 0px;
	padding: 0px;
	}

/* ul li
----------------------------------------------------------- */
li { list-style: none;}


/* em
----------------------------------------------------------- */
em {font-style: normal;}


/* bg_color
-----------------------------------------------------------  */
.bg_blue 								{ background-color: #5892cd;}

/* ft_color
-----------------------------------------------------------  */
.ft_color 								{ color: #568fcc;}
.ft_color_white 						{ color: #fff;}
.ft_color02 							{ color: #ee7d18;}


/* text-indent
----------------------------------------------------------- */
.xxx
										{ overflow: hidden; text-indent: 100%; white-space: nowrap;}


/* PC タブレット用スタイル */
@media (min-width: 761px) {

/* pc & sp
----------------------------------------------------------- */
.pc										{ }
.sp										{ display: none;}



/* flex
----------------------------------------------------------- */
.flex 									{ display: flex;}
.flex_center 							{ justify-content: center;}
.between 								{ justify-content: space-between;}
.reverse 								{ flex-direction: row-reverse;}
.wrap									{ flex-wrap: wrap;}



/* width
-----------------------------------------------------------  */
.inner 									{ margin: 0 auto; width: 1240px;}

.inner02
 										{ margin: 0 auto; width: 1120px;}
.checkList
 										{ margin: 0 auto; width: 720px;}



/* container
----------------------------------------------------------- */
#container {
	font-size: 17px; font-size: 1.7rem;
	line-height: 1.5;
	color: #333;
	letter-spacing: 0.05em;
	text-align: left;

	overflow: hidden;
	}



/* header
----------------------------------------------------------- */
.header 								{ padding: 10px 0 10px;}
.header p.logo a 						{ display: block; width: 350px; height: 60px;}


h1  									{ margin-bottom: 20px;}
.txt1_1,
.txt1_3									{ color: #ffd801; font-size: 74px; line-height: 1.5; display: inline-block; text-align: center;}
.txt1_2									{ color: #ffffff; font-size: 50px; position: relative; top: 40px; line-height: 1.2; letter-spacing: -0.02em; display: inline-block; text-align: center;}


.mVcheckBox 							{ margin: 0 auto 40px auto;}
.bg_checkbox input 						{ display: none;}

.bg_checkbox label 						{ cursor: pointer; margin: 0 10px;}

.bg_checkbox label.tool_btn01 input[type="checkbox"] + span 			{ background: url("../img/tool_btn01_off.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn02 input[type="checkbox"] + span 			{ background: url("../img/tool_btn02_off.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn03 input[type="checkbox"] + span 			{ background: url("../img/tool_btn03_off.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn04 input[type="checkbox"] + span 			{ background: url("../img/tool_btn04_off.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn05 input[type="checkbox"] + span 			{ background: url("../img/tool_btn05_off.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}


.bg_checkbox label.tool_btn01 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn01_on.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn02 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn02_on.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn03 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn03_on.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn04 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn04_on.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}
.bg_checkbox label.tool_btn05 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn05_on.png" ) no-repeat left top; background-size: 125px 125px; display: block; height: 125px; width: 125px;}

.mVbtnBox 								{ margin: 0 auto; padding-bottom: 40px; position: relative; left: -80px;}
.mVbtnBox .btn a						{ width: 680px; height: 90px; display: inline-block; background: #f28c00; color: #FFF; border-bottom: solid 3px #d15a09; border-radius: 45px; box-sizing: border-box; text-decoration: none; text-align: center; line-height: 90px;}
.mVbtnBox .btn a:before 				{ position: relative; top: -3px; content: url("../img/icon_arrow_r_white.png"); display: inline-block; width: 35px;}
.mVbtnBox .btn a span 					{ position: relative; top: -3px;}

.mVbtnBox p 							{ position: relative; top: 15px; left: -25px; color: #ffd801; text-align: center; line-height: 1.3;}



/* methodTitle
----------------------------------------------------------- */
.methodTitle 							{ padding: 30px 0;}
.methodTitle h2 						{ text-align: center; font-weight: normal; letter-spacing: 0.05em;}
.methodTitle h2:before 					{ position: relative; top: 10px; content: url("../img/slash_l_blue.png"); display: inline-block; width: 32px; height: 38px; margin-right: 10px;}
.methodTitle h2:after 					{ position: relative; top: 10px; content: url("../img/slash_r_blue.png"); display: inline-block; width: 32px; height: 38px; margin-left: 10px;}

.methodTitle img 						{ margin: 25px auto 0 auto; width: 45px;}



/* qaTitle
----------------------------------------------------------- */
.qaTitle 								{ text-align: center;}
.qaTitle .inner 						{ position: relative; padding: 30px 0;}
.qaTitle .inner:before 					{ position: absolute; top: -40px; right: -5px; content: ""; background: url("../img/illust01.png") no-repeat center center; display: inline-block; width: 246px; height: 190px; background-size: contain;}
.qaTitle h3 							{ font-weight: normal;}



/* qaBlock
----------------------------------------------------------- */
.qaBlock 								{}

.typeCont dt 							{ padding: 30px 0 10px 0; border-bottom: #568fcc 1px solid;}
.typeCont dt.q span 					{ width: 4.8%; display: inline-block;}
.typeCont dt.q p 						{ width: 95.2%; display: inline-block; font-weight: normal; position: relative; top: 15px; line-height: 1.3; padding: 0 0 20px 0;}

.typeCont dd.a span 					{ width: 4.8%; display: inline-block;}
.typeCont dd.a div 						{ display: inline-block; font-weight: normal; position: relative; top: 20px;}
.typeCont dd.link  						{ text-align: right;}
.typeCont dd.link a 					{ background: url("../img/arrow_b_orange.png") no-repeat left 9px; padding: 0 0 0 25px;}
.typeCont dd.link a:hover 				{ background: url("../img/arrow_b_gray.png") no-repeat left 9px; padding: 0 0 0 25px;}



/* typeTitle
----------------------------------------------------------- */
.typeTitle								{ padding: 60px 0 30px 0;}
.typeTitle h2 							{ text-align: center; font-weight: normal; letter-spacing: 0.05em;}

.typeTitle img 							{ margin: 25px auto 0 auto; width: 45px;}



/* typeBlock
----------------------------------------------------------- */
.typeBlock								{ padding: 15px 0 60px 0;}

.typeBlock .inner02 					{ position: relative;}
.typeBlock .inner02:before 				{ position: absolute; top: -55px; right: -65px; content: ""; background: url("../img/illust02.png") no-repeat center center; display: inline-block; width: 246px; height: 210px; background-size: contain;}

.typeBlock .titleBox 					{ margin: 0 auto 30px; position: relative; left: -80px;}
.typeBlock .titleBox span 				{ display: block; width: 120px; height: 120px; background-color: #fff; border-radius: 60px; line-height: 120px; text-align: center; margin-right: 40px;}
.typeBlock .titleBox h3 				{ font-weight: normal; position: relative; top: 25px;}

.typeBlock .typeBox 					{}

.typeBox h4								{ font-weight: normal; text-align: center; margin-bottom: 25px;}
.typeBox h4:before 						{ position: relative; top: 10px; content: url("../img/slash_l_white.png"); display: inline-block; width: 32px; height: 38px; margin-right: 15px;}
.typeBox h4:after 						{ position: relative; top: 10px; content: url("../img/slash_r_white.png"); display: inline-block; width: 32px; height: 38px; margin-left: 15px;}

.typeBox label 							{ cursor: pointer;}

.typeBox input 							{ display: none;}

.typeBox .typeBoxInner 					{ background-color: #fff; border: #568fcc 2px solid; border-radius: 10px; margin-bottom: 30px; box-sizing: border-box;
										padding: 20px 60px 20px 10px;}

.typeBoxInner .companyLogo 				{ width: 220px;}
.typeBoxInner .txt 						{ width: 798px; padding: 5px 20px 0; box-sizing: border-box;}
.typeBoxInner .checkBox 				{ width: 30px; padding-top: 55px; box-sizing: border-box;}

.typeBoxInner .txt h5 					{ font-weight: normal; padding: 0 0 5px;}
.typeBoxInner .txt p 					{ padding: 0 0 5px;}
.typeBoxInner .txt li 					{}

.typeBox input[type="checkbox"] ~ .typeBoxInner > .checkBox span 			{ background: url("../img/icon_check_empty.png") left top; background-size: 30px 30px; display: block; height: 30px; width: 30px;}
.typeBox input[type="checkbox"]:checked ~ .typeBoxInner > .checkBox span 	{ background: url("../img/icon_checked.png") no-repeat left top; background-size: 30px 30px; display: block; height: 30px; width: 30px;}



/* presentBlock
----------------------------------------------------------- */
.presentBlock							{ padding: 75px 0 0 0;}

.presentBlock h2 						{ font-weight: normal;}
.presentBlock h2 .txt01 span.circle 	{ display: block; width: 90px; height: 90px; background-color: #568fcc; border-radius: 45px; line-height: 90px; text-align: center; margin-right: 20px;}
.presentBlock h2 .txt01 span.txt 		{ font-weight: normal; position: relative; top: 20px; display: block;}

.presentBlock h2 .txt02 				{ text-align: center; position: relative; top: -20px; padding-bottom: 20px; display: block;}

.present_check							{ padding-top: 36px;}

.present_check label 					{ cursor: pointer;}

.present_check 							{ text-align: center;}
.present_check input 					{ display: none;}

.present_check input[type="checkbox"] + span 			{ background: url("../img/icon_check_empty.png") left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; margin-right: 24px; position: relative; top: 3px;}
.present_check input[type="checkbox"]:checked + span 	{ background: url("../img/icon_checked.png") no-repeat left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; margin-right: 24px; position: relative; top: 3px;}



/* formBlock
----------------------------------------------------------- */
.formBlock								{ padding: 80px 0 0 0; margin-bottom: 15px;}

.formBlock p.head 						{ padding-bottom: 20px; text-align: center;}

.formBlock p.link  						{ padding-bottom: 50px;}
.formBlock p.link a 					{ background: url("../img/arrow_r_orange.png") no-repeat left 10px; padding: 0 0 0 27px;}
.formBlock p.link a:hover 				{ background: url("../img/arrow_r_gray.png") no-repeat left 10px; padding: 0 0 0 27px;}


.formBlock table 						{ background: url("../img/line_dot_gray.png") repeat-x top; border-collapse: collapse; width: 100%; margin-bottom: 40px;}
.formBlock table tr 					{ background: url("../img/line_dot_gray.png") repeat-x left bottom;}
.formBlock table th 					{ width: 22%; padding: 0 0 0 25px; box-sizing: border-box; font-weight: normal;}
.formBlock table td 					{ width: 78%; padding: 17px 0 17px 17px; box-sizing: border-box;}

.formBlock table th span.name 			{ display: block; width: 80%;}
.formBlock table th span.need			{ display: block; width: 20%; background-color: #f00; color: #fff; text-align: center; padding: 4px 0 0 0; border-radius: 30px; line-height: 1.3;}

.formBlock table td span.txt 			{}

.formBlock table input					{ border: #bebebe 1px solid; border-radius: 5px; height: 34px; padding: 9px 16px; box-sizing: border-box;}
.formBlock table select					{ border: #bebebe 1px solid; border-radius: 5px; height: 34px; padding: 0 16px; box-sizing: border-box;}
.formBlock table input.w600 			{ width: 600px;}
.formBlock table input.w250 			{ width: 250px;}

.checkList 								{ padding-bottom: 20px;}
.checkList label 						{ cursor: pointer;}

.checkList								{ text-align: center;}
.checkList input 						{ display: none;}

.checkList input[type="checkbox"] + span 			{ background: url("../img/icon_check_empty.png") left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; margin-right: 18px; position: relative; top: 3px;}
.checkList input[type="checkbox"]:checked + span 	{ background: url("../img/icon_checked.png") no-repeat left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; margin-right: 18px; position: relative; top: 3px;}

.submitbtnBox 							{ margin: 0 auto; padding: 30px 0 100px 0;}
.submitbtnBox .btn						{ width: 680px; height: 90px; display: inline-block; background: #f28c00; color: #FFF; border-bottom: solid 3px #d15a09; border-top: 0; border-left: 0; border-right: 0; border-radius: 45px; box-sizing: border-box; text-decoration: none; text-align: center; line-height: 90px;}
.submitbtnBox .btn:before 				{ position: relative; top: -3px; left: -110px; content: url("../img/icon_arrow_r_white.png"); display: inline-block; width: 35px; }
.submitbtnBox .btn span 				{ position: relative; top: -3px;}



/* footerNav
----------------------------------------------------------- */
.footerNav								{}

.footerInner 							{ padding: 80px 0 87px 0;}
.footerInner ul 						{ padding: 20px 0 0 0;}
.footerInner ul li 						{ display: inline;}
.footerInner ul li:before 				{ content: "|"; padding: 0 20px; color: #fff;}
.footerInner ul li:nth-child(1):before 	{ display: none;}

.footerInner ul li a					{ text-decoration: none; color: #fff;}



/* ダウンロードはこちら
----------------------------------------------------------- */
.to_dl 									{ position: fixed; right: 10px; top: 605px; z-index: 9999;}



/* footer
----------------------------------------------------------- */
.footer	p.copy small					{ font-style: normal; text-align: center; padding: 40px 0;}



/* font
----------------------------------------------------------- */
.qaTitle h3,
.typeBlock .titleBox h3
										{ font-size: 42px;}
.methodTitle h2,
.typeCont dt.q span,
.typeCont dd.a span,
.typeTitle h2,
.typeBlock .typeBox h4,
.presentBlock h2 .txt02
										{ font-size: 36px;}
.presentBlock h2 .txt01 span.txt
										{ font-size: 32px;}
.typeBlock .titleBox span
										{ font-size: 28px;}
.mVbtnBox .btn a,
.typeCont dt.q p,
.typeBoxInner .txt h5,
.submitbtnBox .btn
										{ font-size: 25px;}
.mVbtnBox p
										{ font-size: 24px;}
.presentBlock h2 .txt01 span.circle,
.present_check,
.formBlock p.link,
.formBlock p.head,
.checkList
										{ font-size: 22px;}
.typeCont dd.link,
.typeBoxInner .txt p
										{ font-size: 20px;}
.typeBoxInner .txt li,
.formBlock table th span.name,
.footer	p.copy small
										{ font-size: 16px;}
.formBlock table td span.txt
										{ font-size: 14px;}
.formBlock table th span.need
										{ font-size: 11px;}
}


/* タブレット用スタイル */
@media (min-width: 761px) and (max-width: 1239px) {

/* width
-----------------------------------------------------------  */
.inner 									{ margin: 0 auto; width: 96%;}

.inner02
 										{ margin: 0 auto; width: 96%;}
.checkList
 										{ margin: 0 auto; width: 96%;}



/* header
----------------------------------------------------------- */
.mVbtnBox 								{ margin: 0 auto; padding-bottom: 40px; position: static !important; left: auto !important;}
.mVbtnBox .btn a						{ width: 100%; height: 90px; display: inline-block; background: #f28c00; color: #FFF; border-bottom: solid 3px #d15a09; border-radius: 45px; box-sizing: border-box; text-decoration: none; text-align: center; line-height: 90px; padding: 0 2rem;}

.mVbtnBox p 							{ display: block;}



/* qaTitle
----------------------------------------------------------- */
.qaTitle .inner:before 					{ position: absolute; top: -40px; right: -200px; content: ""; background: url("../img/illust01.png") no-repeat center center; display: inline-block; width: 246px; height: 190px; background-size: contain;}



/* presentBlock
----------------------------------------------------------- */
.presentBlock h2 .txt01 span.txt 		{ font-weight: normal; position: relative; top: 20px; display: block; line-height: 1.3;}

.presentBlock h2 .txt02 				{ text-align: center; position: relative; top: 0; padding-bottom: 20px;}



/* formBlock
----------------------------------------------------------- */
.formBlock table th 					{ display: block; width: 50%; padding: 0.8rem 0 0 0; box-sizing: border-box; font-weight: normal;}
.formBlock table td 					{ display: block; width: 100%; padding: 0.5rem 0 1rem 0; box-sizing: border-box;}

.formBlock table th .flex 				{ display: inline-block;}
.formBlock table th span.name 			{ display: block; width: 100%;}
.formBlock table th span.need			{ display: block; width: 70px; background-color: #f00; color: #fff; text-align: center; padding: 0.3rem 0; border-radius: 30px; line-height: 1.3;}



/* footerNav
----------------------------------------------------------- */
.footerNav								{}

.footerInner 							{ padding: 2rem 0 2rem 0; display: block;}
.footerInner .logo 						{ margin: 0 auto; width: 100px;}
.footerInner ul 						{ padding: 1rem 0 0 0; display: block; text-align: center;}
.footerInner ul li 						{ display: inline;}
.footerInner ul li:before 				{ content: "|"; padding: 0 0.6rem; color: #fff;}
.footerInner ul li:nth-child(1):before 	{ display: none;}

.footerInner ul li a					{ text-decoration: none; color: #fff;}



/* font
----------------------------------------------------------- */
.qaTitle h3
										{ font-size: 38px;}
.typeBlock .typeBox h4
										{ font-size: 30px;}
.presentBlock h2 .txt01 span.txt
										{ font-size: 26px;}
.mVbtnBox .btn a
										{ font-size: 20px;}
.formBlock table th span.name
										{ font-size: 18px;}
.formBlock table th span.need
										{ font-size: 14px;}

}



/* MV調整 */
@media (min-width: 761px) and (max-width: 1175px) {

/* pc & sp
----------------------------------------------------------- */
.mV h1 .pc								{ display: none;}
.mV h1 .sp								{ display: block;}



/* header
----------------------------------------------------------- */
h1 										{ margin-bottom: 20px;}
.txt2_1,
.txt2_4									{ color: #ffd801; font-size: 12.4rem; line-height: 1.2; display: inline-block; text-align: center;}
.txt2_2									{ color: #ffffff; font-size: 5.8rem; line-height: 1.2; letter-spacing: -0.02em; padding: 70px 0 0 5px; display: inline-block; text-align: center;}
.txt2_3 								{ color: #ffffff; font-size: 6.0rem; line-height: 1.2; letter-spacing: -0.02em; padding: 0 5px 0 0; display: inline-block; text-align: center;}



}



/* スマホ用スタイル */
@media screen and (max-width: 760px){

			/* pc & sp
			----------------------------------------------------------- */
			.pc										{ display: none;}
			.sp										{ }



			/* flex
			----------------------------------------------------------- */
			.flex 									{ display: flex;}
			.flex_center 							{ justify-content: center;}
			.between 								{ justify-content: space-between;}
			.reverse 								{ flex-direction: row-reverse;}
			.wrap									{ flex-wrap: wrap;}



			/* width
			-----------------------------------------------------------  */
			.inner 									{ margin: 0 auto; width: 96%;}

			.inner02
													{ margin: 0 auto; width: 96%;}
			.checkList
													{ margin: 0 auto; width: 96%;}



			/* container
			----------------------------------------------------------- */
			#container {
				font-size: 17px; font-size: 1.7rem;
				line-height: 1.5;
				color: #333;
				letter-spacing: 0.05em;
				text-align: left;

				overflow: hidden;
				}



			/* header
			----------------------------------------------------------- */
			.header 								{ padding: 10px 0 10px;}

			.header p.logo img 						{ width: 70%; height: 70%;}


			h1 										{ margin-bottom: 20px;}
			.txt2_1,
			.txt2_4									{ color: #ffd801; font-size: 4.5rem; line-height: 6.8rem; display: inline-block; text-align: center;}
			.txt2_2									{ color: #ffffff; font-size: 2rem; line-height: 8rem; letter-spacing: -0.02em; padding-tpp: 30px; display: inline-block; text-align: center;}
			.txt2_3 								{ color: #ffffff; font-size: 2.8rem; line-height: 1.2; letter-spacing: -0.02em; padding: 0 5px 0 0; display: inline-block; text-align: center;}

			.mVcheckBox 							{ margin: 0 auto 2rem auto;}
			.bg_checkbox input 						{ display: none;}

			.bg_checkbox label 						{ cursor: pointer; margin: 0 1%; width: 90%;}

			.bg_checkbox label.tool_btn01 input[type="checkbox"] + span				{ background: url("../img/tool_btn01_off.png") center center / cover no-repeat; overflow: hidden; /*text-indent: 100%; white-space: nowrap;*/ display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn02 input[type="checkbox"] + span 			{ background: url("../img/tool_btn02_off.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn03 input[type="checkbox"] + span 			{ background: url("../img/tool_btn03_off.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn04 input[type="checkbox"] + span 			{ background: url("../img/tool_btn04_off.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn05 input[type="checkbox"] + span 			{ background: url("../img/tool_btn05_off.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}


			.bg_checkbox label.tool_btn01 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn01_on.png") center center / cover no-repeat; overflow: hidden; /*text-indent: 100%; white-space: nowrap;*/ display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn02 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn02_on.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn03 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn03_on.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn04 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn04_on.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}
			.bg_checkbox label.tool_btn05 input[type="checkbox"]:checked + span 	{ background: url("../img/tool_btn05_on.png") center center / cover no-repeat; overflow: hidden; display:inline-block; width: 100%; height: 0; padding-top: calc(125 / 125 * 100%);}

			.mVbtnBox 								{ margin: 0 auto; padding-bottom: 2rem;}
			.mVbtnBox .btn 							{ width: 100%;}
			.mVbtnBox .btn a						{ width: 100%; display: inline-block; background: #f28c00; color: #FFF; border-bottom: solid 3px #d15a09; border-radius: 45px; box-sizing: border-box; text-decoration: none; text-align: center; padding: 1rem 0;}
			.mVbtnBox .btn a:before 				{ content: url("../img/icon_arrow_r_white.png"); display: inline-block; position: relative; top: -8px; left: -15px;}
			.mVbtnBox .btn a span 					{ line-height: 1.3; display: inline-block;}

			.mVbtnBox p 							{ display: none;}



			/* methodTitle
			----------------------------------------------------------- */
			.methodTitle 							{ padding: 30px 0;}
			.methodTitle h2 						{ text-align: center; font-weight: normal; letter-spacing: 0.05em; line-height: 1.3;}
			.methodTitle h2:before 					{ position: relative; top: 10px; content: url("../img/slash_l_blue_sp.png"); display: inline-block; width: 16px; height: 73px; margin-right: 15px;}
			.methodTitle h2:after 					{ position: relative; top: 10px; content: url("../img/slash_r_blue_sp.png"); display: inline-block; width: 16px; height: 73px; margin-left: 15px;}
			.methodTitle h2 span 					{ display: inline-block;}

			.methodTitle img 						{ margin: 25px auto 0 auto; width: 45px;}



			/* qaTitle
			----------------------------------------------------------- */
			.qaTitle 								{ text-align: center;}
			.qaTitle .inner 						{ position: relative; padding: 30px 0;}
			.qaTitle .inner:before 					{ position: absolute; top: 60px; right: -40px; content: ""; background: url("../img/illust01.png") no-repeat center center; display: inline-block; /*width: 246px; height: 190px;*/ width: 150px; height: 115px; background-size: contain;}
			.qaTitle h3 							{ font-weight: normal; padding-left: 1rem;}


			/* qaBlock
			----------------------------------------------------------- */
			.qaBlock 								{}

			.typeCont 								{ margin: 0 auto; width: 90%;}
			.typeCont dt 							{ padding: 30px 0 2rem 0; border-bottom: #568fcc 1px solid;}
			.typeCont dt.q span 					{ width: 10%; display: inline-block;}
			.typeCont dt.q p 						{ width: 90%; display: inline-block; font-weight: normal; position: relative; top: 1rem;}

			.typeCont dd.a span 					{ width: 10%; display: inline-block;}
			.typeCont dd.a div 						{ width: 90%; display: inline-block; font-weight: normal; position: relative; top: 1rem;}
			.typeCont dd.link  						{ text-align: center; padding: 2rem 0 0 0; position: relative; left: -1rem;}
			.typeCont dd.link a 					{ background: url("../img/arrow_b_orange.png") no-repeat left 9px; padding: 0 0 0 25px;}



			/* typeTitle
			----------------------------------------------------------- */
			.typeTitle								{ padding: 60px 0 30px 0;}
			.typeTitle h2 							{ text-align: center; font-weight: normal; letter-spacing: 0.05em;}

			.typeTitle img 							{ margin: 25px auto 0 auto; width: 45px;}



			/* typeBlock
			----------------------------------------------------------- */
			.typeBlock								{ padding: 1rem 0 3rem 0;}

			.typeBlock .inner02 					{ position: relative;}
			.typeBlock .inner02:before 				{ position: absolute; top: -90px; right: -30px; content: ""; background: url("../img/illust02.png") no-repeat center center; display: inline-block; /*width: 246px; height: 210px;*/ width: 150px; height: 128px; background-size: contain;}

			.typeBlock .titleBox 					{ margin: 0 auto 30px; display: block; position: relative;}
			.typeBlock .titleBox span 				{ display: block; margin: 0 auto; width: 90px; height: 90px; background-color: #fff; border-radius: 60px; line-height: 90px; text-align: center; z-index: 2;}
			.typeBlock .titleBox h3 				{ font-weight: normal; display: block; text-align: center;}

			.typeBlock .typeBox 					{}

			.typeBox h4								{ font-weight: normal; text-align: center; margin-bottom: 25px;}
			.typeBox h4:before 						{ position: relative; top: 10px; content: url("../img/slash_l_white_sp.png"); display: inline-block; width: 16px; height: 73px; margin-right: 15px;}
			.typeBox h4:after 						{ position: relative; top: 10px; content: url("../img/slash_r_white_sp.png"); display: inline-block; width: 16px; height: 73px; margin-left: 15px;}
			.typeBox h4 span 						{ display: inline-block;}

			.typeBox label 							{ cursor: pointer;}

			.typeBox input 							{ display: none;}

			.typeBox .typeBoxInner 					{ background-color: #fff; border: #568fcc 2px solid; border-radius: 10px; margin-bottom: 30px; box-sizing: border-box;
													  display: block;  padding: 1rem 2rem}

			.typeBoxInner .companyLogo 				{ width: 220px; margin: 0 auto; display: block;}
			.typeBoxInner .txt 						{ }
			.typeBoxInner .checkBox 				{ display: block; box-sizing: border-box; margin: 2rem auto 2rem; width: 30px;}

			.typeBoxInner .txt h5 					{ font-weight: normal; padding: 0 0 1rem; line-height: 1.3;}
			.typeBoxInner .txt p 					{ padding: 0 0 5px;}
			.typeBoxInner .txt li 					{}

			.typeBox input[type="checkbox"] ~ .typeBoxInner > .checkBox span 			{ background: url("../img/icon_check_empty.png") left top; background-size: 30px 30px; display: block; height: 30px; width: 30px;}
			.typeBox input[type="checkbox"]:checked ~ .typeBoxInner > .checkBox span 	{ background: url("../img/icon_checked.png") no-repeat left top; background-size: 30px 30px; display: block; height: 30px; width: 30px;}



			/* presentBlock
			----------------------------------------------------------- */
			.presentBlock							{ padding: 3rem 0 0 0;}

			.presentBlock h2 						{ font-weight: normal;}
			.presentBlock h2 .txt01 				{ display: block;}
			.presentBlock h2 .txt01 span.circle 	{ display: block; margin: 0 auto; width: 90px; height: 90px; background-color: #568fcc; border-radius: 45px; line-height: 90px; text-align: center;}
			.presentBlock h2 .txt01 span.txt 		{ font-weight: normal; display: block; padding: 0 0 1rem 0;}
			.presentBlock h2 .txt01 span.txt.pc 	{ display: none;}
			.presentBlock h2 .txt01 span.txt.sp 	{ text-align: center;}

			.presentBlock h2 .txt02 				{ text-align: center;}

			.img_present 							{ display: block;}

			.present_check							{ padding-top: 36px;}

			.present_check label 					{ cursor: pointer;}

			.present_check 							{ text-align: center;}
			.present_check input 					{ display: none;}

			.present_check span						{ width: 15%;}
			.present_check p						{ width: 85%; text-align: left; padding: 0 0 0 1rem;}

			.present_check input[type="checkbox"] + span 			{ background: url("../img/icon_check_empty.png") left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; position: relative; top: 3px;}
			.present_check input[type="checkbox"]:checked + span 	{ background: url("../img/icon_checked.png") no-repeat left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; position: relative; top: 3px;}



			/* formBlock
			----------------------------------------------------------- */
			.formBlock								{ padding: 4rem 0 0 0; margin-bottom: 1.5rem;}

			.formBlock p.head 						{ padding-bottom: 2rem; text-align: center;}

			.formBlock p.link  						{ padding-bottom: 4rem;}
			.formBlock p.link:before				{ content: url("../img/arrow_r_orange.png"); width: 12px; height: 20px; margin-right: 15px; position: relative; top: 3px;}


			.formBlock table 						{ background: url("../img/line_dot_gray.png") repeat-x top; border-collapse: collapse; width: 90%; margin: 0 auto 3rem auto;}
			.formBlock table tr 					{ background: url("../img/line_dot_gray.png") repeat-x left bottom;}
			.formBlock table th 					{ display: block; padding: 0.8rem 0 0 0; box-sizing: border-box; font-weight: normal;}
			.formBlock table td 					{ display: block; padding: 0.5rem 0 1rem 0; box-sizing: border-box;}

			.formBlock table th .flex 				{ display: inline-block;}
			.formBlock table th span.name 			{ display: block;}
			.formBlock table th span.need			{ display: block; width: 70px; background-color: #f00; color: #fff; text-align: center; padding: 0.3rem 0; border-radius: 30px; line-height: 1.3;}

			.formBlock table td span.txt 			{}

			.formBlock table input					{ border: #bebebe 1px solid; border-radius: 5px; height: 34px; padding: 9px 16px; box-sizing: border-box;}
			.formBlock table select					{ border: #bebebe 1px solid; border-radius: 5px; height: 34px; padding: 0 16px; box-sizing: border-box;}
			.formBlock table input.w600 			{ width: 80%;}
			.formBlock table input.w250 			{ width: 30%;}

			.checkList 								{ padding-bottom: 20px;}
			.checkList label 						{ cursor: pointer;}

			.checkList								{ }
			.checkList input 						{ display: none;}

			.checkList span							{ width: 15%;}
			.checkList p							{ width: 85%; text-align: left; padding: 0 0 0 1rem;}

			.checkList input[type="checkbox"] + span 			{ background: url("../img/icon_check_empty.png") left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; position: relative; top: 3px;}
			.checkList input[type="checkbox"]:checked + span 	{ background: url("../img/icon_checked.png") no-repeat left top; background-size: 30px 30px; display: block; height: 30px; width: 30px; position: relative; top: 3px;}

			.submitbtnBox 							{ margin: 0 auto; padding: 2rem 0 3rem 0;}
			.submitbtnBox .btn						{ width: 100%; height: 90px; display: inline-block; background: #f28c00; color: #FFF; border-bottom: solid 3px #d15a09; border-top: 0; border-left: 0; border-right: 0; border-radius: 45px; box-sizing: border-box; text-decoration: none; text-align: center; line-height: 90px;}
			.submitbtnBox .btn:before 				{ content: url("../img/icon_arrow_r_white.png"); display: inline-block; width: 35px; position: relative; top: 0;}
			.submitbtnBox .btn span 				{ position: relative; top: -3px;}



			/* footerNav
			----------------------------------------------------------- */
			.footerNav								{}

			.footerInner 							{ padding: 2rem 0 2rem 0; display: block;}
			.footerInner .logo 						{ margin: 0 auto; width: 100px;}
			.footerInner ul 						{ padding: 1rem 0 0 0; display: block; text-align: center;}
			.footerInner ul li 						{ display: inline;}
			.footerInner ul li:before 				{ content: "|"; padding: 0 0.6rem; color: #fff;}
			.footerInner ul li:nth-child(1):before 	{ display: none;}

			.footerInner ul li a					{ text-decoration: none; color: #fff;}



			/* ダウンロードはこちら
			----------------------------------------------------------- */
			.to_dl 									{ display: none !important;}



			/* footer
			----------------------------------------------------------- */
			.footer	p.copy small					{ font-style: normal; text-align: center; padding: 2rem 0;}



			/* font
			----------------------------------------------------------- */
			.qaTitle h3,
			.typeBlock .titleBox h3
													{ font-size: 2.6rem;}
			.methodTitle h2,
			.typeCont dt.q span,
			.typeCont dd.a span,
			.typeTitle h2,
			.presentBlock h2 .txt02
													{ font-size: 2.6rem;}
			.typeBlock .typeBox h4
													{ font-size: 2.2rem;}

			.presentBlock h2 .txt01 span.txt
													{ font-size: 1.8rem;}
			.typeBlock .titleBox span
													{ font-size: 2.2rem;}
			.mVbtnBox .btn a,
			.typeCont dt.q p
													{ font-size: 1.8rem;}
			.submitbtnBox .btn
													{ font-size: 2.2rem;}
			.typeBoxInner .txt h5
													{ font-size: 2.0rem;}
			.mVbtnBox .btn span
													{ font-size: 1.8rem;}
			.presentBlock h2 .txt01 span.circle,
			.present_check,
			.formBlock p.link,
			.formBlock p.head,
			.checkList
													{ font-size: 1.8rem;}
			.typeCont dd.link,
			.typeBoxInner .txt p
													{ font-size: 1.8rem;}
			.formBlock table th span.name
													{ font-size: 1.6rem;}
			.typeBoxInner .txt li
													{ font-size: 1.4rem;}

			.formBlock table td span.txt
													{ font-size: 1.4rem;}
			.formBlock table th span.need
													{ font-size: 1.2rem;}
			.footerInner ul li,
			.footer	p.copy small
													{ font-size: 1.2rem;}
            /* お役立ち資料
            ----------------------------------------------------------- */
            #whitepaper li                          {width: 50%;}

}
