@charset "UTF-8";
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  /*text-rendering: optimizeSpeed;*/
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
}
:root {
  --color-main: #60320E;
  --color-accent: #D6AD8D;
  --color-white: #FFFFFF;
  --color-black: #000000;
  --background-main: #60320E;
  --background-bg: #F0F0ED;
  --background-accent: #FFD900;
  --background-white: #FFFFFF;
  --background-gray: #E2D6CF;
  --background-yellow: #FCF9ED;
  --background-black: #000000;
  --fontFamily-base: "Zen Maru Gothic", sans-serif;
  --lineHeight-base: calc(33 / 16);
  --fontSize-base: 1.6rem;
  --fontWeight-base: 400;
  --fontWeight-light: 300;
  --fontWeight-regular: 400;
  --fontWeight-medium: 500;
  --fontWeight-semibold: 600;
  --fontWeight-bold: 700;
  --fontWeight-black: 900;
  --fontColor-base: #60320E;
  /* base_padding*/
  --padding-base: 70px;
  --padding-baseSp: 30px;
  /* 10px scale */
  --space-10: clamp(8px, 1.2vw, 10px);
  --space-20: clamp(16px, 2.4vw, 20px);
  --space-30: clamp(24px, 3.6vw, 30px);
  --space-40: clamp(32px, 4.8vw, 40px);
  --space-50: clamp(40px, 6vw, 50px);
  --space-60: clamp(48px, 7.2vw, 60px);
  --space-80: clamp(64px, 9vw, 80px);
  --space-100: clamp(80px, 12vw, 100px);
}

/* ---------------------------------
　フォントサイズ
--------------------------------- */
/* =========================
  base text
========================= */
/* base */
html {
  font-size: 62.5%;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 2.3255813953vw;
  }
}

body {
  font-family: var(--fontFamily-base);
  font-size: var(--fontSize-base);
  font-style: normal;
  font-weight: var(--fontWeight-medium);
  line-height: var(--lineHeight-base);
  letter-spacing: var(--letterSpacing-base);
  color: var(--fontColor-base);
  overflow-y: auto;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 3.6vw;
  }
}

a {
  text-decoration: none;
  color: var(--fontColor-base);
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

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

:root {
  --ticker-shift: -50%;
}

body.is-lock {
  overflow: hidden;
}

/* PCだけ改行 */
.u-br-pc {
  display: inline;
}
@media screen and (max-width: 768px) {
  .u-br-pc {
    display: none;
  }
}

/* SPだけ改行 */
.u-br-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-br-sp {
    display: inline;
  }
}

/* PCだけ表示 */
.u-pc {
  display: inline;
}
@media screen and (max-width: 768px) {
  .u-pc {
    display: none;
  }
}

/* SPだけ表示 */
.u-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-sp {
    display: inline;
  }
}

section[id] {
  scroll-margin-top: 184px;
}
@media screen and (max-width: 768px) {
  section[id] {
    scroll-margin-top: 24.5333333333vw;
  }
}

