.header {
  background-color: #ffffff;
}

[id="mct"] {
  position: relative;
}

[id="mct"] .sec_kv {
  position: fixed;
  width: 100%;
  height: 155.2vw;
  top: 0;
  left: 0;
  background-image: url("../img/img_hero_sp.jpg");
  background-size: 100% auto;
  background-position: top center;
  background-repeat: no-repeat;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_kv {
    height: 49.7395833333vw;
    background-image: url("../img/img_hero.jpg");
    background-size: cover;
  }
}

[id="mct"] .sec_kv .kv_title {
  font-size: 0;
  color: transparent;
}

[id="mct"] .sec_concept {
  position: relative;
  padding: 16vw 0 0;
  margin-top: 155vw;
  height: 276vw;
  z-index: 5;
  background-image: url("../img/bg_concept_sp.jpg");
  background-size: cover;
  font-weight: bold;
  color: #006241;
  overflow-x: hidden;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept {
    padding: 7.3958333333vw 0 0;
    margin-top: 49.7395833333vw;
    height: 64.5833333333vw;
    background-image: url("../img/bg_concept.jpg");
  }
}

[id="mct"] .sec_concept .run {
  opacity: 1;
  animation: fadeInUp 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_concept .concept_inner {
  padding: 0 0 0 8vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_inner {
    margin: 0 auto;
    padding: 0 1.5625vw 0 5vw;
    width: 66.6666666667vw;
  }
}

[id="mct"] .sec_concept .concept_inner:before,
[id="mct"] .sec_concept .concept_inner:after {
  content: "";
  display: block;
  position: absolute;
}

[id="mct"] .sec_concept .concept_inner:before {
  top: 15.06666vw;
  right: -3.066666vw;
  width: 57.3333333333vw;
  height: 82.5333333333vw;
  background: url("../img/img_concept_black.png") 0 0 no-repeat;
  background-size: contain;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_inner:before {
    top: 2.0833333333vw;
    right: 18.0208333333vw;
    width: 24.8958333333vw;
    height: 32.7604166666vw;
    background: url("../img/img_concept_black.png") 0 0 no-repeat;
    background-size: contain;
  }
}

[id="mct"] .sec_concept .concept_inner:after {
  bottom: 0;
  left: -2.26666666vw;
  width: 73.4666666666vw;
  height: 83.2vw;
  background: url("../img/img_concept_latte_sp.png") 0 0 no-repeat;
  background-size: contain;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_inner:after {
    bottom: 5.5625vw;
    left: 16.8229166666vw;
    width: 29.6354166666vw;
    height: 26.3020833333vw;
    background: url("../img/img_concept_latte.png") 0 0 no-repeat;
    background-size: contain;
  }
}

[id="mct"] .sec_concept .concept_ttl {
  opacity: 0;
  font-size: 4vw;
  line-height: 1.6;
  letter-spacing: 0.19em;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_ttl {
    font-size: 1.5625vw;
  }
}

[id="mct"] .sec_concept .concept_ttl .fz_bigger {
  display: inline-block;
  padding: 0 0 3.3333333333vw;
  font-size: 8.9333333333vw;
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: 0;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_ttl .fz_bigger {
    padding: 0 0 1.0416666667vw;
    font-size: 2.3958333333vw;
  }
}

[id="mct"] .sec_concept .concept_copy {
  opacity: 0;
  padding: 33.733333vw 0 0;
  font-size: 3.4666666667vw;
  line-height: 2.1538461538;
  letter-spacing: 0.17em;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_copy {
    padding: 2.6041666667vw 0 0;
    font-size: 1.25vw;
    line-height: 2.1666666667;
  }
}

[id="mct"] .sec_concept .concept_copy2 {
  opacity: 0;
  padding: 7.3333333333vw 0 0;
  font-size: 3.4666666667vw;
  line-height: 2.1538461538;
  letter-spacing: 0.17em;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_copy2 {
    padding: 12.5vw 0 0;
    font-size: 1.25vw;
    line-height: 2.1666666667;
    text-align: right;
  }
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_concept .concept_copy2 span {
    display: inline-block;
    text-align: left;
  }
}

[id="mct"] .sec_item {
  position: relative;
  z-index: 6;
  padding: 110.1333333333vw 0 0;
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  color: #fff;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item {
    padding: 8.8541666666vw 0 0;
  }
}

