@charset "UTF-8";

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

/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */
html { box-sizing: border-box; -webkit-text-size-adjust: 100%; word-break: normal; -moz-tab-size: 4; tab-size: 4; } *,::before,::after { background-repeat: no-repeat; box-sizing: inherit; } ::before,::after { text-decoration: inherit; vertical-align: inherit; } * { padding: 0; margin: 0; } hr { overflow: visible; height: 0; color: inherit; } details,main { display: block; } summary { display: list-item; } small { font-size: 80%; } [hidden] { display: none; } abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; } a { background-color: transparent; } a:active,a:hover { outline-width: 0; } code,kbd,pre,samp { font-family: monospace, monospace; } pre { font-size: 1em; } b,strong { font-weight: bolder; } sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } table { border-color: inherit; text-indent: 0; } input { border-radius: 0; } [disabled] { cursor: default; } [type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button { height: auto; } [type='search'] { -webkit-appearance: textfield; outline-offset: -2px; } [type='search']::-webkit-search-decoration { -webkit-appearance: none; } textarea { overflow: auto; resize: vertical; } button,input,optgroup,select,textarea { font: inherit; } optgroup { font-weight: bold; } button { overflow: visible; } button,select { text-transform: none; } button,[type='button'],[type='reset'],[type='submit'],[role='button'] { cursor: pointer; color: inherit; } button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner { border-style: none; padding: 0; } button:-moz-focusring,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner { outline: 1px dotted ButtonText; } button,html [type='button'],[type='reset'],[type='submit'] { -webkit-appearance: button; } button,input,select,textarea { background-color: transparent; border-style: none; } a:focus,button:focus,input:focus,select:focus,textarea:focus { outline-width: 0; } select { -moz-appearance: none; -webkit-appearance: none; } select::-ms-expand { display: none; } select::-ms-value { color: currentColor; } legend { border: 0; color: inherit; display: table; max-width: 100%; white-space: normal; } ::-webkit-file-upload-button { -webkit-appearance: button; color: inherit; font: inherit; } img { border-style: none; } progress { vertical-align: baseline; } [aria-busy='true'] { cursor: progress; } [aria-controls] { cursor: pointer; } [aria-disabled='true'] { cursor: default; }


/*====================================

	0. General

====================================*/
html { font-size: 62.5%; }
body { position: relative; background: #fff; color: #383e43; font-size: 1.0rem; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; }
img { vertical-align: bottom; max-width: 100%; height: auto; }
a { color: #1c59d5; text-decoration: none; cursor: pointer; }
	a:hover { opacity: 0.8; }
input[type=submit] { cursor: pointer; }
ul,
ol { list-style: none; }

@media (min-width: 668px) {
	.spOnly { display: none !important; }
	div.inner { display: block; margin: 0 auto; width: 1160px; position: relative; }
	#page-top { position: fixed; right: 30px; bottom: 30px; z-index: 3; }
	#page-top a { display: block; width: 70px; height: 70px; background: url("/assets/image/icon_pagetop.png") no-repeat 0 0; text-align: center; text-indent: -9999px; border-radius: 50%; box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.2); }
}
@media (max-width: 667px) {
	.pcOnly { display: none !important; }
	#page-top { position: fixed; right: 5vw; bottom: 5vw; z-index: 3; }
	#page-top a { display: block; width: 12vw; height: 12vw; background: url("/assets/image/icon_pagetop.png") no-repeat 50% 50% / 12vw auto; text-align: center; text-indent: -9999px; border-radius: 50%; box-shadow: 0 1vw 1vw 0 rgba(0, 0, 0, 0.2); }
}


/*====================================

	1. Header

====================================*/
@media (min-width: 668px) {
	header { position: relative; min-width: 1000px; }
	header h1 { width: 1000px; margin: 35px auto; }
	header h1 img { width: 508px; }
	header .fp { position: absolute; top: 0; left: calc(50% + 190px); width: 310px; display: flex; }
	header nav { background: #f6f7f7; padding: 12px 0; position: relative; }
	header nav .cmnNav { width: 1000px; margin: auto; position: relative; display: flex; font-size: 1.6rem; font-weight: 500; line-height: 1.2; }
	header nav .cmnNav::before { position: absolute; content: ""; top: 0; bottom: 0; left: 0; width: 1px; height: 22px; margin: auto; background: #606060; }
	header nav .cmnNav li { width: 250px; text-align: center; position: relative; display: flex; align-items: center; justify-content: center; }
	header nav .cmnNav li::after { position: absolute; content: ""; top: 0; bottom: 0; right: 0; width: 1px; height: 22px; margin: auto; background: #606060; }
	header nav .cmnNav a { color: #445f84; }
	header nav .subNav { position: absolute; top: -65px; left: 50%; width: 500px; display: flex; justify-content: flex-end; }
	header nav .subNav li { width: 135px; margin-left: 13px; }
}
@media (max-width: 667px) {
	header { width: 100%; height: 22.3vw; padding: 2vw 6vw 0; position: relative; }
	header::before { position: absolute; content: ""; top: 0; left: -20vw; width: 30vw; height: 30vw; background: url("../image/bg_title02.png") no-repeat 0 0 / 30vw auto; }
	header h1 { width: 53vw; float: left; position: relative; z-index: 20; }
	/*header .fp{ display: none;}*/
	header #gnav { position: absolute; top: 0; right: 0; width: 20vw; }
	#panel-btn { position: relative; z-index: 1100; float: right; display: inline-block; width: 11vw; height: 11vw; text-indent: -9999px; margin: 5vw 5vw 0 0;  background: #4283de; }
	#panel-btn:after { position: absolute; content: ""; width: 15vw; height: 1.7vw; text-align: center; top: 10vw; left: 0; right: 0; margin: auto; background: url("../image/txt_menu_w.svg") no-repeat 50% 0; }
	#panel-btn-icon { position: absolute; top: 5.4vw; left: 0; right: 0; display: block; margin: auto; width: 7vw; height: 0.3vw; background: #fff; transition: .2s; }
	#panel-btn-icon:before,
	#panel-btn-icon:after { position: absolute; top: 50%; left: 0; display: block; width: 7vw; height: 0.3vw; content: ""; transition: .3s; background: #fff; } 
	#panel-btn-icon:before { margin-top: -2vw; }
	#panel-btn-icon:after { margin-top: 2vw; } 
	#panel-btn-icon.close { background: transparent; }
	#panel-btn-icon.close:before,
	#panel-btn-icon.close:after { margin-top: 0; } 
	#panel-btn-icon.close:before { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
	#panel-btn-icon.close:after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
	header .gnav { position: absolute; top: 0; right: 0; z-index: 1000; padding: 25vw 12vw 15vw; width: 100vw; height: auto; background: #fff; overflow: scroll; display: none; box-shadow: 0 0.8vw 0.8vw 0 rgba(4, 0, 0, 0.23); }
	header nav .cmnNav { font-size: 5vw; margin-bottom: 5vw; }
	header nav .cmnNav li { border-top: 0.2vw solid #3f3f3f; }
	header nav .cmnNav li a { display: block; padding: 3vw 0; color: #445f84; }
	header nav .subNav { font-size: 4.6vw; }
	header nav .subNav li { margin-bottom: 5vw; }
}


/*====================================

	2. Footer

====================================*/
@media (min-width: 668px) {
	footer { padding: 60px 0; background: #f4f5f5; border-top: 1px solid #000; font-size: 1.4rem; }
	footer > div { display: flex; justify-content: space-between; flex-direction: row-reverse; width: 1000px; margin: 0 auto; }
	footer .blockL { width: 360px; }
	footer .blockR { width: 540px; }
	footer h1 { margin-bottom: 10px; padding-bottom: 25px; border-bottom: 1px solid #000; }
	footer dt { float: left; padding-top: 10px; }
	footer dd { padding: 10px 0 0 120px; }
	footer .subtxt {margin:0 0 10px 0; color:#0B53A4;}
	footer .subNav { display: flex; margin-bottom: 25px; }
	footer .subNav li { width: 165px; margin-right: 13px; }
	footer .serviceNav { display: flex; flex-wrap: wrap; margin-bottom: 15px; }
	footer .serviceNav li { position: relative; padding: 0 8px; margin-bottom: 10px; }
	footer .serviceNav li::after { position: absolute; content: ""; width: 1px; height: 14px; background: #575757; top: 0; bottom: 0; left: 0; margin: auto; }
	footer p { font-size: 1.2rem; }
}
@media (max-width: 667px) {
	footer { padding: 7vw 6vw; background: #f4f5f5; border-top: 0.2vw solid #000; font-size: 2.5vw; }
	footer .blockL { border-top: 0.2vw solid #000; padding-top: 5vw; margin-top: 5vw; }
	footer h1 { margin-bottom: 2vw; }
	footer dt { float: left; padding-top: 1vw; }
	footer dd { padding: 1vw 0 0 24vw; }
	footer .subtxt {margin-bottom: 2vw; color:#0B53A4; font-size: 3.1vw;}
	footer .subNav { display: flex; justify-content: space-between; margin-bottom: 4vw; }
	footer .subNav li { width: 26vw; font-size: 3.1vw; }
	footer .serviceNav { display: flex; flex-wrap: wrap; }
	footer .serviceNav li { position: relative; padding: 0 2vw; margin-bottom: 2vw; }
	footer .serviceNav li::after { position: absolute; content: ""; width: 0.2vw; height: 2vw; background: #575757; top: 0; bottom: 0; left: 0; margin: auto; }
}


/*====================================

	3. Main

====================================*/
@media (min-width: 668px) {
	main { position: relative; font-size: 1.8rem; line-height: 1.6; background: url("../image/bg02.png") repeat-y 50% 285px; }
	main hr { height: 1px; border: none; border-top: 1px solid #000; margin: 1.5em 0; }
	main hr.mW { margin: 90px 0; }
}
@media (max-width: 667px) {
	main { position: relative; font-size: 4vw; line-height: 1.6; background: url("../image/bg02.png") repeat-y 50% 50vw / 90% auto; }
	main hr { height: 0.2vw; border: none; border-top: 0.2vw solid #000; margin: 1.5em 0; }
	main hr.mW { margin: 3em 0; }
}

/*-----------------------------------------------------
Text
------------------------------------------------------*/
main small { font-size: 80% !important; display: block; line-height: 1.4; }
.komeTxt { padding-left: 1em; text-indent: -1em; }
.kakkoNumTxt { padding-left: 3.5em; text-indent: -3.5em; }
.kakkokomeTxt { padding-left: 3em; text-indent: -3em; }
.taR { text-align: right !important; }
.taL { text-align: left !important; }
.taC { text-align: center !important; }
.fwB { font-weight: 700; }
.fwM { font-weight: 500; }
.fwN { font-weight: 400; }
.fsS { font-size: 90% !important; }
.fsM { font-size: 115% !important; }
.fsL { font-size: 125% !important; }
.fsLL { font-size: 135% !important; }
.fcWhite { color: #fff; }
.fcRed { color: #d11b1b; }
.fcBlue { color: #4283de; }
.fcYellow { color: #fffc18; }
.fcPurple { color: #ba47c4; }
.markerYellow { background: linear-gradient(transparent 60%, #fffc18 60%); }
.markerYellowThin { background: linear-gradient(transparent 94%, #fffc18 94%); }
.mb05em { margin-bottom: 0.5em !important; }
.mb1em { margin-bottom: 1em !important; }
.mb2em { margin-bottom: 2em !important; }
.mb3em { margin-bottom: 3em !important; }
.mb4em { margin-bottom: 4em !important; }
.mb5em { margin-bottom: 5em !important; }

@media (max-width: 667px) {
	.taRsp { text-align: right !important; }
	.taLsp { text-align: left !important; }
	.taCsp { text-align: center !important; }
	.fsL { font-size: 125%; }
}

/*-----------------------------------------------------
List
------------------------------------------------------*/
main ol { margin: 0; }
main ul { margin: 0; }
.komeList > li { padding-left: 1em; text-indent: -1em; }
.komeNumList > li { padding-left: 2em; text-indent: -2em; }
.kakkoList > li { padding-left: 2.5em; text-indent: -2.5em; }
.kakkoNumList > li { padding-left: 3.5em; text-indent: -3.5em; }
.discList { overflow: hidden; }
.discList > li { padding-left: 1em; position: relative; }
.discList > li:before { content: "・"; position: absolute; left: 0; top: 0; }


/*-----------------------------------------------------
Btn
------------------------------------------------------*/
.btn { display: inline-block; position: relative; text-align: center; line-height: 1.2 !important; text-decoration: none; }
.icon { display: inline-block; position: relative; line-height: 1 !important; text-decoration: none; }
.inline { display: inline; position: relative; text-decoration: none; }


@media (min-width: 668px) {
	.btnLine { margin: 60px auto 0; width: 1000px; display: flex; justify-content: center; }
	.btnLine >* { margin: 0 20px; }
	.btn.btnCompensation { color: #fff; text-align: center; font-size: 1.4rem; background: #6eb1bd; padding: 1em; display: block; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.23); }
	.btn.btnRequest { color: #fff; text-align: center; font-size: 1.4rem; background: #4c73ca; padding: 1em; display: block; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.23); }
	.btn.btnCotact { color: #fff; text-align: center; font-size: 1.4rem; background: #c389c7; padding: 1em; display: block; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.23); }
	.btn.btnBlueNext { color: #fff; text-align: center; font-size: 2.4rem; background: #4283de; padding: 25px 60px; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.52); min-width: 300px; display: inline-flex; justify-content: center; align-items: center; }
	.btn.btnBlueNext::after { position: absolute; content: ""; top: 0; bottom: 0; right: 20px; margin: auto; width: 22px; height: 22px; border: 2px solid; border-color: #fff #fff transparent transparent; transform: rotate(45deg); }
	.btn.btnGrayBack { color: #fff; text-align: center; font-size: 2.4rem; background: #999; padding: 25px 0; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.52); width: 300px; }
	.btn.btnGrayBack::after { position: absolute; content: ""; top: 0; bottom: 0; left: 20px; margin: auto; width: 22px; height: 22px; border: 2px solid; border-color: #fff #fff transparent transparent; transform: rotate(-135deg); }
	.btn.btnBlueAnchor { color: #fff; text-align: center; font-size: 2.4rem; background: #4283de; padding: 25px 60px; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.52); min-width: 300px; display: flex; justify-content: center; align-items: center; }
	.btn.btnBlueAnchor::after { position: absolute; content: ""; top: 0; bottom: 0; right: 20px; margin: auto; width: 22px; height: 22px; border: 2px solid; border-color: #fff #fff transparent transparent; transform: rotate(135deg); }
}
@media (max-width: 667px) {
	.btn { line-height: 1.2 !important; }
	.btnLine { margin-top: 6vw; text-align: center; }
	.btnLine >*:not(:last-child) { margin-bottom: 3vw; }
	.btn.btnCompensation { color: #fff; text-align: center; background: #6eb1bd; padding: 2vw; display: block; box-shadow: 0 0.8vw 0.8vw 0 rgba(4, 0, 0, 0.23); }
	.btn.btnRequest { color: #fff; text-align: center; background: #4c73ca; padding: 2vw; display: block; box-shadow: 0 0.8vw 0.8vw 0 rgba(4, 0, 0, 0.23); }
	.btn.btnCotact { color: #fff; text-align: center; background: #c389c7; padding: 2vw; display: block; box-shadow: 0 0.8vw 0.8vw 0 rgba(4, 0, 0, 0.23); }
	.btn.btnBlueNext { color: #fff; text-align: center; font-size: 4vw; background: #4283de; padding: 4vw 17vw; box-shadow: 0 1vw 1vw 0 rgba(4, 0, 0, 0.52); min-width: 70vw; }
	.btn.btnBlueNext::after { position: absolute; content: ""; top: 0; bottom: 0; right: 4vw; margin: auto; width: 4vw; height: 4vw; border: 0.4vw solid; border-color: #fff #fff transparent transparent; transform: rotate(45deg); }
	.btn.btnGrayBack { color: #fff; text-align: center; font-size: 4vw; background: #999; padding: 4vw 17vw; box-shadow: 0 1vw 1vw 0 rgba(4, 0, 0, 0.52); min-width: 70vw; }
	.btn.btnGrayBack::after { position: absolute; content: ""; top: 0; bottom: 0; left: 4vw; margin: auto; width: 4vw; height: 4vw; border: 0.4vw solid; border-color: #fff #fff transparent transparent; transform: rotate(-135deg); }
	.btn.btnBlueAnchor { color: #fff; text-align: center; font-size: 4vw; background: #4283de; padding: 4vw 17vw; box-shadow: 0 1vw 1vw 0 rgba(4, 0, 0, 0.52); min-width: 70vw; }
	.btn.btnBlueAnchor::after { position: absolute; content: ""; top: 0; bottom: 0; right: 4vw; margin: auto; width: 4vw; height: 4vw; border: 0.4vw solid; border-color: #fff #fff transparent transparent; transform: rotate(135deg); }
}




/*-----------------------------------------------------
Title
------------------------------------------------------*/
@media (min-width: 668px) {
	.titleLv0 { position: relative; width: 100%; height: 284px; background: url("../image/bg_title01.png") no-repeat 50% 50%; display: flex; justify-content: center; align-items: center; }
	.titleLv0::before { position: absolute; content: ""; top: 0; left: 0; width: 284px; height: 300px; background: url("../image/bg_title02.png") no-repeat; }
	.titleLv0 >* { width: 1000px; margin: 0 auto; font-family: 'Noto Serif JP', serif; font-size: 6.2rem; font-weight: 600; line-height: 1.4;　position: relative; z-index: 1; }
	.titleLv1 { font-size: 3.2rem; font-weight: 700; color: #0e499a; margin-bottom: 30px; text-align: center; }
	.titleLv2 { font-size: 2.8rem; font-weight: 700; color: #0e499a; margin-bottom: 10px; }
	.titleLv3 { font-size: 3.8rem; font-weight: 400; color: #0e499a; margin-bottom: 20px; padding: 6px; border: 2px solid #0e499a; border-radius: 2em; text-align: center; }
	.titleLv4 { font-size: 3rem; font-weight: 400; color: #0e499a; margin-bottom: 20px; padding: 6px; border: 2px solid #0e499a; border-radius: 2em; text-align: center; }
	.titleLv5 { margin-bottom: 30px; padding: 12px 24px; color: #fff; line-height: 1; font-size: 2.4rem; font-weight: 400; background: url("../image/bg_title03.png") no-repeat; }
	.titleLv6 { margin-bottom: 15px; font-size: 2rem; }
}
@media (max-width: 667px) {
	.titleLv0 { position: relative; width: 100%; height: 44vw; background: url("../image/sp_bg_title01.png") no-repeat 0 0 / 100% auto; padding: 4vw; display: flex; align-items: center; text-shadow: 0 0 1vw #fff, 0 0 2vw #fff; }
	.titleLv0 >* { font-family: 'Noto Serif JP', serif; font-size: 8.4vw; font-weight: 600; line-height: 1.2; }
	.titleLv1 { font-size: 5vw; font-weight: 700; color: #0e499a; margin-bottom: 6vw; text-align: center; }
	.titleLv2 { font-size: 4.3vw; font-weight: 700; color: #0e499a; margin-bottom: 2vw; }
	.titleLv3 { font-size: 5.9vw; font-weight: 400; color: #0e499a; margin-bottom: 4vw; padding: 2vw; border: 0.4vw solid #0e499a; border-radius: 2em; text-align: center; }
	.titleLv4 { font-size: 4.6vw; font-weight: 400; color: #0e499a; margin-bottom: 4vw; padding: 1.2vw; border: 0.4vw solid #0e499a; border-radius: 2em; text-align: center; }
	.titleLv5 { margin: 0 -6vw 6vw; padding: 3vw 4vw 3vw 6vw; color: #fff; line-height: 1.2; font-size: 5.6vw; font-weight: 400; background: #4283de; position: relative; width: 96vw; }
	.titleLv5::after { background: #fff; bottom: 0; clip-path: polygon(100% 0, 100% 100%, 50% 100%); content: ""; height: 100%; margin: auto; position: absolute; right: 0; top: 0; width: 20vw; }
	.titleLv6 { margin-bottom: 3vw; font-size: 4vw; } 
}


/*-----------------------------------------------------
Flex
------------------------------------------------------*/
@media (min-width: 668px) {
	.flex { display: flex; flex-wrap: wrap; }
	.flex.space-between { justify-content: space-between; }
	.flex.align-center { align-items: center; }
}
@media (max-width: 667px) {
	.spflex { display: flex; flex-wrap: wrap; }
	.spflex.space-between { justify-content: space-between; }
	.spflex.align-center { align-items: center; }
}



/*-----------------------------------------------------
Box
------------------------------------------------------*/
@media (min-width: 668px) {
	.bgCube { background: url("../image/bg01.png") repeat-y 50% 0; }
	.bgBlue { background: #4283de; overflow: hidden; }
	.bgGray { background: #e6e6e6; }
	.bgWhite { background: #fff; border-radius: 10px; padding: 40px; }
	.borderBox { padding: 20px 40px 30px; border: 1px solid #767676; background: #fff; margin: auto; }
}
@media (max-width: 667px) {
	.bgCube { background: url("../image/bg01.png") repeat-y 50% 0 / 90% auto; overflow: hidden; }
	.bgBlue { background: #4283de; overflow: hidden; }
	.bgGray { background: #e6e6e6; }
	.bgWhite { background: #fff; border-radius: 1vw; padding: 4vw; }
	.borderBox { padding: 2vw 4vw 3vw; border: 0.2vw solid #767676; background: #fff; margin: auto; }
}


/*-----------------------------------------------------
Table
------------------------------------------------------*/
@media (min-width: 668px) {
	.table01 { width: 100%; border-collapse: collapse; line-height: 1.2; }
	.table01 caption { text-align: left; font-weight: 700; margin-bottom: 10px; }
	.table01 th { border: 1px solid #888; padding: 10px; text-align: center; font-size: 1.6rem; font-weight: 500; }
	.table01 td { border: 1px solid #888; padding: 10px; text-align: center; font-size: 1.4rem; background: #fff; }
	.table01 .bgLightblue { background: #bdf1fa; }
	.table01 .bgPink { background: #f8cdec; }
	.table01 .bgGray { background: #e6e6e6; }
	.table01 .taR { display: block; margin-top: -1em; font-size: 1.4rem; }
	.table02 { width: 100%; border-collapse: collapse; line-height: 1.2; }
	.table02 caption { text-align: left; font-weight: 700; margin-bottom: 10px; }
	.table02 th { border: 1px solid #888; padding: 10px; font-size: 1.6rem; font-weight: 500; background: #efe7f2; }
	.table02 td { border: 1px solid #888; padding: 10px; font-size: 1.6rem; vertical-align: top; background: #fff; }
	.table03 { width: 100%; border-collapse: collapse; line-height: 1.2; font-size: 1.6rem; }
	.table03.w60 { width: 60%; margin: auto; }
	.table03 caption { margin-bottom: 10px; line-height: 1.4; }
	.table03 th { border: 1px solid #888; padding: 10px; font-weight: 500; background: #b7d0f3; }
	.table03 td { border: 1px solid #888; padding: 10px; text-align: center; vertical-align: top; background: #fff; }
	.table03 .bgPink { background: #f9d6e0; }
}
@media (max-width: 667px) {
	.table01 { width: 100%; border-collapse: collapse; font-size: 3vw; line-height: 1.2; }
	.table01 caption { text-align: left; font-weight: 700; margin-bottom: 2vw; }
	.table01 th { border: 0.2vw solid #888; padding: 2vw 1vw; text-align: center; font-size: 3vw; font-weight: 500; }
	.table01 td { border: 0.2vw solid #888; padding: 2vw 1vw; text-align: center; font-size: 2.8vw; background: #fff; }
	.table01 .bgLightblue { background: #bdf1fa; }
	.table01 .bgPink { background: #f8cdec; }
	.table01 .bgGray { background: #e6e6e6; }
	.table01 .taR { display: block; }
	.table02 { width: 100%; border-collapse: collapse; line-height: 1.2; }
	.table02 caption { text-align: left; font-weight: 700; margin-bottom: 2vw; }
	.table02 th { border: 0.2vw solid #888; padding: 2vw 1vw; font-size: 3vw; font-weight: 500; background: #efe7f2; }
	.table02 td { border: 0.2vw solid #888; padding: 2vw 1vw; font-size: 3vw; vertical-align: top; background: #fff; }
	.table03 { width: 100%; border-collapse: collapse; line-height: 1.2; font-size: 3vw; }
	.table03 caption { margin-bottom: 2vw; line-height: 1.4; }
	.table03 th { border: 0.2vw solid #888; padding: 2vw 1vw; font-weight: 500; background: #b7d0f3; }
	.table03 td { border: 0.2vw solid #888; padding: 2vw 1vw; text-align: center; vertical-align: top; background: #fff; }
	.table03 .bgPink { background: #f9d6e0; }
}


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

トップページ

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

@media (min-width: 668px) {
	.topBlock01 { background: url("../image/top_img01.png") no-repeat 50% 50% / cover; height: 430px; width: 100%; padding: 30px calc(50% - 500px) 0; }
	.topBlock01 h1 { font-size: 6.8rem; font-family: 'Noto Serif JP', serif; font-weight: 600; line-height: 1.2; text-shadow: 2px 2px 20px rgba(255, 255, 255, 0.3), -2px 2px 20px rgba(255, 255, 255, 0.3), 2px -2px 20px rgba(255, 255, 255, 0.3), -2px -2px 20px rgba(255, 255, 255, 0.3); display: block; margin-bottom: 30px; }
	.topBlock01 .txt01 { font-size: 5rem; }
	.topBlock02 { background: #e1eeff; padding-top: 40px; }
	.topBlock02 h2 { background: #4283de; color: #fff; font-weight: 300; font-size: 3.4rem; text-align: center; padding: 20px 0; }
	.topBlock02 .flex { margin: 0 auto 40px; width: 1000px; }
	.topBlock02 ul { font-size: 2rem; font-weight: 500; }
	.topBlock02 li { position: relative; padding-left: 40px; }
	.topBlock02 li::before { position: absolute; content: ""; width: 25px; height: 25px; top: 0; bottom: 0; left: 0; margin: auto; background: url("../image/icon_check.svg") no-repeat 0 0; }
	.topBlock02 .price { border: 2px solid #0E499A; border-radius: 50px; background: #fff; box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.35); padding: 30px 20px; font-size: 2.6rem; text-align: center; color: #0e499a; line-height: 1.2; }
	.topBlock03 { width: 1000px; margin: 50px auto; }
	.topBlock03 .txt { color: #fff; font-size: 2.4rem; background: #4283de; text-align: center; padding: 20px; }
	.topBlock03 .borderBox { padding: 40px; }
	.topBlock03 .bgImg01 { padding-top: 220px; background: url("../image/top_img10.png") no-repeat 50% 0; }
	.topBlock03 .bgImg02 { padding-top: 220px; background: url("../image/top_img09.png") no-repeat 50% 0; }
	.topBlock03 .bgImg03 { padding-left: 240px; background: url("../image/top_img09.png") no-repeat 0 0; }
	.topBlock03 .serviceBox { border: 1px solid #767676; background: #fff; box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3); padding: 30px; width: 440px; position: relative; }
	.topBlock03 .caseBox { width: 220px; border: 1px solid #343a3f; padding: 26px; font-size: 1.8rem; border-radius: 5px; background: #fff; }
	.topBlock03 .caseBox dt { height: 130px; margin-bottom: 40px; position: relative; }
	.topBlock03 .caseBox dt::before { position: absolute; content: ""; background: #1551cb; bottom: -15px; clip-path: polygon(0 0, 100% 0, 50% 100%); height: 15px; left: 0; margin: auto; right: 0; width: 30px; }
	.topBlock03 .iconPlus::after { position: absolute; content: ""; width: 64px; height: 64px; top: 195px; right: -92px; background: url("../image/top_img11.png") no-repeat 0 0; }
}
@media (max-width: 667px) {
	.topBlock01 { background: url("../image/sp_top_img01.png") no-repeat 50% 50% / cover; text-align: center; padding: 6vw 5vw 0; height: 80vw; }
	.topBlock01 h1 { font-size: 7.8125vw; font-family: 'Noto Serif JP', serif; font-weight: 600; text-shadow: 0.4vw 0.4vw 4vw rgba(255, 255, 255, 0.3), -0.4vw 0.4vw 4vw rgba(255, 255, 255, 0.3), 0.4vw -0.4vw 4vw rgba(255, 255, 255, 0.3), -0.4vw -0.4vw 4vw rgba(255, 255, 255, 0.3); line-height: 1.2; margin-bottom: 8vw; }
	.topBlock01 .txt01 { font-size: 6.25vw; }
	.topBlock02 { background: #e1eeff; padding-top: 4vw; }
	.topBlock02 .flex { margin: 0 5vw 4vw; }
	.topBlock02 ul { font-size: 4.375vw; font-weight: 500; }
	.topBlock02 li { position: relative; padding-left: 8vw; }
	.topBlock02 li::before { position: absolute; content: ""; width: 5vw; height: 5vw; top: 1.6vw; left: 0; background: url("../image/icon_check.svg") no-repeat 0 0 / 5vw auto; }
	.topBlock02 .price { border: 0.4vw solid #0E499A; border-radius: 5vw; background: #fff; box-shadow: 0px 1vw 1vw 0px rgba(0, 0, 0, 0.35); padding: 3vw; font-size: 5vw; text-align: center; color: #0e499a; line-height: 1.2; margin-top: 5vw; }
	.topBlock02 h2 { background: #4283de; color: #fff; font-weight: 300; font-size: 6.25vw; padding: 4vw 1vw; text-align: center; }
	.topBlock03 { margin: 5vw 6vw; }
	.topBlock03 p img { width: 70vw; }
	.topBlock03 .txt { color: #fff; background: #4283de; text-align: center; padding: 2vw; }
	.topBlock03 .borderBox { padding: 4vw; }
	.topBlock03 .bgImg01 { padding-top: 35vw; background: url("../image/top_img10.png") no-repeat 50% 0 / 30vw auto; }
	.topBlock03 .bgImg02 { padding-top: 35vw; background: url("../image/top_img09.png") no-repeat 50% 0 / 30vw auto; }
	.topBlock03 .bgImg03 { padding-top: 35vw; background: url("../image/top_img09.png") no-repeat 50% 0 / 30vw auto; }
	.topBlock03 .w50 { width: 50vw; }
	.topBlock03 .serviceBox { border: 0.2vw solid #767676; background: #fff; box-shadow: 0px 1vw 1vw 0px rgba(0, 0, 0, 0.3); padding: 5vw; position: relative; }
	.topBlock03 .caseBox { border: 0.2vw solid #343a3f; padding: 5vw; font-size: 4vw; border-radius: 1vw; background: #fff; margin-bottom: 6vw; }
	.topBlock03 .caseBox dt { margin-bottom: 4vw; position: relative; }
	.topBlock03 .caseBox dt::before { position: absolute; content: ""; background: #1551cb; bottom: -3vw; clip-path: polygon(0 0, 100% 0, 50% 100%); height: 2vw; left: 0; margin: auto; right: 0; width: 4vw; }
	.topBlock03 .iconPlus { margin-bottom: 15vw; }
	.topBlock03 .iconPlus::after { position: absolute; content: ""; width: 10vw; height: 10vw; bottom: -13vw; left: 0; right: 0; margin: auto; background: url("../image/top_img11.png") no-repeat 0 0 / 10vw auto; }
}



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

補償内容・保険料

------------------------------------------------------*/
@media (min-width: 668px) {
	.compensationBlock01 { width: 920px; margin: 100px auto; padding: 40px 120px 60px; border: 1px solid #767676; border-radius: 5px; background: #fff; }
	.compensationBlock02 { width: 1000px; margin: 60px auto; }
	.compensationBlock02 .borderBox.wS { width: 850px; }
	.compensationBlock02 .bgGray { padding: 20px; font-weight: 700; }
	.compensationBlock03 { width: 920px; margin: 60px auto; }
	.compensationBlock03 .flex { display: flex; justify-content: space-between; margin-bottom: 45px; }
	.compensationBlock03 dl { width: 440px; padding: 30px; border: 1px solid #767676; border-radius: 5px; background: #fff; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.23); }
	.compensationBlock03 dd { margin: 15px 25px 0; }
	.compensationBlock04 { width: 1000px; margin: 60px auto; }
	.compensationBlock04 h2 { color: #fff; font-size: 3rem; font-weight: 500; margin-bottom: 20px; text-align: center; }
	.compensationBlock04 h3 { color: #4283de; font-size: 2.4rem; font-weight: 500; margin-bottom: 10px; }
	.compensationBlock04 .faqBlock { width: auto !important; margin: 0 !important; }
}
@media (max-width: 667px) {
	.compensationBlock01 { width: 88vw; margin: 10vw auto; padding: 4vw 6vw 6vw; border: 0.2vw solid #767676; border-radius: 1vw; background: #fff; }
	.compensationBlock02 { width: 88vw; margin: 10vw auto; }
	.compensationBlock02 .bgGray { padding: 3vw; font-weight: 700; }
	.compensationBlock03 { width: 88vw; margin: 6vw auto; }
	.compensationBlock03 dl { padding: 5vw; border: 0.2vw solid #767676; border-radius: 2vw; background: #fff; box-shadow: 0 1vw 1vw 0 rgba(4, 0, 0, 0.23); margin-bottom: 7vw; }
	.compensationBlock03 dd { margin-top: 3vw; }
	.compensationBlock03 dd img { width: 40vw; }
	.compensationBlock04 { width: 88vw; margin: 6vw auto; }
	.compensationBlock04 h2 { color: #fff; font-size: 4.6vw; font-weight: 500; margin-bottom: 4vw; text-align: center; }
	.compensationBlock04 h3 { color: #4283de; font-size: 4vw; font-weight: 500; margin-bottom: 2vw; }
	.compensationBlock04 .faqBlock { width: auto !important; margin: 0 !important; }
}



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

医療事故のトラブル

------------------------------------------------------*/
@media (min-width: 668px) {
	.troubleBlock01 { width: 1000px; margin: 60px auto; }
	.troubleBlock01 .txt01 { width: 520px; }
}
@media (max-width: 667px) {
	.troubleBlock01 { width: 88vw; margin: 10vw auto; }
	.troubleBlock01 .txt01 { margin-bottom: 5vw; }
}



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

保険料の相場

------------------------------------------------------*/
@media (min-width: 668px) {
	.flowBlock01 { width: 840px; margin: 60px auto 120px; }
	.flowBlock01 li { padding: 30px 30px 30px 200px; border: 1px solid #767676; border-radius: 5px; background: #fff; box-shadow: 0 5px 5px 0 rgba(4, 0, 0, 0.23); font-size: 2rem; line-height: 1.8; display: flex; align-items: center; min-height: 165px; position: relative; }
	.flowBlock01 li::before { position: absolute; content: ""; width: 105px; height: 155px; top: 0; bottom: 0; left: 50px; margin: auto; }
	.flowBlock01 li:nth-child(1)::before { background: url("../image/flow_img01.png") no-repeat 50% 50%; }
	.flowBlock01 li:nth-child(2)::before { background: url("../image/flow_img02.png") no-repeat 50% 50%; }
	.flowBlock01 li:nth-child(3)::before { background: url("../image/flow_img03.png") no-repeat 50% 50%; }
	.flowBlock01 li:nth-child(4)::before { background: url("../image/flow_img04.png") no-repeat 50% 50%; }
	.flowBlock01 li:nth-child(5)::before { background: url("../image/flow_img05.png") no-repeat 50% 50%; }
	.flowBlock01 li:nth-child(6)::before { background: url("../image/flow_img06.png") no-repeat 50% 50%; }
	.flowBlock01 li:not(:last-child) { margin-bottom: 35px; }
	.flowBlock01 li:not(:last-child)::after { position: absolute; content: ""; left: 52px; bottom: -23px; width: 10px; height: 10px; border: 2px solid; border-color: transparent transparent #343434 #343434; transform: rotate(-45deg); }
	.flowBlock01 dl { border-left: 1px solid #343434; padding-left: 40px; }
	.flowBlock01 dt { color: #0e499a; font-weight: 700; }
}
@media (max-width: 667px) {
	.flowBlock01 { width: 88vw; margin: 6vw auto 12vw; }
	.flowBlock01 li { padding: 3vw 3vw 3vw 20vw; border: 0.2vw solid #767676; border-radius: 1vw; background: #fff; box-shadow: 0 1vw 1vw 0 rgba(4, 0, 0, 0.23); line-height: 1.8; display: flex; align-items: center; min-height: 30vw; position: relative; }
	.flowBlock01 li::before { position: absolute; content: ""; width: 15vw; height: 23vw; top: 0; bottom: 0; left: 3vw; margin: auto; }
	.flowBlock01 li:nth-child(1)::before { background: url("../image/flow_img01.png") no-repeat 50% 50% / 15vw auto; }
	.flowBlock01 li:nth-child(2)::before { background: url("../image/flow_img02.png") no-repeat 50% 50% / 15vw auto; }
	.flowBlock01 li:nth-child(3)::before { background: url("../image/flow_img03.png") no-repeat 50% 50% / 15vw auto; }
	.flowBlock01 li:nth-child(4)::before { background: url("../image/flow_img04.png") no-repeat 50% 50% / 15vw auto; }
	.flowBlock01 li:nth-child(5)::before { background: url("../image/flow_img05.png") no-repeat 50% 50% / 15vw auto; }
	.flowBlock01 li:nth-child(6)::before { background: url("../image/flow_img06.png") no-repeat 50% 50% / 15vw auto; }
	.flowBlock01 li:not(:last-child) { margin-bottom: 8vw; }
	.flowBlock01 li:not(:last-child)::after { position: absolute; content: ""; left: 10vw; bottom: -5vw; width: 2vw; height: 2vw; border: 0.4vw solid; border-color: transparent transparent #343434 #343434; transform: rotate(-45deg); }
	.flowBlock01 dl { border-left: 0.2vw solid #343434; padding-left: 4vw; }
	.flowBlock01 dt { color: #0e499a; font-weight: 700; }
}



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

よくある質問

------------------------------------------------------*/
@media (min-width: 668px) {
	.faqBlock { width: 1000px; margin: 60px auto 100px; }
	.faqBlock h2.faqTitle { font-size: 3.2rem; margin-bottom: 30px; padding-bottom: 10px; border-bottom: 3px solid #222; }
	.faqBlock .fcPurple { font-size: 4.8rem; }
	.faqBlock .is-head { background: #e1eeff; font-weight: 700; padding: 20px 80px; margin-bottom: 3px; position: relative; cursor: pointer; }
	.faqBlock .is-head::before { position: absolute; content: "Q"; top: 0; left: 30px; font-size: 3.8rem; font-weight: 500; color: #ba47c4; }
	.faqBlock .is-head::after { position: absolute; content: ""; top: 20px; right: 30px; width: 22px; height: 22px; border: 1px solid; border-color: #ba47c4 #ba47c4 transparent transparent; transform: rotate(135deg); }
	.faqBlock .is-head.is-open::after { top: 30px; transform: rotate(-45deg); }
	.faqBlock .is-body { font-size: 1.6rem; font-weight: 500; padding: 20px 20px 0 80px; margin-bottom: 60px; position: relative; }
	.faqBlock .is-body::before { position: absolute; content: "A"; top: 10px; left: 30px; font-size: 3.8rem; color: #ba47c4; }
}
@media (max-width: 667px) {
	.faqBlock { margin: 6vw; }
	.faqBlock h2.faqTitle { font-size: 5vw; margin-bottom: 3vw; padding-bottom: 1vw; border-bottom: 0.6vw solid #222; }
	.faqBlock .fcPurple { font-size: 6vw; }
	.faqBlock .is-head { background: #e1eeff; font-weight: 700; padding: 2vw 10vw; margin-bottom: 1vw; position: relative; cursor: pointer; }
	.faqBlock .is-head::before { position: absolute; content: "Q"; top: 1vw; left: 3vw; font-size: 5vw; font-weight: 500; color: #ba47c4; }
	.faqBlock .is-head::after { position: absolute; content: ""; top: 3vw; right: 3vw; width: 3vw; height: 3vw; border: 0.3vw solid; border-color: #ba47c4 #ba47c4 transparent transparent; transform: rotate(135deg); }
	.faqBlock .is-head.is-open::after { top: 4vw; transform: rotate(-45deg); }
	.faqBlock .is-body { font-size: 3.4vw; font-weight: 500; padding: 2vw 2vw 0 10vw; margin-bottom: 6vw; position: relative; }
	.faqBlock .is-body::before { position: absolute; content: "A"; top: 1vw; left: 3vw; font-size: 5vw; color: #ba47c4; }
}



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

サイトポリシー

------------------------------------------------------*/
@media (min-width: 668px) {
	.sitepolicyBlock { width: 840px; margin: 60px auto 120px; }
}
@media (max-width: 667px) {
	.sitepolicyBlock { width: 88vw; margin: 6vw auto; }
}



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

お問い合わせ

------------------------------------------------------*/
@media (min-width: 668px) {
	.formBlock01 { width: 1000px; margin: 40px auto 80px; }
	.formBlock01 .required { display: inline-block; color: #fff; background: #e869f3; font-size: 1.4rem; padding: 6px 11px; line-height: 1; border-radius: 1em; margin-right: 10px; }
	.formBlock01 table { width: 100%; border-collapse: collapse; margin-bottom: 60px; }
	.formBlock01 caption { font-size: 3.2rem; font-weight: 500; border-bottom: 3px solid #2f7bc0; padding-bottom: 10px; }
	.formBlock01 th { padding: 35px 0 0; border-bottom: 1px solid #acc0d6; vertical-align: top; width: 390px; text-align: left; }
	.formBlock01 td { padding: 25px 0; border-bottom: 1px solid #acc0d6; }
	.formBlock01 input[type="text"],
	.formBlock01 input[type="email"] { background: #fff; padding: 10px; width: 480px; border: 1px solid #bab9b9; border-radius: 3px; }
	.formBlock01 input[type="checkbox"],
	.formBlock01 input[type="radio"] { margin: 0 0.2em; }
	.formBlock01 p { padding: 10px 0; }
	.formBlock01 p.privacy { width: 820px; margin: 100px auto 50px; font-size: 1.6rem; line-height: 2; }
	.formBlock01 select { width: 100%; }
	.formBlock01 .selectLine { display: inline-block; background: #fff; padding: 10px; width: 480px; border: 1px solid #bab9b9; border-radius: 3px; position: relative; }
	.formBlock01 .selectLine:after { position: absolute; content: ""; width: 0; height: 0; border-top: 9px solid #000; border-right: 5px solid transparent; border-left: 5px solid transparent; top: 0; bottom: 0; right: 14px; margin: auto; }
	.formBlock01 textarea { background: #fff; padding: 10px; width: 600px; height: 280px; border: 1px solid #bab9b9; border-radius: 3px; }
	.formBlock01 .submitBtn { margin: 50px 0 0; text-align: center; }
	.formBlock01 .submitBtn >* { margin: 0 20px; }

	.formBlock02 { background: #f3f3f3; padding: 30px 0 50px; }
	.formBlock02 .required { display: inline-block; color: #fff; background: #e869f3; font-size: 1.4rem; padding: 6px 11px; line-height: 1; border-radius: 1em; margin-right: 10px; }
	.formBlock02in { width: 1000px; margin: 0 auto; }
	.formBlock02 h2 { font-size: 3.2rem; font-weight: 500; border-bottom: 3px solid #2f7bc0; padding-bottom: 10px; margin-bottom: 40px; }
	.formBlock02 table { width: 100%; border-collapse: collapse; }
	.formBlock02 th { padding: 16px 35px; text-align: left; background: #fff; border: 1px solid #040404; font-weight: 500; }
	.formBlock02 td { padding: 16px 35px; font-size: 1.6rem; background: #fff; border: 1px solid #040404; font-weight: 500; }
	.formBlock02 small { line-height: 1.4; }
	.formBlock02 .note { padding: 1em; background: #f7f7f7; margin-top: 0.5em; display: block; }
	.formBlock02 input[type="text"] { background: #fff; padding: 5px; border: 1px solid #bab9b9; border-radius: 3px; margin-right: 0.2em; }
	.formBlock02 input[type="text"].wL { width: 380px; }
	.formBlock02 input[type="text"].wM { width: 130px; }
	.formBlock02 input[type="text"].wS { width: 75px; }
	.formBlock02 input[type="text"].wSS { width: 60px; }
	.formBlock02 input[type="checkbox"],
	.formBlock02 input[type="radio"] { margin: 0 0.2em; }
	.formBlock02 .optionalBlock { display: none; }
  .formBlock02 td label{ display: block;}
  .optionalBlock td label{ display: inline-block;}

	.formBlock03 { width: 920px; margin: 80px auto 100px; padding: 80px; border: 1px solid #bbb; border-radius: 5px; background: #fff; }
}
@media (max-width: 667px) {
	.formBlock01 { margin: 4vw 6vw 6vw; }
	.formBlock01 .required { display: inline-block; color: #fff; background: #e869f3; font-size: 2.8vw; padding: 1vw 2vw; line-height: 1; border-radius: 1em; margin-right: 2vw; }
	.formBlock01 table { width: 100%; border-collapse: collapse; margin-bottom: 6vw; }
	.formBlock01 caption { font-size: 6vw; font-weight: 500; border-bottom: 0.6vw solid #2f7bc0; padding-bottom: 1vw; }
	.formBlock01 th { display: block; padding: 5vw 0 0; text-align: left; }
	.formBlock01 td { display: block; padding: 2vw 0 5vw; border-bottom: 0.2vw solid #acc0d6; }
	.formBlock01 input[type="text"],
	.formBlock01 input[type="email"] { background: #fff; padding: 2vw; width: 80%; border: 0.2vw solid #bab9b9; border-radius: 1vw; }
	.formBlock01 p { padding: 2vw 0; }
	.formBlock01 p.privacy { margin: 5vw 0 !important; }
	.formBlock01 select { width: 100%; }
	.formBlock01 .selectLine { display: inline-block; background: #fff; padding: 2vw; width: 80%; border: 0.2vw solid #bab9b9; border-radius: 1vw; position: relative; }
	.formBlock01 .selectLine:after { position: absolute; content: ""; width: 0; height: 0; border-top: 2vw solid #000; border-right: 1vw solid transparent; border-left: 1vw solid transparent; top: 0; bottom: 0; right: 3vw; margin: auto; }
	.formBlock01 textarea { background: #fff; padding: 2vw; width: 100%; height: 10em; border: 0.2vw solid #bab9b9; border-radius: 1vw; }
	.formBlock01 .submitBtn { text-align: center; }
	.formBlock01 .submitBtn >* { margin-bottom: 4vw; }

	.formBlock02 { background: #f3f3f3; padding: 3vw 6vw 5vw; }
	.formBlock02 .required { display: inline-block; color: #fff; background: #e869f3; font-size: 2.8vw; padding: 1vw 2vw; line-height: 1; border-radius: 1em; margin-right: 2vw; }
	.formBlock02 h2 { font-size: 6vw; font-weight: 500; border-bottom: 0.6vw solid #2f7bc0; padding-bottom: 2vw; margin-bottom: 4vw; }
	.formBlock02 table { width: 100%; border-collapse: collapse; }
	.formBlock02 th { padding: 1vw 2vw; text-align: left; background: #fff; border: 0.2vw solid #040404; font-weight: 500; display: block; margin-top: -0.2vw; }
	.formBlock02 td { padding: 1vw 2vw;; font-size: 3.7vw; background: #fff; border: 0.2vw solid #040404; font-weight: 500; display: block; margin-top: -0.2vw; }
	.formBlock02 small { line-height: 1.4; }
	.formBlock02 .note { padding: 1em; background: #f7f7f7; margin-top: 0.5em; }
	.formBlock02 input[type="text"] { background: #fff; padding: 1vw; border: 0.2vw solid #bab9b9; border-radius: 1vw; margin-right: 0.2em; }
	.formBlock02 input[type="text"].wL { width: 38vw; }
	.formBlock02 input[type="text"].wM { width: 13vw; }
	.formBlock02 input[type="text"].wS { width: 8vw; }
	.formBlock02 input[type="text"].wSS { width: 6vw; }
	.formBlock02 input[type="checkbox"],
	.formBlock02 input[type="radio"] { margin: 0 0.2em; }
	.formBlock02 .optionalBlock { display: none; }
}

/* 追記 */
.error-list {
  font-size: 14px;
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
  padding: 5px 15px 5px 30px;
  margin: 20px 0;
  border: 1px solid transparent;
  border-radius: 4px;
}
.error-list li {
  margin-bottom: 3px;
  list-style-type: disc;
}
.error-list li:last-child {
  margin-bottom: 0;
}





@media (min-width: 668px) {
	.fs12 { font-size: 1.2rem; }
	.fs14 { font-size: 1.4rem; }
	.fs16 { font-size: 1.6rem; }
	.fs18 { font-size: 1.8rem; }
	.fs20 { font-size: 2rem; }
	.fs22 { font-size: 2.2rem; }
	.fs24 { font-size: 2.4rem; }
	.fs26 { font-size: 2.6rem; }
	.fs28 { font-size: 2.8rem; }
	.fs30 { font-size: 3rem; }
	.fs32 { font-size: 3.2rem; }
	.fs34 { font-size: 3.4rem; }
	.fs36 { font-size: 3.6rem; }
	.fs38 { font-size: 3.8rem; }
	.fs40 { font-size: 4rem; }
	.fs42 { font-size: 4.2rem; }
	.fs44 { font-size: 4.4rem; }
	.fs46 { font-size: 4.6rem; }
	.fs48 { font-size: 4.8rem; }
	.fs50 { font-size: 5rem; }
	.mt0 { margin-top: 0; }
	.mt10 { margin-top: 10px; }
	.mt20 { margin-top: 20px; }
	.mt30 { margin-top: 30px; }
	.mt40 { margin-top: 40px; }
	.mt50 { margin-top: 50px; }
	.mt60 { margin-top: 60px; }
	.mt70 { margin-top: 70px; }
	.mt80 { margin-top: 80px; }
	.mt90 { margin-top: 90px; }
	.mt100 { margin-top: 100px; }
	.mb0 { margin-bottom: 0; }
	.mb10 { margin-bottom: 10px; }
	.mb20 { margin-bottom: 20px; }
	.mb30 { margin-bottom: 30px; }
	.mb40 { margin-bottom: 40px; }
	.mb50 { margin-bottom: 50px; }
	.mb60 { margin-bottom: 60px; }
	.mb70 { margin-bottom: 70px; }
	.mb80 { margin-bottom: 80px; }
	.mb90 { margin-bottom: 90px; }
	.mb100 { margin-bottom: 100px; }
}
@media (max-width: 667px) {
	.fs12 { font-size: 3.125vw; }
	.fs14 { font-size: 3.4375vw; }
	.fs16 { font-size: 3.75vw; }
	.fs18 { font-size: 4.0625vw; }
	.fs20 { font-size: 4.375vw; }
	.fs22 { font-size: 4.6875vw; }
	.fs24 { font-size: 5vw; }
	.fs26 { font-size: 5.3125vw; }
	.fs28 { font-size: 5.625vw; }
	.fs30 { font-size: 5.9375vw; }
	.fs32 { font-size: 6.25vw; }
	.fs34 { font-size: 6.5625vw; }
	.fs36 { font-size: 6.875vw; }
	.fs38 { font-size: 7.1875vw; }
	.fs40 { font-size: 7.5vw; }
	.fs42 { font-size: 7.8125vw; }
	.fs44 { font-size: 8.125vw; }
	.fs46 { font-size: 8.4375vw; }
	.fs48 { font-size: 8.75vw; }
	.fs50 { font-size: 9.0625vw; }
	.mt0 { margin-top: 0; }
	.mt10 { margin-top: 1vw; }
	.mt20 { margin-top: 2vw; }
	.mt30 { margin-top: 3vw; }
	.mt40 { margin-top: 4vw; }
	.mt50 { margin-top: 5vw; }
	.mt60 { margin-top: 6vw; }
	.mt70 { margin-top: 7vw; }
	.mt80 { margin-top: 8vw; }
	.mt90 { margin-top: 9vw; }
	.mt100 { margin-top: 10vw; }
	.mb0 { margin-bottom: 0; }
	.mb10 { margin-bottom: 1vw; }
	.mb20 { margin-bottom: 2vw; }
	.mb30 { margin-bottom: 3vw; }
	.mb40 { margin-bottom: 4vw; }
	.mb50 { margin-bottom: 5vw; }
	.mb60 { margin-bottom: 6vw; }
	.mb70 { margin-bottom: 7vw; }
	.mb80 { margin-bottom: 8vw; }
	.mb90 { margin-bottom: 9vw; }
	.mb100 { margin-bottom: 10vw; }
}


