/* =====================
   fade animation
===================== */
.js-fade {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.js-fade.is-show {
  opacity: 1;
  transform: translateY(0);
}

.js-fv {
  opacity: 0;
  transition: opacity 1.2s ease;
}

.js-fv.is-show {
  opacity: 1;
}

.js-fv-item {
  opacity: 0;
  transform: scale(1.03);
  transition: opacity 1.2s ease, transform 1.4s ease;
}

.js-fv.is-show .js-fv-item {
  opacity: 1;
  transform: scale(1);
}

.js-fade--delay1 {
  transition-delay: 0.4s;
}

.js-fade--delay2 {
  transition-delay: 0.8s;
}

.js-fade--delay3 {
  transition-delay: 1s;
}

.js-fade--delay4 {
  transition-delay: 1.5s;
}

/* =====================================
  l-main
===================================== */
/* l-section */
.l-section {
  max-width: 1100px;
  width: 90%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .l-section {
    width: 93.3333333333vw;
  }
}
.l-section__inner {
  width: 83%;
  margin-inline: auto;
}

/* l-header */
.l-header {
  position: fixed;
  width: 100%;
  height: 184px;
  top: 0;
  left: 0;
  background-color: var(--background-bg);
  z-index: 1000;
}
@media screen and (max-width: 768px) {
  .l-header {
    height: 24.5333333333vw;
  }
}
.l-header__inner {
  height: 100%;
  width: 100%;
  position: relative;
}
.l-header__logo {
  width: 327px;
  height: 76px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .l-header__logo {
    width: 53.3333333333vw;
    height: 12.4vw;
  }
}
.l-header__logo img {
  display: block;
}
.l-header__toggle {
  position: absolute;
  top: 54px;
  right: 57px;
  width: 46px;
  height: 31px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: none;
  border: none;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .l-header__toggle {
    top: 7.2vw;
    right: 2vw;
    width: 13.3333333333vw;
    height: 8vw;
  }
}
.l-header__toggle span {
  display: block;
  height: 5px;
  width: 100%;
  background: var(--background-main);
  border-radius: 50px;
}
@media screen and (max-width: 768px) {
  .l-header__toggle span {
    height: 3px;
  }
}

/* l-drawer */
.l-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: 80%;
  max-width: 500px;
  height: 100vh;
  background: var(--background-main);
  transform: translateX(100%);
  transition: transform 0.4s ease;
  z-index: 1200;
  display: flex;
  flex-direction: column;
  padding-block-start: 140px;
}
@media screen and (max-width: 768px) {
  .l-drawer {
    max-width: none;
    width: 100%;
    padding-block-start: 13.3333333333vw;
  }
}
.l-drawer.is-active {
  transform: translateX(0);
}
.l-drawer__list {
  list-style: none;
  padding: 0;
  text-align: center;
}
.l-drawer__list li {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .l-drawer__list li {
    margin-bottom: 4vw;
  }
}
.l-drawer__list a {
  color: var(--background-white);
  font-size: 2.4rem;
  font-weight: var(--fontWeight-bold);
  text-decoration: none;
  transition: opacity 0.4s;
}
@media screen and (max-width: 768px) {
  .l-drawer__list a {
    font-size: 4.5333333333vw;
  }
}
.l-drawer__list a:hover {
  opacity: 0.85;
}

.l-drawer__close {
  position: absolute;
  top: 54px;
  right: 57px;
  width: 36px;
  height: 36px;
  background: none;
  border: none;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .l-drawer__close {
    top: 7.2vw;
    right: 2vw;
    width: 12vw;
    height: 6.6666666667vw;
  }
}
.l-drawer__close span {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 5px;
  background: var(--background-white);
  border-radius: 50px;
}
@media screen and (max-width: 768px) {
  .l-drawer__close span {
    height: 3px;
  }
}
.l-drawer__close span:first-child {
  transform: rotate(45deg);
}
.l-drawer__close span:last-child {
  transform: rotate(-45deg);
}

/* l-footer */
.l-footer {
  background-color: var(--background-white);
  padding-block: 30px;
}
@media screen and (max-width: 768px) {
  .l-footer {
    padding-block: 20px;
  }
}
.l-footer__copy {
  text-align: center;
}
.l-footer__privacy {
  text-align: center;
}
.l-footer__privacy a {
  text-decoration: underline;
}

/*   c-tit */
.c-tit {
  text-align: center;
  font-weight: var(--fontWeight-bold);
  display: flex;
  flex-direction: column;
  line-height: 1.5;
  padding-block-end: 5rem;
}
@media screen and (max-width: 768px) {
  .c-tit {
    padding-block-end: 4vw;
  }
}
.c-tit__en {
  color: var(--color-accent);
  font-size: 2.8rem;
  letter-spacing: 0.04em;
}
.c-tit__en--company {
  color: var(--color-accent);
}
@media screen and (max-width: 768px) {
  .c-tit__en {
    font-size: 4vw;
  }
}
.c-tit__jp {
  font-size: 4.8rem;
  letter-spacing: 0.07em;
}
.c-tit__jp--company {
  color: var(--color-white);
}
@media screen and (max-width: 768px) {
  .c-tit__jp {
    font-size: 6vw;
  }
}

