@charset "shift_jis";

/* CSS Document */

/*************************************************/

/*会員登録ページに適用するCSSになります　        */

/*フォーム部分と確認画面や完了画面で適用しています*/

/*************************************************/







/*ログインフォームの幅*/



.form2 {

 width: 125px;

 height: 24px;

}



/*シミュレータ*/



.simu_koumoku {

 font-size: 14px;

 font-weight: bold;

}



.simu_form {

 color: #333333;

 height: auto;

 text-align: right;

}



.simu_form2 {

 font-size: 16px;

 font-weight: bold;

 color: #333333;

 height: auto;

 text-align: right;

}



/*バー*/



.bar1 {

 line-height: 35px;

 text-indent: 25px;

 margin-left: 5px;

 width: 750px;

 font-size: 14px;

 font-weight: bold;

 text-align: left;

 background-color: #F4F4F4;

 border: 1px solid #999;

 border-left: 8px solid #999;

}





/*フォーム*/



.user-regist {

 background-color: #FFF;

 font-size: 14px;

 border-collapse: separate;

}

.user-regist th {

 border-right: #CCC 2px dotted;

 font-size: 14px;

}



.user-regist textarea {
 font-size: 16px;
 line-height: 24px;
 padding: 8px 15px;
 border: 1px solid #ccdae4;
 background: #f5f9fc;
 box-sizing: border-box;
 border-radius: 3px;
 font-family: 'Arial', YuGothic, 'Hiragino Kaku Gothic Pro', 'Meiryo', sans-serif;
}



input[type="radio"] {

 margin: 3px 3px 0px 5px;

}



input[type="checkbox"] {

 margin: 3px 7px 0px 5px;

}



input:focus {

 background: #FFFFCC;

}

.formdata {

 margin: 0px 0px 5px 0px;

 position: relative;

 background-color: #FFF;

 padding: 1px 0px 0px 0px;

 table-layout: fixed;

 word-wrap: break-all;

}

.formdata tr {
 margin-bottom: 3px;
 display: block;
}


.formdata tr th {

 width: 178px;
 padding: 15px 0;

}

.regist2_required {
 font-size: 13px;
}

th.label {

 color: #3C3C3C;

 font-size: 14px;

 font-weight: bold;

 text-align: left;

 background-color: #FAFAF9;

 text-indent: 10px;

}

.required {

 background-color: #FF2524;

 float: right;

 height: 20px;

 width: 34px;

 display: block;

 text-align: center;

 text-indent: 0px;

 margin: 5px;

}



.required p {

 margin: 0;

 padding: 0;

 color: #FFFFFF;

 font-weight: bold;

 font-size: 13px;

 line-height: 20px;

}



.ime_jp {

 font-size: 12px;

 padding: 4px;

 text-align: left;

 line-height: 1.8;

}



.ime_jp div label {

 float: left;

}

.ime_jp label,
.search_koumoku label {

 border: 1px solid #ccdae4;
 background: #f5f9fc;
 cursor: pointer;
 border-radius: 3px;
 padding: 9px 15px 9px 9px;
 display: inline-block;
 margin: 0 5px 5px 0;
 line-height: 1.3rem;
 font-size: 15px;

}

.deposit_nyuryoku {
 border: none !important;
 background: none !important;
}

.ime_jp label input {
 width: 20px;
 height: 20px;
 margin-right: 5px;
}

.ime_jp label input[type="checkbox"],
.ime_jp label input[type="radio"] {
 vertical-align: sub;
 margin: 0 5px 0 0;
 cursor: pointer;
}

.radio04-parts,
.checkbox01-parts,
.radio03-parts,
.radio02-input + label,
.radio01-parts {
 line-height: 24px;
}

.ime_jp_required {

 font-size: 15px;

 padding: 9px;

 text-align: left;

 line-height: 22px;

}

.user_left .ime_jp_required input {
 padding: 6px;
 border: 1px solid #ccdae4;
 background: #f5f9fc;
 border-radius: 5px;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
 height: 36px;
}

.search-subtitle {

 line-height: 45px;

 font-size: 16px;

 font-weight: bold;

 color: #C00;

}

.red16b {

 font-weight: bold;

 font-size: 18px;

 color: #F00;

 line-height: 40px;

}

.red14b {

 font-weight: bold;

 font-size: 14px;

 color: #F00;

 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

}

.style3 {

 color: #F00;

}



.h_member {

 font-size: 25px;

 color: #CC0000;

 font-weight: bold;

 line-height: 25px;

 color: #CC0000;

}

