@charset "utf-8";

/*---------------------------------------------
       おすすめツアー
---------------------------------------------*/
#recommend-tour {
	width: 100%;
	padding: 8vw 0;
    & h3 {
        color: #6b562d;
        background-color: #e1dcd0;
        font-size: 3.7vw;
        font-weight: bold;
        padding: 2vw 3vw;;
        margin-bottom: 3vw;
		border-left: 2vw solid #6b562d;
    }
	& .tour-box-wrap:has(>.tour-box>li:nth-child(1):empty):has(>.tour-box>li:nth-child(2):empty):has(>.tour-box>li:nth-child(3):empty):has(>.tour-box>li:nth-child(4):empty) {
        display: none;
    }
}


/*---------------------------------------------
       おすすめツアー（商品設定）
---------------------------------------------*/
.tour-box {
	width: 94vw;
	margin: 0 auto;
    & > li {
        background-color: #fff;
        margin-bottom: 2vw;
        & a {
            display: block;
            border: 1px solid #D9D5CA;
            width: 100%;
            height: 100%;
            color: inherit;
            text-decoration: none;
            padding: 2vw;
            position: relative;
        }
    }
}
.tour-box {
	& .item_icon {
		& .item_icon01 {
			display: inline-block;
			background-color: #875c0b;
			padding: 1vw 2vw;
			font-size: 2.8vw;
			color: #fff;
			margin-bottom: 1.5vw;
		}
	}
	& .tour-img {
		position: absolute;
		width: 34vw;
		& img {
			width: 100%;
			height: 100%;
		}
	}
	& .icon-area {
		padding: 0 0 0 36vw;
		margin-bottom: 1vw;
		& ul {
			display: flex;
			flex-wrap: wrap;
			& li{
				padding: 1vw 1vw 0.5vw;
				margin: 0 1vw 0.5vw 0;
				color: #fff;
				font-size: 2.8vw;
				line-height: 1.0;
				&.icon-dlx{background-color: #e04b32;}
				&.icon-ss{background-color: #3ca1a3;}
				&.icon-meal{background-color: #f79739;}
				&.icon-tokuten{background-color: #d15796;}
				&.icon-free{background-color: #6dac4f;}
			}
		}
	}
	& .tour-title {
		font-size: 3.6vw;
		line-height: 1.3;
		font-weight: bold;
		color: #235BC0;
		padding: 0 0 0 36vw;
		margin-bottom: 1vw;
	}
	& .tour-text {
		font-size: 3.0vw;
		line-height: 1.4;
		padding: 0 0 0 36vw;
		margin-bottom: 2vw;
	}
	& .info-area {
		padding: 0 0 0 36vw;
		margin-bottom: 2vw;
		& ul {
			background-color: #f2f2f2;
			padding: 1vw;
			font-size: 2.6vw;
			line-height: 1.4;
			& li {
				margin-bottom: 0.5vw;
				padding-left: 4vw;
				&.hotel{background: url(/kaigai/kansai/common/img/icon/icon_hotel01.png) no-repeat left top / 3vw;}
				&.lank{background: url(/kaigai/kansai/common/img/icon/icon_recom03.png) no-repeat left top / 3vw;}
				&.airline{background: url(/kaigai/kansai/common/img/icon/icon_air04.png) no-repeat left top / 3vw;}
				&.ship{background: url(/kaigai/kansai/common/img/icon/cruse.png) no-repeat left top / 3vw;}
				&.time{background: url(/kaigai/kansai/common/img/icon/icon_time01.png) no-repeat left top / 3vw;}
			}
		}
	}	
	& .item-ship{
		background: url(/kaigai/kansai/common/img/icon/cruse.png) no-repeat left top;
		background-size: 3vw;
	}
	& .tour-price{
		font-size: 4.0vw;
		font-weight: bold;
		text-align: right;
		color: #FF3C3C;
		padding: 0 2vw;
	}
	& .tour-nenyu{
		font-size: 2.8vw;
		line-height: 1.3;
		color: #FF3C3C;
		text-align: right;
		margin-bottom: 1vw;
		padding: 0 2vw;
	}
	& .tour-dep{
		text-align: right;
		font-size: 2.8vw;
		line-height: 1.3;
		padding: 0 2vw;
	}
}

/*空のとき*/
.tour-box > li:empty,
.tour-box .item_icon span:empty,
.tour-box .icon-area li:empty,
.tour-box .info-area li:empty {
	display: none;
}

/*---------------------------------------------
  航空券+ホテル
---------------------------------------------*/
#airhotelWrap {
	width: 100%;
	padding: 8vw 0;
}
.airhotel-box {
	width: 94%;
	margin: 0 auto 8vw;
}

/*---------------------------------------------
  航空券
---------------------------------------------*/
#airWrap {
	width: 100%;
	padding: 8vw 0;
}
.air-box {
	width: 94%;
	margin: 0 auto 8vw;
}

/*---------------------------------------------
   FIT新スタイル
---------------------------------------------*/

#airhotelWrap,#airWrap {

	& .product__list {
		display: grid;
		/*gap: calc(30vw / 7.5) 0;*/
		gap: 2vw 0;
		font-size: calc(24vw / 7.5);
	}
	& .product__list--item {
		letter-spacing: .5px;
		list-style: none;
	}
	& .product__list--item, .media {
		 padding:0; 
	}
	& .product__list--item:not(:last-child), & .media:not(:last-child) {
		border-bottom: none!important;
	}
	& .product__list--data {
		height: 100%;
		display: flex;
		flex-direction: column;
	}
	& .media .js-search, .product__list--inner {
		border: calc(2vw / 7.5) solid #c4c4c4;
	}
	& .media .js-search, .product__list--inner {
		justify-content: space-between;
		padding: calc(15vw / 7.5) calc(10vw / 7.5);
		flex-wrap: wrap;
		border: calc(2vw / 7.5) solid #c1c0bc;
		font-size: calc(20vw / 7.5);
	}
	& .product__list--inner {
		position: relative;
	    box-shadow: none;
	}
	& .media .js-search, & .product__list--inner {
		background: #fff;
		color: inherit;
		text-decoration: none;
		display: flex;
	}
	& .product__list--label:not(:empty) {
		margin-bottom: calc(5vw / 7.5);
	}
	& .product__list--label {
		width: 100%!important;
	}
	& .product__list--label {
		display: flex;
		flex-wrap: wrap;
	}
	& .product__list--label > [class*="product__list--label--"]:empty {
		display: none;
	}
	& .product__list--label > [class*="product__list--label--"] {
		margin-bottom: calc(10vw / 7.5);
	}
	& .product__list--label > [class*="product__list--label--"] {
		min-width: calc(180vw / 7.5);
		height: calc(50vw / 7.5);
		margin-right: calc(10vw / 7.5);
		padding: .25em .5em;
	}
	& .product__list--label > [class*="product__list--label--"] {
		width: 24vw;
		font-size: calc(23vw / 7.5);
		padding: 0.25em!important;
	}
	[class*="product__list--label--"] {
		background: var(--cassette-label-bg);
	}
	& .product__list--image-wrapper, & .is-koukoku .product__list--image, & .media .phArea, & .media-pic {
		width: calc(260vw / 7.5)!important;
	}
	& .media .phArea, & .product__list--image, & .media-img {
		width: 100%;
		height: calc(175vw / 7.5);
	}
	& img.product__list--image {
		width: 100%;
		object-fit: cover;
	}
	& .is-pc .media .tour_img, & .media .phArea, & .product__list--image {
		background: #f2f2f2 no-repeat center center / cover;
	}
	& .product__list--type.is-color-black, & .is-oe .product__list--type, & .is-activities .product__list--type {
		background: #000;
		text-align: center;
	}
	& .product__list--type {
		padding: calc(6vw / 7.5) 0 calc(8vw / 7.5);
		text-align: center;
		font-size: calc(20vw / 7.5);
		display: none;
	}
	& .product__list--type {
		color: #fff;
	}
	& .media .topArea, & .media .bottomArea, & .media-text-wrap, & .product__list--text-wrapper {
		/*width: calc(417vw / 7.5)!important;*/
		width: calc(406vw / 7.5)!important;
		flex-grow: 0;
	}
	& .product__list--texts {
		display: flex;
		flex-direction: column;
	}
	& .product__list--texts > [class*="product__list--"]:not(.product__list--type) {
		order: 1;
	}
	& .product__list--label:empty {
		display: none;
	}
	& .product__list--texts > .product__list--label {
		display: flex;
		flex-wrap: wrap;
		position: static;
		width: auto;
		flex-direction: initial;
	}
	& .product__list--texts > [class*="product__list--"]:not(.product__list--type) {
		order: 1;
	}
	& .product__list--texts > .product__list--label + .product__list--title {
		margin-top: 0;
	}
	& .media-des, & .product__list--title {
		/*font-size: calc(28vw / 7.5);
		margin-bottom: calc(15vw / 7.5);*/
		line-height: 1.3em;
		font-weight: bold;
		font-size: calc(27vw / 7.5);
		margin-bottom: calc(15vw / 7.5);
	}
	& .is-pc .media .tour_ttl, & .media-des, & .product__list--title {
		font-weight: bold;
	}
	& .product__list--title > [class*="product__list--"] {
		display: block;
	}
	& .product__list--title > [class*="product__list--"] {
		display: block;
	}
	& .product__list--texts > [class*="product__list--"]:not(.product__list--type) {
		order: 1;
	}
	& .product__list--more, & .media-summary {
		margin-top: calc(10vw / 7.5);
	}
	& .product__list--more, & .media-summary {
		display: flex;
		align-items: baseline;
	}
	& .product__list--more--title, & .media-summary dt {
		padding: calc(4vw / 7.5) 0 calc(6vw / 7.5);
		width: calc(130vw / 7.5);
		margin-right: calc(5vw / 7.5);
	}
	& .product__list--more--title, & .media-summary dt {
		display: inline-block;
		line-height: 1.2;
		background: #7d7d7d;
		color: #fff;
		text-align: center;
	}
	& .product__list--more--text, & .media-summary dd {
		width: calc(100% - (130vw / 7.5) - (5vw / 7.5));
	}
	& .product__list--more--text, .media-summary dd {
		line-height: 1.3;
	}
	& .product__list--texts > [class*="product__list--"]:not(.product__list--type) {
		order: 1;
	}
	& .product__list--more + .product__list--more, & .media-summary dt:not(:first-child) {
		margin-top: 1px;
	}
	& .product__list--more, & .media-summary {
		display: flex;
		align-items: baseline;
	}
	& .product__list--more--title, & .media-summary dt {
		padding: calc(4vw / 7.5) 0 calc(6vw / 7.5);
		width: calc(130vw / 7.5);
		margin-right: calc(5vw / 7.5);
	}
	& .product__list--more--title, & .media-summary dt {
		display: inline-block;
		line-height: 1.2;
		background: #7d7d7d;
		color: #fff;
		text-align: center;
	}
	& .product__list--more--text, & .media-summary dd {
		line-height: 1.3;
	}
	& .product__list--texts > [class*="product__list--"]:not(.product__list--type) {
		order: 1;
	}
	& .product__list--more + .product__list--more, & .media-summary dt:not(:first-child) {
		margin-top: 1px;
	}
	& .product__list--more, .media-summary {
		display: flex;
		align-items: baseline;
		color: #000000;
	}
	& .product__list--more--title, & .media-summary dt {
		padding: calc(4vw / 7.5) 0 calc(6vw / 7.5);
		width: calc(130vw / 7.5);
		margin-right: calc(5vw / 7.5);
	}
	& .product__list--more--title, & .media-summary dt {
		display: inline-block;
		line-height: 1.2;
		background: #7d7d7d;
		color: #fff;
		text-align: center;
	}
	& .product__list--more--text, & .media-summary dd {
		width: calc(100% - (130vw / 7.5) - (5vw / 7.5));
	}
	& .product__list--more--text, & .media-summary dd {
		line-height: 1.3;
	}
	& .product__list--tokuten:has(.product__list--tokuten--item:empty) {
		display: none;
	}
	& .product__list--texts > [class*="product__list--"]:not(.product__list--type) {
		order: 1;
	}
	& .product__list--tokuten {
		border-top: none;
	}
	& .media-addList, & .product__list--tokuten {
		color: #666;
		/*border-top: calc(1vw / 7.5) dashed;*/
		padding: .6em 0 0 !important;
		margin-top: 1em;
	}
	& .product__list--tokuten--item:empty {
		display: none;
	}
	& .product__list--tokuten--item {
		border-top: calc(1vw / 7.5) dashed;
		padding-top: 2vw;
	}
	& .product__list--tokuten--item {
		text-indent: -1.25em;
		padding-left: 1.25em;
	}
	& .product__list--price {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		align-items: baseline;
	}
	& .media .bottomArea, & .product__list--price {
		margin-top: calc(30vw / 7.5);
		text-align: right;
		color: #FF3C3C;
	}
	& .product__list--point:empty {
		display: none;
	}
	& .product__list--point, .media-badge, & .media .labelText,　& .media-label {
		padding: calc(5vw / 7.5) 0;
		margin-bottom: calc(5vw / 7.5);
		font-weight: bold;
		width: 100%;
		display: none;
	}
	& .product__list--point, & .media .labelText, & .media-label {
		background: var(--default-color-red);
		color: #fff;
		text-align: center;
		font-weight: normal;
	}
	& .media .priceText, & .product__list--minmax {
		/*font-size: calc(30vw / 7.5);*/
		line-height: 1.5;
	}
	& .media-price, & .media .priceText, & .media .tour_gross, & .product__list--minmax {
		color: #FF3C3C;
		font-weight: bold;
		/*font-size: calc(30vw / 7.5);*/
		font-size: calc(27vw / 7.5);
	}
	/*.product__list--minmax :where(.is-en, .is-kara) {
		font-size: .7em;
	}*/
	& .product__list--dep, & .product__list--notes {
		width: 100%;
	}
	& .product__list--dep, & .product__list--notes {
		/*color: #333;*/
	}

}

/*head調整*/
.breadcrumb {
	max-width: 100%;
}
#header ul {
	overflow: visible!important;
}

#iconBtnNational {
	top: -7px;
}

@media all and (-ms-high-contrast: none){
#iconBtnNational {
	top: 5px;
}
}