@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Roboto+Slab|Noto+Sans+JP:400,500,700|Noto+Serif+JP:400,500&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto+Slab|Noto+Serif+JP:400,500,700|Noto+Serif+JP:400,500&display=swap');

*,
*::before,
*::after {
    /*box-sizing: border-box;*/
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, video, button, input, textarea, select {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
}

html {
    font-family: serif;
}

body {
    font-size: 16px;
    line-height: 1.6;
}

body, input, button {
    font-family: YakuHanJP, "Noto Serif JP", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, sans-serif;
}

input[type="submit"],
input[type="submit"]:active,
button,
button:active,
a {
    color: #000;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

:focus {
    outline: 0;
}

ins {
    text-decoration: none;
}

del {
    text-decoration: line-through;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

a {
    text-decoration: none;
    transition: opacity 0.3s;
}

input[type="submit"], button {
    cursor: pointer;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

.clear:after {
    display: block;
    clear: both;
    content: "";
    visibility: hidden;
    height: 0
}

.clear {
    /* 触发 hasLayout */
    zoom: 1;
}

.sp {
    display: none;
}

.pc {
    display: block;
}

.inner {
    max-width: 1020px;
    padding: 0 50px;
    margin: 0 auto;
}

.inner-s {
    max-width: 900px;
    padding: 0 50px;
    margin: 0 auto;
}

.inner-m {
    max-width: 1100px;
    padding: 0 50px;
    margin: 0 auto;
}

img {
    vertical-align: top;
    max-width: 100%;
}

.main {
    min-height: calc(100vh - 366px);
}

/* header{
	display: flex;
	justify-content: space-between;
	padding: 17px 0;
}
.header-left{
	display: flex;
	padding-left: 40px;
	align-content: center;
}
.open-time{
	text-align: center;
	padding: 0 25px;
	margin-left: 25px;
	border-left: 2px solid #c6c4c5;
	border-right: 2px solid #c6c4c5;
	display: flex;
	align-items: center;
}
.open-time h4{
	font-size: 16px;
	line-height: 1;
	padding-bottom: 6px;
}
.open-time p{
	font-size: 14px;
	line-height: 20px;
	color: #6d6d6d;
}
.header-rt{
	display: flex;
	justify-content: flex-end;
	padding-right: 30px;
	padding-bottom: 8px;
}
.header-link a{
	line-height: 20px;
	margin-left: 15px;
	color: #6d6d6d;
}
.header-search{
	margin: 0 16px;
}
.header-search a{
	padding: 0 16px;
	display: block;
	position: relative;
}
.header-search a img{
	height: 20px;
	margin-top: 2px;
}
.header-search a::before,.header-search a::after{
	content: '';
	width: 1px;
	height: 18px;
	background-color: #c6c4c5;
	position: absolute;
	top: 50%;
	margin-top: -9px;
}
.header-search a::before{
	left: 0;
}
.header-search a::after{
	right: 0;
}
.header-language{
	display: flex;
	align-content: center;
}
.header-language a{
	line-height: 20px;
	border-bottom: 2px solid #fff;
	color: #6d6d6d;
}
.header-language a.active{
	border-color: #00a0e9;
}
.header-language span{
	padding: 0 8px;
}
nav{
	position: relative;
	z-index: 2;
}
nav ul{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding-right: 167px;
	padding-bottom: 10px;
}
nav ul li{
	border-left: 2px solid #c6c4c5;
	position: relative;
}
nav ul li::after{
	content: '';
	border-left: 3px solid #00A0E9;
	border-top: 3px solid #00A0E9;
	width: 9px;
	height: 9px;
	position: absolute;
	left: 50%;
	margin-left: -6px;
	bottom: -12px;
	transform: rotate(-135deg);
}
nav ul li.active a{
	color: #00A0E9;
}
nav ul a{
	display: block;
	text-align: center;
	font-size: 24px;
	line-height: 40px;
	font-weight: bold;
	padding: 0 34px;
}
nav ul li.spic-link{
	border-left: none;
	background-color: #00a0e9;
	position: absolute;
	right: 0;
	bottom: -17px;
	width: 167px;
	box-sizing: border-box;
}
nav ul li.spic-link::after{
	display: none;
}
nav ul li.spic-link a{
	color: #fff;
	padding: 0;
	font-size: 16px;
	line-height: 40px;
	padding: 12px 0;
} */
#overlay {
    content: " ";
    position: fixed;
    background-color: rgba(0, 0, 0, .4);
    width: 100%;
    height: 100%;
    display: none;
    z-index: 997;
    top: 100px;
}

/*-----------------------------------------------ヘッダー------------------------------------------------*/
#header {
    position: fixed;
    width: 100%;
    height: 110px;
    z-index: 999;
    background-color: rgba(255, 255, 255, .975);
    transition: 0;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .2);
}

#header .pc_non_open_info {
    display: none;
}

#header header {
    position: relative;
    z-index: 2;
}

#header header, #header .leftbox, #header header nav > ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#header header {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 0 0 2.1%;
    justify-content: space-between;
    margin: 0 auto;
}

#header header h1 img {
    width: 140px;
    height: auto;
}

#header header .open_info {
    border-left: solid 1px #ddd;
    border-right: solid 1px #ddd;
    text-align: center;
    margin-left: 25px;
    padding: 0 25px;
}

#header header .open_info dt {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.085em;
}

#header header .open_info dd {
    font-size: 15px;
    color: #6e6d6f;
    line-height: 1.45;
    letter-spacing: 0;
}

#header header nav #main_navi > li {
    margin-top: 30px;
}

#header header nav #main_navi > li > a {
    position: relative;
    display: block;
    padding: 16px 0;
}

#header header nav #main_navi > li:not(:last-child) > a {
    font-size: 24px;
    letter-spacing: 0.18em;
    line-height: 1.4;
}

#header header nav #main_navi > li:not(:last-child) > a > span {
    display: block;
    padding-right: 30px;
    padding-left: 30px;
    border-left: solid 1px #ddd;
}

#header header nav #main_navi > li:nth-child(2) > a {
    letter-spacing: 0.02em;
}

#header header nav #main_navi > li:not(:last-child) > a::after {
    position: absolute;
    content: " ";
    border-left: solid 1px #4ebaff;
    border-bottom: solid 1px #4ebaff;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    bottom: 5px;
    left: 50%;
    margin-left: -4px;
}

