@charset "utf-8";
/* CSS Document */

:root {
  --color-yellow: #fcee21;
  --color-red: #c40018;
}

.factory-tour2025aw {
  font-family: "Noto Sans JP", sans-serif;
  color: #000;
  font-feature-settings: "palt";
}
.factory-tour2025aw img {
  width: 100%;
}
.factory-tour2025aw span {
  font-weight: inherit;
}
.factory-tour2025aw em {
  font-style: normal;
  font-weight: 700;
}
.factory-tour2025aw .container {
  margin: auto;
  max-width: 1200px;
}
.factory-tour2025aw .e-caution {
  display: inline-block;
}
.factory-tour2025aw .b-yellow {
  background: var(--color-yellow);
}
@media screen and (max-width: 768px) {
  .factory-tour2025aw .pc {
    display: none;
  }
  .factory-tour2025aw .e-caution {
    font-size: 2.6667vw;
    line-height: 1.25;
  }
}
@media screen and (min-width: 769px) {
  .factory-tour2025aw .sp {
    display: none;
  }
  .factory-tour2025aw .e-ttl {
    width: 65%;
    margin: auto;
  }
  .factory-tour2025aw .e-caution {
    font-size: min(1.2vw,14px);
    line-height: 1.714;
  letter-spacing: .05em;
  }
}

/* ------------------------------------------

 b-main

------------------------------------------ */

.b-main .container {
  display: flex;
  flex-direction: column-reverse;
}

/* ------------------------------------------

 b-fix

------------------------------------------ */

.b-fixBtn {
  width: 95dvw;
  max-width: 850px;
  position: fixed;
  filter: drop-shadow(0 0 6px rgb(0 0 0 / .3));
  z-index: 100;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .b-fixBtn {
    bottom: 2.5dvw;
  }
}
@media screen and (min-width: 769px) {
  .b-fixBtn {
    bottom: 30px;
  }
}

/* ------------------------------------------

 b-entryBox

------------------------------------------ */

