/***********************/
@charset "utf-8";
.clearfix:before,
.clearfix:after {
  content: '';
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  *zoom: 1;
}

.res-inner-contents {
  padding-top: 0;
}

.pc-view{
  display: block;
}
.sp-view{
  display: none;
}
.fnt-28 {
  font-size: 2.8rem;
}
.mb-50{
  margin-bottom: 50px;
}
.fnc-hide {
  opacity: 0;
}

/*header*/
.header{
  font-size: 1.2rem;
}
.header-block {
  /* margin-top: 8px; */
}
.header-block:last-child {
  margin-top: 0;
  background: #f0f1f4;
}
.header-block:first-child {
  margin-top: 14px;
  background: #fff;
}
.header-wrap{
  max-width: 950px;
  margin: 0 auto;
}
.header-wrap .service-nav {
  display: none;
}
.header-wrap .service-nav:last-child {
  display: block;
}
.header-table{
  display: table;
  width: 100%;
  margin: 0 auto;
}
.header-wrap:before,
.header-wrap:after{
  display: block;
  clear: both;
  content: '';
}
.header-block h1 {
  display: table-cell;
  width: 40%;
  vertical-align: middle;
}
.header-block h1 a{
  display: block;
}
.header-option{
  display: table-cell;
  width: 60%;
  text-align: right;
}
.option-contents *{
  display: inline-block;
  font-size: 1.2rem;
}
.option-contents{
  margin-bottom: 10px;
}
.option-list li{
  display: inline-block;
  border-right: 1px solid #ddd;
}
.option-list li:last-child{
  border: none;
}
.option-list li a{
  display: block;
  text-decoration: none;
  color: #333;
  padding: 1px 11px;
}
.option-list li .option01:after,
.option-list li .option02:after {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #13458f;
  content: '';
  margin: 0 6px 0 10px;
  position: relative;
  bottom: 2px;
}
.page-language{
  position: relative;
  margin-left: 18px;
  text-transform: uppercase;
}
.page-language:before{
  display: inline-block;
  width: 18px;
  height: 18px;
  background: url(/common-operation/serviceinfo/domestic/inflight/images/globe_icon.png) no-repeat;
  position: absolute;
  content: '';
  left: -16px;
  top: 0px;
}
.search-area form{
  position: relative;
}
.search-area input{
  outline: none;
  padding: 3px 6px;
  border-radius: 3px;
  border-color: #ddd;
  background: #f0f1f4;
  color: #444;
  font-size: 1.2rem;
  padding-right: 30px;
  min-width: 204px;
}
.search-area button{
  position: absolute;
  background: #f0f1f4 url(/common-operation/serviceinfo/domestic/inflight/images/search_icon.png) 3px 3px no-repeat;
  border: none;
  border-radius: 2px;
  padding: 11px;
  top: 2px;
  right: 5px;
}
.premium-btn.economy a,
.premium-btn.premium a{
	display: none;
}
.premium-btn a{
  display: inline-block;
  background: #13448f;
  color: #fff;
  padding: 0.5em 1.2em 0.4em;
  border-radius: 3px;
  text-decoration: none;
  font-size: 1.4rem;
}
.premium-btn a:after{
  display: inline-block;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(135deg);
  width: 0.5em;
  height: 0.5em;
  margin-left: 0.5em;
  content: '';
}
.premium-btn a:hover{
  background: #103978;
}
.header-hamburger {
  display: none;
  position: relative;
  top: 10px;
  right: 0;
  z-index: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.header-hamburger input {
  display: block;
  width: 22px;
  height: 22px;
  position: absolute;
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0;
  z-index: 2;
}
.header-hamburger span {
  display: block;
  width: 20px;
  height: 3px;
  margin-bottom: 3px;
  position: relative;
  background: #333;
  z-index: 1;
}
.header-block:nth-child(2){
  background: #363333;
  font-size: 1.6rem;
}
.header-block:nth-child(3){
  margin-top: 0;
  background: #f0f1f4;
}
.class-nav {
  width: 70%;
  margin: 0 auto;
  display: table;
  text-align: center;
}
.class-nav li {
  vertical-align: middle;
  display: table-cell;
  width: 33.33%;
}
.class-nav li {
  color: #fff;
  cursor: pointer;
}
.class-nav li a{
  display: block;
  padding: 0.57em 0;
  color: #fff;
  text-decoration: none;
}
.class-nav .btn-premium,
.class-nav .btn-economy {
  padding: 0.57em 0;
}
.class-nav li.active{
  color: #fff;
  background: #005bab;
  cursor: default;
}
.class-nav.economy li.active {
  background: #2d771f;
}
.class-nav li.disable{
  border-right: none;
  cursor: default;
}
.class-nav li.btn-economy:hover,
.class-nav li.btn-premium:hover,
.class-nav li a:hover{
  background: #545151;
}
.class-nav li.btn-premium.active:hover {
  background: #005bab;
}
.class-nav li.btn-economy.active:hover {
  background: #2d771f;
}

/*main visual*/
.main-visual {
  width: 100%;
  margin-bottom: 35px;
  background-color: #005bab;
  color: #fff;
}
.main-visual.economy {
  background-color: #2d771f;
}
.main-visual .main-inner {
  display: table;
  width: 950px;
  margin: 0 auto;
  min-height: 270px;
}
.main-visual .seat {
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual.jpg');
  background-position: right;
}
.main-visual .y-seat{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_yseat.jpg');
  background-position: right;
}
.main-visual .ground {
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_ground.jpg');
  background-position: right;
}
.main-visual .y-ground{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_yground.jpg');
  background-position: 78%;
}
.main-visual .amenity{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_amenity.jpg');
  background-position: left;
}
.main-visual .lounge{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_lounge.jpg');
  background-position: left;
}
.main-visual .meal{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_meal_2209.jpg');
  background-position: left;
}
.main-visual .y-meal{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_ymeal_201126.jpg');
  background-position: left;
}
.main-visual .sky-shop{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_skyshop.jpg');
  background-position: left;
}
.main-visual.economy .wifi{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_wifi_eco.jpg');
  background-position: 70%;
}
.main-visual .wifi{
  background-image: url('/common-operation/serviceinfo/domestic/inflight/images/main_visual_wifi_pre.jpg');
  background-position: right;
}
.mv-logo-premium,
.mv-logo-economy,
.mv-sp-premium,
.mv-sp-economy {
  display: none;
}
.main-visual .visual-left,
.main-visual .visual-right{
  width: 50%;
  display: table-cell;
  vertical-align: middle;
  background-size: cover;
  background-repeat: no-repeat;
}
.main-visual .visual-left:before,
.main-visual .visual-left:after,
.main-visual .visual-right:before,
.main-visual .visual-right:after{
  display: block;
  clear: both;
  content: '';
}
.main-visual .content{
  width: 100%;
  max-width: 470px;
  padding: 40px 30px;
}
.main-visual h2{
  display: table;
  width: 100%;
  font-size: 4.2rem;
  margin-bottom: 30px;
  letter-spacing: 1px;
}
.main-visual h2 span:first-child {
  width: 84px;
}
.main-visual h2 span:last-child {
  padding-left: 20px
}
.main-visual h2 span{
  display: table-cell;
  vertical-align: middle;
}
.main-visual h2 + p{
  font-size: 1.8rem;
  margin-bottom: 16px;
  letter-spacing: 1px;
}
.main-visual .bold-text{
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 16px;
  letter-spacing: 1px;
}
.main-visual .visual-right p{
  font-size: 1.4rem;
  line-height: 2.2;
}
.main-visual .visual-sp {
  display: none;
}
.main-visual .amenity-features{
  list-style: disc;
  list-style-type: disc;
  list-style-position: inside;
}
.main-visual .noteTxt.amenity{
  padding: 0;
  margin: 0;
}

.main-visual-service {
  position: relative;
  margin-top: 10px;
  width: 100%;
  height: 530px;
  margin-bottom: 60px;
  background: url(/common-operation/serviceinfo/domestic/inflight/images/main_visual_service_pc.jpg) no-repeat;
  background-position: center center;
  opacity: 0;
}
.main-visual-service h2 {
  width: 100%;
  position: relative;
  padding-top: 285px;
  font-size: 3.8rem;
  letter-spacing: 3px;
  color: #fff;
  text-align: center;
  opacity: 0;
  text-shadow: 0px 0px 15px #000000;
}
.main-visual-service h2.active {
  top: 0;
  padding-top: 235px;
  opacity: 1;
}
.main-visual-service .main-visual-btn {
  width: 100%;
  position: relative;
  padding-top: 70px;
  opacity: 0;
  text-align: center;
}
.main-visual-service .main-visual-btn.active {
  padding-top: 20px;
  opacity: 1;
}
.main-visual-service .main-visual-btn img{
  width: 100%;
}
.main-visual-service .main-visual-btn a{
  display: table;
  width: 100%;
  text-decoration: none;
  font-size: 2.0rem;
  color: #fff;
}
.main-visual-service .main-visual-btn span{
  display: table-cell;
  padding: 10px;
  vertical-align: middle;
  text-align: center;
}
.main-visual-service .main-visual-btn span:first-child {
  width: 69px;
}
.main-visual-service .main-visual-btn .blk {
  display: inline-block;
  width: 310px;
  margin: 0 25px;
  background-color: rgba(0,0,0,0.5);
}

/*icon*/
.seat-feature {
  margin-bottom: 10px;
}
.seat-feature li {
  width: 16.8%;
  display: inline-block;
  margin-right: 1.8%;
  vertical-align: top;
}
.seat-feature li:last-child {
  margin-right: 0;
}
.seat-feature li .icon {
  margin-bottom: 5px;
}

/*seat introduction*/
.seat-introduction {
  margin-top: 25px;
}
.seat-img {
	float: left;
  width: 58%;
  margin-bottom: 25px;
  text-align: center;
  border: 1px solid #e0e0e0;
}
.seat-text {
	float: right;
  width: 38%;
}
.seat-text-fw p,
.seat-text p {
  margin-bottom: 25px;
}

/*slider*/
.seat-accordion-close,
.seat-accordion {
  display: none;
}
.seat-slider {
  width: 90%;
  margin: 0 auto;
  position:relative;
}
.seat-inner1{
  overflow: hidden;
}
.seat-inner2{
  position: relative;
  right: 0;
}
.seat-slider-box {
  float: left;
  position: relative;
  box-sizing: content-box;
  width: 33%;
}
.seat-slider-box .image {
  padding: 0 10px;
}
.seat-slider-box .image img{
  border: 1px solid #e0e0e0;
}
.seat-slider-box .image-text {
  display: none;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 0 5px;
  text-align: center;
  color: #fff;
  background-color: rgba(127,127,127,0.5);
  border-right: 10px solid #fff;
  border-left: 10px solid #fff;
}
.seat-slider-box:hover .image-text {
  display: block;
  cursor: pointer;
}
.seat-slider-box:hover {
  cursor: pointer;
}
.seat-slider-box .image-modal {
  display: none;
}
.seat-slider .seat-prev {
  position: absolute;
  display: none;
  height: 30px;
  width: 30px;
  background-color: #f0f0f0;
  top: 50%;
  margin-top: -20px;
  left: -5%;
  padding: 0px;
  outline: none;
}
.seat-slider .seat-prev:before {
  position: absolute;
  top: 8px;
  left: 11px;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 7px solid #012f64;
  border-bottom: 7px solid transparent;
  content: '';
  font-size: 0;
}
.seat-slider .seat-next {
  position: absolute;
  display: block;
  height: 30px;
  width: 30px;
  background-color: #f0f0f0;
  top: 50%;
  margin-top: -20px;
  right: -5%;
  padding: 0px;
  outline: none;
}
.seat-slider .seat-next:before {
  position: absolute;
  top: 8px;
  left: 12px;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-left: 7px solid #012f64;
  border-bottom: 7px solid transparent;
  content: '';
  font-size: 0;
}
.seat-introduction .text-desc {
  margin: 5px 0 30px;
  padding: 0 10px;
}
.seat-introduction .list-dot {
  list-style: disc;
  list-style-type: disc;
  list-style-position: inside;
  margin-bottom: 25px;
}
.seat-txt-right {
  display: block;
  text-align: right;
}

/*2 column*/
.two-column-img .box-l01,
.two-column-img .box-l {
  width: 48%;
  float: left;
  padding-left: 10px;
  box-sizing: border-box;
}
.two-column-img .box-r01,
.two-column-img .box-r {
  width: 48%;
  float: right;
  padding-right: 10px;
  box-sizing: border-box;
}
.two-column-img .box-r01 {
  width: 48.5%;
  padding-right: 0;
}
.two-column-img .box-l01 {
  width: 48.5%;
  padding-left: 0;
}
.two-column-img .box-r01 p,
.two-column-img .box-l01 p {
  text-align: left;
  margin-bottom: 15px;
}
.two-column-img .box-r01 .ttl,
.two-column-img .box-l01 .ttl {
  font-size: 1.8rem;
  font-weight: bold;
}
.two-column-img .box-l .seat-img,
.two-column-img .box-r .seat-img {
  width: 100%;
}
.two-column-img .box-l01 .seat-img,
.two-column-img .box-r01 .seat-img{
  width: 100%;
  border: 0;
}

/*table*/
.tbl-table-01 {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin-bottom: 5px;
}
.tbl-table-01 th {
  width: 30%;
  padding: 10px;
  text-align: left;
  vertical-align: middle;
  background-color: #f0f3f8;
  border: 1px solid #ccc;
}
.tbl-table-01 td {
  padding: 10px;
  text-align: left;
  vertical-align: middle;
  border: 1px solid #ccc;
}

/*link*/
.res-image-type-01 {
  margin-bottom: 5px;
}

/*notification*/
.nof-ttl {
  position: relative;
  display: block;
  margin: 25px 15px 15px 15px;
  padding: 7px 45px 7px 7px;
  border: 1px solid #bac5d9;
  border-radius: 5px;
  box-shadow: 2px 2px 2px #dfdfdf;
  cursor: pointer;
}
.nof-ttl.active {
  margin: 25px 15px 20px 15px;
  cursor: default;
}
.nof-ttl .arrow {
  display: none;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -12px;
  width: 25px;
  height: 25px;
  border: 1px solid #dcdcdc;
  border-radius: 5px;
  box-shadow: 2px 2px 2px #dfdfdf;
}
.nof-ttl.active .arrow {
  display: none;
}
.nof-ttl .arrow {
  display: block;
}
.nof-ttl .arrow:before {
  position: relative;
  top: 1px;
  left: 5px;
  width: 0;
  height: 0;
  border-top: 7px solid #012f64;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  content: '';
  font-size: 0;
}
.nof-area {
  word-break: break-all;
  margin: 0 15px 20px 15px;
}
.nof-close{
  display: block;
  position: relative;
  top: 0;
  right: 0;
  margin: 0 10px 0 auto;
  width: 25px;
  height: 25px;
  border: 1px solid #dcdcdc;
  border-radius: 5px;
  box-shadow: 2px 2px 2px #dfdfdf;
  cursor: pointer;
}
.nof-close:before {
  position: relative;
  top: -7px;
  left: 5px;
  width: 0;
  height: 0;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-bottom: 7px solid #012f64;
  content: '';
  font-size: 0;
}

/*modal*/
.modal {
  display: none;
  position: absolute;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
}

/* Modal Content/Box */
.modal-data {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fefefe;
  margin: 50px auto;
  padding: 30px;
  background-color: #eff0f4;
  border-radius: 5px;
}
.modal .m-text {
  padding-top: 15px;
  color: #333;
}
.modal .m-img {
  text-align: center;
}
.modal .close {
  position: absolute;
  right: 6px;
  top: 6px;
  width: 20px;
  height: 20px;
  cursor: pointer;
}
.modal .close:before, .modal .close:after {
  position: absolute;
  left: 8px;
  content: ' ';
  height: 20px;
  width: 2px;
  background-color: #555;
}
.modal .close:before {
  transform: rotate(45deg);
}
.modal .close:after {
  transform: rotate(-45deg);
}

/*footer*/
.footer{
  background-color: #555;
/*  padding: 30px 15px; */
  line-height: normal;
}
.page-top,
.footer-inner{
  width: 950px;
  margin: 0 auto;
}
.footer-inner a{
  position: relative;
  display: block;
  padding-left: 15px;
  text-decoration: none;
  color: #fff;
  font-size: 1.4rem;
  margin-bottom: 5px;
  padding-bottom: 2px;
  border-bottom: 1px solid #999;
}
.footer-inner a:before{
  position: absolute;
  top: 7px;
  left: 0;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-left: 7px solid #ffffff;
  border-bottom: 4px solid transparent;
  content: '';
  font-size: 0;
}
.footer-l {
  float: left;
  width: 45%;
}
.footer-r {
  float: right;
  width: 45%;
}
.footer-link-l li {
  float: left;
  width: 48%;
}
.footer-link-r li {
  float: left;
  width: 48%;
}
.footer-link-l li:nth-child(odd),
.footer-link-r li:nth-child(odd){
  margin-right: 3%;
}
.footer-ttl {
  color: #fff;
  margin-bottom: 15px;
}
.page-top {
    text-align: right;
}
.page-top a {
  position: relative;
  display: inline-block;
  margin: 0 0 15px auto;
  color: #233f9a;
}
.page-top a:before{
  position: absolute;
  top: 7px;
  left: -15px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-bottom: 7px solid #233f9a;
  content: '';
  font-size: 0;
}

/*steps*/
.wrapStepInner {
  width: 1433px;
  margin: 0 auto;
  overflow: hidden;
}
.wrapStep01,
.wrapStep02,
.wrapStep03,
.wrapStep04,
.wrapStep05,
.wrapStep06,
.wrapStep07 {
  height: 470px;
  background-position: center;
}
.wrapStep01 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step01_bg01.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep02 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step02_bg02.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep03 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step03_bg03.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep04 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step04_bg04.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep05 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step05_bg05.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep07 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step07_bg07.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep06 {
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step06_bg06.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.economy .wrapStep01{
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step01_bg01_y.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.economy .wrapStep02{
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step02_bg02_y.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.economy .wrapStep03{
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step03_bg03_y.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.economy .wrapStep04{
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step04_bg04_y.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.economy .wrapStep05{
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step05_bg05_y.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.economy .wrapStep06{
  background: url(/common-operation/serviceinfo/domestic/inflight/images/step06_bg06_y.jpg) no-repeat;
  background-position: center;
  background-size: cover;
}
.wrapStep03 .stepBlock {
  padding: 0 100px 0 60px;
  width: 521px;
  height: 453px;
}
.ttlStep {
  padding-top: 40px;
}
.ttlStep h2 {
  text-align: center;
  margin-bottom: 40px;
}
.stepArea {
  margin-bottom: 140px;
}
.stepContent {
  display: table-cell;
  vertical-align: middle;
}
.stepContent03 {
  display: block;
  padding-top: 50px;
  position: relative;
}
.stepBlock {
  background: rgba(0,91,171, 0.7);
  padding: 0 70px 0 60px;
  float: right;
  margin-top: 50px;
  width: 481px;
  height: 453px;
  display: table;
}
.economy .stepBlock{
  background: rgba(45,119,31, 0.9);
}
.stepMap {
  position: absolute;
  top: 177px;
  right: -20px;
}
.stepContent .infoCont:nth-child(3) {
  margin-bottom: 0;
}
.stepBlock02 {
  background: rgba(0,91,171,0.7);
  padding: 0 70px 0 60px;
  float: left;
  margin-top: 50px;
  width: 481px;
  height: 453px;
  display: table;
}
.economy .stepBlock02{
  background: rgba(45,119,31, 0.9);
}
.lineStep {
  width: 154px;
  margin-bottom: 19px;
  display: block;
  border-top: 3px solid #004ea2;
}
.economy .lineStep{
  border-color: #206e12;
}
.infoCont {
  margin-bottom: 40px;
  position: relative;
  z-index: 2;
}
.infoCont p {
  color: #fff;
  font-size: 1.4rem;
  line-height: 26px;
  margin-bottom: 10px;
}
.infoCont > a {
  position: relative;
  margin-top: 10px;
  display: inline-block;
  border: 1px solid #8eb6d8;
  padding: 3.5px 35px 3.5px 20px;
  background-color: rgba(6,52,97,0.7);
  box-sizing: border-box;
  text-decoration: none;
  color: #fff !important;
  font-size: 1.2rem;
}
.economy .infoCont > a{
  border-color: #a2c29d;
  background-color: rgba(69,111,61,0.7);
}
.btnMap {
  position: relative;
}
.btnMap > p {
  text-align: right;
}
.infoCont > a:hover {
  text-decoration: none;
  text-decoration: underline;
}
.btnMap a {
  display: inline-block;
  color: #fff !important;
  border: 1px solid #8eb6d8;
  padding: 3.5px 30px 3.5px 10px;
  background-color: rgba(6,52,97,0.7);
  box-sizing: border-box;
  text-decoration: none;
  margin-top: 10px;
  font-size: 1.1rem;
}
.btnMap a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.btn01, .btn02, .btn03, .btn04 {
  position: absolute;
}
.btn01 {
  top: 139px;
  left: -127px;
}
.btn02 {
  right: 65px;
  bottom: 31px;
}
.btn03 {
  right: -60px;
  bottom: 87px;
}
.btn04 {
  top: 61px;
  right: -60px;
  padding: 3.5px 50px 3.5px 30px !important;
}
.btnMap > a:after,
.infoCont > a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -5px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 4px;
  content: "";
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.noMar {
  margin-bottom: 0;
}
.spOn {
  display: none;
}
.pcOn {
  display: inline-block;
}
.noteTxt {
  float: right;
  display: block;
  width: 100%;
  text-align: right;
  margin-top: 15px;
  padding-right: 240px;
  font-size: 1.2rem;
  color: #333;
}

/*step nav*/
.step-nav {
  position: fixed;
  top: 50%;
  right: 60px;
  margin-top: -84px;
  display: none;
  width: 28px;
  background-color: rgba(186,190,190,0.7);
  z-index: 3;
}
.step-nav li a {
  text-align: center;
}
.step-nav li a {
  display: block;
  width: 28px;
  height: 28px;
  color: #333;
  font-size: 1.8rem;
  text-decoration: none;
}
.step-nav li.active a {
  position: relative;
  top: -4px;
  color: #06467e;
  font-size: 2.4rem;
  text-decoration: none;
}

/*information*/
.blk_wrap{
  display: block;
}
.blk_inner{
  position: relative;
  width: 950px;
  margin: 0 auto;
  height: 100%;
}
.blk_inner .res-contents {
  padding: 0 10px;
}
.res-info-block .res-info-list li {
  line-height: normal;
}
.info-new {
  background-color: #223f9a;
  margin: 0 5px;
  padding: 0 5px;
  color: #fff;
}
.info01 .res-info-block dt {
  text-align: left;
  color: #333;
  background: #fff;
}
.info01 .res-info-block dd {
  border: none;
  padding: 0;
}
.info01 .res-info-block li {
  position: relative;
  border-bottom: 1px solid #ccc;
  padding: 15px 15px 15px 0;
}
.info01 .res-info-block li:after {
  display: block;
  position: absolute;
  top: 62%;
  right: 5px;
  margin-top: -5px;
  border: solid #434343;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 4px;
  content: "";
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.info01 .ficon-arrow-right:before {
  display: none;
}
.info01 .ficon-arrow-right {
  padding-left: 0;
}
.info01 .info-new {
  background-color: #333333;
}
.info01 a {
  text-decoration: none;
  color: #222;
}
.info01 .info-date {
  margin-right: 25px;
  color: #222;
}
.info01 .cred {
  color: #ff3333;
}
.info01 .cblue {
  color: #0099ff;
}
.info01 .info-new {
  margin-left: 0;
}

/*service*/
.service h2{
  margin: 100px 0 40px 0;
  text-align: center;
}
.service01 {
  position: relative;
  height: 600px;
  background: url(/common-operation/serviceinfo/domestic/inflight/images/service01.jpg)no-repeat #edecec;
  background-position: left;
  margin-bottom: 50px;
  opacity: 0;
}
.service02 {
  position: relative;
  height: 600px;
  margin-bottom: 140px;
  background: url(/common-operation/serviceinfo/domestic/inflight/images/service02.jpg)no-repeat #edecec;
  background-position: right;
  margin-bottom: 50px;
  opacity: 0;
}
.service01 .logo {
  position: absolute;
  top: 50px;
  left: 0;
}
.service02 .logo {
  position: absolute;
  top: 50px;
  right: 0;
}
.service01 .text {
  position: absolute;
  top: 305px;
  right: -305px;
  display: table;
  width: 472px;
  height: 200px;
  background-color: rgba(1,78,162,0.75);
  font-size: 2.8rem;
  padding: 0 60px;
  color: #fff;
}
.service02 .text {
  position: absolute;
  top: 330px;
  left: -305px;
  display: table;
  width: 472px;
  height: 200px;
  background-color: rgba(45,119,32,0.75);
  font-size: 2.8rem;
  padding: 0 60px;
  color: #fff;
}
.service02 .text-inner,
.service01 .text-inner {
  display: table-cell;
  vertical-align: middle;
}
.other-service {
  width: 1433px;
  margin: 0 auto;
}
.other-service01,
.other-service02,
.other-service03 {
  display: block;
  float: left;
  width: 33%;
  box-sizing: border-box;
}
.other-service01 {
  padding-right: 5%;
}
.other-service02 {
  padding: 0 2.5%;
}
.other-service03 {
  padding-left: 5%;
}
.other-service01 a,
.other-service02 a,
.other-service03 a {
  opacity: 0;
}
.other-service a {
  display: block;
  text-decoration: none;
}
.other-service04:hover,
.other-service01:hover,
.other-service02:hover,
.other-service03:hover {
  opacity: 0.7
}
.other-service .other-service04 {
  display: inline-block;
  margin: 40px 0 60px 2.8%;
}
.other-service .images {
  display: block;
  margin-bottom: 40px;
  text-align: center;
}
.other-service .ttl {
  width: 80%;
  margin: 0 auto;
  padding-top: 15px;
  display: block;
  font-size: 3.0rem;
  color: #333;
  border-top: 3px solid #00a7eb;
}
.other-service .sub-ttl {
  width: 80%;
  margin: 0 auto;
  display: block;
  margin-bottom: 35px;
  font-size: 1.2rem;
  color: #00a7eb;
}
.other-service .text {
  width: 80%;
  margin: 0 auto;
  display: block;
  color: #333;
}

/*title*/
.title-box-img {
  padding: 70px 0 35px 0;
  border-top: 3px solid #093568;
  text-align: center;
}

/*list*/
.list-star li:before{
  content: "※";
}

/*carousel*/
.carousel {
  float: left;
  width: 48%;
  overflow: hidden;
}
.carousel .carousel-inner {
  position: relative;
  right: 0;
}
.carousel-box {
  position: absolute;
  top: 0;
  left: 0;
  float: left;
}
.carousel-box:first-child {
  position: relative;
  display: block
}
.carousel-box img {
  width: 100%;
}
.carousel-box:hover .carousel-text {
  display: block;
}
.carousel-box .carousel-text {
  display: none;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 10px 20px;
  color: #fff;
  background-color: rgba(0,0,0,0.5);
  font-size: 1.4rem;
  cursor: default;
}
.carousel-text-box p,
.carousel-label {
  margin-bottom: 15px;
}
.carousel-text-box {
  width: 48%;
  float: right;
}
.carousel-text-box .ttl {
  font-size: 1.8rem;
  font-weight: bold;
}
.carousel-text-box .ttl01 {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 15px;
}
.carousel .bx-has-pager {
  text-align: center;
  margin-top: 10px;
}
.carousel .bx-has-pager .bx-pager-item {
  display: inline-block;
  text-align: center;
}
.carousel .bx-has-pager .bx-pager-item a {
  background: #666;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.carousel .bx-has-pager .bx-pager-item a.active {
  background: #000;
}

/*sky shop*/
.product-container {
  display: inline-block;
}
.product-container .ficon-s-arrow a {
  text-decoration: none;
}
.product-container .ficon-s-arrow a:hover {
  text-decoration: underline;
}
.product-container .right-content {
  display: inline-block;
  float: left;
  width: 30%;
  padding-right: 15px;
}
.product-container .right-content .feature-img,
.product-container .left-content .item .img {
  margin-bottom: 10px;
}
.product-container .right-content .feature-img img,
  .product-container .left-content .item .img img {
  width: 100%;
}
.product-container .left-content {
  display: inline-block;
  width: 70%;
  padding-left: 15px;
}
.product-container .left-content .item {
  float: left;
  width: 50%;
  margin-bottom: 30px;
}
.product-container .left-content .item:nth-child(odd) {
  padding-right: 15px;
}
.product-container .left-content .item:nth-child(even) {
  padding-left: 15px;
}
.res-btn-link.type-01.wp60 {
  width: 60%;
  margin: 0 auto;
}
.bold {
  font-weight: bold;
}
.sky-shop-btn .res-btn-link.arrow-R a {
  padding: 5px;
}
.sky-shop-btn .res-btn-link.type-01.DBLU.arrow-R {
  width: 85%;
  margin: 10px 20px;
}
.sky-shop-btn .res-btn-link.type-01 .btn-text {
  font-size: 1.4rem;
}

/*wifi*/
#wifi .res-ib-link.left li {
  display: block;
}
#wifi #inflight-video:hover,
#wifi #inflight-audio:hover,
#wifi #inflight-ebooks:hover,
#wifi #inflight-tv:hover {
  opacity: 0.7;
}
#wifi #inflight-video,
#wifi #inflight-audio,
#wifi #inflight-ebooks,
#wifi #inflight-tv {
  cursor: pointer;
  display: inline-block;
}
#wifi .appstore .item {
  display: inline-block;
}
#wifi .appstore .item:last-child {
  margin-left: 20px;
}
#wifi .list-instruction01,
#wifi .list-instruction {
  margin: 25px 0;
}
#wifi .list-instruction li {
  width: 25%;
  float: left;
  padding: 0 25px;
}
#wifi .list-instruction01 li {
  width: 33.33%;
  float: left;
  padding: 0 10px;
}
#wifi .list-instruction01 li:last-child .img:after,
#wifi .list-instruction li:last-child .img:after {
  background: none;
}
#wifi .list-instruction01 li .img,
#wifi .list-instruction li .img {
  position: relative;
  margin: 10px 0;
  text-align: center;
}
#wifi .list-instruction01 li .img:after,
#wifi .list-instruction li .img:after {
  position: absolute;
  content: '';
  background: url(/common-operation/serviceinfo/domestic/inflight/images/blue_arrow.png) no-repeat;
  right: -45px;
  top: 50%;
  width: 15px;
  height: 20px;
  padding: 0 0 15px 20px;
}
#wifi .list-instruction01 li .img:after {
  right: -30px;
}
#wifi .list-instruction01 li p {
  max-width: 204px;
  margin: 0 auto;
}
.wifi-img-container {
  overflow: hidden;
}
.wifi-img-container .item {
  width: 16.66%;
  float: left;
  padding: 0 5px;
}
.wifi-img-container .item > img {
  max-width: 100%;
}
.wifi-img-container.column-04 .item {
  width: 25%;
}
.wifi-img-container.column-04 .item p {
  margin-top: 10px;
  text-align: center;
}
.wifi-icon {
  margin-top: 15px;
}
.wifi-icon li {
  position: relative;
  padding-left: 45px;
}
.wifi-icon-01:before {
  display: inline-block;
  position: absolute;
  top: -4px;
  left: 2px;
  width: 39px;
  height: 24px;
  background: url(/common-operation/serviceinfo/domestic/inflight/images/wifi_icon_01.JPG) no-repeat;
  background-size: 39px 24px;
  content: "";
}
.wifi-icon-02:before {
  display: inline-block;
  position: absolute;
  top: 1px;
  left: 0;
  width: 38px;
  height: 18px;
  background: url(/common-operation/serviceinfo/domestic/inflight/images/wifi_icon_02.JPG) no-repeat;
  background-size: 38px 18px;
  content: "";
}
.wifi-accordion {
  display: none;
}
/* wifi tab area */
.tab-area {
  margin: 30px auto;
  max-width: 950px;
  color: #333;
}
.tab-area .tab-links{
  display: table;
  width: 100%;
  padding-bottom: 8px;
}
.tab-area .tab-links li{
  display: table-cell;
  width: 50%;
}
.tab-area .tab-links li a{
  display: block;
  text-align: center;
  text-decoration: none;
  color: #333;
  font-size: 2.0rem;
  line-height: 1;
  background: #f0f1f4;
  border: 1px solid #ddd;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  padding: 16px 10px 12px;
  outline: 0;
}
.tab-area .tab-links li.active a{
  background: #fff;
  border-bottom: none;
}
.tab-area .wifi-tab {
  padding-top: 0;
}
.tab {
  display: none;
}
.tab.active {
  display: block;
}
.tab-area .res-ib-link li{
  margin-bottom: 5px;
  margin-bottom: 10px;
}
.tab-area .res-ib-link li:last-child{
  margin-bottom: 0;
}