#header header nav #main_navi > li:last-child {
    margin-top: 42px;
}

#header header nav #main_navi > li:last-child > a {
    background-color: #4ebaff;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    padding: 20px 2.5em;
    line-height: 27px;
}

#header header nav #main_navi > li:last-child > a::after {
    position: absolute;
    content: " ";
    width: 10px;
    height: 8px;
    background: url("../img/link_icon02.png") no-repeat center center;
    background-size: cover;
    right: 15px;
    top: 50%;
    margin-top: -4px;
}

#header header nav #main_navi > li:last-child > a span {
    color: #fff;
}

#header header nav #main_navi > li > a span {
    position: relative;
    display: block;
}

#header header nav #main_navi > li > a span i {
    font-weight: 500;
}

#header header nav #main_navi > li .megadrop, #header header nav #main_navi > li .megadrop::after {
    position: absolute;
    width: 100%;
    left: 0;
}

#header header nav #main_navi > li .megadrop {
    display: none;
    top: 110px;
    background-color: rgba(197, 170, 90, .98);
    padding: 45px 0 30px;
}

#header header nav #main_navi > li .megadrop dl {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

#header header nav #main_navi > li .megadrop dl dt {
    width: 22%;
    position: relative;
    top: -10px;
}

#header header nav #main_navi > li .megadrop dl dt a, #header header nav #main_navi > li .megadrop dl dd a span {
    position: relative;
    display: inline-block;
    color: #fff;
}

#header header nav #main_navi > li .megadrop dl dt a {
    padding: 0 0 38px 0;
}

#header header nav #main_navi > li .megadrop dl dt a span {
    text-align: center;
    display: block;
    font-size: 40px;
    letter-spacing: 0.05em;
    line-height: 1.2;
    color: #fff;
}

#header header nav #main_navi > li.navi02 .megadrop dl dt a span {
    letter-spacing: 0em;
}

#header header nav #main_navi > li .megadrop dl dt a span::before {
    position: relative;
    display: block;
    content: attr(data-before-content);
    font-size: 18px;
    letter-spacing: 0.15em;
    color: #fff;
}

#header header nav #main_navi > li .megadrop dl dt a::before,
#header header nav #main_navi > li .megadrop dl dd a span::before,
#header header nav #main_navi > li .megadrop dl dt a::after,
#header header nav #main_navi > li .megadrop dl dd a span::after,
#header header nav #main_navi > li .megadrop dl dd a::before {
    content: " ";
    position: absolute;
    transition: .4s;
}

#header header nav #main_navi > li .megadrop dl dt a::before {
    width: 26px;
    height: 26px;
    background: url("../img/g_navi_icon01.png") no-repeat center center;
    background-size: cover;
    bottom: 0;
    left: 50%;
    margin-left: -13px;
}


#header header nav #main_navi > li .megadrop dl dd {
    width: 78%;
}

#header header nav #main_navi > li .megadrop dl dd ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
}

#header header nav #main_navi > li .megadrop dl dd ul li {
    font-size: 16px;
    margin-bottom: 25px;
    box-sizing: border-box;
    padding: 0 0 0 5%;
}

#header header nav #main_navi > li .megadrop dl dd ul li a {
    position: relative;
    display: block;
    line-height: 1.5;
}

#header header nav #main_navi > li .megadrop dl dd ul li a span {
    padding-left: 15px;
    line-height: 1.4;
}

#header header nav #main_navi > li .megadrop dl dd ul li a span::before {
    width: 10px;
    height: 8px;
    background: url("../img/link_icon02.png") no-repeat center center;
    background-size: cover;
    top: 7px;
    left: 0;
}

#header header nav #sub_navi {
    position: absolute;
    right: 1.5%;
    top: 3px;
    font-size: 14px;
    color: #6e6d6f;
    height: 40px;
    letter-spacing: 0.08em;
}

#header header nav #sub_navi li a {
    position: relative;
    color: #6e6d6f;
    display: block;
    padding-left: 12px;
    transition: .3s;
}

#header header nav #sub_navi li.lang_co {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    font-family: 'Roboto Slab', serif;
    font-size: 13px;
    position: relative;
}

#header header nav #sub_navi li.lang_co > span {
    position: relative;
    display: inline-block;
}

#header header nav #sub_navi li.lang_co .lang_jp {
    padding-right: 10px;
}

#header header nav #sub_navi li.lang_co .lang_jp::after {
    position: absolute;
    content: " ";
    border-left: solid 1px #6e6d6f;
    width: 14px;
    height: 14px;
    -webkit-transform: rotate(-155deg);
    transform: rotate(-155deg);
    top: 6px;
    right: 0;
}

#header header nav #sub_navi li.lang_co i {
    position: relative;
    display: block;
    font-style: normal;
}

#header header nav #sub_navi li.lang_co i::after {
    content: " ";
    width: 100%;
    height: 2px;
    background-color: #4ebaff;
    position: absolute;
    left: 0;
    bottom: 0;
}

#header #search_navi {
    position: relative;
    width: 50px;
    height: 20px;
    z-index: 3;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    border-right: solid 1px #ddd;
    border-left: solid 1px #ddd;
    padding: 0 12px 0 0;
    margin-left: 12px;
    box-sizing: border-box;
}

#header #search_navi a {
    z-index: 2;
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/search.png) no-repeat center center;
    background-size: 40% auto;
}

#search_textarea form {
    height: 60px;
    width: 600px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -30px 0 0 -300px;
    border-radius: 0;
    color: #fff !important;
}

#search_textarea form input[type=text] {
    height: 60px;
    width: 600px;
    padding: 4px 40px 4px 8px;
    border: none;
    border-bottom: solid 1px rgba(0, 0, 0, .25);
    outline: 0;
    box-sizing: border-box;
    position: absolute;
    background-color: rgba(0, 0, 0, 0);
    top: 0;
    right: 0;
    backface-visibility: hidden;
    -webkit-transition: 0.25s ease-out;
    -moz-transition: 0.25s ease-out;
    -o-transition: 0.25s ease-out;
    transition: 0.25s ease-out;
    color: #333;
    font-size: 20px;
    border-radius: 0;
}

#search_textarea form input[type=text]:focus {
    background-color: rgba(0, 0, 0, 0);
}

#search_textarea form input[type=image] {
    position: absolute;
    top: 10px;
    right: 1.5%;
    width: 35px;
    height: 35px;
}