[id="mct"] .sec_item .run {
  opacity: 1;
  animation: fadeInUp 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_item .item_inner {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_inner {
    width: 66.6666666667vw;
  }
}

[id="mct"] .sec_item .item_name_img {
  position: relative;
  opacity: 0;
  text-align: left;
  padding: 0 5.3333333333vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_name_img {
    padding: 0;
  }
}

[id="mct"] .sec_item .item_name_img img {
  display: inline-block;
}

[id="mct"] .sec_item .item_name_img span {
  display: block;
  padding: 4.2666666666vw 0 0;
  font-size: 6.4vw;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_name_img span {
    padding: 1.5416666667vw 0 0;
    font-size: 2.3958333333vw;
  }
}

[id="mct"] .sec_item .item_name {
  opacity: 0;
  padding: 6.4vw 5.3333333333vw 0;
  font-size: 5.0666666667vw;
  line-height: 1.4210526316;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_name {
    padding: 2.0833333333vw 0 0;
    font-size: 1.7708333333vw;
    line-height: 1.5882352941;
  }
}

[id="mct"] .sec_item .item_nameen {
  opacity: 0;
  padding: 4.1333333333vw 5.3333333333vw 0;
  font-size: 3.4666666667vw;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_nameen {
    padding: 1.0416666667vw 0 0;
    font-size: 1.1458333333vw;
  }
}

[id="mct"] .sec_item .item_info {
  opacity: 0;
  padding: 4.2666666666vw 5.3333333333vw 0;
  font-size: 4vw;
  line-height: 1.9333333333;
  letter-spacing: -0.02em;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_info {
    padding: 1.71875vw 0 0;
    width: 29.341667vw;
    font-size: 1.0416666667vw;
    line-height: 1.9;
    letter-spacing: 0.02em;
  }
}

[id="mct"] .sec_item .item_chart {
  padding: 4.2666666666vw 6.1333333333vw 0;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_chart {
    display: none;
  }
}

[id="mct"] .sec_item .item_link {
  position: relative;
  display: block;
  opacity: 0;
  margin: 5.3333333333vw 6.1333333333vw 0;
  padding-left: 2.6666666667vw;
  font-size: 3.2vw;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_link {
    margin: 2.34375vw 0;
    padding-left: 1.3020833333vw;
    font-size: 1.0416666667vw;
  }
}

[id="mct"] .sec_item .item_link:before {
  content: "";
  display: block;
  position: absolute;
  top: 30%;
  left: 0;
  width: 1.8666666667vw;
  height: 1.8666666667vw;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform-origin: center 0;
  transform: rotate(45deg);
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_link:before {
    width: 0.78125vw;
    height: 0.78125vw;
  }
}

[id="mct"] .sec_item .item_caution {
  padding: 0 6.1333333333vw;
  opacity: 0;
  font-size: 2.4vw;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item .item_caution {
    padding: 0;
    font-size: 0.9375vw;
    line-height: 1.5;
  }
}

[id="mct"] .sec_item.item1 {
  height: 279.4666666666vw;
  background-image: url("../img/bg_section_black_sp.jpg");
  background-size: cover;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item.item1 {
    height: 51.6145833333vw;
    background-image: url("../img/bg_section_black.jpg");
    background-size: cover;
  }
}

[id="mct"] .sec_item.item1 .item_name_img img {
  width: 48.1333333333vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item.item1 .item_name_img img {
    width: 18.8020833333vw;
  }
}

[id="mct"] .sec_item.item2 {
  padding-top: 107.2vw;
  height: 297.3333333333vw;
  background-image: url("../img/bg_section_latte_sp.jpg");
  background-size: cover;
  color: #fff;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item.item2 {
    padding: 6.8229166667vw 0 0;
    height: 51.6145833333vw;
    background-image: url("../img/bg_section_latte.jpg");
    background-size: cover;
  }
}

[id="mct"] .sec_item.item2 .item_name_img img {
  width: 44.1333333333vw;
}

[id="mct"] .sec_item.item2 .item_info {
  letter-spacing: 0.045em;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item.item2 .item_name_img img {
    width: 17.2395833333vw;
  }
}

[id="mct"] .sec_item_modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  pointer-events: none;
  transition: all ease-in-out 0.8s;
}

[id="mct"] .sec_item_modal.-js-modal-show {
  opacity: 1;
  pointer-events: auto;
}

[id="mct"] .sec_item_modal.-js-modal-show .item_modal_bg {
  cursor: pointer;
}

[id="mct"] .sec_item_modal.-js-modal-show .item_modal_close {
  cursor: pointer;
}

[id="mct"] .sec_item_modal .item_modal_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(154, 154, 154, 0.74);
}

[id="mct"] .sec_item_modal .item_modal_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  background: #fff;
  transform: translate(-50%, -50%);
  padding: 13.3333333333vw 6.6666666667vw 10.6666666667vw;
  width: 100%;
  max-height: 90svh;
  overflow-y: auto;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5.2083333333vw 5.2083333333vw;
    max-height: 90svh;
    width: auto;
    border: 1px solid #090204;
  }
}

