@charset "utf-8";
/*
font-family: source-han-serif-japanese, serif;
font-family: source-han-sans-cjk-ja, sans-serif;
*/
html {
		font-family: source-han-sans-cjk-ja, sans-serif;
    background: #fff;
}
.inner {
    max-width: 750px;
    width: 100%;
}
body {
    background: #fff;
    color: #362e2b;
    min-width: auto;
    margin: 0 auto;
    max-width: 750px;
}

header {
    background: #E4E3E1;
}

.marker {
		background: linear-gradient(transparent 60%, rgba(249, 240, 78, 0.8) 60%);
}
.yellow {
    color: #ffff00;
}
.red {
    color: #fc4761;
}

.bloc {
	padding: 2em;
    margin: 0;
}

.bloc p {
    text-align: left;
    font-size: 1.3em;
    line-height: 1.8;
}

.img_bloc p {
    margin: 0 0 3em 0;
}

.tokuten_bloc {
	padding: 1em 0 2em 0;
}

.tokuten_bloc p:not(:last-child) {
	margin: 0 0 1.5em 0;
}

.shindan_bloc {
	padding: 1em 0 2em 0;
}


.step_bloc {
	padding: 1em 0 2.5em;
}

.step_bloc p {
	margin: 0 0 1em 0;
}

.shop_bloc {
	padding: 1em 2em 2.5em;
}

.shop_bloc p {
    text-align: left;
    font-size: 1.4em;
    line-height: 1.8;
    margin: 0 0 1.5em 0;
}

.tenpo_bloc {
    padding: 1em 2em 0;
}

.tenpo_bloc p {
    margin: 0 0 1.5em 0;
}

.tenpo_box {
    margin: 0 0 3em;
    padding: 1.5em 1em;
    background-color: #E50012;
    border-radius: 30px;
}

.tenpo_box .in_box {
    padding: 2em 1.8em .5em;
    background-color: #FFFFFF;
    border-radius: 30px;
}

.tenpo_box h3 {
    font-size: 2.6em;
    font-weight: bold;
    margin: 0 0 .6em;
    line-height: 1em;
    color: #FFFFFF;
}

.tenpo_box p {
    font-size: 1.2em;
    text-align: left;
	margin: 1.5em 0;
}

.tenpo_box figure {
    text-align: center;
    margin: 1em 0;
}

.tenpo_box ul {
max-width: 570px;
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
margin: 0;
padding: 0;
box-sizing: border-box;
}

.tenpo_box li {
list-style-type: none;
margin: 0;
padding: 0;
}

.page .bottom_bloc {
    background-color: #E4E4E4;
	padding: 2em 0 0;
    margin: 0;
}

.page .bottom_bloc p {
    text-align: left;
    font-size: 1em;
    line-height: 1.8;
}

.thanks_page .bottom_bloc {
    background-color: #E4E4E4;
	padding: 2em;
    margin: 0;
}

.thanks_page .bottom_bloc p {
    text-align: left;
    font-size: 1em;
    line-height: 1.8;
    text-indent: -1em;
    padding-left: 1em;
}

.back_g {
    background-color: #E4E4E4;
}


#top header {
		background:#009a44;
}
#top header .inner p {
    color: #fff;
    text-align: center;
    font-size: 24px;
    padding: 0.3em;
}

.mv {
    box-sizing: border-box;
}
.mv .inner {
    width: 100%;
    height: 100%;
    padding: 2em 1em;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
    background: url(../images/bg_mv.png) no-repeat right center;
}
.mv_content {
    width: 100%;
    align-items: flex-end;
    justify-content: space-between;
}





.mv_bloc {
    width: 60%;
		text-align: left;
    margin-bottom: 1em;
}
.mv_bloc .sub {
    display: block;
    margin-bottom: 0.5em;
}
.mv_bloc p {
    font-size: 54px;
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 0.2em;
}
.mv_bloc p em {
    color: #f72884;
    border-bottom: solid 3px #f72884;
    font-style: normal;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
}
.mv_bloc p .mini {
		font-size: 36px;
}