/*-----------------モーダル設定----------------------*/
.modal_search#cboxOverlay {
    background-color: rgba(240, 220, 165, .995);
}

.modal_search #cboxClose {
    position: fixed;
    right: 0;
    top: 0;
    width: 70px;
    height: 70px;
    border: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 60% auto;
    background-image: url(../images/common/close.png);
    background-color: rgba(78, 186, 255, .98);
    outline: none;
    transition: .35s;
}

#header header #nav-toggle {
    display: none;
}

.main {
    padding: 0 0 40px;
}

.kv {
    position: relative;
}

.kv img {
    width: 100%;
}

.kv-text {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 6.25vw;
}

.kv-text h4 {
    font-size: 28px;
    line-height: 34px;
    color: #fff;
}

.kv-text h3 {
    font-size: 44px;
    line-height: 50px;
    color: #fff;
}

.crumbs {
    padding: 7px 45px;
    display: flex;
    align-items: center;
    background-color: #f7f6f2;
    border-bottom: 2px solid #f2eddf;
}

.crumbs a {
    color: #6d6d6d;
    font-size: 14px;
    line-height: 24px;
}

.crumbs span {
    color: #ece3c9;
    font-size: 14px;
    line-height: 24px;
    padding: 0 7px 0 18px;
}

.section-title {
    position: relative;
    padding: 70px 0 25px;
}

.section-title::before {
    content: '';
    width: 2px;
    height: 70px;
    background-color: #ece3c9;
    position: absolute;
    left: 20px;
    top: 0;
}

.section-title h3 {
    font-size: 38px;
    line-height: 52px;
    font-weight: normal;
}

.section-title h3 span {
    font-size: 24px;
}

.section-box {
    padding-top: 85px;
}

.section-title1 {
    padding-bottom: 20px;
    border-bottom: 2px solid #dfdccc;
    position: relative;
}

.section-title1::after {
    content: '';
    width: 100px;
    height: 2px;
    background-color: #b29336;
    position: absolute;
    left: 0;
    bottom: -2px;
}

.section-title1 > h3 {
    font-size: 22px;
    line-height: 32px;
    font-weight: normal;
}

.section-content {
    background-color: #f8f6ea;
    padding: 65px 50px;
}

.question-item {
    padding-bottom: 45px;
}

.section-question {
    position: relative;
    padding-left: 1.8em;
}

.section-question > span {
    position: absolute;
    left: -1em;
    top: 0;
}

.section-question > span span {
    color: red;
    margin-right: 5px;
}

.section-answer {
    margin-top: 22px;
    background-color: #fff;
    border: 2px solid #dfdccc;
    text-align: center;
    padding: 15px 0;
}

.section-answer label {
    display: flex;
    align-items: center;
    justify-content: center;
}

.section-answer input[type="radio"] {
    width: 22px;
    height: 22px;
    margin: 0;
    margin-right: 7px;
}

.tips {
    position: relative;
    padding-left: 3em;
}

.tips-span {
    position: absolute;
    left: 0;
    top: 0;
}

.section-corfm {
    padding: 70px 30px 130px;
}

.section-corfm h5 {
    font-size: 16px;
    line-height: 30px;
    text-align: center;
    font-weight: normal;
}

.section-btn {
    margin-top: 80px;
    text-align: center;
}

.section-btn button {
    width: 480px;
    border: 1px solid #c19534;
    padding: 15px 0;
    font-size: 24px;
    line-height: 30px;
    border-radius: 34px;
}

.section-btn button span {
    font-size: 14px;
    line-height: 30px;
    display: inline-block;
}

.section-btn4 {
    margin: 70px 0;
}

.section-btn4 .home-link {
    text-align: center;
    display: block;
    width: 480px;
    border: 1px solid #193547;
    background-color: #193547;
    color: #cdbb8f;
    padding: 15px 0;
    font-size: 24px;
    line-height: 30px;
    border-radius: 34px;
    margin: 0 auto 45px;
}

.section-btn4 .home-link:last-child {
    margin-bottom: 0;
}

.contact-link {
    background-color: initial !important;
    border: initial !important;
}

.contact-link a, .section-content a {
    text-decoration: underline;
}

.main-contact {
    border-top: 2px solid #ece3c9;
}

.contact-box {
    padding-top: 35px;
    display: flex;
    justify-content: center;
}

.contact-item {
    width: calc(50% - 20px);
}

.contact-item h4 {
    background-color: #f7f6f2;
    border: 1px solid #dfdccc;
    border-top: 2px solid #c19534;
    font-size: 17px;
    line-height: 30px;
    padding: 7px 15px;
}

.contact-content {
    height: 185px;
    background-color: #f0f0f0;
    padding: 15px 30px;
    box-sizing: border-box;
}

.contact-content h5 {
    color: #c19534;
    font-size: 17px;
    line-height: 30px;
}

.contact-time, .contact-fax {
    font-size: 14px;
}

.contact-tel {
    font-size: 30px;
    line-height: 46px;
    font-weight: bold;
}

/*-----------footer-----------*/
#footer footer #footer_address {
    text-align: center;
}

#footer footer #footer_address dl dt {
    width: 210px;
    margin: 0 auto 40px;
}

#footer footer #footer_address dl dd {
    font-size: 15px;
    color: #fff;
}

#footer footer #footer_link ul {
    padding: 0 5%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 80px;
}

#footer footer #footer_link ul li {
    width: 20%;
}

#footer footer #footer_link ul li dl dt {
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: solid 1px rgba(255, 255, 255, .5);
    font-weight: 500;
    font-size: 22px;
    color: #fff;
}

#footer footer #footer_link ul li dl dt a {
    position: relative;
    display: inline-block;
    font-weight: 500;
    color: #fff;
    font-size: 22px;
    letter-spacing: 0.1em;
    line-height: 1.3;
}

#footer footer #footer_link ul li dl dt.sp_acc {
    display: none;
}

#footer footer #footer_link ul li dl dd > div {
    margin-bottom: 10px;
}

#footer footer #footer_link ul li dl dd a {
    position: relative;
    opacity: .7;
    letter-spacing: 0.04em;
    font-size: 15px;
    display: inline-block;
    color: #fff;
}

#footer footer #footer_link ul li .ex_link {
    margin-top: 40px;
}

