@charset "utf-8";
/* CSS Document */ :root {
  --black: #333;
  --brown: #343434;
  --yellow: #ffe906;
  --kyellow: #FFCB22;
  --pink: #e5004f;
  --ublue: #d0dff1;
  --blue: #0057b8;
  --navy: #10407f;
  --knavy: #072063;
  --gray: #777;
  --ugray: #F2F2F2;
  --red: #F01C1C;
  --orange: #E7770F;
  --rave: #f3ecf9;
  --umizu: #A4ECFE;
  --cream: #ffecb6;
  --green: #06c755;
  --f_sans: 'Noto Sans JP', sans-serif;
  --f_serif: 'Noto Serif JP', serif;
  --center_contain: no-repeat center center / contain;
}
img {
  max-width: 100%;
}
#nopc,.nopc,.br-sp{ display: none !important;}
main.main { font-family: "Noto Sans JP", serif;}
.contents {
  color: var(--black);
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "sans-serif";
  background: url("../images/body-bg-pc.png") no-repeat top center;
}
/* MV */
#mainvisual {
  width: 100%;
  height: 500px;
}
#mainvisual .inner {
  width: 992px;
  height: 500px;
  margin: 0 auto;
}
#mainvisual .title { text-align: center;}

/* 受付期間 */
#tour {
  width: 100%;
}
#tour .inner {
  width: 992px;
  margin: 0 auto;
  background-color: #fff;
  padding: 2rem;
  border-radius: 30px;
}
#tour h2 {
  font-size: 2.5rem;
  line-height: 1.3em;
  font-weight: 900;
  color: var(--pink);
  text-align: center;
  margin-bottom: 3rem;
}
#tour h2 .gentei { font-size: 2rem; display: block;}
#tour h2 .underline {
  background:linear-gradient(transparent 60%, #fbfb52 60%);
  position: relative;
  line-height: 4rem;
}
#tour h2 .underline:before {
  position: absolute;
  bottom: 0;
  left: -60px;
  content: "";
  display: inline-block;
  width: 50px;
  height: 55px;
  background: url("../images/tour-title-left.png") no-repeat;
  background-size: contain;
}
#tour h2 .underline:after {
  position: absolute;
  bottom: 0;
  right: -90px;
  content: "";
  display: inline-block;
  width: 50px;
  height: 55px;
  background: url("../images/tour-title-right.png") no-repeat;
  background-size: contain;
}
.inform{
  padding: 0 2%;
  font-size: 1rem;
  text-align: left;
  font-weight: 100;
}
.coupon,.uke{
  text-align: center;
  padding: 1%;
  margin: 2% 0;
  display: inline-block;
  width: 100%;
}
.coupon .midashi,.uke .midashi{
  font-size: 2rem;
  font-weight: 600;
}
.coupon dl,.uke dl{
  border: 1px solid #000;
  margin: 1% 2%;
  font-size: 1.4rem;
}
.coupon dt{
  background-color: #01368e;
  color: #fff;
  padding-top: 0.3%;
}
.coupon .place,.uke .place{
  padding-top: 0.5%;
  font-weight: 600;
  font-size: 1.8rem;
}
.come{
  text-align: left;
  font-size: 1rem;
  padding: 0.5% 2%;
}
.coming{
  padding: 2%;
  font-size: 1.3rem;
  font-weight: 600;
  color: #cf0066;
}
.uke dt{
  background-color: #cf0066;
  color: #fff;
  padding-top: 0.3%;
}
.medama{
  text-align: center;
  margin: 3% auto;
  font-size: 2rem;
  background: #fbfb52;
  font-weight: 600;
  display: inline-block;
  width: 100%;
  padding: 1%;
}