.mv_bloc h1 {
    color: #02cbfd;
    font-size: 48px;
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 0.4em;
}
.mv_bloc h1 em {
    font-style: normal;
    color: #fff;
    display: inline-block;
    font-size: 82px;
    line-height: 1.2em;
    margin-right: 0.1em;
}
.mv_bloc h1 em span {
    display: block;
    background: #f39b29;
    padding: 0 0.2em 0.1em;
}
.mv_bloc h1 em span + span {
		margin-top: 0.1em;
    display: inline-block;
}

.mv_bloc dl {
    font-size: 21px;
    line-height: 1.2em;
    font-weight: bold;
    align-items: center;
    justify-content: center;
    margin: 0;
}
.mv_bloc dl dt {
    background: #000;
    color: #fff;
    padding: 0.2em 0.5em 0.3em;
}
.mv_bloc dl dd {
		text-align: left;
    margin: 0 0 0 0.5em;
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}


.mv_bloc p {

}
.mv_bloc figure {

}

.mv_banner {

}
.mv_banner p {
    text-align: right;
}

.mv_bottom {
    background: #000;
    color: #fff;
    padding: 0.5em 0 0.6em;
}
.mv_bottom p {
    font-size: 36px;
    line-height: 1.2em;
    font-weight: bold;
}


.top_sec01 {
    padding: 2em 0;
}

.main_title {

}
.main_title .sub {
    display: block;
    margin-bottom: 0.5em;
}
.main_title p {
    font-size: 30px;
    line-height: 1.4em;
    font-weight: bold;
    margin-bottom: 0.5em;
}
.main_title h2 {
    font-size: 60px;
    line-height: 1.2em;
    font-weight: 900;
    display: inline-block;
}
.main_title h2.title {
    font-size: 48px;
    line-height: 1.2em;
    font-weight: 900;
    margin-bottom: 0;
    border: none;
}
.main_title h2.title em {
    font-style: normal;
}







.limited_bloc {
    margin-top: 1em;
}

.limited_bloc dl {
    font-size: 21px;
    line-height: 1.2em;
    font-weight: bold;
    align-items: center;
    justify-content: center;
    margin: 0 0 1em;
}
.limited_bloc dl dt {
    background: #000;
    color: #fff;
    padding: 0.2em 0.5em 0.3em;
}
.limited_bloc dl dd {
    text-align: left;
    margin: 0 0 0 0.5em;
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}



.limited_bloc p {
    font-size: 18px;
    line-height: 1.2em;
}
.limited_bloc p + p {
		margin-top:0.5em
}
.limited_bloc p .mini {
    font-size: 16px;
    line-height: 1.2em;
    display: block;
}
.limited_bloc figure {
    margin-top: 2em;
    margin-bottom: 2em;
}
.limited_bloc ol {
		display: inline-block;
}
.limited_bloc ol li {
    font-size: 18px;
    line-height: 1.2em;
    position: relative;
    text-align: left;
    padding-left: 1em;
}
.limited_bloc ol li + li {
		margin-top:0.5em;
}
.limited_bloc ol li .num {
    position: absolute;
    top: 0;
    left: 0;
}

.top_sec02 {
    padding: 2em 0;
}
.top_sec02 h2 {
		margin-bottom:1em;
}
.top_sec02 ol {

}
.top_sec02 ol li {
		font-size: 14px;
    line-height: 1.2em;
    position: relative;
    text-align: left;
    padding-left: 1em;
}
.top_sec02 ol li + li {
		margin-top:0.5em;
}
.top_sec02 ol li .num {
    position: absolute;
    top: 0;
    left: 0;
}

.privacy {
    margin-top: 2em;
    margin-bottom: 2em;
}
.privacy h2 {
    color: #e51546;
    font-size: 31px;
    line-height: 1.4em;
    margin-bottom: 0.5em;
}
.privacy p {
    font-size: 20px;
    line-height: 1em;
}
.privacy p a {
		color: #000;
    text-decoration: underline;
    cursor: pointer;
}


.btn_section {
    padding: 0 0 3em;
}
.btn_section a {
		color:#e51546;
}


.btn_section ul {

}
.btn_section ul li {

}
.btn_section ul li + li {
		margin-top:1em;
}

