@charset "UTF-8";
/*********************************

_main.scss

*********************************/
/*******************

_common.scss

*******************/
@import url("http://fonts.googleapis.com/earlyaccess/sawarabimincho.css");
.green--bg { background-color: #009E38; }

.error { color:  #B70000; margin-top: 10px; margin-bottom: 10px; font-size: 95%; }

.blue--bg { background-color: #00A0E9; }

.btn__wrapper { text-align: center; }

.btn__default { margin: 0 auto; padding: 15px 10px; width: 280px; display: inline-block; color: #fff; font-weight: 600; border-radius: 8px; border: none; font-size: 16px; line-height: 1.2; background-color: #00A0E9; position: relative; cursor: pointer; -webkit-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear; }
.btn__default.green { background-color: #009E38; }
.btn__default.btn__back { margin: 0 15px 0 auto; padding: 15px 10px 15px 24px; }
.btn__default.btn__back:after { transform: rotate(180deg); right: auto; left: 20px; }
.btn__default.btn__submit { padding: 15px 24px 15px 10px; }
.btn__default.btn__back, .btn__default.btn__submit { width: 180px; }
.btn__default:hover { opacity: 0.8; }
.btn__default:after { margin: auto; content: ''; position: absolute; top: 0; right: 20px; bottom: 0; left: auto; width: 20px; height: 19px; background-image: url("./../img/common/double-arrow-right.png"); background-size: 20px auto; background-repeat: no-repeat; }

/*センタリング*/
.center { text-align: center; display: block; margin: 0 auto; }

.tac { text-align: center; }

.vam { vertical-align: middle; }

/*文字詰め*/
.ls1 { letter-spacing: -1px; }

.ls2 { letter-spacing: -2px; }

.ls3 { letter-spacing: -3px; }

.ls4 { letter-spacing: -4px; }

.ls5 { letter-spacing: -5px; }

/*オブジェクトの表示非表示*/
.db { display: block; }

.dn { display: none; }

/*簡易float*/
.fl { float: left; }

.fr { float: right; }

/*テキストの最初の文字を1文字分下げる*/
.ti1 { text-indent: 1em; }

/*フォント装飾*/
.fz20 { font-size: 20px; }

.fwb { font-weight: bold; }

/*確認用*/
.bd { border: 1px solid #000; }

.bg { background: #0203de; }

/* base css */
/*--------------------------------------
	Block-level Elements
--------------------------------------*/
* { box-sizing: border-box; }

html, div, p, li, dl, dt, dd, blockquote, td, form, address { margin: 0; padding: 0; }

h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; font-style: normal; font-weight: bold; font-size: 100%; line-height: 1.4; }

ul, ol { margin: 0; padding: 0; list-style-type: none; }

caption, th { margin: 0; padding: 0; font-style: normal; font-weight: normal; text-align: left; }

body { margin: 0; padding: 0; font-size: 14px; line-height: 1; font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif; }

table { border-collapse: collapse; border-spacing: 0; font-size: 100%; line-height: inherit; }

.form__section { margin: 20px auto 0; }

.form__item { margin: 20px auto 0; }
.form__item:not(:first-of-type) { margin-top: 40px; }
.form__item .question__item h3 { font-size: 28px; font-weight: bold; line-height: 1.2; }
.form__item .question__item h3 span { font-weight: bold; }
.form__item .input__row__wrapper { margin: 10px auto 0; }
.form__item .input__row__wrapper .input__row label { font-size: 28px; font-weight: normal; }

/*Colors*/
.c-red-01 { color: #ff0000 !important; }

.c-red-02 { color: #d00 !important; }

/*Forms*/
.question-01-other { margin-top: 8px; display: none; }
.question-01-other p { margin-bottom: 4px; line-height: 1.5; }

.label-col-02 label { display: inline-block !important; width: 48%; }

.label-col-03 label { display: inline-block !important; width: 33%; }

.label-col-04 label { display: inline-block !important; width: 25%; }

.txt-field input { width: 50% !important; display: block; }
.txt-field input:not(:first-child) { margin-top: 8px; }

/*Forms*/
.grey-long-btn { margin: 40px auto; padding: 6px; min-width: 580px; font-size: 16px; line-height: 2.25; letter-spacing: 0.40em; color: #c0c0c0; text-align: center; border: 1px solid #c0c0c0; border-radius: 10px; display: inline-block; }

.btn { margin: 0 auto; display: block; width: 314px; -webkit-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear; }
.btn:hover { opacity: 0.8; cursor: pointer; }

/*--------------------------------------
	Inline Elements
--------------------------------------*/
input, select, textarea { padding: 0.3em; color: #000; font-size: 16px !important; font-family: "Noto Sans", "Noto Sans CJK JP", sans-serif !important; }

img { vertical-align: bottom; border: none; -webkit-backface-visibility: hidden; }

/*--------------------------------------
	Hypertext
--------------------------------------*/
a { color: #d00; text-decoration: none; -webkit-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear; }

a:hover { opacity: 0.8; }

/*----------------------------------------------------------
	body , container, footer , common
----------------------------------------------------------*/
body { color: #000; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; background: #fff; }

/* common */
a:hover img { opacity: 0.5; filter: alpha(opacity=50); -ms-filter: "alpha( opacity=50 )"; background: none; }

.t_red { color: #d00; }

/* footer */
.footer { padding: 20px 0; text-align: center; background: #fff; }
.footer small { font-size: 10px; color: #000; line-height: 2; letter-spacing: 0.06em; }

/* extra */
.check_attention_text { color: #d00; font-weight: bold; margin-bottom: 0.6em; }

/*
.under_gray_color {
	background: #ccc;
}
*/
/* container */
.container { width: 100%; margin: 0 auto; text-align: left; }

/* button_info */
.button_info { text-align: center; margin-bottom: 3em; }

.button_info h2 { font-size: 143%; margin-bottom: 0.1em; }

/* aproach */
.aproach { width: 100%; text-align: center; padding: 1em 0; background: url(./../img/top/bg_aproach.png); }

/* outline */
.outline .outline_box { width: 890px; margin: 0 auto; }

.outline .outline_box h2 { font-size: 129%; font-weight: bold; text-align: center; color: #d00; margin-bottom: 1.5em; }

.outline .outline_box h3 { margin-bottom: 2em; padding: 0.6em 0 0.6em 1em; font-size: 18px; font-weight: bold; letter-spacing: 0.11em; color: #fff; background: url(./../img/top/bg_outline_box_h3.png) no-repeat top right #000; }

.outline_detail { background: #fff; height: 450px; margin-bottom: 2em; padding: 2em; overflow-y: scroll; overflow-x: hidden; }

.outline_detail h4 { font-size: 129%; font-weight: bold; margin-bottom: 0.9em; padding: 0.08em 0 0 1.5em; background: url(./../img/top/bg_outline_box_h4.png) repeat-x; }

.outline_detail ul, .outline_detail li { margin-bottom: 1em; line-height: 1.4; }

.outline_detail p { margin-bottom: 1em; margin-left: 1em; line-height: 1.5; }

.outline_detail ul { margin-left: 1em; }

.outline_detail li { padding-left: 1em; text-indent: -1em; }

/*--------------------------------------
	media query
--------------------------------------*/
@media screen and (min-width: 641px) and (max-width: 959px) { .aproach { width: 100%; min-width: 890px; }
  .outline { width: 100%; min-width: 890px; }
  .outline_detail { width: 80%; margin-left: auto; margin-right: auto; }
  .footer { width: 100%; } }
@media screen and (max-width: 640px) { .container { /*padding: 0 20px;*/ width: 100%; }
  .container img { width: 100%; }
  .grey-long-btn { min-width: auto; width: 80%; }
  .button_info { margin-bottom: 1em; }
  .button_info h2 { font-size: 100%; }
  .button_info img { width: 60%; }
  .flow { text-align: center; margin-bottom: 1em; }
  .flow h3 { font-size: 100%; }
  .aproach { width: 100%; padding: 0.5em 0; }
  .aproach img { width: 40%; }
  .outline .outline_box { width: 100%; }
  .outline .outline_box h2 { font-size: 115%; }
  .outline .outline_box h3 { font-size: 100%; }
  .outline_detail { width: 80%; height: 300px; margin-left: auto; margin-right: auto; padding: 0em; -webkit-overflow-scrolling: touch; }
  .outline_detail h4 { font-size: 100%; padding: 0.4em 0 0.4em 0.5em; }
  .footer { width: 100%; } }
/* form */
* { box-sizing: border-box; }

#form_content { width: 890px; }

.form__wrapper { margin: 0 auto; }

#consent_check { margin-bottom: 20px; }

#form_content table { margin-bottom: 50px; width: 100%; }

#form_content table td, #form_content table th { border: 1px solid #ccc; padding: 1em; }

#form_content table th { background: #e8e8e8; color: #333; font-weight: bold; line-height: 1.4; }

#form_content #question_tbl th, #form_content #question_tbl td { display: block; margin-top: -1px; }

#form_content #question_tbl th:first-letter { margin-left: -1.25em; }

#form_content #question_tbl th.question_tbl_left { padding-left: 1.3em; }

#form_content #question_tbl th .required_red { background: #e8e8e8; color: #d00; font-weight: bold; line-height: 1.4; }

#form_start_wrap { position: relative; width: 358px; height: 65px; }

#form_content table th .required { color: #f00; font-size: 86%; font-weight: bold; display: block; float: right; }

#form_content table td label { display: inline-block; margin-bottom: 8px; }

#form_content table td input[type=text], #form_content table td textarea { border: 1px solid #ccc; /*font-size: 1.2em;*/ /*padding: 0.5em;*/ }

#form_content table td input[type=text] { font-size: 1.2em; width: 200px; }

#form_content table td textarea { resize: vertical; width: 97%; }

#form_content .form_text { color: #333; font-weight: bold; line-height: 1.4; text-align: right; margin-bottom: 50px; }

#form_content .person_tbl th { width: 200px !important; vertical-align: top; }

#form_content .person_tbl .name { float: left; margin-right: 1em; }

#form_content .person_tbl .name input { margin-left: 0.5em; }

#form_content .person_tbl .short input { width: 100px; }

#form_content .person_tbl .long input { width: 100%; }

.check_wrap_box { width: 890px; margin: 0 auto; text-align: center; }

.check_wrap { position: relative; width: 314px; margin: 0 auto; }

#upper_wrap { position: absolute; top: 0; left: 0; background: rgba(255, 255, 255, 0.5); width: 314px; height: 64px; }

.form_btn_area { width: 400px; margin: 0 auto 40px !important; }

input[value=確認] { width: 314px; height: 64px; margin: 0 auto; display: block; border: none; background: url(./../img/top/button_form_confirm.png) no-repeat; text-indent: -9999px; }

input[value=送信] { width: 184px; height: 64px; /*margin: 0 auto 20px;*/ display: block; border: none; background: url(./../img/top/button_form_submit.png) no-repeat; text-indent: -9999px; float: right; }

input[value=戻る] { width: 184px; height: 64px; /*margin: 0 auto 20px;*/ display: block; border: none; background: url(./../img/top/button_form_return.png) no-repeat; text-indent: -9999px; float: left; }

/*#panel { display: none; padding: 0;}*/
#panel { padding: 0; }

#open-btn { display: block; position: relative; width: 314px; height: 64px; margin: 20px auto; background: url(../img/top/button_form_input.png); text-align: center; text-indent: -9999px; }

input[value=確認]:hover, input[value=戻る]:hover, input[value=送信]:hover, #open-btn:hover { cursor: pointer; opacity: 0.5; filter: alpha(opacity=50); /* ie lt 8 */ -ms-filter: "alpha(opacity=50)"; /* ie 8 */ -moz-opacity: 0.5; /* FF lt 1.5, Netscape */ -khtml-opacity: 0.5; /* Safari 1.x */ }

/*
#open-btn:before { content: ""; position: absolute; top: 50%; right: 10px; width: 10px; height: 2px; margin-top: -2px; background: #fff; }
#open-btn:after { content: ""; position: absolute; top: 50%; right: 14px; width: 2px; height: 10px; margin-top: -6px; background: #fff; }
*/
p.complete_text { line-height: 1.4; margin-bottom: 1.5em; }

@media screen and (min-width: 641px) and (max-width: 959px) { #form_content { width: 100%; }
  .center { width: 100%; }
  .check_wrap_box { width: 100%; }
  .container { width: 100%; } }
@media screen and (max-width: 640px) { .container { width: 100%; }
  .btn__default.btn__back, .btn__default.btn__submit { width: 115px; }
  .btn__default:after { right: 10px; }
  .btn__default.btn__back { padding: 15px 10px 15px 24px; }
  .btn__default.btn__back:after { transform: rotate(180deg); right: auto; left: 10px; }
  .btn__default.btn__submit { padding: 15px 24px 15px 10px; }
  .label-col-02 label { display: inline-block !important; width: 48%; }
  .label-col-03 label { display: inline-block !important; width: 48%; }
  .label-col-04 label { display: inline-block !important; width: 48%; }
  .txt-field input { width: 100% !important; display: block; }
  .txt-field input:not(:first-child) { margin-top: 8px; }
  .btn { width: 80% !important; }
  #form_content { width: 100%; }
  .center { width: 100%; }
  .check_wrap_box { width: 100%; }
  #open-btn { width: 314px; }
  .form_btn_area { width: 314px; }
  .person_tbl th, .person_tbl td { display: block; }
  #form_content .person_tbl th { width: 100% !important; }
  #form_content .person_tbl td.person_name_exheight { overflow: hidden; }
  input[value=送信] { float: none; margin: 0 auto; }
  input[value=戻る] { float: none; margin: 0 auto; } }
/*******************

_header.scss

*******************/
.header-kv { padding: 0 0 55px; width: 100%; height: 100%; min-width: 960px; position: relative; background-color: #fff; }
.header-kv .kv-img img { margin: 0 auto; display: block; width: 100%; }
.header-kv .kv-overlay-img__container .kv-overlay-img { margin: 0 auto; display: block; width: 100%; -webkit-transform: translateY(-10%); -ms-transform: translateY(-10%); transform: translateY(-10%); }
.header-kv .header-img__container .header-img { margin: 0 auto; width: 100%; display: block; }
.header-kv .overlay-container { position: absolute; top: 100px; left: 0; width: 100%; background-color: #e2001a; }
.header-kv .overlay-container .txt { font-size: 28px; font-weight: bold; line-height: 1.7; letter-spacing: 0.11em; text-align: center; color: #fff; }

@media screen and (max-width: 1080px) { .header-kv .kv-overlay-img__container .container, .header-kv .header-img__container .container { padding: 0 20px; } }
@media screen and (max-width: 640px) { .header-kv { padding: 0 0 25px; min-width: auto; } }
/*******************

_top.scss

*******************/
.top .header__kv { margin: 0 auto; display: block; width: 100%; }
.top .header__kv .kv__img__wrapper { margin: 0 auto; display: block; width: 100%; height: 100%; }
.top .header__kv .kv__img { margin: 0 auto; display: block; width: 100%; }
.top .coupon--container { padding: 40px; }
.top .coupon__img__container { margin: 10px auto 0; }
.top .coupon__img__container .coupon__img__wrapper { -webkit-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear; }
.top .coupon__img__container .coupon__img__wrapper img { margin: 0 auto; display: block; width: 100%; -webkit-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear; }
.top .coupon__img__container .coupon__img__wrapper:hover { opacity: 0.8; }
.top .coupon__img__container .coupon__img__wrapper:not(:first-of-type) { margin: 40px auto 0; }
.top .text__01 p { font-size: 16px; font-weight: normal; font-family: 'Sawarabi Mincho', serif; line-height: 1.6; letter-spacing: 0.05em; color: #000; }
.top .text__01 p:not(:first-of-type) { margin: 10px auto 0; }
.top .text__02 { margin: 40px auto 0; text-align: center; }
.top .text__02 p { padding: 0 1.5em 0 1.7em; display: inline-block; position: relative; font-size: 28px; font-weight: bold; line-height: 1.2; text-align: center; color: #E60012; letter-spacing: 0.03em; }
.top .text__02 p:before, .top .text__02 p:after { margin: auto; position: absolute; content: ''; width: 0; height: 0; border: 0 solid transparent; border-left-width: 12px; border-right-width: 12px; border-top: 16px solid #E60012; }
.top .text__02 p:before { top: 10px; left: 0; }
.top .text__02 p:after { top: 10px; right: 0; }
.top .btn__wrapper { margin: 30px auto 0; text-align: center; }
.top .btn__wrapper .btn__default { margin: 0 auto; text-align: center; font-size: 54px; width: 100%; }
.top .btn__wrapper .btn__default:after { width: 38px; height: 37px; right: 40px; background-size: 38px auto; }
.top .bottom__text__wrapper { margin: 0 auto; padding: 0 40px; }
.top .bottom__text__wrapper .botton__text__heading { padding: 10px; background-color: #E6E6E6; }
.top .bottom__text__wrapper .botton__text__heading p { text-align: center; font-size: 16px; font-weight: 600; }
.top .bottom__text__wrapper ul { margin: 20px auto 0; }
.top .bottom__text__wrapper ul li { margin-bottom: 4px; padding-left: 1.3em; font-size: 14px; line-height: 1.5; position: relative; }
.top .bottom__text__wrapper ul li:before { margin: auto; content: '※'; position: absolute; top: 0; left: 0; height: 12px; width: 12px; }

@media screen and (max-width: 640px) { .top .header__kv { width: 100%; }
  .top .coupon--container { padding: 40px 20px; }
  .top .text__01 p { font-size: 14px; }
  .top .text__02 { margin: 20px auto 0; }
  .top .text__02 p { font-size: 18px; }
  .top .text__02 p:before, .top .text__02 p:after { top: 4px; }
  .top .btn__wrapper { margin: 30px auto 0; text-align: center; }
  .top .btn__wrapper .btn__default { margin: 0 auto; text-align: center; font-size: 16px; width: 100%; }
  .top .btn__wrapper .btn__default:after { width: 20px; height: 19px; right: 10px; background-size: 20px auto; }
  .top .bottom__text__wrapper { padding: 0 20px; }
  .top .bottom__text__wrapper ul { margin: 20px auto 0; }
  .top .bottom__text__wrapper ul li { margin-bottom: 4px; padding-left: 1.5em; font-size: 12px; line-height: 1.6; position: relative; }
  .top .bottom__text__wrapper ul li:before { margin: auto; content: '※'; position: absolute; top: 0; left: 0; height: 10px; width: 10px; } }
/*******************

_green__form.scss

*******************/
.common__form .header__kv { margin: 0 auto; display: block; width: 100%; }
.common__form .header__kv .kv__img__wrapper { margin: 0 auto; display: block; width: 100%; height: 100%; }
.common__form .header__kv .kv__img { margin: 0 auto; display: block; width: 100%; }
.common__form .section__heading__wrapper { margin: 60px auto 0; }
.common__form .section__heading__wrapper .section__heading { font-size: 28px; font-weight: bold; text-align: center; border-bottom: solid 1px #000; }
.common__form .inner__col__wrapper { display: block; width: 100%; }
.common__form .inner__col__wrapper .inner__col { display: inline-block; }
.common__form .inner__col__wrapper .inner__col:first-of-type { width: 32%; }
.common__form .inner__text__field { padding: 2px 5px; font-size: 12px !important; display: inline-block; vertical-align: middle; }
.common__form .form__confirm { margin: 40px auto 0; }
.common__form .form__section { margin: 60px auto; }
.common__form .input__row { font-size: 0; }
.common__form .input__row label { font-size: 16px; }
.common__form .question__item { display: inline-block; }
.common__form .question__item .count, .common__form .question__item .question { display: inline-block; font-weight: bold; }
.common__form .btn__wrapper { text-align: center; }
.common__form .btn__default { margin: 0 auto; padding: 15px 10px; width: 280px; display: inline-block; color: #fff; font-weight: 600; border-radius: 8px; border: none; font-size: 16px; line-height: 1.2; background-color: #00A0E9; position: relative; cursor: pointer; -webkit-transition: all .2s linear; -o-transition: all .2s linear; transition: all .2s linear; }
.common__form .btn__default.btn__back { margin: 0 15px 0 auto; padding: 15px 10px 15px 24px; }
.common__form .btn__default.btn__back:after { transform: rotate(180deg); right: auto; left: 20px; }
.common__form .btn__default.btn__submit { padding: 15px 24px 15px 10px; }
.common__form .btn__default.btn__back, .common__form .btn__default.btn__submit { width: 180px; }
.common__form .btn__default:hover { opacity: 0.8; }
.common__form .btn__default:after { margin: auto; content: ''; position: absolute; top: 0; right: 20px; bottom: 0; left: auto; width: 20px; height: 19px; background-image: url("./../img/common/double-arrow-right.png"); background-size: 20px auto; background-repeat: no-repeat; }

.thanks__coupon .header__kv { margin: 0 auto; padding: 40px 140px; display: block; width: 890px; }
.thanks__coupon .header__kv .kv__img__wrapper { margin: 0 auto; display: block; width: 100%; height: 100%; }
.thanks__coupon .header__kv .kv__img { margin: 0 auto; display: block; width: 100%; }
.thanks__coupon .coupon--container { padding: 40px; }
.thanks__coupon .coupon__img__container { margin: 30px auto 0; }
.thanks__coupon .coupon__img__container .coupon__img__wrapper img { margin: 0 auto; display: block; width: 100%; }
.thanks__coupon .coupon__img__container .coupon__img__wrapper:not(:first-of-type) { margin: 40px auto 0; }
.thanks__coupon .text__01, .thanks__coupon .text__02, .thanks__coupon .text__03 { text-align: center; }
.thanks__coupon .text__01 p { font-size: 36px; font-weight: bold; line-height: 1.5; color: #fff; }
.thanks__coupon .text__02 p { font-size: 80px; font-weight: bolder; line-height: 1.3; color: #FFE100; font-family: 'Arial'; letter-spacing: 0.03em; }
.thanks__coupon .text__03 { margin: 30px auto 0; }
.thanks__coupon .text__03 p { font-size: 36px; font-weight: bold; line-height: 1.5; color: #FFE100; }
.thanks__coupon .btn__wrapper { margin: 30px auto 0; text-align: center; }
.thanks__coupon .btn__wrapper .btn__default { margin: 0 auto; text-align: center; font-size: 54px; width: 100%; }
.thanks__coupon .btn__wrapper .btn__default:after { width: 38px; height: 37px; right: 40px; background-size: 38px auto; }
.thanks__coupon .bottom__text__wrapper { margin: 30px auto 0; }
.thanks__coupon .bottom__text__wrapper .botton__text__heading { padding: 10px; background-color: #E6E6E6; }
.thanks__coupon .bottom__text__wrapper .botton__text__heading p { text-align: center; font-size: 18px; font-weight: 600; }
.thanks__coupon .bottom__text__wrapper ul { margin: 20px auto 0; }
.thanks__coupon .bottom__text__wrapper ul li { margin-bottom: 4px; padding-left: 1.3em; font-size: 14px; line-height: 1.5; position: relative; }
.thanks__coupon .bottom__text__wrapper ul li:before { margin: auto; content: ''; position: absolute; top: 4px; left: 0; background-color: #000; height: 12px; width: 12px; }

@media screen and (max-width: 640px) { .common__form .container { padding: 0; }
  .common__form .section__heading__wrapper .section__heading { font-size: 20px; }
  .common__form .question__item .count, .common__form .question__item .question { font-size: 14px; }
  .common__form .inner__col__wrapper { display: block; width: 100%; }
  .common__form .inner__col__wrapper .inner__col { display: inline-block; }
  .common__form .inner__col__wrapper .inner__col:first-of-type { margin-bottom: 5px; width: 100%; }
  .common__form .btn__default.btn__back, .common__form .btn__default.btn__submit { width: 115px; }
  .common__form .btn__default:after { right: 10px; }
  .common__form .btn__default.btn__back { padding: 15px 10px 15px 24px; }
  .common__form .btn__default.btn__back:after { transform: rotate(180deg); right: auto; left: 10px; }
  .common__form .btn__default.btn__submit { padding: 15px 24px 15px 10px; }
  .common__form .form__section { margin: 40px auto; }
  .common__form .input__row label { font-size: 12px; vertical-align: top; }
  .thanks__coupon .header__kv { padding: 40px 20px; width: 100%; }
  .thanks__coupon .coupon--container { padding: 40px 20px; }
  .thanks__coupon .text__01 p { font-size: 15px; font-weight: bold; line-height: 1.5; color: #fff; }
  .thanks__coupon .text__02 { margin: 20px auto 0; }
  .thanks__coupon .text__02 p { font-size: 30px; font-weight: bolder; line-height: 1.3; color: #FFE100; font-family: 'Arial'; letter-spacing: 0.03em; }
  .thanks__coupon .text__03 { margin: 30px auto 0; }
  .thanks__coupon .text__03 p { font-size: 15px; font-weight: bold; line-height: 1.5; color: #FFE100; }
  .thanks__coupon .btn__wrapper { margin: 30px auto 0; text-align: center; }
  .thanks__coupon .btn__wrapper .btn__default { margin: 0 auto; text-align: center; font-size: 16px; width: 100%; }
  .thanks__coupon .btn__wrapper .btn__default:after { width: 20px; height: 19px; right: 10px; background-size: 20px auto; }
  .thanks__coupon .bottom__text__wrapper ul { margin: 20px auto 0; }
  .thanks__coupon .bottom__text__wrapper ul li { margin-bottom: 4px; padding-left: 1.5em; font-size: 12px; line-height: 1.6; position: relative; }
  .thanks__coupon .bottom__text__wrapper ul li:before { margin: auto; content: ''; position: absolute; top: 4px; left: 0; background-color: #000; height: 10px; width: 10px; } }
/*******************

_thank-you.scss

*******************/
.thank-you__content { margin: 0 auto 55px; padding: 40px 0; width: 100%; text-align: center; background: url("./../img/common/bg_aproach.png"); }
.thank-you__content h2 { margin-bottom: 30px; display: inline-block; font-size: 30px; font-weight: bold; line-height: 1.6; letter-spacing: 0.11em; color: #000; border-bottom: 1px solid #000; }
.thank-you__content p { font-size: 15px; font-weight: bold; line-height: 2.3; letter-spacing: 0.10em; color: #000; }
.thank-you__content .icon { margin: 27px auto; display: inline-block; width: 50px; }

.entry__content { position: relative; }
.entry__content .floating { background: #fff; opacity: 0.9; -webkit-box-shadow: 6px 4px 22px 0px rgba(34, 24, 21, 0.2); box-shadow: 6px 4px 22px 0px rgba(34, 24, 21, 0.2); }
.entry__content .content__inner-container { margin: 0 0 55px; padding: 35px 0 0; text-align: center; }
.entry__content .header-txt { margin: 0 auto; display: block; width: 100%; }

.result__content { position: relative; }
.result__content .floating { background: #fff; opacity: 0.9; -webkit-box-shadow: 6px 4px 22px 0px rgba(34, 24, 21, 0.2); box-shadow: 6px 4px 22px 0px rgba(34, 24, 21, 0.2); }
.result__content .content__inner-container { margin: 0 0 55px; padding: 35px 0 0; text-align: center; }
.result__content .header-txt { margin: 0 auto; display: block; width: 100%; }

.congratulations__content { margin: 0 auto 55px; padding: 40px 0; width: 100%; text-align: center; background: url("./../img/common/bg_aproach.png"); }
.congratulations__content .content__inner-container { position: relative; min-height: 380px; }
.congratulations__content h2 { margin-bottom: 30px; display: inline-block; font-size: 30px; font-weight: bold; line-height: 1.6; letter-spacing: 0.11em; color: #000; }
.congratulations__content .congratulations-btn { position: absolute; bottom: 0; left: 0; right: 0; }

.decline__content { margin: 0 auto 55px; padding: 40px 0; width: 100%; text-align: center; background: url("./../img/common/bg_aproach.png"); }
.decline__content .content__inner-container { position: relative; min-height: 380px; }
.decline__content h2 { margin-bottom: 30px; display: inline-block; font-size: 30px; font-weight: bold; line-height: 1.6; letter-spacing: 0.11em; color: #000; }
.decline__content .decline-btn { position: absolute; bottom: 0; left: 0; right: 0; }

@media screen and (min-width: 641px) { .sp { display: none !important; }
  .pc { display: block !important; } }
@media screen and (max-width: 640px) { .sp { display: block !important; }
  .pc { display: none !important; }
  .entry__content .sp-txt, .result__content .sp-txt { font-size: 20px; font-weight: bold; padding: 0 5px; }
  .entry__content .content__inner-container, .result__content .content__inner-container { margin: 0 0 25px; }
  .header-kv .overlay-container .txt { font-size: 20px; } }
@media screen and (max-width: 400px) { .entry__content .sp-txt, .result__content .sp-txt { font-size: 16px; font-weight: bold; padding: 0 10px; } }

/*# sourceMappingURL=main.css.map */

.common__banner { 
  margin:0 auto; 
  margin-top: 4em;
  margin-bottom: 4em;
  display: block; 
  width: 80%;
}

.common__banner img { 
  max-width: 100%;
}


.person_tbl input#birthYear,
.person_tbl input#birthMonth,
.person_tbl input#birthDay {
    width: 70px !important;
}

.person_tbl input#age {
  width: 70px !important;
}

.family_row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.family_row:last-child {
  margin-bottom: 0;
}

.family_label {
  width: 70px;
}

.person_tbl #familyCount,
.person_tbl #childrenCount {
  width: 80px !important;
}

.tel_row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.tel_row:last-of-type {
  margin-bottom: 10px;
}

.tel_label {
  width: 80px;
}


.car_row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.car_row:last-child {
  margin-bottom: 0;
}

.car_label {
  width: 70px;
  flex-shrink: 0;
}

/* Q1 Mobile only */
@media screen and (max-width: 767px) {

  .car_row {
    flex-wrap: wrap;
    gap: 6px;
  }

  .car_label {
    width: 100%;
    margin-bottom: 3px;
  }

  .car_row #currentCarMaker,
  .car_row #currentCarName {
    width: 100% !important;
    box-sizing: border-box;
  }

  #question_tbl #inspectionYear {
    width: 70px !important;
  }

  #question_tbl #inspectionMonth {
    width: 70px !important;
  }
}

.other_car_row {
  display: flex;
  align-items: center;
  gap: 10px;
}

#otherCarDetail {
  flex: 1;
}

#otherCarDetailInput {
  width: 100%;
  box-sizing: border-box;
}