.pc { display: none !important; }
#widewrapper{width: 100%; position: relative; clear: both; }
#contentsArea{ background: #fff; padding-bottom: 80px;}
.ss-container{ margin: 0; border-radius: 0; padding-top: 32px; background: none;}

a:hover { opacity: 0.8; text-decoration: none !important; }

/*main_imgBox*/
.main_imgBox img{ width: 100%;}
.main_imgBox h1 {font-size: 14px;color: #fff;padding: 16px;line-height: 1.4;background: #0081D7;}
.main_imgBox h1 i{ font-style: normal; font-weight: normal; display: block; color: #ffeb00;}
.main_imgBox .logo{ display: none;}

nav{ overflow: hidden; display: none;}
nav ul{ display: flex; justify-content: center;}
nav ul li{ width: 50%;}
nav ul li a{ display: block; padding: 8px 0 32px; color: #fff !important; font-size: 16px; text-align: center;}
nav ul li a b{ font-size: 18px; display: block;}
nav ul li:nth-child(1) a{ background: #00A381 url(https://img.travel.rakuten.co.jp/coupon/special/new-return/images/arrowb.png) center 95% no-repeat;}
nav ul li:nth-child(2) a{ background: #0095D9 url(https://img.travel.rakuten.co.jp/coupon/special/new-return/images/arrowb.png) center 95% no-repeat;}

.ttl{ font-size: 22px; border-left: 4px solid #106ab4; padding-left: 8px;}
.ttl b{ font-size: 22px;}
.ttls{font-size: 20px;display: table;margin: 0 auto;padding: 0 24px;position: relative;}
.ttls::before{ display: inline-block; content: ""; width: 16px; border-bottom: 2px solid #0081D7; vertical-align: middle; margin-right: 8px;}
.ttls::after{ display: inline-block; content: ""; width: 16px; border-bottom: 2px solid #0081D7; vertical-align: middle; margin-left: 8px; }

.bd{ margin: 0 8px;}

#part1{ background: #b3d7f2; padding-bottom: 32px;}
#part1 .txt{background: #fff;border-radius: 25px;padding: 14px;box-sizing: border-box;line-height: 1.6;margin: 12px 0 0;font-size: 13px;}

#part2 .txt1{margin: 12px 0 0;line-height: 1.6;font-size: 14px;}
#part2 .gbox{margin: 24px 0 0; background: #F7F7F7; overflow: hidden; padding: 24px 8px;}
#part2 .gbox .photo{ text-align: center; margin-top: 24px;}
#part2 .gbox .photo img{ width: 100%;}

#internet{ margin-top: 32px;}
#internet .photo{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 24px;}
#internet .photo li{ width: calc(50% - 8px); margin-bottom: 16px;}
#internet .photo img{ width: 100%;}
#internet .btn{ overflow: hidden; margin-top: 24px;}
#internet .btn li{ margin-bottom: 8px; display: flex; justify-content: center; align-items: center;background: #ff6600 url(../images/arrowr.png) right 8px center no-repeat; border-radius: 8px; background-size: 20px;}
#internet .btn li a{width: 100%;display: block;color: #fff !important;font-size: 18px;line-height: 1.6;font-weight: bold;text-align: center;padding: 10px 0;}
#internet .btn li:hover{ opacity: .7;}

#train{ margin-top: 32px;}
#train .shadowb{ margin-top: 24px; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2); border-radius: 5px; padding: 0 8px 24px; overflow: hidden;}
#train .name{font-size: 18px;font-weight: bold;color: #106ab4;margin: 24px 0 12px;width: 100%;padding: 0 0 0 10px;}
#train .photo{ position: relative; margin: 16px 8px 0; }
#train .photo ul{ overflow: hidden;}
#train .photo a{ position: absolute; text-indent: -9999px; width: 38px;height: 36px; top: 50%; margin-top: -18px; z-index: 9;}
#train .photo a.prev{ background: url(../images/pre.png); background-size: 100%; left: -13px;}
#train .photo a.next{ background: url(../images/next.png); background-size: 100%; right: -13px;}
#train .photo img{ width: 100%;}
#train .txt2{font-size: 14px;margin-top: 16px;line-height: 1.6;padding: 0 10px;}
#train .route{  background: #cff3f3; margin-top: 24px; padding: 16px; box-sizing: border-box; font-size: 14px; line-height: 1.6; }
#train .atn{margin-top: 16px;font-size: 12px;line-height: 1.4;}

.sptbox{ padding-bottom: 30px; position: relative;}
#train + h3{  overflow: hidden; text-align: center; font-size: 18px; margin-top: 32px;}
.sptbox .spt{ height: auto; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2); border-radius: 5px; overflow: hidden; margin-top: 24px; padding-bottom: 80px; background: url(../images/bg.png) 95% 95% no-repeat; box-sizing: border-box; }
.sptbox .spt img{ width: 100%;}
.sptbox .spt .txt{ font-size: 14px; margin: 24px 16px 0; }
.sptbox .spt .txt b{ display: block; margin-bottom: 4px; font-size: 18px; color: #0081D7;}

#part3{ background: #F7F7F7; margin-top: 32px; padding-bottom: 24px;}
#part3 .txt{font-size: 18px;text-align: center;}
#part3 ul{ display: flex; justify-content: center; flex-wrap: wrap;}
#part3 ul li{ width: calc( 50% - 8px ); margin: 16px 4px 0;}
#part3 ul li.siaa{width: 100%; border: 1px solid #8c8c8c; border-radius: 15px; font-size: 14px; line-height: 1.6; padding: 16px; background: #fff; width: 360px; box-sizing: border-box;}
#part3 ul li.siaa b{ display: block; text-align: center; font-size: 24px; margin-bottom: 8px;}
#part3 ul li img{ width: 100%;}
#part3 .btn{ margin: 32px auto 0;}
#part3 .btn a{ display: block;  color: #fff !important; font-size: 18px; line-height: 1.6; font-weight: bold; text-align: center; padding: 16px 0;background: #ff6600 url(../images/arrowr.png) right 8px center no-repeat; border-radius: 8px; background-size: 20px;}

.gototop { display: none !important;}
.pagetop.sp{ right: 5px;}
.pagetop a{ background: rgba(0,129,215,0.8);}

.atn{font-size: 12px;margin:8px;}

#part2 .swiper-container-horizontal > .swiper-scrollbar { opacity: 1!important;}
.ticketsBox img { width: 100%; max-width: 560px; margin: auto;}

#tktBk { padding: 32px 0 0 0;}
.ticketsBox { margin: 16px 0 0 0;}
.tktUl li { border-radius: 10px; color: #fff; font-size: 16px; padding-left: 56px; font-weight: bold; margin-bottom: 8px;}
.tktUl li:nth-child(1) { background: #005ABA url(../images/tk_icon01.png) center left 10px no-repeat; background-size: 35px; display: flex; align-items: center; height: 66px; }
.tktUl li:nth-child(2) { background: #005ABA url(../images/tk_icon02.png) center left 10px no-repeat; background-size: 35px; display: flex; align-items: center; height: 66px; }
.tktUl li:nth-child(3) { background: #005ABA url(../images/tk_icon03.png) center left 10px no-repeat; background-size: 35px; display: flex; align-items: center; height: 66px; }
.tktPr { font-size: 15px; line-height: 1.5; margin: 16px 0;}
.tktBtm { margin: auto;}
#contentsArea .tktBtm a {background: #BF0000 url(../images/arrowr.png) right 8px center no-repeat; background-size: 20px; font-size: 18px; text-align: center; padding: 16px 0; border-radius: 8px; display: block; width: 100%; color: #fff; font-weight: bold; line-height: 1.6;}
.tktBtm a small { font-size: 80%; }
#contentsArea .tktBtm a:hover { color: #fff;}