/* wifi digital book */
.digital-book{
  border: 1px solid #ccc;
  padding: 30px 10px;
  margin: 35px 10px 0;
  color: #333;
}
.digital-book .digital-ttl{
  margin-left: 14px;
  margin-right: 14px;
}
.digital-book .digital-ttl:before{
  display: inline-block;
  content: '';
  position: relative;
  top: 3px;
  background: url('/common-operation/serviceinfo/domestic/inflight/images/icon-book.png') no-repeat;
  width: 23px;
  height: 16px;
  margin-right: 10px;
}
.digital-text p{
  font-size: 1.2rem;
}
.digital-book .digital-btn{
  display: table;
  width: 100%;
  margin-top: 5px;
}
.digital-book .digital-btn .res-contents{
  display: table-cell;
  width: 50%;
}
.digital-book .digital-btn .res-btn-link.type-01{
  width: 100%;
  margin: 15px 0 3px 0;
}

.other .bold{
  font-size: 1.8rem;
}

@media (max-width: 1600px) {
  /*  service*/
  .service01 .text {
    right: -100px;
  }
  .service02 .text {
    left: -100px;
  }
}

@media (max-width: 1433px) {
/*  step*/
  .wrapStepInner {
    width: 100%;
  }
  /*  service*/
  .service01 .text {
    right: -50px;
  }
  .service02 .text {
    left: -50px;
  }
  .other-service {
    width: 100%;
  }
}