.h_member2 {

 font-size: 45px;

 color: #CC0000;

 font-weight: bold;

 line-height: 50px;

 color: #CC0000;

}

.h_member3 {

 font-size: 18px;

 color: #CC0000;

 font-weight: bold;

}



.formdata_l {

 position: relative;

 background-color: #FFF;

 border: 2px solid #CCC;

 width: 750px;

 margin-top: 5px;

 margin-right: auto;

 margin-bottom: 0px;

 margin-left: auto;

 padding-top: 1px;

 padding-right: 2px;

 padding-bottom: 3px;

 padding-left: 2px;

}



.formdata_text {

 padding: 20px;

 width: 752px;

 font-size: 16px;

 font-weight: bold;

 color: #333333;

 line-height: 24px;

 background-image: url(/img/koei_kaiin_bg.jpg);

 background-repeat: no-repeat;

 background-position: center center;

}







/* 会員登録 追記 */



.user_left {

 width: 650px;


 padding: 0px;

 margin: 0px auto;

 text-align: left;

}



h3.user_h3 {

 background-image: url(../img/user_icon1.gif);

 background-repeat: no-repeat;

 background-position: left center;

 font-size: 12px;

 line-height: 34px;

 text-indent: 22px;

 margin: 0px;

 padding: 0px;

 font-weight: normal;

}



h3.user_h3_2 {

 background-image: url(../img/user_icon2.gif);

 background-repeat: no-repeat;

 background-position: left center;

 font-size: 12px;

 line-height: 34px;

 text-indent: 22px;

 margin: 0px;

 padding: 0px;

 font-weight: normal;

}



.user_next_btn {

 width: 650px;

 text-align: center;

 margin-bottom: 20px;

}


.user_next_btn_red input {
 width: 250px;
 height: 50px;
 border: 5px solid #e91f1f;
 background: #e91f1f;
 color: #fff;
 transition: all 0.3s;
 font-size: 18px;
 line-height: 15px;
 padding: 16px 0;
 box-sizing: border-box;
 font-weight: bold;
 cursor: pointer;
}


.user_next_btn_red {
 position: relative;
 width: 250px;
 height: 55px;
 box-sizing: border-box;
 margin: 0 auto;
 transition: all 0.3s;
 border-bottom: 5px solid #a70128;
 cursor: pointer;
}


.user_next_btn_red:hover {
 box-shadow: none;
 height: 50px;
 margin: 5px auto 0 auto;
}

.user_next_btn_red:before {
 position: absolute;
 top: 2px;
 bottom: 0;
 right: 15px;
 margin: auto;
 content: "";
 vertical-align: middle;
 width: 20px;
 height: 20px;
 -webkit-border-radius: 50%;
 border-radius: 50%;
 background: #FFF;
 transition: all 0.3s;
}

.user_next_btn_red:after {
 position: absolute;
 top: 2px;
 bottom: 0;
 margin: auto;
 content: "";
 vertical-align: middle;
 right: 15px;
 box-sizing: border-box;
 width: 5px;
 height: 5px;
 border: 5px solid transparent;
 border-left: 7px solid #e91f1f;
 transition: all 0.3s;
}

.user_next_btn_red:hover:before {
 top: 7px;
}

.user_next_btn_red:hover:after {
 top: 7px;
}


.user_right {
 display: none;

}



.user_2 {

 width: 1000px;

 margin: 0px auto;

 text-align: center;

}



.user_toggle {

 display: block;

 width: 100%;

 color: #666 !important;

 font-weight: bold;

 background: #F4F4F4 !important;

}

.filter1 select,
.ime_jp select {
 font-size: 16px;
 line-height: 24px;
 padding: 10px 15px;
 height: 40px;
 border: 1px solid #ccdae4;
 background: #f5f9fc;
}

.user_left .ime_jp input {
 border: 1px solid #ccdae4;
 background: #f5f9fc;
}

.radio02-input + label::before,
.radio01-parts::before {
 top: 1px;
 background: #fff;
}

.radio02-input:checked + label::after,
.radio01-input:checked + .radio01-parts::after {
 top: 4px;
}

/*container_kaiin*/
.container_kaiin section:nth-child(1) {
 width: 1000px;
 margin: 50px auto;
 text-align: center;
}

.container_kaiin section:nth-child(1) h3 {
 display: block;
 width: 640px;
 color: #575757;
 font-size: 36px;
 margin: 0px auto 30px auto;
 padding: 25px;
 box-sizing: border-box;
 border: solid 1px #bfbfbf;
}

