@charset "UTF-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css?family=Roboto:100,400&display=swap');

/* CSS Document */
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
#im{
    ont-family: 'Noto Sans JP', "メイリオ", Meiryo, sans-serif;
    -webkit-font-smoothing: antialiased;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    background: #000;
    background-size: 100%;
    background-attachment: fixed;
    color: #FFF;
    padding-bottom: 100px;
}

.font_roboto{font-family: 'Roboto', sans-serif;}

.im_Contents{
	max-width: 1000px;
	padding: 0 20px;
	margin: 0 auto;
}

#im img{
    width: auto;
	max-width: 100%;
	height: auto;
}
#im p{
	margin-bottom: 0 !important;}
	
#im ul,
#im ol{padding: 0; margin: 0;}	
	
a:hover img{
	opacity: .7;
	transition: .5s;
}	

br.pc_br{display: block;}
br.tb_br{display: none;}
br.sp_br{display: none;}

.hidden-pc{display: none;}
.hidden-sp{display: block;}

@media only screen and (max-width : 665px ){
	br.tb_br{display: block;}
	br.pc_br{display: none;}}

@media only screen and (max-width : 482px ){
    #im{font-size: 14px; line-height: 1.6;}
	br.sp_br{display: block;}
	.hidden-pc{display: block;}
	.hidden-sp{display: none;}}
	

.f_left{float: left;}
.f_right{float: right;}



/**/
@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1}}

@-webkit-keyframes fadeIn{
    0% {opacity: 0;}
    100% {opacity: 1}}

.im_kv{
    text-align:center;
    animation: fadeIn 1s ease 0s 1 normal;
    }

h1.im_logo{max-width:184px; margin: 40px auto 70px auto;}

            
    	@media only screen and (max-width:767px) {
            .im_kv{padding: 0 30px;}
            h1.im_logo{margin: 40px auto ;}
        }

/*ttl*/
#im h2,#im h3,#im h4{font-weight: normal; font-variant-ligatures: none;}

.im_ttl{
   text-align: center;
   font-size: 50px;
   margin-bottom: 40px;
   font-family: 'Roboto', sans-serif;
    font-weight: 100 !important;
    position: relative;
}
.im_ttl:after{
    position: absolute;
    display: block;
    content: '';
    width: 60px;
    height: 1px;
    background: #ffe400;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 0;
}

.im_sttl{
    font-size: 30px;
    
}
        @media only screen and (min-width:768px) {
            .im_sttl{float: left; width: 20%;}
        }
       	@media only screen and (max-width:767px) {
            .im_ttl{font-size: 40px;}
            .im_sttl{font-size: 22px; margin-bottom: 20px;}
        }

/*im_Product/////////////////////////*/
.im_detail_txt{
    padding-bottom: 50px !important;
    }

       @media only screen and (min-width:768px) {
          .im_detail_txt{
              float: right;
              width: 80%;
              box-sizing: border-box;
              }
        }

.im_Product{}

.im_lead{
   font-family: 'Roboto', sans-serif;
    padding-bottom: 70px;
    font-size: 22px;
    
    text-align: center;
    line-height: 2;
}
.im_lead span{
    font-size: 14px;
    color:#999999;
    font-weight: bold;}
    
.im_lead2{
    font-size: 20px;
    text-align: center;
}    

.im_Product_ttl{
    max-width: 396px;
    margin: 0 auto;
    padding: 30px 0;
}
    

.product_box{
    text-align: center;
    box-sizing: border-box;
    }
