*{ box-sizing: border-box; }

html {
	scroll-behavior: smooth;
}


#renew-rst img {image-rendering: unset !important;}
section a img{
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
section a img:hover{opacity: 0.6;}

#guide{
font-family: "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-style: normal;
}


.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}
section {overflow: hidden;}

section .content {
width: 100%;
max-width: 960px;
padding: 0 30px;
margin: 0 auto;
overflow: hidden;
}




.link_ttl {
font-family: "Noto Sans JP", serif;
font-optical-sizing: auto;
font-weight: 900;
font-style: normal;
position: relative;
padding: 1rem 2rem 1rem 2rem;
font-size: 2.4rem;
letter-spacing: 0;
text-align: center;
display: table;
margin: 0 auto;
line-height: 1.2em;
}

.link_ttl span{color:#1e90ff;}
.ttlong br{display:none;}

.link_ttl::before, .link_ttl::after {
position: absolute;
top: 0.6rem;
height: 3rem;
content: '';
}
	
.link_ttl::before {
border-left: solid 4px;
left: 0;
transform: rotate(-30deg);
}

.link_ttl::after {
border-right: solid 4px;
right: 0;
transform: rotate(30deg);
}


#fst_block{
display: block;
position: relative;
overflow: hidden;
}

.deco_l,.deco_r{
position: absolute;
}

.deco_l {
top: 1100px;
left: calc((100vw / 2) - 520px);
}

.deco_r {
top: 880px;
left: calc((100vw / 2) + 350px );
}


#kv{margin-top: 80px;}

#kv h1{
background-image: url(images/top_kv.jpg);
width: 960px;
height: 960px;
margin: 0 auto;
display: flex;
justify-content: center;
align-items: center;
padding: 0;
}

#kv h1 img{margin-bottom: 4em;}

#intro {
background-image: url(images/intro_bk.jpg);
background-repeat: no-repeat;
background-position: 50% 50%;
background-size: cover;
}

#intro p {
text-align: center;
margin: 2.5em 0;
line-height: 1.9em;
font-size: 1.8em;
font-family: "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 900;
font-style: normal;
}

#intro p span{ white-space: nowrap; }

#navilists{padding-top: 80px;}

#navilists h2 {
font-family: "Noto Sans JP", serif;
font-optical-sizing: auto;
font-weight: 900;
font-style: normal;
position: relative;
padding: 1rem 2.5rem 0rem 2.5rem;
font-size: 2.5rem;
letter-spacing: 0.1em;
text-align: center;
display: table;
margin: 0 auto;
}

#navilists h2 span{color:#1e90ff;}

#navilists h2::before, #navilists h2::after {
position: absolute;
top: 1.3rem;
height: 2.7rem;
content: '';
}

#navilists h2::before {
border-left: solid 4px;
left: 0;
transform: rotate(-30deg);
}

#navilists h2::after {
border-right: solid 4px;
right: 0;
transform: rotate(30deg);
}

#navilists h3 {
position: relative;
padding: 0.3em;
color: #ffffff;
font-size: 4em;
font-weight: bold;
text-align: center;
width: 88%;
margin: 0 auto;
}

#navilists h3::after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
z-index: -1;
}

#navilists h3::after {
background-image: linear-gradient(90deg, rgba(31, 85, 255, 1), rgba(0, 190, 255, 1));
transform: skew(-25deg);
}







#navilists { margin-bottom: 6em; }

#pg_navi{padding: 0 30px;}

#pg_navi li {
position: relative;
display: inline-block;
width: 100%;
margin: 0.5em 0;
font-family: "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 700;
font-style: normal;
font-size: 1.8em;
}

#pg_navi li::before, #pg_navi li::after {
content: "";
position: absolute;
bottom: calc((100% - 10px) / 2);
right: 35px;
width: 3px;
height: 12px;
border-radius: 9999px;
background-color: #000000;
transform-origin: 50% calc(100% - 1px);
}
#pg_navi li::before {transform: rotate(45deg);}
#pg_navi li::after {transform: rotate(-45deg);}



#pg_navi li a{
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
#pg_navi li a:hover { background-color: #d0e9ff; }

.m_list {
display: flex;
align-items: stretch;
border: solid 2px #000;
border-radius: 0 2em 2em 0;
color: #000;
}