#footer footer #footer_link ul li .ex_link a {
    display: inline-block;
    color: #fff;
    font-size: 15px;
    border: solid 1px rgba(255, 255, 255, .5);
    padding: 10px 5em;
    position: relative;
}

#footer footer #footer_link ul li .ex_link a::after {
    content: " ";
    width: 10px;
    height: 8px;
    background: url("../img/link_icon02.png") no-repeat center center;
    background-size: cover;
    right: 15px;
    top: 50%;
    margin-top: -4px;
    position: absolute;
}

#footer footer #footer_sub_link ul {
    padding: 0 5%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    color: #fff;
    margin-bottom: 15px;
}

#footer footer #footer_sub_link ul li {
    position: relative;
    font-size: 14px;
    line-height: 1.2;
    margin: 0 1em;
}

#footer footer #footer_sub_link ul li:not(:last-child)::after {
    content: " ";
    width: 1px;
    height: 100%;
    background-color: #fff;
    opacity: .7;
    position: absolute;
    right: -1em;
    top: 0;
}

#footer footer #footer_sub_link ul li a {
    color: #fff;
    opacity: .7;
}

#footer footer #footer_copy {
    margin-top: 40px;
}

#footer footer #footer_copy small {
    text-align: center;
    display: block;
    font-size: 12px;
    letter-spacing: 0.05em;
    color: #808080;
}

/*-----------ページトップ-----------*/
#pagetop {
    position: fixed;
    bottom: 0;
    right: 0;
    display: none;
    z-index: 999;
}

#pagetop a {
    transition: .4s;
    position: relative;
    display: block;
    background: url("../img/pagetop_icon.png") no-repeat center center #313131;
    background-size: auto 64%;
    width: 84px;
    height: 84px;
    color: #fff;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    box-sizing: border-box;
}

.section-step {
    display: flex;
}

.step-item {
    margin-right: 13px;
    position: relative;
    width: calc(20% - 13px);
    background-color: #fff;
    box-sizing: border-box;
}

.step-item p {
    border: 1px solid #d8b164;
    border-right: 0;
    padding: 0 10px;
    color: #666666;
    transition: all 0.5s;
    height: calc(21px * 1.414);
}

.step-item i {
    position: absolute;
    width: 21px;
    height: 21px;
    border-top: 1px solid #d8b164;
    border-left: 1px solid #d8b164;
    transform: rotate(135deg);
    right: -11px;
    top: 5px;
    transition: all 0.5s;
}

.step-item.active p {
    color: #fff;
    background-color: #33ccff;
}

.step-item.active i {
    background-color: #33ccff;
}

.section-tips {
    margin-top: 20px;
}

.section-tips p {
    text-align: center;
}

.section-tips2 {
    margin: -35px 0 70px;
    text-align: center;
}

.section-content dl {
    display: flex;
    margin-bottom: 35px;
}

.section-content dt {
    width: 13em;
    font-weight: bold;
    position: relative;
    letter-spacing: 0.1em;
}

.section-content dt .dt-small {
    display: block;
    font-size: 14px;
    line-height: 1;
}

.section-content dd {
    width: calc(100% - 13em - 70px);
}

.form-req {
    position: absolute;
    left: -0.7em;
    top: 0;
    color: red;
}

.section-content .ipt {
    background-color: #fff;
    border: 2px solid #dfdccc;
    height: 30px;
    padding: 0 12px;
    font-size: 16px;
}

.form-tips {
    padding-top: 15px;
    font-size: 14px;
}

.input-data-item {
    border-top: 2px solid #eee;
    padding-top: 40px;
    margin-top: 40px;
}

.input-data-item:first-child {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
}

.form-flex {
    display: flex;
    align-items: center;
}

.form-span1 {
    padding: 0 18px;
}

.ipt1 {
    width: calc(50% - 18px - 0.5em);
}

.form-flex2 {
    margin: 0 -13px;
}

.ipt2 {
    width: calc(50% - 13px);
    margin: 0 13px;
}

.form-flex3 label {
    display: flex;
    align-items: center;
    margin-right: 22px;
}

.ipt3 {
    width: 20px;
    height: 20px;
    margin: 0;
    margin-right: 15px;
}

.ipt4 {
    width: 150px;
    margin-left: 22px;
}

.ipt5 {
    width: 50px;
}

.form-flex4 span {
    padding: 0 8px;
}

.form-flex3 label.form-label2 {
    margin-right: 0;
}

.add-btn span {
    display: block;
    color: #fff;
    background-color: #cc9933;
    width: 200px;
    text-align: center;
    border: 2px solid #dfdccc;
    margin-left: 8px;
    cursor: pointer;
}

.del-btn {
    display: block;
    color: #fff;
    background-color: #cc9933;
    border: 2px solid #dfdccc;
    cursor: pointer;
    padding: 4px 16px;
}

.section-tips3 {
    margin: -55px 0 50px;
    text-align: right;
}

.section-tips3 span {
    color: red;
}

.ipt6 {
    width: 110px;
}

.form-box1 {
    margin-bottom: 10px;
}

.form-span2 {
    padding: 0 12px;
}

.form-select {
    background-color: #fff;
    border: 2px solid #dfdccc;
    height: 34px;
    padding: 0 12px;
    font-size: 16px;
    width: 290px;
}

.ipt7 {
    width: calc(100% - 24px);
}

.form-label3 {
    display: flex;
}

.form-tips2 {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 5px;
}

.form-textarea {
    width: calc(100% - 24px);
    background-color: #fff;
    border: 2px solid #dfdccc;
    height: 30px;
    padding: 5px 12px;
    font-size: 16px;
    height: 170px;
    resize: none;
}

.section-content dl.no-mar {
    margin: 0;
}

.section-btn2 {
    margin-top: 0;
    display: flex;
    justify-content: space-around;
}

.section-btn2 .btn {
    position: relative;
    width: calc(50% - 45px);
}

.btn-back span {
    position: absolute;
    left: 65px;
}

.btn-next span {
    position: absolute;
    right: 65px;
}

.conduct-table {
    padding: 50px 0 80px;
}

.conduct-table table {
    width: 100%;
}

.conduct-table th, .conduct-table td {
    border: 1px solid #eeebe1;
    text-align: center;
    padding: 15px 5px;
}

.conduct-table th {
    background-color: #a48730;
    color: #fff;
}

.conduct-table-tips {
    padding-top: 25px;
}

.qa-box {
    padding-top: 40px;
}