.product_name span{display: block; font-size: 22px;  color: #ffe400; font-family: 'Roboto', sans-serif;}
.product_name{font-size: 28px;}

.product_model{
	padding: 10px 0;
    font-size: 18px;
    font-family: 'Roboto', sans-serif;
}
.product_img img{max-width: 497px; height: auto;}

.product_buy{
	font-size: 14px;
	color: #FFF;
	}
.product_buy span.first_flight{
	border: 1px solid #CCC;
	padding: 1px 8px
}
.product_buy span.product_price{
	font-size: 26px;
	padding-left: 10px;
}
.reserve_caution{
    padding-top: 20px;
    font-size: 12px;
    text-align: left;
    padding-left: 1.5em;
}
.reserve_caution:before{
    content: '※ ';
    margin-left: -1.5em;}
    
	
#im p.im_buy_btn{
    font-size: 24px;
    text-align: center;
    font-weight: bold;
    margin: 80px 0 130px 0 !important;
    
}    
.im_buy_btn span{
    display: block;
    padding: 30px;
    border: 2px solid #666;
    color: #FFF;
    position: relative;
    line-height: 1;
}
.im_buy_btn span:after{
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    transform: rotate(45deg);
    margin-left: 10px;
}
.im_buy_btn span:hover{
    background: #666;
    transition: 0.3s;
}
.reserve_shop_wrap{
    position: relative;
}
.reserve_shop{
    display: none;
    position: absolute;
    background: #FFF;
    top: 100%;
    max-width: 840px;
    margin: auto;
    left: 0;
    right: 0;
    box-shadow: 0px 6px 10px rgba(0,0,0,0.6);
	padding: 20px;
}

.im_buy_btn:hover + .reserve_shop,
.reserve_shop:hover{display: block;}

.reserve_shop:before{
    position: absolute;
      width: 0;
      height: 0;
      left: 0;
      right: 0;
      margin: auto;
      top:-20px;
      border: solid transparent;
      
      border-bottom-color: #FFF;
      border-width: 10px;
      content: " ";
}

.reserve_shop p{
    text-align:center;
    color: #FFF;
    font-size: 20px;
    padding-bottom: 20px;
}

ul.reserve_shop_list{
	display: block;
}
ul.reserve_shop_list li{
	width: 22.5%;
    border: 1px solid #CCC;
    margin-left: 2%;
	float: left;
	display: block;
	box-sizing: border-box;
	text-align: center;
    
}