/* 商品 */
#tour h3 {
  font-size: 3rem;
  line-height: 1.5em;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 5% auto 0;
}
#tour h3:before {
  content: "";
  width: 100px;
  height: 5px;
  background-color: #ddd;
  margin-right: 20px;
}
#tour h3:after {
  content: "";
  width: 100px;
  height: 5px;
  background-color: #ddd;
  margin-left: 2%;
}
h4{
  text-align: center;
  font-size: 2.2rem;
  font-weight: 600;
}
/* ---- */
.grid-row { margin-bottom: 3rem;}
.tour-box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
  margin-bottom: 3rem;
}
.tour-box > li {
  width: 24%;
  margin: 0 0.5% 10px;
	background-color: #fff;
	position: relative;
}
.tour-box > li a {
	display: block;
	width: 100%;
	height: 100%;
	color: #333;
	text-decoration: none;
	padding-bottom: 10px;
	border: solid 1px #000;
	position: relative;
}
.tour-box > li a:hover {
    opacity: 0.8;
    transition: all 0.6s ease;
}
/* 4並び商品 */
.grid-col4 { padding: 0 0.3rem; margin-bottom: 1rem;}
.grid-col__link {
  border: 2px solid #ddd;
  padding: 0.5rem;
}
.col_waku .imgContainer--full>img { aspect-ratio: 5 / 3.5;}
.tour_waku {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #ffffff;
}
.col_waku {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.grid-col__body {
  display: flex;
  flex-direction: column;
  padding-bottom: 0;
}
.text--smallPrice {
  font-weight: 600;
  font-size: 1.2rem;
}
.tour-nenyu{ font-size: .8rem;}
p.product__list--point {
  background: var(--red);
  text-align: center;
  color: #fff;
  margin: .5rem 0;
}
.heading--md{ font-size: 1.2rem;}
.heading--md span{ display: block;}
.grid-col__bottom { margin-top: auto;}

/* 国内ツアー */
.text--smallPrice>span { font-size: 1.2rem;}
.product__list--dep { font-size: .8rem;}
.note{
 margin: 0 0 5%;
}
.note ul li{
  font-weight:bold;
  font-size: 1.1rem;
  color: var(--red);
}
.yoyaku{
  text-align: center;
  padding: 1%;
  color: #F44336;
  font-size: 1.7rem;
  font-weight: 600;
}
.yoyaku_qr{
  font-size: 1rem;
  text-align: center;
  padding: 1%;
  color: #f01c1c;
}
/*関西万博＆ガラポン*/
#kansai,#garapon{
  margin: 10% 0;
  background-color: #fbfbf8;
  padding: 2% 0;
  border: solid 1px #a3a3a3;
}
#kansai img,#garapon img{
  padding: 1% 0;
}
/* 店舗案内 */
#shopinfo {
  width: 100%;
  background-color: #efefef;
  padding: 60px 0;
}
#shopinfo .inner {
  width: 992px;
  margin: 0 auto;
}
#shopinfo h2 {
  text-align: center;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
#shopinfo .flex-box {
  display: flex;
  padding: 3rem 5rem;
  background-color: #fff;
}
#shopinfo .flex-box .left { margin-right: 2rem; width: 65%;}
#shopinfo .flex-box .left p{ font-size: 1.2rem;}
#shopinfo h3 {
  font-size: 2rem;
  font-weight: 900;
}
#shopinfo .shop { margin-top: 1rem;}
#shopinfo .shop a {
  display: inline-block;
  background-color: var(--blue);
  color: #fff;
  border-radius: 5px;
  padding: .3rem 1.5rem;
  text-decoration: none;
}
#shopinfo .shop a:before {
  font-family: "Font Awesome 5 Free";
  content: "▶";
  margin-right: 5px;
  font-weight: 900;
}
#shopinfo .shop a:hover {
  opacity: 0.8;
  transition: all 0.6s ease;
}
#shopinfo dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#shopinfo dl dt {
  width: 20%;
  text-align: center;
  margin-top: .5rem;
}
#shopinfo dl dt span {
  display: inline-block;
  width: 100%;
  background-color: var(--gray);
  color: #fff;
  border-radius: 20px;
  padding-top: .3rem;
}
#shopinfo dl dd {width: 75%;}
#shopinfo dl dd.tel {
  font-size: 2.5rem;
  font-weight: bold;
  color: var(--pink);
}
#shopinfo dd.shoptime {
  margin-top: 1rem;
  font-size: 1.1rem;
}
#shopinfo a[href*="tel:"] {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: inherit;
}
/*SSSバナー*/
.sss{
  margin: 5% auto;
  width:100%;
}
.sss img{
  margin: 2% auto;
  display: block;
  width: 100%;
}

/*SOLDOUT*/
.soldout{
  pointer-events: none;
  background: #f3f3f3;
}

.soldout p.product__list--point{
  background: #000;
}

/* 終了 */
#close {
  width: 900px;
  margin: 0 auto 20px;
  border: solid 3px var(--red);
  border-radius: 30px;
  background-color: #fff;
  text-align: center;
  padding: 15px 0;
}
#close p {
  color: var(--red);
  font-size: 18px;
  line-height: 1.5em;
  font-weight: bold;
}


/* ★スマホ用★ */
.headfoot-is-sp .section__container{ width: 100%;}
.headfoot-is-sp .goTop__img--pc {
  display: none;
}
.headfoot-is-sp #nopc,.headfoot-is-sp .nopc,.headfoot-is-sp .br-sp{ display: block !important;}
.headfoot-is-sp #nosp,.headfoot-is-sp .nosp,.headfoot-is-sp .br-pc{ display: none !important;}
.headfoot-is-sp #wrap nav ul li a{
  font-size: 1rem;
	font-weight: bold;
  line-height: 1.1rem;
}
.headfoot-is-sp #pageNavi li { 
  width: calc((100% - 2rem) / 3);
  margin: 0.2rem;
}
.headfoot-is-sp #pageNavi li:first-child { border-left: none;}
.headfoot-is-sp #pageNavi li:last-of-type { border-right: none;}