@media (max-width: 1024px) {
  /*  information*/
  .blk_inner{
    width: 100%;
  }
  .blk_inner .res-contents {
    padding: 0 20px;
  }
  /*seat introduction*/
  .seat-introduction {
    margin: 25px 10px 0 10px;
  }
/*  service*/
  .service01 .text {
    right: 0;
  }
  .service02 .text {
    left: 0;
  }
/*  wifi*/
  .res-coolumn-3-box {
    width: 30.53763441%;
    margin-left: 2.795698925%;
  }
  .res-main-box.coolumn-3 .res-coolumn-box:nth-child(3) {
    margin-top: 0;
  }
}

@media (max-width: 950px) {
/*  header*/
  .header-wrap {
    margin: 0 7px;
  }
  .header-wrap {
    margin: 0;
    padding: 0 7px;
  }
  
/*  main visual*/
  .main-visual .main-inner{
    width: 100%;
  }
  .main-visual .sky-shop{
    background-position: center center;
  }
  .main-visual .wifi,
  .main-visual .y-meal,
  .main-visual .lounge,
  .main-visual .amenity,
  .main-visual .y-seat,
  .main-visual .seat{
    background-position: 80% center;
  }
  
/*  footer*/
  .page-top,
  .footer-inner{
    width: 100%;
  }
  .footer-l,
  .footer-r {
    width: 48%;
  }
  .footer-link-l li:nth-child(odd),
  .footer-link-r li:nth-child(odd),
  .footer-link-l li,
  .footer-link-r li{
    margin-right: 2%;
  }
  

  /*service*/
  .service01 {
    background-position: 80%;
  }
  .service02 {
    background-position: 40%;
  }

  /* wifi tab area */
  .tab-area .tab-links{
    padding: 14px;
    padding-top: 0;
  }
}

