@charset "utf-8";

/* ---------------------------------
		form
------------------------------------*/
._fix {
    height: 100%;
    min-height: auto;
    overflow: hidden;
    position: fixed;
    width: 100%;
}
.formTable {
    margin-top: 75px;
}
.formTable2 {
    margin-top: 50px;
}
.formInfoBox {
    
}
.formTableBlock {
    border-radius: 10px;
    padding: 40px 25px;
    background-color: #FFF;
	box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}
.formTableBlock:nth-child(n+2) {
    margin-top: 50px;
}
.formTableBlockHeader {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formTableBlockHeaderText {
    width: 500px;
    font-size: 20px;
    font-weight: 700;
    color: #FF0000;
}
.formTableList {
    width: 100%;
}
.infoBoxWrap + .formTableList {
    margin-top: 50px;
}
.formTableBlockHeader + .formTableList {
    margin-top: 20px;
}
.formTableLine {
    padding: 15px 0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formTableTitle {
    position: relative;
    width: 280px;
    padding: 5px 10px 5px 0;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-align: flex-start;
	-ms-flex-align:  flex-start;
	align-items:  flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formTableTitleText {
    font-weight: 700;
}

.require {
    display: block;
    border-radius: 5px;
    padding: 2px 10px;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    background-color: #FF0000;
    margin-right: 10px;
}
.noRequire {
    display: block;
    border-radius: 5px;
    padding: 2px 10px;
    font-size: 12px;
    font-weight: 700;
    color: #333333;
    background-color: #fff;
    border: 1px solid #333333;
    margin-right: 10px;
}
.deleteBtn {
    display: block;
    border-radius: 8px;
    padding: 3px 15px;
    font-weight: 700;
    color: #fff;
    background-color: #707070;
}

.formTableInput {
    position: relative;
    width: calc(100% - 280px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formTableInputList {
    width: 100%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formTableInputList__twoLine {
    /* width: auto;
    margin-right: 10px; */
    width: 49%;
    margin-right: 2%;
}
.formTableInputList__twoLine:nth-child(n+2) {
    margin-right: 0;
}
.formTableInputList__choices {
    margin-top: -10px;
}
.formTableInputListItem {
    margin-right: 8px;
}
.formTableInputListItem:last-child {
    margin-right: 0;
}
.formTableInputListChoicesAuto {
    min-width: 25%;
    padding-right: 2.5%;
}

.formPrivacyBlock {
    margin-top: 60px;
}
.formPrivacyWrap {
    margin-top: 30px;
}
.formPrivacyWrap .inputCheckbox + label {
    display: inline-block;
}
.formBtnListWrap {
    margin-top: 40px;
}
.loginBtnMargin01{
    margin-top: 40px;
}

.formBtnListWrap .btn:nth-child(n+2) {
    margin-left: 40px;
}
.btnListMargin01 .btn:nth-child(n+2) {
    margin-left: 30px;
}

.inputFileBox {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.uploadFile {
	display: none;
}
.resumeUploadLabel {
    margin-right: 20px;
    display: inline-block;
    border: 1px solid #707070;
    border-radius: 30px;
    padding: 4px 15px;
    line-height: 1.35;
    background-color:#fff;
    color: #333333;
    text-align: center;
    cursor: pointer;
}
.resumeUploadFileName {
    margin-right: 20px;
    margin-top: 4px;
    max-width: 400px;
}
.attachDeleteWrap {
    margin-top: 4px;
}
.attachDeleteBtn {
	color: #FFF;
	font-size: 0.8em;
    font-weight: 700;
	padding: 2px 10px;
	border-radius: 3px;
	background-color: #707070;
}

.formError {
    margin-top: 10px;
    width: 100%;
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #ff0000;
}
.formError + .formError {
    margin-top: 0;
}
.formNote {
    margin-top: 10px;
    width: 100%;
    display: block;
    font-size: 14px;
}
.formNote + .formNote {
    margin-top: 0;
}
.formNote.small {
    font-size: 12px;
}
.formUnit {
    height: 100%;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formUnitText {

}
.formUnitText.small {
    font-size: 14px;
}

.inputSelectYear {
    width: 95px;
}
.inputSelectMonth {
    width: 75px;
}
.inputSelectDay {
    width: 75px;
}
.inputWidth80 {
    width: 80px;
}
.inputWidth110 {
    min-width: 110px;
    width: auto;
}
.inputWidth120 {
    min-width: 120px;
    width: auto;
}
.inputWidth150 {
    min-width: 150px;
    width: auto;
}
.inputWidth160 {
    min-width: 160px;
    width: auto;
}
.inputWidth240 {
    min-width: 240px;
    width: auto;
}
.inputWidth380 {
    min-width: 380px;
    width: auto;
}

.no-display {
    display: none !important;
}

.addBtnText {
    position: relative;
    padding-left: 35px;
}
.addBtnText::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -7.5px;
    width: 15px;
    height: 15px;
    background-image: url("../images/icon_plus_white.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

/*----------------------------------------
        modal
----------------------------------------*/
.modalBoxBg {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 30;
    background-color: rgba(52, 52, 52, 0.95);
}
.modalBoxBg.is-show {
    display: block;
}
.modalBoxWrap {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 35;
    top: 0;
    left: 0;
}
.modalBoxWrap.is-show {
    display: block;
}
.modalBox {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    width: 100%;
    height: 100%;
}
.modalBoxInnerWrap {
    width: 896px;
    position: relative;
    max-height: 90%;
    padding: 18px;
    overflow-y: scroll;
}
.modalBoxClose {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 18px;
    height: 18px;
    background-image: url("../images/btn_spmenu_close.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.modalBoxInner {
    width: 860px;
    position: relative;
    max-height: 90%;
    border-radius: 8px;
    padding: 35px;
    overflow-y: scroll;
    background-color: #fff;
}
.modalBoxInnerWrap::-webkit-scrollbar,
.modalBoxInner::-webkit-scrollbar {
    display: none;
}
.modalBoxHeader {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.modalBoxTitle {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.44;
    letter-spacing: 0;
}
.modalBoxTitle02 {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.05em;
}

.modalBoxBtnWrap {

}
.modalBoxBtn {
	display: block;
	padding: 15px 50px;
	border-radius: 30px;
	background-color: #FF0000;

    font-weight: 700;
    color: #fff;
    text-align: center;
}
.modalBoxBtn:nth-child(n+2) {
    margin-left: 30px;
}
.modalBoxBtn__clear {
    background-color: #F2F2F2;
    color: #333;
}
.modalBoxBtn {

}
.modalBoxBtnText {

}

.modalBoxBody {
    margin-top: 60px;
}
.modalBoxSelectWrap {
    margin-top: 60px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.modalBoxText01 {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.86;
    letter-spacing: 0;
}

.modalBoxSelectTitle {
    margin-right: 40px;
    font-weight: 700;
    line-height: 1.86;
    letter-spacing: 0;
}
.modalBoxSelectError {
    width: 100%;
}
.modalBoxFooter {
    margin-top: 60px;
}
.modalBoxFooterBtnWrap {

}

.modalBoxBody2 {
    margin-top: 30px;
}
.modalBoxFiled {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	/* -webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start; */
    -webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.modalBoxFiledTitle {

}
.modalBoxFiledList {
    height: 100%;
    max-height: 50vh;
    min-height: 50vh;
}
.modalBoxFiledInner {
    height: 100%;
    border-radius: 8px;
    background-color: #F2F2F2;
    padding-right: 5px;
    overflow-y: scroll;
}

.tabListBlock {
    width: 100%;
}
.tabPanelBlock {
    /* border-radius: 8px;
    padding: 25px 0 25px 25px;
    background-color: #F2F2F2; */
}
.tabListBlockLeft {
    width: 260px;
    /* width: 300px; */
}
.tabListBlockRight {
    width: 495px;
    /* width: 455px; */
}
.tabList {
    padding: 25px 0 25px 25px;
}
.tabList__flex {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
    -webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.tabListItem {
    position: relative;
    padding-right: 40px;
    font-size: 14px;
    line-height: 1.2em;
}
.tabListItem__full {
    width: 100%;
}
.tabListItem__3column {
    width: 33.3%;
}
.tabListItem:nth-child(n+2) {
    margin-top: 15px;
}
.tabPanelItem {
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.2em;
}
.tabListTabBtn {
}
.tabListTabBtn + label {
    display: block;
    cursor: pointer;
}
.tabListTabBtn + label.is-current {
    font-weight: 700;
    color: #FF0000;
}
.tabListItemSelect {
    position: absolute;
    top: 0;
    right: 0;
    border: 1px solid #FF0000;
    border-radius: 3px;
    padding: 2px 1px;
    font-size: 11px;
    line-height: 1;
    background-color: #fff;
}

.tabPanelInputCheckbox {
    font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","HiraKakuPro-W3","メイリオ",Meiryo,Arial,sans-serif;
}
.tabPanelInputCheckbox + label {
    position: relative;
    display: inline-block;
	padding: 0 0 0 30px;
	cursor: pointer;
}
.tabPanelInputCheckbox + label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 1.5px;
    display: block;
    height: 14px;
    width: 14px;
    background-color: #fff;
    border-radius: 3px;
    border: 1px solid #888888;
    box-sizing: border-box;
}
.tabPanelInputCheckbox:checked + label {
    font-weight: 700;
    color: #FF0000;
}
.tabPanelInputCheckbox:checked + label::before {
    background-color: #FF0000;
    border: 1px solid #FF0000;
}
.tabPanelInputCheckbox:checked + label:after {
    content: "";
    position: absolute;
    height: 3px;
    width: 6px;
    left: 3px;
    top: 4.5px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/*----------------------------------------
        privacy box
----------------------------------------*/
.formScrollBox {
    counter-reset: num-title-cnt;
    margin-top: 15px;
    padding: 20px;
    max-height: 20em;
    overflow-y: auto;
    text-align: left;
    border: 1px solid #707070;
    background-color: #FFF;
}
.formScrollBox .tosPremise {
    padding-top: 0.5em;
    font-size: 12px;
    line-height: 1.69;
}
.formScrollBox .tosTable {
    margin-top: 1em;
}
.formScrollBox .tosSubTitle01 {
    margin-top: 1em;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.44;
    color: #FF0000;
}
.formScrollBox .tosSubTitle01:first-of-type{
    margin-top: 0;
}
.formScrollBox .tosSubTitle02 {
    margin-top: 1em;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.44;
    color: #FF0000;
}
.formScrollBox .tosText01{
    padding-top: 1em;
    font-size: 12px;
    line-height: 1.64;
}
.formScrollBox .tosText02 {
    font-size: 12px;
    line-height: 1.64;
}
.formScrollBox .tosNumList01 {
    padding-top: 1em;
}
.formScrollBox .numCountListItem {
    margin-top: 0.5em;
}
.formScrollBox .numCountListItem:first-child {
    margin-top: 0;
}
.formScrollBox .tosNumList02 {
    padding-top: 1em;
}
.formScrollBox .numList02Item {
    margin-top: 0.5em;
}
.formScrollBox .numList02Item:first-child {
    margin-top: 0;
}
.formScrollBox .numCountListItem > .tosNumList01,
.formScrollBox .numCountListItem > .tosNumList02,
.formScrollBox .numList02Item > .tosNumList01,
.formScrollBox .numList02Item > .tosNumList02 {
    padding-top: 0.5em;
}
.formScrollBox .tosLinkText {
    color: #707070;
    text-decoration: underline;
}
/*----------------------------------------
  画面の横幅が600pxまで
----------------------------------------*/
@media (max-width: 600px) {

    /* ---------------------------------
            form
    ------------------------------------*/
    .formTable {
        margin-top: 10vw;
    }
    .formTable2 {
        margin-top: 8.33vw;
    }
    .formTableBlock {
        border-radius: 0;
        padding: 0;
        box-shadow: none;
    }
    .formTableBlock:nth-child(n+2) {
        margin-top: 8.33vw;
    }
    .formInfoBox {
    
    }
    .formTableBlockHeaderText {
        width: 75vw;
        font-size: 4.66vw;
    }
    .infoBoxWrap + .formTableList {
        margin-top: 8.33vw;
    }
    .formInfoBox + .formTableList {
        margin-top: 8.33vw;
    }
    .formTableBlockHeader + .formTableList {
        margin-top: 8.33vw;
    }
    .formTableLine {
        padding: 0;
    }
    .formTableLine:nth-child(n+2) {
        margin-top: 8.33vw;
    }
    .formTableTitle {
        width: 100%;
        padding: 0;
        line-height: 1.2;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: start;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    .formTableTitleText {

    }
    .require {
        border-radius: 1.25vw;
        padding: 0.85vw 2vw;
        font-size: 2.83vw;
    }
    .noRequire{
        border-radius: 1.25vw;
        padding: 0.85vw 2vw;
        font-size: 2.83vw;
    }
    .deleteBtn {
        border-radius: 1.33vw;
        padding: 0.5vw 2.5vw;
    }

    .formTableInput {
        width: 100%;
        padding-top: 2.5vw;
    }
    .formTableInputList__twoLine {
        /* width: auto; */
        width: 100%;
        margin-right: 0;
    }
    .formTableInputList__twoLine:nth-child(n+2) {
        margin-top: 2.5vw;
        margin-right: 0;
    }
    .formTableInputList__choices {
        margin-top: -2.5vw;
    }
    .formTableInputListItem {
        margin-right: 1.25vw;
    }
    .formTableInputListItem:last-child {
        margin-right: 0;
    }
    .formTableInputListChoicesAuto {
        min-width: 33%;
        padding-right: 2.5%;
    }
 
    .inputModalBtn {
        border: 0.25vw solid #707070;
        border-radius: 1.25vw;
        padding: 2.5vw 1.25vw;
        line-height: 1.25;
        font-size: 3.5vw;
        background-position: calc(100% - 5vw);
    }
    .inputModalBtn + .formTableInputList {
        width: 100%;
    }
    .inputModalBtn + .formTableInputList .formTableInputListChoices4column {
        margin-top: 0;
    }

    .formPrivacyBlock {
        margin-top: 5vw;
    }
    .formPrivacyWrap {
        margin-top: 7.5vw;
    }
    .formBtnListWrap {
        /* margin-top: 8.33vw; */
        margin-top: 0;
        flex-direction: column-reverse;
        align-items: center;
    }
    .formBtnListWrap .btn.btn__clear {
        min-width: 25vw;
    }
    .formBtnListWrap .btn {
        margin-top: 8.33vw;
        min-width: 72.25vw;
        padding: 4.25vw 0;
    }
    .formBtnListWrap .btn:nth-child(n+2) {
        margin-left: 0;
    }
    .btn__noLeftMargin{
        margin-top: 5vw;
    }
    .formBtnListWrap .btn:first-child {

    }
    .btn__gray{
        background-color: #707070;
    }
    .inputFileBox {

    }
    .uploadFile {

    }
    .resumeUploadLabel {
        margin-right: 3.33vw;
        border-width: 0.16vw;
        border-radius: 5.25vw;
        padding: 1.66vw 3.33vw;
    }
    .resumeUploadFileName {
        margin-right: 1.25vw;
        margin-top: 1.25vw;
        max-width: auto;
        max-width: 100%;
        max-width: inherit;
    }
    .attachDeleteWrap {
        margin-top: 1.25vw;
    }
    .attachDeleteBtn {
        font-size: 0.8em;
        padding: 0.5vw 2.5vw;
        border-radius: 0.75vw;
    }

    .formError {
        margin-top: 1.66vw;
        font-size: 3.5vw;
        letter-spacing: -0.05em;
    }
    .formError + .formError {
        margin-top: 0;
    }
    .formNote {
        margin-top: 1.66vw;
        font-size: 3.5vw;
        letter-spacing: -0.05em;
    }
    .formNote + .formNote {
        margin-top: 0;
    }
    .formNote.small {
        font-size: 3vw;
    }
    .formUnit {
        height: 100%;
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .formUnit {

    }
    .formUnitText {

    }
    .formUnitText.small {
        font-size: 3vw;
    }
    .inputSelectYear {
        width: 16vw;
    }
    .inputSelectMonth {
        width: 13.33vw;
    }
    .inputSelectDay {
        width: 13.33vw;
    }
    .inputWidth80 {
        max-width: 100%;
        width: 20vw;
    }
    .inputWidth110 {
        min-width: 18.33vw;
        width: auto;
    }
    .inputWidth120 {
        max-width: 100%;
        min-width: 19vw;
        width: auto;
    }
    .inputWidth150 {
        min-width: 25vw;
        width: auto;
    }
    .inputWidth160 {
        max-width: 100%;
        min-width: 27.5vw;
        width: 27.5vw;
    }
    .inputWidth240 {
        max-width: 100%;
        min-width: 58.75vw;
        width: 100%;
    }
    .inputWidth380 {
        min-width: 100%;
        width: auto;
    }
    .addBtnText {
        padding-left: 11.66vw;
    }
    .addBtnText::before {
        margin-top: -2.5vw;
        width: 5vw;
        height: 5vw;
    }

    /*----------------------------------------
            modal
    ----------------------------------------*/
    .modalBoxBg {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 30;
        background-color: rgba(52, 52, 52, 0.95);
    }
    .modalBoxBg.is-show {
        display: block;
    }
    .modalBoxWrap {
        display: none;
        position: fixed;
        width: 100%;
        height: 100%;
        z-index: 35;
        top: 0;
        left: 0;
    }
    .modalBoxWrap.is-show {
        display: block;
    }
    .modalBox {
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;

        width: 100%;
        height: 100%;
    }
    .modalBoxInnerWrap {
        width: 100%;
        position: relative;
        max-height: 100%;
        height: 100%;
        padding: 0;
        overflow-y: scroll;
        background-color: #fff;
    }
    .modalBoxClose {
        content: "";
        display: block;
        position: absolute;
        top: 5vw;
        right: 5vw;
        width: 5vw;
        height: 5vw;
        background-image: url("../images/btn_close_line_gray.svg");
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
    }
    .modalBoxInner {
        width: 90vw;
        margin: 0 auto;
        min-height: 90vw;
        border-radius: 2.5vw;
        padding: 9.125vw 4.375vw;
        border: 0.5vw solid #FF0000;
    }
    .modalBoxInnerWrap::-webkit-scrollbar,
    .modalBoxInner::-webkit-scrollbar {
        display: none;
    }
    .modalBoxHeader {
        background-color: #fff;
        padding: 3.33vw 5vw;
    }
    .modalBoxTitle {
        font-size: 6.25vw;
    }
    .modalBoxTitle02 {
        font-size: 5vw;
    }
    .modalBoxBody {
        margin-top: 8.75vw;
    }
    .modalBoxSelectWrap {
        margin-top: 8.75vw;
    }
    .modalBoxText01 {
        font-size: 5vw;
    }

    .modalBoxSelectTitle {
        margin-right: 40px;
        font-weight: 700;
        line-height: 1.86;
        letter-spacing: 0;
    }
    .modalBoxSelectError {
        width: 100%;
    }
    .modalBoxFooter {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        margin-top: 0;
        border-bottom: 0.25vw solid rgba(52, 52, 52, 0.94);
        padding: 5vw 0;
        background-color: #fff;
        z-index: 30;
    }
    .modalBoxFooterBtnWrap {
        padding: 0 3.33vw;

        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .modalBoxFooterBtn {
        display: inline-block;
        width: 71.66vw;
        border-radius: 7.16vw;
        padding: 3.33vw;
        font-size: 4.66vw;
        font-weight: 700;
        line-height: 1.4;
        text-align: center;
        color: #fff;
        background-color: #FF0000;
    }
    .modalBoxFooterLink {
        margin-top: 2.5vw;
        display: inline-block;
        font-size: 3.83vw;
        text-decoration: underline;
        text-align: center;
    }
    .modalBoxFooterBtnText {

    }

    .modalBoxBody2 {
        margin-top: 0;
        height: calc(100vh - 45vw);
        overflow-y: scroll;
        background-color: rgba(52, 52, 52, 0.95);
    }
    .mobile-safari .modalBoxBody2,
    .ios .modalBoxBody2 {
        height: calc(100vh - 65vw);
    }

    .modalBoxFiled {
        display: block;
        height: 100%;
    }
    .modalBoxFiledTitle {

    }
    .modalBoxFiledList {
        max-width: initial;
        max-width: auto;
        max-height: initial;
        max-height: auto;
        height: 100%;
        padding: 3.33vw;
    }
    .modalBoxFiledInner {
        height: 100%;
        border-radius: 1.66vw;
        padding-right: 0;
        background-color: #FFF;
        overflow-y: scroll;
    }
    .tabListBlock {
        width: 100%;
        height: 100%;
    }
    .tabPanelBlock {

    }
    .tabListBlockLeft {
        width: 100%
    }
    .tabListBlockRight {
        width: 100%
    }
    .spEntryOptionList {
        padding: 5vw 3.33vw 0;
    }
    .spEntryOptionList2 {
        padding: 5vw 3.33vw;
    }
    .spEntryOptionListDt {
        width: 100%;
        border-bottom: 0.16vw solid #D3D3D3;
        padding: 0 0 5vw 0;
        background-color: #FFF;
    }
    .spEntryOptionListDd {
        background-color: #fff;
        padding: 5vw 0;
        border-bottom: 0.16vw solid #D3D3D3;
    }

    .tabList {
        padding: 0;
    }
    .tabListItem {
        padding-right: 0;
        font-size: 3.5vw;
    }
    .tabPanelItem {
        margin-top: 0;
        font-size: 3.5vw;
    }
    .tabListTabBtn {

    }
    .tabListTabBtn + label {
        position: relative;
        display: block;
        padding: 0 22vw 0 0;
        font-size: 4.66vw;
        line-height: 1.4;
        letter-spacing: 0.01em;
        font-weight: 700;
        background-color: #fff;
        background-image: url("../images/wedge_down_red.svg");
        background-repeat: no-repeat;
        background-position: right center;
        background-size: 5vw 3vw;
        cursor: pointer;
    }
    .tabListTabBtn + label._contentToggleOpen {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
    .tabListTabBtn + label.is-current {

    }
    .tabListItemSelect {
        position: absolute;
        top: 50%;
        right: 10vw;
        margin-top: -2vw;
        border: 0.25vw solid #FF0000;
        padding: 0.25vw;
        font-size: 3vw;
        color: #fff;
        line-height: 1;
        background-color: #FF0000;
    }
     .tabPanelInputCheckbox + label {
        padding: 5vw 0 5vw 6vw;
        line-height: 1.3em;
        width: 100%;
    }

    .tabPanelItem .tabPanelInputCheckbox + label {
        border: 0.16vw solid #FF0000;
        border-radius: 0.83vw;
        padding: 1.16vw 1.66vw 1.16vw 5.83vw;
        width: auto;
        color: #FF0000;
        font-size: 3.5vw;
        font-weight: 700;
    }
    .tabPanelInputCheckbox + label::before {
        content: none;
    }
    .tabPanelInputCheckbox:checked + label {
        color: #FFF;
        background-color: #FF0000;
    }
    .tabPanelInputCheckbox:checked + label::before {

    }
    .tabPanelInputCheckbox + label:after {
        content: "";
        position: absolute;
        height: 1.66vw;
        width: 2.33vw;
        left: 1.66vw;
        top: 50%;
        margin-top: -1.58vw;
        border-bottom: 0.66vw solid #FF0000;
        border-left: 0.66vw solid #FF0000;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .tabPanelInputCheckbox:checked + label:after {
        height: 1.66vw;
        width: 2.33vw;
        left: 1.66vw;
        top: 50%;
        margin-top: -1.58vw;
        border-bottom: 0.66vw solid #FFF;
        border-left: 0.66vw solid #FFF;
    }

    /* modal checkbox */
    .tabPanelItem2 {
        margin-top: 3.33vw;
        margin-right: 3.33vw;
        display: inline-block;
        font-size: 3.5vw;
        line-height: 1.4em;
    }
    .tabPanelItem2:first-child {
        display: block;
        width: 100%;
        margin-top: 0;
    }
    .tabPanelInputCheckbox2 {
        font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","HiraKakuPro-W3","メイリオ",Meiryo,Arial,sans-serif;
    }
    .tabPanelItem2 .tabPanelInputCheckbox2 + label {
        position: relative;
        display: inline-block;
        border: 0.16vw solid #FF0000;
        border-radius: 0.83vw;
        padding: 1.16vw 1.66vw 1.16vw 5.83vw;
        width: auto;
        color: #FF0000;
        font-size: 3.5vw;
        font-weight: 700;
        cursor: pointer;
    }
    .tabPanelInputCheckbox2 + label::before {
        content: none;
    }
    .tabPanelInputCheckbox2:checked + label {
        color: #FFF;
        background-color: #FF0000;
    }
    .tabPanelInputCheckbox2:checked + label::before {

    }
    .tabPanelInputCheckbox2 + label:after {
        content: "";
        position: absolute;
        height: 1.66vw;
        width: 2.33vw;
        left: 1.66vw;
        top: 50%;
        margin-top: -1.58vw;
        border-bottom: 0.66vw solid #FF0000;
        border-left: 0.66vw solid #FF0000;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .tabPanelInputCheckbox2:checked + label:after {
        height: 1.66vw;
        width: 2.33vw;
        left: 1.66vw;
        top: 50%;
        margin-top: -1.58vw;
        border-bottom: 0.66vw solid #FFF;
        border-left: 0.66vw solid #FFF;
    }

    /*----------------------------------------
            privacy box
    ----------------------------------------*/
    .formScrollBox {
        counter-reset: num-title-cnt;
        margin-top: 3.75vw;
        padding: 4vw;
        max-height: 12em;
        overflow-y: auto;
        text-align: left;
        border: 0.25vw solid #707070;
        background-color: #FFF;
    }
    .formScrollBox .tosPremise {
        padding-top: 0.5em;
        font-size: 3vw;
        line-height: 1.69;
    }
    .formScrollBox .tosTable {
        margin-top: 1em;
    }
    .formScrollBox .tosSubTitle01 {
        margin-top: 1em;
        font-size: 3vw;
        font-weight: 700;
        line-height: 1.44;
        color: #FF0000;
    }
    .formScrollBox .tosSubTitle01:first-of-type{
        margin-top: 0;
    }
    .formScrollBox .tosSubTitle02 {
        margin-top: 1em;
        font-size: 3vw;
        font-weight: 700;
        line-height: 1.44;
        color: #FF0000;
    }
    .formScrollBox .tosText01{
        padding-top: 1em;
        font-size: 3vw;
        line-height: 1.64;
    }
    .formScrollBox .tosText02 {
        font-size: 3vw;
        line-height: 1.64;
    }
    .formScrollBox .tosNumList01 {
        padding-top: 1em;
    }
    .formScrollBox .numCountListItem {
        margin-top: 0.5em;
    }
    .formScrollBox .numCountListItem:first-child {
        margin-top: 0;
    }
    .formScrollBox .tosNumList02 {
        padding-top: 1em;
    }
    .formScrollBox .numList02Item {
        margin-top: 0.5em;
    }
    .formScrollBox .numList02Item:first-child {
        margin-top: 0;
    }
    .formScrollBox .numCountListItem > .tosNumList01,
    .formScrollBox .numCountListItem > .tosNumList02,
    .formScrollBox .numList02Item > .tosNumList01,
    .formScrollBox .numList02Item > .tosNumList02 {
        padding-top: 0.5em;
    }
}