/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%
}

body {
  margin: 0
}

main {
  display: block
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  -moz-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

img {
  border-style: none
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0
}

button,
input {
  overflow: visible
}

button,
select {
  text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

details {
  display: block
}

summary {
  display: list-item
}

template {
  display: none
}

[hidden] {
  display: none
}

/*!///////////////////////////////////////////*/
/*!//////////// ↓↓↓reset↓↓↓ ////////////*/
/*!///////////////////////////////////////////*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl {
  margin: 0;
  color: #000;
}

a {
  text-decoration: none;
}

ul,
ol {
  padding-left: 0;
  list-style-type: none;
}

dd {
  margin-left: 0;
}

p {
  font-size: 14px;
  line-height: 1.75;
}

@media screen and (min-width: 768px) {
  p {
    font-size: 16px;
  }
}

button {
  border: 0;
}

/*!///////////////////////////////////////////*/
/*!//////////// ↑↑↑reset↑↑↑ ////////////*/
/*!///////////////////////////////////////////*/


/*!////////////////////////////////////////////*/
/*!//////////// ↓↓↓common↓↓↓ ////////////*/
/*!////////////////////////////////////////////*/
body {
  /* 角ゴ ProN は W3/W6 のみ。W8 は「ヒラギノ角ゴシック」(Hiragino Sans) 側 */
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  background-color: #000;
  color: #251e1c;
}

@media screen and (max-width: 767px) {
  .sp-none {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .pc-none {
    display: none !important;
  }
}

.hidden {
  display: none !important;
}

.image {
  display: block;
  width: 100%;
}

.wrapper {
  position: relative;
  overflow: clip;
}

/* overflowは適宜hiddenに変更 */
.container {
  position: relative;
  width: 100%;
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

body * {
  min-height: 0vw;
}

/* clamp用 */

a {
  transition: .3s;
}

a * {
  pointer-events: none;
  transition: .3s;
}

/* サイト計測用 */

img,
svg {
  width: 100%;
  height: auto;
  object-fit: contain;
}

section {
  position: relative;
}

h2 {
  text-align: center;
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

summary {
  cursor: pointer;
  list-style: none;
}

summary::-webkit-details-marker {
  display: none;
}

/*!////////////////////////////////////////////*/
/*!//////////// ↑↑↑common↑↑↑ ////////////*/
/*!////////////////////////////////////////////*/

/*!////////////////////////////////////////////*/
/*!//////////// ↓↓↓lp↓↓↓ ////////////*/
/*!////////////////////////////////////////////*/

/* macOS/iOS のヒラギノ角ゴシックをウェイト指定で呼び出す。
   Windows にはヒラギノが無いため local() は失敗し、Noto Sans JP にフォールバックする */
@font-face {
  font-family: "Hiragino Sans";
  src: local("Hiragino Sans W3"), local("HiraginoSans-W3"), local("ヒラギノ角ゴシック W3"), local("HiraKakuProN-W3");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Hiragino Sans";
  src: local("Hiragino Sans W4"), local("HiraginoSans-W4"), local("ヒラギノ角ゴシック W4");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Hiragino Sans";
  src: local("Hiragino Sans W6"), local("HiraginoSans-W6"), local("ヒラギノ角ゴシック W6"), local("HiraKakuProN-W6");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Hiragino Sans";
  src: local("Hiragino Sans W8"), local("HiraginoSans-W8"), local("ヒラギノ角ゴシック W8");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Hiragino Sans";
  src: local("Hiragino Sans W8"), local("HiraginoSans-W8"), local("ヒラギノ角ゴシック W8");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

.lp {
  width: 100%;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  container-type: inline-size;
  container-name: lp;
  overflow: clip;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-synthesis: none;
}

.lp p {
  font-size: calc(15 / 375 * 100cqw);
  line-height: 1.75;
  color: inherit;
}

.inner {
  position: relative;
  width: calc(335 / 375 * 100%);
  margin-left: auto;
  margin-right: auto;
}

main {
  background-color: #00b3d6;
}

/* ---------- FV ---------- */
.fv {
  width: 100%;
}

.fv__title {
  margin: 0;
  font-size: 0;
  line-height: 0;
}

.fv img {
  width: 100%;
  height: auto;
  display: block;

}

/* ---------- イントロ（青背景） ---------- */
.intro {
  background-color: #00b3d6;
  padding-bottom: calc(70 / 375 * 100cqw);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 375 21.5"><path fill="%23ffffff" d="M186.37,10.75C61.08,34.94,0,10.75,0,10.75v10.75h375v-10.75s-63.34-24.19-188.63,0Z"/></svg>');
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center calc(100% + calc(1 / 375 * 100cqw));
}

.period {
  text-align: center;
  margin-bottom: calc(20 / 375 * 100cqw);
}

.period__label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: calc(32 / 375 * 100cqw);
  background-color: #0077a8;
  color: #fff;
  font-size: calc(15 / 375 * 100cqw);
  font-weight: 700;
  letter-spacing: 0.6em;
  text-indent: 0.6em;
}

.period__date {
  margin-top: calc(10 / 375 * 100cqw);
  color: #251e1c;
  background-color: #fff;
  font-size: calc(16 / 375 * 100cqw);
  font-weight: 700;
  line-height: 1.6;
  padding: calc(6 / 375 * 100cqw) calc(8 / 375 * 100cqw);
}

.present {
  width: 100%;
  margin: calc(12 / 375 * 100cqw) auto calc(18 / 375 * 100cqw);
  font-size: 0;
  line-height: 0;
}

.present img {
  width: 100%;
  height: auto;
  display: block;
}

.lp p.lead {
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: calc(15 / 375 * 100cqw);
  line-height: 1.9;
  letter-spacing: -0.08em;
  margin-bottom: calc(28 / 375 * 100cqw);
}

.lead__line {
  display: block;
}

.lead__line--bar {
  text-decoration: underline;
  text-underline-offset: -.2em;
  text-decoration-thickness: .5em;
  text-decoration-color: #269ca8;
  text-decoration-skip-ink: none;
}

.lead__em {
  color: #ffff00;
  font-size: calc(19 / 375 * 100cqw);
}

/* ---------- アコーディオン共通 ---------- */
.acc {
  width: 100%;
  border-radius: 8px;
  overflow: clip;
}

.acc__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(8 / 375 * 100cqw);
  cursor: pointer;
  list-style: none;
  position: relative;
  min-height: calc(73 / 375 * 100cqw);
}

.acc__summary::-webkit-details-marker {
  display: none;
}

.acc__summary-text {
  display: block;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -.08em;
}

.acc__summary-text span {
  font-size: 1.38em;
}

.acc__summary-text small {
  display: block;
  font-size: 0.95em;
  font-weight: 700;
  margin-top: calc(4 / 375 * 100cqw);
}

.acc__summary::after {
  content: "";
  position: absolute;
  right: .8em;
  top: 50%;
  transform: translateY(-50%) rotate3d(-1, 0, 0, -180deg);
  flex-shrink: 0;
  width: calc(34.7938 / 375 * 100cqw);
  height: calc(16.3037 / 375 * 100cqw);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 34.79 16.3"><path fill="%23251e1c" d="M33.33,16.3c-.33,0-.66-.11-.94-.34L17.4,3.36,2.4,15.96c-.62.52-1.54.44-2.05-.18-.52-.62-.44-1.54.18-2.05L16.46.34c.54-.46,1.33-.46,1.88,0l15.94,13.39c.62.52.7,1.44.18,2.05-.29.34-.7.52-1.12.52Z"/></svg>');
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  transition: .3s;
}

.acc[open] .acc__summary::after {
  transform: translateY(-50%) rotate3d(-1, 0, 0, 0deg);
}

.acc--about .acc__summary {
  background-color: #fff;
  color: #251e1c;
  border-radius: calc(8 / 375 * 100cqw) calc(8 / 375 * 100cqw) 0 0;
  padding: calc(16 / 375 * 100cqw) calc(10 / 375 * 100cqw) calc(20 / 375 * 100cqw);
  font-size: calc(16 / 375 * 100cqw);
}

.acc--about:not([open]) .acc__summary {
  border-radius: calc(8 / 375 * 100cqw);
}

.acc:not([open]) .acc__summary::before {
  content: none;
  transform: translateY(100%);
}

.acc__summary::before {
  content: "";
  position: absolute;
  left: calc(28 / 375 * 100cqw);
  top: calc(100% - 1px);
  transform: translateY(0);
  width: calc(28.2947 / 375 * 100cqw);
  height: calc(21.8262 / 375 * 100cqw);
  background-color: #fff;
  z-index: 1;
  clip-path: polygon(100% 0%, 50% 100%, 0% 0%);
}

.acc--caution[open] .acc__summary::before {
  background-color: #bfd500;
}

.acc--about .acc__body {
  background-color: #cae3f1;
  color: #251e1c;
  padding: calc(40 / 375 * 100cqw) calc(20 / 375 * 100cqw) calc(35 / 375 * 100cqw);
  /* border-radius: 0 0 calc(8 / 375 * 100cqw) calc(8 / 375 * 100cqw); */
}

.acc--about .acc__body p {
  font-size: calc(15 / 375 * 100cqw);
  line-height: 1.8;
  font-weight: 400;
}

/* ---------- 参加方法 ---------- */
.howto {
  background-color: #fff;
  padding-top: calc(28 / 375 * 100cqw);
}

.howto__title {
  width: calc(335 / 375 * 100%);
  margin: 0 auto calc(15 / 375 * 100cqw);
}

.howto__title img {
  width: 100%;
  height: auto;
  display: block;
}

.steps {
  list-style: none;
  padding: 0;
  margin: 0;
}

.step {
  position: relative;
  padding-top: calc(28 / 375 * 100cqw);
  padding-bottom: calc(50 / 375 * 100cqw);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: top center;
  background-color: #ffdb4f;
}

.step--1 {
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 335 21.28"><path fill="%23ffffff" d="M215.54,21.28h119.46V0h-164.61c18.17,0,34.41,8.28,45.15,21.28Z"/><path fill="%23ffffff" d="M170.39,0H0v21.28h125.24C135.98,8.28,152.22,0,170.39,0Z"/></svg>');

}

.step--2 {
  background-color: #fff;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 335 30.26"><path fill="%23ffdb4f" d="M0,30.26c9.33,0,9.33-9.31,18.67-9.31s9.33,9.31,18.67,9.31,9.33-9.31,18.66-9.31,9.33,9.31,18.66,9.31,9.33-9.31,18.66-9.31,9.33,9.31,18.65,9.31c6.01,0,8.16-3.86,11.41-6.61C134.05,9.3,151.13,0,170.39,0H0v30.26Z"/><path fill="%23ffdb4f" d="M170.39,0c21.96,0,41.09,12.1,51.11,30,.74.15,1.52.26,2.41.26,9.33,0,9.33-9.31,18.65-9.31s9.33,9.31,18.66,9.31,9.33-9.31,18.65-9.31,9.32,9.31,18.65,9.31,9.33-9.31,18.65-9.31,9.34,8.72,17.83,9.26V0h-164.61Z"/></svg>');
  padding-bottom: calc(20 / 375 * 100cqw);
}

.step--3 {
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 335 30.26"><path fill="%23ffffff" d="M0,30.26c9.33,0,9.33-9.31,18.67-9.31s9.33,9.31,18.67,9.31,9.33-9.31,18.66-9.31,9.33,9.31,18.66,9.31,9.33-9.31,18.66-9.31,9.33,9.31,18.65,9.31c6.01,0,8.16-3.86,11.41-6.61C134.05,9.3,151.13,0,170.39,0H0v30.26Z"/><path fill="%23ffffff" d="M170.39,0c21.96,0,41.09,12.1,51.11,30,.74.15,1.52.26,2.41.26,9.33,0,9.33-9.31,18.65-9.31s9.33,9.31,18.66,9.31,9.33-9.31,18.65-9.31,9.32,9.31,18.65,9.31,9.33-9.31,18.65-9.31,9.34,8.72,17.83,9.26V0h-164.61Z"/></svg>'),
    url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 335 11.31"><path fill="%23ffffff" d="M317.17,0c-9.33,0-9.33,9.31-18.65,9.31s-9.32-9.31-18.65-9.31-9.33,9.31-18.65,9.31S251.89,0,242.56,0s-9.33,9.31-18.65,9.31S214.58,0,205.25,0s-9.33,9.31-18.66,9.31S177.27,0,167.94,0s-9.33,9.31-18.66,9.31S139.96,0,130.63,0s-9.33,9.31-18.66,9.31S102.64,0,93.32,0s-9.33,9.31-18.66,9.31S65.33,0,56,0s-9.33,9.31-18.66,9.31S28.01,0,18.67,0,9.34,9.31,0,9.31v2h335v-2h0v-.05c-8.49-.54-8.8-9.26-17.83-9.26Z"/></svg>');
  background-position: top, center calc(100% + calc(2 / 375 * 100cqw));
}

.step__badge {
  width: calc(52 / 375 * 100cqw);
  margin: 0 auto calc(14 / 375 * 100cqw);
  font-size: calc(11 / 375 * 100cqw);
  line-height: 1.2;
  text-align: center;
  font-weight: 700;
  color: #232584;
}

.step__badge img {
  width: 100%;
  height: auto;
  display: block;
}

.step__heading {
  text-align: center;
  font-size: calc(23 / 375 * 100cqw);
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: -0.08em;
  color: #251e1c;
  margin-bottom: calc(16 / 375 * 100cqw);
}

.step__illust {
  width: calc(210 / 375 * 100cqw);
  margin: 0 auto calc(16 / 375 * 100cqw);
}

.step__illust img {
  width: 100%;
  height: auto;
  display: block;
}

.step__text {
  text-indent: -1em;
  padding-left: 1em;
  text-align: left;
  font-weight: 700;
  line-height: 1.5;
  color: #251e1c;
}

.lp p.step__text--center {
  text-indent: 0;
  padding-left: 0;
  line-height: 1.3;
  font-size: calc(17 / 375 * 100cqw);
  text-align: center;
}

.step__arrow {
  width: calc(20.0287 / 375 * 100cqw);
  height: calc(9.821 / 375 * 100cqw);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 20.03 9.82"><path fill="%23251e1c" d="M10.01,9.82c-.35,0-.7-.11-.99-.34L.61,2.86C-.08,2.31-.2,1.3.34.61.89-.08,1.9-.2,2.59.34l7.42,5.84L17.44.34c.69-.55,1.7-.43,2.25.27.55.69.43,1.7-.27,2.25l-8.41,6.62c-.29.23-.64.34-.99.34Z"/></svg>');
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  margin: calc(12 / 375 * 100cqw) auto;
}

.step__sns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(25 / 375 * 100cqw);
  margin: 0 auto calc(18 / 375 * 100cqw);
}

.step__sns-item {
  width: calc(52 / 375 * 100cqw);
  height: calc(52 / 375 * 100cqw);
  display: block;
}

.lp p.step__tags {
  text-align: center;
  font-size: calc(16 / 375 * 100cqw);
  font-weight: 900;
  line-height: 1.6;
  color: #251e1c;
  border-top: calc(7.5 / 375 * 100cqw) solid #251e1c;
  border-bottom: calc(7.5 / 375 * 100cqw) solid #251e1c;
  padding: calc(10 / 375 * 100cqw) 0;
  margin-top: calc(4 / 375 * 100cqw);
}

.step__btn {
  width: calc(270 / 375 * 100cqw);
  margin: calc(18 / 375 * 100cqw) auto 0;
  display: block;
  cursor: pointer;
  padding: 0;
  border: none;
  background: transparent;
}

.step__copy-msg {
  min-height: calc(20 / 375 * 100cqw);
  margin-top: calc(8 / 375 * 100cqw);
  text-align: center;
  font-size: calc(13 / 375 * 100cqw);
  font-weight: 700;
  line-height: 1.4;
  color: #0077a8;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.step__copy-msg.is-visible {
  opacity: 1;
}

.step__copy-msg.is-error {
  color: #c0392b;
}

.lp p.step__complete {
  text-align: center;
  font-size: calc(23 / 375 * 100cqw);
  font-weight: 900;
  line-height: 1.25;
  color: #251e1c;
  margin-top: calc(20 / 375 * 100cqw);
}

.step__complete span {
  text-decoration: underline;
  text-underline-offset: -.2em;
  text-decoration-thickness: .5em;
  text-decoration-color: #fceec1;
  text-decoration-skip-ink: none;
}

/* ---------- 注意書き ---------- */
.notes {
  background-color: #fff;
  padding-top: calc(35 / 375 * 100cqw);
  padding-bottom: calc(45 / 375 * 100cqw);
}

.notes__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.notes__list li {
  font-size: calc(15 / 375 * 100cqw);
  line-height: 1.7;
  color: #251e1c;
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: calc(3 / 375 * 100cqw);
}

.notes__list li:last-child {
  margin-bottom: 0;
}

/* ---------- 注意事項アコーディオン ---------- */
.caution {
  background-color: #fff;
  padding-bottom: calc(55 / 375 * 100cqw);
}

.acc--caution .acc__summary {
  background-color: #bfd500;
  color: #251e1c;
  justify-content: flex-start;
  padding: calc(14 / 375 * 100cqw) calc(36 / 375 * 100cqw) calc(14 / 375 * 100cqw) calc(16 / 375 * 100cqw);
  font-size: calc(21 / 375 * 100cqw);
}

.acc--caution .acc__summary::after {
  position: absolute;
  right: calc(16 / 375 * 100cqw);
  top: 50%;
}

.acc--caution .acc__body {
  background-color: #f4f7d3;
  padding: calc(40 / 375 * 100cqw) calc(15 / 375 * 100cqw) calc(35 / 375 * 100cqw);
}

.caution__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.caution__list li {
  font-size: calc(15 / 375 * 100cqw);
  line-height: 1.75;
  color: #251e1c;
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: calc(2 / 375 * 100cqw);
}

.caution__list li:last-child {
  margin-bottom: 0;
}

/* ---------- 投稿紹介 ---------- */
.posts {
  background-color: #00b3d6;
  padding-top: calc(28 / 375 * 100cqw);
  padding-bottom: calc(25 / 375 * 100cqw);
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 375 23.16"><path fill="%23ffffff" d="M0,0v12.41s63.34,24.19,188.63,0,186.37,0,186.37,0V0H0Z"/></svg>');
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: top center;
}

.posts__title {
  width: calc(335 / 375 * 100cqw);
  margin: 0 auto calc(18 / 375 * 100cqw);
  color: #fff;
  font-size: calc(22 / 375 * 100cqw);
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  text-shadow: calc(2 / 375 * 100cqw) calc(2 / 375 * 100cqw) 0 #251e1c;
}

.posts__title img {
  width: 100%;
  height: auto;
  display: block;
}

.posts__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(10 / 375 * 100cqw);
  padding: 0 calc(18 / 375 * 100cqw);
  list-style: none;
  margin: 0;
}

/* .posts__item {
  background-color: #fff;
} */

/* ---------- フッター ---------- */
.footer {
  background-color: #fff;
  padding-top: calc(15 / 375 * 100cqw);
  padding-bottom: calc(40 / 375 * 100cqw);
  text-align: center;
  color: #251e1c;
}

.footer__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(12 / 375 * 100cqw);
  font-size: calc(15 / 375 * 100cqw);
  font-weight: 700;
  margin-bottom: calc(5 / 375 * 100cqw);
}

.footer__heading::before,
.footer__heading::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: #251e1c;
}

.lp p.footer__tel {
  font-size: calc(18 / 375 * 100cqw);
  font-weight: 900;
  line-height: 1.5;
  margin-bottom: calc(16 / 375 * 100cqw);
}

.footer__tel a {
  color: inherit;
}

.lp p.footer__hours-label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: calc(28 / 375 * 100cqw);
  background-color: #d0d0d0;
  font-size: calc(13 / 375 * 100cqw);
  font-weight: 700;
  letter-spacing: .1em;
  margin-bottom: calc(10 / 375 * 100cqw);
}

.lp p.footer__hours {
  font-size: calc(14 / 375 * 100cqw);
  line-height: 1.6;
}

/*!////////////////////////////////////////////*/
/*!//////////// ↑↑↑lp↑↑↑ ////////////*/
/*!////////////////////////////////////////////*/