@media (max-width: 800px) {
  .premium-btn{
    display: none;
  }
  .option-contents{
    display: none;
  }
  .header-hamburger {
    display: block;
    float: right;
    right: 20px;
  }
  
  /* wifi tab area */
  .tab-area .tab-links li a{
    font-size: 1.6rem;
    border-radius: 0;
    line-height: 1.4;
  }
  #wifi .list-instruction01 li .img:after {
    background-size: 100%;
    right: -20px;
    width: 7px;
    height: 10px;
    padding: 0 0 7px 10px;
  }
}

@media (min-width: 571px) {
/*  header*/
  .service-inner2 > div {
    display: table-cell;
    text-align: center;
    vertical-align: text-top;
    padding: 10px 0;
  }
  .premium .service-inner2 > div {
    width: 14%;
  }
  .economy .service-inner2 > div {
    width: 16.6%;
  }
  .service-inner2 > div a{
    display: block;
    text-decoration: none;
  }
  .service-inner2 > div .icon-text{
    display: flex;
    text-align: center;
    position: relative;
    min-height: 54px;
    color: #363333;
    text-decoration: none;
    align-items: center;
    justify-content: center;
    word-break: break-all;
  }
  .service-nav .service-prev,
  .service-nav .service-next{
    display: none;
  }
}

