@charset "UTF-8";
/* CSS Document */
/*20190705form css*/


.form_tbl table {
    width: 100%;
    border: none;
}
.form_tbl th {
    display: block;
    width: 100%;
    border-left: 13px solid #ff7703;
    background: #e8e8e8;
    color: #000;
    font-size: 18px;
}
.form_tbl td {
    display: block;
    width: 100%;
    max-width: 92vw;
    border: none!important;
    margin-bottom: 15px;
}
.form_tbl input, select, textarea {
    text-indent: 1em;
    padding: 10px 0;
    width: 100%;
}
.form_tbl input#tel {
    text-indent: 1em;
    padding: 10px 0;
}

.form_tbl select#year {
    text-indent: 1em;
    padding: 10px 0;
    width: 27%;
    margin-right: 1%;
}
.form_tbl select#month {
    text-indent: 1em;
    padding: 10px 0;
    width: 27%;
    margin-right: 1%;
}
.form_tbl select#day {
    text-indent: 1em;
    padding: 10px 0;
    width: 25%;
    margin-right: 1%;
}

.form_tbl input#zip {
    text-indent: 1em;
    padding: 10px 0;
    width: 30%;
}
.form_tbl input#date1, #date2, #date4 {
    text-indent: 1em;
    padding: 10px 0;
    width: 37%;
}
.form_tbl input#time1, #time2, #time3, #time4 {
    text-indent: 1em;
    padding: 10px 0;
    width: 37%;
}
.form_tbl input, select, textarea {
    border: 1px solid #ddd;
    border-radius: 5px;
}

@media only screen and (max-width:767px) {
    select, textarea {
    border-radius: 5px;
    padding: 10px 1%;
    background: #fff;
    color: #000;
    }
    .form_tbl th {
    display: block;
    width: 100%;
    border-left: 10px solid #ff7703;
    background: #e8e8e8;
    color: #000;
    font-size: 14px;
    margin: 8px 0px 3px;
    }
    .form_tbl input, textarea {
        font-size: 15px;
        border-radius: 5px;
    }
}

@media only screen and (max-width:767px) {
    select { 
        font-size: 18px;
        padding: 3% 0;
    }
}

.form_tbl input.radio {
    width: inherit;
}
label span.must {
    font-size: 70%;
    margin-left: 10px;
    color: #fff;
    background: #ed4215;
    padding: 4px 4px 4px;
    font-size: 11px;
    margin-bottom: 3px;
    margin-right: 2px;
    border-radius: 3px;
}
.submitbtn {
    text-align: center;
    margin-top: 20px;
}
input[type=submit] {
    width: auto !important;
    padding: 15px 30px 12px 12px;
    position: relative;
    display: inline-block;
    text-decoration: none;
    color: #FFF;
    background: #ed4215;
    border: solid 1px #e83000;
    border-radius: 5px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    font-size: 20px;
    font-weight: bold;
    appearance: none;
    -webkit-appearance: none;
}
@media only screen and (max-width:767px) {
    input[name="submitBack"] {
        margin-left: 0 !important;
        margin-top: 20px !important;
    }
}

.backbtn {
    width: 290px;
    font-size: 20px;
    margin: 0 auto;
    margin-top: 40px;
    font-weight: bold;
    padding: 16px 5px 15px 5px;
    text-align: center;
    /* padding: 0.25em 0.5em; */
    text-decoration: none;
    color: #FFF;
    background: #03A9F4;
    border: solid 1px #0f9ada;
    border-radius: 5px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    text-align: center;
}
.backbtn a:visited {
    color: #fff;
}
.backbtn a:link {
    color: #fff;
}
#err_company {
    color: #FF0000;
}


.second_radio td {
    margin-bottom: 2% !important; 
}

@media only screen and (max-width:767px) {
    input[type=submit] {
        width: 100% !important;
    }
}

.policy {
    height: 300px;
    width: 100%;
    overflow-y: scroll;
    border: 1px solid #000;
    border-radius: 3px;
    padding: 3%;
}

.policy>p {
    margin-bottom: 2%;
    display: block;
    width: 100%;
}

.otoi_none span {
    display:none;
}

.otoi_dis span {
    display:inline;
}

.q_all_02 {
    display: none;
}

.postcode1 {
    width: 25% !important;
    padding:10px 0;
}
.postcode2 {
    width: 30% !important;
    padding:10px 0;
}

.prefecture {
    width: 30% !important;
    margin: 10px;
}

.city {
    width: 60% !important;
    margin: 10px;
}

