@charset "utf-8";
.nosp {
    display: none!important;
}
.contents {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	color: #333;
	font-size: 3.5vw;
	line-height: 1.5em;
}
.contents .inner {
    width: 96vw;
    margin: 0 auto;
}

/*------------------------------------------------
	パンくずリスト
--------------------------------------------------*/
.ui-static-breadcrumb, 
.ui-static-breadcrumb-list {
    margin-bottom: 0;
    padding-bottom: 0;
}

/*------------------------------------------------
	メインビジュアル
--------------------------------------------------*/
.ui-static-main-visual {
    width: 100%;
    text-align: center;
    background: url("../images/main-bg-sp.png") no-repeat top center;
    background-size: 100% auto;
    position: relative;
    padding-top: 0;
    margin-top: 0; 
    padding-left: 0;
    padding-right: 0;
	overflow: hidden;}

.ui-static-main-visual-inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ui-static-main-visual-image {
    margin-top: 60px;
    width: 100%;
    padding: 0 30px; 
    box-sizing: border-box;
    display: block;
}

.ui-static-main-visual-image img {
    width: 340px; 
    height: auto;
    display: inline-block;
}

/* --- テキストエリア全体 --- */

.ui-static-main-visual .ui-static-main-visual-text-wrapper {
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    margin-top: 40px;
    margin-bottom: 0;
    background-color: #fff100;
    padding: 15px 0;
    z-index: 10;
    display: block;
    border-radius: 0;
    border: none;
}

.ui-static-main-visual .ui-static-heading {
    width: 100%;
    background-color: transparent;
    color: #000;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    margin: 0;
    padding: 0 10px;
    line-height: 1.5;
    text-shadow: none;
    box-sizing: border-box;
}

.ui-static-main-visual .ui-static-text {
    width: 100%;
    color: #000;
    font-size: 11px;
    font-weight: bold;
    text-align: center;
    margin: 5px auto 0;
    padding: 0 15px;
    line-height: 1.4;
    box-sizing: border-box;
    display: block;
}

/*------------------------------------------------
	受付インフォメーション
--------------------------------------------------*/
.sc_info {
  padding: 0vw 3vw 5vw;
	margin-top: -10px;
  font-size: 3.5vw;
 background-color: #ffffff;
}
.emphasis {
    font-weight: bold;
}

.kikan {
	color:#e7141a;
	font-weight:bold;
	text-align:center;
	font-size:15px;
	background: #ffffff;
	padding:10px;
	margin-top:0px;
	margin-bottom:10px;
	border:2px solid;
	border-radius:10px;
}


/*------------------------------------------------
    ページナビ
--------------------------------------------------*/

@media screen and (max-width: 767px) {
    .ui-static-tab.is-scrollable {
        overflow: visible !important;
        padding-bottom: 10px;
        position: relative;
    }

    .ui-static-tab-button-list {
        display: flex;
        flex-wrap: wrap;
        gap: 8px 1.5%;
        padding: 0 5px;
        width: 100% !important;
        max-content: none !important;
        box-sizing: border-box;
        justify-content: center;
    }

    .ui-static-tab-button {
        flex: 0 0 31.5%;         
        min-width: 0 !important;
        
        padding: 10px 2px;     
        
        background-color: #e7141a;
        color: #fff;
        font-size: 12px;
        font-weight: 700;
        border-radius: .25rem;
        border: 2px solid #e7141a;
        white-space: nowrap;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .ui-static-tab-button.is-active {
        background: #fff !important;
        color: #e7141a !important;
        border: 2px solid #e7141a;
    }

    .ui-static-tab-button.is-active::before,
    .ui-static-tab.is-scrollable::after {
        display: none !important;
        content: none !important;
    }
/*------------------------------------------------
	タブ見出し
--------------------------------------------------*/

    .ui-static-tab-content-item .ui-static-heading {
        margin-top: 30px; 
        margin-bottom: 10px;
        text-align: center;
        align-items: center;
    }

    .ui-static-tab-content-item .ui-static-heading-size-huge {
        font-size: 24px;
		font-weight: 700;
        margin-bottom: 10px;
    }

    .ui-static-tab-content-item .ui-static-heading-subtitle {
        font-size: 12px;
		font-weight: 700;
        color: #e7141a;
        white-space: nowrap;
    }
}
/*------------------------------------------------
	国内施策
--------------------------------------------------*/
#shisaku { 
    width: 100%;
    padding: 5vw 3vw;
    border: dashed 2px #da0f00;
    margin-bottom: 7vw;
    background: #fff;
    text-align: center;    
}
#shisaku .catch {
    font-size: 3.9vw;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.7em;
    background: linear-gradient(transparent 60%, #fff100 0%);
    display: inline; 
}
#shisaku .text {
    margin-top: 7px;
    text-align: left;
}