.container_kaiin section:nth-child(1) h3 span {
 color: c5c5c5;
 font-size: 18px;
 font-weight: normal;
 height: 50px;
 display: block;
}

.container_kaiin section:nth-child(2) {
 width: 100%;
 margin: 50px auto;
 text-align: center;
 overflow: hidden;
}

.container_kaiin section:nth-child(2) ul {
 width: 300vw;
 white-space: nowrap;
 animation: loop 100s linear infinite;
}

.container_kaiin section:nth-child(2) > p {
 margin: 20px 0px;
}

.container_kaiin p {
 font-size: 14px;
 font-weight: bold;
}

.container_kaiin section:nth-child(2) ul li {
 width: 200px;
 height: 200px;
 overflow: hidden;
 position: relative;
 top: 0px;
 left: 0px;
 margin: 0px 10px;
 display: inline-block;
}

@keyframes loop {
 0% {
  transform: translateX(0%);
 }

 to {
  transform: translateX(-100%);
 }
}

.container_kaiin section:nth-child(2) ul li img {
 width: 100%;
 height: auto;
}

.container_kaiin section:nth-child(2) ul li p {
 color: #fff;
 position: absolute;
 top: 0px;
 left: 0px;
 right: 0px;
 bottom: 0px;
 margin: auto;
 padding: 40% 10%;
 box-sizing: border-box;
 background-color: rgba(0, 0, 0, 0.5);
 transition: all 0.2s ease;
 opacity: 0;
 text-align: center;
}

.container_kaiin section:nth-child(2) ul li:hover p {
 transition: all 0.2s ease;
 opacity: 1;
}

.container_kaiin section:nth-child(3) {
 width: 1000px;
 margin: 50px auto;
 text-align: center;
}

.container_kaiin section:nth-child(3) img {
 display: block;
 margin: 50px auto;
}

.container_kaiin section:nth-child(3) img:nth-child(2) {
 margin: 50px auto;
}

.container_kaiin section:nth-child(4) {
 width: 1000px;
 margin: 50px auto;
 text-align: center;
}

.kaiin_inner {
 width: 1100px;
 margin: 0px auto;
}

.tokuten_img img {
 display: block;
 margin: 50px auto;
}

/* 会員メリット追加 */
.merit_wrap {
 margin-bottom: 50px;
}

.merit_wrap h2 {
 position: relative;
 font-size: 60px;
 letter-spacing: 15px;
}

.merit_wrap h2:after {
 position: absolute;
 top: 60px;
 right: 0;
 z-index: 2;
 content: '';
 width: 1000px;
 height: 1px;
 background-color: #000;
}

.merit_wrap h2 span {
 font-size: 14px;
 display: block;
 padding-top: 70px;
 letter-spacing: 4px;
 font-weight: normal;
 line-height: 26px;
}

.merit_box {
 margin-bottom: 50px;
 overflow: hidden;
 clear: both;
}

.merit_box h3 {
 color: #003A77;
 font-size: 24px;
 letter-spacing: 5px;
 margin: 0 0 50px 0;
 line-height: 30px;
 text-align: center;
}

.merit_tokuten {}

.merit_tokuten ul {
	display:flex;
	justify-content:space-between;
}

.merit_tokuten ul li {
	width:32%;
	padding: 10px;
	position: relative;
	box-sizing:border-box;
}

.merit_tokuten ul li img {
	width:100%;
	height:auto;
}

.merit_tokuten ul li p {}

.merit_tokuten .tokuten_block {
 width: 100px;
 padding: 40px 0;
 background: #004A95;
 color: #FFF;
 font-size: 14px;
 position: absolute;
 top: 0;
 left: 0;
 letter-spacing: 3px;
 font-weight: bold;
 z-index: 2;
 text-align: center;
}

.merit_tokuten .tokuten_block span {
 font-size: 24px;
}

.merit_tokuten b {
 background-color: rgba(255, 255, 255, 0.8);
 position: absolute;
 top: 30px;
 left: 0;
 width: 100%;
 padding: 10px 0;
 font-size: 18px;
 z-index: 1;
 color: #004A93;
 letter-spacing: 6px;
 text-align: left;
 text-indent: 130px;
 line-height: 24px;
}

