@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 #004b85;
    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;
    width: 27%;
}

.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 #004b85;
    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;
}

.sec_02 {
    border: none !important;
    background: #fff !important;
    color: #000 !important;
    padding: 0;
    font-size: 20px !important;
    margin: 4% 0 0%;
}

.sec_03 {
    background: #004b85 !important;
    color: #fff !important;
    padding: 3% 2% 2%;
    font-size: 22px !important;
    margin-top: 6%;
    margin-bottom: 4%;
    line-height: 22px;
}
.sec_01 {
    border-bottom: none!important;
    background: #fff!important;
    border-left: none!important;
    color: #000;
    padding: 0% 0%;
    font-size: 14px !important;
    margin-top: 3% !important;
    margin-bottom: 5% !important;
    font-weight: normal;
}

.sec_00 {
    background: #daebf2;
    border-left: none !important;
    padding: 0;
}

.sec_04 {
    background: #fff;
    border-left: none !important;
    padding: 0;
    margin: 0 0 7% !important;
}

@media only screen and (min-width:768px) {
    .sec_04 {
    margin: 0 0 0% !important;
    }
}

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

@media only screen and (max-width:767px) {
    .sec_02 {
    font-size: 16px !important;
    margin-bottom: 20px !important;
}
.sec_03 {
    font-size: 4vw !important;
    line-height: 26px;
    margin-top: 1% !important;
    margin-bottom: 5% !important;
    background: #004b85 !important;
    }
    .sec_01 {
    font-size: 11px !important;
    }
    .note {
        margin-top: 2%;
        display: block;
        font-size: 13px;
    }
    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: #0059d4;
    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%;
    }
}

/*input[type=file] {*/
/*    display: none;*/
/*}*/

/*.file span {*/
/*    display: block;*/
/*    width: 100%;*/
/*    padding: 10px;*/
/*    text-align: center;*/
/*    border: 1px solid #ddd;*/
/*    border-radius: 5px;*/
/*}*/

@media screen and (max-width: 767px) {
    .campaign_date p {
        top: 25%;
        font-size: 2.7vw;
        letter-spacing: -1px;
    }
    .campaign_date_size {
        font-size: 3.3vw;
    }
    .nav-open{
    	padding: 1% 0 1%;
        font-size: 10px;
        position: relative;
        margin: 0 auto;
        letter-spacing: 1px;
    }
    .shine-button {
    	border-radius: 7px;	/* 角は丸く */
    }
}

/*キャンペーンポップcss*/
.campaign_pop_content img {
    width: 100%;
}
.campaign_pop_content {
    display: none;
}

.campaign_pop_btn {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 9.5%;
    width: 88%;
}

.campaign_pop_toziru {
    border: 2px solid #fff;
    padding: 5px 10px 8px;
    border-radius: 5px;
    line-height: 1;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    background: rgba(0,0,0,0.3);
    cursor: pointer;
}

.campaign_pop_toziru_batu {
    text-align: center !important;
}

.campaign_pop_close_batu {
    pointer: cursor;
}

.campaign_pop_content_bg {
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    width: 100%;
    height: 100%;
}

.campaign_pop_content_00 {
    max-width: 650px;
    position: fixed;
    top: 2vw;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1001;
    border-radius: 10px;
}

.campaign_pop_content_00 {
    max-width: 550px;
}

.campaign_pop_close {
    text-align: right;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
}

.campaign_pop_close:hover {
    cursor: pointer;
}

.photo-content {
    border-left: none !important;
    background: #fff !important;
    border-bottom: 2px solid #004b85;
    padding: 5px;
    margin-bottom: 10px !important;
    margin-top: 0 !important;
    display: block;
}

.product_remove1,.product_add2,
.product_remove2,.product_add3,
.product_remove3,.product_add4,
.product_remove4,.product_add5,
.product_remove5 {
    display: block;
}

@media screen and (max-width: 1300px) {
    .campaign_pop_content_00 {
        max-width: 650px;
        position: fixed;
        top: 0vw;
        left: 0;
        right: 0;
        margin: 0 auto;
        z-index: 1001;
        border-radius: 10px;
    }
}

.fonr-cta {
    margin: 40px 0 0;
}

.form-cta-title {
    width: 100%;
}

.form-cta-title img {
    width: 100%;
}

.form-cta-content {
    background: #e6eff5;
    width: 100%;
    padding: 7px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    border-radius: 5px;
}

.form-cta-content > div {
    width: 49%;
} 

.form-cta-content > div img {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .form-cta-content {
        padding: 10px 15px;
        margin-top: 20px;
    }
    .form-cta-content > div {
        width: 49%;
    } 
    .form-cta-title img {
        width: 80%;
        margin: 0 auto;
    }
    .fonr-cta {
        margin: 30px 0 0;
    }
}

@media screen and (max-width: 767px) {
    .campaign_pop_btn {
        bottom: 12.5%;
    }
    .campaign_pop_toziru {
        font-size: 14px;
    }
    .gove_detaile_content_01 {
        height: 66vh;
        overflow-y: auto;
        border: 3px solid #000;
        border-radius: 10px;
    }
    .campaign_pop_content_00 {
        width: 90%;
        margin: 0 auto;
    }
}

.nyhs_none {
  display: none;
}

.nyhs_block {
  display: block;
}

.nyhs_02_none {
  display: none;
}

.nyhs_02_block {
  display: block;
}