/*------------------------------------------------
	商品
--------------------------------------------------*/
#kaigai,#kokunai,#air,#airhtl,#bus { padding-top: 15vw;}
#tour {
    background: #ffffff;
    padding-bottom: 15vw;
    padding-top: 1vw;
}
#tour h2 {
    text-align: center;
    margin-bottom: 1vw;
}
#tour h2 .heading {
    position: relative;
    display: inline-block;
   /* padding-left: 1.3em;*/
    font-size: 7vw;
    line-height: 1;
	font-weight: bold;
}
#tour h2 .heading-text {
    font-size: 3.5vw;
    text-align: center;
    margin-bottom: 2vw;
    display: block;
    line-height: 1.4em;
	color: #e7141a;
	font-weight: bold;
}
#tour h2 .heading-icon {
    position: absolute;
    display: inline-block;
    width: 8.5vw;
    top: -2vw;
    left: -1vw;
}
#tour h3 {
    padding-top: 13vw;
}
#tour h3 span {
    display: block;
    font-size: 4.5vw;
    line-height: 1.3em;
    color: #fff;
    background-color: #1e2958;
    text-align: center;
    padding: 1vw 0;
}
.product__list {
    display: flex;
    flex-wrap: wrap;
    width: 100%; 
}
.product__list > li:empty {
    display: none;
}
.product__list--item {
    width: 49%;
    margin: 0 0.5%;
    margin-bottom: 3vw;
    list-style: none;
    border: 1px solid rgba(0, 0, 0, .23);
    position: relative;
}
.product__list--item:empty{
	display: none;
}
.product__list--data {
    height: 100%;
    display: flex;
    flex-direction: column;
}
/*.product__list--image {
    height: 30vw;
    background: #f2f2f2 no-repeat center bottom / cover;    
}*/
.product__list--image-wrapper img{
    width: 100%;
    vertical-align: bottom;
}
.product__list--type {
    font-size: 3.0vw;
    color: #fff;
    background: #191919;
    padding: 2px 4px 1px 4px;
    text-align: center;
}
.product__list--type.port-type::after {
    content: "発着";
}
.product__list--text-wrapper {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}
.product__list--title {
    font-size: 3.5vw;
    margin: 2vw 0;
    font-weight: bold;
    line-height: 1.4em;
}
.product__list--texts > [class*="product__list--"]:not(.product__list--type) {
    padding: 0 1vw;
}

.product__list--more, .is-sp .media-summary {
	display: flex;
	align-items: baseline;
}

