@charset "UTF-8";

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
dt,
dd,
th,
td,
pre,
caption,
address {
	margin: 0;
}

@font-face {
	font-family: "SoDoSans";
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/SoDoSans/SoDoSans-Regular.woff") format("woff2");
}

@font-face {
	font-family: "SoDoSans";
	font-style: normal;
	font-weight: 700;
	src: url("/common/fonts/SoDoSans/SoDoSans-Bold.woff") format("woff2");
}

.mod-en {
	font-family: "SoDoSans";
}

@font-face {
	font-family: "SoDoSans Black";
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/SoDoSans/SoDoSans-Black.woff") format("woff");
}

@font-face {
	font-family: "SoDoSans Bold";
	font-style: normal;
	font-weight: 700;
	src: url("/common/fonts/SoDoSans/SoDoSans-Bold.woff") format("woff");
}

@font-face {
	font-family: "SoDoSans SemiBold";
	font-style: normal;
	font-weight: 400;
	src: url("/common/fonts/SoDoSans/SoDoSans-SemiBold.woff") format("woff");
}

article {
	color: #000;
}

article a {
	color: #000;
}

article img {
	width: 100%;
}

article a {
	display: block;
}

article h2,
article h3 {
	margin: 0;
}

p {
	margin: 0;
}

a {
	transition: .3s ease;
}

a:hover {
	opacity: 0.8;
	transition: .3s ease;
}

.ContentsBox {
	position: relative;
	z-index: 10;
	width: 100%;
	overflow: hidden;
}

:root {
	--text-color--main: #1e3932;
  --text-color--accent: #d2a04b;
  --text-color--present: #1b3831;
  --text-color--white: #fff;
  --text-color--black: #000;
  --text-color--green: #006241;
}


.pc-left_bg,
.pc-right_bg {
	display: none;
}

.is-hidden {
  display: none!important;
}