[id="mct"] .sec_item_modal .item_modal_inner h2 {
  position: relative;
  padding: 0 0 4vw;
  font-size: 4.5333333333vw;
  line-height: 1.5588235294;
  font-weight: 900;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner h2 {
    display: inline-block;
    padding: 1.3541666666vw 0;
    min-width: 21.1458333333vw;
    font-size: 1.25vw;
    line-height: 1.6666666667;
  }
}

[id="mct"] .sec_item_modal .item_modal_inner h2:before,
[id="mct"] .sec_item_modal .item_modal_inner h2:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background: #002620;
}

[id="mct"] .sec_item_modal .item_modal_inner h2:before {
  top: 0;
  display: none;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner h2:before {
    display: block;
  }
}

[id="mct"] .sec_item_modal .item_modal_inner h2:after {
  bottom: 0;
}

[id="mct"] .sec_item_modal .item_modal_inner h2 span {
  display: inline-block;
  padding: 2.6666666667vw 0 0;
  font-size: 3.7333333333vw;
  line-height: 1.75;
  font-weight: normal;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner h2 span {
    padding: 1.3020833333vw 0 0;
    font-size: 1.0416666667vw;
    line-height: 1.5;
  }
}

[id="mct"] .sec_item_modal .item_modal_inner .item_modal_detail {
  margin-top: 5.3333333333vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner .item_modal_detail {
    margin-top: 0;
    margin-left: 8.2291666666vw;
    width: 19.7916666667vw;
  }
}

[id="mct"] .sec_item_modal .item_modal_inner dl {
  display: flex;
  flex-wrap: wrap;
  font-size: 3.7333333333vw;
  line-height: 1.9642857143;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner dl {
    font-size: 0.7291666667vw;
    line-height: 2.2857142857;
  }
}

[id="mct"] .sec_item_modal .item_modal_inner dl dt {
  width: 33.33%;
}

[id="mct"] .sec_item_modal .item_modal_inner dl dd {
  width: 66.67%;
}

[id="mct"] .sec_item_modal .item_modal_inner p {
  margin-top: 8.5333333333vw;
  font-size: 2.933333333vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_inner p {
    margin-top: 2.0833333333vw;
    font-size: 0.7291666667vw;
  }
}

[id="mct"] .sec_item_modal .item_modal_close {
  position: absolute;
  top: 4vw;
  right: 4vw;
  width: 6.6666666667vw;
  height: 6.6666666667vw;
  background: #090204;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_close {
    top: 1.0416666667vw;
    right: 1.0416666667vw;
    width: 2.0833333333vw;
    height: 2.0833333333vw;
  }
}

[id="mct"] .sec_item_modal .item_modal_close:before,
[id="mct"] .sec_item_modal .item_modal_close:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.2666666667vw;
  height: 3.3333333333vw;
  background: #fff;
  transform-origin: center center;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_item_modal .item_modal_close:before,
  [id="mct"] .sec_item_modal .item_modal_close:after {
    width: 0.1041666667vw;
    height: 1.0416666667vw;
  }
}

[id="mct"] .sec_item_modal .item_modal_close:before {
  transform: translate(-50%, -50%) rotate(45deg);
}

[id="mct"] .sec_item_modal .item_modal_close:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

[id="mct"] .sec_campaign {
  position: relative;
  z-index: 5;
  padding: 9.6vw 0 0;
  background: #fff url("../img/img_mct_campaign_egift_202505_sp.png") center
    center no-repeat;
  background-size: cover;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign {
    padding: 3.4895833333vw 0 0;
    background: #fff url("../img/img_mct_campaign_egift_202505_pc.png") center
      center no-repeat;
    background-size: cover;
  }
}

[id="mct"] .sec_campaign .animation {
  opacity: 0;
}

