/* =============================================================
    About 
============================================================= */
#Contents {
  margin: 0;
}

.whole_wrap * {
  box-sizing: border-box;
  line-height: 1;
  letter-spacing: .1em;
}

.whole_wrap img {
  width: 100%;
}

.whole_wrap {
  background: var(--color-Bg-Primary);
}

.whole_wrap .each_area:nth-of-type(n+2) {
  margin-top: 10rem;
}

.sec_inner {
  width: 90rem;
  margin: 0 auto;
}

.sec_ttl {
  position: relative;
  border-bottom: solid;
  border-width: 1px;
  border-color: #DBD6B9;
  margin-bottom: 4rem;
  padding-bottom: 2rem;
}

.sec_ttl::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin-bottom: .3rem;
  background: #DBD6B9;
  content: "";
}

.sec_ttl span {
  position: relative;
  display: block;
  padding-left: 5rem;
  font-weight: 400;
  font-size: 2.6rem;
  letter-spacing: .15em;
}

.sec_ttl span::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4rem;
  height: 3.2rem;
  background: url(../Contents/ImagesPkg/common/ttl_point.svg) center center / cover no-repeat;
  content: "";
}

.whole_wrap .whole_inner {
  display: flex;
  justify-content: space-between;
  max-width: 1400px;
  margin: 0 auto;
  padding: 5rem 20rem 17.3rem 7em;
}

.whole_wrap .main_ttl {
  position: sticky;
  top: 13rem;
  height: fit-content;
  margin: 0;
  font-weight: 400;
  font-size: 3rem;
  letter-spacing: .2em;
  writing-mode: vertical-rl;
}

.whole_wrap .main_ttl .txt_eng {
  display: block;
  margin-left: 2rem;
  font-weight: 500;
  font-size: 1.3rem;
  letter-spacing: .2em;
  writing-mode: vertical-rl;
  color: var(--color-Txt-Tertiary);
}

.beginning_area dl {
  margin-top: 3.5rem;
}

.beginning_area dt {
  margin-bottom: 3.5rem;
  font-size: 3rem;
  line-height: 1.7;
  letter-spacing: .2em;
}

.beginning_area dd {
  font-size: 1.6rem;
  line-height: 2;
}

.beginning_area dd .notes {
  display: block;
  margin-top: 1.5rem;
  font-size: 1.3rem;
  line-height: 1.5;
}

.product_area {
  margin-top: 5rem;
}

.calendar_wrap {
  position: relative;
  border: solid;
  border-width: 1px;
  border-color: #B2A24D;
  margin-bottom: 5rem;
  padding-bottom: 7.5rem;
  background: #fff;
}

.calendar_wrap::before {
  position: absolute;
  bottom: 0;
  left: 0;
  border-bottom: solid var(--color-Txt-Tertiary);
  border-right: solid transparent;
  border-width: 1rem;
  content: "";
}

.calendar_wrap::after {
  position: absolute;
  bottom: 0;
  right: 0;
  border-bottom: solid var(--color-Txt-Tertiary);
  border-left: solid transparent;
  border-width: 1rem;
  content: "";
}

.calendar_wrap dt {
  position: relative;
  margin-bottom: 4rem;
  padding-top: 5rem;
  font-size: 2.4rem;
  text-align: center;
}

.calendar_wrap dt::before {
  position: absolute;
  top: 0;
  left: 0;
  border-top: solid var(--color-Txt-Tertiary);
  border-right: solid transparent;
  border-width: 1rem;
  content: "";
}

.calendar_wrap dt::after {
  position: absolute;
  top: 0;
  right: 0;
  border-top: solid var(--color-Txt-Tertiary);
  border-left: solid transparent;
  border-width: 1rem;
  content: "";
}

.calendar_wrap dd {
  position: relative;
  width: 75rem;
  height: 62.4rem;
  margin: 0 auto;
}

.calendar_wrap dd iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product_area .product_img {
  width: 20.7rem;
  margin-right: 2.4rem;
}

