@charset "UTF-8";

:root {
	--color-pink: #EE869D;
	--color-gold: #BB9601;
	--color-white: #fff;
	--color-black: #000;
	--font-common: "Zen Old Mincho", "Noto Serif JP", sans-serif;
	--font-montserrat: "Montserrat", sans-serif;
}
/* WEB_03-11342 */


@media screen and (max-width: 768px) {
    .pc_none{
        display: block;
    }
    .sp_none{
        display: none!important;
    }
}

@media screen and (min-width: 769px) {
    .pc_none{
        display: none!important;
    }
    .sp_none{
        display: block;
    }
}

.flex_center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.present_wraps .cta a {
    margin: 0 15px;
    width: 285px;
}
.bg_pink {
    background: #FE7F9C;
    color: #fff;
}

.bg_gold {
    background: #BA9600;
}

.txt_color_pink {
	color: var(--color-pink);
}

.btn_sq {
    padding: 9px 1.8em 11px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    display: block;
    font-size: 16px;
}

.present_wraps{
  font-family: "fot-tsukuaoldmin-pr6n", sans-serif;
	margin: auto;
	margin-bottom:70px;
  max-width:960px;
	width:100%;
	border-radius:10px;
	border:solid 2px #707070;
	padding:30px 60px 70px;
	position: relative;
	text-align: center;
}
.main_ct .present_wraps{
    width: auto;
    grid-column: 1 / 3;
    max-width: 960px;
}
.present_wraps >p{
	font-family: Montserrat;
	padding:7px;
	position: absolute;
	color:#fff;
	background: var(--color-gold);
	max-width: 360px;
	font-size: 14px;
	top:-19px;
	font-weight:bold;
	left:0;
	right:0;
	margin: auto;
	letter-spacing:8px;
}
.present_wraps >p:before{
	position: absolute;
	content: "";
	left: -12px;
	top: 0px;
	bottom: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-left: 13px solid transparent;
	border-top: 18px solid var(--color-gold);
	border-bottom: 17px solid var(--color-gold);
}
.present_wraps >p:after{
	position: absolute;
	content: "";
	right: -12px;
	top: 0px;
	bottom: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-right: 13px solid transparent;
	border-top: 18px solid var(--color-gold);
	border-bottom: 17px solid var(--color-gold);
}

.present_ttl{
	margin-bottom: 55px;
}
.present_ttl h3{
	font-size: 40px;
	line-height: 1.2;
	margin-bottom: 5px;
  font-weight: bold;
}
.present_ttl h3 span{
	font-size:24px;
}
.present_ttl p{
	font-size:20px;
}
.present_box_01{
	margin-bottom: 55px;
}
.box_card_present {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	justify-content: center;
	gap: 40px;
}
.card_present {
	display: grid;
	row-gap: 25px;
	padding: 30px;
	border-radius: 20px;
	background: var(--color-white);
	font-family: var(--font-common);
	text-align: left;
}
/* チケット */
.card_gift {
	grid-template-rows: subgrid;
	grid-row: span 5;
}
.sub_ttl_card_present {
	position: relative;
    left: 50%;
    transform: translateX(-50%);
	display: inline-block;
    padding-left: 20px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	font-family: var(--font-montserrat);
}
.sub_ttl_card_present:before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 16px;
    height: 16px;
	background: url(/images/icon_gift.svg)no-repeat;
	font-size: 16px;
	font-weight: bold;
}
.img_present {
	width: 100%;
	height: 200px;
	object-fit: cover;
}
.sub_ttl_card_present span {
	padding-left: 5px;
	color: var(--color-pink);
}
.ttl_card_present {
	display: grid;
	gap: 10px;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    line-height: 1.4;
}
.ttl_card_present span {
	display: block;
	font-size: 16px;
	line-height: 1.4;
}
.card_present ul.anno {
	margin-top: 10px;
}
.card_present ul.anno li {
	position: relative;
	padding-left: 12px;
	font-size: 10px;
}
.card_present ul.anno li:before {
	position: absolute;
	left: 0;
	content: "※";
	width: 1em;
	height: 1em;
	font-size: 10px;
}