[id="mct"] .sec_campaign .animation.run {
  opacity: 1;
  animation: fadeInUp 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_campaign .animation.run.center {
  opacity: 1;
  animation: fadeInUpCenter 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_campaign_inner {
  position: relative;
  margin: 0 auto;
  padding: 0 0 15.3333333333vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign_inner {
    padding: 0 0 9.375vw 0;
    width: 100%;
  }
}

[id="mct"] .sec_campaign_ttl {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  width: 73.6vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign_ttl {
    margin: 0 auto;
    width: 42.5520833333vw;
  }
}

[id="mct"] .sec_campaign_ttl img {
  display: inline-block;
  width: 73.6vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign_ttl img {
    width: 42.5520833333vw;
  }
}

[id="mct"] .sec_campaign_copy {
  position: relative;
  z-index: 2;
  text-align: center;
  color: #006241;
  padding: 4.6666666667vw 0 0;
  font-weight: 700;
  font-size: 3.7333333333vw;
  line-height: 1.7857142857;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign_copy {
    padding: 2.0833333333vw 0 0;
    font-size: 1.25vw;
    line-height: 1.9166666667;
    letter-spacing: 0.01em;
  }
}

[id="mct"] .sec_campaign_img {
  position: absolute;
  top: 22.1333333333vw;
  width: 100%;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign_img {
    top: 0;
    right: 0;
    width: 38.6979166667vw;
  }
}

[id="mct"] .sec_campaign_link {
  position: relative;
  z-index: 2;
  display: block;
  left: 50%;
  color: #fff;
  background-color: #1e3932;
  text-align: center;
  margin: 9.0666666667vw 0 0;
  width: 53.3333333333vw;
  padding: 3.2vw 0;
  border-radius: 4.2666666667vw;
  font-size: 4.2666666667vw;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_campaign_link {
    position: absolute;
    bottom: 3.5416666667vw;
    margin: 0 auto;
    padding: 1.0416666667vw 0;
    width: 17.4479166667vw;
    border-radius: 1.3020833333vw;
    font-size: 1.3541666667vw;
    transform: translateX(-50%);
  }
}

[id="mct"] .sec_ecoleaf {
  position: relative;
  padding: 13.3333333333vw 0 20vw;
  background-color: #d0e6e0;
  z-index: 5;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_ecoleaf {
    padding: 4.1666666667vw 0 6.25vw;
  }
}

@media screen and (min-width: 1920px) {
  [id="mct"] .sec_ecoleaf {
    padding: 80px 0 120px;
  }
}

[id="mct"] .sec_ecoleaf .ecoleaf_lead {
  width: 86.6666666667vw;
  max-width: 650px;
  margin: 0 auto 0;
  font-weight: 500;
  font-size: 4vw;
  line-height: 1.5;
  color: #065c40;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_lead {
    width: 96%;
    max-width: none;
    font-size: 1.25vw;
    text-align: center;
  }
}

@media screen and (min-width: 1920px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_lead {
    font-size: 2.4rem;
  }
}

[id="mct"] .sec_ecoleaf .ecoleaf_lead.run {
  opacity: 1;
  animation: fadeInUp 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_ecoleaf .ecoleaf_info {
  display: flex;
  flex-direction: column;
  width: 86.6666666667vw;
  max-width: 650px;
  margin: 6.4vw auto 0;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_info {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: 58.3333333333vw;
    max-width: 1120px;
    margin-top: 3.6458333333vw;
  }
}

@media screen and (min-width: 1920px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_info {
    width: 100%;
    margin-top: 70px;
  }
}

[id="mct"] .sec_ecoleaf .ecoleaf_link {
  display: block;
  width: 61.3333333333vw;
  margin: 0 auto 0;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_link {
    width: 37.77%;
    margin: 3.3854166667vw 0 0;
  }
}

@media screen and (min-width: 1920px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_link {
    margin: 65px 0 0;
  }
}

[id="mct"] .sec_ecoleaf .ecoleaf_link.run {
  opacity: 1;
  animation: fadeInUp 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_ecoleaf .ecoleaf_text {
  margin-top: 6.9333333333vw;
  font-weight: 500;
  font-size: 3.7333333333vw;
  line-height: 1.75;
  color: #065c40;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_text {
    width: 56.875%;
    margin-top: 0;
    font-size: 0.9375vw;
  }
}

@media screen and (min-width: 1920px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_text {
    font-size: 1.8rem;
  }
}

[id="mct"] .sec_ecoleaf .ecoleaf_text.run {
  opacity: 1;
  animation: fadeInUp 0.8s ease-in-out 0s 1 both;
}

[id="mct"] .sec_ecoleaf .ecoleaf_labellink {
  text-decoration: none;
}

[id="mct"] .sec_ecoleaf .ecoleaf_labellink.hover {
  text-decoration: underline;
}

[id="mct"] .sec_ecoleaf .ecoleaf_steellink {
  text-decoration: underline;
}

[id="mct"] .sec_ecoleaf .ecoleaf_steellink.hover {
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_steellink {
    font-weight: bold;
    font-size: 1.0416666667vw;
  }
}

@media screen and (min-width: 1920px) {
  [id="mct"] .sec_ecoleaf .ecoleaf_steellink {
    font-size: 2rem;
  }
}
