@charset "utf-8";
/* CSS Document */
.fade-target {
  opacity: 0;
  transition: opacity 1s ease;
}
.fade-target.visible {
  opacity: 1;
}
p {
  line-height: 2rem;
  margin: 0;
  color: #727171;
}
img {
  display: block;
  right: auto;
}
picture.topbana {
  max-width: 22%;
  position: absolute;
  right: 50px;
  bottom: 0px;
}
/*title font　ゴシック*/
.tg {
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}
/*title font 明朝*/
.tm {
  font: 400 normal 1.6em "BIZ UDPMincho", serif;
  text-align: center;
  margin-bottom: 50px;
  color: #3e3a39;
}
/*splide*/
.splide__pagination__page.is-active {
  background: #f59797;
}
/* ==== 背景レイヤー ==== */
.bg-layer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  transition: opacity 1s ease;
}
.bg-layer.hidden {
  opacity: 0;
}
.bg-layer.visible {
  opacity: 1;
}
/* ==== セクション ==== */
section#top {
  padding: 45px 0px;
  max-width: 100%;
}
section {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 45px;
  box-sizing: border-box;
  scroll-margin-top: 50px;
}
#lineup {
  scroll-margin-top: 50px;
}
section.w100 {
  max-width: 100%;
  padding-top: 35px;
  padding-bottom: 35px;
}
.kuwashii a {
  display: block;
  width: fit-content;
  margin-inline: auto;
  background-color: #595757;
  color: #FFFFFF;
  padding: 5px 30px;
  border-radius: 50px;
  margin-top: 20px;
  margin-bottom: 20px;
}
.toptxt {
  background-color: #fceaea;
  text-align: center;
  padding: 20px;
  margin-bottom: 50px;
}
#sec0.tm {
  font-size: 2rem;
  text-align: center;
}
#sec0 .linep {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}
.linep div .lineuptitle-l {
  background-color: #e94e73;
  color: #FFFFFF;
  border-radius: 50px;
}
.linep p {
  font-size: 0.8em;
  margin-bottom: 10px;
}
#sec0 .linep > div:nth-child(1) {
  width: 30%;
  text-align: center;
  margin-right: 10px;
}
#sec0 .linep > div:nth-child(2) {
  width: 60%;
  text-align: center;
  margin-left: 10px;
}
.linep div .lineuptitle-r {
  background-color: #004CA1;
  color: #FFFFFF;
  border-radius: 50px;
}
.linep div .lineuptitle-r-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bana .bana-inner {
  position: absolute;
  top: 20px;
  right: 20px;
}
#sec2 .bana .bana-inner {
  position: absolute;
  top: 20px;
  right: 40px;
}
.linep div .lineuptitle-r-inner div {
  width: 50%;
}
.bana {
  position: relative;
}
.bana-inner-a span {
  font-size: 1.4em;
}
.bana-inner-a {
  font-size: 2em;
  margin: 0;
  line-height: 1.5em;
}
.bana-inner-b {
  line-height: 1.5em;
}
#sec1 .bana-inner-a {
  color: #e94e73;
  font-weight: bold;
}
#sec1 .bugaihin {
  position: absolute;
  bottom: 13%;
  right: 15%;
  background-color: #FFFFFF;
  font-weight: bold;
  color: #3E3A3B;
  padding-left: 12px;
  padding-right: 14px;
}
#sec2 .bana-inner-a {
  color: #004ca1;
  font-weight: bold;
}
#sec2 .c-hoshitsu, #sec2 .c-damage {
  position: absolute;
  color: white;
  font-weight: bold;
}
#sec3 .bana .bana-inner-cera {
  position: absolute;
  top: 28%;
  left: 0;
  right: 0;
  width: 100%;
  text-align: center;
}
#sec3 .bana .bana-inner-cera .bana-inner-a {
  font-size: 1em;
  text-align: center;
}
#sec3 .bana .bana-inner-cera .bana-inner-b {
  font-size: 2em;
  font-weight: bold;
  margin-left: 0;
}
section.seras1 {
  margin-top: 50px;
}
/*製品ページ*/
.title {
  text-align: center;
  margin-bottom: 50px;
  margin-top: 40px;
  border-bottom-width: medium;
}
.img100 {
  margin-bottom: 100px;
}
.tm.title {
  border-top: 1px solid #727171;
  border-bottom: 1px solid #727171;
  padding: 16px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  color: #3e3a39;
}
.w80 {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
}
/*育毛ローション*/
.w3 {
  display: flex;
  justify-content: space-between;
  text-align: center;
  width: 70%;
  margin: 0 auto;
}
.w3 div {
  width: 30%;
}
.w3 p {
  font-size: 0.8rem;
  line-height: 1rem;
}
.moukon {
  width: 75%;
  background-color: #f2f2f3;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  margin-bottom: 80px;
}
.moukon p:nth-child(1) {
  font-weight: bold;
  font-size: 1.2em;
}
.seibun {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
.seibun > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
  align-items: center;
}
.seibun > div div:nth-child(1) {
  width: 35%;
}
.seibun > div div:nth-child(2) {
  width: 60%;
}
.seibun > div div:nth-child(2) p {
  font-weight: bold;
  font-size: 1.2em;
}
.seibun > div div:nth-child(2) ul {
  list-style: disc outside; /* 点は外側にしてテキストをそろえる */
  padding-left: 90px; /* 画像+点分の余白 */
}
.seibun > div div:nth-child(2) li {
  font-size: 0.9em;
  position: relative;
  line-height: 1.5em;
}
.seibun > div div:nth-child(2) li::before {
  content: "";
  position: absolute;
  left: -90px;
  top: 10%;
  width: 56px;
  height: 20px;
  background: url(../img/lotion/new.png) no-repeat center;
  background-size: contain;
}
.seibun > div div:nth-child(2) li.bknone::before {
  content: none;
}
.seibun p {
  position: relative;
  padding-left: 70px; /* 画像分の余白を確保 */
  line-height: 1.8;
}
.seibun p::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 56px; /* アイコン幅 */
  height: 20px; /* アイコン高さ */
  background: url("../img/lotion/new.png") no-repeat center;
  background-size: contain;
}
.seibun p.bknone::before {
  content: none;
}
.shirowaku {
  background-color: #FFFFFF;
  color: #727171;
  text-align: center;
  font-weight: normal !important;
  padding: 7px;
  margin-bottom: 20px;
  border-radius: 50px;
}
.no-dot-list {
  list-style: none;
  display: flex; /* 横並び */
  flex-wrap: wrap; /* はみ出したら改行 */
  gap: 8px 16px;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  margin-bottom: 5px;
  padding-bottom: 5px;
}
.no-dot-list li {
  position: relative;
  padding-left: 1.2em; /* ●のスペース */
  white-space: nowrap; /* 折り返さない */
  color: #727171;
  border-bottom-width: 0px;
}
.no-dot-list li::before {
  content: "●";
  position: absolute;
  left: 0;
}
/*.no-dot-list {
  list-style: none;
  padding-left: 0;
  border-bottom: 1px dotted #727171;
  padding-bottom: 25px;
  margin-bottom: 25px;
}
.no-dot-list li {
  position: relative;
  padding-left: 36px; 
  line-height: 2.5em;
  color: #727171;
}
.no-dot-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 26px; 
  height: 26px; 
  background: url("../img/lotion/check.png") no-repeat center;
  background-size: contain;
}*/
.label-container {
  margin: 0 auto 50px;
  width: 90%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.label {
  position: relative;
  z-index: 1;
  display: inline-block;
  color: #fff;
  border-radius: 50px;
  padding: 10px 20px;
  line-height: 1;
  font-size: 1.2em;
  margin-bottom: 6px;
  overflow: hidden;
}
/* 背景用の擬似要素 */
.label::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: #e94e73;
  z-index: -1;
  border-radius: 50px;
  transform: scaleX(0); /* 最初は0 */
  transform-origin: left; /* 左から伸びる */
  transition: transform 0.6s ease;
}
/* 表示されたら伸びる */
.label.animate::before {
  transform: scaleX(1); /* 伸びる */
}
.label-container .top {
  display: flex;
  gap: 8px; /* 左右の間隔 */
  margin-bottom: 6px;
}
.label-container .bottom {
  display: flex; /* 横幅揃えるならflexでOK */
}
.nozuru {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.nozuru img {
  width: 48%;
}
.nozuru p {
  width: 45%;
  color: #727171;
}
section.w100.pink {
  background-color: rgba(233, 78, 115, 0.20);
}
.bk-w-txtpink.tm {
  background-color: rgba(255, 255, 255, 1.00);
  width: 80%;
  margin-inline: auto;
  padding: 10px;
  border-radius: 50px;
  color: #E94E73;
}
.w100 > div {
  max-width: 625px;
  margin-inline: auto;
}
.w100.pink div .howto {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 50px;
}
.w100.pink div .howto p {
  background-color: #E94E73;
  color: #FFFFFF;
  width: fit-content;
  padding-left: 12px;
  padding-right: 12px;
  margin-bottom: 50px;
}
.w100.pink div .howto li {
  position: relative;
  padding-left: 1.2em; /* ドット分の余白 */
  line-height: 2em;
  color: #E94E73;
}
.w100.pink div .howto li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em; /* 行中央にくるよう微調整 */
  width: 0.5em;
  height: 0.5em;
  background: #e94e73; /* 指定カラー */
  border-radius: 50%;
}
.w100.pink div .howto img {
  width: 40%;
}
.w100.pink div .howto div {
  width: 58%;
}
.bk-white {
  text-align: center;
  padding: 16px;
  background-color: #FFFFFF;
}
.bk-white p {
  color: #e94e73;
}
/* ==== cleam ==== */
.txtwakusen {
  border: 1px solid #727171;
  text-align: center;
  width: 90%;
  margin-inline: auto;
  padding: 15px;
  border-radius: 15px;
}
.bk-white p:nth-child(1) {
  font-weight: bold;
}
.milk1 {
  background: linear-gradient(180deg, #d5e6eb, #ffffff);
  padding-top: 40px;
}
.milktitle {
  background: #84B5D4;
  margin-bottom: 100px;
  padding: 20px;
  text-align: center;
  width: 80%;
  margin-inline: auto;
}
.milktitle p {
  color: white;
}
.milk1 section .tg {
  color: #004CA0;
  text-align: center;
  font-weight: bold;
  font-size: 1.6em;
  margin-bottom: 15px;
}
.milk1 section .tg.large {
  font-size: 2em;
  letter-spacing: 10px;
  margin-bottom: 30px;
}
.milk1 section .milk-white-title {
  margin-inline: auto;
  width: fit-content;
  background: white;
  padding: 0 20px;
  font-size: 1.2em;
}
.cleam-img-txt {
  position: relative;
}
.cleam-img-txt p {
  position: absolute;
  top: 64%;
  right: 5%;
  color: #FFFFFF !important;
  font-size: 2em;
}
.p-under {
  margin-bottom: 50px;
  width: 80%;
  margin-inline: auto;
}
.point {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-inline: auto;
  width: fit-content;
  margin-bottom: 35px;
}
.point.gre {
  margin-left: 0;
}
.point .tg.point {
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: auto;
}
.point p:nth-child(1) {
  background-color: #595757;
  width: fit-content;
  color: #FFFFFF;
  padding-left: 10px;
  padding-right: 10px;
}
.point p:nth-child(2) {
  margin-left: 25px;
}
.ulpoint {
  margin-inline: auto;
  text-align: center;
}
.ulpoint li {
  background-color: rgba(0, 76, 161, 0.75);
  color: #FFFFFF;
  margin-bottom: 10px;
  padding: 10px;
  border-radius: 50px;
}
.point2 {
  position: relative;
  margin-bottom: 50px;
}
.point2 p {
  position: absolute;
}
.point2 p:nth-child(2) {
  top: 8%;
  color: rgba(255, 255, 255, 1.00);
  font-size: 2em;
  left: 18%;
}
.point2 p:nth-child(3) {
  top: 22%;
  color: #595757;
  text-align: center;
  left: 23%;
  font-weight: bold;
  font-size: 1.4em;
}
.point2 p:nth-child(4) {
  top: 38%;
  font-size: 0.8em;
  left: 14%;
}
.point2 p:nth-child(5) {
  top: 63%;
  color: #FFFFFF;
  font-size: 2em;
  left: 21%;
}
.point2 p:nth-child(5) span {
  font-size: 13px;
}
.point2 p:nth-child(6) {
  top: 84%;
  font-weight: bold;
  font-size: 1.4em;
  text-align: center;
  left: 15%;
}
.howto2 {
  background-color: rgba(0, 76, 161, 0.10);
  padding-top: 35px;
  padding-bottom: 35px;
  color: #004CA1;
}
.howto2 section .bk-w-txtpink.tm {
  color: #004ca1;
}
.howto2 ul {
  margin-bottom: 50px;
}
.howto2 li {
  position: relative;
  padding-left: 1.2em; /* ドット分の余白 */
  line-height: 2em;
  color: #595757;
}
.howto2 li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em; /* 行中央にくるよう微調整 */
  width: 0.5em;
  height: 0.5em;
  background: #595757; /* 指定カラー */
  border-radius: 50%;
}
.howto2 section .point {}
.howto2 .point div p {
  background-color: #004CA1;
}
.howto2 section .point .tg.point {
  color: #004CA1;
}
.howto2 ul li span {
  display: block;
  color: #004CA1;
  font-size: 0.8em;
}
section .gazou-txt > p {
  color: #004CA1;
  text-align: center;
  margin-bottom: 20px;
  font-weight: bold;
}
.gazou-txt {
  background-color: #FFFFFF;
  padding: 20px;
}
.gazou-txt div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.gazou-txt div img {
  width: 50%;
}
.gazou-txt div p:nth-child(2) {
  width: 43%;
  color: #004ca1;
}
.milk1.cleam .cleam-img-txt p {
  position: absolute;
  top: 54%;
  right: 9%;
  color: #FFFFFF !important;
  font-size: 1.8em;
}
.point2.cleam p:nth-child(2) {
  top: 8%;
  color: rgba(255, 255, 255, 1.00);
  font-size: 2em;
  left: 26%;
}
.point2.cleam p:nth-child(3) {
  top: 25%;
  color: #595757;
  text-align: center;
  left: 23%;
  font-weight: bold;
  font-size: 1.4em;
}
.point2.cleam p:nth-child(4) {
  top: 38%;
  font-size: 0.8em;
  left: 14%;
}
.point2.cleam p:nth-child(5) {
  top: 63%;
  color: #FFFFFF;
  font-size: 2em;
  left: 21%;
}
.point2.cleam p:nth-child(5) span {
  font-size: 13px;
}
.point2.cleam p:nth-child(6) {
  top: 81%;
  font-weight: bold;
  font-size: 1.4em;
  text-align: center;
  left: 15%;
}
.seras1 .tg {
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 15px;
}
.sera2, .sera3 {
  background-color: rgba(188, 226, 230, 0.33);
  padding: 30px 20px;
  margin-bottom: 50px;
}
.seras1 .tg span {
  color: #56BFC8;
}
.sera2 div {
  max-width: 600px;
  width: 100%;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.sera2 div img {
  max-width: 250px;
  margin-right: 5%;
  width: 30%;
}
.sera2 div p {
  width: 61%;
}
.sera3 div {
  max-width: 600px;
  width: 100%;
  margin-inline: auto;
}
.sera3 .first {
  margin-bottom: 30px
}
.sera3 div .sera3zu {
  position: relative;
  display: inline-block; /* 画像サイズに合わせる */
  text-align: center; /* 下の横文字用 */
}
.sera3zu img {
  display: block;
  max-width: 100%;
  height: auto;
}
.sera3zu .tate {
  position: absolute;
  left: 1.5%;
  top: 45%;
  transform: translateY(-80%);
  writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 16px;
  padding: 4px;
}
.sera3zu .yoko {
  margin-top: 8px; /* 画像の下に余白 */
  font-size: 14px;
  position: absolute;
  bottom: 8%;
  width: 79%;
  right: 6%;
}
/* ==== フッター ==== */
footer {
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
  padding: 20px;
  background: #fff;
}
footer #footer_logo {
  width: 219px;
  height: 19px;
  margin: 0 auto 20px;
}
footer #footer_logo a {
  display: block;
  width: 219px;
  height: 19px;
  background: url(../img/footer_logo.png) no-repeat center;
  background-size: 219px 19px;
}
footer #footer_logo span {
  display: none;
}
footer #copyright {
  color: #595757;
  text-align: center;
  font-family: 'Alegreya Sans', sans-serif;
  font-size: 10px;
  letter-spacing: 2px;
}
/* ==== media ==== */
@media (min-width:751px) {
  .sp {
    display: none;
  }
  .site-header {
    max-width: 1200px;
  }
  section#top {
    padding: 44px 0px;
    max-width: 1200px;
    background: none;
  }
  .ulpoint {
    width: 70%;
  }
  #sec2 .c-hoshitsu {
    font-size: 0.8em;
    text-align: center;
    position: absolute;
    left: 38%;
    top: 62%;
    display: inline-block;
    inline-size: 3em;
    word-break: break-all;
    white-space: normal;
    line-height: 20px;
    letter-spacing: 2px;
  }
  #sec2 .c-damage {
    font-size: 0.8em;
    text-align: center;
    left: 6.5%;
    top: 62%;
    display: inline-block;
    inline-size: 4em; /* だいたい「ダメージ」の文字幅ぶん */
    word-break: break-all;
    white-space: normal;
    line-height: 20px;
  }
  .sera2 div {
    max-width: 60%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: fit-content;
  }
}
@media (max-width:750px) {
  picture.topbana {
    max-width: 40%;
    position: absolute;
    right: 0;
    bottom: 0px;
  }
  .kuwashii a {
    margin-top: 20px;
    margin-bottom: 20px;
  }
  section#sec1, section#sec2 {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 20px;
  }
  .op {
    display: none;
  }
  .linep div .lineuptitle-r, .linep div .lineuptitle-l {
    font-size: 0.8em;
  }
  .img100.pink {
    width: 100vw;
    left: -10px;
    position: relative;
  }
  .tm.title {
    border-top: 1px solid #727171;
    border-bottom: 1px solid #727171;
    padding: 16px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    color: #3e3a39;
    font-size: 5vw;
  }
  .seibun {
    width: 90%;
  }
  .seibun > div {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 50px;
    align-items: center;
  }
  .seibun > div div:nth-child(1) {
    width: 25%;
  }
  .seibun > div div:nth-child(2) {
    width: 73%;
  }
  .seibun > div div:nth-child(2) li {
    font-size: 0.8em;
    line-height: 1.7em;
  }
  .moukon {
    width: 90%;
    background-color: #f2f2f3;
    margin-left: auto;
    margin-right: auto;
    padding: 20px;
    margin-bottom: 20px;
  }
  .moukon p:nth-child(1) {
    font-weight: bold;
    font-size: 3.5vw;
  }
  p.shirowaku.title {
    margin-top: 10px;
  }
  /*  .no-dot-list li {
    position: relative;
    padding-left: 36px; 
    line-height: 2.5em;
    color: #727171;
    font-size: 4vw;
  }*/
  .nozuru {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .label {
    display: inline-block;
    /*background-color: #e94e73; */
    color: #fff;
    border-radius: 50px;
    padding: 10px 20px;
    line-height: 1;
    margin-bottom: 6px; /* 下段との間隔 */
    font-size: inherit;
  }
  .cleam-img-txt p {
    position: absolute;
    top: 64%;
    right: 5%;
    color: #FFFFFF !important;
    font-size: 4vw !important;
    line-height: 140%;
  }
  .point2 p:nth-child(2) {
    top: 7%;
    color: rgba(255, 255, 255, 1.00);
    font-size: 6vw;
    left: 12%;
  }
  .point2 p:nth-child(3) {
    top: 22%;
    color: #595757;
    text-align: center;
    left: 23%;
    font-weight: bold;
    font-size: 3vw;
    line-height: 1.5em;
  }
  .point2 p:nth-child(4) {
    top: 36%;
    font-size: 2vw;
    left: 15%;
  }
  .point2 p:nth-child(5) {
    top: 63.5%;
    color: #FFFFFF;
    font-size: 6vw;
    left: 12%;
    margin-bottom: 0px;
    line-height: 20px;
  }
  .point2 p:nth-child(5) span {
    font-size: 3vw;
  }
  .point2 p:nth-child(6) {
    top: 81%;
    font-weight: bold;
    font-size: 4vw;
    text-align: center;
    left: 10%;
    line-height: 27px;
  }
  .point2.cleam p:nth-child(2) {
    top: 6%;
    color: rgba(255, 255, 255, 1.00);
    font-size: 6vw;
    left: 12%;
  }
  .point2.cleam p:nth-child(3) {
    top: 24%;
    color: #595757;
    text-align: center;
    left: 6%;
    font-weight: bold;
    font-size: 1.1em;
  }
  .point2.cleam p:nth-child(4) {
    top: 38%;
    font-size: 0.8em;
    left: 14%;
  }
  .point2.cleam p:nth-child(5) {
    top: 64%;
    color: #FFFFFF;
    font-size: 6vw;
    left: 12%;
    line-height: 20px;
  }
  .point2.cleam p:nth-child(5) span {
    font-size: 13px;
  }
  .point2.cleam p:nth-child(6) {
    top: 81%;
    font-weight: bold;
    font-size: 1.1em;
    text-align: center;
    left: 7%;
  }
  .ulpoint {
    width: 75%;
  }
  .howto2 ul {
    width: 80%;
    margin-inline: auto;
  }
  section .point > div {
    font-size: medium;
  }
  section .point > div p {
    font-size: 3vw;
  }
  section .point .tg.point {
    width: fit-content;
    font-size: 4vw;
    margin: 0;
    padding: 0;
    line-height: 1.5em;
    margin-left: 10px;
  }
  .milk1 section .milk-white-title {
    font-size: 1em;
  }
  .sera3zu .yoko {
    margin-top: 8px; /* 画像の下に余白 */
    font-size: 2.5vw;
    position: absolute;
    bottom: 10px;
    width: 79%;
    right: 6%;
  }
  footer #copyright {
    color: #595757;
    text-align: center;
    font: 3vw 'Alegreya Sans', sans-serif;
    letter-spacing: 2px;
  }
  #sec2 .c-hoshitsu {
    font-size: 2.5vw;
    text-align: center;
    position: absolute;
    left: 39%;
    top: 63%;
    display: inline-block; /* 幅指定を効かせるため */
    inline-size: 2em; /* 全角2文字ぶんの横幅 */
    word-break: break-all; /* どこでも改行OK（CJK向け） */
    white-space: normal; /* 通常の折り返し */
    line-height: 1.2; /* お好みで */
  }
  #sec2 .c-damage {
    font-size: 2.5vw;
    text-align: center;
    left: 5.4%;
    top: 63%;
    display: inline-block;
    inline-size: 4em; /* だいたい「ダメージ」の文字幅ぶん */
    word-break: break-all;
    white-space: normal;
    line-height: 13px;
  }
  .tennen {
    font-size: 3vw;
  }
  .linep p {
    font-size: 2.2vw;
    margin-bottom: 10px;
  }
  .sera2 div {
    max-width: 90%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .sera2 div p {
    font-size: 4vw;
    width: fit-content;
  }
}
@media (max-width:610px) {
  .bana-inner-a {
    font-size: 5.5vw;
  }
  .bana-inner-b {
    font-size: 2.5vw;
    margin-top: 7px;
    margin-left: 20px;
  }
  .w100.pink div .howto p {
    background-color: #E94E73;
    color: #FFFFFF;
    width: fit-content;
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 9px;
  }
  .w100.pink div .howto li {
    position: relative;
    padding-left: 1.2em; /* ドット分の余白 */
    line-height: 1.6em;
    color: #E94E73;
    font-size: 4vw;
  }
  #sec1 .bugaihin {
    position: absolute;
    bottom: 10%;
    right: 15%;
    background-color: #FFFFFF;
    font-weight: bold;
    color: #3E3A3B;
    padding-left: 12px;
    padding-right: 14px;
  }
}