footer {
    background: #181E1F;
    color: #fff;
    padding: 1em 0 0.5em;
}
footer .foot_text {

}
footer .foot_text p {
    font-size: 16px;
    line-height: 1.4em;
}
footer .copy {
    padding: 10px 0;
}
footer .copy small {
    font-size: 14px;
    line-height: 1;
    display: block;
    color: #FFFFFF;
}

.page .main_title {
		padding: 2em 0 0;
}

.question {
    background: #E4E3E1;
    padding: 0 0 2em;
}


.question_figure {
    padding: 2em 2em 0;
}
.question_figure figure {

}


.question_bloc {
    padding: 3em 3em 0;

}

.question_bloc p {
    margin: 0 0 2em 0;

}

.question_title {
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 2em;
}
.question_image {
    margin-bottom: 2em;
}
.question_title .num {
    color: #0a7982;
    font-size: 40px;
    line-height: 1em;
    font-weight: 900;
    display: inline-block;
    border-bottom: solid 2px #0a7982;
    margin-bottom: 0.5em;
}
.question_title .num em {
    font-size: 100px;
    line-height: 1;
    font-style: normal;
    font-family: 'bebas-neue';
    margin-left: 0.1em;
}



.question_title h2 {
    text-align: left;
    font-size: 2em;
    line-height: 1.2em;
    font-weight: 900;
    flex: 1 0 0%;
}

.question_item {
    margin-bottom: 2em;
}

.question_item label {
		background: #fff;
    width: 100%;
    display: block;
    border: solid 1px #d0d2d2;
    border-radius: 0.5em;
    padding: 1em 1em 1em;
    box-sizing: border-box;
    text-align: left;
    cursor: pointer;
}
.question_item label:hover {
    background: #0a798133;
}
.question_item label + label{

}
.question_item label:nth-child(n+2) {
		margin-top: 1em;
}
.radio-input {
    display: none;
}
.radio-parts {
    display: block;
    padding-left: 42px;
    position: relative;
    line-height: 1.2em;
    font-size: 28px;
    font-weight: 700;
}
.radio-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -12px;
    width: 24px;
    height: 24px;
    border: 1px solid #999;
    border-radius: 50%;
    background: #fff;
}
.radio-input:checked + .radio-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 5px;
    width: 16px;
    height: 16px;
    margin-top: -7px;
    background: #000;
    border-radius: 50%;
}

0a7981

.question_button {
    margin-top: 2em;
}
.question_button ul {
    align-items: center;
    justify-content: space-between;

}
.question_button ul.center {
    align-items: center;
    justify-content: center;
}
.question_button ul li {

}
.question_button ul li + li {

}
.question_button button {
    border: none;
    background: none;
    padding: 0;
    margin: 0;
}

.next2 {
    filter: drop-shadow(2px 2px 5px #df5333);
}




.question_05_bloc {
    background: #fff;
}
.question_05_image {

}
.question_05_image img + img {
    margin-top: 1em;
}
.question_05_bloc dl {
    padding: 1em;
    margin: 0;
}
.question_05_bloc dl dt {
    font-size: 36px;
    font-weight: 900;
    text-align: left;
}
.question_05_bloc dl dd {
    margin: 0;
    font-size: 28px;
    line-height: 1.4em;
    text-align: left;
}




.question_07_bloc {
    background: #fff;
}
.question_07_image {

}


.regist_message {
    background: #f72884;
    color: #fff;
    padding: 1em;
    margin-top: 2em;
    margin-bottom: 2em;
}
.regist_message p {
		font-size: 30px;
    line-height: 1.2em;
    display: block;
    font-weight: 900;
}

.thanks_bloc {

}
.thanks_bloc h2 {
    margin-bottom: 1em;
}
.thanks_tel {
		display: inline-block;
    margin-bottom: 1em;
}
.thanks_bloc p {
    font-size: 18px;
    line-height: 1.4em;
    margin-bottom: 1em;
}
.tel_box {
    align-items: center;
    justify-content: center;
}
.tel_box figure {
    margin-right: 1em;
}
.tel_box a {
    color: #000;
    text-decoration: none;
    font-size: 54px;
    line-height: 1;
    font-weight: bold;
}



#Contact {
    padding: 1em 1em 2em;
    background: #fff;
}
#Contact h2 {
    font-size: 2em;
    margin-bottom: 1em;
}