.product__list--more--text {
	width: calc(100% - 72px - 5px);
	
}
.product__list--detail {
    font-size: 3.0vw;
    line-height: 1.5;
}
.product__list--inner {
    background: #fff;
    color: inherit;
    text-decoration: none;
    display: flex;
    font-size: 12px; 
    flex-direction: column;
    height: 100%;    
}
.product__list--inner:hover {
    opacity: 0.7;
    transition: all 0.6s ease; 
}
.product__list--dep {
    /* font-size: 2.4vw; */
    letter-spacing: -0.05em;
    margin-top: 1vw;
    color: #333;
}
.product__list--dep .js-split-departure::after,
.product__list--dep span[id*="dep_"]::after{
  content: "出発";
}
.product__list--dep .js-split-departure:empty::after,
.product__list--dep span[id*="dep_"]:empty::after{
  display: none;
}
.product__list--minmax {
    font-size: 4vw;
    color: #e90000;
    font-weight: bold;
}
.product__list--minmax .minmax-new:not(:empty) + .minmax-old,
.product__list--dep .js-split-departure:not(:empty) + span,
.product__list--type .js-split-airport:not(:empty) + span {
    display: none;
}
.product__list--texts {
    display: flex;
    flex-direction: column;
}
.product__list--price {
    padding: 2vw 1vw;
    margin-top: auto;
}
.product__list--notes {
    font-size: 2.4vw;
    color: #333;
    margin-top: 0.5vw
}
.product__list--more--title, .is-sp .media-summary dt {
	display: inline-block;
	line-height: 1.2;
	background: #7d7d7d;
	color: #fff;
	text-align: center;
	
}

.product__list--more, .is-sp .media-summary {
  display: flex;
  align-items: baseline;
}

.product__list--more--title {
	padding: 2px 0 4px;
	width: 72px;
	margin-right: 5px;
	
}

.product__list--more--text {
  width: calc(100% - 72px - 5px);
}

.product__list--more {
    margin-top: 3px;
}

.product__list--tokuten {
	margin: 15px 10px 0;
	font-size: 11px;
	border-top-width: 1px;
}

.media-addList, .product__list--tokuten {
	color: #666;
	border-top: calc(1vw / 7.5) dashed;
	padding: .6em 0 0 !important;
	margin-top: 1em;
}

.product__list--point {
	background-color:#e90000;
	text-align:center;
	color:#fff;
	padding:3px;
	font-weight:bold;
	margin-bottom:5px;
}



/*icon*/
.product__list--label {
    position: absolute;
    top: 0;
    left: 0;
    flex-direction: column;
    /*min-width: 20vw;*/
}
.product__list--label > [class*="product__list--label--"]:empty {
    display: none;
}
.product__list--label {
    display: flex;
    flex-wrap: wrap;
}
.product__list--label > [class*="product__list--label--"] {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    z-index: 1;
    font-size: 2.8vw;
    line-height: 1.0em;
    font-weight: bold!important;
}
.product__list--label--other {
    background: #f31e1f;
    width: auto;
    padding: 1.5vw 1vw 1vw;
    color: #fff!important;
}
.price_note {
    font-size: 3.1vw;
    margin-top: 5vw;
}

/*ナビ*/
.area-navi {
    margin-bottom: -5vw;
}
.area-navi ul {
    width: 94vw;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    background-color: #cacaca;
    padding: 2vw 1vw 0;
}
.area-navi ul li {
    width: 48%;
    height: 11vw;
    font-size: 3.3vw;
    line-height: 1.2em;
    font-weight: bold;
    border-radius: 1vw;
    margin: 0 1% 2vw;
    text-align: center;
}
.area-navi ul li a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    text-decoration: none;
    background-color: #fff;
    border-radius: 1vw;
    padding: 1vw 2vw 1vw 1vw;
    position: relative;
}
.area-navi ul li a:after {
    font-family: FontAwesome;
    content: "\f107";
    position: absolute;
    right: 1vw;
}
.more-btn{
    width: 100%;
    margin: 5vw auto 0;
}
.more-btn a {
	font-size: 3.3vw;
    color: #000;
    font-weight: bold;
	display: block;
	text-decoration: none;
	padding: 10px 20px;
    background-color: #ffe922;
    /*border: solid 1px #ffe922;*/
	text-align: center;
  border-radius: 10px;
  box-shadow: 4px 4px 0 rgba(0 0 0 / 20%);
}
.more-btn  a:hover {
	transition: all 0.6s ease;
	background-color:#ffab00;
    /*border: solid 1px #000;*/
}
.more-btn  a:after {
    font-family: FontAwesome;
    content: "\f105";
	padding-left: 10px;
}
.price_note {
    font-size: 3.0vw;
    margin-top: 2vw;
}