.postCode_flex {
    display: flex;
    align-items: center;
}

.postCode_flex>span {
    width: 12%;
}

.postCode_flex>div {
    width: 75% !important;
}

@media only screen and (max-width:767px) {
    .postCode_flex>span {
    width: 22%;
    }
    .postcode1 {
    width: 30% !important;
    }
    .postcode2 {
    width: 50% !important;
    }
}


.first_radio td input{
    display: none;
}
.first_radio td label{
    display: block;
    width: 100%;
    background-color: #e1e1e1;
    padding: 5px 0;
    border-radius: 5px;
    margin-bottom: 5px;
    padding-left: 35px;
    position: relative;
    transition: all 0.3s;
}

.first_radio td .radio_c02 label {
    padding-left: 27px;
}

.first_radio td label::before{
    content: '〇';
    color: #333;
    position: absolute;
    top: 15%;
    left: 3%;
}
.first_radio td input:checked + label{
    background-color: #059212;
    color: #fff;
    font-weight: bold;
}
.first_radio td input:checked + label::before{
    content: '●';
    color: #fff;
}

.second_radio td input{
    display: none;
}
.second_radio td label{
    display: block;
    width: 100%;
    background-color: #ddd;
    padding: 5px 0;
    border-radius: 5px;
    margin-bottom: 5px;
    padding-left: 35px;
    position: relative;
    transition: all 0.3s;
}
.second_radio td label::before{
    content: '〇';
    color: #333;
    position: absolute;
    top: 15%;
    left: 3%;
}
.second_radio td input:checked + label{
    background-color: #0059d4;
    color: #fff;
    font-weight: bold;
}
.second_radio td input:checked + label::before{
    content: '●';
    color: #fff;
}

.radio_00 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.radio_c {
    margin-top: 1%;
    width: 49%;
}

.radio_c02 {
    margin-top: 1%;
    width: 32%;
}

.radio_c2 {
    width: 49%;
    margin-bottom: 1%;
    margin-top: 1%;
}

.form_red {
    color: #ed4215;
    font-size: 16px;
}

@media only screen and (max-width:767px) {
    .radio_c {
        margin-top: 0%;
    }
    .radio_c2 {
        width: 100%;
        margin-bottom: 1%;
        margin-top: 2%;
    }
    .form_red {
    font-size: 14px;
    }
}

.sec_campaign {
    padding: 1% 0 4%;
    background-size: cover;
}

.sec_campaign_width {
    width: 90%;
    margin: 0 auto;
}

.sec_campaign_content {
    position: relative;
    padding-top: 3%;
}

.sec_campaign_content img {
    width: 100%;
}

.sec_campaign_content > div {
    display: flex;
    justify-content: center;
}

.sec_campaign_date {
    position: absolute;
    top: 22.5%;
    font-weight: bold;
    font-size: 22px;
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
}

.sec_campaign_date img {
    width: 24%;
    -webkit-transform: translate3d(0,12%,0);
    transform: translate3d(0,12%,0);
    margin-right: 1%;
}

.sec_campaign .tixyuusixyaku {
    text-align: left;
    margin-top: 2%;
    font-size: 10px;
    padding-bottom: 0px;
}

.font_color_y {
    color: #fefe60;
}

@media screen and (max-width: 767px) {
    .sec_campaign {
        padding: 4% 0 0%;
        background-size: 100%;
    }
    .sec_campaign_width {
        width: 100%;
        margin: 0 auto;
    }
    .sec_campaign_date img {
        width: 37%;
        -webkit-transform: translate3d(0,12%,0);
        transform: translate3d(0,12%,0);
        margin-right: 1%;
    }
    .sec_campaign_date {
        position: absolute;
        top: 27%;
        font-weight: bold;
        font-size: 5.1vw;
        letter-spacing: 1px;
        line-height: 1.5;
    }
    .sec_campaign_content {
        padding-top: 4%;
    }
}

.form_title_img {
    margin-top: 3%;
    margin-bottom: 5%;
}

.form_title_img img {
    width: 100%;
}

.sec_campaign_title {
    display: flex;
    justify-content: center;
}

.sec_campaign_title img {
    position: absolute;
    top: 0%;
    height: auto;
    width: 80%;
    z-index: 5;
}

.campaign_date {
    position: absolute;
    top: 36%;
    right: 5%;
    width: 14%;
    z-index: 1;
}

.campaign_date > div {
    position: relative;
}

