@charset "utf-8";
.contents{background:#010527;}
.contentsInr{margin:40px auto 0; padding-bottom:120px;}
#secMain, #secService, #secTopics{font-family:"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;}

#secMain{margin:0 auto; position:relative; overflow:hidden; background:linear-gradient(#000, #010527);}
.video{position:absolute; width:100%; max-width:1920px; z-index:0; top:0; left:0; right:0; margin:0 auto;}
.video video{max-width:1920px; margin:-12.25% auto 0; display:none;}
.video video, .mainImg img{width:100%; vertical-align:top;}

.mainBox{background:url("../img/bg_main.png") no-repeat; background-size:100%; max-width:1920px; margin:0 auto; position:relative; z-index:5;}
.mainInr{z-index:10; padding-top:23%;}
.mainInr .ttl{text-align:center; width:40%; max-width:760px; margin:0 auto;}
.mainInr .ttl img{width:100%;}
.mainInr .topics{margin:35px auto 0; color:#fff; display:table; width:950px;}
.mainInr .topics dt, .videoBox .topics dd{display:table-cell; vertical-align:top;}
.mainInr .topics dd{padding-left:20px;}
.mainInr .topics .linkList > li:first-child{margin-top:0;}
.mainInr .topics .linkList > li{margin-top:10px;}
.mainInr .topics .txtLink{color:#fff;}

.service{width:950px; text-align:center; margin:115px auto 0; color:#fff;}
.service .ttl{margin:0 auto; color:#a4803b; text-align:center; letter-spacing:4px; width:auto;}
.service .ttl h2{font-size:46px; font-family:adobe-garamond-pro, serif; font-weight:400; font-style:normal;}
.service .ttl span{font-size:20px; display:block; margin:15px auto 0; font-family:YuMincho, 'Yu Mincho', serif;}
.service .lead{font-size:20px; margin:30px auto 0; line-height:1.8;}
.service .lead span{font-size:16px;}

.btnCamp a img{position:fixed; bottom:250px; right:20px; z-index:100; transition:all 0.5s ease;}
.btnCamp a img:hover{opacity:0.8; transition:all 0.5s ease;}
.btnCamp02 a img{position:fixed; bottom:90px; right:20px; z-index:100; transition:all 0.5s ease;}
.btnCamp02 a img:hover{opacity:0.8; transition:all 0.5s ease;}


#secService{margin:0 auto; color:#fff; position:relative; z-index:20;}
.serviceTab{display:flex; width:100%; max-width:1920px; margin:0 auto; padding-top:70px;}
.serviceTab li{vertical-align:top; margin:0 auto; padding:0; line-height:0; position:relative; overflow:hidden; max-width:640px; width:calc(100% / 3);}

.serviceTab li a{display:block;}
.serviceTab li a img{width:100%;}
.serviceTab li a, .serviceTab li a img, .serviceTab li a img.on, .serviceTab li a img.off, .serviceTab li a:hover img.off, .serviceTab li a:hover img.on{transition:all 0.8s ease;}
.serviceTab li a img.on, .serviceTab li a img.off{vertical-align:top; height:100%;}
.serviceTab li a img.off{position:absolute; z-index:5;}
.serviceTab li a:hover img.off{opacity:0.2;}
.serviceTab li a:hover img.on{transform:scale(1.1); transition:all 0.8s ease-in-out;}
.serviceTab li.current a img.off{opacity:0;}
.serviceTab li.current a img.on, .serviceTab li.current a:hover img.on, .serviceTab li.current a:hover img.off{transform:none;}
.serviceTab li.current a img.off{display:none;}
.serviceTab li a img.logo{position:absolute; left:5%; top:8%; width:14.2%; z-index:15;}
.serviceTab li a .tabTxt{width:100%; text-align:center; position:absolute; top:40.5%; z-index:15; line-height:1.5; color:#fff; opacity:0.5; transition:all 0.8s ease-in-out;}
.serviceTab li a:hover .tabTxt, .serviceTab li.current .tabTxt{opacity:1;}
.serviceTab li a .tabTxt span{display:block;}
.serviceTab li a .tabTxt .class{font-size:18px; font-family:YuMincho, 'Yu Mincho', serif;}
.serviceTab li a .tabTxt .seat{font-size:28px; font-family:adobe-garamond-pro, serif; font-weight:400; font-style:normal; letter-spacing:3px;}


#js_tabBusiness, #js_tabPremium, #js_tabEconomy{width:100%; max-width:1920px; margin:0 auto; overflow:hidden;}
.tabInr .tabBox{display:table; width:100%; max-width:1920px; margin:0 auto;}
.tabBox .imgBox, .tabBox .txtBox{width:50%; display:table-cell; overflow:hidden; vertical-align:middle;}
.tabBox .imgBox .imgBoxInr{display:table;}
.tabBox .imgBox .imgBoxInr .imgL, .tabBox .imgBox .imgBoxInr .imgS{display:table-cell;}
.tabBox .imgBox .imgBoxInr .imgL{width:61%; position:relative; line-height:1; cursor:pointer; vertical-align:top; overflow:hidden;}
.tabBox .imgBox .imgBoxInr .imgL img{position:absolute; left:0; transition:all 1.5s ease; height:auto; width:37.5vw; min-width:332px;}
.tabBox .imgBox .imgBoxInr .imgL:hover img{left:-5vw; transition:all 2s ease; transform:scale(1.1);}
.tabBox .imgBox .imgBoxInr .imgL .icon{position:absolute; width:50px; height:50px; right:20px; bottom:20px; background:#000;}
#js_tabBusiness .tabInr, #js_tabBusiness .tabBox .imgBox .imgBoxInr .imgL .icon{background:#013161;}
#js_tabPremium .tabInr, #js_tabPremium .tabBox .imgBox .imgBoxInr .imgL .icon{background:#015c2f;}
#js_tabEconomy .tabInr, #js_tabEconomy .tabBox .imgBox .imgBoxInr .imgL .icon{background:#2da379;}
.tabBox .imgBox .imgBoxInr .imgL .icon, .tabBox .imgBox .imgBoxInr .imgL .icon span{display:inline-block; transition:all 0.4s; box-sizing:border-box;}
.tabBox .imgBox .imgBoxInr .imgL .icon span{position:absolute; left:13px; width:24px; height:1px; background-color:#fff; border-radius:4px;}
.tabBox .imgBox .imgBoxInr .imgL .icon span:nth-of-type(1){top:24px; transform:rotate(0deg);}
.tabBox .imgBox .imgBoxInr .imgL .icon span:nth-of-type(2){top:24px; transform:rotate(90deg);}
.tabBox .imgBox .imgBoxInr .imgL:hover .icon span:nth-of-type(2){top:24px; transform:rotate(180deg);}
.tabBox .imgBox .imgBoxInr .imgS{width:39%;}
.tabBox .imgBox .imgBoxInr .imgS img{min-height:245px; height:26vw; width:100%; vertical-align:middle;}
.tabBox .txtBox .txtBoxInr{max-width:480px; height:100%; display:table; margin:0 auto; padding:10px 50px;}
.tabBox .txtBox .txtBoxInr .inr{display:table-cell; vertical-align:middle;}
.tabBox .txtBox .txtBoxInr .inr h3{font-size:42px; font-family:adobe-garamond-pro, serif; font-weight:400; font-style:normal; line-height:1.25; letter-spacing:2px;}
.tabBox .txtBox .txtBoxInr .inr p{line-height:2.3;}
.tabBox .txtBox .txtBoxInr .inr .lead{margin:0 auto; font-size:20px; line-height:1.9;}
.serviceBtn{margin:80px auto 0; text-align:center;}
.serviceBtn .btnCL{padding:15px 28px 13px!important; width:302px; font-size:16px;}
.serviceBtn .btnCL span{line-height:30px; background:url("../img/icon_arrow_01.png") center right no-repeat; padding:0 10px 0 0; width:100%;}

@media screen and (min-width:1920px) {
.tabBox .imgBox .imgBoxInr .imgL img, .tabBox .imgBox .imgBoxInr .imgS img{height:500px; width:auto;}
}
_:-ms-lang(x), .tabBox .imgBox .imgBoxInr .imgL img {
transition:none;
}


#secTopics{margin:0 auto; padding-top:120px; color:#fff;}
.topicsInr{width:950px; margin:0 auto 50px;}
.topicsInr .ttl{margin:0 auto; color:#a4803b; text-align:center; letter-spacing:3px;}
.topicsInr .ttl h2{font-size:46px; font-family:adobe-garamond-pro, serif; font-weight:400; font-style:normal;}
.topicsInr .ttl span{font-size:20px; display:block; margin:10px auto 0; font-family:YuMincho, 'Yu Mincho', serif;}
.sliderBox{width:850px; margin:60px auto 0; position:relative;}
.sliderBox .next a, .sliderBox .prev a{position:absolute; top:50px; width:35px; height:70px; display:block; text-indent:-9999px;}
.sliderBox .next a{right:-50px; background:url("../img/icon_arrow_03.png") no-repeat;} 
.sliderBox .prev a{left:-50px; background:url("../img/icon_arrow_02.png") no-repeat;}  
.sliderList li{height:170px;}


#secBooking{margin:100px auto 0;}
.c-pagetop{z-index:50;}
.modalFlight{position: fixed;bottom: 70px;right: 16.35%;z-index: 30;}
.js-c-lightbox-content .close-btn { background: url(../img/btn_modal_close.png) no-repeat 0 0;width: 52px;height: 51px;text-indent: -10000px;border: none;top: -70px!important;right: 0!important;}