@media (max-width: 570px) {
  .pc-view{
    display: none;
  }
  .sp-view{
    display: block;
  }
  .mb-50{
    margin-bottom: 25px;
  }
  .txt-c {
    text-align: center;
  }

  /*header*/
  .header-block h1{
    width: 75%;
  }
  .header-block:last-child {
    padding: 10px 0;
  }
  .class-nav {
    width: 100%;
  }
  .class-nav li,
  .class-nav li a{
    font-size: 1.2rem;
  }
  .service-nav{
    width: 85%;
    padding: 0 10px;
    margin: 0 auto 12px auto;
    border-left: 1px solid #363333;
    border-right: 1px solid #363333;
    position: relative;
  }
  .service-nav > div .icon-text{
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    color: #363333;
  }
  .service-nav.premium div.active .icon-text{
    margin: 0;
    color: #13448f;
  }
  .service-nav.economy div.active .icon-text{
    margin: 0;
    color: #2d771f;
  }
  .service-nav div a{
    text-align: center;
    color: #000;
    display: block;
    text-decoration: none;
  }
  .service-nav div p{
    text-align: center;
  }
  .service-nav div p img,
  .service-nav div a img{
    margin: 0 auto;
  }
  .service-nav .service-inner2 {
    position: relative;
  }
  .service-nav .service-inner2 > div {
    width: 33%;
    float: left;
  }
  .service-inner2 > div {
    text-align: center;
  }
  .service-inner2 > div .icon-text{
    word-break: break-all;
  }

  /*table*/
  .tbl-table-01 th {
    width: 45%;
    padding: 5px;
  }
  
/*  notification*/
  .nof-close {
    margin: 0 7px 0 auto;
  }
  
/*  main visual*/
  .main-visual{
    display: block;
    margin-bottom: 20px;
  }
  .main-visual .visual-sp {
    display: block;
  }
  .main-visual .visual-sp img {
    width: 100%;
  }
  .main-visual .visual-right,
  .main-visual .visual-left{
    display: block;
    background: none;
    width: 100%;
  }
  .main-visual .bold-text{
    margin-bottom: 10px;
  }
  .main-visual .content{
    display: block;
    padding: 20px 14px;
    width: 100%;
    max-width: inherit;
  }
  .main-visual h2{
    font-size: 2.8rem;
    margin-bottom: 15px;
  }
  .main-visual p{
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .main-visual .noteTxt.amenity{
    font-size: 1.4rem;
    margin-top: 15px;
  }
  .main-visual h2 + p{
    font-size: 1.7rem;
    margin-bottom: 0;
    letter-spacing: normal;
  }

  .main-visual-service {
    margin-top: 10px;
    height: auto;
    margin-bottom: 30px;
    background: none;
    opacity: 0;
  }
  .main-visual-service h2 {
    position: absolute;
    padding: 0 10px;
    font-size: 2.2rem;
    top: 50%;
  }
  .main-visual-service h2.active {
    padding: 0 10px;
    top: 40%;
  }

  /*seat introduction*/
  .seat-introduction {
    margin-top: 15px 7px 0 7px;
  }
  .seat-img {
    float: none;
    width: 100%;
    margin-bottom: 15px;
  }
  .seat-introduction .seat-text {
    float: none;
    width: 100%;
  }
  .seat-text-fw p,
  .seat-text p {
    margin-bottom: 15px;
  }
  
/*  icon*/
  .seat-feature {
    font-size: 0;
    text-align: center;
  }
  .seat-feature li {
    width: 16.1%;
    float: none;
    margin-right: 3.894%;
    display: inline-block;
    vertical-align: top;
  }
  .res-coolumn-3-box {
    display: inline-block;
    width: 47.20430108%;
    margin-left: 1.75%;
    margin-top: 0 !important;
  }

  /*slider*/
  .seat-accordion {
    position: relative;
    display: block;
    margin: 15px;
    padding: 7px 45px 7px 7px;
    border: 1px solid #bac5d9;
    border-radius: 5px;
    box-shadow: 2px 2px 2px #dfdfdf;
  }
  .seat-accordion-close,
  .seat-accordion .arrow {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -12px;
    width: 25px;
    height: 25px;
    border: 1px solid #dcdcdc;
    border-radius: 5px;
    box-shadow: 2px 2px 2px #dfdfdf;
  }
  .seat-accordion .arrow:before {
    position: relative;
    top: -1px;
    left: 5px;
    width: 0;
    height: 0;
    border-top: 7px solid #012f64;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    content: '';
    font-size: 0;
  }
  .seat-accordion-close{
    display: none;
    position: relative;
    top: 0;
    right: 0;
    margin: 0 7px 0 auto;
    width: 25px;
    height: 25px;
    border: 1px solid #dcdcdc;
    border-radius: 5px;
    box-shadow: 2px 2px 2px #dfdfdf;
  }
  .seat-accordion-close:before {
    position: relative;
    top: -9px;
    left: 5px;
    width: 0;
    height: 0;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-bottom: 7px solid #012f64;
    content: '';
    font-size: 0;
  }
  .seat-accordion .arrow {
    display: block;
  }
  .seat-accordion.active .arrow {
    display: none;
  }
  .seat-slider {
    display: none;
    width: 100%;
  }
  .seat-slider .seat-slider-box {
    float: none;
    display: inline-block;
    width: 49%;
    vertical-align: top;
  }
  .seat-slider-box .image-text {
    display: block;
    position: relative;
    margin-bottom: 10px;
    background-color: transparent;
    color: #000;
    text-align: left;
  }
  .seat-slider-box .image {
    margin-bottom: 10px;
  }
  .seat-slider .seat-prev,
  .seat-slider .seat-next {
    display: none;
  }
  .seat-introduction .list-dot {
    margin-bottom: 15px;
  }
  .seat-txt-right {
    text-align: left;
  }

/*  2 column*/
  .two-column-img .box-l01,
  .two-column-img .box-r01,
  .two-column-img .box-l,
  .two-column-img .box-r {
    width: 100%;
    float: none;
    padding: 0;
  }
  
  /*footer*/
  .footer{
    padding: 15px;
  }
  .footer-inner a{
    font-size: 1.6rem;
    margin-left: 15px;
  }
  .footer-link {
    display: none;
  }
  .footer-link.active {
    display: block;
  }
  .footer-l,
  .footer-r,
  .footer-link-l li,
  .footer-link-r li,
  .footer-link-l{
    float: none;
    width: 100%;
  }
  .footer-link-l li:nth-child(odd),
  .footer-link-r li:nth-child(odd),
  .footer-link-l li,
  .footer-link-r li{
    margin-right: 0;
  }
  .footer-ttl {
    position: relative;
    color: #fff;
    margin-bottom: 5px;
    padding-bottom: 2px;
    border-bottom: 1px solid #999;
    cursor: pointer;
  }
  .footer-ttl:before{
    position: absolute;
    top: 9px;
    right: 0;
    width: 0;
    height: 0;
    border-top: 7px solid #ffffff;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    content: '';
    font-size: 0;
  }
  .footer-ttl.active:before{
    top: 5px;
    border-top: 4px solid transparent;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 7px solid #ffffff;
  }
  .page-top a {
    width: 75px;
    margin: 0 auto 15px auto;
  }
  
/*  step*/
  .pcOn {
    display: none;
  }
  .spOn {
    display: inline-block;
  }
  .wrapStepInner {
    width: auto;
    padding: 0 10px;
  }
  .wrapStep01,
  .economy .wrapStep01,
  .wrapStep02,
  .economy .wrapStep02,
  .wrapStep03,
  .economy .wrapStep03,
  .wrapStep04,
  .economy .wrapStep04,
  .wrapStep05,
  .economy .wrapStep05,
  .wrapStep06,
  .economy .wrapStep06,
  .wrapStep07 {
    background: none;
    height: inherit;
  }
  .stepBlock {
    display: block;
    background: none;
    width: auto;
    height: inherit;
    float: none;
    margin: inherit;
    padding: 0;
  }
  .stepBlock02 {
    background: none;
    float: none;
    margin: inherit;
    padding: 0;
    width: auto;
    height: inherit;
    display: block;
  }
  .economy .stepBlock02,
  .economy .stepBlock{
    background: none;
  }
  .infoCont p {
    color: #333;
    font-size: 1.6rem;
  }
  .economy .infoCont > a,
  .infoCont > a {
    display: block;
    padding: 0;
    margin-top: 0;
    background: none;
    border: none;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    color: #333 !important;
    font-size: 1.4rem;
    box-sizing: border-box;
    padding: 11px 0;
  }
  .economy .infoCont > a.brb-sp0 {
    border-bottom: 0;
  }
  .infoCont > a:after,
  .btnMap > a:after {
    border: solid #333;
    border-width: 0 2px 2px 0;
  }
  .stepContent {
    display: block;
  }
  .wrapStep03 .stepBlock {
    padding: 0;
    width: auto;
    height: inherit;
    margin-right: 0;
  }
  .stepMap {
    position: inherit;
    top: inherit;
    right: inherit;
  }
  .btnMap a {
    display: block;
    color: #fff !important;
    border: none;
    padding: 3.5px 30px 3.5px 10px;
    background-color: #063461;
    box-sizing: border-box;
    text-decoration: none;
    margin-top: 10px;
    font-size: 1.4rem;
  }
  .btnMap {
    position: inherit;
  }
  .btn01, .btn02, .btn03, .btn04 {
    top: inherit;
    left: inherit;
    right: inherit;
    bottom: inherit;
  }
  .btn01, .btn02, .btn03, .btn04 {
    position: inherit;
    border-bottom: 1px solid #ddd !important;
  }
  .btnMap a {
    display: block;
    color: #fff !important;
    border: none;
    background-color: #fff;
    box-sizing: border-box;
    text-decoration: none;
    margin-top: 0;
    color: #333 !important;
    padding: 11px 0;
  }
  .btn04 {
    padding: 11px 0 !important;
  }
  .ttlStep {
    padding: 0 10px;
  }
  .ttlStep h2 {
    margin-bottom: 25px;
  }
  .wrapStepInner > p.spOn {
    margin-bottom: 25px;
  }
  .wrapStepInner > p.spOn img {
    width: 100%;
  }
  .infoCont p {
    margin-bottom: 15px;
  }
  .stepArea {
    margin-bottom: 25px;
  }
  .stepContent03 {
    padding-top: 0;
  }
  .noteTxt {
    float: none;
    text-align: left;
    padding-right: 0;
  }
  
/* step nav*/
  .step-nav{
    display: none;
  }
  
/*  information*/
  .blk_inner .res-contents {
    padding-top: 0;
    padding-left: 7px;
    padding-right: 7px;
    margin-top: 15px;
    margin-left: 7px;
    margin-right: 7px;
  }
  .blk_inner .res-contents {
    margin-bottom: 25px;
    padding: 0;
  }

  /*service*/
  .service a {
    text-decoration: none;
  }
  .service h2{
    margin: 0 0 20px 0;
  }
  .service02,
  .service01 {
    height: auto;
    margin-bottom: 0;
  }
  .service02{
    margin-bottom: 20px; 
  }
  .service02 .logo,
  .service01 .logo {
    display: block;
    position: absolute;
    top: 20px;
    left: 20px;
    right: 0;
    width: 20%;
  }
  .service02 .text {
    background-color: #2d7720;
  }
  .service01 .text {
    background-color: #014ea2;
  }
  .service02 .text,
  .service01 .text {
    position: relative;
    top: 0;
    width: 100%;
    height: inherit;
    font-size: 1.8rem;
    padding: 20px;
  }
  .service02 .text-inner,
  .service01 .text-inner {
    display: block;
  }
  .other-service .images img {
    width: 100%;
  }
  .other-service01,
  .other-service02,
  .other-service03 {
    float: none;
    width: 100%;
    padding: 0 7px;
  }
  .other-service .sub-text,
  .other-service .sub-ttl,
  .other-service .ttl {
    width: 100%;
  }
  .other-service04 {
    margin: 30px 7px;
  }
  .other-service .other-service04 {
    margin: 40px 7px 60px 7px;
  }
  
  /*title*/
  .title-box-img {
    padding: 15px 7px 0 7px;
  }

/*  carousel*/
  .carousel-text-box,
  .carousel {
    float: none;
    width: 100%;
  }
  
  /*sky shop*/
  .product-container .right-content {
    float: none;
    width: 100%;
    padding-right: 0;
    margin-bottom: 30px;
  }
  .product-container .left-content {
    width: 100%;
    padding-left: 0;
  }
  .product-container .left-content .item {
    float: none;
    width: 100%;
    margin-bottom: 15px;
  }
  .product-container .left-content .item:nth-child(odd) {
    padding-right: 0;
  }
  .product-container .left-content .item:nth-child(even) {
    padding-left: 0;
  }
  .res-btn-link.type-01.wp60 {
    width: 100%;
  }
  .res-btn-link.type-01.wp60 .btn-text {
    padding: 0;
  }

  /*wifi*/
  .wifi-img-container .item {
    width: 50%;
    padding: 5px;
  }
  #wifi .res-coolumn-3-box {
    width: 100%;
  }
  .wifi-img-container.column-04 .item {
    width: 100%;
  }
  #wifi .list-instruction01 li,
  #wifi .list-instruction li {
    width: 50%;
    padding: 0 15px;
    font-size: 1.2rem;
    margin-bottom: 20px;
  }
  #wifi .list-instruction01 li:last-child {
    position: relative;
    left: 25%;
  }
  #wifi .appstore {
    text-align: center;
  }
  #wifi .appstore .item {
    margin-bottom: 20px;
    display: block;
  }
  #wifi .appstore .item:last-child {
    margin-left: 0;
  }
  #wifi .list-instruction li .img:after {
    background-size: 100%;
    right: -20px;
    width: 7px;
    height: 10px;
    padding: 0 0 7px 10px;
  }
  #wifi .title-box {
    margin: 0;
  }
  /* wifi tab area */
  .tab-area .tab-links li{
    padding-left: 5px;
  }
  .tab-area .tab-links li:first-child{
    padding-right: 5px;
    padding-left: 0;
  }
  .tab-area .tab-links li.active a{
    border-bottom: 1px solid #ddd;
  }
  .tab-area .tab-content{
    padding: 0 10px;
  }
  .tab-area .tab-links li a{
    color: rgba(51,51,51,.5);
    background: #ededed;
    border-color: #ededed;
    text-align: left;
  }
  .tab-area .tab-links li a{
    color: rgba(51,51,51,.5);
    background: #ededed;
    border-color: #ededed;
  }
  .tab-area .tab-links li.active a {
    color: rgba(51,51,51,1);
    background: #fff;
    border-color: #ddd;
  }
  /* wifi digital book */
  .digital-book{
    margin: 15px 14px;
    padding: 15px 0;
  }
  .digital-book .digital-ttl {
    font-size: 1.6rem;
  }
  .contents-1col #contents .digital-book .digital-btn .res-contents{
    display: block;
    width: 100%;
    margin: 15px 0 0;
    padding: 0 14px;
  }

  .other .bold{
    font-size: 1.6rem;
  }
}