/* =====================================
  _p-main
===================================== */
.p-main {
  padding-top: 184px;
}
@media screen and (max-width: 768px) {
  .p-main {
    padding-top: 24.5333333333vw;
  }
}

/* =====================================
  _p-mainHero
===================================== */
.p-mainHero {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
@media screen and (max-width: 768px) {
  .p-mainHero {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, 1fr);
  }
}

/* =====================================
  _p-about
===================================== */
.p-about {
  background-color: var(--background-bg);
  padding-block: var(--padding-base);
}
@media screen and (max-width: 768px) {
  .p-about {
    padding-block: var(--padding-baseSp);
  }
}
.p-about__inner {
  position: relative;
}
.p-about__txt {
  font-size: 3.4rem;
  font-weight: var(--fontWeight-bold);
  line-height: 1.8823529412;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-about__txt {
    font-size: 4.5333333333vw;
  }
}
.p-about__img {
  position: absolute;
}
.p-about__img--right {
  max-width: 163px;
  width: 11.9326500732vw;
  top: 66px;
  right: -68px;
}
@media screen and (max-width: 1200px) {
  .p-about__img--right {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-about__img--right {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 6.6666666667vw;
  }
}
.p-about__img--left {
  max-width: 164px;
  width: 12.0058565154vw;
  top: 280px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-about__img--left {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 29.3333333333vw;
  }
}
.p-about__img--star {
  max-width: 169px;
  width: 12.3718887262vw;
  top: 286px;
  right: -78px;
}
@media screen and (max-width: 1200px) {
  .p-about__img--star {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-about__img--star {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 29.3333333333vw;
  }
}

/* =====================================
  _p-item
===================================== */
.p-item {
  background-color: var(--background-yellow);
  padding-block-end: calc(var(--padding-base) * 2.5);
  padding-block-start: var(--padding-base);
}
@media screen and (max-width: 768px) {
  .p-item {
    padding-block-end: calc(var(--padding-baseSp) * 2.5);
    padding-block-start: var(--padding-baseSp);
  }
}
.p-item__inner {
  position: relative;
}
.p-item__block {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
}
@media screen and (max-width: 1200px) {
  .p-item__block {
    gap: 5.8565153734vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__block {
    grid-template-columns: 1fr;
    gap: 6.6666666667vw;
    padding-block-start: 13.3333333333vw;
  }
}
.p-item__block--reverse {
  direction: rtl;
  padding-block-start: 200px;
}
@media screen and (max-width: 1200px) {
  .p-item__block--reverse {
    padding-block-start: 14.6412884334vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__block--reverse {
    padding-block-start: 16vw;
  }
}
.p-item__block--reverse > * {
  direction: ltr;
}
@media screen and (max-width: 768px) {
  .p-item__block--reverse {
    direction: ltr;
  }
}
.p-item__imgArea {
  max-width: 430px;
  width: 31.4787701318vw;
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .p-item__imgArea {
    max-width: 80vw;
    width: 86.6666666667vw;
    order: 1;
    margin-inline: auto;
    height: 69.3333333333vw;
  }
}
.p-item__imgArea img {
  position: relative;
  z-index: 2;
}
.p-item__imgArea--custard::before {
  content: "";
  position: absolute;
  left: -200px;
  top: -40px;
  width: 553px;
  height: 208px;
  background-image: url("../images/bg_line_y.png");
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 1;
}
@media screen and (max-width: 1200px) {
  .p-item__imgArea--custard::before {
    left: -14.6412884334vw;
    top: -2.9282576867vw;
    width: 40.4831625183vw;
    height: 15.2269399707vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__imgArea--custard::before {
    left: -10vw;
    top: -5.3333333333vw;
    width: 53.3333333333vw;
    height: 26.6666666667vw;
  }
}
.p-item__imgArea--choco::before {
  content: "";
  position: absolute;
  right: -200px;
  top: -40px;
  width: 553px;
  height: 208px;
  background-image: url("../images/bg_line_b.png");
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 1;
}
@media screen and (max-width: 1200px) {
  .p-item__imgArea--choco::before {
    right: -5.1244509517vw;
    top: -2.9282576867vw;
    width: 40.4831625183vw;
    height: 15.2269399707vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__imgArea--choco::before {
    right: -10vw;
    top: -5.3333333333vw;
    width: 53.3333333333vw;
    height: 26.6666666667vw;
  }
}
.p-item__imgWrap {
  position: relative;
  overflow: hidden;
}
.p-item__package {
  max-width: 203px;
  width: 14.8609077599vw;
  position: absolute;
  top: 275px;
}
@media screen and (max-width: 1200px) {
  .p-item__package {
    width: 13.17715959vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__package {
    width: 29.3333333333vw;
  }
}
.p-item__package--custard {
  right: -152px;
}
@media screen and (max-width: 1200px) {
  .p-item__package--custard {
    right: -15%;
    top: 21.9619326501vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__package--custard {
    right: -10%;
    top: 57.3333333333vw;
  }
}
.p-item__package--choco {
  left: -152px;
}
@media screen and (max-width: 1200px) {
  .p-item__package--choco {
    left: -15%;
    top: 21.9619326501vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__package--choco {
    left: -10%;
    top: 57.3333333333vw;
  }
}
.p-item__content {
  max-width: 590px;
  width: 43.1918008785vw;
}
@media screen and (max-width: 1200px) {
  .p-item__content {
    width: 54.9048316252vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__content {
    width: 86.6666666667vw;
    margin-inline: auto;
    order: 2;
  }
}
.p-item__tit {
  font-size: 2.6rem;
  font-weight: var(--fontWeight-bold);
  position: relative;
  margin-block-end: 20px;
}
@media screen and (max-width: 1200px) {
  .p-item__tit {
    font-size: clamp(2rem, 2.2vw, 2.6rem);
  }
}
@media screen and (max-width: 768px) {
  .p-item__tit {
    font-size: 4vw;
    margin-block-end: 10px;
  }
}
.p-item__tit--custard::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 90%;
  height: 5px;
  background-color: #F5EAB0;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .p-item__tit--custard::after {
    width: 100%;
    height: 3px;
  }
}
.p-item__tit--choco::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 90%;
  height: 5px;
  background-color: #E2D6CF;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .p-item__tit--choco::after {
    width: 100%;
    height: 3px;
  }
}
.p-item__img {
  position: absolute;
}
.p-item__img--right {
  max-width: 163px;
  width: 11.9326500732vw;
  top: 400px;
  right: -100px;
}
@media screen and (max-width: 1200px) {
  .p-item__img--right {
    right: 0;
  }
}
@media screen and (max-width: 1024px) {
  .p-item__img--right {
    top: 7.3206442167vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__img--right {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 13.3333333333vw;
  }
}
.p-item__img--star {
  max-width: 169px;
  width: 12.3718887262vw;
  top: 586px;
  left: -78px;
}
@media screen and (max-width: 1200px) {
  .p-item__img--star {
    left: 0;
    top: 45.3879941435vw;
  }
}
@media screen and (max-width: 1024px) {
  .p-item__img--star {
    top: 51.2445095168vw;
  }
}
@media screen and (max-width: 768px) {
  .p-item__img--star {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 160vw;
  }
}

/* =====================================
  _p-detail
===================================== */
.p-detail {
  background-color: var(--background-bg);
  padding-block: var(--padding-base);
  position: relative;
}
.p-detail::after {
  background-color: var(--background-accent);
  position: absolute;
  width: 100%;
  height: 98px;
  content: "";
  top: -98px;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-detail::after {
    height: 10.6666666667vw;
    top: -10.6666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .p-detail {
    padding-block: var(--padding-baseSp);
  }
}
.p-detail__inner {
  position: relative;
}
.p-detail__tit {
  font-size: 3.4rem;
  font-weight: var(--fontWeight-bold);
  line-height: 1.8823529412;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .p-detail__tit {
    font-size: clamp(2rem, 4vw, 3rem) !important;
  }
}
@media screen and (max-width: 768px) {
  .p-detail__tit {
    font-size: 4.5333333333vw;
  }
}
.p-detail__block {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .p-detail__block {
    margin-top: 8vw;
  }
}
.p-detail__block:first-of-type {
  margin-top: 0;
}
.p-detail__body {
  position: relative;
  width: 83%;
  margin-inline: auto;
  margin-block-start: 20px;
}
@media screen and (max-width: 768px) {
  .p-detail__body {
    width: 100%;
    margin-block-start: 10px;
  }
}
.p-detail__imgArea {
  width: 100%;
}
.p-detail img {
  width: 100%;
  display: block;
}
.p-detail__txtArea {
  position: absolute;
  inset: 0;
  display: flex;
  justify-content: flex-end;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-detail__txtArea {
    flex-direction: column;
  }
}
.p-detail__txtInner {
  width: 50%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
  padding: 45px 30px;
  display: flex;
  align-items: flex-start;
}
@media screen and (max-width: 1200px) {
  .p-detail__txtInner {
    padding: 2.196193265vw 2.196193265vw !important;
  }
}
@media screen and (max-width: 768px) {
  .p-detail__txtInner {
    width: 80%;
    margin-inline-start: auto;
    display: block;
  }
}
.p-detail__txt {
  color: var(--color-white);
  font-size: 1.5rem;
  line-height: 2.3571428571;
}
@media screen and (max-width: 1200px) {
  .p-detail__txt {
    font-size: 1.4641288433vw;
  }
}
@media screen and (max-width: 768px) {
  .p-detail__txt {
    font-size: 2.9333333333vw;
    line-height: 1.7;
  }
}

.p-detail__img {
  position: absolute;
}
.p-detail__img--right {
  max-width: 157px;
  width: 11.4934114202vw;
  top: 85px;
  right: 0;
}
@media screen and (max-width: 768px) {
  .p-detail__img--right {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 5.3333333333vw;
  }
}

.p-detail__block:nth-of-type(2) .p-detail__txtArea {
  justify-content: flex-start;
}

@media screen and (max-width: 768px) {
  .p-detail__block:nth-of-type(2) .p-detail__txtInner {
    margin-inline-start: 0;
    margin-inline-end: auto;
  }
}
/* =====================================
  _p-howto
===================================== */
.p-howto {
  background-color: var(--background-yellow);
  padding-block: var(--padding-base);
}
@media screen and (max-width: 768px) {
  .p-howto {
    padding-block: var(--padding-baseSp);
  }
}
.p-howto__inner {
  position: relative;
}
.p-howto__img {
  position: absolute;
}
.p-howto__img--left {
  max-width: 164px;
  width: 12.0058565154vw;
  top: 60px;
  left: -50px;
}
@media screen and (max-width: 1024px) {
  .p-howto__img--left {
    left: -4%;
  }
}
@media screen and (max-width: 768px) {
  .p-howto__img--left {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: -4vw;
    left: -1%;
  }
}
.p-howto__block {
  max-width: 980px;
  width: 71.7423133236vw;
  margin-inline: auto;
  margin-block-start: 50px;
  background: var(--background-white);
  border-radius: 15px;
  padding-block: 60px;
}
@media screen and (max-width: 768px) {
  .p-howto__block {
    width: 100%;
    margin-block-start: 1.3333333333vw;
    padding-block: 4vw;
  }
}
.p-howto__list {
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-howto__list {
    width: 90%;
  }
}
.p-howto__list-item {
  font-size: 2rem;
  font-weight: var(--fontWeight-bold);
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .p-howto__list-item {
    font-size: 3.2vw;
  }
}
.p-howto__list-item:first-child {
  padding-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .p-howto__list-item:first-child {
    padding-bottom: 2.6666666667vw;
  }
}
.p-howto__list-item::before {
  content: "・";
}

/* =====================================
  _p-contact
===================================== */
.p-contact {
  background-color: var(--background-white);
  padding-block: var(--padding-base);
}
@media screen and (max-width: 768px) {
  .p-contact {
    padding-block: var(--padding-baseSp);
  }
}
.p-contact__inner {
  position: relative;
}
.p-contact__block {
  display: flex;
  gap: 50px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-contact__block {
    flex-direction: column;
    gap: 6.6666666667vw;
  }
}
.p-contact__box {
  background: var(--background-yellow);
  border-radius: 12px;
  padding: 30px 28px 25px;
  flex: 1;
  min-height: 260px;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .p-contact__box {
    padding: 5.3333333333vw 4vw 5.3333333333vw;
  }
}
.p-contact__tit {
  text-align: center;
  font-size: 1.8rem;
  font-weight: var(--fontWeight-bold);
  color: var(--color-main);
  margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .p-contact__tit {
    font-size: 5.3333333333vw;
  }
}
.p-contact__txtArea {
  flex: 1;
}
.p-contact__txt {
  line-height: 2;
  color: var(--color-main);
}
.p-contact__link {
  margin-top: 20px;
}
.p-contact__link a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 2.5rem;
  font-weight: var(--fontWeight-bold);
  color: var(--color-main);
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .p-contact__link a {
    font-size: 5.3333333333vw;
  }
}
.p-contact__link span {
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .p-contact__link span {
    font-size: 3.2vw;
  }
}
.p-contact__img {
  position: absolute;
}
.p-contact__img--right {
  max-width: 164px;
  width: 12.0058565154vw;
  top: 0;
  right: -50px;
}
@media screen and (max-width: 1024px) {
  .p-contact__img--right {
    right: -2%;
  }
}
@media screen and (max-width: 768px) {
  .p-contact__img--right {
    max-width: 14.6666666667vw;
    width: 14.6666666667vw;
    top: 4vw;
    right: -1%;
  }
}

@media screen and (max-width: 1200px) {
  .p-contact__link--phone a {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    row-gap: 2px;
  }
}
.p-contact__link--phone .p-contact__tel {
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-contact__link--phone .p-contact__tel {
    font-size: 5.3333333333vw;
    line-height: 1;
  }
}
.p-contact__link--phone .p-contact__time {
  font-size: 1.4rem;
}
@media screen and (max-width: 1200px) {
  .p-contact__link--phone .p-contact__time {
    padding-left: 6.588579795vw;
    line-height: 1;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .p-contact__link--phone .p-contact__time {
    padding-left: 9.3333333333vw;
    font-size: 3.2vw;
    margin-top: -10px;
  }
}

.p-contact__link span img {
  width: 55px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .p-contact__link span img {
    width: 9.3333333333vw;
  }
}

/* =====================================
  _p-company
===================================== */
.p-company {
  background-color: var(--background-main);
  padding-block: var(--padding-base);
}
@media screen and (max-width: 768px) {
  .p-company {
    padding-block: var(--padding-baseSp);
  }
}
.p-company__block {
  text-align: center;
  color: var(--color-white);
  font-weight: var(--fontWeight-bold);
}
.p-company__def {
  padding-block-start: 30px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 8px 12px;
  width: fit-content;
  margin-inline: auto;
  gap: 8px 10px;
  margin-bottom: 30px;
  color: var(--color-white);
  font-weight: var(--fontWeight-bold);
}
@media screen and (max-width: 768px) {
  .p-company__def {
    padding-block-start: 2.6666666667vw;
  }
}
.p-company__def-tit {
  text-align: right;
}
.p-company__def-data {
  margin-right: 25px;
}
.p-company__list {
  margin-top: 60px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .p-company__list {
    margin-top: 6.6666666667vw;
  }
}
.p-company__list-item {
  color: var(--color-white);
  font-size: 1.4rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (max-width: 768px) {
  .p-company__list-item {
    font-size: 2.6666666667vw;
  }
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
  }
}
/* u-align */
.u-align--center {
  text-align: center !important;
}
.u-align--right {
  text-align: right !important;
}