.b-entryBox .b-txt {
  text-align: center;
  font-weight: 900;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .b-entryBox {
    padding: 1vw 0 9vw;
  }
  .b-entryBox .e-ttl {
    padding-top: 5vw;
    margin-bottom: -1vw;
  }
  .b-entryBox .b-btn {
    width: 86.6667%;
    margin: .5em auto 0;
  }
  .b-entryBox,
  .b-entryBox .b-txt {
    font-size: min(6.2667vw);
  }
  .b-entryBox .b-txt .e-shoulder {
    font-size: .766em;
  }
  .b-entryBox.m-01 .container {
    padding-top: 14.5vw;
    margin-top: -5vw;
    background: url(images2025aw/bg-caution-sp.png) center top / contain no-repeat;
  }
  .b-entryBox.m-02 .container {
    background: url(images2025aw/bg-sanka-02-sp.png) center top / contain no-repeat;
  }
  .b-entryBox.m-03 .container {
    background: url(images2025aw/bg-sanka-03-sp.png) center top / contain no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .b-entryBox {
    padding-top: .4em;
  }
  .b-entryBox .container {
    padding: 1em 0 1.8em;
  }
  .b-entryBox,
  .b-entryBox .b-txt {
    font-size: min(3.3vw,40px);
  }
  .b-entryBox .b-txt .e-shoulder {
    font-size: .9em;
  }
  .b-entryBox .b-btn {
    width: 70.8333%;
    margin: .5em auto;
  }
  .b-entryBox.m-01 .container {
    background: url(images2025aw/bg-sanka-01-pc.png) center top / contain no-repeat;
  }
  .b-entryBox.m-02 .container {
    background: url(images2025aw/bg-sanka-02-pc.png) center top / contain no-repeat;
  }
  .b-entryBox.m-03 .container {
    background: url(images2025aw/bg-sanka-03-pc.png) center top / contain no-repeat;
  }
}

/* ------------------------------------------

 b-dateSweets

------------------------------------------ */

.b-dateSweets {
  text-align: center;
  position: relative;
  z-index: 1;
}
.b-dateSweets .b-date .e-txt,
.b-dateSweets .b-date .pc {
  font-weight: 700;
  line-height: 1.825;
  color: #251e1c;
}
@media screen and (max-width: 768px) {
  .b-dateSweets .b-date {
    position: relative;
  }
  .b-dateSweets .b-date .e-txt {
    width: 100%;
    position: absolute;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
    font-size: 3.7333vw;
    line-height: 1.3214;
    margin-top: .5em;
  }
  .b-dateSweets .e-caution {
    width: 86.6667%;
    margin: auto;
    text-align: justify;
  }
  .b-dateSweets .e-caution br {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .b-dateSweets .container {
    margin-top: -3.1em;
    background: url(images2025aw/bg-lead-pc.png) center top / contain no-repeat;
    font-size: min(1.6667vw,20px);
  }
  .b-dateSweets .b-date .e-txt {
    padding-top: 3.8em;
    margin-bottom: 2.5em;
  }
  .b-dateSweets .b-date .e-txt,
  .b-dateSweets .b-date .pc {
    font-size: min(1.6667vw,20px);
  }
  .b-dateSweets .e-caution {
    padding-top: 1.5em;
  }
}

/* ------------------------------------------

 b-notice

------------------------------------------ */

.b-notice .inner {
  background: #fff;
  border-style: solid;
  border-color: var(--color-red);
  border-width: 6px;
  text-align: center;
  line-height: 1.71;
}
.b-notice .e-ttl {
  font-weight: 900;
  color: var(--color-red);
  margin-bottom: .3em;
}
.b-notice em {
  display: inline-block;
  color: var(--color-red);
}
.b-notice .b-bottom {
  background: rgb(196 0 24 /.1);
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .b-notice {
    font-size: 3.4667vw;
    padding-top: 16.3333vw;
    margin-top: -3vw;
    position: relative;
  }
  .b-notice .container {
    position: relative;
    z-index: 3;
  }
  .b-notice .e-bg,
  .b-notice::before,
  .b-notice::after {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
  }
  .b-notice .e-bg {
    height: 50%;
    background: url(images2025aw/bg-sweets-sp.png) center top / contain no-repeat;
    z-index: 2;
  }
  .b-notice::before {
    content: "";
    height: 76.6vw;
    background: var(--color-yellow);
    z-index: -1;
  }
  .b-notice::after {
    content: "";
    aspect-ratio: 750 / 250;
    background: url(images2025aw/obj-ko.png) center top / contain no-repeat;
    top: 76.6vw;
    z-index: 1;
  }
  .b-notice .inner {
    width: 80%;
    margin: auto;
    padding-top: 1.2em;
    border-radius: 4vw;
    position: relative;
    z-index: 1;
  }
  .b-notice .e-ttl {
    font-size: 5.8667vw;
    line-height: 1.1818;
  }
  .b-notice .e-txt {
    padding: 0 2.5em;
  }
  .b-notice em {
    padding: .35em 0;
    font-size: 4.2667vw;
    line-height: 1.328;
  }
  .b-notice .b-bottom {
    padding: .6em 0;
    margin-top: 1em;
    font-size: 3.7333vw;
    line-height: 1.41;
    letter-spacing: -.01em;
  }
}
@media screen and (min-width: 769px) {
  .b-notice {
    margin-top: -10px;
    background-color: var(--color-yellow);
    font-size: min(1.3333vw,16px);
  }
  .b-notice .container {
    padding: 8.5em 0 5.8em;
    background: url(images2025aw/bg-caution-pc.png) center top / contain no-repeat;
  }
  .b-notice .inner {
    width: 58.3333%;
    margin: auto;
    border-width: 4px;
    border-radius: 20px;
    padding-top: 1.7em;
  }
  .b-notice .e-ttl {
    font-size: min(2.5vw,30px);
  }
  .b-notice em {
    padding: .35em 0;
    font-size: min(1.6667vw,20px);
  }
  .b-notice .b-bottom {
    padding: 1em 1em;
    margin-top: 1.5em;
    font-size: min(1.5vw,18px);
  }
}
@media screen and (min-width: 769px) and (max-width: 1200px){
  .b-notice {
    margin-top: 0;
  }
}

/* ------------------------------------------

 b-riyuBox

------------------------------------------ */

.b-riyuBox {
  background: var(--color-yellow);
}
.b-riyuBox .b-ttlBox {
  background: #d4d121;
}
.b-riyuBox .b-panels .e-item {
  filter: drop-shadow(0 4px 4px rgb(0 0 0 / .5));
}
@media screen and (max-width: 768px) {
  .b-riyuBox {
    padding-bottom: 5em;
  }
  .b-riyuBox .b-ttlBox .container {
    background: url(images2025aw/bg-riyu-sp.png) center top / contain no-repeat;
    position: relative;
  }
  .b-riyuBox .b-ttlBox .container::after {
    content: "";
    display: block;
    width: 100%;
    aspect-ratio: 750 / 250;
    background: url(images2025aw/obj-ko-green.png) center top / contain no-repeat;
    position: absolute;
    top: 100%;
    z-index: 1;
  }
  .b-riyuBox .e-ttl {
    padding: 4.3em 0 24vw;
  }
  .b-riyuBox .b-panels {
    width: 86.6667%;
    margin: auto;
    position: relative;
    z-index: 2;
    margin-top: -20vw;
  }
  .b-riyuBox .b-panels .e-item+.e-item {
    margin-top: 10vw;
  }
}
@media screen and (min-width: 769px) {
  .b-riyuBox {
    padding-bottom: 6em;
  }
  .b-riyuBox .b-ttlBox .container {
    background: url(images2025aw/bg-riyu-pc.png) center top / contain no-repeat;
  }
  .b-riyuBox .e-ttl {
    padding: 3em 0;
    margin-bottom: 5em;
  }
  .b-riyuBox .b-panels {
    width: 92%;
    max-width: 1098px;
    margin: auto;
    display: flex;
    justify-content: space-between;
  }
  .b-riyuBox .b-panels .e-item {
    width: 29.5993%;
  }
}

/* ------------------------------------------

 b-commentBox

------------------------------------------ */

.b-commentBox {
  background: rgb(5 109 183 / .3);
}
@media screen and (max-width: 768px) {
  .b-commentBox {
    padding: 8.5vw 0 6vw;
    background-image: url(images2025aw/bg-comment-sp.png);
    background-size: contain;
    background-position: center top;
    background-repeat: no-repeat;
  }
  .b-commentBox .e-ttl {
    margin-bottom: 15.5vw;
    transform: translateX(-2vw);
  }
}
@media screen and (min-width: 769px) {
  .b-commentBox {
    padding: 3.5em 0 4.5em;
  }
}

/* ------------------------------------------

 b-movieBox

------------------------------------------ */

.b-movieBox iframe {
  aspect-ratio: 1200 / 670;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .b-movieBox {
    padding-top: 8vw;
  }
  .b-movieBox .b-ttlBox {
    margin-bottom: .8vw;
  }
}
@media screen and (min-width: 769px) {
  .b-movieBox {
    padding-bottom: 3em;
  }
  .b-movieBox .b-ttlBox {
    padding: 5.3em 0 1em;
    background: url(images2025aw/bg-movie-pc.png) center top / contain no-repeat;
  }
}

/* ------------------------------------------

 b-taikanBox

------------------------------------------ */
.b-taikenBox {
  /* background: var(--color-yellow); */
  background: #f7cf69;
  max-width: 1100px !important;
}
@media screen and (max-width: 768px) {
  .b-taikenBox {
    width: 93.3333%;
    margin-top: 8vw !important;
    margin-bottom: 3vw !important;;
    padding: 8vw 0 7vw;
    border-radius: 5vw;
  }
}
@media screen and (min-width: 769px) {
  .b-taikenBox {
    padding: 3em 0 1.5em;
  }
  .b-taikenBox .b-content {
    width: 86.3636%;
    margin: auto;
  }
}
@media screen and (min-width: 1101px) {
  .b-taikenBox {
    border-radius: 30px;
  }
}

/* ------------------------------------------

 b-fuku

------------------------------------------ */

.b-fukuBox {
  background: rgb(199 178 153 / .3);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .b-fukuBox {
    padding: 9vw 0;
  }
  .b-fukuBox .e-caution {
    width: 88%;
    margin-top: 2em;
    text-align: left;
  }
}
@media screen and (min-width: 769px) {
  .b-fukuBox {
    padding: 3em 0 3.5em;
  }
  .b-fukuBox .b-content {
    max-width: 950px;
    margin: .5em auto 1em;
  }
}