@charset "utf-8";
/*--( font layout )--*/
.fBold{font-weight:bold;}
.fVerdana{font-family:Verdana;}
.fArial{font-family:Arial;}
.elps{
	overflow:hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
}

/*--( rollover )--*/
a:hover img.ro{filter:alpha(opacity=80);opacity:0.8;-webkit-opacity:0.8;-moz-opacity:0.8;-ms-opacity:0.8;-o-opacity:0.8;}

/*--( common class )--*/
.wrapper{
	width:980px;
	margin:0 auto;
}
.bgKey{background:var(--colorFormTitle);}
.bdKey{border:1px solid var(--colorFormTitle);}
.clKey{color:var(--colorFormTitle);}
.lKey,
#pnkz a,
#footer .secLink a,
.copyright a{
	color:#09c;
	text-decoration:none;
}
.lKey:hover,
#pnkz a:hover,
#footer .secLink a:hover,
.copyright a:hover{ text-decoration:underline; }

.btnKey,
.btnCommon01,
.btnCommon02,
.btnCommon03,
.btnCommonFooter01,
.btnCommonFooter02,
.btnCommonFooter03,
.btnSubmit,
.btnrecruit,
.btnFormBack{
	display:block;
	box-sizing:border-box;
	color:#fff;
	text-decoration:none;
	text-align:center;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-ms-border-radius: 4px;
	-o-border-radius: 4px;
	border-radius: 4px;
	position:relative;
}
.btnKey span,
.btnCommon01 span,
.btnCommon02 span,
.btnCommon03 span,
.btnCommonFooter01 span,
.btnCommonFooter02 span,
.btnCommonFooter03 span,
.btnSubmit span,
.btnrecruit span,
.btnFormBack span{
	position:absolute;
	top:48%;
	left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
}
.btnSubmit.no_tap span{
    opacity: 0;
}
.btnKey{
	background:#55BB11;
	-webkit-box-shadow: 0 -4px 0 #4CA80F inset;
	box-shadow: 0 -4px 0 #4CA80F inset;
}
.btnCommon01{
	background:#f90;
	-webkit-box-shadow: 0 -4px 0 #E58900 inset;
	box-shadow: 0 -4px 0 #E58900 inset;
}
.btnrecruit{
    background:#c80b0b;
	-webkit-box-shadow: 0 -4px 0 #a80f0f inset;
	box-shadow: 0 -4px 0 #a80f0f inset;
}
.btnCommon02{
	background:#f66;
	-webkit-box-shadow: 0 -4px 0 #E55C5C inset;
	box-shadow: 0 -4px 0 #E55C5C inset;
}
.btnCommon03{
	background:#FF6666;
	-webkit-box-shadow: 0 -4px 0 #E55C5C inset;
	box-shadow: 0 -4px 0 #E55C5C inset;
}
.btnCommonFooter01{
	background:#3399CC;
	-webkit-box-shadow: 0 -4px 0 #2E89B7 inset;
	box-shadow: 0 -4px 0 #2E89B7 inset;
}
.btnCommonFooter02{
	background:#FF9900;
	-webkit-box-shadow: 0 -4px 0 #E58900 inset;
	box-shadow: 0 -4px 0 #E58900 inset;
}
.btnCommonFooter03{
	background:#FF3300;
	-webkit-box-shadow: 0 -4px 0 #E52E00 inset;
	box-shadow: 0 -4px 0 #E52E00 inset;
}
.btnSubmit{
	background:#c30d24;
	-webkit-box-shadow: 0 -4px 0 #c30d24 inset;
	box-shadow: 0 -4px 0 #ae0c20 inset;
}
.btnFormBack{
	background:#666;
	-webkit-box-shadow: 0 -4px 0 #5C5C5C inset;
	box-shadow: 0 -4px 0 #5C5C5C inset;
}
a.btnKey:hover{ background:#77C941; }
a.btnrecruit:hover{ background:#e65151; }
a.btnCommon01:hover{ background:#FFAD33; }
a.btnCommon02:hover{ background:#FF8585; }
a.btnCommon03:hover{ background:#FF8585; }
.btnCommonFooter01:hover{background:#5CADD6;}
.btnCommonFooter02:hover{background:#FFAD33;}
.btnCommonFooter03:hover{background:#FF5C33;}
a.btnSubmit:hover{ opacity: 0.8; }
a.btnFormBack:hover{ background:#858585; }

.imgFrame{ position:relative; }
.imgFrame img.center{
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
}

/*--( blockTitPage )--*/
.blockTitPage{
	display:table;
	width:980px;
	height:100px;
	margin:0 auto;
}
.blockTitPage .bgKey{
	display:table-cell;
	width:5px;
}
.blockTitPage .tit{
	display:table-cell;
	vertical-align:middle;
	padding:0 0 0 30px;
	background:#fff;
	border:1px solid #D7D1CC;
	border-left:none;
}


body{
	font-size:12px;
	color:#333;
}
#footer {
    font-family: Verdana;
}
#footer .copyright{
	font-size:11px;
	line-height:40px;
	text-align:center;
	background:#F7F7F7;
}
#footer .copyright a{
	text-decoration:underline;
}
/*-----------------------------------------------
    index
-----------------------------------------------*/

.topTit{
    text-align: center;
    padding: 3.3rem 0;
    border-bottom: 0.1rem solid var(--colorBorder);
    margin-bottom: 4rem;
}
.topTit .titTopSub{
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_50);
    color: var(--colorFormTitle);
    margin-bottom: 2rem;
}
.topTit .titTop{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_50);
}

.wrapperTitForm .innerTitForm{
	font-size:22px;
	color:#fff;
	padding:2.3rem 0 2.2rem;
	text-align:center;
}
.secForm .tableForm select{
	width:16.6rem;
}
.secForm .tableForm select.short{
	width:11.6rem;
	margin-right:0.8rem;
}
.secForm .tableForm .selectDate{
	width:4.3rem;
	margin-right:0.5rem;
}
.secForm .dateArea select{
	height:2.8rem;
}
.secForm .tableForm td{
	vertical-align:middle;
}
.secForm .charge{
	padding-top:0.6rem;
}


/** form
========================================*/
.imgFormStep{
	text-align:center;
	margin:0 0 30px;
}
.secForm{
	padding:30px 49px 0;
	border:1px solid #ccc;
	border-top:none;
	margin:0 auto 100px;
}
.secForm .txtGuideFirst{
	font-size:14px;
	line-height:22px;
	padding:0 0 25px;
}
.secForm .txtRequired{
	color:#f00;
}
.secForm .tableForm table{
	width:100%;
	margin:0 0 25px;
}
.secForm .tableForm th{
	width:160px;
	padding:0 10px 0 13px;
	background:#EAE8DF;
	border:1px solid #ccc;
	font-size:14px;
	line-height:20px;
	text-align:left;
	vertical-align:middle;
	font-weight:normal;
}
.secForm .tableForm th.vTop{
    padding: 20px 8px 18px;
	vertical-align:top;
}
.secForm .tableForm td{
	padding:20px 10px 18px 20px;
	background:#fff;
	border:1px solid #ccc;
	font-size:14px;
	line-height:18px;
    vertical-align: middle;
}
.co .tableForm td{
	vertical-align:middle;
}
.secForm .tableForm .inputTxt,
.secForm .tableForm .inputDate,
.secForm .tableForm select,
.secForm .tableForm textarea{
	border:1px solid #ccc;
}
.secForm .tableForm .required .inputTxt,
.secForm .tableForm .required .inputDate,
.secForm .tableForm .required select{
	background:#FFECEC;
}
.secForm .tableForm .required .inputTxt.bgWhite{
    background: #fff;
}
.secForm .tableForm .inputTxt{
	padding:0 0 0 5px;
	height:31px;
	font-size:14px;
}
.secForm .tableForm .inputDate{
	margin:0 10px 0 0;
}
.secForm .tableForm .w50{ width:45px; }
.secForm .tableForm .w80{ width:75px; }
.secForm .tableForm .w150,
.secForm .tableForm .inputDate{ width:145px; }
.secForm .tableForm .w300{ width:300px; }
.secForm .tableForm .w400{ width:400px; }
.secForm .tableForm .w500{ width:500px; }
.secForm .tableForm .h31{ height: 31px; }
.secForm .tableForm .txtGuide{
	font-size:12px;
	padding:13px 0 0;
}
.secForm .tableForm .txtGuide .txtMail{
	font-weight:bold;
	color:#f90;
}
.secForm .tableForm .rowPad{
	padding:0 0 16px;
}
.secForm .tableForm .blockTel01{
	padding:0 0 10px;
}
.secForm .tableForm .blockCheck{
	display:inline-block;
	width:140px;
}
.secForm .js-hope-required .blockCheck{
	display: block;
}
.secForm .js-hope-required .blockCheck + .blockCheck{
	margin-top: 10px;
}
.secForm .tableForm .blockCheck label{
	display:block;
	white-space:nowrap;
	margin:0 0 4px;
}
.secForm .tableForm .listCheck label{
	display:block;
	margin:0 0 4px;
}
.secForm .tableForm .blockCheck label span,
.secForm .tableForm .listCheck label span{
	vertical-align:middle;
}
.secForm .tableForm .txtGuideTel{
	padding:0 0 6px;
}
.secForm .tableForm .txtError{
	display:none;
	font-size:12px;
	color:#f00;
	padding:0 0 0 18px;
	margin:6px 0 0;
	background:url(../img/common/icoFormError.png) left center no-repeat;
}
.secForm .tableForm .btnPostal{
	display:inline-block;
	line-height:33px;
	font-size:12px;
	color:#fff;
	text-align:center;
	background:#333;
	padding:0 12px;
	margin:0 0 0 5px;
	text-decoration:none;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	-ms-border-radius:4px;
	-o-border-radius:4px;
	border-radius:4px;
}
.secForm .tableForm .btnPostal:hover{
	background:#5C5C5C;
}
.secForm .tableForm textarea{
    width: 504px;
    height: 155px;
}
.secForm .txtAgreement{
	font-size:14px;
	line-height:24px;
	text-align:center;
	padding:0 0 24px;
}
.secForm .btnSubmit{
	width:300px;
	height:70px;
	margin:0 auto 76px;
	font-size:17px;
}
.secForm .txtError a{
    color:#f00;
}
.co .btnSubmit{
	margin:0 auto 29px;
}
.co .tableForm table{
	margin:0 0 50px;
}
.secForm .btnFormBack{
	width:300px;
	height:40px;
	margin:0 auto 76px;
	font-size:17px;
}
.secForm .boxTimeSelect{
    margin: 10px 0;
    display: flex;
    padding-left: 23px;
}
.co .btnFormBack{
	margin:0 auto 60px;
    font-weight: bold;
}
.co .topTit {
    padding: 3.3rem 0 0;
    margin-bottom: 0;
}
.ok{
	color:#666;
	text-align:center;
	padding:0 0 26px;
}
.ok .imgFormStep{
	margin:0 0 48px;
}
.ok .titThanks{
	font-size:22px;
	font-weight:normal;
	padding:0 0 48px;
}
.ok .txtThanks{
	font-size:15px;
	line-height:150%;
	padding:0 0 23px;
}
.ok .txtLinkThanks{
	font-size:22px;
}
.ok .txtAttnOk{
	font-size:22px;
}
input[type="radio"] {
    margin: 0 3px 0 5px !important;
}
.ok .txtThanks {
    font-size: 15px;
    line-height: 150%;
    padding: 0 0 23px;
}
.ok .txtAttnOk {
    font-size: 22px;
    font-weight: bold;
    padding: 0 0 48px;
}
.ok .secForm {
    border: none;
}
.ok .wrapperTitForm {
    margin: 0 0 48px;
}
.ok .topTit {
    border: none;
}
.ok a.btnSubmit:hover{ 
    background:#e66565; 
    opacity: 1;
    -webkit-filter: brightness(1.1);filter: brightness(1.1); 
}
.btnCommon04{
    background:#f66;
    -webkit-box-shadow:0 -4px 0 #E55C5C inset;
    box-shadow:0 -4px 0 #E55C5C inset;
}
@media only screen and (max-width:1215px){
    .topTit {
        padding: 2.5rem 0 2.2rem;
        margin-bottom: 2.5rem;
    }
    .topTit .titTopSub {
        font-size: var(--spFontSize18);
        letter-spacing: var(--spLetterSpacing18_50);
        margin-bottom: 1.5rem;
    }
    .topTit .titTop {
        font-size: var(--spFontSize22);
        letter-spacing: var(--spLetterSpacing22_50);
    }
    .imgFormStep {
        margin: 0 0 10px;
    }
    .wrapperTitForm .innerTitForm {
        font-size: 20px;
        padding: 1.4rem 0;
    }
    .secForm {
        padding: 0;
        border: none;
        border-top: none;
        margin: 0 auto 60px;
    }
    .secForm .tableForm table {
        width: 100%;
        margin: 0;
        display: block;
    }
    .secForm .tableForm tbody{
        width: 100%;
        margin: 0;
        display: block;
    }
    .secForm .tableForm table tr{
        display: flex;
        flex-direction: column;
    }
    .secForm .tableForm td {
        padding: 0;
        background: #fff;
        border: none;
        font-size: 14px;
        line-height: 18px;
        width: 100%;
        width: 98%;
        margin: 10px auto 14px;
    }
    .secForm .tableForm th {
        width: 100%;
        padding: 0 10px 0 13px;
        background: #EAE8DF;
        border: 1px solid #ccc;
        font-size: 14px;
        line-height: 20px;
        text-align: left;
        vertical-align: middle;
        font-weight: normal;
    }
    .secForm .tableForm .w300 {
        width: 100%;
    }
    .secForm .tableForm th {
        width: 100%;
        padding: 13px 3% 12px;
        background: #e6e6e6;
        font-size: 13px;
        font-weight: bold;
        color: #000;
        border: none;
    }
    .secForm .tableForm th.vTop {
        padding: 13px 3% 12px;
        vertical-align: top;
    }
    .secForm .tableForm .w50 {
        width: 80px;
    }
    .secForm .tableForm .w80 {
        width: 80px;
    }
    .secForm .tableForm .btnPostal {
        line-height: 32px;
        font-size: 10px;
        padding: 0 10px;
    }
    .secForm .tableForm .w500 {
        width: 100%;
    }
    .secForm .tableForm .w400 {
        width: 100%;
    }
    .secForm .boxTimeSelect {
        margin: 10px 0;
        font-size: 12px;
        padding-left: 30px;
        flex-direction: column;
    }
    .secForm .boxTimeSelect .boxRight{
        margin-top: 10px;
    }
    .secForm .boxTimeSelect .txtSpan{
        min-width: 44px;
        display: inline-block;
    }
    .secForm .boxTimeSelect .txtSpan.span02{
        min-width: 40px;
    }
    .secForm input[type="checkbox"] {
        -webkit-box-sizing: border-box;
        width: 20px;
        height: 20px;
        border: 1px solid #ccc;
        margin-right: 10px;
    }
    .secForm input[type="radio"] {
        -webkit-box-sizing: border-box;
        width: 20px;
        height: 20px;
        border: 1px solid #ccc;
        margin-right: 10px;
    }
    input[type="radio"] {
        margin: 0 10px 0 5px !important;
    }
    .secForm .tableForm .blockCheck {
        width: 100%;
    }
    .secForm .js-hope-required .blockCheck + .blockCheck {
        margin-top: 15px;
    }
    .secForm .tableForm .blockCheck label span, 
    .secForm .tableForm .listCheck label span {
        vertical-align: middle;
        font-size: 12px;
    }
    .secForm .tableForm .w150, 
    .secForm .tableForm .inputDate {
        width: 170px;
    }
    .secForm .tableForm select {
        width: 170px;
    }
    .secForm .tableForm textarea {
        width: 100%;
        height: 155px;
    }
    .secForm .btnSubmit {
        width: 66%;
        margin: 26px auto 20px;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .btnSubmit span{
        position: static;
        font-size: 17px;
        transform: unset;
    }
    .secForm .txtGuideFirst {
        font-size: 12px;
        line-height: 22px;
        padding: 10px 0;
    }
    .secForm .txtAgreement {
        font-size: 12px;
        padding: 20px 0 0;
    }
    .co .btnFormBack {
        width: 66%;
        height: 40px;
        font-size: 14px;
        margin: 0 auto 30px;
    }
    .co .topTit {
        display: flex;
        flex-direction: column-reverse;
        padding: 0;
        margin-bottom: 0;
        border: none;
    }
    .ok .txtAttnOk {
        font-size: 22px;
        font-weight: bold;
        line-height: 120%;
        color: #396;
        padding-bottom: 14px;
    }
    .secOk {
        padding: 26px 20px;
        font-size: 13px;
        line-height: 150%;
        text-align: center;
        color: #333;
    }
    .ok .txtThanks {
        padding: 0;
    }
    .ok .wrapperTitForm {
        margin: 0;
    }
    a.btnSubmit:hover {
        opacity: 1;
    }
    a.btnFormBack:hover {
        background: #666;
    }
    .ok a.btnSubmit:hover {
        background: #f66;
        -webkit-filter: brightness(1);
        filter: brightness(1);
    }
    .secForm .tableForm .inputTxt,
    .secForm .tableForm .inputDate,
    .secForm .tableForm select,
    .secForm .tableForm textarea{
        font-size: 16px;
    }
}

@media only screen and (max-width:370px){
    .secForm .tableForm .w80 {
        width: 75px;
    }
}