/*----------------------------------------------
	国内ツアータブ内のバナーを強制表示
------------------------------------------------*/
@media screen and (max-width: 767px) {
    .bnr_area.nosp {
        display: block !important;
    }
    
    .bnr_area img {
        max-width: 100%;
        height: auto;
    }
}

/*----------------------------------------------
	バスツアーの商品カード内「バスツアー」を強制的に非表示にする
------------------------------------------------*/

[class*="timesale--kokunai-bus"] .product__list--category--text {
    display: none !important;
}

/*----------------------------------------------
	バナー
------------------------------------------------*/
.bnr-area {
    width: 94vw;
    margin: 12vw auto 0;
}
.bnr-area img {
    width: 100%;
}


#banner h3 {

	font-weight: 700;
	text-align:center;
	font-size: 26px;
	margin-top:10px;
}


.is-bnr {
	width:100%;
	overflow:hidden;
	margin: 35px auto 0;
	padding-bottom: 10px;
}
.is-bnr ul{ 
	width:100%; 
	box-sizing: border-box;
}
.is-bnr li img{ 
	width:100%;
}
.is-bnr li img:hover{
	opacity: 0.8;
}
.is-bnr li {
	width: 50%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
	
}

/*------------------------------------------------
	LINEお友達登録ボタン
--------------------------------------------------*/
.line-wrap-detail {
	padding: 0;
	margin-top: 50px;
    background: #fff;
}

.line-inner {
    background: #fff;
    border: solid 1px #d3d3d3;
    width: 98%;
    margin: 0 auto;
	text-align: center;
}
.line-inner .head {
	width: 100%;
    text-align: center;
    background-color: #15c618;
    padding: 6px;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
}