.attention_bloc {
    margin-bottom: 2em;
}
.attention_bloc h3 {
    font-size: 20px;
    font-weight: 900;
    margin-bottom: 0.5em;
}
.attention_bloc p {
    text-align: left;
}
#Contact .contact_bloc {
    padding: 2em;
}
#Contact .contact_bloc dl {
    margin: 0;
    align-items: center;
}
#Contact .contact_bloc dl + dl {
		margin-top:1em;
}
#Contact .contact_bloc dl:nth-child(odd) {

}
#Contact .contact_bloc dl:last-child {

}
#Contact .contact_bloc dl dt {
width: 100%;
    text-align: left;
    position: relative;
    align-items: center;
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 24px;
}

#Contact .contact_bloc dl dt.required {

}
#Contact .contact_bloc dl dt.required:after {
    content: "必須";
    display: inline-block;
    background: #ac2424;
    color: #fff;
    font-size: 18px;
    line-height: 1em;
    padding: 5px 5px;
}

#Contact .contact_bloc dl dd {
    margin: 0;
    width: 100%;
    text-align: left;
    position: relative;
    box-sizing: border-box;
    font-size: 36px;
}

#Contact .contact_bloc dl dd + dd {
		margin-top:0.5em;
}

#Contact .contact_bloc .dl_bloc {
	
}
#Contact .contact_bloc .btn_bloc {
    margin-top: 4em;
}
#Contact .btn_bloc input[type="submit"] {
    color: #fff;
    text-decoration: none;
    width: 420px;
    height: 80px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 0 #b10a11;
    background: #f83e37;
    border: none;
    font-size: 20px;
}
#Contact .btn_bloc input[type="submit"]:hover {
    box-shadow: none;
    transform: translate3d(0, 6px, 0);
    background: rgba(253, 42, 0, 0.8);
}


.radio_wrap.flex {
    align-items: flex-start;
    justify-content: flex-start;
}
.radio_wrap.flex > * + * {
    margin-left: 1em;
}