.campaign_date p {
    position: absolute;
    top: 25%;
    left: 0;
    right: 0;
    font-size: 16px;
    color: #034a9a;
    font-weight: bold;
    margin: auto;
    line-height: 1.3;
    text-align: center;
    letter-spacing: -1px;
}
.campaign_date_size {
    font-size: 22px;
}

.tixyuusixyaku_accordion .tixyuusixyaku {
    margin-top: 0% !important;
}
.nav_tixyuusixyaku{ display: none; }

.nav-open{
	padding: 1%;
    color: #000;
    font-size: 16px;
    position: relative;
    margin: 1% auto 0%;
    text-decoration: underline;
    text-align: right;
}

.shine-button {
	display: block;		/* 形状は block */
	border-radius: 13px;	/* 角は丸く */
	position: relative;
	overflow:hidden;		/* ボタンの外の領域は非表示 */
}

/* ------------------------------------
ボタンの外側にボックス作成
（疑似要素「before」を使う）
------------------------------------*/
.shine-button::before {
	content: "";			/* 文字は表示しないので中身無しを指定 */
	position: absolute;	/* ボタンの位置を基準に絶対値指定する */
	display: block;		/* 形式はblock */
	background: linear-gradient(to right,rgba(255,255,255,0), rgba(255,255,255,0.9));
    /* 背景色は透明から白になるグラデーション */
	width: 50px;	/* 横幅 */
	height: 50px;	/* 縦幅 */
	top: -60px;	/* ボタン左上を基準に上へ60pxの位置 */
	left: -60px;	/* ボタン左上を基準に左へ60pxの位置 */
	/* アニメーションの動作指定 */
	animation-name:shine-run;	/* アニメーション名の指定 */
	animation-delay:0s;		/* アニメーションの開始時間指定 */
	animation-duration: 3s;	/* アニメーション動作時間の指定 */
	animation-timing-function: ease-in;
	/* アニメーションの動き指定（徐々に早く）*/
	animation-iteration-count: infinite;
	/* アニメーションの無限繰り返しの指定 */
	z-index: 2;
}

/* ------------------------------------
アニメーションのタイミングとボックスの
拡大率、角度、透過率の指定
------------------------------------*/
@keyframes shine-run {
    0% {
        transform: scale(0) rotate(50deg);
        /* アニメ開始時は大きさ0、50度の傾き */
        
        opacity: 0;
        /* アニメ開始時は全透過 */
    }
 
    40% {
        transform: scale(1) rotate(50deg);
        /* 40%まで進む間に大きさを等倍に。傾きは50度のまま*/
        
        opacity: 1;
        /* 透過しない（しっかり表示される）ように1を設定 */
    }
 
    100% {
        transform: scale(250) rotate(50deg);
        /* 最後は元の大きさの250倍になるようにする。傾きは50度のまま*/
 
        opacity: 0;
        /* 全透過になるようにして、徐々に消えるような変化を付ける */
    }
}

.form_little td {
    margin-bottom: 0 !important;
}

@media screen and (min-width: 768px) {
    .sec_campaign_title img {
        width: 56%;
    }
    .form_little td {
        width: 75%;
        margin: 2% auto 0;
        padding: 0;
        
    }
    .form_title_img img {
        width: 90%;
    }
    .form_title_img {
        margin-top: 3%;
        margin-bottom: 1%;
    }
}

.dw {
    width: 23% !important;
    -webkit-appearance: none !important;
    font-size: 14px;
}

.date_ml {
    margin-right: 5px;
    width: 25%
}

@media screen and (max-width: 767px) {
.dw {
    font-size: 11px;
}
    .tw {
        width: 16% !important; 
    }
    .date_ml {
    margin-right: 5px;
    width: 29% !important;
    }
}

.q_all .radio_c {
    width: 100%;
}

input[type=checkbox] {
    width: auto;
}

h2 {
    font-size:min(7vw,42px);
    margin: 10px 0;
}

.sec_03 {
    background: #ff7703 !important;
    color: #fff !important;
    font-size:min(4vw,22px) !important;
    margin-bottom: 15px;
}

.site_top {
    font-size:min(4vw,24px) !important;
    display: block;
    text-align: center;
    margin: 0 auto;
    width: 50%;
    padding: 10px 20px;
    background: #ed4215;
    border-radius: 100px;
    color: #fff !important;
    text-decoration: none;
    border: none;
    font-weight: bold;
}

.finish_call {
    font-size:min(4vw,24px) !important;
    display: block;
    text-align: center;
    margin: 0 auto 30px;
}

input[type=checkbox], input[type=checkbox] {
    text-indent: 1em;
}