@media (max-width: 510px){
/*
  #wifi .list-instruction01 li .img:after,
  #wifi .list-instruction li .img:after {
    right: -15px;
  }
*/
}

@media (max-width: 490px){
/*
  #wifi .list-instruction01 li .img:after,
  #wifi .list-instruction li .img:after {
    right: -23px;
  }
  #wifi .list-instruction01 li:nth-child(2) .img:after,
  #wifi .list-instruction li:nth-child(2) .img:after {
    right: -17px;
  }
*/
}

@media (max-width: 375px){
  .header-hamburger {
    top: 5px;
  }
}




/*header css*/
#header {
	height: 96px;
	background: #fff;
}
#header .res-wrap-inner {
	height: 96px;
	background: #fff;
}

#header .res-logo-main {
	float: none;
	width: 100%;
}

#global-navigation {
	display: none;
}

#global-menu .res-support-nav.active .res-support-open {
	border-style: solid;
	border-width:1px;
}

#global-menu .res-utility-menu li a,
#global-menu .res-support-open a {
	color: #333;
}

#global-menu .res-utility-menu li .ficon-arrow-right:before,
#global-menu .res-chn-world .ficon-arrow-right:after {
	border-left-color: #13458f;
}

#global-menu .res-chn-world {
	border-color: #333;
}