/* ▼ arrow ▼ */
.product_area .slick-arrow:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 1;
  width: 80%;
  height: 80%;
  content: "";
  mask-image: url("../Contents/ImagesPkg/common/menu_arrow_03.svg");  
  mask-repeat: no-repeat;
  mask-position: 50% 50%;
  mask-size: 100%;
  -webkit-mask-image: url("../Contents/ImagesPkg/common/menu_arrow_03.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 50% 50%;
  -webkit-mask-size: 100%;
  background: var(--color-Key-Primary);
}

.product_area .slick-arrow {
  z-index: 1;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  border: solid;
  border-width: 1px;
  border-color: var(--color-Key-Primary);
}

.product_area .slick-next {
  top: 100%;
  right: 0;
  transform: translateY(0);
  margin-top: 3rem;
}

.product_area .slick-prev {
  top: 100%;
  left: 0;
  transform: translateY(0);
  margin-top: 3rem;
}

.product_area .slick-prev:before {
  transform: translate(-50%, -50%) rotate(180deg);
}

/* ▲ arrow ▲ */

/* ▼ dots ▼ */
.product_area .slick-dotted.slick-slider {
 margin-bottom: 0;
}

.product_area .slick-dots {
  font-size: 0;
  bottom: auto;
  top: 100%;
  margin-top: 4rem;
}

.product_area .slick-dots li {
  width: 2rem;
  height: 2rem;
  margin: 0 1.4rem 0 0;
}

.product_area .slick-dots li button {
  width: 100%;
  height: 100%;
  padding: 0;
}

.product_area .slick-dots li button::before {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: .4rem;
  height: .4rem;
  background: #ddd;
  content: "";
  opacity: 1;
}

.product_area .slick-dots li.slick-active button::before {
  background: var(--color-Key-Primary);
  opacity: 1;
}
/* ▲ dots ▲ */

@media screen and  (max-width:768px) {
.only_pc {
  display: none;
}

.whole_wrap .each_area:nth-of-type(n+2) {
  margin-top: 6.5rem;
}

.sec_inner {
  width: auto;
  padding: 0 2.5rem;
}

.sec_ttl {
  margin-bottom: 3rem;
  padding-bottom: 1.5rem;
  text-align: center;
}

.sec_ttl span {
  padding: 3.5rem 0 0 0;
  font-size: 2.2rem;
  line-height: 1.5;
}

.sec_ttl span::before {
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.whole_wrap .whole_inner {
  display: block;
  width: auto;
  padding: 4rem 0 14rem;
}

.whole_wrap .main_ttl {
  position: static;
  margin: 0 auto 4.5rem;
  font-size: 2.8rem;
  line-height: 1.7;
}

.whole_wrap .main_ttl .txt_eng {
  margin-left: 1.5rem;
  font-size: 1.4rem;
}

.beginning_area {
  margin-top: 3rem;
}

.beginning_area dl {
  margin-top: 4rem;
}

.beginning_area dt {
  margin-bottom: 3.5rem;
  font-size: 2.2rem;
  line-height: 1.7;
  letter-spacing: .2em;
}

.beginning_area dd .notes {
  margin-top: 2.5rem;
  font-size: 1.4rem;
}

.product_area {
  margin-top: 4rem;
}

.product_area .sec_inner {
  padding: 0;
}

.calendar_wrap {
  width: 95%;
  margin: 0 auto 4rem;
  padding-bottom: 2rem;
}

.calendar_wrap dt {
  margin-bottom: 2rem;
  padding-top: 3.5rem;
  font-size: 1.8rem;
}

.calendar_wrap dd {
  width: 32.5rem;
  height: 27rem;
}

.product_area .product_img {
  width: calc((100vw - 1rem) / 3);
  margin-right: .5rem;
}

/* ▼ arrow ▼ */
.product_area .slick-arrow:before {
  width: 80%;
  height: 80%;
}

.product_area .slick-next {
  margin: 2rem 1.5rem 0 0;
}

.product_area .slick-prev {
  margin: 2rem 0 0 1.5rem;
}

/* ▲ arrow ▲ */

/* ▼ dots ▼ */
.product_area .slick-dots {
  margin-top: 3rem;
}
/* ▲ dots ▲ */
  
}

@media screen and  (min-width:769px) {
  .only_sp {
    display: none;
  }
}

@media screen and (max-width: 1400px) and (min-width:769px) {
  html {
    font-size: calc(10 * (100vw / 1400));
  }
}