.qa-item {
    margin-bottom: 58px;
    border: 1px solid #cc9933;
}

.qa-q {
    background-color: #f8f5ea;
    padding: 15px 56px 15px 30px;
    position: relative;
    cursor: pointer;
}

.qa-q i {
    width: 22px;
    height: 22px;
    position: absolute;
    right: 17px;
    top: 50%;
    margin-top: -11px;
}

.qa-q i::before, .qa-q i::after {
    content: '';
    width: 100%;
    height: 2px;
    margin-top: -1px;
    background-color: #c93;
    left: 0;
    top: 50%;
    position: absolute;
    transition: all 0.5s;
}

.qa-q i::after {
    transform: rotate(90deg);
}

.qa-item.active .qa-q i::after {
    transform: rotate(180deg);
}

.qa-q h3 {
    font-weight: normal;
    position: relative;
    padding-left: 20px;
}

.qa-q h3 span {
    position: absolute;
    left: 0;
    color: #cc9933;
}

.qa-a {
    width: 100%;
    height: 0;
    transition: all 0.5s;
    overflow: hidden;
    padding: 0 30px;
    box-sizing: border-box;
    border-top: 1px solid transparent;
}

.qa-item.active .qa-a {
    height: auto;
    display: block;
    border-top: 1px solid #cc9933;
    padding: 20px 30px;
}

.qa-item:last-child {
    margin-bottom: 0;
}

.section-desc2 {
    padding-bottom: 40px;
}

.spic-color {
    color: red;
}

.name-input-box {
    padding: 20px 0 30px;
    width: 650px;
    margin: 0 auto;
}

.name-input-box p {
    padding-top: 15px;
}

.form-link {
    margin-top: 5px;
    text-align: center;
}

.form-link a {
    border-bottom: 1px solid #000;
}

.time-table {
    width: 680px;
    margin: 0 auto;
}

.time-table table {
    width: 100%;
}

.time-table th, .time-table td {
    text-align: center;
    width: 50%;
    padding: 18px 0;
}

.table-box {
    background-color: #fff;
    width: 230px;
    border: 2px solid #dfdccc;
    margin: 0 auto;
}

.input-dl1 {
    border: 1px solid #c19534;
    padding: 40px 30px;
}

.form-flex4 label, .form-flex4-box {
    margin-bottom: 25px;
}

.form-flex4-box label {
    margin-bottom: 10px;
}

.form-flex4 .no-mar {
    margin-bottom: 0;
}

.form-flex5 label {
    margin-right: 160px;
}

.pravicy-box {
    background-color: #fff;
    padding: 40px;
    border: 2px solid #dfdccc;
}

.pravicy-box p.tips {
    position: relative;
    padding-left: 2.5em;
}

.section-title3 {
    padding-top: 40px;
    text-align: center;
}

.section-title3 h4 {
    font-size: 22px;
    line-height: 32px;
}

.section-title4 {
    text-align: center;
}

.section-title4 p {
    font-size: 22px;
    line-height: 32px;
}

.confirm-data {
    margin-bottom: 60px;
}

.confirm-data.mo-mar {
    margin-bottom: 0;
}

.confirm-data-item {
    border: 2px solid #dfdccc;
    background-color: #fff;
    padding: 30px;
    margin-top: 15px;
}

.confirm-data-item dl {
    border-bottom: 2px solid #dfdccc;
    margin: 0;
    padding: 15px 10px;
}

.complete-box {
    padding-bottom: 110px;
}

.complete-title {
    text-align: center;
    font-size: 2.5em;
    color: #cc9900;
}

.complete-text {
    padding-top: 60px;
}

.complete-text p {
    text-align: center;
}

.ipt8 {
    width: 450px;
}

.section-btn3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 40px -200px 0;
}

.section-btn3 .btn {
    width: calc(33.3333% - 40px);
    margin: 40px 20px 0;
}

.section-corfm2 {
    padding: 0 0 130px;
}

.section-corfm3 {
    padding: 70px 0 0;
}

@media screen and (max-width: 1400px) {
    .section-btn3 {
        margin: 40px 0 0;
    }
}

@media screen and (min-width: 1051px) {
    #footer footer #footer_link ul li .ex_link a:hover {
        background-color: #4ebaff;
    }

    #pagetop a:hover {
        background-color: #4ebaff;
    }

    #footer footer #footer_link ul li dl dt a:hover, #footer footer #footer_link ul li dl dd a:hover, #footer footer #footer_sub_link ul li a:hover {
        color: #4ebaff;
    }
}

