@charset "UTF-8";
@font-face {
  font-family: "GenJyuuGothic";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/GenJyuuGothic-Normal.ttf") format("truetype"), url("../fonts/GenJyuuGothic-Normal.woff") format("woff");
}

@font-face {
  font-family: "GenJyuuGothic";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/GenJyuuGothic-Medium.ttf") format("truetype"), url("../fonts/GenJyuuGothic-Medium.woff") format("woff");
}

@font-face {
  font-family: "GenJyuuGothic";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/GenJyuuGothic-Bold.ttf") format("truetype"), url("../fonts/GenJyuuGothic-Bold.woff") format("woff");
}

/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
}

*, :after, :before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden], template {
  display: none;
}

abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace,monospace;
}

b, strong {
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

input {
  border-radius: 0;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
}

[disabled] {
  cursor: default;
}

[type=number] {
  width: auto;
}

[type=search] {
  -webkit-appearance: textfield;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

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

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

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

button, select {
  text-transform: none;
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

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

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

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

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
}

audio, canvas, progress, video {
  display: inline-block;
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none;
}

/* 基本設定
----------------------------------------------- */
:root {
  --color-black: #000000;
  --color-dark: #595757;
  --color-white: #ffffff;
  --color-green: #717E5E;
  --color-yellow: #F0E5C8;
  --color-yellow1: #FAF5E8;
  --color-yellow2: #F1EAD3;
  --z-header: 100;
  --z-ham-menu: 99;
  --letter-01: .01em;
  --letter-03: .03em;
  --hov-opacity: .7;
  --ease: ease;
  --ease-out: ease-out;
  --ease-in-out: ease-in-out;
  --ease-out-expo: cubic-bezier(.19,1,.22,1);
  --ease-out-sine: cubic-bezier(0.33, 1, 0.68, 1);
}

*, *::after, *::before {
  box-sizing: border-box;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 15px;
  scroll-behavior: smooth;
}

body {
  color: #595757;
  font-family: "游教科書体", "YuKyokasho", "游教科書体 横用", "YuKyokasho Yoko", "Noto Serif JP", serif;
}

body.is-scrolllock {
  position: fixed;
  width: 100%;
  left: 0;
  overflow-y: auto;
  transition: none;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 0;
  letter-spacing: normal;
  font-family: "游教科書体", "YuKyokasho", "游教科書体 横用", "YuKyokasho Yoko", "Noto Serif JP", serif;
  color: #595757;
}

p {
  margin: 0;
}

input,
select,
textarea,
button {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
  font-family: "游教科書体", "YuKyokasho", "游教科書体 横用", "YuKyokasho Yoko", "Noto Serif JP", serif;
  color: #595757;
}

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

em {
  font-style: normal;
  font-weight: bold;
}

img {
  vertical-align: top;
  border: none;
}

a {
  text-decoration: none;
  color: #595757;
  transition: var(--ease) 0.3s;
}

a:before, a:after {
  transition: var(--ease) 0.3s;
}

@media (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

.is-font-en {
  font-family: "GenJyuuGothic", sans-serif;
}

.is-font-num {
  font-family: "Rajdhani", sans-serif;
}

/**
 *	animation
 */
.anim-fade-in {
  opacity: 0;
  transition: opacity 1s var(--ease-out-sine);
}

body.is-loaded .is-on > .anim-fade-in,
body.is-loaded .anim-fade-in.is-on {
  opacity: 1;
}

.anim-fade-up {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  transition: opacity 1s var(--ease-out-sine), -webkit-transform 1s var(--ease-out-sine);
  transition: opacity 1s var(--ease-out-sine), transform 1s var(--ease-out-sine);
  transition: opacity 1s var(--ease-out-sine), transform 1s var(--ease-out-sine), -webkit-transform 1s var(--ease-out-sine);
}

body.is-loaded .is-on > .anim-fade-up,
body.is-loaded .anim-fade-up.is-on {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@-webkit-keyframes anim-scr-down {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  70% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  70.1% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
}

@keyframes anim-scr-down {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  70% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  70.1% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
}

@-webkit-keyframes anim-leaf {
  0% {
    opacity: 0;
    -webkit-transform: translate(30px, -30px) rotate(-10deg);
    transform: translate(30px, -30px) rotate(-10deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0) rotate(0deg);
    transform: translate(0, 0) rotate(0deg);
  }
}

@keyframes anim-leaf {
  0% {
    opacity: 0;
    -webkit-transform: translate(30px, -30px) rotate(-10deg);
    transform: translate(30px, -30px) rotate(-10deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0) rotate(0deg);
    transform: translate(0, 0) rotate(0deg);
  }
}

/**
 *	header
 */
.l-header {
  overflow: hidden;
  position: relative;
  z-index: var(--z-header);
  height: 26.66667vw;
}

@media (min-width: 768px) {
  .l-header {
    height: clamp(100px, 9.67742vw, 120px);
  }
}

.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5.334%;
  padding-right: 5.334%;
  height: 100%;
  pointer-events: none;
}

@media (min-width: 768px) {
  .l-header__inner {
    padding-left: min(5.646%, 70px);
    padding-right: min(5.646%, 70px);
  }
}

.l-header__logo {
  pointer-events: all;
}

.l-header__logo a {
  display: block;
}

.l-header__logo img {
  width: 21.33333vw;
}

@media (min-width: 768px) {
  .l-header__logo img {
    width: clamp(311px, 29.91935vw, 371px);
  }
}

.l-header .l-header__contact, .l-header .l-header__menu-buttonWrap {
  position: fixed;
  top: 6.66667vw;
  right: 5.334%;
  pointer-events: all;
}

@media (min-width: 768px) {
  .l-header .l-header__contact, .l-header .l-header__menu-buttonWrap {
    top: 30px;
    right: min(5.646%, 70px);
  }
}

.l-header__contact {
  right: 5.33333vw;
  margin-right: 16vw;
}

@media (min-width: 768px) {
  .l-header__contact {
    margin-right: clamp(60px, 7.25806vw, 90px);
  }
}

.l-header__contact-button {
  border-radius: 50px;
  background-color: #717E5E;
  color: #F0E5C8;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  font-size: 3.46667vw;
  padding: 0 5px;
  border: 2px solid transparent;
  position: relative;
  z-index: 0;
  overflow: hidden;
  width: 29.33333vw;
  height: 12vw;
}

.l-header__contact-button::before {
  content: "";
  background-color: #F0E5C8;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  transition: -webkit-transform 0.7s var(--ease-out-expo);
  transition: transform 0.7s var(--ease-out-expo);
  transition: transform 0.7s var(--ease-out-expo), -webkit-transform 0.7s var(--ease-out-expo);
  z-index: -1;
}

@media (min-width: 768px) {
  .l-header__contact-button:hover {
    border-color: #717E5E;
    color: #717E5E;
  }
  .l-header__contact-button:hover::before {
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

@media (min-width: 768px) {
  .l-header__contact-button {
    font-size: clamp(16px, 1.45161vw, 18px);
    width: clamp(140px, 15.24194vw, 189px);
    height: clamp(40px, 4.83871vw, 60px);
  }
}

.l-header__menu {
  background-color: #717E5E;
  position: fixed;
  top: 0;
  right: 0;
  z-index: var(--z-ham-menu);
  width: 100%;
  height: 100%;
  -webkit-transform: translate(100%);
  transform: translate(100%);
  transition: -webkit-transform 0.75s var(--ease-out-sine);
  transition: transform 0.75s var(--ease-out-sine);
  transition: transform 0.75s var(--ease-out-sine), -webkit-transform 0.75s var(--ease-out-sine);
}

@media (min-width: 768px) {
  .l-header__menu {
    width: clamp(400px, 35.48387vw, 440px);
  }
}

body.is-loaded.is-menu-open .l-header__menu {
  -webkit-transform: translate(0);
  transform: translate(0);
}

.l-header__menu-inner {
  overflow: auto;
  height: 100%;
}

@media (max-width: 767px) {
  .l-header__menu-inner {
    padding: min(24vw, 148px) min(16vw, 68px) min(24vw, 90px) min(16vw, 68px);
  }
}

@media (min-width: 768px) {
  .l-header__menu-inner {
    padding: clamp(74px, 8.06452vw, 100px) clamp(34px, 3.62903vw, 45px) clamp(30px, 3.22581vw, 40px);
  }
}

.l-header__menu-buttonWrap {
  z-index: var(--z-header);
}

.l-header__menu-button {
  overflow: hidden;
  display: block;
  position: relative;
  background-color: #717E5E;
  border-radius: 50%;
  cursor: pointer;
  height: 12vw;
  width: 12vw;
}

@media (min-width: 768px) {
  .l-header__menu-button {
    height: clamp(40px, 4.83871vw, 60px);
    width: clamp(40px, 4.83871vw, 60px);
  }
}

.l-header__menu-button span {
  background-color: #F0E5C8;
  border-radius: 5px;
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  height: 0.26667vw;
  width: 6.66667vw;
  transition: 0.75s var(--ease-out-sine);
  will-change: transform;
}

@media (min-width: 768px) {
  .l-header__menu-button span {
    height: 1px;
    width: clamp(20px, 2.41935vw, 30px);
  }
}

@media (max-width: 767px) {
  .l-header__menu-button span:nth-of-type(1) {
    top: 4vw;
  }
}

@media (min-width: 768px) {
  .l-header__menu-button span:nth-of-type(1) {
    top: clamp(12px, 1.6129vw, 20px);
  }
}

@media (max-width: 767px) {
  .l-header__menu-button span:nth-of-type(2) {
    top: 5.86667vw;
  }
}

@media (min-width: 768px) {
  .l-header__menu-button span:nth-of-type(2) {
    top: clamp(19px, 2.33871vw, 29px);
  }
}

@media (max-width: 767px) {
  .l-header__menu-button span:nth-of-type(3) {
    top: 7.73333vw;
  }
}

@media (min-width: 768px) {
  .l-header__menu-button span:nth-of-type(3) {
    top: clamp(26px, 3.06452vw, 38px);
  }
}

@media (min-width: 768px) {
  body:not(.is-menu-open) .l-header__menu-button:hover {
    background-color: #F0E5C8;
  }
  body:not(.is-menu-open) .l-header__menu-button:hover span {
    background-color: #717E5E;
  }
}

body.is-loaded.is-menu-open .l-header__menu-button span:nth-of-type(1) {
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
  top: 50%;
}

body.is-loaded.is-menu-open .l-header__menu-button span:nth-of-type(2) {
  opacity: 0;
}

body.is-loaded.is-menu-open .l-header__menu-button span:nth-of-type(3) {
  top: auto;
  bottom: 50%;
  -webkit-transform: translateY(50%) rotate(45deg);
  transform: translateY(50%) rotate(45deg);
}

.l-header__menu-item + .l-header__menu-item {
  margin-top: 5.33333vw;
}

@media (min-width: 768px) {
  .l-header__menu-item + .l-header__menu-item {
    margin-top: clamp(20px, 2.41935vw, 30px);
  }
}

.l-header__menu-link {
  display: block;
  color: #F0E5C8;
  font-weight: 700;
  font-family: "GenJyuuGothic", sans-serif;
  line-height: 1.3;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.l-header__menu-link::after {
  content: "";
  background-color: #F0E5C8;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%;
  transition: -webkit-transform 0.7s var(--ease-out-expo);
  transition: transform 0.7s var(--ease-out-expo);
  transition: transform 0.7s var(--ease-out-expo), -webkit-transform 0.7s var(--ease-out-expo);
  z-index: -1;
}

@media (min-width: 768px) {
  .l-header__menu-link:hover::after {
    -webkit-transform-origin: 0% 50%;
    transform-origin: 0% 50%;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

@media (max-width: 767px) {
  .l-header__menu-link {
    font-size: 3.73333vw;
    padding: 2.66667vw 0 2.66667vw 13.86667vw;
  }
}

@media (min-width: 768px) {
  .l-header__menu-link {
    font-size: clamp(16px, 1.45161vw, 18px);
    padding: clamp(12px, 1.29032vw, 16px) 0 clamp(13px, 1.37097vw, 17px) clamp(52px, 5.64516vw, 70px);
  }
}

@media (min-width: 768px) {
  .l-header__menu-link:hover[class*="l-header__menu-icon"]::before {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
}

.l-header__menu [class*="l-header__menu-icon"] {
  position: relative;
}

.l-header__menu [class*="l-header__menu-icon"]::before {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0;
  transition: -webkit-transform 0.75s var(--ease-out-sine);
  transition: transform 0.75s var(--ease-out-sine);
  transition: transform 0.75s var(--ease-out-sine), -webkit-transform 0.75s var(--ease-out-sine);
}

@media (max-width: 767px) {
  .l-header__menu [class*="l-header__menu-icon"]::before {
    width: 10.66667vw;
    height: 10.66667vw;
  }
}

@media (min-width: 768px) {
  .l-header__menu [class*="l-header__menu-icon"]::before {
    width: clamp(35px, 3.79032vw, 47px);
    height: clamp(35px, 3.79032vw, 47px);
  }
}

.l-header__menu-icon--home::before {
  background-image: url(../img/icon_home.svg);
}

.l-header__menu-icon--profile::before {
  background-image: url(../img/icon_user-tie.svg);
}

.l-header__menu-icon--service::before {
  background-image: url(../img/icon_file-pen.svg);
}

.l-header__menu-icon--cost::before {
  background-image: url(../img/icon_yen-sign.svg);
}

.l-header__menu-icon--flow::before {
  background-image: url(../img/icon_comment-lines.svg);
}

.l-header__menu-icon--access::before {
  background-image: url(../img/icon_location-dot.svg);
}

.l-header__menu-icon--contact::before {
  background-image: url(../img/icon_phone.svg);
}

.l-header__menu-overlap {
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

body.is-loaded.is-menu-open .l-header__menu-overlap {
  pointer-events: all;
}

/**
 *	footer
 */
.l-footer {
  position: relative;
  background-color: #717E5E;
}

@media (max-width: 767px) {
  .l-footer {
    margin-top: 37.33333vw;
    padding-top: 16vw;
    padding-bottom: 5.33333vw;
  }
}

@media (min-width: 768px) {
  .l-footer {
    margin-top: min(24.19355vw, 300px);
    padding-top: clamp(50px, 5vw, 62px);
    padding-bottom: clamp(50px, 5vw, 62px);
  }
}

.l-footer__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5.334%;
  padding-right: 5.334%;
  height: 100%;
}

@media (min-width: 768px) {
  .l-footer__inner {
    padding-left: min(5.646%, 70px);
    padding-right: min(5.646%, 70px);
  }
}

@media (max-width: 767px) {
  .l-footer__logo img {
    width: 52vw;
  }
}

@media (min-width: 768px) {
  .l-footer__logo img {
    width: min(20.96774vw, 260px);
  }
}

.l-footer__nav-link, .l-footer__copyright {
  color: #F0E5C8;
  font-family: "GenJyuuGothic", sans-serif;
}

.l-footer__nav {
  margin-top: 16vw;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

@media (min-width: 768px) {
  .l-footer__nav {
    margin-top: min(3.22581vw, 40px);
    flex-direction: row;
  }
}

.l-footer__nav-item {
  position: relative;
}

@media (max-width: 767px) {
  .l-footer__nav-item + .l-footer__nav-item {
    margin-top: 5.33333vw;
  }
}

@media (min-width: 768px) {
  .l-footer__nav-item {
    margin-right: min(1.77vw, 34px);
    padding-right: min(1.77vw, 34px);
  }
}

.l-footer__nav-item::before {
  content: "";
  background-color: #F0E5C8;
  position: absolute;
}

@media (max-width: 767px) {
  .l-footer__nav-item::before {
    display: none;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
  }
}

@media (min-width: 768px) {
  .l-footer__nav-item::before {
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto 0;
    width: 1px;
    height: calc(100% - 10px);
  }
}

@media (min-width: 768px) {
  .l-footer__nav-item:last-child {
    margin-right: 0;
    padding-right: 0;
  }
  .l-footer__nav-item:last-child::before {
    display: none;
  }
}

.l-footer__nav-link {
  line-height: 1.45;
}

@media (max-width: 767px) {
  .l-footer__nav-link {
    font-size: 3.73333vw;
  }
}

@media (min-width: 768px) {
  .l-footer__nav-link {
    font-size: clamp(13px, 1.29032vw, 16px);
  }
}

@media (min-width: 768px) {
  .l-footer__nav-link:hover {
    text-decoration: underline;
  }
}

.l-footer__copyright {
  line-height: 1.5;
}

@media (max-width: 767px) {
  .l-footer__copyright {
    margin-top: 16vw;
  }
}

@media (min-width: 768px) {
  .l-footer__copyright {
    margin-top: min(3.06452vw, 38px);
  }
}

.l-footer__copyright small {
  display: inline-block;
}

@media (max-width: 767px) {
  .l-footer__copyright small {
    font-size: 3.2vw;
  }
}

@media (min-width: 768px) {
  .l-footer__copyright small {
    font-size: min(0.96774vw, 12px);
  }
}

/**
 *	ベースコンテンツ
 */
.l-root-container {
  overflow: hidden;
  word-break: break-all;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.l-content-container {
  background-color: #ffffff;
  flex: 1 1 auto;
  position: relative;
  padding-top: 53.33333vw;
}

@media (min-width: 768px) {
  .l-content-container {
    padding-top: min(16.12903%, 200px);
  }
}

.l-container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 5.334%;
  padding-right: 5.334%;
  max-width: 1240px;
}

@media (min-width: 768px) {
  .l-container {
    padding-left: min(5.646%, 70px);
    padding-right: min(5.646%, 70px);
  }
}

/**
 *	componets
 */
.c-text-base {
  line-height: 2;
}

@media (max-width: 767px) {
  .c-text-base {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .c-text-base {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.c-section {
  padding-bottom: 53.33333vw;
}

@media (min-width: 768px) {
  .c-section {
    padding-bottom: min(16.12903%, 200px);
  }
}

.c-section:last-child {
  padding-bottom: 0;
}

/**
 *	projects
 */
.p-section-heading {
  color: #717E5E;
  text-align: center;
  line-height: 1.5;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  padding-left: 5.334%;
  padding-right: 5.334%;
}

@media (max-width: 767px) {
  .p-section-heading {
    font-size: 5.86667vw;
  }
}

@media (min-width: 768px) {
  .p-section-heading {
    font-size: clamp(20px, 2.09677vw, 26px);
  }
}

@media (min-width: 768px) {
  .p-section-heading {
    padding-left: min(2.41935vw, 30px);
    padding-right: min(2.41935vw, 30px);
  }
}

.p-section-heading + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-section-heading + * {
    margin-top: clamp(40px, 4.83871vw, 60px);
  }
}

.p-profile {
  position: relative;
}

@media (min-width: 768px) {
  .p-profile {
    margin-bottom: min(16.12903vw, 200px);
    padding-left: 34.54545%;
  }
}

.p-profile + * {
  margin-top: 40vw;
}

@media (min-width: 768px) {
  .p-profile + * {
    margin-top: clamp(200px, 24.19355vw, 300px);
  }
}

.p-profile__text {
  position: relative;
  z-index: 1;
  font-weight: 500;
  letter-spacing: var(--letter-01);
  margin-top: 5.33333vw;
}

@media (min-width: 768px) {
  .p-profile__text {
    margin-top: 4.16667%;
  }
}

.p-profile__img {
  overflow: hidden;
}

@media (min-width: 768px) {
  .p-profile__img {
    position: absolute;
    top: 0;
    left: -6.36364%;
    width: min(32.25806vw, 400px);
    z-index: 1;
  }
}

.p-profile__img img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

@media (min-width: 768px) {
  .p-profile__main {
    min-height: min(56.20968vw, 697px);
    padding-top: 4.16667%;
    padding-bottom: 15.27778%;
  }
}

.p-profile__catch {
  line-height: 1.85;
  font-weight: 700;
  letter-spacing: -.02em;
}

@media (max-width: 767px) {
  .p-profile__catch {
    font-size: 4.8vw;
  }
}

@media (min-width: 768px) {
  .p-profile__catch {
    font-size: clamp(20px, 2.09677vw, 26px);
  }
}

@media (min-width: 768px) {
  .p-profile__catch {
    letter-spacing: min(-0.00161vw, -0.02em);
  }
}

.p-profile__catch + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-profile__catch + * {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .p-profile__catch > br {
    display: none;
  }
}

.p-profile__name {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  -webkit-column-gap: 3.2vw;
  column-gap: 3.2vw;
  line-height: 1.7;
  font-weight: 700;
}

@media (max-width: 767px) {
  .p-profile__name {
    font-size: 6.93333vw;
  }
}

@media (min-width: 768px) {
  .p-profile__name {
    font-size: clamp(30px, 2.90323vw, 36px);
  }
}

@media (min-width: 768px) {
  .p-profile__name {
    align-items: center;
    -webkit-column-gap: 2.77778%;
    column-gap: 2.77778%;
  }
}

.p-profile__name + * {
  margin-top: 5.33333vw;
}

@media (min-width: 768px) {
  .p-profile__name + * {
    margin-top: 3.47222%;
  }
}

.p-profile__name-en {
  display: inline-block;
  vertical-align: middle;
  font-family: "GenJyuuGothic", sans-serif;
  line-height: 2;
}

@media (max-width: 767px) {
  .p-profile__name-en {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-profile__name-en {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

@media (min-width: 768px) {
  .p-profile__name-en {
    margin-top: 1.38889%;
  }
}

.p-profile__biography {
  margin-left: auto;
  position: relative;
  z-index: 0;
  margin-top: 10.66667vw;
  margin-right: -5.97015%;
  padding: 10.66667vw 5.334% 10.66667vw 8vw;
}

@media (min-width: 768px) {
  .p-profile__biography {
    margin-top: min(-5.45455%, -60px);
    margin-right: 0;
    margin-left: -14.97585%;
    padding: 11.11111% 0 11.11111% 14.97585%;
  }
}

.p-profile__biography::before, .p-profile__biography::after {
  content: "";
  position: absolute;
}

.p-profile__biography::before {
  background-image: url(../img/profile/attach_leaf.svg);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: contain;
  right: 0;
  bottom: -21.33333vw;
  width: 59.91111vw;
  height: 59.37778vw;
  opacity: 0;
}

@media (min-width: 768px) {
  .p-profile__biography::before {
    right: -7.24638%;
    bottom: -90px;
    width: min(36.29032vw, 450px);
    height: min(35.96774vw, 446px);
  }
}

.p-profile__biography::after {
  background-color: #FAF5E8;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  z-index: -1;
}

.p-profile__biography-dl {
  display: grid;
  grid-template-columns: 17.33333vw 1fr;
}

@media (min-width: 768px) {
  .p-profile__biography-dl {
    grid-template-columns: clamp(70px, 6.45161vw, 80px) 1fr;
  }
}

.p-profile__biography-dl dt,
.p-profile__biography-dl dd {
  line-height: 2;
  font-weight: 500;
  padding-top: 7px;
  padding-bottom: 7px;
}

@media (max-width: 767px) {
  .p-profile__biography-dl dt,
  .p-profile__biography-dl dd {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-profile__biography-dl dt,
  .p-profile__biography-dl dd {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-profile__biography-dl dt {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
}

.p-profile__biography-dl dd {
  position: relative;
  padding-left: 4vw;
}

@media (min-width: 768px) {
  .p-profile__biography-dl dd {
    padding-left: min(1.6129vw, 20px);
  }
}

.p-profile__biography-dl dd::before {
  content: "";
  background-color: #717E5E;
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 100%;
}

body.is-loaded .p-profile__biography.is-on::before {
  -webkit-animation-name: anim-leaf;
  animation-name: anim-leaf;
  -webkit-animation-duration: 1.75s;
  animation-duration: 1.75s;
  -webkit-animation-timing-function: var(--ease-out-sine);
  animation-timing-function: var(--ease-out-sine);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-delay: .7s;
  animation-delay: .7s;
}

@media (min-width: 768px) {
  .p-profile:nth-of-type(even) {
    padding-left: 0;
    padding-right: 34.54545%;
  }
}

@media (min-width: 768px) {
  .p-profile:nth-of-type(even) .p-profile__img {
    left: auto;
    right: -6.36364%;
  }
}

.p-profile:nth-of-type(even) .p-profile__biography {
  margin-right: 0;
  margin-left: -5.97015%;
  padding-left: 5.97015%;
}

@media (min-width: 768px) {
  .p-profile:nth-of-type(even) .p-profile__biography {
    margin-left: 0;
    margin-right: -14.97585%;
    padding-left: 0;
    padding-right: 14.97585%;
  }
}

.p-profile:nth-of-type(even) .p-profile__biography::before {
  right: -5.334%;
}

@media (min-width: 768px) {
  .p-profile:nth-of-type(even) .p-profile__biography::before {
    right: 7.24638%;
  }
}

.p-profile:nth-of-type(even) .p-profile__biography::after {
  left: auto;
  right: 0;
}

.p-service-block-container.p-service--numbers {
  counter-reset: n 0;
}

.p-service-block-container .p-service-block__head-title {
  display: flex;
  align-items: center;
  position: relative;
}

.p-service-block-container .p-service-block__head-title::before {
  counter-increment: n 1;
  content: counter(n, decimal-leading-zero);
  display: block;
  color: #717E5E;
  margin-right: 3.73333vw;
  font-size: 11.2vw;
  font-family: "Rajdhani", sans-serif;
  font-weight: 500;
  line-height: 1;
  flex-shrink: 0;
  align-self: flex-start;
}

@media (min-width: 768px) {
  .p-service-block-container .p-service-block__head-title::before {
    margin-right: min(2.41935vw, 30px);
    font-size: min(5.64516vw, 70px);
  }
}

.p-service-block {
  display: flex;
  flex-direction: column;
}

@media (min-width: 768px) {
  .p-service-block {
    flex-direction: row-reverse;
  }
}

.p-service-block + * {
  margin-top: 26.66667vw;
}

@media (min-width: 768px) {
  .p-service-block + * {
    margin-top: min(24.19355vw, 300px);
  }
}

.p-service-block__img {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-service-block__img {
    margin-top: 0;
    margin-left: -6.36364%;
    width: min(42.74194vw, 530px);
    flex: 0 0 auto;
  }
}

.p-service-block__img img {
  width: 100%;
}

@media (min-width: 768px) {
  .p-service-block__main {
    padding-left: min(3.22581vw, 40px);
  }
}

.p-service-block__text {
  line-height: 2;
  font-weight: 500;
  letter-spacing: var(--letter-03);
}

@media (max-width: 767px) {
  .p-service-block__text {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-service-block__text {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-service-block__head {
  border-bottom: 2px solid #717E5E;
  margin-left: -5.97015%;
  padding-left: 5.334%;
  padding-bottom: 1.33333vw;
}

@media (min-width: 768px) {
  .p-service-block__head {
    margin-left: clamp(-62px, -5vw, -25px);
    padding-left: min(5vw, 62px);
    padding-bottom: min(0.48387vw, 6px);
  }
}

.p-service-block__head + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-service-block__head + * {
    margin-top: min(4.83871vw, 60px);
  }
}

.p-service-block__head-title {
  line-height: 1.7;
  font-weight: 700;
}

@media (max-width: 767px) {
  .p-service-block__head-title {
    font-size: 6.93333vw;
  }
}

@media (min-width: 768px) {
  .p-service-block__head-title {
    font-size: clamp(30px, 2.90323vw, 36px);
  }
}

.p-service-block__head-en {
  text-align: right;
  line-height: 2;
  font-weight: 500;
  font-family: "GenJyuuGothic", sans-serif;
}

@media (max-width: 767px) {
  .p-service-block__head-en {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-service-block__head-en {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

@media (min-width: 768px) {
  .p-service-block:nth-of-type(even) {
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .p-service-block:nth-of-type(even) .p-service-block__img {
    margin-left: 0;
    margin-right: -6.36364%;
  }
}

@media (min-width: 768px) {
  .p-service-block:nth-of-type(even) .p-service-block__main {
    padding-left: 0;
    padding-right: min(5vw, 62px);
  }
}

@media (min-width: 768px) {
  .p-service-block:nth-of-type(even) .p-service-block__head {
    margin-left: 0;
    padding-left: 0;
    margin-right: clamp(-62px, -5vw, -25px);
    padding-right: min(5vw, 62px);
  }
}

.p-cost {
  border: 1px solid #717E5E;
  padding-top: 10.66667vw;
  padding-bottom: 10.66667vw;
}

@media (min-width: 768px) {
  .p-cost {
    border-width: 2px;
    padding-top: min(8.06452vw, 100px);
    padding-bottom: min(6.45161vw, 80px);
    margin-left: auto;
    margin-right: auto;
    max-width: 960px;
  }
}

.p-cost__main {
  text-align: center;
}

@media (min-width: 768px) {
  .p-cost__main {
    margin-left: auto;
    margin-right: auto;
    width: min(66.12903vw, 820px);
  }
}

.p-cost__main + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-cost__main + * {
    margin-top: min(3.62903vw, 45px);
  }
}

.p-cost__info {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.p-cost__info + * {
  margin-top: 5.33333vw;
}

@media (min-width: 768px) {
  .p-cost__info + * {
    margin-top: min(2.41935vw, 30px);
  }
}

.p-cost__info > * {
  padding: 2.66667vw 5.33333vw;
  width: 50%;
}

@media (min-width: 768px) {
  .p-cost__info > * {
    padding-left: min(2.41935vw, 30px);
    padding-right: min(2.41935vw, 30px);
    margin-bottom: min(2.41935vw, 30px);
    width: calc(100% / 3);
  }
}

@media (max-width: 767px) {
  .p-cost__info > *:nth-of-type(odd) {
    border-left: none;
  }
}

@media (min-width: 768px) {
  .p-cost__info > *:nth-of-type(3n+1) {
    padding-left: 0;
    border-left: none;
  }
}

@media (min-width: 768px) {
  .p-cost__info > *:last-child {
    padding-right: 0;
  }
}

.p-cost__info > * + * {
  border-left: 1px solid #717E5E;
}

@media (min-width: 768px) {
  .p-cost__info > * + * {
    border-width: 2px;
  }
}

.p-cost__note {
  text-align: left;
  line-height: 2;
  font-weight: 700;
  padding-left: 5.33333vw;
  padding-right: 5.33333vw;
}

@media (max-width: 767px) {
  .p-cost__note {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-cost__note {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

@media (min-width: 768px) {
  .p-cost__note {
    padding-left: 0;
    padding-right: 0;
  }
}

.p-cost__time {
  color: #717E5E;
  line-height: 1.5;
  font-weight: 700;
  font-size: 6.93333vw;
  font-family: "GenJyuuGothic", sans-serif;
}

@media (min-width: 768px) {
  .p-cost__time {
    font-size: min(2.90323vw, 36px);
  }
}

.p-cost__time strong {
  display: inline-block;
  font-weight: 700;
  line-height: 1;
  position: relative;
  font-size: 12vw;
  margin-right: 1.86667vw;
  top: 0.53333vw;
}

@media (min-width: 768px) {
  .p-cost__time strong {
    font-size: min(6.45161vw, 80px);
    margin-right: min(0.80645vw, 10px);
    top: min(0.40323vw, 5px);
  }
}

.p-cost__price {
  font-weight: 700;
  font-size: 5.33333vw;
  margin-top: 1.86667vw;
}

@media (min-width: 768px) {
  .p-cost__price {
    font-size: min(2.90323vw, 36px);
    margin-top: min(0.80645vw, 10px);
  }
}

.p-cost__price--tax {
  font-size: 4.26667vw;
  display: inline-block;
  margin-left: 1.33333vw;
}

@media (min-width: 768px) {
  .p-cost__price--tax {
    font-size: min(2.25806vw, 28px);
    display: inline-block;
    margin-left: min(1.20968vw, 15px);
  }
}

.p-cost-ex {
  display: grid;
  grid-template-columns: 1fr 1fr;
  row-gap: 8vw;
  flex-wrap: wrap;
  margin-top: 5.33333vw;
  padding-left: 2.66667vw;
  padding-right: 2.66667vw;
}

@media (min-width: 768px) {
  .p-cost-ex {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    -webkit-column-gap: min(4.83871vw, 60px);
    column-gap: min(4.83871vw, 60px);
    row-gap: min(2.41935vw, 30px);
    margin-top: min(4.83871vw, 60px);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    width: min(66.12903vw, 820px);
  }
}

.p-cost-ex__main {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.p-cost-ex__time {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #717E5E;
  font-weight: 700;
  font-size: 8vw;
  width: 21.33333vw;
  height: 21.33333vw;
  position: relative;
}

@media (min-width: 768px) {
  .p-cost-ex__time {
    font-size: min(2.90323vw, 36px);
    width: clamp(80px, 8.06452vw, 100px);
    height: clamp(80px, 8.06452vw, 100px);
  }
}

.p-cost-ex__time::before {
  content: "";
  border: 1px solid #717E5E;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-cost-ex__time .unit {
  display: inline-block;
  font-family: "GenJyuuGothic", sans-serif;
  position: relative;
  top: 0.8vw;
  font-size: 4.26667vw;
}

@media (min-width: 768px) {
  .p-cost-ex__time .unit {
    top: min(0.32258vw, 4px);
    font-size: min(1.45161vw, 18px);
  }
}

.p-cost-ex__price {
  font-weight: 700;
  margin-top: 2.66667vw;
  font-size: 5.33333vw;
}

@media (min-width: 768px) {
  .p-cost-ex__price {
    margin-top: min(1.6129vw, 20px);
    font-size: clamp(16px, 1.6129vw, 20px);
  }
}

.p-cost-ex__price > span {
  display: inline-block;
  font-size: 4vw;
  margin-left: 1.86667vw;
  position: relative;
  top: -0.26667vw;
}

@media (min-width: 768px) {
  .p-cost-ex__price > span {
    top: min(-0.16129vw, -2px);
    font-size: clamp(12px, 1.12903vw, 14px);
    margin-left: min(0.80645vw, 10px);
  }
}

@media (min-width: 768px) {
  .p-cost-case {
    margin-left: auto;
    margin-right: auto;
    max-width: 960px;
  }
}

.p-cost-case__block {
  position: relative;
  padding-left: 13.33333vw;
}

@media (min-width: 768px) {
  .p-cost-case__block {
    padding-left: min(9.67742vw, 120px);
  }
}

.p-cost-case__block::before, .p-cost-case__block::after {
  content: "";
  position: absolute;
}

.p-cost-case__block::before {
  background-color: #717E5E;
  top: 20vw;
  left: 2.66667vw;
  width: 1px;
  height: 100%;
}

@media (min-width: 768px) {
  .p-cost-case__block::before {
    top: min(10.48387vw, 130px);
    left: 0;
    width: 2px;
  }
}

.p-cost-case__block::after {
  background-color: #FAF5E8;
  top: 0;
  left: 0;
  width: 16vw;
  height: 14.66667vw;
  margin-left: calc(50% - 50vw);
}

@media (min-width: 768px) {
  .p-cost-case__block::after {
    left: auto;
    right: calc(100% - min(4.43548vw, 55px));
    height: min(8.87097vw, 110px);
    width: 100vw;
    margin-left: 0;
  }
}

.p-cost-case__block + * {
  margin-top: 32vw;
}

@media (min-width: 768px) {
  .p-cost-case__block + * {
    margin-top: min(24.19355vw, 300px);
  }
}

.p-cost-case__text {
  line-height: 2;
}

@media (max-width: 767px) {
  .p-cost-case__text {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-cost-case__text {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-cost-case__text + * {
  margin-top: 1em;
}

.p-cost-case__title {
  line-height: 1.7;
  display: flex;
  align-items: center;
  height: 14.66667vw;
}

@media (max-width: 767px) {
  .p-cost-case__title {
    font-size: 6.93333vw;
  }
}

@media (min-width: 768px) {
  .p-cost-case__title {
    font-size: clamp(30px, 2.90323vw, 36px);
  }
}

@media (min-width: 768px) {
  .p-cost-case__title {
    height: min(8.87097vw, 110px);
  }
}

.p-cost-case__title::before {
  content: "";
  position: absolute;
  top: 0;
  left: -4.53333vw;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 1;
  height: 14.66667vw;
  width: 14.66667vw;
}

@media (min-width: 768px) {
  .p-cost-case__title::before {
    left: auto;
    right: calc(100% - min(4.43548vw, 55px));
    height: min(8.87097vw, 110px);
    width: min(8.87097vw, 110px);
  }
}

.p-cost-case__title--icon-scale-balanced::before {
  background-image: url(../img/cost/icon_scale-balanced.svg);
}

.p-cost-case__title--icon-hat-police::before {
  background-image: url(../img/cost/icon_hat-police.svg);
}

.p-cost-case__title--icon-heart-crack::before {
  background-image: url(../img/cost/icon_heart-crack.svg);
}

.p-cost-case__title--icon-book-pen::before {
  background-image: url(../img/cost/icon_book-pen.svg);
}

.p-cost-case__title + * {
  margin-top: 2.66667vw;
}

@media (min-width: 768px) {
  .p-cost-case__title + * {
    margin-top: min(1.12903vw, 14px);
  }
}

.p-flow-container {
  margin-top: 16vw;
}

@media (min-width: 768px) {
  .p-flow-container {
    margin-top: min(8.06452vw, 100px);
  }
}

.p-flow-container.p-flow--numbers {
  counter-reset: stepNum circleNum;
}

.p-flow {
  position: relative;
}

@media (min-width: 768px) {
  .p-flow {
    display: flex;
    justify-content: space-between;
    padding-left: 0;
  }
}

.p-flow + .p-flow {
  margin-top: 16vw;
}

@media (min-width: 768px) {
  .p-flow + .p-flow {
    margin-top: min(8.06452vw, 100px);
  }
}

.p-flow__head {
  flex-shrink: 0;
  text-align: center;
}

@media (min-width: 768px) {
  .p-flow__head {
    text-align: left;
    padding-left: min(3.22581vw, 40px);
  }
}

.p-flow__head-label {
  color: #717E5E;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  line-height: 2;
  margin-bottom: 1.33333vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

@media (max-width: 767px) {
  .p-flow__head-label {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-flow__head-label {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

@media (min-width: 768px) {
  .p-flow__head-label {
    justify-content: flex-start;
    margin-bottom: min(0.80645vw, 10px);
  }
}

.p-flow__head-label::after {
  counter-increment: stepNum 1;
  content: counter(stepNum);
  display: block;
  color: #717E5E;
  line-height: 2;
  font-weight: 700;
  line-height: 1;
}

@media (max-width: 767px) {
  .p-flow__head-label::after {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-flow__head-label::after {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-flow__head-title {
  line-height: 1.7;
  position: relative;
  z-index: 0;
  padding: 2.13333vw 0;
}

@media (max-width: 767px) {
  .p-flow__head-title {
    font-size: 6.93333vw;
  }
}

@media (min-width: 768px) {
  .p-flow__head-title {
    font-size: clamp(30px, 2.90323vw, 36px);
  }
}

@media (min-width: 768px) {
  .p-flow__head-title {
    padding-top: min(1.6129vw, 20px);
    padding-right: min(1.6129vw, 20px);
    padding-bottom: min(1.6129vw, 20px);
    width: clamp(200px, 26.6129vw, 330px);
  }
}

.p-flow__head-title::before {
  content: "";
  background-color: #FAF5E8;
  z-index: -1;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 768px) {
  .p-flow__head-title::before {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}

.p-flow__main {
  padding-top: 8vw;
  padding-bottom: 8vw;
}

@media (min-width: 768px) {
  .p-flow__main {
    margin-left: auto;
    padding-top: min(16.12903vw, 200px);
    padding-left: min(22.58065vw, 280px);
    padding-bottom: min(4.03226vw, 50px);
    width: min(58.87097vw, 730px);
  }
}

.p-flow__text {
  line-height: 2;
  font-weight: 500;
}

@media (max-width: 767px) {
  .p-flow__text {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-flow__text {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-flow__number {
  display: none;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

@media (min-width: 768px) {
  .p-flow__number {
    display: block;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.p-flow__number-icon {
  border: 1px solid #717E5E;
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 10.66667vw;
  width: 10.66667vw;
}

@media (min-width: 768px) {
  .p-flow__number-icon {
    margin-top: min(2.41935vw, 30px);
    border-width: 2px;
    height: min(9.67742vw, 120px);
    width: min(9.67742vw, 120px);
  }
}

.p-flow__number-icon > * {
  display: block;
}

.p-flow__number-icon > *::before {
  counter-increment: circleNum 1;
  content: counter(circleNum);
  display: block;
  color: #717E5E;
  font-size: 5.33333vw;
  font-family: "Rajdhani", sans-serif;
  font-weight: 700;
  line-height: 1;
}

@media (min-width: 768px) {
  .p-flow__number-icon > *::before {
    font-size: min(4.83871vw, 60px);
  }
}

.p-flow__number-line {
  background-color: #717E5E;
  position: absolute;
  top: 21.33333vw;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 1px;
  height: 0;
  transition: height 2s var(--ease-out-sine);
}

@media (min-width: 768px) {
  .p-flow__number-line {
    top: min(16.12903vw, 200px);
    width: 2px;
  }
}

body.is-loaded .p-flow.is-on .p-flow__number-line {
  transition-delay: .3s;
  height: 100%;
}

.p-access-container {
  text-align: center;
  position: relative;
  z-index: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: 960px;
  padding-top: 16vw;
  padding-bottom: 16vw;
}

@media (min-width: 768px) {
  .p-access-container {
    padding-top: min(8.06452vw, 100px);
    padding-bottom: min(8.06452vw, 100px);
  }
}

.p-access-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: #FAF5E8;
  z-index: -1;
  margin-left: calc(50% - 50vw);
}

.p-accessList {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-accessList {
    flex-direction: row;
    margin-top: min(5.16129vw, 64px);
    margin-left: -40px;
  }
}

.p-accessList + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-accessList + * {
    margin-top: min(5.16129vw, 64px);
  }
}

.p-accessList > * {
  width: 100%;
}

@media (min-width: 768px) {
  .p-accessList > * {
    padding-left: 40px;
    width: 50%;
  }
}

.p-accessList > * + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .p-accessList > * + * {
    margin-top: 0;
  }
}

.p-access__text {
  line-height: 2;
  font-weight: 700;
}

@media (max-width: 767px) {
  .p-access__text {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-access__text {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-access__title {
  line-height: 1.7;
  font-weight: 700;
}

@media (max-width: 767px) {
  .p-access__title {
    font-size: 6.93333vw;
  }
}

@media (min-width: 768px) {
  .p-access__title {
    font-size: clamp(30px, 2.90323vw, 36px);
  }
}

.p-access__title + * {
  margin-top: min(4.59677vw, 57px);
}

.p-access__frame {
  position: relative;
  overflow: hidden;
  border: 1px solid #717E5E;
}

@media (min-width: 768px) {
  .p-access__frame {
    border-width: 2px;
  }
}

.p-access__frame::before {
  content: "";
  display: block;
  padding-top: 100%;
}

.p-access__frame > * {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.p-access-contact {
  text-align: center;
}

.p-access-contact__info {
  line-height: 2;
  font-weight: 700;
}

@media (max-width: 767px) {
  .p-access-contact__info {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .p-access-contact__info {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.p-access-contact__title {
  color: #717E5E;
  line-height: 1.85;
  font-weight: 700;
  font-family: "GenJyuuGothic", sans-serif;
}

@media (max-width: 767px) {
  .p-access-contact__title {
    font-size: 4.8vw;
  }
}

@media (min-width: 768px) {
  .p-access-contact__title {
    font-size: clamp(20px, 2.09677vw, 26px);
  }
}

.p-access-contact__tel a {
  color: #717E5E;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 10.66667vw;
  font-weight: 700;
  font-family: "Rajdhani", sans-serif;
  margin: 6.66667vw 0;
}

@media (min-width: 768px) {
  .p-access-contact__tel a {
    font-size: min(7.25806vw, 90px);
    margin: min(6.04839vw, 75px) 0;
  }
}

.p-access-contact__tel a::before {
  content: "";
  background: url(../img/access/icon_phone.svg) no-repeat center;
  background-size: contain;
  display: block;
  width: 12.26667vw;
  height: 12vw;
  margin-right: 2.66667vw;
}

@media (min-width: 768px) {
  .p-access-contact__tel a::before {
    width: min(7.33871vw, 91px);
    height: min(7.25806vw, 90px);
    margin-right: min(2.01613vw, 25px);
  }
}

/**
 *	HOME
 */
body.home .l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transition: opacity 1.3s var(--ease-out-sine);
  opacity: 0;
}

body.home .l-header__logo {
  display: none;
}

body.home.is-loaded .l-header {
  transition-delay: 2.4s;
  opacity: 1;
}

.home-mv {
  position: relative;
  height: var(--vh);
  width: 100%;
}

.home-mv__logo {
  opacity: 0;
  -webkit-filter: blur(3px);
  filter: blur(3px);
}

.home-mv__logo img {
  width: clamp(300px, 29.03226vw, 360px);
}

.home-mv__bg {
  pointer-events: none;
  overflow: hidden;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.home-mv__bg::before {
  content: "";
  background-color: rgba(255, 255, 255, 0.6);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition: background-color 1s var(--ease-out-sine);
}

.home-mv__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-transform: scale(1.03);
  transform: scale(1.03);
  will-change: transform;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  opacity: 0;
  transition: opacity 1.3s var(--ease-out-sine), -webkit-transform 1.3s var(--ease-out-sine);
  transition: opacity 1.3s var(--ease-out-sine), transform 1.3s var(--ease-out-sine);
  transition: opacity 1.3s var(--ease-out-sine), transform 1.3s var(--ease-out-sine), -webkit-transform 1.3s var(--ease-out-sine);
}

body.is-scroll .home-mv__bg::before {
  background-color: rgba(255, 255, 255, 0.74);
}

.home-mv__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: 1;
  height: 100%;
}

.home-mv__scroll {
  color: #717E5E;
  position: absolute;
  top: 80.95952vh;
  left: 5.33333vw;
  z-index: 1;
  font-size: 2.93333vw;
  font-weight: 700;
  line-height: 1.47826;
  font-family: "GenJyuuGothic", sans-serif;
  opacity: 0;
  transition: opacity 1.3s var(--ease-out-sine), -webkit-transform 1.3s var(--ease-out-sine);
  transition: opacity 1.3s var(--ease-out-sine), transform 1.3s var(--ease-out-sine);
  transition: opacity 1.3s var(--ease-out-sine), transform 1.3s var(--ease-out-sine), -webkit-transform 1.3s var(--ease-out-sine);
}

@media (min-width: 768px) {
  .home-mv__scroll {
    top: min(52.8757%, 570px);
    left: 6.45161%;
    font-size: clamp(20px, 2.09677vw, 26px);
  }
}

.home-mv__scroll::before, .home-mv__scroll::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 1px;
  height: min(45.33333vw, 200px);
}

@media (min-width: 768px) {
  .home-mv__scroll::before, .home-mv__scroll::after {
    width: 2px;
    height: clamp(420px, 36.29032vw, 450px);
  }
}

.home-mv__scroll::before {
  background-color: rgba(113, 126, 94, 0.4);
}

.home-mv__scroll::after {
  background-color: #717E5E;
  -webkit-animation-name: anim-scr-down;
  animation-name: anim-scr-down;
  -webkit-animation-duration: 5s;
  animation-duration: 5s;
  -webkit-animation-timing-function: var(--ease-out-expo);
  animation-timing-function: var(--ease-out-expo);
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

body.is-loaded .home-mv .home-mv__logo {
  -webkit-animation: filter 1.3s var(--ease-out-sine) 0.5s forwards;
  animation: filter 1.3s var(--ease-out-sine) 0.5s forwards;
}

body.is-loaded .home-mv .home-mv__bg img {
  transition-delay: 1.8s;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

body.is-loaded .home-mv .home-mv__scroll {
  transition-delay: 2.4s;
  opacity: 1;
}

@-webkit-keyframes filter {
  0% {
    opacity: 0;
    -webkit-filter: blur(5px);
    filter: blur(5px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@keyframes filter {
  0% {
    opacity: 0;
    -webkit-filter: blur(5px);
    filter: blur(5px);
  }
  100% {
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

.home-intro {
  position: relative;
  padding-bottom: 106.66667vw;
}

@media (min-width: 768px) {
  .home-intro {
    padding-top: min(3.62903vw, 45px);
    padding-bottom: min(34.27419vw, 425px);
  }
}

.home-intro__main {
  position: relative;
  z-index: 1;
}

@media (min-width: 768px) {
  .home-intro__main {
    width: min(44.35484vw, 550px);
  }
}

.home-intro__text {
  line-height: 2;
  font-weight: 500;
}

@media (max-width: 767px) {
  .home-intro__text {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .home-intro__text {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.home-intro__title {
  line-height: 1.7;
  font-weight: 700;
  position: relative;
  z-index: 1;
  margin-left: -5.97015%;
  padding: 5.33333vw 2.66667vw 5.33333vw 5.334%;
}

@media (max-width: 767px) {
  .home-intro__title {
    font-size: 6.93333vw;
  }
}

@media (min-width: 768px) {
  .home-intro__title {
    font-size: clamp(30px, 2.90323vw, 36px);
  }
}

@media (min-width: 768px) {
  .home-intro__title {
    margin-left: -12.72727%;
    margin-right: -21.81818%;
    padding: min(3.22581vw, 40px) min(4.43548vw, 55px) min(3.22581vw, 40px) 12.72727%;
  }
}

.home-intro__title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FAF5E8;
  z-index: -1;
}

.home-intro__title + * {
  margin-top: 8vw;
}

@media (min-width: 768px) {
  .home-intro__title + * {
    margin-top: min(4.03226vw, 50px);
  }
}

.home-intro__img1, .home-intro__img2 {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 0 0;
  position: absolute;
}

.home-intro__img1 {
  background-image: url(../img/home/img_01.jpg);
  bottom: 21.33333vw;
  right: -5.97015%;
  width: 50.66667vw;
  height: 78.4vw;
}

@media (min-width: 768px) {
  .home-intro__img1 {
    bottom: min(18.95161vw, 235px);
    right: 0;
    width: min(40.32258vw, 500px);
    height: min(62.41935vw, 774px);
  }
}

.home-intro__img2 {
  background-image: url(../img/home/img_02.jpg);
  bottom: 0;
  right: 40vw;
  width: 42.66667vw;
  height: 29.86667vw;
}

@media (min-width: 768px) {
  .home-intro__img2 {
    right: min(21.77419vw, 270px);
    width: min(32.25806vw, 400px);
    height: min(22.58065vw, 280px);
  }
}

.home-news {
  text-align: center;
  position: relative;
  z-index: 0;
}

@media (min-width: 768px) {
  .home-news {
    margin-left: auto;
    margin-right: auto;
    width: 72.72727%;
  }
}

.home-news::before, .home-news::after {
  z-index: -1;
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  opacity: 0;
  -webkit-transform: translate(0, 0) rotate(-7deg);
  transform: translate(0, 0) rotate(-7deg);
  height: 45.06667vw;
  width: 42.66667vw;
}

@media (min-width: 768px) {
  .home-news::before, .home-news::after {
    height: min(36.29032vw, 450px);
    width: min(35.96774vw, 446px);
  }
}

.home-news::before {
  background-image: url(../img/home/attach_leaf_01.svg);
  top: -16vw;
  right: -16vw;
}

@media (min-width: 768px) {
  .home-news::before {
    top: -100px;
    right: -30%;
  }
}

.home-news::after {
  background-image: url(../img/home/attach_leaf_02.svg);
  bottom: -32vw;
  left: -5.33333vw;
}

@media (min-width: 768px) {
  .home-news::after {
    bottom: -100px;
    left: -25%;
  }
}

.home-news__text {
  line-height: 2;
  text-align: left;
}

@media (max-width: 767px) {
  .home-news__text {
    font-size: 4.26667vw;
  }
}

@media (min-width: 768px) {
  .home-news__text {
    font-size: clamp(16px, 1.45161vw, 18px);
  }
}

.home-news__catch {
  line-height: 1.85;
}

@media (max-width: 767px) {
  .home-news__catch {
    font-size: 4.8vw;
  }
}

@media (min-width: 768px) {
  .home-news__catch {
    font-size: clamp(20px, 2.09677vw, 26px);
  }
}

.home-news__catch + * {
  margin-top: 6.4vw;
}

@media (min-width: 768px) {
  .home-news__catch + * {
    margin-top: min(4.03226vw, 50px);
  }
}

body.is-loaded .home-news.is-on::before, body.is-loaded .home-news.is-on::after {
  -webkit-animation-name: anim-leaf;
  animation-name: anim-leaf;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-timing-function: var(--ease-out-sine);
  animation-timing-function: var(--ease-out-sine);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.home-service-container {
  position: relative;
  z-index: 0;
  padding-top: 8vw;
  padding-bottom: 16vw;
}

@media (max-width: 767px) {
  .home-service-container {
    padding-left: 5.97015%;
    padding-right: 5.97015%;
  }
}

@media (min-width: 768px) {
  .home-service-container {
    padding-left: 6.36364%;
    padding-right: 6.36364%;
  }
}

@media (max-width: 767px) {
  .home-service-container {
    margin-left: -5.33333vw;
    margin-right: -5.33333vw;
  }
}

@media (min-width: 768px) {
  .home-service-container {
    margin-left: -5.646%;
    margin-right: -5.646%;
  }
}

@media (min-width: 768px) {
  .home-service-container {
    padding-top: clamp(60px, 8.06452vw, 100px);
    padding-bottom: clamp(60px, 8.06452vw, 100px);
  }
}

.home-service-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: #FAF5E8;
  margin-left: calc(50% - 50vw);
}

.home-serviceList {
  position: relative;
}

@media (min-width: 768px) {
  .home-serviceList {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: min(3.22581vw, 40px) min(6.45161vw, 80px);
  }
}

.home-serviceList.home-service--numbers {
  counter-reset: n 0;
}

.home-serviceList > * > * {
  height: 100%;
}

.home-serviceList .home-service-link__title {
  display: flex;
  align-items: center;
  position: relative;
}

.home-serviceList .home-service-link__title::before {
  counter-increment: n 1;
  content: counter(n, decimal-leading-zero);
  display: block;
  color: #717E5E;
  margin-top: 1vw;
  margin-right: 3.2vw;
  font-size: 8vw;
  font-family: "Rajdhani", sans-serif;
  font-weight: 500;
  line-height: 1;
  flex-shrink: 0;
  align-self: flex-start;
}

@media (min-width: 768px) {
  .home-serviceList .home-service-link__title::before {
    margin-right: min(1.6129vw, 20px);
    font-size: min(4.03226vw, 50px);
  }
}

.home-service-link {
  text-decoration: none;
  display: block;
  color: #595757;
  border-bottom: 1px solid #717E5E;
  padding-top: 6.66667vw;
  padding-bottom: 4vw;
}

@media (min-width: 768px) {
  .home-service-link {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-width: 2px;
    padding-top: 0;
    padding-bottom: min(0.80645vw, 10px);
  }
}

.home-service-link__title {
  line-height: 1.5;
  font-weight: 700;
}

@media (max-width: 767px) {
  .home-service-link__title {
    font-size: 5.86667vw;
  }
}

@media (min-width: 768px) {
  .home-service-link__title {
    font-size: clamp(20px, 2.09677vw, 26px);
  }
}

.home-service-link__title--en {
  display: block;
  text-align: right;
  font-family: "GenJyuuGothic", sans-serif;
  font-size: 3.46667vw;
  font-weight: 500;
  margin-top: 2.66667vw;
}

@media (min-width: 768px) {
  .home-service-link__title--en {
    margin-top: min(0.80645vw, 10px);
    font-size: min(1.29032vw, 16px);
  }
}

@media (min-width: 768px) {
  .home-service-link:hover {
    opacity: var(--hov-opacity);
  }
}

/**
 *	調整用
 */
/* テキストカラー
====================================== */
.u-text-text {
  color: #595757;
}

.u-text-black {
  color: #000000;
}

.u-text-white {
  color: #ffffff;
}

.u-text-green {
  color: #717E5E;
}

.u-text-yellow {
  color: #F0E5C8;
}

.u-text-yellow-1 {
  color: #FAF5E8;
}

.u-text-yellow-2 {
  color: #F1EAD3;
}

/* 背景カラー
====================================== */
.u-bg-text {
  background-color: #595757;
}

.u-bg-black {
  background-color: #000000;
}

.u-bg-white {
  background-color: #ffffff;
}

.u-bg-green {
  background-color: #717E5E;
}

.u-bg-yellow {
  background-color: #F0E5C8;
}

.u-bg-yellow-1 {
  background-color: #FAF5E8;
}

.u-bg-yellow-2 {
  background-color: #F1EAD3;
}

/* マージン調整用
====================================== */
.u-mt0 {
  margin-top: 0px !important;
}

.u-mb0 {
  margin-bottom: 0px !important;
}

.u-ml0 {
  margin-left: 0px !important;
}

.u-mr0 {
  margin-right: 0px !important;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

.u-mr35 {
  margin-right: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

.u-mr45 {
  margin-right: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-mt65 {
  margin-top: 65px !important;
}

.u-mb65 {
  margin-bottom: 65px !important;
}

.u-ml65 {
  margin-left: 65px !important;
}

.u-mr65 {
  margin-right: 65px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-mb75 {
  margin-bottom: 75px !important;
}

.u-ml75 {
  margin-left: 75px !important;
}

.u-mr75 {
  margin-right: 75px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-ml80 {
  margin-left: 80px !important;
}

.u-mr80 {
  margin-right: 80px !important;
}

.u-mt85 {
  margin-top: 85px !important;
}

.u-mb85 {
  margin-bottom: 85px !important;
}

.u-ml85 {
  margin-left: 85px !important;
}

.u-mr85 {
  margin-right: 85px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-ml90 {
  margin-left: 90px !important;
}

.u-mr90 {
  margin-right: 90px !important;
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-mb95 {
  margin-bottom: 95px !important;
}

.u-ml95 {
  margin-left: 95px !important;
}

.u-mr95 {
  margin-right: 95px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

/* レスポンシブ表示制御
====================================== */
.u-hidden {
  display: none;
}

@media (min-width: 768px) {
  .u-hidden-pc {
    display: none;
  }
}

@media (max-width: 767px) {
  .u-hidden-sp {
    display: none;
  }
}

/*# sourceMappingURL=style.css.map */