/* =============================================
kv section
============================================= */
.kv-section {
  width: 100%;
  height: 552px;
  background-image: url(/rewards/town-tasting-ticket/images/kv/kv_bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.kv-section_inner {
  position: relative;
}
.kv-section-title {
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  width: 192.25px;
  height: 100%;
  background-image: url(/rewards/town-tasting-ticket/images/kv/kv_ttl.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.kv-section-lead {
  position: absolute;
  top: 11px;
  right: 18px;
  width: 72.87px;
  height: 72.87px;
  background-image: url(/rewards/town-tasting-ticket/images/kv/lead_circle.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.kv-section-lead_inner {
  position: relative;
}
.kv-section-lead_text {
  font-size: 11px;
  line-height: calc(30 / 22);
  font-weight: 700;
  white-space: nowrap;
  color: var(--text-color--white);
  text-align: center;
  position: absolute;
  top: 13px;
  left: 50%;
  transform: translateX(-50%);
}
.kv-section-present {
  position: absolute;
  top: 410px;
  left: 50%;
  transform: translateX(-50%);
  width: 301.5px;
  height: 87.5px;
  background-image: url(/rewards/town-tasting-ticket/images/kv/present_block.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
	box-shadow: 4px 4px 16px 0px rgba(0, 0, 0, 0.35);
  border-radius: 3.5px;
  overflow: hidden;
}
.kv-section-present_inner {
  position: relative;
}
.kv-section-present_txt_w {
  font-size: 15px;
  line-height: calc(80 / 30);
  font-weight: 700;
  color: var(--text-color--white);
  text-align: center;
  position: absolute;
  top: -3px;
  left: 50%;
  transform: translateX(-50%);
}
.kv-section-present_txt_b {
  font-size: 13px;
  line-height: calc(38 / 22);
  font-weight: 700;
  color: var(--text-color--present);
  text-align: center;
  position: absolute;
  top: 34px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.kv-section-present_txt_b span {
  font-size: 19px;
  line-height: calc(38 / 38);
  font-weight: 700;
  color: var(--text-color--accent);
  margin: 0 2px;
}

/* =============================================
area section
============================================= */
.area-section {
  position: relative;
  z-index: 1;
  top: -35px;
  margin-bottom: -35px;
  width: 100%;
  height: 110px;
  background-image: url(/rewards/town-tasting-ticket/images/area/area_bg.jpg);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
.area-section_inner {
  position: relative;
}
.area-section-title {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 15px;
  line-height: calc(43 / 30);
  font-weight: 400;
  color: var(--text-color--white);
  text-align: center;
  white-space: nowrap;
}
.area-section-title span {
  font-size: 18px;
  line-height: calc(43 / 36);
  font-weight: bold;
}
.area-section-list_wrap {
  position: absolute;
  top: 53px;
  left: 59%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
}
.area-section-list {
  display: flex;
}
.area-section-list dt {
  font-size: 13px;
  line-height: calc(36 / 26);
  font-weight: 700;
  color: var(--text-color--white);
  white-space: nowrap;
  width: 14.5rem;
}
.area-section-list dd {
  font-size: 13px;
  line-height: calc(36 / 26);
  font-weight: 700;
  color: var(--text-color--white);
  white-space: nowrap;
}

/* =============================================
store section
============================================= */
.store-section {
  position: relative;
  z-index: 0;
  top: -17px;
  margin-bottom: -17px;
  width: 100%;
  height: 1627.25px;
  background-image: url(/rewards/town-tasting-ticket/images/store/store_bg.png);
  background-size: contain;
  background-position: center top;
  background-repeat: no-repeat;
  z-index: 0;
}
.store-section.is-open {
  height: 2261.5px;
  background-image: url(/rewards/town-tasting-ticket/images/store/store_bg_open.png);
  background-size: contain;
  background-position: center top;
  background-repeat: no-repeat;
  z-index: 0;
}
.store-section-lead {
  position: absolute;
  top: 57px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.store-section-lead_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--black);
  text-align: center;
}
.store-section-lead_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 19px auto;
  font-size: 11px;
  line-height: calc(32 / 22);
  font-weight: 500;
  color: var(--text-color--green);
  text-align: center;
  border: 1px solid var(--text-color--green);
  border-radius: 16px;
  position: relative;
  left: 3px;
  padding: 7px 22px 7px 12px;
}
.store-section-lead_btn::before {
  content: "";
  display: block;
  width: 8.25px;
  height: 7px;
  position: absolute;
  top: 54%;
  right: 8px;
  transform: translateY(-50%);
  background-image: url(/rewards/town-tasting-ticket/images/arrow.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.store-section-title {
  position: absolute;
  top: 292px;
  left: 50%;
  transform: translateX(-50%);
  width: 272.25px;
}
.store-section-newstore_anchor {
  top: 255px;
  width: 100%;
  height: 1px;
  position: absolute;
}
.store-section-image {
  position: absolute;
  top: 331px;
  left: 50%;
  transform: translateX(-50%);
  width: 227px;
  border-radius: 50%;
  overflow: hidden;
}
.store-section-name {
  position: absolute;
  top: 569px;
  left: 50%;
  transform: translateX(-50%);
}
.store-section-name_name {
  font-size: 18px;
  line-height: calc(44 / 36);
  font-weight: 700;
  color: var(--text-color--green);
  text-align: center;
  margin-bottom: 11px;
}
.store-section-name_open {
  font-size: 20px;
  line-height: calc(44 / 40);
  font-weight: 700;
  color: var(--text-color--green);
  text-align: center;
}
.store-section-info {
  position: absolute;
  top: 647px;
  left: 50.5%;
  transform: translateX(-50%);
  width: 284px;
}
.store-section-info_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--black);
}
.store-section-info_btn {
  font-size: 14px;
  line-height: calc(40 / 28);
  font-weight: 700;
  color: var(--text-color--white);
  text-align: center;
  background-color: var(--text-color--green);
  border-radius: 56px;
  width: 305.5px;
  padding: 18px 0;
  display: inline-block;
  margin-top: 18px;
  position: relative;
  left: -12px;
}

.store-section-detail {
  position: absolute;
  top: 928px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.store-section-detail_inner {
  width: 335px;
  margin: 0 auto;
}
.store-section-detail_title {
  width: 259.5px;
  margin: 0 auto 0;
}
.store-section-detail_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--black);
  text-align: center;
  margin-top: 12px;
}
.store-section-detail_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 26px 1px;
  margin-top: 25px;
  margin-left: -4px;
}
.store-section-detail_list_item {
  width: 100%;
  max-width: 150px;
  margin: 0 auto;
  border-radius: 8px;
  background-color: var(--text-color--white);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1;
  cursor: pointer;
}
.store-section-detail_list_item::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -6px;
  right: -5px;
  width: 30px;
  height: 30px;
  background-image: url(/rewards/town-tasting-ticket/images/store/store_detail.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.store-section-detail_list_item:nth-child(2n) {
  position: relative;
  top: 25px;
}
.store-section-detail_list_item_img {
  width: 100%;
  height: 130px;
  object-fit: cover;
  object-position: center;
  overflow: hidden;
  border-radius: 8px 8px 0 0;
}
.store-section-detail_list_item_text {
  font-size: 11px;
  line-height: calc(28 / 22);
  font-weight: 500;
  color: var(--text-color--black);
  text-align: center;
  padding: 20px 0;
}
.store-section-detail_list_item:nth-child(5) .store-section-detail_list_item_text {
  padding: 12px 0;
}
.store-section-detail_list_item:nth-child(10) .store-section-detail_list_item_text {
  padding: 7px 0;
}
.store-section-detail_btn {
  position: relative;
  font-size: 14px;
  line-height: calc(48 / 28);
  font-weight: 400;
  color: var(--text-color--green);
  text-align: center;
  border: 1px solid var(--text-color--green);
  border-radius: 16px;
  width: auto;
  margin: 46px 0 0 108px;
  padding: 3px 32px 3px 15px;
  display: inline-block;
  cursor: pointer;
}
.store-section-detail_btn._close {
  margin: 54px 0 0 108px;
  padding: 3px 41px 3px 34px;
}
.store-section-detail_btn::before {
  content: "";
  display: block;
  width: 11.5px;
  height: 11.5px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  background-image: url(/rewards/town-tasting-ticket/images/store/plus.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.store-section-detail_btn._close::before {
  width: 11.5px;
  height: 1px;
  position: absolute;
  top: 54%;
  right: 13px;
  background-image: url(/rewards/town-tasting-ticket/images/store/minus.png);
}
/* modal */
.store-section-detail_modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}
.store-section-detail_modal_inner {
  width: 335px;
  background-color: var(--text-color--white);
  border-radius: 10px;
  position: relative;
}
.store-section-detail_modal_btn_close {
  position: absolute;
  top: 11px;
  right: 15px;
  width: 31.5px;
  height: 31.5px;
  z-index: 10;
  cursor: pointer;
}
.store-section-detail_modal_image {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: center;
  overflow: hidden;
  border-radius: 10px 10px 0 0;
}
.store-section-detail_modal_content {
  padding: 13px 30px;
}
.store-section-detail_modal_title {
  font-size: 12px;
  line-height: calc(44 / 24);
  font-weight: 700;
  color: var(--text-color--black);
  text-align: center;
}
.store-section-detail_modal_text {
  font-size: 11px;
  line-height: calc(40 / 22);
  font-weight: 500;
  color: var(--text-color--black);
  text-align: left;
  margin-top: 3px;
}
.store-section-detail_modal_btn {
  font-size: 14px;
  line-height: calc(40 / 28);
  font-weight: 700;
  color: var(--text-color--white);
  text-align: center;
  background-color: var(--text-color--green);
  border-radius: 56px;
  width: 275.5px;
  padding: 18px 0;
  display: inline-block;
  margin-top: 3px;
  margin-bottom: 15px;
  position: relative;
  left: 32px;
}

/* =============================================
present section
============================================= */
.present-section {
  position: relative;
  z-index: -1;
  background-color: #d4e9e2;
  padding-bottom: 14px;
}
.present-section_title {
  width: 202px;
  margin: 0 auto;
  padding-top: 31px;
  position: relative;
  left: 15px;
}
.present-section_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--black);
  text-align: center;
  margin-top: 12px;
}
.present-section_image {
  width: 217px;
  margin: 0 auto;
  margin-top: 12px;
}
.present-section_subtitle {
  width: 130px;
  margin: 0 auto;
  padding-top: 53px;
  position: relative;
  left: 7px;
}
.present-section_list {
  margin-top: 19px;
  margin-left: 65px;
}
.present-section_list_item {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--main);
  position: relative;
  margin-bottom: 9px;
  width: 274px;
}
.present-section_list_item:last-child {
  margin-bottom: 0;
}
.present-section_list_item::before {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: -27px;
  width: 16px;
  height: 16px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.present-section_list_item:nth-child(1)::before {
  background-image: url(/rewards/town-tasting-ticket/images/present/point_01.png);
}
.present-section_list_item:nth-child(2)::before {
  background-image: url(/rewards/town-tasting-ticket/images/present/point_02.png);
}
.present-section_list_item:nth-child(3)::before {
  background-image: url(/rewards/town-tasting-ticket/images/present/point_03.png);
}
.present-section_list_item span {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 900;
  color: var(--text-color--main);
}
.present-section_ticket {
  width: 335px;
  margin: 0 auto;
  margin-top: 27px;
  background-color: var(--text-color--white);
  border-radius: 16.5px;
  padding: 28px 19px;
}
.present-section_ticket_title {
  width: 171.5px;
  margin: 0 auto;
  position: relative;
}
.present-section_ticket_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
  margin-top: 13px;
  margin-bottom: 19px;
  padding: 0 5px;
}
.present-section_ticket_detail {
  margin-top: 6px;
}
.present-section_ticket_detail_btn {
  font-size: 14px;
  line-height: calc(40 / 30);
  font-weight: 700;
  color: var(--text-color--white);
  background-color: #1e3932;
  width: 100%;
  padding: 7px 0 8px 19px;
  display: inline-block;
  position: relative;
  cursor: pointer;
}
.present-section_ticket_detail_btn::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 19px;
  transform: translateY(-50%);
  width: 11.5px;
  height: 11.5px;
  background-image: url(/rewards/town-tasting-ticket/images/present/plus.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.present-section_ticket_detail_btn.is-open::before {
  background-image: url(/rewards/town-tasting-ticket/images/present/minus.png);
}
.present-section_ticket_detail_btn ._underline {
  position: relative;
  display: inline-block;
  font-size: 14px;
  line-height: calc(40 / 30);
  font-weight: 700;
  position: relative;
  z-index: 2;
}
._underline_bg-1 {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 181px;
  width: 59px;
  height: 3.5px;
  background-color: #d19f49;
  z-index: 1;
}
._underline_bg-2 {
  content: "";
  position: absolute;
  bottom: 8px;
  left: 181px;
  width: 87.5px;
  height: 3.5px;
  background-color: #d19f49;
  z-index: 1;
}
.present-section_ticket_detail ._date {
  font-size: 13px;
  line-height: calc(40 / 26);
  font-weight: 700;
  color: var(--text-color--white);
}

.present-section_ticket_detail_content {
  background-color: #f2f0eb;
  border-radius: 0 0 16.5px 16.5px;
  padding: 23px 20px 29px;
  margin-bottom: 8px;
}
#present-section-ticket-detail-content-2 {
  padding-bottom: 17px;
}
.present-section_ticket_detail_content_ttl {
  font-size: 15px;
  line-height: calc(36 / 30);
  font-weight: 700;
  color: var(--text-color--main);
  text-align: center;
  margin-bottom: 16px;
}
.present-section_ticket_detail_content_image {
  width: 100%;
  margin-bottom: 15px;
}
.present-section_ticket_detail_content_note {
  font-size: 9px;
  line-height: calc(28 / 18);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
  margin-top: 4px;
}

.present-section_ticket_detail_content_step {
  margin-top: 4px;
  margin-bottom: 25px;
  background-color: var(--text-color--white);
  border-radius: 16.5px;
  padding: 19px 20px 15px;
  position: relative;
}
.present-section_ticket_detail_content_step._02 {
  padding: 30px 20px 15px;
}
.present-section_ticket_detail_content_step._03 {
  padding: 23px 20px 15px;
}
.present-section_ticket_detail_content_step._04 {
  padding: 21px 0 24px;
}
.present-section_ticket_detail_content_step::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -19px;
  left: 50%;
  transform: translateX(-50%);
  width: 21px;
  height: 10px;
  background-image: url(/rewards/town-tasting-ticket/images/present/arrow_a.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.present-section_ticket_detail_content_step:last-child {
  margin-bottom: 0;
}
.present-section_ticket_detail_content_step:last-child::before {
  display: none;
}
.present-section_ticket_detail_content_step_ttl {
  display: flex;
  align-items: center;
  font-size: 14px;
  line-height: calc(44 / 28);
  font-weight: 700;
  color: var(--text-color--main);
  margin-left: 9px;
  gap: 0 13px;
}
._04 .present-section_ticket_detail_content_step_ttl {
  margin-left: 29px;
}
.present-section_ticket_detail_content_step_ttl img {
  width: 32px;
}
._01 .present-section_ticket_detail_content_step_image {
  width: 81.5px;
  margin: 20px auto 16px;
}
._02 .present-section_ticket_detail_content_step_image {
  width: 205px;
  margin: 21px auto 12px;
}
._03 .present-section_ticket_detail_content_step_image {
  width: 205px;
  margin: 10px auto 10px;
}
.present-section_ticket_detail_content_step_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
}
._02 .present-section_ticket_detail_content_step_text {
  padding: 0 5px;
}
._03 .present-section_ticket_detail_content_step_text {
  padding: 0 5px;
}
.present-section_ticket_detail_content_step_btn {
  font-size: 14px;
  line-height: calc(48 / 28);
  font-weight: 400;
  color: var(--text-color--main);
  text-align: center;
  background-color: var(--text-color--white);
  border: 1px solid var(--text-color--main);
  width: 218.5px;
  border-radius: 16px;
  padding: 3px 0;
  display: inline-block;
  margin-top: 16px;
  margin-bottom: 15px;
  position: relative;
  cursor: pointer;
}
.present-section_ticket_detail_content_step_btn::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  width: 4.75px;
  height: 8.25px;
  background-image: url(/rewards/town-tasting-ticket/images/present/arrow_b.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.present-section_ticket_detail_content_step_note {
  font-size: 9px;
  line-height: calc(28 / 18);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
  margin-top: 2px;
  margin-bottom: 12px;
  padding: 0 27px;
}
.present-section_ticket_detail_content_step_note a {
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  color: var(--text-color--main);
  cursor: pointer;
}

/* swiper slider for step list */
.present-section_ticket_detail_content_step_list {
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.present-section_ticket_detail_content_step_list.swiper {
  width: 100%;
  height: 100%;
  padding-left: 15px;
}
.present-section_ticket_detail_content_step_list .swiper-wrapper {
  display: flex;
  width: 100%;
  height: 100%;
}
.present-section_ticket_detail_content_step_list_item {
  padding: 0 10px;
  text-align: center;
}
.present-section_ticket_detail_content_step_list_item.swiper-slide {
  width: 100%;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
/* 最後のスライドの時は左寄せ */
.present-section_ticket_detail_content_step_list.is-end .swiper-wrapper {
  position: relative;
  right: 20px;
}
.present-section_ticket_detail_content_step_list_item img {
  width: 180px;
  margin: 0 auto;
  display: block;
  border-radius: 8px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.present-section_ticket_detail_content_step_list_item_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
  margin-top: 10px;
}

/* swiper navigation */
.present-section_ticket_detail_content_step_list .swiper-button-prev,
.present-section_ticket_detail_content_step_list .swiper-button-next {
  width: 30px;
  height: 30px;
  color: var(--text-color--main);
  opacity: 0.8;
}
.present-section_ticket_detail_content_step_list .swiper-button-prev {
  left: -10px;
}
.present-section_ticket_detail_content_step_list .swiper-button-next {
  right: -10px;
}
.present-section_ticket_detail_content_step_list .swiper-button-prev:after,
.present-section_ticket_detail_content_step_list .swiper-button-next:after {
  font-size: 20px;
}

/* swiper pagination - progressbar */
.present-section_ticket_detail_content_step_list .swiper-pagination {
  position: relative;
  width: 88%;
  height: 4px;
  background-color: #E0E0E0;
  border-radius: 2px;
  overflow: hidden;
  margin-top: 13px;
  margin-left: 8px;
}

.present-section_ticket_detail_content_step_list .swiper-pagination-progressbar-fill {
  background-color: #006241;
  height: 100%;
  border-radius: 2px;
  transform-origin: left center;
}

.present-section_ticket_confirm {
  margin-top: 20px;
  background-color: #f2f0eb;
  border-radius: 16.5px;
  padding: 19px 24.5px;
}
.present-section_ticket_confirm_title {
  font-size: 15px;
  line-height: calc(50 / 30);
  font-weight: 700;
  color: var(--text-color--main);
  text-align: center;
  margin-bottom: 14px;
}
.present-section_ticket_confirm_content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 18.5px;
}
.present-section_ticket_confirm_content_image {
  width: 112px;
}
.present-section_ticket_confirm_content_text_inner {
  display: flex;
  flex-direction: column;
  flex: 1;
  position: relative;
  top: -5px;
}
.present-section_ticket_confirm_content_text_inner img {
  width: 10px;
  height: 20px;
  margin: 4px 0 4px 2px;
}
.present-section_ticket_confirm_content_text {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
}

.present-section_ticket_app {
  margin-top: 51px;
}
.present-section_ticket_app_title {
  font-size: 17px;
  line-height: calc(50 / 34);
  font-weight: 700;
  color: var(--text-color--main);
  text-align: center;
  margin-bottom: 14px;
}
.present-section_ticket_app_image {
  width: 335px;
  margin: 0 auto 12px;
}
.present-section_ticket_app_image img {
  width: 100%;
}
.present-section_ticket_app_text {
  width: 335px;
  margin: 0 auto;
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
}
.present-section_ticket_entry {
  margin-top: 82px;
}
.present-section_ticket_entry_inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.present-section_ticket_entry_btn {
  font-size: 19px;
  line-height: calc(50 / 38);
  font-weight: 700;
  color: var(--text-color--main);
  text-align: center;
  margin-bottom: 14px;
  position: relative;
  cursor: pointer;
}
.present-section_ticket_entry_btn::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -7px;
  left: 50%;
  transform: translateX(-50%);
  width: 335px;
  height: 1px;
  background-color: var(--text-color--main);
}
.present-section_ticket_entry_btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -110px;
  transform: translateY(-50%);
  width: 11.5px;
  height: 11.5px;
  background-image: url(/rewards/town-tasting-ticket/images/present/plus2.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.present-section_ticket_entry_btn.is-open::after {
  background-image: url(/rewards/town-tasting-ticket/images/present/minus2.png);
}
.present-section_ticket_note {
  font-size: 9px;
  line-height: calc(28 / 18);
  font-weight: 500;
  color: var(--text-color--main);
  margin-top: 76px;
  position: relative;
  left: 20px;
}

/* present section - ticket entry list */
.present-section_ticket_entry_content {
  padding: 14px 21px 0;
  margin-bottom: -16px;
}
.present-section_ticket_entry_list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.present-section_ticket_entry_list_item {
  margin-bottom: 15px;
}
.present-section_ticket_entry_list_item_title {
  font-size: 13px;
  line-height: calc(44 / 26);
  font-weight: 700;
  color: var(--text-color--main);
  text-align: left;
  margin-left: -8px;
}
.present-section_ticket_entry_list_item_title._last {
  margin-left: 0;
}
.present-section_ticket_entry_list_item_text {
  font-size: 11px;
  line-height: calc(30 / 22);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
}
.present-section_ticket_entry_list_item_text a {
  font-weight: 500;
  cursor: pointer;
}
.present-section_ticket_entry_list_item_text._mb {
  margin-bottom: 7px;
}
.present-section_ticket_entry_list_item_note {
  font-size: 9px;
  line-height: calc(28 / 18);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
  margin-bottom: 6px;
}
.present-section_ticket_entry_list_item_note a {
  font-weight: 500;
  cursor: pointer;
}
.present-section_ticket_entry_list_item_note._mt {
  margin-top: 14px;
}
.present-section_ticket_entry_list_item_btn {
  font-size: 11px;
  line-height: calc(30 / 22);
  font-weight: 500;
  color: var(--text-color--main);
  text-align: left;
  text-decoration: underline;
  text-underline-offset: 6px;
  cursor: pointer;
  margin-bottom: 21px;
  display: inline-block;
}

@media print, screen and (min-width: 769px) {
	.mainContentsIn {
		position: relative;
	}

	.pc-left_bg,
	.pc-right_bg {
		position: fixed;
		display: block;
		width: calc((100% - 375px) / 2);
		z-index: -1;
	}

	.pc-left_bg {
		background: url(/rewards/town-tasting-ticket/images/pc_1440bg-left.jpg) no-repeat center top / cover;
		height: 100vh;
		top: 0;
		left: 0;
		box-sizing: border-box;
	}

	.pc-right_bg {
		background: url(/rewards/town-tasting-ticket/images/pc_1440bg-right.jpg) no-repeat center top / cover;
		height: 100vh;
		top: 0;
		right: 0;
		box-sizing: border-box;
	}

	.ContentsBox {
		max-width: 375px;
		width: 100%;
		margin: 0 auto;
	}
}

@media print, screen and (max-width: 768px) {
  /* =============================================
  kv section
  ============================================= */
  .kv-section {
    height: calc(552 / 375 * 100vw);
  }
  .kv-section-title {
    top: calc(25 / 375 * 100vw);
    width: calc(192.25 / 375 * 100vw);
  }
  .kv-section-lead {
    top: calc(11 / 375 * 100vw);
    right: calc(18 / 375 * 100vw);
    width: calc(72.87 / 375 * 100vw);
    height: calc(72.87 / 375 * 100vw);
  }
  .kv-section-lead_text {
    font-size: calc(11/375*100vw);
    top: calc(13 / 375 * 100vw);
  }
  .kv-section-present {
    top: calc(410 / 375 * 100vw);
    width: calc(301.5 / 375 * 100vw);
    height: calc(87.5 / 375 * 100vw);
    box-shadow: calc(4 / 375 * 100vw) calc(4 / 375 * 100vw) calc(16 / 375 * 100vw) 0px rgba(0, 0, 0, 0.35);
    border-radius: calc(3.5 / 375 * 100vw);
    overflow: hidden;
  }
  .kv-section-present_txt_w {
    font-size: calc(15 / 375 * 100vw);
    line-height: calc(80 / 30);
    top: calc(-3 / 375 * 100vw);
  }
  .kv-section-present_txt_b {
    font-size: calc(13 / 375 * 100vw);
    top: calc(34 / 375 * 100vw);
  }
  .kv-section-present_txt_b span {
    font-size: calc(19 / 375 * 100vw);
    margin: 0 calc(2 / 375 * 100vw);
  }

  /* =============================================
  area section
  ============================================= */
  .area-section {
    top: calc(-35 / 375 * 100vw);
    margin-bottom: calc(-35 / 375 * 100vw);
    height: calc(110 / 375 * 100vw);
  }
  .area-section-title {
    top: calc(20 / 375 * 100vw);
    font-size: calc(15 / 375 * 100vw);
  }
  .area-section-title span {
    font-size: calc(18 / 375 * 100vw);
  }
  .area-section-list_wrap {
    top: calc(53 / 375 * 100vw);
  }
  .area-section-list dt {
    font-size: calc(13 / 375 * 100vw);
    width: calc(145 / 375 * 100vw);
  }
  .area-section-list dd {
    font-size: calc(13 / 375 * 100vw);
  }

  /* =============================================
  store section
  ============================================= */
  .store-section {
    top: calc(-17 / 375 * 100vw);
    margin-bottom: calc(-17 / 375 * 100vw);
    height: calc(1627.25 / 375 * 100vw);
  }
  .store-section.is-open {
    height: calc(2261.5 / 375 * 100vw);
  }
  .store-section-lead {
    top: calc(57 / 375 * 100vw);
  }
  .store-section-lead_text {
    font-size: calc(13 / 375 * 100vw);
  }
  .store-section-lead_btn {
    margin: calc(19 / 375 * 100vw) auto;
    font-size: calc(11 / 375 * 100vw);
    border: calc(1 / 375 * 100vw) solid var(--text-color--green);
    border-radius: calc(16 / 375 * 100vw);
    left: calc(3 / 375 * 100vw);
    padding: calc(7 / 375 * 100vw) calc(22 / 375 * 100vw) calc(7 / 375 * 100vw) calc(12 / 375 * 100vw);
  }
  .store-section-lead_btn::before {
    width: calc(8.25 / 375 * 100vw);
    height: calc(7 / 375 * 100vw);
    right: calc(8 / 375 * 100vw);
  }
  .store-section-title {
    top: calc(292 / 375 * 100vw);
    width: calc(272.25 / 375 * 100vw);
  }
  .store-section-newstore_anchor {
    top: calc(255 / 375 * 100vw);
  }
  .store-section-image {
    top: calc(331 / 375 * 100vw);
    width: calc(227 / 375 * 100vw);
  }
  .store-section-name {
    top: calc(569 / 375 * 100vw);
  }
  .store-section-name_name {
    font-size: calc(18 / 375 * 100vw);
    margin-bottom: calc(11 / 375 * 100vw);
  }
  .store-section-name_open {
    font-size: calc(20 / 375 * 100vw);
  }
  .store-section-info {
    top: calc(647 / 375 * 100vw);
    width: calc(284 / 375 * 100vw);
  }
  .store-section-info_text {
    font-size: calc(13 / 375 * 100vw);
  }
  .store-section-info_btn {
    font-size: calc(14 / 375 * 100vw);
    border-radius: calc(56 / 375 * 100vw);
    width: calc(305.5 / 375 * 100vw);
    padding: calc(18 / 375 * 100vw) 0;
    margin-top: calc(18 / 375 * 100vw);
    left: calc(-12 / 375 * 100vw);
  }

  .store-section-detail {
    top: calc(928 / 375 * 100vw);
  }
  .store-section-detail_inner {
    width: calc(335 / 375 * 100vw);
  }
  .store-section-detail_title {
    width: calc(259.5 / 375 * 100vw);
  }
  .store-section-detail_text {
    font-size: calc(13 / 375 * 100vw);
    margin-top: calc(12 / 375 * 100vw);
  }
  .store-section-detail_list {
    gap: calc(26 / 375 * 100vw) calc(1 / 375 * 100vw);
    margin-top: calc(25 / 375 * 100vw);
    margin-left: calc(-4 / 375 * 100vw);
  }
  .store-section-detail_list_item {
    width: calc(150 / 375 * 100vw);
    max-width: calc(150 / 375 * 100vw);
    border-radius: calc(8 / 375 * 100vw);
    box-shadow: 0 0 calc(10 / 375 * 100vw) 0 rgba(0, 0, 0, 0.1);
  }
  .store-section-detail_list_item::before {
    bottom: calc(-6 / 375 * 100vw);
    right: calc(-5 / 375 * 100vw);
    width: calc(30 / 375 * 100vw);
    height: calc(30 / 375 * 100vw);
  }
  .store-section-detail_list_item:nth-child(2n) {
    top: calc(25 / 375 * 100vw);
  }
  .store-section-detail_list_item_img {
    height: calc(130 / 375 * 100vw);
    border-radius: calc(8 / 375 * 100vw) calc(8 / 375 * 100vw) 0 0;
  }
  .store-section-detail_list_item_text {
    font-size: calc(11 / 375 * 100vw);
    padding: calc(20 / 375 * 100vw) 0;
  }
  .store-section-detail_list_item:nth-child(5) .store-section-detail_list_item_text {
    padding: calc(12 / 375 * 100vw) 0;
  }
  .store-section-detail_list_item:nth-child(10) .store-section-detail_list_item_text {
    padding: calc(7 / 375 * 100vw) 0;
  }
  .store-section-detail_btn {
    font-size: calc(14 / 375 * 100vw);
    border: calc(1 / 375 * 100vw) solid var(--text-color--green);
    border-radius: calc(16 / 375 * 100vw);
    margin: calc(46 / 375 * 100vw) 0 0 calc(108 / 375 * 100vw);
    padding: calc(3 / 375 * 100vw) calc(32 / 375 * 100vw) calc(3 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
  .store-section-detail_btn._close {
    margin: calc(54 / 375 * 100vw) 0 0 calc(108 / 375 * 100vw);
    padding: calc(3 / 375 * 100vw) calc(41 / 375 * 100vw) calc(3 / 375 * 100vw) calc(34 / 375 * 100vw);
  }
  .store-section-detail_btn::before {
    width: calc(11.5 / 375 * 100vw);
    height: calc(11.5 / 375 * 100vw);
    right: calc(15 / 375 * 100vw);
  }
  .store-section-detail_btn._close::before {
    width: calc(11.5 / 375 * 100vw);
    height: calc(1 / 375 * 100vw);
    right: calc(13 / 375 * 100vw);
  }
  /* modal */
  .store-section-detail_modal_inner {
    width: calc(335 / 375 * 100vw);
    border-radius: calc(10 / 375 * 100vw);
  }
  .store-section-detail_modal_btn_close {
    top: calc(11 / 375 * 100vw);
    right: calc(15 / 375 * 100vw);
    width: calc(31.5 / 375 * 100vw);
    height: calc(31.5 / 375 * 100vw);
  }
  .store-section-detail_modal_image {
    height: calc(300 / 375 * 100vw);
    border-radius: calc(10 / 375 * 100vw) calc(10 / 375 * 100vw) 0 0;
  }
  .store-section-detail_modal_content {
    padding: calc(13 / 375 * 100vw) calc(30 / 375 * 100vw);
  }
  .store-section-detail_modal_title {
    font-size: calc(12 / 375 * 100vw);
  }
  .store-section-detail_modal_text {
    font-size: calc(11 / 375 * 100vw);
    margin-top: calc(3 / 375 * 100vw);
  }
  .store-section-detail_modal_btn {
    font-size: calc(14 / 375 * 100vw);
    border-radius: calc(56 / 375 * 100vw);
    width: calc(275.5 / 375 * 100vw);
    padding: calc(18 / 375 * 100vw) 0;
    margin-top: calc(3 / 375 * 100vw);
    margin-bottom: calc(15 / 375 * 100vw);
    left: calc(32 / 375 * 100vw);
  }

  /* =============================================
  present section
  ============================================= */
  .present-section {
    padding-bottom: calc(14 / 375 * 100vw);
  }
  .present-section_title {
    width: calc(202 / 375 * 100vw);
    padding-top: calc(31 / 375 * 100vw);
    left: calc(15 / 375 * 100vw);
  }
  .present-section_text {
    font-size: calc(13 / 375 * 100vw);
    margin-top: calc(12 / 375 * 100vw);
  }
  .present-section_image {
    width: calc(217 / 375 * 100vw);
    margin-top: calc(12 / 375 * 100vw);
  }
  .present-section_subtitle {
    width: calc(130 / 375 * 100vw);
    padding-top: calc(53 / 375 * 100vw);
    left: calc(7 / 375 * 100vw);
  }
  .present-section_list {
    margin-top: calc(19 / 375 * 100vw);
    margin-left: calc(65 / 375 * 100vw);
  }
  .present-section_list_item {
    font-size: calc(13 / 375 * 100vw);
    margin-bottom: calc(9 / 375 * 100vw);
    width: calc(274 / 375 * 100vw);
  }
  .present-section_list_item::before {
    top: calc(4 / 375 * 100vw);
    left: calc(-27 / 375 * 100vw);
    width: calc(16 / 375 * 100vw);
    height: calc(16 / 375 * 100vw);
  }
  .present-section_list_item span {
    font-size: calc(13 / 375 * 100vw);
  }
  .present-section_ticket {
    width: calc(335 / 375 * 100vw);
    margin-top: calc(27 / 375 * 100vw);
    border-radius: calc(16.5 / 375 * 100vw);
    padding: calc(28 / 375 * 100vw) calc(19 / 375 * 100vw);
  }
  .present-section_ticket_title {
    width: calc(171.5 / 375 * 100vw);
  }
  .present-section_ticket_text {
    font-size: calc(13 / 375 * 100vw);
    margin-top: calc(13 / 375 * 100vw);
    margin-bottom: calc(19 / 375 * 100vw);
    padding: 0 calc(5 / 375 * 100vw);
  }
  .present-section_ticket_detail {
    margin-top: calc(6 / 375 * 100vw);
  }
  .present-section_ticket_detail_btn {
    font-size: calc(14 / 375 * 100vw);
    padding: calc(7 / 375 * 100vw) 0 calc(8 / 375 * 100vw) calc(19 / 375 * 100vw);
  }
  .present-section_ticket_detail_btn::before {
    width: calc(11.5 / 375 * 100vw);
    height: calc(11.5 / 375 * 100vw);
    right: calc(19 / 375 * 100vw);
  }
  .present-section_ticket_detail_btn ._underline {
    font-size: calc(14 / 375 * 100vw);
  }
  ._underline_bg-1 {
    bottom: calc(8 / 375 * 100vw);
    left: calc(181 / 375 * 100vw);
    width: calc(59 / 375 * 100vw);
    height: calc(3.5 / 375 * 100vw);
  }
  ._underline_bg-2 {
    bottom: calc(8 / 375 * 100vw);
    left: calc(181 / 375 * 100vw);
    width: calc(87.5 / 375 * 100vw);
    height: calc(3.5 / 375 * 100vw);
  }
  .present-section_ticket_detail ._date {
    font-size: calc(13 / 375 * 100vw);
  }

  .present-section_ticket_detail_content {
    border-radius: 0 0 calc(16.5 / 375 * 100vw) calc(16.5 / 375 * 100vw);
    padding: calc(23 / 375 * 100vw) calc(20 / 375 * 100vw) calc(29 / 375 * 100vw);
    margin-bottom: calc(8 / 375 * 100vw);
  }
  #present-section-ticket-detail-content-2 {
    padding-bottom: calc(17 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_ttl {
    font-size: calc(15 / 375 * 100vw);
    margin-bottom: calc(16 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_image {
    margin-bottom: calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_note {
    font-size: calc(9 / 375 * 100vw);
    margin-top: calc(4 / 375 * 100vw);
  }

  .present-section_ticket_detail_content_step {
    margin-top: calc(4 / 375 * 100vw);
    margin-bottom: calc(25 / 375 * 100vw);
    border-radius: calc(16.5 / 375 * 100vw);
    padding: calc(19 / 375 * 100vw) calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step._02 {
    padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step._03 {
    padding: calc(23 / 375 * 100vw) calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step._04 {
    padding: calc(21 / 375 * 100vw) 0 calc(24 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step::before {
    bottom: calc(-19 / 375 * 100vw);
    width: calc(21 / 375 * 100vw);
    height: calc(10 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_ttl {
    font-size: calc(14 / 375 * 100vw);
    margin-left: calc(9 / 375 * 100vw);
    gap: 0 calc(13 / 375 * 100vw);
  }
  ._04 .present-section_ticket_detail_content_step_ttl {
    margin-left: calc(29 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_ttl img {
    width: calc(32 / 375 * 100vw);
  }
  ._01 .present-section_ticket_detail_content_step_image {
    width: calc(81.5 / 375 * 100vw);
    margin: calc(20 / 375 * 100vw) auto calc(16 / 375 * 100vw);
  }
  ._02 .present-section_ticket_detail_content_step_image {
    width: calc(205 / 375 * 100vw);
    margin: calc(21 / 375 * 100vw) auto calc(12 / 375 * 100vw);
  }
  ._03 .present-section_ticket_detail_content_step_image {
    width: calc(205 / 375 * 100vw);
    margin: calc(10 / 375 * 100vw) auto calc(10 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_text {
    font-size: calc(13 / 375 * 100vw);
  }
  ._02 .present-section_ticket_detail_content_step_text {
    padding: 0 calc(5 / 375 * 100vw);
  }
  ._03 .present-section_ticket_detail_content_step_text {
    padding: 0 calc(5 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_btn {
    font-size: calc(14 / 375 * 100vw);
    border: calc(1 / 375 * 100vw) solid var(--text-color--main);
    border-radius: calc(16 / 375 * 100vw);
    width: calc(218.5 / 375 * 100vw);
    padding: calc(3 / 375 * 100vw) 0;
    margin-top: calc(16 / 375 * 100vw);
    margin-bottom: calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_btn::before {
    width: calc(4.75 / 375 * 100vw);
    height: calc(8.25 / 375 * 100vw);
    right: calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_note {
    font-size: calc(9 / 375 * 100vw);
    margin-top: calc(2 / 375 * 100vw);
    margin-bottom: calc(12 / 375 * 100vw);
    padding: 0 calc(27 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_note a {
    text-underline-offset: calc(2 / 375 * 100vw);
  }

  /* swiper slider for step list */
  .present-section_ticket_detail_content_step_list.swiper {
    padding-left: calc(15 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_list_item {
    padding: 0 calc(10 / 375 * 100vw);
  }
  /* 最後のスライドの時は左寄せ */
  .present-section_ticket_detail_content_step_list.is-end .swiper-wrapper {
    right: calc(20 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_list_item img {
    width: calc(180 / 375 * 100vw);
    border-radius: calc(8 / 375 * 100vw);
    box-shadow: 0 0 calc(10 / 375 * 100vw) 0 rgba(0, 0, 0, 0.1);
  }
  .present-section_ticket_detail_content_step_list_item_text {
    font-size: calc(13 / 375 * 100vw);
    margin-top: calc(10 / 375 * 100vw);
  }

  /* swiper navigation */
  .present-section_ticket_detail_content_step_list .swiper-button-prev,
  .present-section_ticket_detail_content_step_list .swiper-button-next {
    width: calc(30 / 375 * 100vw);
    height: calc(30 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_list .swiper-button-prev {
    left: calc(-10 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_list .swiper-button-next {
    right: calc(-10 / 375 * 100vw);
  }
  .present-section_ticket_detail_content_step_list .swiper-button-prev:after,
  .present-section_ticket_detail_content_step_list .swiper-button-next:after {
    font-size: calc(20 / 375 * 100vw);
  }

  /* swiper pagination - progressbar */
  .present-section_ticket_detail_content_step_list .swiper-pagination {
    height: calc(4 / 375 * 100vw);
    border-radius: calc(2 / 375 * 100vw);
    margin-top: calc(13 / 375 * 100vw);
    margin-left: calc(8 / 375 * 100vw);
  }

  .present-section_ticket_detail_content_step_list .swiper-pagination-progressbar-fill {
    border-radius: calc(2 / 375 * 100vw);
  }

  .present-section_ticket_confirm {
    margin-top: calc(20 / 375 * 100vw);
    border-radius: calc(16.5 / 375 * 100vw);
    padding: calc(19 / 375 * 100vw) calc(24.5 / 375 * 100vw);
  }
  .present-section_ticket_confirm_title {
    font-size: calc(15 / 375 * 100vw);
    margin-bottom: calc(14 / 375 * 100vw);
  }
  .present-section_ticket_confirm_content {
    gap: 0 calc(18.5 / 375 * 100vw);
  }
  .present-section_ticket_confirm_content_image {
    width: calc(112 / 375 * 100vw);
  }
  .present-section_ticket_confirm_content_text_inner {
    top: calc(-5 / 375 * 100vw);
  }
  .present-section_ticket_confirm_content_text_inner img {
    width: calc(10 / 375 * 100vw);
    height: calc(20 / 375 * 100vw);
    margin: calc(4 / 375 * 100vw) 0 calc(4 / 375 * 100vw) calc(2 / 375 * 100vw);
  }
  .present-section_ticket_confirm_content_text {
    font-size: calc(13 / 375 * 100vw);
  }

  .present-section_ticket_app {
    margin-top: calc(51 / 375 * 100vw);
  }
  .present-section_ticket_app_title {
    font-size: calc(17 / 375 * 100vw);
    margin-bottom: calc(14 / 375 * 100vw);
  }
  .present-section_ticket_app_image {
    width: calc(335 / 375 * 100vw);
    margin: 0 auto calc(12 / 375 * 100vw);
  }
  .present-section_ticket_app_text {
    width: calc(335 / 375 * 100vw);
    font-size: calc(13 / 375 * 100vw);
  }
  .present-section_ticket_entry {
    margin-top: calc(82 / 375 * 100vw);
  }
  .present-section_ticket_entry_btn {
    font-size: calc(19 / 375 * 100vw);
    margin-bottom: calc(14 / 375 * 100vw);
  }
  .present-section_ticket_entry_btn::before {
    bottom: calc(-7 / 375 * 100vw);
    width: calc(335 / 375 * 100vw);
    height: calc(1 / 375 * 100vw);
  }
  .present-section_ticket_entry_btn::after {
    width: calc(11.5 / 375 * 100vw);
    height: calc(11.5 / 375 * 100vw);
    right: calc(-110 / 375 * 100vw);
  }
  .present-section_ticket_note {
    font-size: calc(9 / 375 * 100vw);
    margin-top: calc(76 / 375 * 100vw);
    left: calc(20 / 375 * 100vw);
  }

  /* present section - ticket entry list */
  .present-section_ticket_entry_content {
    padding: calc(14 / 375 * 100vw) calc(21 / 375 * 100vw) 0;
    margin-bottom: calc(-16 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item {
    margin-bottom: calc(15 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item_title {
    font-size: calc(13 / 375 * 100vw);
    margin-left: calc(-8 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item_text {
    font-size: calc(11 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item_text._mb {
    margin-bottom: calc(7 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item_note {
    font-size: calc(9 / 375 * 100vw);
    margin-bottom: calc(6 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item_note._mt {
    margin-top: calc(14 / 375 * 100vw);
  }
  .present-section_ticket_entry_list_item_btn {
    font-size: calc(11 / 375 * 100vw);
    text-underline-offset: calc(6 / 375 * 100vw);
    margin-bottom: calc(21 / 375 * 100vw);
  }
}

.head {
	text-align: center;
	color: #D62B1F;
	background-color: #F1F8F6;
	padding: 2.8rem 0 2.4rem;
}
.head p {
	font-size: 1.8rem;
	font-weight: bold;
}
.head .note {
	font-size: 1.4rem;
	font-weight: normal;
	margin-top: 0.6rem;
}
@media print, screen and (max-width: 1023px) {
  .head {
		padding: 1.5rem 0;
	}
  .head p {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .head .note {
    font-size: 1.2rem;
    margin-top: 0.8rem;
    line-height: 1.5;
  }
}