#global-menu .res-chn-world a {
	border:none;
}

#global-menu .res-support-open {
	background: none;
	border: none;
}

#global-menu .res-support-nav {
	right: 27%;
}

#global-menu .res-search-box-area {
	top: 10px;
}

#global-menu .res-utility-menu {
	right: 37%;
}

#global-menu .res-input-search-text {
	border:1px solid #a3a3a3;
}

.premium-btn {
	position: absolute;
	right: 0;
	top: 57px;
}

.cabin-nav {
	background:#363333;
	font-size: 1.6rem;
}

@media (max-width: 1024px) {
	#header {
	height: 100%;
	}

	#header .res-wrap-inner {
	height: 100%;
	}

	#global-navigation {
	display:block !important;
	}

	.premium-btn {
	display: none;
	}

	#global-menu .res-support-open {
	background:transparent !important;
	border:1px solid #7b8aba !important;
	}

	#global-menu .res-utility-menu li a span {
	color:#fff;
	}

	#global-menu .res-utility-menu li a{
	color:#fff !important;
	}
}

@media (max-width: 570px) and (min-width: 0px) {
	#header {
	height: 68px;
	}

	#header .res-logo-main {
	width: 250px;
	}
}
/*header css end*/

/* accessibility */
.focus_white a:focus {
    outline-color: #fff;
}