.merit_tokuten .tokuten_txt {
	width:100%;
	height:55px;
	color: #FFF;
	text-align: left;
	letter-spacing: 1px;
	padding:10px;
	background-color: rgba(0, 0, 0, 0.8);
	box-sizing:border-box;
}

.merit_campaign {}

.merit_campaign b {
 text-align: left;
 display: block;
 font-size: 20px;
 margin: 10px 0;
 letter-spacing: 3px;
 margin-bottom: 25px;
}

.merit_campaign ul {}

.merit_campaign ul li {
 width: 460px;
 overflow: hidden;
 margin-bottom: 20px;
 margin-right: 20px;
 float: left;
}

.merit_campaign ul li img {
 float: left;
 margin-right: 10px;
}

.merit_campaign ul li p {
 font-size: 18px;
 text-align: left;
 line-height: 30px;
 letter-spacing: 3px;
 font-weight: bold;
 margin: 15px 0 0 0;
}

.merit_campaign .campaign_l,
.merit_campaign .campaign_r {
 padding: 15px;
}

.merit_campaign .campaign_l {
 border: #C8E3FF solid 5px;
 background: #F7FBFF;
 color: #004A93;
}

.merit_campaign .campaign_r {
 float: right;
 border: #FFCCCC solid 5px;
 background: #FFF2F2;
 color: #FF6060;
}

.merit_seiyaku {
 position: relative;
 border: #F0F0F0 5px solid;
 padding: 20px 0;
}

.merit_seiyaku .seiyaku_intro {
 padding-bottom: 20px;
 border-bottom: 5px solid #F0F0F0;
}

.merit_seiyaku .seiyaku_intro:after {
 content: url(../img/user_regist/user_regist_icon2.png);
 position: absolute;
 top: 177px;
 right: 50%;
}

.seiyaku_intro_wrap {
 width: 600px;
 margin: 0 auto;
}

.merit_seiyaku .seiyaku_intro img {
 float: left;
 margin-right: 20px;
}

.merit_seiyaku .seiyaku_intro h3 {
 font-size: 24px;
 letter-spacing: 4px;
 margin: 0;
 padding: 0;
 text-align: left;
 padding: 20px 0;
}

.merit_seiyaku .seiyaku_intro h3 span {}

.merit_seiyaku .seiyaku_intro p {
 font-size: 18px;
 line-height: 30px;
 text-align: left;
}

.merit_seiyaku .seiyaku_intro p span {}

.merit_seiyaku .seiyaku_shosai {
 padding: 50px;
}

.merit_seiyaku .seiyaku_shosai b {
 font-size: 24px;
 color: #FFF;
 background: #000;
 display: block;
 padding: 40px 0;
 letter-spacing: 5px;
 position: relative;
}

.merit_seiyaku .seiyaku_shosai b:after {
 content: url(../img/user_regist/user_regist_icon.png);
 position: absolute;
 top: 0;
 left: 0;
}

.merit_seiyaku .seiyaku_shosai ul {}

.merit_seiyaku .seiyaku_shosai ul li {
 width: 295px;
 float: left;
 position: relative;
}

.merit_seiyaku .seiyaku_shosai ul li img {}

.merit_seiyaku .seiyaku_shosai ul li div.shosai_txt {
 position: absolute;
 bottom: 5px;
 padding: 5px;
 background-color: rgba(0, 43, 85, 0.8);
 color: #FFF;
 text-align: left;
 width: 290px;
 height: 40px;
}

.merit_seiyaku .seiyaku_shosai ul li div.shosai_txt p {}

.merit_seiyaku .seiyaku_shosai ul li div.shosai_txt p span {
 font-size: 8px;
 display: block;
 line-height: 12px;
}

.merit_last {}

.merit_last p {
 font-size: 24px;
 line-height: 30px;
 letter-spacing: 5px;
 font-weight: bold;
 text-align: center;
}

.merit_check label {
 margin: 10px 0px 0px 0px;
 padding: 5px;
 overflow: hidden;
 display: inline-block;
 cursor: pointer;
}

.merit_check label input {
 padding: 0px;
}

.regist_form a {
 background: #DF0000;
 color: #FFF;
 display: block;
 padding: 50px 0;
 font-size: 24px;
 letter-spacing: 5px;
 text-decoration: none;
 text-align: center;
 font-weight: bold;
}

.regist_form a:hover {
 background: #003C77;
 display: block;
 color: #FFF;
 letter-spacing: 5px;
 padding: 50px 0;
}

h2.user_h2 {
 width: 650px;
 margin: 0 auto 15px;
}
