@charset "UTF-8";

input[type="text"]{ width: 100%; max-width: 400px; }
input[name="address"]{ width: 100%; max-width: 580px; }
input[name="birth_y"]{ width: 100%; max-width: 120px; }
input[name="birth_m"]{ width: 100%; max-width: 80px; }
input[name="birth_d"]{ width: 100%; max-width: 80px; }
input[name="age"]{ width: 100%; max-width: 100px; }
input[name="area"]{ width: 100%; max-width: 470px; }
textarea{ width: 100%; max-width: 700px; height: 150px; }
select{ font-size: 1rem; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; position: relative; z-index: 1; padding: 5px 40px 5px 10px; border: 1px solid #cccccc; border-radius: 3px; background-color: #ffffff; }
select::-ms-expand{ display: none; }
#main .hero-ext{ position: relative; padding: 200px 0 90px; z-index: 40; background: url(../../../../assets/image/bg01.jpg) 0 0 repeat-y; background-size: 100% auto; overflow: hidden; }
#main .hero-ext .deco{ position: absolute; left: 50%; top: 58%; transform: translate(-50%,-50%); width: 741px; }
#main .hero-ext .ttl-body{ position: relative; margin: 0; width: 100%; text-align: center; }
#main .hero-ext .ttl-body .ttl{ font-size: 3.75rem; line-height: 1.2; color: #111111; font-weight: 900; }
#main .hero-ext .ttl-body .en{ font-size: 1.125rem; color: #38a2ff; margin-top: 10px; font-family: 'YakuHanJP', 'Outfit', sans-serif; }
#main .section-entry{ background-color: #38a2ff; padding: 70px 0 154px; }
#main .section-entry .section-body{ max-width: 920px; margin: 0 auto; padding: 0 4%; }
#main .section-entry .section-body .intro{ font-size: 1rem; line-height: 2.1875; color: #ffffff; text-align: center; margin-bottom: 45px; }
#main .section-entry .section-body .note{ padding: 60px 0 0; }
#main .section-entry .section-body .note .txt,
#main .section-entry .section-body .note .txt-error{ font-size: 1rem; text-align: center; }
#main .section-entry .section-body .note .txt{ color: #ffffff; }
#main .section-entry .section-body .note .txt-error{ color: #ffff00; }
#main .section-entry .section-body .home-btn{ max-width: 268px; margin: 60px auto 0; }
#main .section-entry .section-body .home-btn a{ display: block; background-color: #ffffff; color: #38a2ff; text-decoration: none; height: 74px; border-radius: 37px; text-align: center; position: relative; }
#main .section-entry .section-body .home-btn a .word{ font-weight: bold; font-size: 1.25rem; position: absolute; left: 50%; top: 50%;transform: translate(-50%,-50%); white-space: nowrap; }
#main .section-entry .section-body .home-btn a .icon{ width: 62px; padding-top: 62px; background-color: transparent; border-radius: 50%; position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
#main .section-entry .section-body .home-btn a .icon .arrow{ width: 22.5806%; height: 1px; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); background-color: #38a2ff; border-left-color: #38a2ff; }
#main .section-entry .section-body .home-btn a .icon .arrow::before{ content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); border: solid transparent; border-width: 4px 0 4px 4px; border-left-color: inherit; }
#main .interview-section .inner-body .tail{ position: absolute; left: 0; bottom: 0; margin-left: 4%; }
#main .section-entry .section-body .ttl{ font-size: 34px; line-height: 1.2; color: #3cb9d8; font-weight: bold; border-bottom: 3px solid #3cb9d8; padding-bottom: 15px; }
#main .section-entry .section-body .field-item{ padding: 15px 0; border-bottom: 1px dotted rgba(255,255,255,0.7); display: -ms-flex; display: flex; }
#main .section-entry .section-body .field-item.error{ background-color: rgba(181, 0, 0, 0.5) }
#main .section-entry .section-body .field-item .field-head{ font-weight: bold; color: #ffffff; width: 250px; position: relative; line-height: 1.7; }
#main .section-entry .section-body .field-item .field-head .icon-required{ background-color: #38c5ff; color: #ffffff; font-weight: 500; font-size: 0.86rem; line-height: 1.5; padding: 3px 10px; position: absolute; right: 40px; top: 0; border-radius: 13px; }
#main .section-entry .section-body .field-item .field-body{ flex: 1; line-height: 1.7; color: #ffffff; }
#main .section-entry .section-body .field-item .field-body .separate+.separate{ border-top: 1px solid #e5e5e5; margin-top: 15px; padding-top: 15px; }
#main .section-entry .section-body .field-item .field-body label,
#main .section-entry .section-body .field-item .field-body .separate{ color: #ffffff; }
#main .section-entry .section-body .field-item .field-body label{ display: inline-block; padding-right: 1em; }
#main .section-entry .section-body .field-item .field-body .caption{ font-size: 90%; display: block; }
#main .section-entry .section-body .field-item .error-txt{ font-size: 1rem; color: #ffff00; margin-top: 5px; }
#main .section-entry .section-body .btn-wrapper{ display: -ms-flex; display: flex; flex-direction: row-reverse;  justify-content: center; margin-top: 50px; }
#main .section-entry .section-body .btn-wrapper .item{ flex: 1; max-width: 244px; }
#main .section-entry .section-body .btn-wrapper:not(:has(.prev-btn)) .item{ max-width: 548px; }
#main .section-entry .section-body .btn-wrapper .item+.item{ margin-right: 20px; }
#main .section-entry .section-body .submit-btn{ text-align: center; position: relative; }
#main .section-entry .section-body .submit-btn input,
#main .section-entry .section-body .submit-btn button,
#main .section-entry .section-body .submit-btn a,
#main .section-entry .section-body .prev-btn input,
#main .section-entry .section-body .prev-btn button,
#main .section-entry .section-body .prev-btn a{ border: none; font-size: 1.25rem; line-height: 1.5; font-weight: bold; padding: 35px 0; border-radius: 50px; box-sizing: border-box; display: inline-block; text-decoration: none; width: 100%; cursor: pointer; background-color: rgba(255,255,255,0); position: relative; z-index: 10; opacity: 0; }
#main .section-entry .section-body .submit-btn input,
#main .section-entry .section-body .submit-btn button,
#main .section-entry .section-body .submit-btn a{ color: #ffffff; }
#main .section-entry .section-body .prev-btn{ text-align: center; position: relative; }
#main .section-entry .section-body .prev-btn input,
#main .section-entry .section-body .prev-btn button,
#main .section-entry .section-body .prev-btn a{ color: #666666; }
#main .section-entry .section-body .submit-btn .appearance,
#main .section-entry .section-body .prev-btn .appearance{ color: inherit; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
#main .section-entry .section-body .submit-btn .appearance .word,
#main .section-entry .section-body .prev-btn .appearance .word{ color: inherit; font-size: 1.25rem; line-height: 1.5; position: absolute; left: 0; width: 100%; top: 50%; transform: translateY(-50%); text-align: center; font-weight: bold; z-index: 5; }
#main .section-entry .section-body .submit-btn .appearance .word{ color: #ffffff; }
#main .section-entry .section-body .prev-btn .appearance .word{ color: #666666; }
#main .section-entry .section-body .submit-btn .fill-bg,
#main .section-entry .section-body .prev-btn .fill-bg{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-radius: 50px; pointer-events: none; }
#main .section-entry .section-body .submit-btn .fill-bg::before,
#main .section-entry .section-body .submit-btn .fill-bg::after{ content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-radius: 50px; }
#main .section-entry .section-body .submit-btn .fill-bg::before{ background: linear-gradient(to right, #38a2ff 0%, #ffffff 100%); transform: translateY(8px); }
#main .section-entry .section-body .submit-btn .fill-bg::after{ background: linear-gradient(to right, #002fec 0%, #095cca 100%); }
#main .section-entry .section-body .prev-btn .fill-bg::before,
#main .section-entry .section-body .prev-btn .fill-bg::after{ content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; border-radius: 50px; }
#main .section-entry .section-body .prev-btn .fill-bg::before{ background: linear-gradient(to right, #38a2ff 0%, #ffffff 100%); transform: translateY(8px); }
#main .section-entry .section-body .prev-btn .fill-bg::after{ background: linear-gradient(to right, #eeeeee 0%, #ffffff 100%); }
#main .section-entry .section-body .submit-btn .icon{ width: 60px; padding-top: 60px; border-radius: 50%; position: absolute; right: 0; top: 50%; transform: translateY(-50%); background-color: #ffffff; pointer-events: none; margin-right: 15px; }
#main .section-entry .section-body .submit-btn .icon .arrow{ width: 22.5806%; height: 1px; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); background-color: #38a2ff; }
#main .section-entry .section-body .submit-btn .icon .arrow::before{ content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); border: solid transparent; border-width: 4px 0 4px 4px; border-left-color: #38a2ff; }
#main .section-entry .section-body .agreement-note{ margin: 70px auto 0; text-align: center; }
#main .section-entry .section-body .agreement-note.error{ padding: 15px 0; background-color: rgba(181, 0, 0, 0.5) }
#main .section-entry .section-body .agreement-note .agreement{ font-size: 1.125rem; color: #ffffff; font-weight: 500; cursor: pointer; }
#main .section-entry .section-body .agreement-note .error-txt{ margin-top: 5px; font-size: 1rem; text-align: center; color: #ffff00; }
#main .section-entry .section-body .agreement-note .caption{ margin-top: 20px; font-size: 1rem; color: #ffffff; }
#main .section-entry .section-body .grecaptcha-badge{ z-index: 9999; }







@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 900px) {
}
@media screen and (max-width: 767.5px) {
	input[type="text"],
	input[name="address"],
	input[name="area"],
	textarea{ max-width: none; }
	input[name="birth_y"]{ max-width: 120px; }
	input[name="birth_m"]{ max-width: 80px; }
	input[name="birth_d"]{ max-width: 80px; }
	input[name="age"]{ max-width: 100px; }
	#main .hero-ext{ padding: 26.6666% 0 16%; }
	#main .hero-ext .deco{ width: 88.2584%; top: 52%; }
	#main .hero-ext .ttl-body .ttl{ font-size: 2.85rem; }
	#main .hero-ext .ttl-body .en{ font-size: 0.714rem; margin-top: 1vw; }
	#main .section-entry{ padding-top: 10.6666%; padding-bottom: 21.3333%; }
	#main .section-entry .section-body{ padding: 0 10%; }
	#main .section-entry .section-body .intro{ line-height: 2; margin-bottom: 7%; text-align: left; }
	#main .section-entry .section-body .note{ padding: 10% 0 0; }
	#main .section-entry .section-body .home-btn{ max-width: none; width: 76.6666%; margin-top: 16.6667%; }
	#main .section-entry .section-body .home-btn a{ height: 0; padding-top: 28.6956%; border-radius: 9.8666vw; }
	#main .section-entry .section-body .home-btn a .word{ font-size: 1.14rem; }
	#main .section-entry .section-body .home-btn a .icon{ width: 25%; padding-top: 25%; }
	#main .section-entry .section-body .ttl{ font-size: 1.4285rem; border-bottom-width: 2px; padding-bottom: 3%; }
	#main .section-entry .section-body .field-item{ padding: 6% 0; display: block; }
	#main .section-entry .section-body .field-item .field-head{ padding-right: 16%;width: auto; display: inline-block; margin-bottom: 5px; }
	#main .section-entry .section-body .field-item .field-head .icon-required{ padding: 0.5333vw 2vw; border-radius: 2.9333vw; right: 0; }
	#main .section-entry .section-body .field-item .field-body .separate+.separate{ margin-top: 5%; padding-top: 5%; }
	#main .section-entry .section-body .btn-wrapper{ margin-top: 15%; }
	#main .section-entry .section-body .btn-wrapper .item+.item{ margin-right: 2%; }
	#main .section-entry .section-body .submit-btn input,
	#main .section-entry .section-body .submit-btn button,
	#main .section-entry .section-body .submit-btn a,
	#main .section-entry .section-body .prev-btn input,
	#main .section-entry .section-body .prev-btn button,
	#main .section-entry .section-body .prev-btn a{ font-size: 1.14rem; padding: 10.1333vw 0; border-radius: 26.6666vw; }
	#main .section-entry .section-body .submit-btn .fill-bg::before{ transform: translateY(2.1333vw); }
	#main .section-entry .section-body .prev-btn .fill-bg::before{ transform: translateY(2.1333vw); }
	#main .section-entry .section-body .submit-btn .icon{ width: 15vw; padding-top: 15vw; margin-right: 5vw; }
	#main .section-entry .section-body:has(.prev-btn) .submit-btn .icon{ width: 10vw; padding-top: 10vw; }
	#main .section-entry .section-body .agreement-note{ margin: 10% auto 0; }
	#main .section-entry .section-body .agreement-note.error{ padding: 5% 0; background-color: rgba(181, 0, 0, 0.5) }
}




/*hover*/
/*-------------------------------------------------------*/
#main .section-entry .section-body .appearance{ transition: transform 0.3s; }
#main .section-entry .section-body .btn-fill:active~.appearance{ transform: scale(1.03); }
#main .section-entry .section-body .home-btn a{ transition: transform 0.3s; }
#main .section-entry .section-body .home-btn a:active{ transform: scale(1.03); }

@media (hover: hover){
	#main .section-entry .section-body .btn-fill:hover~.appearance{ transform: scale(1.03); }
	#main .section-entry .section-body .home-btn a:hover{ transform: scale(1.03); }
}