.contact_name {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_kana {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_age {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_mail {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_tel {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_zip {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_message {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}

input[name="zip1"] {
    width: 3em;
}
input[name="zip2"] {
    width: 4em;
}
input[name="address2"] {
    margin-top:0.5em;
}


select[name="pref"] {
    width: auto;
}

.contact_address {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 100%;
    background: #eeeeee;
}
.contact_desc {
		width: 100%;
    padding: 5px 10px;
    box-sizing: border-box;
		border: solid 1px #b5b5b5;
}


.contact_time {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
		width: 40%;
    background: #eeeeee;
}

.contact_sex {
    padding: 5px 10px;
    box-sizing: border-box;
		border: solid 1px #b5b5b5;
}
.contact_pref {
    padding: 5px 10px;
    box-sizing: border-box;
		border: solid 1px #b5b5b5;
}

select {
    padding: 10px 10px;
    box-sizing: border-box;
    border: solid 1px #b5b5b5;
    background: #eeeeee;
}

.btn_bloc {
    margin: 0em 0 2em;
}
.btn_bloc p {
		margin-bottom:1em;
}
.btn_bloc ul {
		align-items: center;
    justify-content: center;
}
.btn_bloc ul li {
    width: 38%;
}
.btn_bloc ul li + li {
    margin-top: 0;
    margin-left: 1em;
}
.btn_bloc button {
		border: none;
    margin: 0;
    padding: 0;
    background: none;
}

#Contact.confirm .contact_bloc dl {
		border-bottom: solid 1px #c7c7c6;
}
#Contact.confirm .contact_bloc dl dd {
    font-size: 28px;
    color: #a0a0a0;
}

.line_btn {

}
.line_btn p {
    line-height: 1.4em;
    margin-top: 1em;
}


.privacy_sec {

}
.privacy_sec h1 {
		background: #000;
    color: #fff;
    font-size: 21px;
    padding: 0.5em;
}
.privacy_bloc {
	padding: 1em;
}
.privacy_bloc .upper {
    margin-bottom: 1em;
}
.privacy_bloc .upper p {
    font-size: 21px;
    line-height: 1.4em;
    text-align: left;
}

.privacy_item_wrap {

}
.privacy_item {

}
.privacy_item + .privacy_item {
    margin-top: 1em;
}
.privacy_item h2 {
    font-size: 24px;
    line-height: 1.2em;
    text-align: left;
    border-bottom: solid 1px #000;
    margin-bottom: 0.3em;
    padding-bottom: 0.3em;
}
.privacy_item p {
		font-size: 18px;
    line-height: 1.4em;
    text-align: left;
}
.privacy_item p + ul {
		margin-top:0.5em;
}
.privacy_item ul {

}
.privacy_item ul li {
    position: relative;
 		font-size: 18px;
    line-height: 1.4em;
    text-align: left;
    padding-left: 1em;
}
.privacy_item ul li + li {

}
.privacy_item ul li:before {
		content:"・";
		position:absolute;
		top:0;
		left:0;
}

.thanks_page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.thanks_page footer {
  margin-top: auto;
}

.last_bloc {

}

.modal_content {

}
.modal_content h3 {

}
.modal_content p {
    font-size: 18px;
    line-height: 1.4em;
    text-align: left;
}






@media screen and (max-width: 768px) {
html {

}
body {
		-webkit-text-size-adjust: none;	
}
    
.shindan_bloc {
	padding: 1em 1em 2em;
}
    
.tokuten_bloc {
	padding: 1em 1em 2em;
}
    
.step_bloc {
	padding: 1em 1em 2.5em;
}

.step_bloc p {
	margin: 0 0 1em 0;
}

.shop_bloc {
	padding: 1em 1em 2.5em;
}

.shop_bloc p {
    width: 90%;
    font-size: 28px;
    line-height: 1.8;
    margin: 0 auto 1.5em;
}

.tenpo_bloc {
    padding: 1em 1em 0;
}

.tenpo_bloc p {
    margin: 0 0 1.5em 0;
}

.tenpo_box {
    margin: 0 0 3em;
    padding: 1.5em 1em;
    border-radius: 30px;
}

.tenpo_box .in_box {
    width: 100%;
    padding: 2em 1.8em .5em;
    border-radius: 30px;
    box-sizing: border-box;
}

.tenpo_box h3 {
    font-size: 36px;
    font-weight: bold;
    margin: 0 0 .6em;
    line-height: 1em;
    color: #FFFFFF;
}

.tenpo_box p {
    width: 90%;
    font-size: 24px;
    line-height: 1.5;
    text-align: left;
	margin: 1em auto;
}

.tenpo_box ul {
max-width: 90%;
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
margin: 0 auto;
padding: 0;
box-sizing: border-box;
    gap: .5em;
}

.tenpo_box li {
list-style-type: none;
margin: 0;
padding: 0;
}


.page .bottom_bloc {
	padding: 0;
    margin: 0;
}

.page .bottom_bloc p {
    font-size: 12px;
    line-height: 1.8;
}

.thanks_page .bottom_bloc {
	padding: 2em 2em;
}

.thanks_page .bottom_bloc p {
    text-align: left;
    font-size: 16px;
    line-height: 1.5;
}

.mv {
    height: auto;
    background-position: right 34% top;
    background-size: cover;
}
.mv .inner {
    padding: 1em;
    box-sizing: border-box;
    background-size: 44%;
}


.mv_upper ul li {
		font-size: 18px;
    line-height: 1em;
    font-weight: 900;
    border: solid 1px #02cbfd;
    padding: 0.1em 0.3em 0.2em;
}
.mv_upper p {
    font-size: 12px;
    line-height: 1.4em;
    text-align: left;
}
.mv_content {
    position: relative;
}
.mv_bloc {
    width: 84%;
    margin-bottom: 0;
}
.mv_bloc .sub {
    display: block;
    width: 64%;
}
.mv_bloc p {
    font-size: 18px;
    text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
}
.mv_bloc p .mini {
    display: inline-block;
    font-size: 16px;
    margin-top: 0.5em;
}
.mv_bloc h1 {
    font-size: 24px;
}
.mv_bloc h1 em {
    display: block;
    font-size: 30px;
    line-height: 1.2em;
}
.mv_bloc h1 em span {
    display: inline-block;
}
.mv_bloc dl {
    width: 80%;
    font-size: 10px;
}
.mv_bloc dl dt {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-left-radius: 0;
    width: 100%;
    box-sizing: border-box;
}
.mv_bloc dl dd {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    padding: 0.5em 0.5em 0.6em;
    width: 100%;
    box-sizing: border-box;
}
.mv_banner {
    width: 20vw;
    position: absolute;
    bottom: 0;
    right: 0;
}
.mv_banner p {

}

.mv_bottom p {
    font-size: 18px;
}


.main_title .sub {
    width: 50%;
    margin: 0 auto 0.5em;
}



.question_figure {
    margin-top: 0;
}
.question_button ul li {
    width: 49%;
}
.question_figure figure + figure {
    padding: 0 1em;
}
.btn_bloc ul li + li {
    margin-left: 3%;
}
.btn_bloc ul li {
    width: 47%;
}
.top_sec01 {
    padding: 1em;
}
.main_title p {
    font-size: 12px;
    text-align: center;
}
.main_title h2 {
    font-size: 20px;
}


.main_title h2.title {
    font-size: 18px;

}
.main_title h2.title em {
    display: block;
    font-size: 24px;
}


.limited_bloc {
    margin-top: 1em;
}
.limited_bloc p {
    font-size: 14px;
    line-height: 1.2em;
    text-align: left;
}
.limited_bloc p .mini {
    font-size: 12px;
    text-align: center;
}
.limited_bloc figure {
    margin-top: 1em;
    margin-bottom: 1em;
}

.limited_bloc dl {
    font-size: 12px;
}
.limited_bloc dl dt {
    margin-bottom: 0.5em;
}



.limited_bloc ol li {
    font-size: 12px;
}
.limited_bloc p .text span {
    font-size: 12px;
}


.btn_section {

}
    
.btn_section .inner {
    padding: 0 1em;
}

.top_sec02 {
    padding: 1em;
}
.top_sec02 ol li {
    font-size: 12px;
}

.privacy {

}
.privacy h2 {

}

.privacy .privacy_box {
    margin: 0;
}
.privacy .privacy_box p {

}


footer {
    padding: 1em 0 0.5em;
}
footer .foot_text p {
    font-size: 16px;
    line-height: 1.4em;
}
footer .copy small {
    font-size: 10px;
    line-height: 1;
    display: block;
}
footer .copy {
    padding: 10px 0;
    margin: 0;
}



.page .main_title {
    padding: 1em;
    box-sizing: border-box;
    height: auto;
}
.page .main_title h1 .sub {
    font-size: 12px;
    display: block;
}
.page .main_title h1 .main {
    font-size: 21px;
}


.question_bloc {
    padding: 1em;
    box-sizing: border-box;
}
.question_item label {
    width: 100%;
}
.question_title .num {

}
.question_title h2 {

}
.radio-parts {
    font-size: 36px;
}
.question_item label + label {
    margin-top: 1em;
}

.question_button {
    margin-top: 2em;
    margin-bottom: 2em;
}
.question_title {

}

.regist_message p {
    font-size: 15px;
}
.regist_message {
    margin-top: 0;
    margin-bottom: 1em;
}

#Contact.confirm .contact_bloc dl dd {
    color: #a0a0a0;
}

.page {
    padding-bottom: 0;
    position: relative;
    height: 100%;
    box-sizing: border-box;
}


.thanks_bloc p {
    font-size: 12px;
}
.thanks_bloc h2 {
    width: 30%;
    margin: 0 auto 1em;
}
.tel_box a {
    font-size: 30px;
}
.tel_box figure {
    width: 30px;
    margin-right: 0.5em;
}



body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.question {
  flex: 1;
}





}