/* slider */
.splide .splide__slide div, .splide .splide__slide div >a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.splide .splide__arrow.service-next, .splide .splide__arrow.service-prev {
  display: block;
}

.slider-area .header-wrap{
  padding: 10px 0;
}

.premium .service-inner2 .splide__slide > div:hover .icon-text,
.premium .service-inner2 .splide__slide > div.active .icon-text{
  color: #13448f;
}
.economy .service-inner2 .splide__slide > div:hover .icon-text,
.economy .service-inner2 .splide__slide > div.active .icon-text{
  color: #2d771f;
}
.slider-area:has(.premium){
  background: #f0f1f4;
}
.slider-area:has(.economy){
  background: #f0f1f4;
}

.splide .splide__slide{
  padding: 3px;
}

.header-block.cabin-nav {
  background: #363333;
}

.splide .splide__arrow{
  background: none;
}

.service-inner2 .splide.is-initialized:not(.is-active) .splide__list {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

@media (max-width: 570px) {

  .service-nav {
      width: 85%;
      padding: 0 10px;
      margin: 0 auto 12px auto;
      border-left: 1px solid #363333;
      border-right: 1px solid #363333;
      position: relative;
  }

  .splide .splide__arrow svg {
    width: 2rem;
    height: 2rem;
  }

  .splide .splide__arrow.service-prev{
    left: -4rem;
    top: 6rem;
  }

  .splide .splide__arrow.service-next{
    right: -4rem;
    top: 6rem;
  }
  

  .splide .splide__arrows{
    position: relative;
  }

  .slider-area .header-wrap{
    padding: 10px 7px;
    overflow: hidden;
  }

  .slider-area .splide.is-focus-in .splide__arrow:focus {
    outline: 3px solid #333;
  }
}
