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

/*********************************
 *
 * common
 *
 *********************************/
* {box-sizing:border-box;}
body {font-size:17px; font-family:'Noto Sans JP', sans-serif; font-weight:600; line-height:1.6;}
a {text-decoration:none; transition:0.3s;}
a:hover {opacity:0.7;}
p {margin-top:1em;}
input {font-family:'Noto Sans JP', sans-serif;}
label input {margin-right:0.8em; transform:scale(1.6);}
img {width:100%; height:auto;}

.mT05 {margin-top:5px !important;}
.mT15 {margin-top:15px !important;}
.mT20 {margin-top:20px !important;}
.mT30 {margin-top:30px !important;}
.mL20 {margin-left:20px !important;}
.small {font-size:80%;}

#wrapper {padding:0 0 5em 0;}

@media screen and (min-width:769px) {
.sp {display:none !important;}
}
@media screen and (min-width:769px) and (max-width:1200px) {
body {font-size:1.4vw;}
}
@media screen and (max-width:768px) {
body {font-size:3vw;}
a:hover {opacity:1;}
.pc {display:none !important;}
}


/*********************************
 *
 * header
 *
 *********************************/
header {width:100%; max-width:1280px; margin:0 auto; background:url(../images/h_bg.png) center top no-repeat; background-size:contain;}
header .inner {width:71%; max-width:910px; margin:0 auto;}
header .inner .h1_box {width:70%; padding:3em 0 3.5em 0;}
header .inner .h1_box h1 {width:67%; max-width:400px;}
header .inner .h1_box p {margin:1.8em 0 0 0; font-weight:700;}

@media screen and (min-width:769px) and (max-width:1200px) {
header {background-size:cover;}
}
@media screen and (max-width:768px) {
header {background:none;}
header .inner {width:90%;}
header .inner .h1_box {width:100%; padding:3em 0;}
header .inner .h1_box h1 {width:70%; max-width:400px;}
header .inner .h1_box p {padding:0 45% 0 0; background:url(../images/h_bg-sp.png) right top no-repeat; background-size:40% auto;}
}


/*********************************
 *
 * main
 *
 *********************************/