@media screen and (max-width: 1050px) {
    #header .pc_non_open_info {
        display: block;
        background-color: #c5aa5a;
        color: #fff;
        font-size: 12px;
        font-weight: 500;
        letter-spacing: -0.025em;
        text-align: center;
        line-height: 1.3;
        padding: 5px 0.2em;
    }

    #header header .leftbox .open_info {
        display: none;
    }

    #header {
        height: 80px;
    }

    #header header {
        height: auto;
    }

    #header header h1 {
        margin-top: 5px;
    }

    #header header h1 img {
        width: 95px;
    }

    #header header nav > ul {
        justify-content: flex-start;
        width: 100%;
        margin: 0 auto;
    }

    #header header nav #main_navi {
        padding-top: 10px;
        margin-bottom: 20px;
    }

    #header header nav #main_navi > li {
        width: 100%;
        box-sizing: border-box;
        padding: 0;
        margin: 0;
        border-bottom: solid 0.5px rgba(255, 255, 255, .15);
    }

    #header header nav #main_navi > li:not(:last-child) > a {
        font-size: 18px;
    }

    #header header nav #main_navi > li:not(:last-child) > a::after {
        display: none;
    }

    #header header nav #main_navi > li:not(:last-child) > a > span {
        color: #fff;
        padding: 0;
        border-left: none;
    }

    #header header nav #main_navi > li .megadrop dl dt a span::before,
    #header header nav #main_navi > li .megadrop dl dt a::before,
    #header header nav #main_navi > li .megadrop dl dd ul li a span::before {
        display: none;
    }

    #header header nav #main_navi > li .megadrop dl dt a {
        padding: 0;
    }

    #header header nav #main_navi > li:last-child {
        margin: 20px auto;
        width: 80%;
        text-align: center;
    }

    #header header nav #main_navi > li:last-child > a {
        padding: 12px 2em;
    }

    #header header nav #main_navi > li > a {
        padding: 20px 5%;
        color: #fff;
        font-size: 13px;
        width: 100%;
        box-sizing: border-box;
    }

    #header header nav #main_navi > li > a > span::before,
    #header header nav #main_navi > li > a > span::after {
        content: " ";
        position: absolute;
    }

    #header header nav #main_navi > li:not(.navi04) > a > span::before,
    #header header nav #main_navi > li:not(.navi04) > a > span::after {
        background-color: #fff;
        top: 50%;
        right: 0;
        width: 12px;
        height: 1.5px;

    }

    #header header nav #main_navi > li:not(.navi04) > a > span::before,
    #header header nav #main_navi > li:not(.navi04) > a > span.open::after {
        transition: -webkit-transform .2s;
        transition: transform .2s;
        transition: transform .2s, -webkit-transform .2s;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    #header header nav #main_navi > li:not(.navi04) > a > span::after {
        transition: -webkit-transform .2s;
        transition: transform .2s;
        transition: transform .2s, -webkit-transform .2s;
        -webkit-transform: translateY(-50%) rotate(-90deg);
        transform: translateY(-50%) rotate(-90deg);
    }

    #header header #nav-toggle {
        display: block;
        top: 13px;
        position: absolute;
        right: 2%;
        width: 58px;
        height: 54px;
        z-index: 2;
        box-sizing: border-box;
        padding: 0 14px;
    }

    #header header #nav-toggle div {
        position: relative;
    }

    #header header #nav-toggle span {
        display: block;
        position: absolute;
        height: 1.5px;
        width: 100%;
        left: 0;
        background: #6e6d6f;
    }

    #header header #nav-toggle span:nth-child(1) {
        top: 0;
        transition: .35s ease-in-out .1s;
    }

    #header header #nav-toggle span:nth-child(2) {
        top: 8px;
        transition: .35s ease-in-out;
    }

    #header header.open #nav-toggle span:nth-child(1) {
        top: 7px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    #header header.open #nav-toggle span:nth-child(2) {
        top: 7px;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    #header header #nav-toggle i {
        font-size: 12px;
        color: #6e6d6f;
        letter-spacing: 0;
        display: block;
        padding-top: 18px;
        margin-left: -5px;
        line-height: 1;
    }

    #header header nav {
        position: absolute;
        top: 57px;
        left: 0;
        width: 100%;
        height: 0;
        transition: .4s ease-out;
        overflow: hidden;
        background-color: rgba(160, 130, 45, .98);
    }

    #header header.open nav {
        height: 100vh;
        box-sizing: border-box;
        overflow-y: scroll;
        padding-bottom: 200px;
        -webkit-overflow-scrolling: touch;
        overflow-scrolling: touch; /**/
    }

    #header header nav #main_navi > li .megadrop {
        position: relative;
        background-color: rgba(0, 0, 0, .1);
        top: 0;
        padding: 25px 0 35px;
    }

    #header header nav #main_navi > li .megadrop dl dt,
    #header header nav #main_navi > li .megadrop dl dd {
        width: 100% !important;
    }

    #header header nav #main_navi > li .megadrop dl dt {
        top: 0;
    }

    #header header nav #main_navi > li .megadrop dl dt a {
        padding-right: 0;
        padding-left: 12px;
    }

    #header header nav #main_navi > li .megadrop dl dt a span {
        font-size: 13px;
    }

    #header header nav #main_navi > li .megadrop dl dt a span::after {
        display: inline;
        content: "TOP";
        font-size: 13px;
        letter-spacing: 0.05em;
        font-weight: 300;
        margin-top: 0;
        opacity: 1;
    }

    #header header nav #main_navi > li .megadrop dl dt a::before {
        width: 4px;
        height: 4px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        top: 8px;
        left: 0;
        right: auto;
    }

    #header header nav #main_navi > li .megadrop dl dd {
        width: 100%;
    }

    #header header nav #main_navi > li .megadrop dl dd ul li {
        font-size: 13px;
        margin-top: 20px;
        margin-bottom: 0;
        padding: 0;
    }

    #header header nav #main_navi > li .megadrop dl dd ul li a {
        padding-top: 0;
    }

    #header header nav #main_navi > li .megadrop dl dd ul li a::before {
        display: none;
    }

    #header header nav #main_navi .navi01 .megadrop dl dd ul li,
    #header header nav #main_navi .navi04 .megadrop dl dd ul li,
    #header header nav #main_navi .navi02 .megadrop dl dd ul li,
    #header header nav #main_navi .navi06 .megadrop dl dd ul li,
    #header header nav #main_navi .navi03 .megadrop dl dt,
    #header header nav #main_navi .navi03 .megadrop dl dd,
    #header header nav #main_navi .navi03 .megadrop dl dd ul li {
        width: 100%;
    }

    #header header nav #sub_navi {
        position: relative;
        right: auto;
        top: auto;
        font-size: 13px;
        color: #fff;
        height: auto;
        justify-content: center;
    }

    #header header nav #sub_navi li:not(:last-child) {
        border-right: none;
    }

    #header header nav #sub_navi li:first-child {
        border-right: solid 1px rgba(255, 255, 255, .15);
        margin-right: 20px;
        padding-right: 20px;
    }

    #header header nav #sub_navi li a, #header header nav #sub_navi li a i {
        color: #fff;
    }

    #header header nav #sub_navi li a::before {
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        opacity: .7;
    }

    #header header nav #sub_navi li dl {
        display: none;
    }

    #header #search_navi a {
        background-size: 46% auto;
    }

    #header #search_navi a {
        display: block;
    }

    #header #search_navi {
        border-left: solid 1px rgba(255, 255, 255, 0.15);
        border-right: solid 1px rgba(255, 255, 255, 0.15);
    }

    #header #search_navi a {
        background: url(../images/common/search_icon02.png) no-repeat center center;
        background-size: 40% auto;
    }

    #header header nav #sub_navi li.lang_co .lang_jp::after {
        border-left: solid 1px rgba(255, 255, 255, 0.15);
    }

    #search_textarea form {
        height: 60px;
        width: 80%;
        position: absolute;
        top: 35%;
        left: 10%;
        margin: 0;
    }

    #search_textarea form input[type=text] {
        height: 60px;
        width: 100%;
        font-size: 16px;
    }

    #search_textarea form button {
        background-size: 45% auto;
    }

    #search_textarea form input[type=image] {
        top: 5vw;
        right: 1.5%;
        width: 24px;
        height: 24px;
    }

    .modal_search #cboxClose {
        width: 54px;
        height: 54px;
    }

    #footer footer #footer_copy {
        padding: 25px 0 35px;
        justify-content: center;
    }

    #footer footer #footer_copy ul {
        justify-content: center;
        align-items: flex-start;
        margin-bottom: 25px;
        width: 100%;
    }

    #footer footer #footer_copy ul li {
        margin-right: 0;
        font-size: 12px;
        width: 33.333%;
        letter-spacing: -0.05em;
    }

    #footer footer #footer_copy small {
        text-align: center;
        font-size: 12px;
        letter-spacing: 0.08em;
    }


    .linkbutton_style01 a {
        font-size: 16px;
        min-width: 0;
        width: 85%;
    }

    .linkbutton_style01 a span {
        padding: 25px 2em;
    }

    .linkbutton_style01 a span::after {
        width: 16px;
        height: 16px;
        right: 5%;
        margin-top: -8px;
    }

    #footer footer #footer_address dl dd a {
        color: #fff !important;
    }

    .main {
        padding: 80px 0;
    }

    .btn-next span {
        right: 25px;
    }

    .contact-time, .contact-fax {
        font-size: 13px;
    }

    .section-step {
        flex-wrap: wrap;
    }

    .step-item {
        width: calc(33.33333% - 13px);
        margin-bottom: 10px;
    }

    .form-flex3 {
        flex-wrap: wrap;
    }

    .form-flex3 label {
        flex-wrap: wrap;
    }

    .ipt4, .ipt6 {
        width: 80px;
    }

    .time-table {
        width: 100%;
    }

    .section-btn3 .btn {
        width: 280px;
        margin: 20px 10px 0;
    }

    .section-btn button {
        font-size: 18px;
    }
}