.headfoot-is-sp #wrap { min-height: auto;}
.headfoot-is-sp .heading--title,.headfoot-is-sp .heading--schedule { 
  font-size: 1.6rem;
  margin: 1rem 0;
}
.headfoot-is-sp .contents { 
  background: url("../images/body-bg-sp.png") no-repeat top center;
  background-size: 100%;
}
/* MV */
.headfoot-is-sp #mainvisual { height: 260px;}
.headfoot-is-sp #mainvisual .inner { width: 100%;}
.headfoot-is-sp #mainvisual .title {
  width: 86vw;
  margin: 0 auto;
  padding-top: 12vw;
}
.headfoot-is-sp .medama{
  font-size: 1.7rem;
  margin: 5% auto;
}
.headfoot-is-sp h4{
  font-size: 1.5rem;
}
/* 受付期間 */
.headfoot-is-sp #tour .inner {
  width: 100vw;
  margin: 0 auto;
  border-radius: 5vw;
}
.headfoot-is-sp #tour h2 {
  font-size: 6vw;
  line-height: 1.3em;
  margin-bottom: 5vw;
  position: relative;
}
.headfoot-is-sp #tour h2 .gentei { font-size: 5vw;}
.headfoot-is-sp #tour h2 .underline { line-height: 3rem;}
.headfoot-is-sp #tour h2 .underline:before {
  bottom: 0;
  left: -1vw;
  width: 7vw;
  height: 7vw;
}
.headfoot-is-sp #tour h2 .underline::after {
  bottom: 0;
  right: -8vw;
  width: 7vw;
  height: 7vw;
}
.headfoot-is-sp #tour p.pro_time { font-size: 1.1rem !important;}
.headfoot-is-sp .coupon .place, .uke .place{
  font-size: 1.5rem;
}
.headfoot-is-sp .yoyaku{
  font-size: 1.2rem;
}
/* 商品 */
.headfoot-is-sp #tour h3 { font-size: 5vw; line-height: 1.3em;}
.headfoot-is-sp #tour h3:before,.headfoot-is-sp #tour h3:after {
  width: 15vw;
  height: 1.5vw;
  background-color: #ddd;
}
.headfoot-is-sp #tour .inner{
  padding: 1rem;
}
/* 4並び商品 */
.headfoot-is-sp .grid-col4 { padding: 0.2rem 0;}
.headfoot-is-sp .col_waku { flex-direction: row;}
.headfoot-is-sp .col_waku .imgContainer--full { 
  width: 60%; 
  margin-right: .5rem; 
  border-radius: 0;
}
.headfoot-is-sp .grid-col__body { width: 100%;}
.headfoot-is-sp .text--smallPrice{ text-align: center;}
.headfoot-is-sp .tour-nenyu{ text-align: center;}

/* 店舗案内 */
.headfoot-is-sp #shopinfo { width: 100%; padding: 5vw 0 10vw;}
.headfoot-is-sp #shopinfo .inner { width: 90vw;}
.headfoot-is-sp #shopinfo h2 { font-size: 5.0vw; margin-bottom: 3vw;}
.headfoot-is-sp #shopinfo h2 img { margin-bottom: 2vw;}
.headfoot-is-sp #shopinfo .flex-box { display: block; padding: 5vw;}
.headfoot-is-sp #shopinfo .flex-box .left { 
  margin-bottom: 5vw;
  margin-right:0;
  width: 100%;
}
.headfoot-is-sp #shopinfo .flex-box .left p { font-size: 1rem; }
.headfoot-is-sp #shopinfo h3 { font-size: 5.5vw; line-height: 1.5em;}
.headfoot-is-sp #shopinfo .shop { margin-top: 2vw; text-align: center;}
.headfoot-is-sp #shopinfo .shop a {
  font-size: 3.5vw;
  border-radius: 1.5vw;
  padding: 1vw 7vw;
}
.headfoot-is-sp #shopinfo dl { font-size: 3.4vw;}
.headfoot-is-sp #shopinfo dl dd { width: 77%;}
.headfoot-is-sp #shopinfo dl dd.tel { font-size: 6.0vw;}

/*国内商品リンク無*/
.new_store--kokunai001 a,.new_store--kokunai002 a,.new_store--kokunai003 a{
  pointer-events: none;
}

/* 終了 */
.headfoot-is-sp #close { width: 90vw;}
.headfoot-is-sp #close p{ font-size: 3.4vw;}

/* 完売 */
.headfoot-is-sp .soldout::after{ height:100%;}

/* ★タブレット用★ */

@media (orientation: portrait){
.is-ipad .breadcrumb { width: 100%;
    width: 1024px;
    margin: 0 auto;
}
}