.textarea {
	margin-top:10px;
}
.line-inner .text1 {
    font-size: 17px;
    line-height: 1.4em;
}
.line-inner .text1 span {
	font-weight: bold;
	color: #fb0b0b;
}
.line-inner .text2 {
    font-size: 21px;
    font-weight: bold;
    margin-bottom: -2px;
    background: linear-gradient(transparent 60%, #fff231 0%);
    display: inline-block;
    line-height: 1.7em;
    padding: 0 4px;
}
.line-button {
	width: 100%;
}
.line-button a {
	display: block;
    color: #fff;
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    border-radius: 100px;
    box-shadow: 0px 3px 0px 0 rgba(0, 0, 0, .14);
    background-color: #15c618;
    padding: 14px 10px;
    position: relative;
    text-decoration: none;
}
.line-button a:hover {
	opacity: .8;
	transition: all 0.6s ease;	
}
.line-button a span.small {
	display: block;
	font-size: 14px;
	font-weight: normal;
}
.line-button a span.strong {
	position: relative;
	display: inline-block;
}
.line-button a span.strong::after {
    font-family: "FontAwesome";
    font-weight: 900;
    content: "▶";
	font-size: 20px;
	margin-left: 5px;
}
.btnarea {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;

	width:95%;
	margin-bottom:10px;
}

.box {
		margin:20px 0;
	display:flex;
	flex-wrap: wrap;
	align-items: center;
	text-align: left;
	justify-content:center;
	
}

.btnarea .line-qr {
	width: 43%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	text-align: left;
}


.btnarea .line-qr:last-of-type {
	flex-wrap: nowrap;
	margin-left: 20px;

}
.btnarea .line-qr {
    display: inline-block;
    width: 80px;
    margin-right: 8px;
}
.btnarea .line-qr img {
	width: 100%;
}


/*----------------------------------------------
	施策案内
------------------------------------------------*/
.shisaku-list {
    position: relative;
    margin: 5vw auto 0;
    background: #fff;
    padding: 5vw 3vw 3vw 3vw;
    font-size: 3.5vw;
}
.shisaku-list .read {
    font-size: 4vw;
    font-weight: bold;
    text-align: center;
    color: #ff0000;
}
.shisaku-list li a {
    text-decoration: none;
    color: #333;
}
.shisaku-list:before {
    content: "";
    position: absolute;
    top: -35px;
    left: 50%;
    margin-left: -20px;
    border: 6vw solid transparent;
    border-bottom: 20px solid #fff;
}
.shisaku-list .ttl {
    font-weight: bold;
    display: inline-block;
    padding: 1vw 2vw 0.5vw;
    margin-bottom: 1vw;
    line-height: 1;
}
.shisaku-list li {
    line-height: 1.4em;
    margin-bottom: .5vw;
}
.shisaku-list .kaigai {
    margin-bottom: 2vw;
    line-height: 1;    
}
.shisaku-list .kokunai {
    line-height: 1;
}
.shisaku-list .kaigai .ttl {
    background: #11a4f7;
    color: #fff;
}
.shisaku-list .kokunai .ttl {
    background: #0abe01;
    color: #fff;
}
.coupon-name {
    font-weight: bold;
    display: inline-block;
}
.shisaku-list .strong {
    color: red;
}
.shisaku-list .catch {
    font-weight: bold;
    line-height: 1.4em;
    background: linear-gradient(transparent 55%, #fff100 0%);
    display: flex;
    padding: 0 0 2px 2px;
    width: 57vw;
    justify-content: center;
    margin: 0 auto 1vw;
    letter-spacing: .1em;
}
.shisaku-list .catch a {
    text-decoration: none;
    color: #333;
}    
/*----------------------------------------------
	終了
------------------------------------------------*/
#close {
    padding: 20vw 0;
    background-color: #e7e7e7;
    text-align: center;
    font-size: 4.0vw;
    line-height: 1.6em;
}

/*----------------------------------------------
	完売対応
------------------------------------------------*/
.product__list--item a.kanbai {
    pointer-events: none;
    position: relative;
}
.product__list--item a.kanbai:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.4);
    z-index: 101;
}
.product__list--item a.kanbai .kanbai-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-7deg);
    margin: auto;
    font-size: 6.0vw;
    font-weight: bold;
    color: #fff;
    text-align: center;
    z-index: 102;
    background-color: #f00;
    width: 40vw;
    padding: 2.8vw 0 1.7vw;
}

.end {
  font-size: calc(28vw / (750 / 100));
	text-align:center;
	font-weight:bold;
	padding-top:20px;
	
}
.end span {
  display: block;
  font-size: calc(36vw / (750 / 100));
}

#countdown {
    background: #e7141a;
    padding: 20px　0;
    color: #ffffff;
    text-align: center;
	
	
}
.contents .inner {
    width: 100％;
    margin: 0 auto;
}
#countdown p {
    position: relative;
    padding-top: 20px;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 5px;
	line-height:1.3;
}

.count__text_end {
	padding:20px 0;
	margin:0 !important;
}

#countdown .timer {
    font-size: 42px;
    font-weight: bold;
    line-height: 1;
	padding-bottom:20px;
	
}
#countdown .timer .small {
    font-size: 27px;
    margin-right: -7px;
}
#countdown .timer .large {
    margin-right: 3px;
}
    
    .headfoot-is-sp #countdown .timer{
        font-size:32px;
    }
    .headfoot-is-sp #countdown .timer .small{
        font-size:22px;
    }

/***　特集バナー　****/
.spbn{
	text-align: center;
	filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.3));
    margin: 0 auto;
	}
.spbn img{padding: 10px 0 10px;}
.w43 {width: 545px;}
.w43r{width: 545px; margin-left: 10px;}
.spbn a:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	transition: all 0.4s ease;
}