main {}
main h2 {margin:0 0 3em 0; padding:1.5em 0; background:#38729e; text-align:center;}
main h2 img {max-width:232px;}
main h2.results img {max-width:390px;}
main h2.thanks img {max-width:312px;}
main .inner {width:90%; max-width:910px; margin:0 auto;}
main .thanks + .inner {margin:5em auto 0 auto; font-size:115%; line-height:2; text-align:center;}
main .toolBox {}
main .error  {color:#ff0000; font-weight:700;}
main dl.tool {display:flex; align-items:center; width:100%; margin:1em 0 0 0; border:3px solid #a7a7a7; border-radius:4px;}
main dl.tool:nth-child(1) {margin:3em 0 0 0;}
main .error + .toolBox > form > dl.tool {margin:1em 0 0 0;}
main dl.tool dt {display:flex; flex:1; align-items:center; padding:1em; border-right:3px solid #e1e1e1; font-weight:700;}
main dl.tool dt span {display:inline-block; width:2.7em; color:#38729e; font-family:'Lato', sans-serif; font-size:180%; font-weight:500;}
main dl.tool dt p {flex:1; margin:0;}
main dl.tool dd {width:13em; padding:1em; text-align:center;}
main dl.tool dd label:nth-child(1) {padding:0 1.5em 0 0;}
main dl.tool dd input {transform:scale(1.8);}
main .btn {margin:3.5em auto 0 auto; text-align:center;}
main .btn input {width:13em; padding:0.7em 0; border:0; border-radius:4px; color:#fff; font-size:140%; font-weight:600; text-align:center; cursor:pointer; transition:0.3s;}
main .btn input.reset {margin-right:1em;}
main .btn input:hover {opacity:0.8;}
main .btn input.reset {background:#5e79b7;}
main .btn input.submit {background:#eda306;}
main .btn input.submit1 {background:#cb497b;}
main .btn a {display:inline-block; margin:0 1em 0 0; padding:0.66em 1.5em; border:0; border-radius:4px; color:#fff; font-size:140%; font-weight:600; text-align:center; cursor:pointer;}
main .btn a.back {background:#a9a9a9;}
main .btn a.print {background:#eda306;}
main .resultsBox {width:100%; margin:3.5em 0 0 0; border:3px solid #a7a7a7; border-radius:6px;}
main .resultsBox dl.results {width:100%;}
main .resultsBox dl.results dt {padding:1em 1.5em 0.5em 1.5em; color:#38729e; font-size:110%; font-weight:700;}
main .resultsBox dl.results dd {padding:0 1.65em 1.5em 1.65em; border-bottom:3px solid #e1e1e1;}
main .resultsBox dl.results dd:last-child {border:0;}
main .resultsBox + .notice {margin:2.5em 0 0 0; font-weight:700; font-size:110%; text-align:center;}
main h3 {width:75%; max-width:510px; margin:4em auto 0 auto;}
main h3 + p {margin:2em 0 0 0;}
main table.contact {width:100%; margin:2em 0 0 0;}
main table.contact th {width:35%; padding:1.5em 0 1.5em 4em; background:#ebebeb url(../images/icon_pen.png) 1em center no-repeat; background-size:1.8em auto; border-right:5px solid #fff; border-bottom:5px solid #fff; font-weight:700; white-space:nowrap; vertical-align:middle;}
main table.contact th.check {background:#ebebeb url(../images/icon_check.png) 1em center no-repeat; background-size:1.8em auto;}
main table.contact th span {display:inline-block; width:6em; margin:0 0 0 1em; padding:0.5em 0; background:#eda306; border-radius:2px; color:#fff; font-size:80%; font-weight:500; text-align:center;}
main table.contact td {padding:1em; background:#fafafa; border-bottom:5px solid #fff; vertical-align:middle;}
main input.text {width:70%; max-width:350px; padding:0.4em 0.2em; border:1px solid #a7a7a7; font-size:100%;}
main input.text.w_100 {width:90%; max-width:100%;}
main textarea.text {width:90%; padding:0.4em 0.2em; border:1px solid #a7a7a7;}
main table.contact td.btn { padding:20px 0; background:none; border:none; }
main table.contact td.btn { padding-left:40px; }
main table.contact td.btn ul li { float:left; }
main .policyBox {margin:2em 0 0 0;}
main .policyBox .article {font-size:110%; font-weight:700;}
main .policyBox .note {margin:0.5em 0 0 0; font-weight:500;}
main .policyBox .agreeBtn {width:80%; margin:1em auto 0 auto; padding:1.5em 0; background:#fafafa; font-size:110%; text-align:center;}
main .policyBox .agreeBtn p {margin:0.7em 0 0 0;}

@media screen and (max-width:768px) {
main .inner {width:94%;}
main dl.tool {flex-wrap:wrap;}
main dl.tool dt {width:100%; padding:0.7em 1em; border-right:0; border-bottom:3px solid #e1e1e1;}
main dl.tool dd {width:100%; padding:0.5em 1em; background:#fafafa; font-size:150%;}
main dl.tool dd label:nth-child(1) {padding:0 4em 0 0;}
main dl.tool dd input {transform:scale(1.9);}
main .btn input {width:80%;}
main .btn input:hover {opacity:1;}
main .btn a {width:80%; margin:1em 0 0 0;}
main .btn input.reset {margin:1em 0 0 0;}
main table.contact th {display:block; width:100%; padding:1em 0 1em 4em; border-right:0;}
main table.contact td {display:block; width:100%;}
main input.text.w_100 {width:100%;}
main textarea.text {width:100%;}
main .policyBox .agreeBtn {width:100%;}
}