ul.reserve_shop_list li a{}


    	@media only screen and (min-width:768px){
            .product_box{width: 50%; padding: 0 20px;}
            .product_box.f_left{border-right: 1px solid #666;}
            .im_detail_txt{font-size: 18px;}
            .im_lead,.im_lead2{letter-spacing:2px;}
        }
        
        @media only screen and (max-width:767px){
        .product_box.f_left,.product_box.f_right{float: none;}
        .product_box.f_left{padding-bottom: 40px;}
        
        .im_lead{font-size: 18px; text-align: left; line-height: 1.5; padding-bottom: 40px;}
        .im_lead span{padding-top: 20px !important; display: block;}
        .im_lead2{font-size: 16px; text-align: left;}
        .product_name span{display: block; font-size: 18px;}
        .product_name{font-size: 22px;}
        .reserve_shop{padding: 10px;}
        ul.reserve_shop_list li{width: 48%; margin: 0 1% 10px 1%;}
        #im p.im_buy_btn{font-size: 18px;}
        }

/*prof*/
.im_Prof{
    padding: 30px 0;
    background: #222222;
    margin-bottom: 100px;
}
.im_Prof_photo{
    max-width: 280px;
    margin: 0 auto;
}
.im_Prof_name{font-size: 28px; padding-bottom: 20px;}

.im_Prof_name span{color: #ffe400; font-size: 14px; padding-left: 20px;}

.im_Prof_txt{}
    @media only screen and (min-width:768px){
        .im_Prof_photo{float: left; margin-top: -60px;}
        .im_Prof_txt{
            float: right;
            width: 100%;
            box-sizing: border-box;
            padding-left: 340px;
            margin-left: -340px;
        }    
    }
    @media only screen and (max-width:767px){
        .im_Prof_photo{margin-bottom: 20px;}}
         
/*head*/
    .im_head_img{padding-bottom: 50px !important;}
    
    @media only screen and (min-width:768px){
        .im_head_img{padding-bottom: 100px !important;}
        .im_head_img li{
            float: left;
            display: block;
            width: 50%;
        }
    }

.caution{font-size: 12px; padding: 30px 0 60px 0;}
.caution a{text-decoration: underline;}
    	
/*band*/
.Band_box h4{font-size: 22px; text-align: center;}
.Band_box h4 sup{font-size: 10px;}

.Band_img{padding: 5px 0 10px 0;}
.Band_box sup,.im_band_lead sup{font-size: 10px;}

    @media only screen and (min-width:768px){
            .Band_box{
                    float: left;
                    width: 31%;
                }
            .Band_box + .Band_box{margin-left: 3.5%;}   
}
            @media only screen and (max-width:767px){
                .im_lead_txt{font-size: 16px;}
                .Band_box{margin-bottom: 40px;}
                }

ul.osaifu_icon_list{
}
ul.osaifu_icon_list li{
	float: left;
	/*padding: 2px;*/
}

ul.osaifu_icon_list li img{
	max-height: 36px !important;
	width: auto !important;
}
    .Band_box ul.osaifu_icon_list{/*padding: 5px !important;*/ margin: 10px 0 !important;}
    /*.Band_box ul.osaifu_icon_list li{padding: 5px;}*/
    .Band_box ul.osaifu_icon_list li img{
	max-height: 44px !important;}


/*about_wena_bnr*/
.about_wena_bnr{
	width: 100%;
	padding: 85px 0;
	background: url("../../images/im/link_bg.jpg") no-repeat top center #444;
	text-align: center;
    background-size: contain;
	margin-bottom: 80px;
}

.about_wena_bnr p{
	text-align: center;
	border: 2px solid #aaa;
	display: inline-block;
	font-family: Abel, CmnYuGothicM, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Mairyo UI", "メイリオ", Meiryo, sans-serif;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;}
	
.about_wena_bnr p a{
	padding: 20px 65px 20px 50px;
	display: block;
	color:#FFF;
	background: url(../../images/seiko/bnr_arrow.png) no-repeat 95% 50%;
	background-size: 14px 26px;
}
.about_wena_bnr p a:hover{
	opacity: .5;
	transition: .5s;
}
	
	@media only screen and (max-width:767px) {
		.about_wena_bnr{padding: 20px 0; margin-bottom: 40px; background-size: cover;}	
		.about_wena_bnr p{font-size: 16px; line-height: 1.5;}
       
	}
	
/*spec*/
.spec{
	letter-spacing: 0.5px;
    }

.spec h3{
	font-weight: bold !important;
	border-bottom: 1px solid #CCC;
	font-size: 20px;
}

.spec table{
	width: 48%;
	border-collapse: collapse;
    margin-bottom: 20px;
}
.spec table th{white-space: nowrap;}
.spec table th,
.spec table td{
	text-align: left;
	font-weight: normal;
	border-bottom: 1px solid #CCC;
	padding: 10px;
	vertical-align: top;
}
.spec table th sup{font-size: 10px;}
.spec table td span{font-weight: bold;}

span.icon_edy img{
    width: 32px !important;
    height: auto;
}

	@media only screen and (max-width:767px) {
		.spec h3{font-size: 16px;}
		.spec table{width: 100%; float: none !important;}
        .spec table th,
        .spec table td{vertical-align: middle;}
		.spec table th{white-space:normal; width: 8em;}
		.spec table th{padding: 5px;}
	}

/*fadein/////////////////////////*/	
.fadein-y {
  opacity: 0;
  transform : translate(0, 40px);
  transition : all 1500ms;
  }

.fadein-x{
  opacity: 0;
  transform : translate(40px, 0);
  transition : all 1500ms;
  }
.fadein-x2{
  opacity: 0;
  transform : translate(-40px, 0);
  transition : all 1500ms;
  }  

.fadein-y.scrollin,.fadein-x.scrollin,.fadein-x2.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

.fadein {
  opacity: 0;
  transition : all 1500ms;
  }

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}