/*----------------------------------------------------------------------------------
タブレット
----------------------------------------------------------------------------------*/
@media screen and (max-width: 1050px) and (min-width: 641px) {
    .tab_only {
        display: block !important;
    }

    #header header nav #main_navi > li .megadrop dl dd ul {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
    }

    #header header nav #main_navi > li .megadrop dl dd ul li {
        width: 48% !important;
    }

    #footer footer #footer_link ul {
        justify-content: space-between;
    }

    #footer footer #footer_link ul li {
        width: 24%;
    }

    #footer footer #footer_copy small {
        width: 100%;
    }
}

/*----------------------------------------------------------------------------------
SP
----------------------------------------------------------------------------------*/
@media screen and (max-width: 640px) {
    .sp_only {
        display: block !important;
    }

    .titlestyle01 {
        font-size: 26px;
        padding-top: 50px;
    }

    .titlestyle01::before {
        height: 40px;
    }

    .titlestyle02 {
        font-size: 18px;
        letter-spacing: 0.075em;
        padding-bottom: 20px;
    }

    .titlestyle02::after {
        width: 25%;
    }

    .linkbutton_style02.button_left {
        text-align: center;
    }

    #footer {
        padding: 0;
        background-size: 200% auto;
    }

    #footer footer #footer_address {
        margin: 40px 5% 30px;
    }

    #footer footer #footer_address dl dt {
        width: 50%;
        max-width: 250px;
    }

    #footer footer #footer_address dl dd {
        font-size: 14px;
        letter-spacing: 0.025em;
        margin-bottom: 20px;
    }

    /*-----------ページトップ-----------*/
    #pagetop {
        position: relative;
        bottom: 0;
        right: 0;
        width: 100%;
        display: block;
        z-index: 2;
    }

    #pagetop a {
        width: 100%;
        height: 50px;
        border: none;
    }

    #pagetop a::after {
        top: 22px;
    }

    /*-----------footer-----------*/
    #footer footer #footer_link,
    #footer footer #footer_link ul {
        padding: 0;
    }

    #footer footer #footer_link .rapperfix {
        max-width: 100%;
        box-sizing: border-box;
    }

    #footer footer #footer_link ul li {
        width: 100%;
    }

    #footer footer #footer_link ul li dl dt,
    #footer footer #footer_link ul li dl dd {
        display: none;
    }

    #footer footer #footer_link ul li dl dt.sp_acc {
        display: block;
    }

    #footer footer #footer_link ul li > div,
    #footer footer #footer_link ul li dl {
        margin-bottom: 0;
        border-bottom: solid 1px rgba(255, 255, 255, .05);
    }

    #footer footer #footer_link ul li > div a,
    #footer footer #footer_link ul li dl dt.sp_acc {
        position: relative;
        padding: 20px 5%;
        font-size: 16px;
        display: block;
    }

    #footer footer #footer_link ul li > div a::before,
    #footer footer #footer_link ul li dl dt.sp_acc::before,
    #footer footer #footer_link ul li dl dt.sp_acc::after,
    #footer footer #footer_link ul li dl dd a::before {
        content: " ";
        position: absolute;
    }

    #footer footer #footer_link ul li dl dt.sp_acc::before,
    #footer footer #footer_link ul li dl dt.sp_acc::after {
        background-color: #fff;
        top: 50%;
        right: 5%;
        width: 12px;
        height: 1.5px;

    }

    #footer footer #footer_link ul li dl dt.sp_acc::before,
    #footer footer #footer_link ul li dl dt.sp_acc.active::after {
        transition: -webkit-transform .2s;
        transition: transform .2s;
        transition: transform .2s, -webkit-transform .2s;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    #footer footer #footer_link ul li dl dt.sp_acc::after {
        transition: -webkit-transform .2s;
        transition: transform .2s;
        transition: transform .2s, -webkit-transform .2s;
        -webkit-transform: translateY(-50%) rotate(-90deg);
        transform: translateY(-50%) rotate(-90deg);
    }

    #footer footer #footer_link ul li dl dt {
        margin-bottom: 0;
        color: #fff;
    }

    #footer footer #footer_link ul li dl dd {
        margin-top: 20px;
    }

    #footer footer #footer_link ul li dl dd a {
        display: block;
        font-size: 13px;
        padding: 0 5% 8px;
    }

    #footer footer #footer_link ul li .ex_link {
        text-align: center;
    }

    #footer footer #footer_sub_link ul li {
        font-size: 13px;
        letter-spacing: 0.05em;
        line-height: 1.6;
    }
}