/* 特典 */
.sub_ttl_card_benefit {
	position: relative;
    left: 50%;
    transform: translateX(-50%);
	display: inline-block;
    padding-left: 20px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.sub_ttl_card_benefit:before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 16px;
    height: 16px;
	background: url(/images/icon_flag.svg)no-repeat;
}
.ttl_card_benefit {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.tag_discount {
	position: relative;
	height: 60px;
	margin-bottom: 10px;
	background: var(--color-gold);
	color: var(--color-white);
	text-align: center;
	font-family: var(--font-common);
	font-size: 40px;
}
.tag_discount:before {
	position: absolute;
	top: 50%;
	left: -10px;
	transform: translateY(-50%) rotate(-180deg);
	content: "";
	display: block;
	width: 10px;
	height: 60px;
	background: url(/images/icon_poko.svg)no-repeat;
}
.tag_discount:after {
	position: absolute;
	top: 50%;
	right: -10px;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 10px;
	height: 60px;
	background: url(/images/icon_poko.svg)no-repeat;
}
.box_tag_discount {
	display: grid;
	grid-template-columns: 10px 260px 10px;
	justify-content: center;
}
.box_tag_discount img:first-child {
	transform: rotate(180deg);
}
.txt_discount {
	color: #000;
	text-align: center;
	font-family: var(--font-common);
	font-size: 20px;
	font-style: normal;
	font-weight: 300;
}
.txt_discount > .price {
	font-size: 28px;
}
.txt_discount_note {
	margin-top: 20px;
}
/* .box_tag_tour {
	display: grid;
	grid-template-columns: 10px 1fr 10px;
	justify-content: center;
}
.box_tag_tour img:first-child {
	transform: rotate(180deg);
} */
.tag_tour {
	position: relative;
	height: 40px;
	margin-bottom: 10px;
	background: var(--color-gold);
	color: var(--color-white);
	text-align: center;
	font-family: var(--font-common);
	font-size: 20px;
	line-height: 2;
}
.tag_tour:before {
	position: absolute;
	top: 50%;
	left: -10px;
	transform: translateY(-50%) rotate(-180deg);
	content: "";
	display: block;
	width: 10px;
	height: 40px;
	background: url(/images/icon_poko02.svg)no-repeat;
}
.tag_tour:after {
	position: absolute;
	top: 50%;
	right: -10px;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 10px;
	height: 40px;
	background: url(/images/icon_poko02.svg)no-repeat;
}
.box_tour_inner {
	display: grid;
	grid-template-columns: 66% 30%;
	gap: 15px;
}
.txt_tour {
	font-size: 12px;
}
.box_tour_inner img {
	border-radius: 50px;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.present_box_01 h4{
    font-weight: bold;
	font-size:24px;
	margin-bottom:5px;
	font-size: 24px;
	margin-bottom: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.present_box_01 h4 span{
	font-size:14px;
	color:#fff;
	background:var(--color-gold);
	border-radius:5px;
	padding: 3px;
	margin-right: 5px;
}
.present_box_01 h4 span.deco{
	position: absolute;
	left: calc(50% - 17em);
	top: 7px;
}
.present_box_head{
	font-family: Montserrat;
	font-size: 16px;
	letter-spacing: 6px;
	font-weight: bold;
	vertical-align:middle;
	border-bottom:solid 1px #000;
	vertical-align: sub;
	padding-bottom:5px;
	margin-bottom:10px;
}
.present_box_01 .present_box_head img{
	height:24px;
	display:inline-block;
	max-width:22px;
	vertical-align:sub;
	margin-right: 10px;
}
.present_box_head span{
  display: inline-block;
  margin-left: 2px;
	color: var(--color-gold);
}

.present_box_desc{
	font-size:14px;
	margin-bottom:20px;
}
.present_box_01 img{
	width:100%;
}
.present_box_01 .flex{
	gap:30px;
}
.present_box_01 .flex img{
	max-width:370px;
	height:auto;
}
.present_box_01 .flex img.ico_plus{
	max-width:30px;
}
#topics .present_wraps .cta_01 {
	margin-bottom: 0px;
}
.present_box_01 .discount{
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1;
  padding: 20px;
  width: 100%;
  height: auto;
  max-width: 370px;
  min-height: 220px;
  color: #fff;
  background-color: #1D223F;
  box-sizing: border-box;
}
.present_box_img{
  /* flex: 1; */
  align-self: flex-start;
}
.discount_txt01{
  font-size: 28px;
}
.discount_txt02{
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 32px;
}
.discount_txt03{
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 12px;
}
.discount_txt02_sub01{
  font-weight: 600;
  font-style: normal;
  color: var(--color-gold);
}
.discount_txt02_sub02{
  font-family: "din-2014", sans-serif;
  font-size: 24px;
  color: var(--color-gold);
}
.discount_txt02_sub03{
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 32px;
}
.present_wraps .flex.cta_01{
  justify-content: center;
}

@media screen and (max-width: 768px){
	.present_wraps {
		padding: 20px 5% 50px;
    margin-bottom: 50px;
	}

  #topics .present_wraps .cta_01 a:last-of-type{
    margin-bottom: 0;
  }

	.present_wraps >p {
			max-width: 70%;
			letter-spacing: 3px;
	}
	.present_ttl {
			margin-bottom: 35px;
	}
	.present_ttl h3 span {
			font-size: 20px;
	}
	.present_ttl h3{
		font-size:8vw;
	}
	.present_ttl p {
			font-size: 4vw;
	}
	.present_box_01 {
			margin-bottom: 55px;
			display: flex;
			flex-direction: column;
	}
	.present_box_01:last-of-type{
		margin-bottom:30px;
	}
	.card_present {
		padding: 20px;
	}
	.ttl_card_present {
		line-height: 1.2;
	}
	.present_box_desc {
			font-size: 12px;
			text-align:left;
			margin-bottom: 10px;
	}
	.sp_order1{
		order:1;
		margin-bottom:10px;
	}
	.sp_order2{
		order:2;
		margin-bottom:0px;
	}
	.present_box_01 .flex {
			gap: 10px;
			flex-direction: row;
			position: relative;
	}
	.present_box_img{
    display: flex;
    flex-direction: column;
    align-items: center;
		width:53%;
	}
	.present_box_01 .flex img {
			max-width: 100%;
			height: auto;
	}
	.present_box_01 .flex img.ico_plus {
			max-width: 20px;
			position: absolute;
			right: 0;
			left: 0;
			top: -28%;
			bottom: 0;
			margin: auto;
	}
  .present_box_img{
    flex: none;
  }
	.present_box_img p{
		display:block;
		font-size:10px;
	}
  .present_box_01 .discount{
    white-space: nowrap;
    aspect-ratio: 7 / 6;
    padding: 0 10px;
    min-height: auto;
  }
  .discount_txt01{
    font-size: 16px;
  }
  .discount_txt02{
    font-size: 15px;
  }
  .discount_txt03{
    font-size: 12px;
  }
  .vertical_txt{
    writing-mode: vertical-rl;
  }
  .discount_txt02_sub01{
    font-size: 4vw;
    color: var(--color-gold);
    margin-right: 0;
  }
  .discount_txt02_sub02{
    font-size: 16px;
    color: var(--color-gold);
    margin-left: 5px;
  }
  .discount_txt02_sub03{
    font-size: 24px;
  }
  .present_wraps .flex.cta_01{
    flex-direction: column;
    gap:20px;
  }

  .present_wraps .flex.cta_01 a{
    margin-bottom:0px;
    border-radius: 5px;
  }
	.present_box_01 h4 span.deco{
		position: unset;
	}
  /* top用のみ */
  #topics .present_wraps .cta_01 a {
    margin-bottom: 0px;
  }
  /* top用のみ */
}

/* WEB_03-11342 end*/
