body {font-style: normal;}
html {font-size:10px;}
@media (max-width:750px){
	html {font-size:calc(1000vw/750);}
}

#main {max-width:750px; margin:auto; background:#ebf0f8;}
.cont_full img {width:100%;}


.fbox {padding:6.7rem 5rem 0; background:#bce0ff;}

.agree_box {padding:4rem 5rem; background:#fff;}
.agree_box .tit {margin:0 -5rem; font-size:5.2rem; color:#1f3fed; font-weight:600; text-align:center; letter-spacing:-0.04em;}
.agree_box .stxt {margin-top:1.5rem; font-size:2rem; color:#6b6b6b; line-height:1.3333; font-weight:500; word-break:keep-all; letter-spacing:-0.08em;}

.agree_chk {margin:5rem 0 6rem;}
.agree_chk li {display:flex; align-items: center;}
.agree_chk li+li {margin-top:1.5rem;}
.agree_chk button {font-size:3.5rem; color:#2a2a2a; font-weight:500;}
.inp_chk {display:inline-flex; align-items: center; position:relative; vertical-align: middle; cursor: pointer;}
.inp_chk input{position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;}
.inp_chk i {display:block; width:3.8rem; height:3.8rem; margin-right:1.5rem; border:0.2rem solid #2a2a2a;}
.inp_chk i::after {background-color: transparent; position:absolute; top: 50%; left: 0; width: 3.5rem; height: 1.6rem; margin-top: -0.8rem; border-style: solid; border-color: #2a2a2a; border-width: 0 0 0.6rem 0.6rem; transform: rotate(-45deg) scale(0); transition: none; content:''; transition: transform 0.2s;}
.inp_chk input:checked + i::after {transform: rotate(-45deg) scale(1) translate(29%, -43%);}

.btn_all_agree {display:block; width:100%; height:11.6rem; margin:auto; font-size:5rem; font-weight:500; color:#fff; text-align:center; background:#1f3fed;}

.frow {display:flex; margin-top:3.5rem;}
.frow label {margin-right:0.8rem; padding:0 3.8rem; border-radius:0.6rem; color:#fff; font-size:2.6rem; color:#fff; line-height:6.7rem; background:#232323;}
.frow input {flex:1; min-width:0; width:auto; height:6.7rem; padding-left:2rem; border:1px solid #232323; border-radius:0.6rem; font-size:2.6rem; color:#232323;}

.btxt {display:flex; margin-top:2rem; font-size:2rem; line-height:1.4; color:#ad0e0e; word-break:keep-all;}
.btxt div {flex:1; min-width:0; margin-left:0.6rem;}

.notice {padding:7.5rem 6rem 25rem 5rem; color:#919191; font-size:2.2rem; font-weight:500; line-height:1.818; word-break:keep-all; background:#2a2a2a;}
.notice h2 {padding-left:4.3rem; font-size:3.4rem; font-weight:600; background:url('../images/icon_i.png') no-repeat 0 center; background-size:3.4rem auto;}
.notice h3 {position:relative; padding-left:1.2rem; margin-top:3rem;}
.notice h3::before {position:absolute; top:0; left:0; content:'-';}

.fc_point {color:#bda257 !important;}

.list_t1 > li {position:relative; padding-left:2rem;}
.list_t1 > li::before {position:absolute; left:0.4rem; top:1.8rem; width:0.4rem; height:0.4rem; border-radius:100%; background:#919191; content:'';}

.list_t2 > li {position:relative; padding-left:2.2rem;}
.list_t2 > li::before {position:absolute; top:0; left:0.6rem; content:'-';}


.list_t3 > li {position:relative; padding-left:1.1rem; line-height:1.55;}
.list_t3 > li::before {position:absolute; left:0rem; top:1.4rem; width:0.4rem; height:0.4rem; border-radius:100%; background:#919191; content:'';}

.list_t4 li {display:flex; position:relative; padding-left:1.1rem; line-height:1.55;}
.list_t4 li > span {margin-right:0.7rem;}
.list_t4 li > p {flex:1; min-width:0;}

.cont_t1 {display:flex; gap:0.5rem; margin-left:-2rem;}
.cont_t1 p {flex:1; min-width:0;}

.btn_event {position:fixed; left:50%; bottom:0; z-index:1110; width:100%; transform:translateX(-50%); max-width:750px; height:13rem; line-height:13rem; text-align:center; font-size:3.8rem; font-weight:600; color:#2a2a2a; background:#f5cd47;}


.privacy_pop {display:none; position:fixed; top:50%; left:50%; z-index:100001; transform:translate(-50%,-50%); width:95%;  max-width:62rem; border-radius:4rem; background:#fff;}
.privacy_pop .top {display:flex; align-items:center; justify-content:space-between; height:10.6rem; padding:0 3.5rem; border-bottom:1px solid #e7e7e7;}
.privacy_pop h2 {font-size:3.4rem; color:#2e2e2e; font-weight:600;}
.privacy_pop .btn_pop_close {width:4.6rem; height:4.6rem; background:url('../images/icon_close.png') no-repeat center; background-size:2.7rem auto;}
.privacy_pop .pcont {padding:4rem 3.5rem; color:#2e2e2e; word-break:keep-all; font-size:2.05rem;}


.ptit {font-size:2.2rem; font-weight:600; letter-spacing:-0.07em;}
.ptxt1 {font-size:2rem; color:#4f4f4f; line-height:1.523;}
.ptxt1 strong {font-weight:600;}

.mt_10 {margin-top:1rem;}
.mt_30 {margin-top:3rem;}
.mt_40 {margin-top:4rem;}
.fs_22 {font-size:2.2rem !important;}
.fc_red {color:#aa2638 !important;}
.fc_blue {color:#2639aa !important;}
.fc_gray {color:#97989a !important;}


.ptable {overflow:hidden;}
.ptable > div {margin:0 -1px;}
.ptable table {width:100%; table-layout:fixed;}
.ptable th,
.ptable td {border:1px solid #e7e7e7; font-size:1.9rem; font-weight:500; text-align:center; line-height:1.25;}
.ptable th {padding:2.5rem 0.5rem; color:#4f4f4f; white-space:nowrap; border-top:1px solid #97989a; background:#f2f2f2;}
.ptable td {height:8rem; padding:1.4rem 0.5rem; font-size:2.05rem; color:#000000;}

.ptxt2 {display:flex; font-size:2.05rem; line-height:1.5; font-weight:500; color:#838383;}
.ptxt2::before {margin-right:0.5rem; font-weight:500; content:'※';}
.ptxt2 > div {flex:1;}

.dimmed_bg {display:none; position:fixed; z-index:10000; top:0; left:0; right:0; bottom:0; background:rgba(25,25,25,0.8);}

.alert_pop {display:none; position:fixed; top:50%; left:50%; z-index:100001; transform:translate(-50%,-50%); width:95%;  max-width:61rem; border-radius:4rem; background:#fff;}
.alert_pop .pbox {padding:7.5rem 0 4rem; text-align:center;}
.alert_pop .tit {padding-top:17rem; margin-bottom:3rem; font-size:5.1rem; color:#3f45cf; font-weight:600; line-height:1; background:url('../images/pop_i.png') no-repeat center top; background-size:12rem auto;}
.alert_pop .ptxt {font-size:2.9rem; color:#424242; font-weight:500; text-align:center;}
.alert_pop .ptxt.small {font-size:2rem;}
.btn_wrap {display:flex; justify-content:center; margin-top:6rem;}
.btn_wrap .btn {width:24.7rem; height:8rem; border-radius:1.5rem; font-size:3.2rem; color:#fff; font-weight:500; line-height:8rem; background:#3f45cf;}
.btn_wrap .btn+.btn {margin-left:1.6rem; color:#3f45cf; background:#e2e5f9;}

.alert_pop .tdesc > li {position:relative; padding-left:8rem; text-align: left; font-size: 2.6rem;}
.alert_pop .tdesc > li::before {position:absolute; top:0; left:6rem; content:'*';}