@media (max-width: 768px) {
    .inner, .inner-s, .inner-m {
        padding: 0 15px;
    }

    .sp {
        display: block;
    }

    .pc {
        display: none;
    }

    body {
        font-size: 14px;
        line-height: 24px;
    }

    .main {
        padding: 80px 0;
    }

    .crumbs {
        padding: 7px 15px;
        flex-wrap: wrap;
    }

    .crumbs span {
        padding: 0 5px;
    }

    .crumbs a {
        font-size: 12px;
        line-height: 20px;
    }

    .kv-text h4 {
        font-size: 16px;
        line-height: 24px;
    }

    .kv-text h3 {
        font-size: 32px;
        line-height: 40px;
    }

    .section-title {
        position: relative;
        padding: 40px 0 25px;
    }

    .section-title::before {
        height: 35px;
    }

    .section-title h3 {
        font-size: 26px;
        line-height: 40px;
    }

    .section-title h3 span {
        font-size: 16px;
        display: block;
        line-height: 20px;
    }

    .section-box {
        padding-top: 50px;
    }

    .section-content {
        padding: 30px 20px;
    }

    .section-title1 {
        padding-bottom: 10px;
    }

    .section-title1 > h3 {
        font-size: 18px;
        line-height: 28px;
    }

    .question-item {
        padding-bottom: 30px;
    }

    .section-answer {
        margin-top: 15px;
        padding: 8px 0;
    }

    .section-answer input[type="radio"] {
        width: 18px;
        height: 18px;
    }

    .section-corfm {
        padding: 50px 0 70px;
    }

    .section-btn {
        margin-top: 40px;
    }

    .section-btn button {
        width: 100%;
        padding: 10px 0;
        font-size: 18px;
        line-height: 24px;
        border-radius: 28px;
    }

    .contact-box {
        padding-top: 10px;
        flex-wrap: wrap;
    }

    .contact-item {
        width: 100%;
        margin-bottom: 20px;
    }

    .contact-item:last-child {
        margin-bottom: 0;
    }

    .section-step {
        flex-wrap: wrap;
    }

    .step-item {
        width: calc(50% - 13px);
        margin-bottom: 10px;
    }

    .step-item p {
        font-size: 12px;
        line-height: 30px;
        padding: 0 5px;
        position: relative;
        z-index: 2;
    }

    .section-tips2 {
        margin: -15px 0 30px;
    }

    .section-tips2 p {
        font-size: 13px;
        line-height: 20px;
    }

    .section-content dl {
        flex-wrap: wrap;
        margin-bottom: 20px;
    }

    .section-content dt {
        width: 100%;
        margin-bottom: 10px;
    }

    .section-content dd {
        width: 100%;
    }

    .form-tips {
        padding-top: 5px;
        font-size: 12px;
    }

    .section-content .ipt {
        padding: 0 5px;
        font-size: 14px;
    }

    .ipt4 {
        width: 60px;
        margin-left: 6px;
    }

    .add-btn span {
        margin-left: 0;
    }

    .section-tips3 {
        margin: -15px 0 30px;
    }

    .form-select {
        width: 100%;
        font-size: 14px;
    }

    .ipt7 {
        width: calc(100% - 14px);
    }

    .ipt6 {
        width: calc(33.333% - 1em);
    }

    .section-btn2 {
        margin-top: 0;
        flex-wrap: wrap;
    }

    .section-btn2 .btn {
        width: 100%;
        margin-bottom: 15px;
    }

    .section-btn2 .btn:last-child {
        margin-bottom: 0;
    }

    .section-btn button span {
        line-height: 24px;
    }

    .btn-back span {
        left: 25px;
    }

    .table-box {
        width: 90%;
    }

    .ipt3 {
        margin-right: 7px;
        width: 15px;
        height: 15px;
    }

    .form-flex5 label {
        margin-right: 50px;
    }

    .form-flex3 label {
        margin-right: 10px;
    }

    .form-flex3 .no-wrap {
        flex-wrap: nowrap;
        align-items: flex-start;
    }

    .form-flex4 span {
        width: calc(100% - 38px);
    }

    .input-dl1 {
        padding: 25px;
    }

    .pravicy-box {
        padding: 15px;
    }

    .confirm-data-item {
        padding: 15px;
    }

    .confirm-data-item dl {
        padding: 10px;
        margin: 0;
    }

    .section-title4 p {
        font-size: 18px;
        line-height: 26px;
    }

    .confirm-data {
        margin-bottom: 40px;
    }

    .complete-box {
        padding-bottom: 60px;
    }

    .complete-text {
        padding-top: 40px;
    }

    .ipt8 {
        width: 100%;
        box-sizing: border-box;
    }

    .classification-table {
        padding: 20px 0 50px;
    }

    .classification-table th:first-child {
        width: 15%;
    }

    .classification-table th:nth-child(3) {
        width: 30%;
    }

    .qa-box {
        padding-top: 20px;
    }

    .qa-item {
        margin-bottom: 20px;
    }

    .qa-q {
        padding: 10px 36px 10px 10px;
    }

    .qa-q i {
        right: 10px;
        width: 16px;
        height: 16px;
        margin-top: -8px;
    }

    .qa-q h3 {
        font-size: 15px;
        line-height: 26px;
    }

    .qa-item.active .qa-a {
        padding: 10px 15px;
    }

    .name-input-box {
        width: 100%;
        box-sizing: border-box;
    }

    .section-title3 {
        padding-top: 20px;
        text-align: center;
    }

    .section-title3 h4 {
        font-size: 18px;
        line-height: 26px;
    }

    .section-btn3 {
        margin: 0;
    }

    .section-btn3 .btn {
        width: 100%;
        box-sizing: border-box;
        margin: 15px 0 0;
    }

    .section-btn3 .btn:first-child {
        margin-top: 0;
    }

    .complete-title {
        font-size: 20px;
        line-height: 30px;
    }

    .section-btn4 {
        margin: 30px 0 70px;
    }

    .section-btn4 .home-link {
        width: 100%;
        padding: 10px 0;
        font-size: 18px;
        line-height: 24px;
        border-radius: 28px;
        margin: 0 auto 25px;
    }

    .section-btn4 .home-link:last-child {
        margin-bottom: 0;
    }
}

@media (max-width: 768px) {
    .ipt5 {
        width: 35px;
    }

    .ipt4 {
        width: 50px;
    }
}