.m_list .mk_lef {
background-color: #000000;
color: #fff;
display: flex;
align-items: center;
padding: 0 0.3em;
font-family: "Poppins", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 1.5em;
}

.m_list .mk_righ {
position: relative;
width: 0;
height: 0;
border-style: solid;
border-color: transparent transparent transparent #000000;
border-width: 1.2em 0px 1.2em 0.5em;
}

.m_list .mk_righ::after {
content: "";
display: inline-block;
width: 50px;
height: 50px;
background-repeat: no-repeat;
background-image: url(images/mk_question.svg);
background-position: center;
background-size: contain;
position: absolute;
top: -1.7em;
right: -0.7em;
}



.m_list p {
margin: 0 2em 0 1em;
display: flex;
align-items: center;
line-height: 1.4em;
flex-wrap: wrap;
}
.m_list p strong { background: linear-gradient(transparent 50%, #fbee01 10%);}

.m_list p,
.m_list p strong{
font-family: "Noto Sans JP", serif !important;
font-optical-sizing: auto;
font-weight: 900;
font-style: normal;
}

.m_list .mk_lef,
#pg_navi li::before,
#pg_navi li::after{background-color: #1e90ff;}
.m_list{border-color: #1e90ff;}
.m_list .mk_righ {border-color: transparent transparent transparent #1e90ff;}


#pg_navi li:nth-child(n+4) .mk_lef,
#pg_navi li:nth-child(n+4)::before,
#pg_navi li:nth-child(n+4)::after{background-color: #2e64f8;}
#pg_navi li:nth-child(n+4) .m_list{border-color: #2e64f8;}
#pg_navi li:nth-child(n+4) .m_list .mk_righ {border-color: transparent transparent transparent #2e64f8;}


#pg_navi li:nth-child(n+7) .mk_lef,
#pg_navi li:nth-child(n+7)::before,
#pg_navi li:nth-child(n+7)::after{background-color: #004bc9;}
#pg_navi li:nth-child(n+7) .m_list{border-color: #004bc9;}
#pg_navi li:nth-child(n+7) .m_list .mk_righ {border-color: transparent transparent transparent #004bc9;}






section > div > h1 {
    background-color: #00348c;
    color: #fff;
    position: relative;
    margin: 1.5em 0 1em;
    padding: 0.6em 1em;
    line-height: 1.1em;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
    font-size: 3.4em;
}

section > div > h1 span{color:#f0b402;}

section > div > h1 .h1mk {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: normal;
    color: #fff;
    position: absolute;
    left: calc((100% - 50px) / 2);
    background-image: url(images/ttl_no_back.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
    text-align: center;
    display: inline-flex;
    width: 80px;
    height: 69px;
    font-size: 0.8em;
    align-items: center;
    justify-content: center;
    top: -0.8em;
}

section > div > h1 .h1mk::after {
    content: "";
    display: inline-block;
    width: 50px;
    height: 50px;
    background-repeat: no-repeat;
    background-image: url(images/mk_question.svg);
    background-position: center;
    background-size: contain;
    position: absolute;
    top: -0.8em;
    right: -0.6em;
}



.bkmenu {
position: relative;
display: block;
border: solid 4px #1e90ff;
padding: 1.2em;
border-radius: 4em;
text-decoration: none;
margin:0 auto;
color: #1e90ff;
text-align: center;
font-family: "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 700;
font-style: normal;
font-size: 2em;
max-width: 700px;
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

.bkmenu:hover{ background-color: #d0e9ff; }


.bkmenu::before, .bkmenu::after {
content: "";
position: absolute;
bottom: calc((100% + 10px) / 2);
right: 50px;
width: 3px;
height: 15px;
border-radius: 9999px;
background-color: #1e90ff;
transform-origin: 50% calc(100% - 1px);
}

.bkmenu::before {transform: rotate(135deg);}
.bkmenu::after {transform: rotate(-135deg);}

#question08 .bkmenu {margin-top: 80px;}

.cont_quest { padding-top: 80px; }

.cont_quest .content img {
margin: 0 auto 30px;
display: table;
max-width: 800px !important;
width: 100%;
}

.cont_quest .content a img { margin: 0 auto 80px; }
.cont_quest .sectn_ttl {
display: flex;
justify-content: space-between;
max-width: 800px;
margin: 0 auto 1em;
}

.cont_quest h2 {
font-size: 1.8em;
width: calc(100% - 80px);
font-weight: 900;
}
.cont_quest h2 span,
.cont_quest p span { background: linear-gradient(transparent 50%, #fbee01 10%);}

.cont_quest p {
max-width: 800px;
margin: 0 auto 60px;
line-height: 2em;
font-size: 1.5em;
text-align: justify;
font-feature-settings: "palt";
letter-spacing: 1px;
word-break: break-all;
font-weight: 800;
}

.cont_quest h3 {
position: relative;
padding: 0.5em;
color: #ffffff;
font-size: 2.4em;
font-weight: bold;
text-align: center;
width: 80%;
margin: 0 auto 1em;
line-height: 1em !important;
}

.cont_quest h3 span{ font-size: 0.7em }

.cont_quest h3::after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
z-index: -1;
}

.cont_quest h3::after {
background-image: linear-gradient(90deg, rgba(0, 52, 140, 1), rgba(0, 52, 140, 1));
transform: skew(-25deg);
}


#question01.cont_quest h3 span{
font-size: unset;
white-space: nowrap;
}







.cont_quest .g_ajst{
padding-left: 50px;
padding-right: 50px;
padding-bottom: 50px;
}

.cont_quest .g_sub {
display: table;
margin: -10px auto 80px;
text-align: center;
line-height: 1.4em;
font-size: 1.3em;
}
 
.fukidasi {
position: relative;
display: table;
margin: 0 auto 1em;
padding: 14px 20px;
border: 2px solid #1e90ff;
border-radius: 20px;
background-color: #1e90ff;
text-align: left;
font-size: 1.3em;
font-weight: 700;
line-height: 1em;
color: #ffffff;
}

.fukidasi::before {
content: "";
position: absolute;
bottom: 0;
left: 50%;
border-style: solid;
border-width: 13px 7px 0 7px;
border-color: #1e90ff transparent transparent;
translate: -50% 100%;
}

.fukidasi::after {
content: "";
position: absolute;
bottom: 0;
left: 50%;
border-style: solid;
border-width: 9.5px 4.8px 0 4.8px;
border-color: #1e90ff transparent transparent;
translate: -50% 100%;
}



.nex_step {
width: 0;
height: 0;
border-style: solid;
border-width: 34px 25px 0 25px;
border-color: #00348C transparent transparent transparent;
margin: 2em auto;
}

.qt_step {
background-color: #edf6ff;
padding: 40px;
text-align: center;
margin: 100px 0 2em;
}

.qt_step .step_no {
font-family: "Poppins", sans-serif;
font-weight: 600;
font-style: normal;
font-size: 4em;
color: #1e90ff;
letter-spacing: 0.2em;
display: table;
margin: -0.8em auto 0.6em;
}

.qt_step .step_no span {
color:#f19403;
}

.qt_step h4 {
font-size: 3em;
font-weight: 800;
color: #1e90ff;
line-height: 1.2em;
margin: 0;
}

.qt_step h4 span{ white-space: nowrap; }

.qt_step h4 + img{
display: table !important;
margin: 0 auto !important;
width: auto !important;
}


.qt_step ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0;
padding: 0;
}

.qt_step ul li {
width: 48%;
margin: 1%;
}

.qt_step a {
display: table;
margin: 0 auto;
}

.qt_step a + a { margin-top: 15px !important; }

.qt_step a img { margin: 0 !important; }

.qt_step p{
font-size: 2em;
margin-bottom: 30px;
}

#morecheck {
background-image: url(images/intro_bk.jpg);
background-repeat: no-repeat;
background-position: 50% 50%;
background-size: cover;
margin-top: -2.5em;
}

#morecheck ul {
padding: 0;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 60px 0 80px;
}
#morecheck li {
width: 48%;
margin: 1%;
}









/*         960px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 960px) {
.deco_l { top: 114.5vw; }
.deco_r { top: 91vw; }
#kv h1 { width: 100vw; height: 100vw; background-size: cover; }
#kv h1 img { margin-bottom: 13vw; }
} /* 960px */




/*         870px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 870px) {
#intro p { font-size: 1.5em;}
#pg_navi li { font-size: 1.5em; }
.cont_quest h3 { width: 95%; }
.link_ttl { font-size: 2rem; font-feature-settings: "palt";}
} /* 870px */




/*         768px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 768px) {

#intro p { font-size: 1.4em; margin: 1.5em 0; }
#navilists h3 { font-size: 6.2vw; width: 96%; }
#navilists h2 { font-size: 4.2vw; }
#navilists h2::before, #navilists h2::after { height: 4.4vw; }
.m_list .mk_righ::after { width: 5vw; height: 5vw; }
section > div > h1 { font-size: 2.7em; }
section > div > h1 .h1mk { width: 65px; height: 60px; }
section > div > h1 .h1mk::after { width: 45px; height: 45px; }
.cont_quest h2 { font-size: 1.5em; }
.cont_quest p { font-size: 1.3em; }
.bkmenu { padding: 1em; }
.qt_step h4 { font-size: 2.3em; }
#pg_navi { padding: 0 10px; }
#pg_navi li { font-size: 3.1vw; }
.cont_quest .g_sub { font-size: 2.7vw; }

} /* 768px */



/*         715px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 768px) {
.ttlong br{display:block;}
.link_ttl.ttlong::before, .link_ttl.ttlong::after {position: absolute;top: 2rem;height: 4rem;content: ''; }
} /* 715px */



/*         640px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 640px) {
.bkmenu { padding: 1em; font-size: 4.8vw;}
.bkmenu::before, .bkmenu::after { right: 7vw; height: 12px; }
} /* 640px */


/*         460px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 460px) {

.cont_quest p { margin: 0 auto 30px; font-size: 1em; line-height: 1.7em;}
section .content { padding: 0 20px; }
#pg_navi { padding: 0px; }
#pg_navi li { font-size: 4.1vw; }
.m_list .mk_righ { border-width: 1.5em 0px 1.5em 0.5em; }
.m_list p { margin: 0 1.5em 0 0.5em; letter-spacing: -0.4px; font-feature-settings: "palt"; }
#pg_navi li::before, #pg_navi li::after { right: 23px; }
.m_list .mk_righ::after { width: 7vw; height: 7vw; top: -2.1em; }
#navilists h2 { padding: 1rem 1em 0.3rem 1em; font-size: 4.5vw; }
#navilists h2::after { border-right: solid 2px; }
#navilists h2::before { border-left: solid 2px; }
#intro p { font-size: 4.6vw; margin: 1em 0; }
#navilists { padding-top: 40px; margin-bottom: 2em; }
section > div > h1 { font-size: 1.6em;padding: 0.7em 0.2em; }
section > div > h1 .h1mk { width: 50px; height: 43px; top: -1.2em; }
section > div > h1 .h1mk::after { width: 30px; height: 30px; }
.cont_quest h2 { font-size: 1.2em; width: 100%; margin-top:0px; margin-left: 10px; }
.cont_quest .sectn_ttl div { width: 60px; }
.cont_quest h3 { font-size: 1.6em; }
.cont_quest .g_sub { margin: -10px auto 50px; }
.link_ttl { font-size: 4.7vw; }
.link_ttl::before, .link_ttl::after { height: 1.6em; top: 0.9rem; }
.link_ttl::before { border-left: solid 2px; }
.link_ttl::after { border-right: solid 2px; }
.link_ttl.ttlong::before, .link_ttl.ttlong::after { height: 2.4rem; }
.cont_quest .content a img { margin: 0 auto 10px; }
.cont_quest .bkmenu { margin-top: 2em; }
.qt_step { padding: 40px 10px; margin: 40px 0 2em; }
.qt_step .step_no { font-size: 2.5em; margin: -1.2em auto 0.6em; }
.fukidasi { padding: 9px 20px; border-radius: 13px; font-size: 1em;}
.qt_step h4 { font-size: 1.6em; font-feature-settings: "palt"; }
.last_box { margin-top: 40px; }
#morecheck { margin-top: -1.6em; }
#morecheck ul { margin: 30px 0 50px; }
.p_only{margin-bottom: 0 !important;}


} /* 460px */

/*         380px
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー*/
@media screen and (max-width: 380px) {
.qt_step h4 { font-size: 1.2em; }
.qt_step ul,#morecheck ul { display: block; }
.qt_step ul li,#morecheck li { width: auto; margin-bottom: 1em; }
} /* 380px */















