@charset "UTF-8";
/* =========================================================
 base
========================================================= */
/* reset
------------------------------------- */
/*!
 * ress.css • v3.0.1
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  word-break: normal;
  -moz-tab-size: 4;
  tab-size: 4;
}

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

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

* {
  padding: 0;
  margin: 0;
}

hr {
  overflow: visible;
  height: 0;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

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

a {
  background-color: transparent;
}

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

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

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

input {
  border-radius: 0;
}

[disabled] {
  cursor: default;
}

[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;
}

textarea {
  overflow: auto;
  resize: vertical;
}

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

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

[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-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, input, select, textarea {
  background-color: transparent;
  border-style: none;
}

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

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

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

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

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

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

@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;
}

ul, dl, figure {
  margin: 0;
  padding: 0;
}

dt {
  font-weight: normal;
}

ul, li {
  list-style: none;
}

ol {
  padding-left: 1.5em;
}
ol > li {
  list-style: decimal;
}
ol > li + li {
  margin-top: 0.3em;
}

img, iframe {
  vertical-align: bottom;
  max-width: 100%;
}

img {
  height: auto;
}

button {
  outline: none;
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.4;
}

body {
  height: 100%;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: normal;
  line-height: 1.7;
  color: #040000;
  font-size: 15px;
  font-size: 0.9375rem;
}
@media (min-width: 1024px) {
  body {
    font-size: 16px;
    font-size: 1rem;
  }
}

b, strong {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
  text-decoration: none;
  color: #040000;
}

@media (min-width: 768px) {
  a[href*="tel:"]:not(.l-header__contact.u-hidden-large) {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

_:lang(x)::-internal-media-controls-overlay-cast-button, img {
  image-rendering: -webkit-optimize-contrast;
}

/*
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
}
*/
.is-fadeIn {
  opacity: 0;
}

/* =========================================================
 component
========================================================= */
/* inner
-------------------------------------- */
.c-inner {
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .c-inner {
    width: 88%;
    max-width: 1200px;
  }
}

/* section
-------------------------------------- */
.c-section--bg {
  background: #e05423;
}

/* img
-------------------------------------- */
.c-img {
  position: relative;
  border-radius: 20px;
}

.c-sharpImg img {
  image-rendering: -webkit-optimize-contrast;
}

/* list
-------------------------------------- */
.c-list > li {
  position: relative;
  padding-left: 1em;
}
.c-list > li:before {
  position: absolute;
  left: 0;
  content: "・";
}
.c-list > li + li {
  margin-top: 0.3em;
}
.c-list ul {
  margin-top: 0.3em;
}
.c-list--square > li::before {
  content: "■" !important;
}
.c-list--disc > li::before {
  content: "●" !important;
}
.c-list--att > li::before {
  content: "※" !important;
}
.c-list--row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6em 1.5em;
}
.c-list--row > li + li {
  margin-top: 0;
}

/* title
-------------------------------------- */
.c-pageTitle {
  display: flex;
}
@media (max-width: 767px) {
  .c-pageTitle {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (min-width: 768px) {
  .c-pageTitle {
    align-items: flex-end;
    flex-wrap: wrap;
  }
}
.c-pageTitle .main {
  position: relative;
  margin-right: 0.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.3;
  font-size: min(8vw, 30px);
}
@media (min-width: 768px) {
  .c-pageTitle .main {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
@media (min-width: 1024px) {
  .c-pageTitle .main {
    font-size: max(min(3.125vw, 50px), 40px);
  }
}
.c-pageTitle .sub {
  font-family: "Noto Sans", sans-serif;
  color: #1859BC;
  font-weight: 700;
  font-size: 22px;
  font-size: 1.375rem;
}
@media (min-width: 768px) {
  .c-pageTitle .sub {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
@media (min-width: 1024px) {
  .c-pageTitle .sub {
    margin-bottom: -0.1em;
    font-size: min(2.25vw, 36px);
  }
}

.c-sectionTitle {
  display: flex;
}
@media (max-width: 767px) {
  .c-sectionTitle {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (min-width: 768px) {
  .c-sectionTitle {
    align-items: flex-end;
    flex-wrap: wrap;
  }
}
.c-sectionTitle .main {
  position: relative;
  margin-right: 0.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.3;
  font-size: min(7.4666666667vw, 28px);
}
@media (min-width: 1024px) {
  .c-sectionTitle .main {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.c-sectionTitle .sub {
  font-family: "Noto Sans", sans-serif;
  color: #1859BC;
  font-weight: 700;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 1024px) {
  .c-sectionTitle .sub {
    margin-bottom: -0.1em;
    font-size: 26px;
    font-size: 1.625rem;
  }
}

.c-sectionSubtitle {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 1024px) {
  .c-sectionSubtitle {
    font-size: 26px;
    font-size: 1.625rem;
  }
}

/* lead
-------------------------------------- */
/* btn
-------------------------------------- */
.c-primaryBtn {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding-right: 1.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 17px;
  font-size: 1.0625rem;
}
@media (min-width: 1024px) {
  .c-primaryBtn {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.c-primaryBtn::before, .c-primaryBtn::after {
  position: absolute;
  aspect-ratio: 1/1;
  width: 1em;
  border-radius: 100%;
  content: "";
}
.c-primaryBtn::before {
  background: #040000;
}
.c-primaryBtn::after {
  background: #FFF;
  clip-path: polygon(40% 35%, 65% 50%, 40% 65%);
}
.c-primaryBtn::before, .c-primaryBtn::after {
  right: 0;
}
@media (any-hover: hover) {
  .c-primaryBtn {
    transition: 0.5s;
  }
  .c-primaryBtn::before {
    transition: 0.5s;
  }
  .c-primaryBtn:hover {
    color: #1859BC;
  }
  .c-primaryBtn:hover::before {
    background: #1859BC;
  }
}

.c-secondaryBtn {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding-right: 1.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 15px;
  font-size: 0.9375rem;
}
.c-secondaryBtn::before, .c-secondaryBtn::after {
  position: absolute;
  aspect-ratio: 1/1;
  width: 1em;
  border-radius: 100%;
  content: "";
}
.c-secondaryBtn::before {
  background: #040000;
}
.c-secondaryBtn::after {
  background: #FFF;
  clip-path: polygon(40% 35%, 65% 50%, 40% 65%);
}
@media (min-width: 1024px) {
  .c-secondaryBtn {
    font-size: 16px;
    font-size: 1rem;
  }
}
.c-secondaryBtn::before, .c-secondaryBtn::after {
  right: 0;
}
@media (any-hover: hover) {
  .c-secondaryBtn {
    transition: 0.5s;
  }
  .c-secondaryBtn::before {
    transition: 0.5s;
  }
  .c-secondaryBtn:hover {
    color: #1859BC;
  }
  .c-secondaryBtn:hover::before {
    background: #1859BC;
  }
}

.c-tertiaryBtn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 18.75em;
  min-height: 3.75em;
  padding: 0.3em 0.95em;
  background: #1859BC;
  border-radius: 3em;
  text-align: center;
  line-height: 1.4;
  color: #FFF;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  border: 1px solid transparent;
  font-size: 15px;
  font-size: 0.9375rem;
}
@media (min-width: 1024px) {
  .c-tertiaryBtn {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (any-hover: hover) {
  .c-tertiaryBtn {
    transition: 0.5s color, 0.5s background-color, 0.5s border-color;
  }
  .c-tertiaryBtn:hover {
    color: #1859BC;
    background: #FFF;
    border-color: #1859BC;
  }
}
.c-tertiaryBtn--secondaryColor {
  background: #e05423;
}
@media (any-hover: hover) {
  .c-tertiaryBtn--secondaryColor:hover {
    color: #e05423;
    border-color: #e05423;
  }
}

a:hover .c-primaryBtn,
a:hover .c-secondaryBtn {
  color: #1859BC;
}
a:hover .c-primaryBtn::before,
a:hover .c-secondaryBtn::before {
  background: #1859BC;
}

/* link
-------------------------------------- */
.c-link--color {
  color: #036EA9;
}
@media (any-hover: hover) {
  .c-link--color {
    transition: 0.5s opacity;
  }
  .c-link--color:hover {
    opacity: 0.7;
  }
}
.c-link--external {
  display: inline-flex;
  justify-content: flex-start !important;
  align-items: center;
  gap: 0.4em;
}
.c-link--external::after {
  width: 0.8em;
  aspect-ratio: 1/1;
  background: url(../img/common/icon_external.svg) no-repeat center/contain;
  content: "";
}
@media (any-hover: hover) {
  .c-link--external {
    transition: 0.5s color;
  }
  .c-link--external:hover {
    color: #1859BC;
  }
  .c-link--external:hover::after {
    background-image: url(../img/common/icon_external_primary.svg);
  }
}
.c-link--externalWhite::after {
  background-image: url(../img/common/icon_external_white.svg);
}
.c-link--download {
  display: inline-flex;
  gap: 0.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  transition: 0.5s color;
}
.c-link--download::after {
  width: 1.25em;
  aspect-ratio: 1/1;
  background: url(../img/common/icon_download.svg) no-repeat center/contain;
  content: "";
}
@media (any-hover: hover) {
  .c-link--download:hover {
    color: #1859BC;
  }
  .c-link--download:hover::after {
    background-image: url(../img/common/icon_download_primary.svg);
  }
}

/* tableWrapper
-------------------------------------- */
@media (max-width: 767px) {
  .c-tableWrapper--maxSmall {
    overflow-x: auto;
    background: linear-gradient(to left, hsla(0, 0%, 100%, 0), white 15px) 0 0/50px 100%, linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%, linear-gradient(to right, hsla(0, 0%, 100%, 0), white 15px) right/50px 100%, linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
    background-repeat: no-repeat;
    background-attachment: local, scroll, local, scroll;
    border-right: 1px solid #CCC;
  }
}

/* table
-------------------------------------- */
.c-table {
  width: 100%;
  table-layout: fixed;
  margin-right: auto;
  margin-left: auto;
}
.c-table th, .c-table td {
  padding: 1.6em 0;
  border-bottom: 1px solid #bbbcbe;
}
.c-table thead th {
  text-align: left;
  color: #1859BC;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* tableList
-------------------------------------- */
.c-tableList {
  line-height: 1.5;
}
.c-tableList > div {
  display: flex;
}
@media (max-width: 767px) {
  .c-tableList > div {
    flex-direction: column;
  }
}
.c-tableList dt {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (min-width: 768px) {
  .c-tableList dd {
    flex: 1;
  }
}
.c-tableList--cell {
  border-top: #bbbcbe 1px solid;
}
.c-tableList--cell > div {
  border-bottom: #bbbcbe 1px solid;
}
.c-tableList--cell dt {
  padding: 1em;
  background: #F6F6F6;
}
@media (min-width: 768px) {
  .c-tableList--cell dt {
    width: 22%;
    min-width: 180px;
    padding: 1.5em;
  }
}
.c-tableList--cell dd {
  padding: 1em;
}
@media (min-width: 768px) {
  .c-tableList--cell dd {
    padding: 1.5em;
  }
}
.c-tableList--border > div {
  border-bottom: 1px solid #bbbcbe;
}
@media (max-width: 767px) {
  .c-tableList--border > div {
    padding: 1em 0;
  }
}
@media (min-width: 768px) {
  .c-tableList--border > div {
    padding: 1.625em 0;
  }
}
@media (max-width: 767px) {
  .c-tableList--border > div > dt {
    font-weight: bold;
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin-bottom: 0.5em;
  }
}
@media (min-width: 768px) {
  .c-tableList--border > div > dt {
    font-weight: normal;
    position: relative;
    width: 22%;
    min-width: 175px;
  }
}

/* img
-------------------------------------- */
.c-img {
  border-radius: 10px;
  overflow: hidden;
}
.c-img img {
  width: 100%;
}

/* archiveSelect
-------------------------------------- */
.c-archiveSelect {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  width: 9.375em;
}
.c-archiveSelect::after {
  position: absolute;
  right: 1em;
  width: 6px;
  height: 5px;
  background: #040000;
  content: "";
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.c-archiveSelect select {
  width: 100%;
  background: #f2f2f2;
  border-radius: 5px;
  padding: 0.25em 1em;
  cursor: pointer;
  color: #040000;
}

/* =========================================================
 utility
========================================================= */
/* テキスト
-------------------------------------- */
.u-text-left {
  text-align: left !important;
}

.u-text-center {
  text-align: center !important;
}

@media (min-width: 1024px) {
  .u-text-center-large {
    text-align: center !important;
  }
}

.u-text-right {
  text-align: right !important;
}

.u-fs-medium {
  font-size: 18px;
  font-size: 1.125rem;
}

.u-fs-large {
  font-size: 20px;
  font-size: 1.25rem;
}

.u-color-primary {
  color: #1859BC;
}

/* 表示・非表示
----------------------------------------------- */
.u-hidden {
  display: none !important;
}

@media (min-width: 376px) {
  .u-hidden-xSmall {
    display: none !important;
  }
}

@media (min-width: 521px) {
  .u-hidden-small {
    display: none !important;
  }
}

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

@media (min-width: 1024px) {
  .u-hidden-large {
    display: none !important;
  }
}

@media (min-width: 1366px) {
  .u-hidden-xLarge {
    display: none !important;
  }
}

@media (min-width: 1441px) {
  .u-hidden-xxLarge {
    display: none !important;
  }
}

@media (min-width: 2000px) {
  .u-hidden-xxxLarge {
    display: none !important;
  }
}

@media (max-width: 520px) {
  .u-visible-small {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .u-visible-medium {
    display: none !important;
  }
}

@media (max-width: 1023px) {
  .u-visible-large {
    display: none !important;
  }
}

@media (max-width: 1365px) {
  .u-visible-xLarge {
    display: none !important;
  }
}

@media (max-width: 1440px) {
  .u-visible-xxLarge {
    display: none !important;
  }
}

@media (max-width: 1919px) {
  .u-visible-xxxLarge {
    display: none !important;
  }
}

/* マージン調整
-------------------------------------- */
.u-mt-xSmall {
  margin-top: 20px !important;
}

.u-mt-small {
  margin-top: 30px !important;
}
@media (min-width: 1024px) {
  .u-mt-small {
    margin-top: 35px !important;
  }
}

.u-mt-medium {
  margin-top: 35px !important;
}
@media (min-width: 1024px) {
  .u-mt-medium {
    margin-top: 55px !important;
  }
}

.u-mt-large {
  margin-top: 50px !important;
}
@media (min-width: 1024px) {
  .u-mt-large {
    margin-top: 80px !important;
  }
}

.u-mt-xLarge {
  margin-top: 40px !important;
}
@media (min-width: 1024px) {
  .u-mt-xLarge {
    margin-top: 40px !important;
  }
}

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

.u-mb-small {
  margin-bottom: 30px !important;
}
@media (min-width: 1024px) {
  .u-mb-small {
    margin-bottom: 35px !important;
  }
}

.u-mb-medium {
  margin-bottom: 35px !important;
}
@media (min-width: 1024px) {
  .u-mb-medium {
    margin-bottom: 55px !important;
  }
}

.u-mb-large {
  margin-bottom: 60px !important;
}
@media (min-width: 1024px) {
  .u-mb-large {
    margin-bottom: 80px !important;
  }
}

.u-mb-xLarge {
  margin-bottom: 70px !important;
}
@media (min-width: 1024px) {
  .u-mb-xLarge {
    margin-bottom: 140px !important;
  }
}

.u-mt-0 {
  margin-top: 0 !important;
}

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

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

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

.u-pt-0 {
  padding-top: 0 !important;
}

.u-pb-0 {
  padding-bottom: 0 !important;
}

.u-pt-small {
  padding-top: 30px !important;
}
@media (min-width: 768px) {
  .u-pt-small {
    padding-top: 40px !important;
  }
}

.u-pt-medium {
  padding-top: 40px !important;
}
@media (min-width: 768px) {
  .u-pt-medium {
    padding-top: 60px !important;
  }
}

.u-pt-large {
  padding-top: 60px !important;
}
@media (min-width: 768px) {
  .u-pt-large {
    padding-top: 80px !important;
  }
}

.u-pt-xLarge {
  padding-top: 80px !important;
}
@media (min-width: 768px) {
  .u-pt-xLarge {
    padding-top: 100px !important;
  }
}

.u-pb-small {
  padding-bottom: 30px !important;
}
@media (min-width: 768px) {
  .u-pb-small {
    padding-bottom: 40px !important;
  }
}

.u-pb-medium {
  padding-bottom: 40px !important;
}
@media (min-width: 768px) {
  .u-pb-medium {
    padding-bottom: 60px !important;
  }
}

.u-pb-large {
  padding-bottom: 60px !important;
}
@media (min-width: 768px) {
  .u-pb-large {
    padding-bottom: 80px !important;
  }
}

.u-pb-xLarge {
  padding-bottom: 80px !important;
}
@media (min-width: 768px) {
  .u-pb-xLarge {
    padding-bottom: 100px !important;
  }
}

/* 寄せ
-------------------------------------- */
.u-align-right {
  margin-left: auto;
}

.u-align-center {
  margin-right: auto;
  margin-left: auto;
}

/* 明度変更
-------------------------------------- */
.u-brightness-105 {
  filter: brightness(105%);
}

.u-brightness-110 {
  filter: brightness(110%);
}

.u-brightness-111 {
  filter: brightness(111%);
}

.u-brightness-112 {
  filter: brightness(112%);
}

.u-brightness-113 {
  filter: brightness(113%);
}

.u-brightness-114 {
  filter: brightness(114%);
}

.u-brightness-115 {
  filter: brightness(115%);
}

.u-brightness-116 {
  filter: brightness(116%);
}

.u-brightness-117 {
  filter: brightness(117%);
}

.u-brightness-118 {
  filter: brightness(118%);
}

.u-brightness-119 {
  filter: brightness(119%);
}

.u-brightness-120 {
  filter: brightness(120%);
}

/* =========================================================
 animation
========================================================= */
/* cover
-------------------------------------- */
.is-cover {
  position: relative;
  overflow: hidden;
}
.is-cover__mask {
  display: block;
  position: absolute;
  z-index: 5;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 0;
  background: #1859BC;
  content: "";
}
.is-cover__contents {
  opacity: 0;
}
.is-cover--done .is-cover__contents {
  opacity: 1;
}

/* =========================================================
 header
========================================================= */
.l-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 10;
  transition: background-color 0.5s;
}
.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  height: 60px;
  margin: 6px;
  padding-left: 10px;
  background: #FFF;
  border-radius: 100px;
}
@media (min-width: 768px) {
  .l-header__inner {
    height: 70px;
    margin: 10px;
    padding-left: 16px;
  }
}
@media (min-width: 1024px) {
  .l-header__inner {
    margin: min(2vw, 40px);
    transition: 0.5s margin;
  }
}
@media (min-width: 1366px) {
  .l-header__inner {
    padding: 0 min(3vw, 60px);
    height: min(5vw, 100px);
  }
}
.is-header--scroll .l-header__inner {
  margin-block: min(1vw, 20px);
  background: rgba(255, 255, 255, 0.9);
}

.l-header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  width: 200px;
  margin-right: 20px;
  padding-bottom: 2px;
  font-size: 10px;
  font-size: 0.625rem;
}
@media (min-width: 768px) {
  .l-header__logo {
    width: 240px;
  }
}
@media (min-width: 1366px) {
  .l-header__logo {
    width: min(17.95vw, 359px);
  }
}
@media (any-hover: hover) {
  .l-header__logo a {
    transition: 0.5s opacity;
  }
  .l-header__logo a:hover {
    opacity: 0.7;
  }
}

.l-header__nav {
  padding-top: 80px;
}
@media (max-width: 1365px) {
  .l-header__nav {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    padding: 80px 0 60px;
    background: #FFF;
    opacity: 0;
    pointer-events: none;
    transition: 0.5s opacity;
    overflow: auto;
  }
  body.is-drawerOpen .l-header__nav {
    opacity: 1;
    pointer-events: initial;
  }
}
@media (min-width: 768px) {
  .l-header__nav {
    padding-top: 100px;
  }
}
@media (min-width: 1366px) {
  .l-header__nav {
    display: flex;
    align-items: center;
    height: 100%;
    margin-left: auto;
    padding-top: 0;
  }
}

.l-header__contact {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 60px;
  background: #e05423;
  border-radius: 100px;
  border: 1px solid transparent;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #FFF;
  transition: 0.5s;
  font-size: 16px;
  font-size: 1rem;
}

.l-footer__contact {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 300px;
  height: 60px;
  background: #e05423;
  border-radius: 100px;
  border: 1px solid transparent;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #FFF;
  transition: 0.5s;
  font-size: 16px;
  font-size: 1rem;
}

@media (max-width: 1365px) {
  .l-header__contact ,.l-footer__contact{
    margin: 30px auto 0;
  }
}
@media (min-width: 1366px) {
  .l-header__contact{
    width: min(6.5vw, 130px);
    height: min(3vw, 60px);
    font-size: min(0.8vw, 16px);
  }
}
@media (min-width: 1366px) {
 .l-footer__contact{
    width: min(18.5vw, 330px);
    height: min(3vw, 60px);
    font-size: min(0.8vw, 16px);
  }
}

@media (any-hover: hover) {
  .l-header__contact:hover ,.l-footer__contact:hover{
    border-color: #e05423;
    background: #FFF;
    color: #e05423;
  }
}

.l-header__drawerBtn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 5;
  width: 50px;
  aspect-ratio: 1/1;
  margin-left: 8px;
  border-radius: 100%;
  background: #1859BC;
}
@media (any-hover: hover) {
  .l-header__drawerBtn {
    transition: 0.5s opacity;
  }
  .l-header__drawerBtn:hover {
    opacity: 0.7;
  }
}
@media (min-width: 768px) {
  .l-header__drawerBtn {
    width: 60px;
  }
}
.l-header__drawerBtn > span {
  position: absolute;
  top: calc(50% - 1px);
  left: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 2px;
  margin-left: -13px;
  background: #FFF;
  transition: 0.5s;
  content: "";
}
.l-header__drawerBtn > span:nth-child(1) {
  margin-top: -9px;
}
body.is-drawerOpen .l-header__drawerBtn > span:nth-child(1) {
  margin-top: 0;
  transform: rotate(45deg);
}
@media (min-width: 768px) {
  .l-header__drawerBtn > span:nth-child(1) {
    margin-top: -11px;
  }
}
body.is-drawerOpen .l-header__drawerBtn > span:nth-child(2) {
  opacity: 0;
}
.l-header__drawerBtn > span:nth-child(3) {
  margin-top: 9px;
}
body.is-drawerOpen .l-header__drawerBtn > span:nth-child(3) {
  margin-top: 0;
  transform: rotate(-45deg);
}
@media (min-width: 768px) {
  .l-header__drawerBtn > span:nth-child(3) {
    margin-top: 11px;
  }
}

/* =========================================================
 gnav
========================================================= */
.l-gnav {
  display: flex;
}
@media (max-width: 1365px) {
  .l-gnav {
    flex-direction: column;
    padding: 0 5vw;
  }
}
@media (min-width: 1366px) {
  .l-gnav {
    position: relative;
    height: 100%;
    margin-right: min(2vw, 40px);
    font-size: min(1vw, 20px);
  }
}
@media (min-width: 1366px) and (any-hover: hover) {
  .l-gnav > li:hover .l-gnav__link {
    background: #1859BC;
    color: #FFF;
  }
  .l-gnav > li:hover .l-gnav__link.c-link--external::after {
    background-image: url(../img/common/icon_external_white.svg);
  }
  .l-gnav > li:hover .l-gnav__child {
    opacity: 1;
    pointer-events: initial !important;
  }
}

.l-gnav__link {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold;
}
@media (max-width: 1365px) {
  .l-gnav__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1em 0;
    border-bottom: 1px solid #040000;
    font-size: 18px;
    font-size: 1.125rem;
  }
}
@media (max-width: 1365px) and (any-hover: hover) {
  .l-gnav__link {
    transition: 0.5s color;
  }
  .l-gnav__link:hover {
    color: #1859BC;
  }
}
@media (max-width: 1365px) {
  .l-gnav__link .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 1.2em;
    aspect-ratio: 1/1;
    background: #040000;
    border-radius: 100%;
    content: "";
  }
  .l-gnav__link .icon::before, .l-gnav__link .icon::after {
    position: absolute;
    width: 70%;
    height: 2px;
    background: #FFF;
    content: "";
  }
  .l-gnav__link .icon::after {
    transform: rotate(90deg);
    transition: 0.5s;
  }
}
@media (max-width: 1365px) and (any-hover: hover) {
  .l-gnav__link .icon {
    transition: 0.5s background-color;
  }
  .l-gnav__link:hover .icon {
    background: #1859BC;
  }
}
@media (max-width: 1365px) {
  .l-gnav__link.is-toggleBtn--open .icon::after {
    transform: rotate(360deg);
  }
}
@media (min-width: 1366px) {
  .l-gnav__link {
    display: flex;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1.25em;
    text-align: center;
    transition: 0.5s;
  }
}

@media (max-width: 1365px) {
  .l-gnav__child {
    overflow: hidden;
    max-height: 0;
    transition: 0.5s;
    border-bottom: 1px solid;
    margin-top: -1px;
  }
  .l-gnav__child.is-toggleContents--open {
    padding: 0.5em 0;
    max-height: 500px;
  }
}
@media (min-width: 1366px) {
  .l-gnav__child {
    position: absolute;
    top: 100%;
    left: 0;
    width: min(43vw, 1100px);
    opacity: 0;
    transition: opacity 0.5s;
    pointer-events: none;
    padding-top: 10px;
  }
}

@media (min-width: 1366px) {
  .l-gnav__childList {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: min(1.5vw, 30px);
    padding: min(1.5vw, 30px) min(2vw, 40px) min(1.25vw, 25px);
    background: #FFF;
    border-radius: 20px;
  }
  .is-header--scroll .l-gnav__childList {
    background: rgba(255, 255, 255, 0.9);
  }
}

@media (max-width: 1365px) {
  .l-gnav__childLink {
    display: flex;
    align-items: center;
    gap: 0.6em;
    padding: 0.5em 0.2em;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (max-width: 1365px) and (any-hover: hover) {
  .l-gnav__childLink {
    transition: 0.5s color;
  }
  .l-gnav__childLink:hover {
    color: #1859BC;
  }
}
@media (max-width: 1365px) {
  .l-gnav__childLink::before {
    width: 0.5em;
    height: 0.7em;
    background: #1859BC;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    content: "";
  }
  .l-gnav__childLink .text {
    font-weight: bold;
    font-weight: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
}
@media (min-width: 1366px) {
  .l-gnav__childLink {
    display: block;
  }
}
@media (min-width: 1366px) and (any-hover: hover) {
  .l-gnav__childLink {
    transition: 0.5s opacity;
  }
  .l-gnav__childLink:hover {
    opacity: 0.7;
  }
}
@media (min-width: 1366px) {
  .l-gnav__childLink .text {
    margin-top: 1em;
    font-size: min(0.8vw, 16px);
  }
}

/* =========================================================
 drawer
========================================================= */
.l-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 13;
  padding-top: 70px;
  background: #FFF url(../img/common/bg.png) repeat center/72px;
  opacity: 0;
  pointer-events: none;
  transition: 0.5s opacity;
}
@media (min-width: 768px) {
  .l-drawer {
    padding-top: 120px;
  }
}
body.is-drawerOpen .l-drawer {
  opacity: 1;
  pointer-events: initial;
}

.l-drawer__inner {
  overflow: auto;
  height: calc(100svh - 70px);
}
@media (min-width: 768px) {
  .l-drawer__inner {
    height: calc(100svh - 120px);
  }
}

.l-drawer__lead {
  padding: 20px;
}
@media (min-width: 1024px) {
  .l-drawer__lead {
    padding: 40px 1em 50px;
  }
}

.l-drawer__contact {
  display: flex;
  flex-direction: column-reverse;
  max-width: 2000px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .l-drawer__contact {
    flex-direction: row-reverse;
    padding-left: min(3.45vw, 69px);
  }
}
@media (min-width: 1024px) {
  .l-drawer__contact .p-reservationModule {
    width: 54.5831175557%;
  }
}
@media (min-width: 1024px) {
  .l-drawer__contact .p-contactModule {
    flex: 1;
  }
}
@media (min-width: 1024px) {
  .l-drawer__contact .p-reservationModule__head {
    margin-left: 0;
  }
  .l-drawer__contact .p-reservationModule__head::after {
    right: 0;
  }
}
@media (min-width: 1024px) {
  .l-drawer__contact .p-reservationModule__title .main {
    padding-left: min(1.75vw, 35px);
  }
}
@media (min-width: 1024px) {
  .l-drawer__contact .p-reservationModule__title .sub {
    padding-left: min(2.05vw, 41px);
  }
}

@media (max-width: 1023px) {
  .l-drawer__menu {
    margin: 20px 0;
  }
}
@media (min-width: 1024px) {
  .l-drawer__menu {
    margin-top: 55px;
  }
}

.l-drawer__sns {
  max-width: 1330px;
  margin: 40px 5px 50px;
}
@media (min-width: 1024px) {
  .l-drawer__sns {
    max-width: 1330px;
    margin: 40px auto 84px;
  }
}

.l-drawer__snsList {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 55px;
  text-align: center;
  overflow: hidden;
}
@media (max-width: 1023px) {
  .l-drawer__snsList li {
    position: relative;
  }
  .l-drawer__snsList li::after {
    position: absolute;
    right: 14px;
    bottom: -1px;
    left: 14px;
    height: 1px;
    background: #1859BC;
    content: "";
  }
  .l-drawer__snsList li:nth-child(2n)::before {
    position: absolute;
    top: 6px;
    bottom: 6px;
    left: 0;
    width: 1px;
    background: #1859BC;
    content: "";
  }
  .l-drawer__snsList li:nth-child(3) .link, .l-drawer__snsList li:nth-child(4) .link {
    padding-top: 1.8em;
  }
}
@media (min-width: 1024px) {
  .l-drawer__snsList {
    grid-template-columns: repeat(4, 1fr);
  }
  .l-drawer__snsList li + li {
    border-left: 1px solid;
  }
}
.l-drawer__snsList .link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 1em 0.5em 1em;
}
@media (min-width: 1024px) {
  .l-drawer__snsList .link {
    padding: 0 0.5em 0.6em;
  }
}
@media (any-hover: hover) {
  .l-drawer__snsList .link {
    transition: 0.5s opacity;
  }
  .l-drawer__snsList .link:hover {
    opacity: 0.7;
  }
}
.l-drawer__snsList .icon {
  height: 56px;
}
.l-drawer__snsList .text {
  line-height: 1.33;
  letter-spacing: 0.04em;
  font-size: 15px;
  font-size: 0.9375rem;
}
@media (min-width: 1024px) {
  .l-drawer__snsList .text {
    line-height: 1.67;
  }
}

/* =========================================================
 footer
========================================================= */
.l-footer {
  background: #f2f2f2;
}

@media (min-width: 1024px) {
  .l-footer__inner {
    max-width: 1600px;
    width: 90%;
  }
}

.l-footer__pagetop {
  position: fixed;
  z-index: 12;
  right: min(2.7vw, 54px);
  bottom: 10px;
}
@media (any-hover: hover) {
  .l-footer__pagetop {
    transition: 0.5s opacity;
  }
  .l-footer__pagetop:hover {
    opacity: 0.7;
  }
}
@media (min-width: 1366px) {
  .l-footer__pagetop {
    bottom: min(2vw, 40px);
  }
}

.is-pagetop {
  transition: 0.5s;
  opacity: 0;
  pointer-events: none;
}
.is-pagetop--show {
  opacity: 1;
  pointer-events: initial;
}

.l-footer__head {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 40px;
  padding-top: 50px;
}
@media (min-width: 1024px) {
  .l-footer__head {
    margin-bottom: 36px;
     padding-top: 50px;
  }
}
@media (max-width: 1023px) {
  .l-footer__head {
    flex-direction: column;
  }
}

.l-footer__logo {
  width: 280px;
}
@media (max-width: 1023px) {
  .l-footer__logo {
    margin: 0 auto;
  }
	.spnone{
		display: none!important;
	}
}
@media (min-width: 1024px) {
  .l-footer__logo {
    width: 359px;
  }
}
.l-footer__logo a,
.l-footer__logo img {
  display: block;
}
.l-footer__logo img {
  width: 100%;
}
@media (any-hover: hover) {
  .l-footer__logo a {
    transition: 0.5s opacity;
  }
  .l-footer__logo a:hover {
    opacity: 0.7;
  }
}

.l-footer__sns {
  display: flex;
  gap: 30px;
}
@media (max-width: 1023px) {
  .l-footer__sns {
    justify-content: center;
  }
}

.l-footer__main {
  display: flex;
  justify-content: space-between;
  gap: 5vw;
	display: grid;
    gap: 20px;
    grid-template-columns: 2fr 0.5fr;
}
@media (max-width: 1023px) {
  .l-footer__main {
	   display: flex;
    flex-direction: column;
    gap: 50px;
  }
}

@media (max-width: 1023px) {
  .l-footer__info {
    text-align: center;
  }
}
@media (min-width: 1024px) {
  .l-footer__info {
    width: 356px;
    flex-shrink: 0;
  }
}
.l-footer__info dt {
  margin-bottom: 0.5em;
  padding-bottom: 0.42em;
  border-bottom: 1px solid #1859BC;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 1366px) {
  .l-footer__info dt {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.l-footer__info dd .tel {
  
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.l-footer__info dd .nishimatsu {
  justify-content: center !important;
  gap: 0.6em;
  width: 250px;
  height: 50px;
  margin-top: 30px;
  border-radius: 20px;
  background: #1859BC;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (any-hover: hover) {
  .l-footer__info dd .nishimatsu {
    transition: 0.5s opacity;
  }
  .l-footer__info dd .nishimatsu:hover {
    opacity: 0.7;
  }
}
@media (min-width: 1024px) {
  .l-footer__info dd .nishimatsu {
    margin-top: 60px;
  }
}

.l-footer__nav ul{
max-width: 600px;
  display: grid;
  gap: 20px;
	 grid-template-columns: 1fr 1fr  1fr;
}
@media (max-width: 1023px) {
  .l-footer__nav ul{
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .l-footer__nav {
    grid-template-columns: 1.25fr 1.05fr 1fr;
  }
}
@media (min-width: 1024px) {
  .l-footer__nav {
    width: 81.25%;
    max-width: 1100px;
  }
}

.l-footer__navList {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media (min-width: 1024px) {
  .l-footer__navList {
    gap: 30px;
  }
}
.l-footer__navList > li > a {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (any-hover: hover) {
  .l-footer__navList > li > a {
    transition: 0.5s color;
  }
  .l-footer__navList > li > a:hover {
    color: #1859BC;
  }
}
@media (min-width: 1024px) {
  .l-footer__navList > li > a {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.l-footer__navChild {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}
@media (max-width: 767px) {
  .l-footer__navChild {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1023px) {
  .l-footer__navChild {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 1024px) {
  .l-footer__navChild {
    gap: 20px;
    margin-top: 20px;
  }
}
@media (any-hover: hover) {
  .l-footer__navChild a {
    transition: 0.5s color;
  }
  .l-footer__navChild a:hover {
    color: #1859BC;
  }
}

.l-footer__facility {
  margin-top: 50px;
  border-top: 1px solid;
  border-bottom: 1px solid;
  padding-bottom: 1.4em;
}
@media (min-width: 1024px) {
  .l-footer__facility {
    margin-top: 110px;
  }
}

.l-footer__facilityBtn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.4em 0;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
.l-footer__facilityBtn .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 1em;
  aspect-ratio: 1/1;
  background: #040000;
  border-radius: 100%;
  content: "";
}
.l-footer__facilityBtn .icon::before, .l-footer__facilityBtn .icon::after {
  position: absolute;
  width: 70%;
  height: 2px;
  background: #FFF;
  content: "";
}
.l-footer__facilityBtn .icon::after {
  transform: rotate(90deg);
  transition: 0.5s;
}
@media (any-hover: hover) {
  .l-footer__facilityBtn .icon {
    transition: 0.5s background-color;
  }
  .l-footer__facilityBtn:hover .icon {
    background: #1859BC;
  }
}
.l-footer__facilityBtn.is-toggleBtn--open .icon::after {
  transform: rotate(360deg);
}
@media (any-hover: hover) {
  .l-footer__facilityBtn {
    transition: 0.5s color;
  }
  .l-footer__facilityBtn:hover {
    color: #1859BC;
  }
}
@media (min-width: 1024px) {
  .l-footer__facilityBtn {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.l-footer__facilityContents {
  overflow: hidden;
  max-height: 0;
  transition: 1s;
}
.l-footer__facilityContents.is-toggleContents--open {
  padding: 30px 0;
  max-height: 2000px;
}

.l-footer__facilityBranch {
  display: grid;
  gap: 30px;
}
@media (min-width: 768px) {
  .l-footer__facilityBranch {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1441px) {
  .l-footer__facilityBranch {
    grid-template-columns: repeat(5, 1fr);
  }
}
.l-footer__facilityBranch dt {
  margin-bottom: 0.5em;
  padding-bottom: 0.42em;
  border-bottom: 1px solid #1859BC;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.l-footer__facilityBranch dd .tel {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.l-footer__facilityBranch dd .nishimatsu {
  justify-content: center !important;
  gap: 0.6em;
  width: 200px;
  height: 40px;
  margin-top: 30px;
  border-radius: 20px;
  background: #1859BC;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (any-hover: hover) {
  .l-footer__facilityBranch dd .nishimatsu {
    transition: 0.5s opacity;
  }
  .l-footer__facilityBranch dd .nishimatsu:hover {
    opacity: 0.7;
  }
}
@media (min-width: 1024px) {
  .l-footer__facilityBranch dd .nishimatsu {
    margin-top: 60px;
  }
}

.l-footer__facilityRelation {
  margin-top: 50px;
}
.l-footer__facilityRelation dt {
  width: fit-content;
  margin-bottom: 26px;
  padding: 0em 0.9em;
  background: #e05423;
  border-radius: 2em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #FFF;
}
.l-footer__facilityRelation dd ul {
  display: grid;
  gap: 10px;
}
@media (min-width: 768px) {
  .l-footer__facilityRelation dd ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .l-footer__facilityRelation dd ul {
    gap: 25px 30px;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1366px) {
  .l-footer__facilityRelation dd ul {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1600px) {
  .l-footer__facilityRelation dd ul {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (any-hover: hover) {
  .l-footer__facilityRelation dd a {
    transition: 0.5s color;
  }
  .l-footer__facilityRelation dd a:hover {
    color: #1859BC;
  }
}

.l-footer__copy {
  padding: 50px 0 10px;
  text-align: center;
  font-size: 10px;
  font-size: 0.625rem;
}
@media (min-width: 1024px) {
  .l-footer__copy {
    padding-top: 100px;
  }
}

/* =========================================================
 main
========================================================= */
.l-main {
  position: relative;
  z-index: 2;
  padding: 72px 0 80px;
}
@media (min-width: 768px) {
  .l-main {
    padding-top: 120px;
  }
}
@media (min-width: 1024px) {
  .l-main {
    padding-bottom: 170px;
  }
}
@media (min-width: 1366px) {
  .l-main {
    padding-top: 200px;
  }
}
@media (min-width: 768px) {
  .l-main--home {
    padding-top: 0;
  }
}

/* =========================================================
 container
========================================================= */
.l-container {
  display: grid;
  gap: 60px 40px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 20px;
}
@media (min-width: 1024px) {
  .l-container {
    gap: min(5.3333333333vw, 80px);
    width: 88%;
    max-width: 1200px;
  }
}
@media (min-width: 1024px) {
  .l-container:has(.l-sidebar) {
    grid-template-columns: 1fr max(240px, 25%);
  }
}
.l-container .l-contents {
  margin: 0;
  width: auto;
  max-width: none;
}

/* =========================================================
 contents
========================================================= */
.l-contents {
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .l-contents {
    width: 88%;
    max-width: 1200px;
  }
}
/* =========================================================
 sidebar
========================================================= */
.l-sidebar > ul {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 521px) {
  .l-sidebar > ul {
    gap: 50px;
  }
}

.l-sidebar__title {
  margin-bottom: 1em;
  padding: 0 0 0.5em;
  border-bottom: 3px solid #1859BC;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 600;
  color: #1859BC;
  font-size: 20px;
  font-size: 1.25rem;
}

.l-sidebar__entryList li {
  display: flex;
  flex-direction: column-reverse;
  padding: 0.8em 0.4em;
  border-bottom: 1px dotted rgba(187, 188, 190, 0.5);
}
.l-sidebar__entryList li:first-child {
  padding-top: 0;
}
.l-sidebar__entryList .wp-block-latest-posts__post-date {
  display: block;
  color: #f2f2f2;
  font-size: 14px;
  font-size: 0.875rem;
}
@media (any-hover: hover) {
  .l-sidebar__entryList a {
    transition: 0.5s opacity;
  }
  .l-sidebar__entryList a:hover {
    opacity: 0.7;
  }
}

.l-sidebar__category > li {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2em;
}
.l-sidebar__category > li::before {
  content: "・";
}
.l-sidebar__category li + li {
  margin-top: 0.5em;
}
.l-sidebar__category li .children {
  width: 100%;
  margin-top: 0.5em;
}
.l-sidebar__category li .children li {
  display: flex;
  gap: 0.2em;
  margin-left: 1em;
}
.l-sidebar__category li .children li::before {
  content: "-";
}
@media (any-hover: hover) {
  .l-sidebar__category a {
    transition: 0.5s color;
  }
  .l-sidebar__category a:hover {
    color: #1859BC;
  }
}

.l-sidebar__archive {
  position: relative;
  background: #FFF;
  font-size: 16px;
  font-size: 1rem;
}
.l-sidebar__archive::after {
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  background: #040000;
  height: 0.5em;
  width: 0.8em;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
}
.l-sidebar__archive select {
  width: 100%;
  border: 1px solid;
  padding: 0.5em 2em 0.5em 1em;
  border-color: #bbbcbe;
  color: #040000;
  cursor: pointer;
}

/* =========================================================
 project
========================================================= */
/* pageTitle
-------------------------------------- */
.p-pageTitle {
  margin: 40px 0 50px;
}
@media (min-width: 1024px) {
  .p-pageTitle {
    margin: 90px 0 140px;
  }
}

.p-pageTitle__inner {
  max-width: 1600px;
}

/* breadcrumb
-------------------------------------- */
/* postHead
-------------------------------------- */
/* postBody
-------------------------------------- */
.p-postBody {
  /* =========================================================
   Editor
  ========================================================= */
}
.p-postBody h1:not(.c-sectionSubtitle), .p-postBody h2:not(.c-sectionSubtitle), .p-postBody h3:not(.c-sectionSubtitle), .p-postBody h4:not(.c-sectionSubtitle), .p-postBody h5:not(.c-sectionSubtitle), .p-postBody h6:not(.c-sectionSubtitle) {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  font-size: 1rem;
}
.p-postBody h1:not(.c-sectionSubtitle) + *, .p-postBody h2:not(.c-sectionSubtitle) + *, .p-postBody h3:not(.c-sectionSubtitle) + *, .p-postBody h4:not(.c-sectionSubtitle) + *, .p-postBody h5:not(.c-sectionSubtitle) + *, .p-postBody h6:not(.c-sectionSubtitle) + * {
  margin-top: 0.8em;
}
.p-postBody a:not(.wp-block-button__link) {
  text-decoration: underline;
  color: #036EA9;
}
@media (any-hover: hover) {
  .p-postBody a:not(.wp-block-button__link):hover {
    text-decoration: none;
  }
}
.p-postBody > * + * {
  margin-top: 2em;
}
.p-postBody p strong {
  color: #1859BC;
}
.p-postBody * + h2,
.p-postBody * + h3,
.p-postBody * + h4,
.p-postBody * + h5,
.p-postBody * + h6 {
  margin-top: 2em;
}
.p-postBody ul li {
  display: flex;
  position: relative;
}
.p-postBody li + li {
  margin-top: 0.5em;
}
.p-postBody ul:not(.blocks-gallery-grid) li {
  display: list-item;
  padding-left: 1em;
}
.p-postBody ul:not(.blocks-gallery-grid) li:before {
  position: absolute;
  left: 0;
  content: "・";
}
.p-postBody ol {
  padding-left: 1.5em;
}
.p-postBody iframe {
  max-width: 100%;
}
.p-postBody pre {
  white-space: pre-wrap;
}
.p-postBody .alignleft {
  float: left;
  margin: 0 1em 1em 0;
}
.p-postBody .alignright {
  float: right;
  margin: 0 0 1em 1em;
}
.p-postBody .aligncenter {
  margin-right: auto;
  margin-left: auto;
}
.p-postBody figure {
  max-width: 1000px;
  margin: 30px auto;
}
@media (min-width: 1024px) {
  .p-postBody figure {
    margin: 50px auto;
  }
}
.p-postBody figure figcaption {
  margin-top: 1em;
  text-align: center;
}
.p-postBody .wp-block-button__link {
  background: #1859BC;
}
.p-postBody .wp-block-columns > * > * + * {
  margin-top: 2em;
}

/* entryList
-------------------------------------- */
/* pager
-------------------------------------- */
.p-pager {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .p-pager {
    gap: 10px;
    flex-direction: column;
  }
}
.p-pager:has(a) {
  margin-top: 40px;
}
@media (min-width: 521px) {
  .p-pager:has(a) {
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .p-pager > * {
    width: 48%;
  }
}
.p-pager a {
  color: #1859BC;
  display: inline-flex !important;
  align-items: center;
  gap: 0.8em;
}
.p-pager a span {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}
.p-pager a:before {
  flex-shrink: 0;
  background: #1859BC;
  color: #FFF;
  letter-spacing: 0.06em;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-decoration: none;
  font-size: 14px;
  font-size: 0.875rem;
}
@media (any-hover: hover) {
  .p-pager a {
    transition: 0.5s opacity;
  }
  .p-pager a:hover {
    opacity: 0.7;
  }
}

.p-pager__next {
  text-align: right;
}
@media (max-width: 767px) {
  .p-pager__next {
    margin-left: auto;
  }
}
.p-pager__next a {
  flex-direction: row-reverse;
}
.p-pager__next a:before {
  padding: 0.2em 0.6em 0.2em 0.8em;
  content: "NEXT >";
}

@media (max-width: 767px) {
  .p-pager__prev {
    margin-right: auto;
  }
}
.p-pager__prev a:before {
  padding: 0.2em 0.8em 0.2em 0.6em;
  content: "< PREV";
}

/* pagination {
-------------------------------------- */
.p-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8em;
  margin-top: 50px;
  font-weight: bold;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
}
@media (min-width: 1024px) {
  .p-pagination {
    margin-top: 100px;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.p-pagination > * {
  min-width: 2em;
  padding: 0.2em 0.5em;
  border-radius: 100%;
  text-align: center;
}
@media (any-hover: hover) {
  .p-pagination a {
    transition: 0.5s color;
  }
  .p-pagination a:hover {
    color: #1859BC;
  }
}
.p-pagination .prev,
.p-pagination .next {
  position: relative;
}
.p-pagination .prev::before, .p-pagination .prev::after,
.p-pagination .next::before,
.p-pagination .next::after {
  position: absolute;
  aspect-ratio: 1/1;
  width: 2em;
  border-radius: 100%;
  content: "";
}
.p-pagination .prev::before,
.p-pagination .next::before {
  background: #040000;
}
.p-pagination .prev::after,
.p-pagination .next::after {
  background: #FFF;
  clip-path: polygon(40% 35%, 65% 50%, 40% 65%);
}
.p-pagination .prev::before, .p-pagination .prev::after,
.p-pagination .next::before,
.p-pagination .next::after {
  top: 0;
  left: 0;
  transition: 0.5s background-color;
}
@media (any-hover: hover) {
  .p-pagination .prev:hover::before,
  .p-pagination .next:hover::before {
    background: #1859BC;
  }
}
.p-pagination .prev::after {
  transform: scale(-1, 1);
}
.p-pagination .current {
  border-color: transparent !important;
  color: #FFF;
  background: #1859BC !important;
  border-radius: 100%;
}

/* features
-------------------------------------- */
.p-sectionFeatures__box {
  display: flex;
  align-items: center;
  gap: 30px 4.1666666667%;
}
@media (max-width: 1023px) {
  .p-sectionFeatures__box {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .p-sectionFeatures__box:nth-child(2n+1) {
    flex-direction: row-reverse;
  }
}
.p-sectionFeatures__box + .p-sectionFeatures__box {
  margin-top: 40px;
}

@media (min-width: 1024px) {
  .p-sectionFeatures__boxImg {
    width: 49.1666666667%;
  }
}

@media (min-width: 1024px) {
  .p-sectionFeatures__boxMain {
    flex: 1;
  }
}
.p-sectionFeatures__boxMain .title {
  margin-bottom: 0.8em;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-sectionFeatures__boxMain .btn {
  margin-top: 2em;
  text-align: right;
}
@media (min-width: 1024px) {
  .p-sectionFeatures__boxMain .btn {
    margin-top: 3em;
  }
}

/* flow
-------------------------------------- */
.p-sectionFlow {
  overflow: hidden;
}

.p-sectionFlow__inner {
  position: relative;
}
.p-sectionFlow__inner > * {
  position: relative;
}
.p-sectionFlow__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-sectionFlow__inner::before {
    left: -100px;
  }
}
.p-sectionFlow__inner::before {
  top: 20px;
}

.p-sectionFlow__title {
  position: relative;
  margin-bottom: 30px;
}
@media (min-width: 1024px) {
  .p-sectionFlow__title {
    margin-bottom: 60px;
  }
}

.p-sectionFlow__wrapper {
  display: grid;
  gap: 40px;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .p-sectionFlow__wrapper {
    gap: 60px;
  }
}

.p-sectionFlow__box {
  display: flex;
  position: relative;
}
@media (max-width: 767px) {
  .p-sectionFlow__box {
    flex-direction: column;
    gap: 10px;
  }
}
@media (min-width: 768px) {
  .p-sectionFlow__box {
    align-items: center;
    gap: 4.1666666667%;
  }
}
@media (min-width: 768px) {
  .p-sectionFlow__box::before {
    position: absolute;
    width: 4px;
    top: -60px;
    bottom: 50%;
    left: calc(12.5% - 9px);
    background: #1859BC;
    content: "";
  }
}
.p-sectionFlow__box:first-child {
  z-index: 10;
}
.p-sectionFlow__box:first-child::before {
  display: none;
}
.p-sectionFlow__box:last-child {
  padding-bottom: 60px;
}
.p-sectionFlow__box:nth-child(2) {
  z-index: 9;
}
.p-sectionFlow__box:nth-child(3) {
  z-index: 8;
}
.p-sectionFlow__box:nth-child(4) {
  z-index: 7;
}
.p-sectionFlow__box:nth-child(5) {
  z-index: 6;
}
.p-sectionFlow__box:nth-child(6) {
  z-index: 5;
}
.p-sectionFlow__box:nth-child(7) {
  z-index: 4;
}
.p-sectionFlow__box:nth-child(8) {
  z-index: 3;
}
.p-sectionFlow__box:nth-child(9) {
  z-index: 2;
}
.p-sectionFlow__box:nth-child(10) {
  z-index: 1;
}

.p-sectionFlow__boxTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  aspect-ratio: 1/1;
  padding: 1em 0;
  background: #1859BC;
  border-radius: 100%;
  color: #FFF;
  text-align: center;
  border: 10px solid #f2f2f2;
}
@media (max-width: 767px) {
  .p-sectionFlow__boxTitle {
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  .p-sectionFlow__boxTitle {
    margin-left: -10px;
    width: 25%;
    font-size: min(1.8571428571vw, 26px);
  }
}

.p-sectionFlow__boxMain {
  display: flex;
  padding: 20px;
  background: #FFF;
  border-radius: 10px;
}
@media (max-width: 767px) {
  .p-sectionFlow__boxMain {
    flex-direction: column;
    gap: 20px;
  }
}
@media (min-width: 768px) {
  .p-sectionFlow__boxMain {
    align-items: center;
    flex: 1;
    gap: 4.6511627907%;
  }
}
@media (min-width: 1024px) {
  .p-sectionFlow__boxMain {
    padding: 30px;
  }
}
.p-sectionFlow__boxMain .title {
  margin-bottom: 0.8em;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .p-sectionFlow__boxMain .title {
    font-size: max(min(1.8571428571vw, 26px), 18px);
  }
}

/* toggle
-------------------------------------- */
.p-sectionToggle__box {
  margin-bottom: 30px;
  border-radius: 10px;
  background: #f2f2f2;
}
@media (min-width: 1024px) {
  .p-sectionToggle__box {
    margin-top: 40px;
  }
}

.p-sectionToggle__boxBtn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8em;
  position: relative;
  padding: 1.53em 1.15em 1.53em 22.5%;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
.p-sectionToggle__boxBtn .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 1.153em;
  aspect-ratio: 1/1;
  background: #040000;
  border-radius: 100%;
  content: "";
}
.p-sectionToggle__boxBtn .icon::before, .p-sectionToggle__boxBtn .icon::after {
  position: absolute;
  width: 70%;
  height: 2px;
  background: #FFF;
  content: "";
}
.p-sectionToggle__boxBtn .icon::after {
  transform: rotate(90deg);
  transition: 0.5s;
}
@media (any-hover: hover) {
  .p-sectionToggle__boxBtn .icon {
    transition: 0.5s background-color;
  }
  .p-sectionToggle__boxBtn:hover .icon {
    background: #1859BC;
  }
}
.p-sectionToggle__boxBtn.is-toggleBtn--open .icon::after {
  transform: rotate(360deg);
}
@media (min-width: 1024px) {
  .p-sectionToggle__boxBtn {
    font-size: min(1.8571428571vw, 26px);
  }
}
.p-sectionToggle__boxBtn .img {
  position: absolute;
  left: 0.5em;
  width: 18%;
}
@media (min-width: 768px) {
  .p-sectionToggle__boxBtn .img {
    bottom: 0.5em;
  }
}
@media (min-width: 1024px) {
  .p-sectionToggle__boxBtn .img {
    left: 2.5%;
    bottom: auto;
    width: 14.8333333333%;
    transform: translateY(-20%);
  }
}
.p-sectionToggle__boxBtn .icon {
  flex-shrink: 0;
}

.p-sectionToggle__boxContents {
  padding-inline: 20px;
  display: grid;
  grid-template-rows: 0fr;
  transition: 0.5s grid-template-rows ease, 0.5s padding ease;
}
.p-sectionToggle__boxContents > * {
  overflow: hidden;
}
.p-sectionToggle__boxContents.is-toggleContents--open {
  grid-template-rows: 1fr;
}
@media (min-width: 1024px) {
  .p-sectionToggle__boxContents {
    padding-inline: 2.5%;
  }
}
.p-sectionToggle__boxContents.is-toggleContents--open {
  padding-block: 0 20px;
}
@media (min-width: 1024px) {
  .p-sectionToggle__boxContents.is-toggleContents--open {
    padding-block: 0.8333333333% 2.5%;
  }
}
.p-sectionToggle__boxContents .inner {
  display: flex;
  gap: 20px 2.5%;
}
@media (max-width: 767px) {
  .p-sectionToggle__boxContents .inner {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .p-sectionToggle__boxContents .inner {
    align-items: center;
  }
}
@media (min-width: 768px) {
  .p-sectionToggle__boxContents .img {
    width: 29.8245614035%;
  }
}
@media (min-width: 768px) {
  .p-sectionToggle__boxContents .text {
    flex: 1;
  }
}

/* grid
-------------------------------------- */
.p-sectionGrid {
  overflow: hidden;
}

.p-sectionGrid__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-sectionGrid__inner > * {
  position: relative;
}
.p-sectionGrid__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-sectionGrid__inner::before {
    right: 100px;
  }
}
.p-sectionGrid__inner::before {
  top: 20px;
}

.p-sectionGrid__title {
  position: relative;
}

.p-sectionGrid__wrapper {
  display: grid;
  gap: 50px 30px;
}
@media (min-width: 521px) {
  .p-sectionGrid__wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .p-sectionGrid__wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-sectionGrid__item .img {
  aspect-ratio: 380/320;
}
.p-sectionGrid__item .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-sectionGrid__item .title {
  margin: 0.8em 0 0.5em;
}

/* merit
-------------------------------------- */
.p-sectionMerit {
  overflow: hidden;
}

.p-sectionMerit__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-sectionMerit__inner > * {
  position: relative;
}
.p-sectionMerit__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-sectionMerit__inner::before {
    left: -100px;
  }
}
.p-sectionMerit__inner::before {
  top: 20px;
}

.p-sectionMerit__title {
  position: relative;
}

.p-sectionMerit__lead {
  position: relative;
  margin-bottom: 50px;
}
@media (min-width: 1024px) {
  .p-sectionMerit__lead {
    margin-bottom: 70px;
  }
}

.p-sectionMerit__wrapper {
  position: relative;
  margin-top: 40px;
  padding: 0 20px 20px;
  border-radius: 10px;
  background: #FFF;
}
@media (min-width: 1024px) {
  .p-sectionMerit__wrapper {
    margin-top: 60px;
    padding: 0 3.3333333333% 3.3333333333%;
  }
}
.p-sectionMerit__wrapper .inner {
  display: grid;
}
@media (max-width: 1023px) {
  .p-sectionMerit__wrapper .inner {
    gap: 30px;
  }
}
@media (min-width: 1024px) {
  .p-sectionMerit__wrapper .inner {
    grid-template-columns: 1fr 1fr;
    gap: 3.5714285714%;
  }
}
.p-sectionMerit__wrapper .item {
  display: flex;
  align-items: center;
  gap: min(5.5555555556%, 30px);
}
.p-sectionMerit__wrapper .img {
  aspect-ratio: 300/180;
  width: 45%;
}
@media (min-width: 521px) {
  .p-sectionMerit__wrapper .img {
    width: 55.5555555556%;
  }
}
.p-sectionMerit__wrapper .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-sectionMerit__wrapper .text {
  flex: 1;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.p-sectionMerit__subtitle {
  width: fit-content;
  display: flex;
  align-items: flex-start;
  gap: 0.76em;
  transform: translateY(-50%);
  margin-bottom: 0.5em;
}
@media (max-width: 1023px) {
  .p-sectionMerit__subtitle {
    flex-wrap: wrap;
  }
}
.p-sectionMerit__subtitle .tag {
  flex-shrink: 0;
  padding: 0 1em;
  background: #1859BC;
  border-radius: 1em;
  color: #FFF;
}

/* textImg
-------------------------------------- */
.p-sectionTextImg {
  overflow: hidden;
}

.p-sectionTextImg__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-sectionTextImg__inner > * {
  position: relative;
}
.p-sectionTextImg__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
.p-sectionTextImg__inner::before {
  top: 20px;
}
.p-sectionTextImg--bgLeft .p-sectionTextImg__inner {
  position: relative;
}
.p-sectionTextImg--bgLeft .p-sectionTextImg__inner > * {
  position: relative;
}
.p-sectionTextImg--bgLeft .p-sectionTextImg__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-sectionTextImg--bgLeft .p-sectionTextImg__inner::before {
    right: 100px;
  }
}
.p-sectionTextImg--bgBottom .p-sectionTextImg__inner::before {
  top: 50%;
}
@media (min-width: 1024px) {
  .p-sectionTextImg--bgLeft .p-sectionTextImg__inner .p-sectionTextImg__text {
    max-width: 728px;
  }
}
.p-sectionTextImg__inner .p-sectionTextImg__img {
  margin-top: 35px;
}

/* textImgRow
-------------------------------------- */
.p-sectionTextImgRow {
  overflow: hidden;
}

.p-sectionTextImgRow__inner {
  display: flex;
  gap: 40px 5.8333333333%;
  position: relative;
  padding-bottom: 60px;
  position: relative;
}
@media (max-width: 1023px) {
  .p-sectionTextImgRow__inner {
    flex-direction: column;
  }
}
.p-sectionTextImgRow__inner > * {
  position: relative;
}
.p-sectionTextImgRow__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-sectionTextImgRow__inner::before {
    left: -100px;
  }
}
.p-sectionTextImgRow__inner::before {
  top: 20px;
}

.p-sectionTextImgRow__main {
  position: relative;
}
@media (min-width: 1024px) {
  .p-sectionTextImgRow__main {
    flex: 1;
  }
}

.p-sectionTextImgRow__subtitle {
  margin-bottom: 0.8em;
}

.p-sectionTextImgRow__img {
  position: relative;
}
@media (min-width: 1024px) {
  .p-sectionTextImgRow__img {
    width: 47.5%;
  }
}

/* profile
-------------------------------------- */
.p-sectionProfile__title {
  margin-bottom: 40px;
  text-align: center;
}
.p-sectionProfile__title span {
  display: block;
  font-size: 62%;
}

.p-sectionProfile__wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px 4.1666666667%;
}

.p-sectionProfile__item {
  text-align: center;
  max-width: 200px;
  width: 47.9166666667%;
}
@media (max-width: 520px) {
  .p-sectionProfile__item {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  .p-sectionProfile__item {
    width: 30.5453737643%;
  }
}
@media (min-width: 1366px) {
  .p-sectionProfile__item {
    width: 16.6633339999%;
  }
}
.p-sectionProfile__item .img {
  max-width: 200px;
  margin-inline: auto;
  aspect-ratio: 1/1;
  border-radius: 100%;
  overflow: hidden;
}
.p-sectionProfile__item .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-sectionProfile__item .name {
  margin: 0.6em 0 0.2em;
}
.p-sectionProfile__item .position {
  width: fit-content;
  margin: auto;
  padding: 0.3em 0.8em;
  background: #e05423;
  border-radius: 3em;
  color: #FFF;
  line-height: 1.3;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold;
}
.p-sectionProfile__item .join {
  margin-top: 0.5em;
}

/* interview
-------------------------------------- */
.p-sectionInterview__lead {
  display: flex;
  gap: 40px 3.3333333333%;
  margin-bottom: 60px;
}
@media (max-width: 1023px) {
  .p-sectionInterview__lead {
    flex-direction: column;
    margin-bottom: 35px;
  }
}
@media (min-width: 1024px) {
  .p-sectionInterview__lead--reverse {
    flex-direction: row-reverse;
  }
}

@media (min-width: 1024px) {
  .p-sectionInterview__leadImg {
    width: 46.6666666667%;
  }
}

@media (min-width: 1024px) {
  .p-sectionInterview__leadMain {
    flex: 1;
  }
}

.p-sectionInterview__leadTitle {
  width: fit-content;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .p-sectionInterview__leadTitle {
    margin: 20px 0 30px;
  }
}
@media (min-width: 1024px) {
  .p-sectionInterview__leadTitle {
    margin: 50px 0 60px;
  }
}
.p-sectionInterview__leadTitle > .is-cover__contents {
  display: flex;
  gap: 0.77em;
}
.p-sectionInterview__leadTitle > .is-cover__contents::before {
  flex-shrink: 0;
  width: 1.53em;
  height: 1px;
  margin-top: 0.7em;
  background: #1859BC;
  content: "";
}

.p-sectionInterview__list .item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
@media (min-width: 521px) {
  .p-sectionInterview__list .item {
    gap: 33px;
  }
}
.p-sectionInterview__list .item + .item {
  margin-top: 35px;
}
.p-sectionInterview__list .item--reverse {
  flex-direction: row-reverse;
}
.p-sectionInterview__list dt {
  width: 80px;
  flex-shrink: 0;
}
@media (min-width: 521px) {
  .p-sectionInterview__list dt {
    width: 100px;
  }
}
.p-sectionInterview__list dt .img {
  display: block;
  border-radius: 100%;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.p-sectionInterview__list dt .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-sectionInterview__list dt .name {
  display: block;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #1859BC;
}
.p-sectionInterview__list dd {
  flex: 1;
}

.p-tabNav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
}
@media (min-width: 768px) {
  .p-tabNav {
    gap: 16px;
  }
}
@media (min-width: 1024px) {
  .p-tabNav {
    gap: 30px;
  }
}

.p-tabNav__link {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  min-height: 3em;
  padding: 0.4em 0.2em;
  border-radius: 10px 10px 0 0;
  background: #f2f2f2;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.5;
  transition: 0.5s color, 0.5s background-color;
  font-size: 12px;
  font-size: 0.75rem;
}
@media (min-width: 768px) {
  .p-tabNav__link {
    padding: 0.75em 0.8em;
    border-radius: 15px 15px 0 0;
    font-size: 16px;
    font-size: 1rem;
  }
}
@media (min-width: 1024px) {
  .p-tabNav__link {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.p-tabNav__link--active {
  background: #1859BC;
  color: #FFF;
}
@media (any-hover: hover) {
  .p-tabNav__link:hover {
    background: #1859BC;
    color: #FFF;
  }
}

/* =========================================================
 home
========================================================= */
/* kv
-------------------------------------- */
.p-homeKv img {
  width: 100%;
}

/* emergencyNews
-------------------------------------- */
.p-homeEmergencyNews {
  padding: 8px 0;
  background: #f2f2f2;
}
.p-homeEmergencyNews p {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* news
-------------------------------------- */
.p-homeNews__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px 10px;
  padding: 70px 0;
}
@media (min-width: 768px) {
  .p-homeNews__inner {
    gap: 35px;
  }
}
@media (min-width: 1024px) {
  .p-homeNews__inner {
    padding: 140px 0;
  }
}

.p-homeNews__list {
  width: 100%;
}
.p-homeNews__list li {
  border-bottom: 1px solid #bbbcbe;
}
.p-homeNews__list .link {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0.6em 1em;
  padding: 22px 0;
}
@media (any-hover: hover) {
  .p-homeNews__list .link {
    transition: 0.5s opacity;
  }
  .p-homeNews__list .link:hover {
    opacity: 0.7;
  }
}
.p-homeNews__list .date {
  min-width: 5em;
}
@media (min-width: 768px) {
  .p-homeNews__list .date {
    min-width: 5.25em;
  }
}
.p-homeNews__list .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-homeNews__list .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (max-width: 767px) {
  .p-homeNews__list .text {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .p-homeNews__list .text {
    flex: 1;
  }
}

/* concept
-------------------------------------- */
.p-homeConcept {
  overflow: hidden;
}

.p-homeConcept__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-homeConcept__inner > * {
  position: relative;
}
.p-homeConcept__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-homeConcept__inner::before {
    right: 100px;
  }
}
.p-homeConcept__inner::before {
  top: 20px;
}

.p-homeConcept__head {
  display: flex;
  gap: 30px min(5.3571428571vw, 75px);
  position: relative;
}
@media (max-width: 1023px) {
  .p-homeConcept__head {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .p-homeConcept__head {
    align-items: flex-start;
  }
}

.p-homeConcept__leadTitle {
  margin-bottom: 0.8em;
  font-weight: normal;
  font-size: 22px;
  font-size: 1.375rem;
}
@media (min-width: 768px) {
  .p-homeConcept__leadTitle {
    font-size: 26px;
    font-size: 1.625rem;
  }
}

.p-homeConcept__wrapper {
  position: relative;
  display: grid;
  gap: 30px;
  margin-top: 35px;
}
@media (max-width: 1023px) {
  .p-homeConcept__wrapper {
    max-width: 480px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 1024px) {
  .p-homeConcept__wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-homeConcept__box {
  border-radius: 10px;   box-shadow: rgba(134, 134, 134, 0.3) 5px 5px 15px;
}
@media (any-hover: hover) {
  .p-homeConcept__box {
    transition: 0.5s box-shadow;
  }
  .p-homeConcept__box:hover {
    box-shadow: rgba(134, 134, 134, 0.3) 5px 5px 15px;
  }
}
@media (min-width: 1024px) {
  .p-homeConcept__box {
    margin-bottom: auto;
  }
  .p-homeConcept__box:nth-child(2) {
    margin-top: 40px;
  }
  .p-homeConcept__box:nth-child(3) {
    margin-top: 80px;
  }
}
.p-homeConcept__box .link {
  display: flex;
  flex-direction: column;
  position: relative;
  background: #FFF;
  border-radius: 10px;
  border-radius: 10px;
  padding: 20px;
	pointer-events: none; cursor: default;
}
@media (min-width: 1024px) {
  .p-homeConcept__box .link {
    padding: 7.5% 7.8% 10.5%;
    aspect-ratio: 380/480;
  }
}
@media (any-hover: hover) {
  .p-homeConcept__box .link .text:before, .p-homeConcept__box .link .text:after {
    transition: 0.5s;
  }
  .p-homeConcept__box .link:hover .number {
    color: #1859BC;
  }
  .p-homeConcept__box .link:hover .text:before {
    border-color: #1859BC;
    background: #1859BC;
  }
  .p-homeConcept__box .link:hover .text::after {
    background: #FFF;
  }
}
.p-homeConcept__box .number {
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  line-height: 0.8;
  color: #1859BC;
  transition: 0.5s color;
  font-size: 70px;
  font-size: 4.375rem;
}
@media (min-width: 1366px) {
  .p-homeConcept__box .number {
    font-size: 100px;
    font-size: 6.25rem;
  }
}
.p-homeConcept__box .img {
  max-width: 81.25%;
  margin: 25px auto 0;
}
@media (min-width: 1366px) {
  .p-homeConcept__box .img {
    margin-top: 40px;
  }
}
.p-homeConcept__box .text {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-top: auto;
  padding-top: 20px;
  font-weight: bold;
  line-height: 1.4;
  font-size: 26px;
  font-size: 1.625rem;
}
.p-homeConcept__box .text .sub {
  font-family: "Noto Sans", sans-serif;
  font-size: 16px;
  font-size: 1rem;
}

.p-homeConcept__box .text::after {
  background: #040000;
}

/* service
-------------------------------------- */
.p-homeService {
  position: relative;
  padding: 70px 0 60px;
  background: #f2f2f2;
}
@media (min-width: 1024px) {
  .p-homeService {
    padding: 140px 0 60px;
  }
}
.p-homeService::before {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 350px;
  content: "";
  background: #FFF;
}
@media (min-width: 1024px) {
  .p-homeService::before {
    height: 500px;
  }
}

.p-homeService__inner {
  position: relative;
}

.p-homeService__title {
  margin-bottom: 30px;
}


.p-homeConcept__box .text .sub{
	  color: #0380DF;
}
@media (min-width: 1024px) {
  .p-homeService__title {
    margin-bottom: 55px;
  }
}

.p-homeService__slider {
  padding: 35px 0 40px !important;
}

.p-homeService__slide {
  height: auto !important;
  border-radius: 10px;
  background: #FFF;
  box-shadow: rgba(134, 134, 134, 0.3) 5px 5px 15px;
  width: 90% !important;
}
.p-homeService__slide.swiper-slide-active {
  box-shadow: rgba(134, 134, 134, 0.3) 5px 5px 15px, rgba(134, 134, 134, 0.3) 5px 5px 15px;
}
@media (min-width: 1024px) {
  .p-homeService__slide {
    width: 88vw !important;
    max-width: 1000px !important;
  }
}
.p-homeService__slide .inner {
  display: flex;
  padding: 6% 6% 8%;
  gap: 30px 6%;
  height: 100% !important;
}
@media (max-width: 767px) {
  .p-homeService__slide .inner {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .p-homeService__slide .main {
    flex: 1;
  }
}
.p-homeService__slide .title {
  margin-bottom: 0.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
}
@media (min-width: 768px) {
  .p-homeService__slide .title {
    margin-bottom: 0.7em;
    font-size: 36px;
    font-size: 2.25rem;
  }
}
@media (max-width: 767px) {
  .p-homeService__slide .text {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.p-homeService__slide .btn {
  margin-top: 20px;
}
@media (min-width: 768px) {
  .p-homeService__slide .btn {
    margin-top: 50px;
  }
}
@media (min-width: 1024px) {
  .p-homeService__slide .btn {
    margin-top: 75px;
  }
}
.p-homeService__slide .img {
  text-align: center;
}
@media (max-width: 767px) {
  .p-homeService__slide .img {
    width: 80%;
    margin: 0 auto;
  }
}
@media (min-width: 768px) {
  .p-homeService__slide .img {
    width: 34%;
  }
}
.p-homeService__slide .img img {
  width: 100%;
  height: 100%;
  max-width: 320px;
  max-height: 320px;
  object-fit: contain;
}

.p-homeService__sliderPagination {
  bottom: 0 !important;
  font-size: 0;
}
.p-homeService__sliderPagination .swiper-pagination-bullet {
  width: 10px !important;
  height: 10px !important;
}
.p-homeService__sliderPagination .swiper-pagination-bullet-active {
  background: #1859BC;
}

.p-homeService__thumbs {
  position: relative;
  width: 88vwimportant;
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
.p-homeService__thumbs .swiper-slide {
  height: auto !important;
}
.p-homeService__thumbs .swiper-slide span {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 84px;
  border: 1px solid;
  box-sizing: border-box;
  border-radius: 10px;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  cursor: pointer;
  transition: 0.5s;
}
@media (any-hover: hover) {
  .p-homeService__thumbs .swiper-slide:hover span {
    background: #1859BC;
    border-color: transparent;
    color: #FFF;
  }
}
.p-homeService__thumbs .swiper-slide-thumb-active span {
  background: #1859BC;
  border-color: transparent;
  color: #FFF;
}

.p-homeService__sliderBtn {
  width: 50px !important;
  height: 50px !important;
  margin-top: -25px !important;
}
.p-homeService__sliderBtn::before, .p-homeService__sliderBtn::after {
  position: absolute;
  aspect-ratio: 1/1;
  width: 50px;
  border-radius: 100%;
  content: "";
}
.p-homeService__sliderBtn::before {
  background: #040000;
}
.p-homeService__sliderBtn::after {
  background: #FFF;
  clip-path: polygon(40% 35%, 65% 50%, 40% 65%);
}
.p-homeService__sliderBtn::after {
  content: "" !important;
}
@media (any-hover: hover) {
  .p-homeService__sliderBtn::before {
    transition: 0.5s;
  }
  .p-homeService__sliderBtn:hover::before {
    background: #1859BC;
  }
}
.p-homeService__sliderBtn--prev {
  transform: scale(-1, 1);
  left: -60px !important;
}
@media (min-width: 1200px) {
  .p-homeService__sliderBtn--prev {
    left: -76px !important;
  }
}
.p-homeService__sliderBtn--next {
  right: -60px !important;
}
@media (min-width: 1200px) {
  .p-homeService__sliderBtn--next {
    right: -76px !important;
  }
}

/* work
-------------------------------------- */
.p-homeWork {
  overflow: hidden;
  padding-top: 70px;
}
@media (min-width: 1024px) {
  .p-homeWork {
    padding-top: 140px;
  }
}

.p-homeWork__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px 10px;
  padding-bottom: 60px;
  position: relative;
}
@media (min-width: 768px) {
  .p-homeWork__inner {
    gap: 55px 35px;
  }
}
.p-homeWork__inner > * {
  position: relative;
}
.p-homeWork__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-homeWork__inner::before {
    left: -100px;
  }
}
.p-homeWork__inner::before {
  top: 20px;
}

.p-homeWork__title {
  position: relative;
}

.p-homeWork__wrapper {
  display: grid;
  gap: 40px 30px;
  position: relative;
  width: 100%;
}
@media (min-width: 768px) {
  .p-homeWork__wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-homeWork__box .img {
  aspect-ratio: 380/320;
}
.p-homeWork__box .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-homeWork__box .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 20px;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-homeWork__box .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.p-homeFeatures__inner .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0px;
	margin-bottom: 10px;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-homeFeatures__inner .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}



.p-homeWork__box .title {
  margin-top: 0.4em;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
}
@media (min-width: 1024px) {
  .p-homeWork__box .title {
    font-size: 26px;
    font-size: 1.625rem;
  }
}

/* rent
-------------------------------------- */
.p-homeRent {
  padding: 70px 0;
}
@media (min-width: 1024px) {
  .p-homeRent {
    padding: 140px 0;
  }
}

.p-homeRent__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px 10px;
  position: relative;
}
@media (min-width: 768px) {
  .p-homeRent__inner {
    gap: 55px 35px;
  }
}

.p-homeRent__wrapper {
  width: 100%;
  display: flex;
}
@media (max-width: 1023px) {
  .p-homeRent__wrapper {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .p-homeRent__wrapper {
    align-items: center;
    gap: 5%;
  }
}

@media (min-width: 1024px) {
  .p-homeRent__img {
    width: 56.6666666667%;
  }
}
.p-homeRent__img img {
  border-radius: 10px;
}

.p-homeRent__main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 1em;
}
@media (max-width: 1023px) {
  .p-homeRent__main {
    margin-top: 30px;
  }
}
@media (min-width: 1024px) {
  .p-homeRent__main {
    flex: 1;
    width: calc(43.3333333333% - 60px);
  }
}
.p-homeRent__main .title {
  width: 100%;
  margin-bottom: 0.5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 1024px) {
  .p-homeRent__main .title {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
.p-homeRent__main .title .new {
  display: block;
  color: #1859BC;
  font-family: "Noto Sans", sans-serif;
  font-size: 16px;
  font-size: 1rem;
}
.p-homeRent__main .date {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-homeRent__main .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 14px;
  font-size: 0.875rem;
}
.p-homeRent__main .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-homeRent__main .table {
  width: 100%;
  margin-top: 10px;
}
.p-homeRent__main .table dt {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-homeRent__main .btn {
  margin: 40px 0 0 auto;
}

/* data
-------------------------------------- */
.p-homeData {
  background: #f2f2f2;
}

.p-homeData__inner {
  padding: 60px 0;
}

.p-homeData__wrapper {
  display: grid;
  margin-top: 30px;
  grid-template-columns: repeat(2, 1fr);
  gap: min(2.9296875vw, 30px);
}
@media (min-width: 1024px) {
  .p-homeData__wrapper {
    grid-template-columns: repeat(3, 1fr);
    gap: min(2.1428571429vw, 30px);
    margin-top: 55px;
  }
}

.p-homeData__box {
  aspect-ratio: 380/210;
}
.p-homeData__box .inner {
  display: flex;
  height: 100%;
  background: #FFF;
  border-radius: 10px;
  padding: min(3.22265625vw, 33px) min(2.685546875vw, 27.5px) min(3.22265625vw, 33px) min(2.9296875vw, 30px);
}
@media (min-width: 1024px) {
  .p-homeData__box .inner {
    padding: min(2.1428571429vw, 30px) min(1.7857142857vw, 25px) min(2.1428571429vw, 30px) min(2.1428571429vw, 30px);
  }
}
.p-homeData__box .data {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
}
.p-homeData__box .data dt .main {
  display: block;
  width: fit-content;
  white-space: nowrap;
  padding: 0 0.9em;
  background: #1859BC;
  border-radius: 1em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #FFF;
  font-size: min(3.22265625vw, 33px);
}
@media (min-width: 521px) {
  .p-homeData__box .data dt .main {
    font-size: min(2.79296875vw, 28.6px);
  }
}
@media (min-width: 1024px) {
  .p-homeData__box .data dt .main {
    font-size: min(1.8571428571vw, 26px);
  }
}
.p-homeData__box .data dt .att {
  display: block;
  margin-top: 0.2em;
  font-size: min(1.71875vw, 17.6px);
}
@media (min-width: 1024px) {
  .p-homeData__box .data dt .att {
    font-size: min(1.1428571429vw, 16px);
  }
}
.p-homeData__box .data dd {
  display: flex;
  align-items: flex-end;
  line-height: 0.8;
}
.p-homeData__box .data dd .number {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: min(7.51953125vw, 77px);
}
@media (min-width: 1024px) {
  .p-homeData__box .data dd .number {
    font-size: min(5vw, 70px);
  }
}
.p-homeData__box .data dd .suffix {
  margin-left: 0.4em;
  font-weight: bold;
  white-space: nowrap;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: min(2.1484375vw, 22px);
}
@media (min-width: 521px) {
  .p-homeData__box .data dd .suffix {
    margin-left: 1em;
    font-size: min(1.93359375vw, 19.8px);
  }
}
@media (min-width: 1024px) {
  .p-homeData__box .data dd .suffix {
    font-size: min(1.1428571429vw, 16px);
  }
}
.p-homeData__box .icon {
  margin-top: auto;
  flex-shrink: 0;
  width: min(11.494140625vw, 117.7px);
}
@media (min-width: 1024px) {
  .p-homeData__box .icon {
    width: min(7.6428571429vw, 107px);
  }
}

/* features
-------------------------------------- */
.p-homeFeatures__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px 10px;
  padding: 70px 0;
}
@media (min-width: 1024px) {
  .p-homeFeatures__inner {
    padding: 140px 0;
  }
}
@media (min-width: 768px) {
  .p-homeFeatures__inner {
    gap: 55px;
  }
}
@media (min-width: 1024px) {
  .p-homeFeatures__inner {
    padding: 140px 0;
  }
}

.p-homeFeatures__wrapper {
  display: grid;
  gap: 40px;
}
@media (min-width: 1024px) {
  .p-homeFeatures__wrapper {
    grid-template-columns: 1fr 1fr;
  }
}

.p-homeFeatures__primary .link {
  display: flex;
  flex-wrap: wrap;
}
.p-homeFeatures__primary .img {
  width: 100%;
  aspect-ratio: 1160/720;
  margin-bottom: 28px;
}
.p-homeFeatures__primary .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-homeFeatures__primary .head {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0.8em;
  line-height: 1.4;
}
.p-homeFeatures__primary .date {
  margin-right: 1em;
  margin-top: 0.2em;
  flex-shrink: 0;
  font-size: 18px;
  font-size: 1.125rem;
}
@media (min-width: 768px) {
  .p-homeFeatures__primary .date {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
.p-homeFeatures__primary .title {
  position: relative;
  flex: 1;
  padding-left: 0.8em;
  font-weight: normal;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .p-homeFeatures__primary .title {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
.p-homeFeatures__primary .title::before {
  position: absolute;
  top: 0.15em;
  bottom: 0.15em;
  left: 0;
  width: 1px;
  background: #040000;
  content: "";
}
.p-homeFeatures__primary .btn {
  margin-top: 0.5em;
  text-align: right;
}

.p-homeFeatures__secondary {
  display: grid;
  gap: 20px;
}
.p-homeFeatures__secondary .link {
  display: flex;
  gap: 12px;
}
@media (min-width: 768px) {
  .p-homeFeatures__secondary .link {
    gap: 20px;
  }
}
.p-homeFeatures__secondary .img {
  width: 41.3793103448%;
  aspect-ratio: 480/320;
  align-self: flex-start;
}
.p-homeFeatures__secondary .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-homeFeatures__secondary .main {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.p-homeFeatures__secondary .head {
  line-height: 1.4;
}
@media (min-width: 768px) {
  .p-homeFeatures__secondary .head {
    padding: 1em 0;
  }
}
.p-homeFeatures__secondary .date {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid;
}
@media (max-width: 767px) {
  .p-homeFeatures__secondary .date {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  .p-homeFeatures__secondary .date {
    margin-bottom: 0.8em;
    padding-bottom: 0.8em;
  }
}
.p-homeFeatures__secondary .title {
  font-weight: normal;
  font-size: 16px;
  font-size: 1rem;
}
@media (max-width: 767px) {
  .p-homeFeatures__secondary .title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.p-homeFeatures__secondary .btn {
  margin-top: auto;
  padding-top: 0.3em;
  text-align: right;
}
@media (max-width: 767px) {
  .p-homeFeatures__secondary .btn .c-secondaryBtn {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

/* nav
-------------------------------------- */
.p-homeNav {
  overflow: hidden;
}

.p-homeNav__inner {
  display: grid;
  gap: 10px;
  padding: 60px 0;
  grid-template-columns: repeat(2, 1fr);
  position: relative;
}
@media (min-width: 521px) {
  .p-homeNav__inner {
    gap: 20px;
  }
}
@media (min-width: 1024px) {
  .p-homeNav__inner {
    grid-template-columns: repeat(4, 1fr);
  }
}
.p-homeNav__inner > * {
  position: relative;
}
.p-homeNav__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-homeNav__inner::before {
    left: -100px;
  }
}
.p-homeNav__inner::before {
  top: 0;
}

.p-homeNav__item {
  position: relative;
  border-radius: 10px;
}
@media (any-hover: hover) {
  .p-homeNav__item {
    transition: 0.5s box-shadow;
  }
  .p-homeNav__item:hover {
    box-shadow: rgba(134, 134, 134, 0.3) 5px 5px 15px;
  }
}
.p-homeNav__item .link {
  display: block;
  border-radius: 10px;
  overflow: hidden;
}
.p-homeNav__item .img {
  aspect-ratio: 570/376;
  border-radius: 10px 10px 0 0;
  overflow: hidden;
}
.p-homeNav__item .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-homeNav__item .btn {
  background: #FFF;
}
.p-homeNav__item .btn .c-secondaryBtn {
  box-sizing: border-box;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 10px 14px;
}
@media (max-width: 520px) {
  .p-homeNav__item .btn .c-secondaryBtn {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 521px) {
  .p-homeNav__item .btn .c-secondaryBtn {
    padding: 20px 28px;
  }
}
.p-homeNav__item .btn .c-secondaryBtn::before, .p-homeNav__item .btn .c-secondaryBtn::after {
  right: 10px;
}
@media (min-width: 521px) {
  .p-homeNav__item .btn .c-secondaryBtn::before, .p-homeNav__item .btn .c-secondaryBtn::after {
    right: 20px;
  }
}

/* =========================================================
 company
========================================================= */
.p-companyPagetitle {
  margin-bottom: 30px;
}
@media (min-width: 1024px) {
  .p-companyPagetitle {
    margin-bottom: 55px;
  }
}

/* kv
-------------------------------------- */
.p-companyKv img {
  width: 100%;
}

/* philosophy
-------------------------------------- */
.p-companyPhilosophy {
  overflow: hidden;
}

.p-companyPhilosophy__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-companyPhilosophy__inner > * {
  position: relative;
}
.p-companyPhilosophy__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-companyPhilosophy__inner::before {
    right: 100px;
  }
}
.p-companyPhilosophy__inner::before {
  top: 20px;
}

.p-companyPhilosophy__title {
  margin-bottom: 30px;
}
@media (min-width: 1024px) {
  .p-companyPhilosophy__title {
    margin-bottom: 45px;
  }
}

.p-companyPhilosophy__intro {
  display: flex;
  gap: 30px;
}
@media (max-width: 767px) {
  .p-companyPhilosophy__intro {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .p-companyPhilosophy__intro {
    justify-content: space-between;
    max-width: 910px;
  }
}
@media (min-width: 768px) {
  .p-companyPhilosophy__intro .main {
    flex: 1;
  }
}
.p-companyPhilosophy__intro .title {
  width: fit-content;
  margin-bottom: 0.8em;
  font-size: 28px;
  font-size: 1.75rem;
}
@media (min-width: 1024px) {
  .p-companyPhilosophy__intro .title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.p-companyPhilosophy__intro .img {
  width: 80%;
  max-width: 333px;
}
@media (max-width: 767px) {
  .p-companyPhilosophy__intro .img {
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .p-companyPhilosophy__intro .img {
    width: 36.5934065934%;
  }
}

.p-companyPhilosophy__list {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .p-companyPhilosophy__list {
    max-width: 400px;
    margin-inline: auto;
  }
}
@media (min-width: 1024px) {
  .p-companyPhilosophy__list {
    margin-top: 70px;
  }
}
.p-companyPhilosophy__list .title {
  margin-bottom: 1.2em;
}
.p-companyPhilosophy__list .list {
  display: grid;
  gap: 30px 20px;
}
@media (min-width: 768px) {
  .p-companyPhilosophy__list .list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1024px) {
  .p-companyPhilosophy__list .list {
    gap: 30px;
  }
}
.p-companyPhilosophy__list .text {
  margin-bottom: 1.3em;
}
/* message
-------------------------------------- */
.p-companyMessage {
  overflow: visible;
}

.p-companyMessage__inner {
  position: relative;
  display: flex;
}
@media (max-width: 1023px) {
  .p-companyMessage__inner {
    flex-direction: column;
    gap: 40px;
  }
}
@media (min-width: 1024px) {
  .p-companyMessage__inner {
    gap: 60px;
    align-items: flex-start;
  }
}

@media (min-width: 1024px) {
  .p-companyMessage__img {
    position: sticky;
    top: 8vw;
    left: 0;
    width: 49.1666666667%;
  }
}

@media (min-width: 1024px) {
  .p-companyMessage__main {
    flex: 1;
  }
}

.p-companyMessage__text p + p {
  margin-top: 2em;
}

.p-companyMessage__signature {
  margin-top: 1em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.4;
  font-size: 34px;
  font-size: 2.125rem;
}
@media (min-width: 1024px) {
  .p-companyMessage__signature {
    font-size: 46px;
    font-size: 2.875rem;
  }
}
@media (min-width: 1366px) {
  .p-companyMessage__signature {
    font-size: 56px;
    font-size: 3.5rem;
  }
}
.p-companyMessage__signature span {
  display: block;
  font-size: 46%;
}

/* profile
-------------------------------------- */
.p-companyProfile {
  overflow: hidden;
}

.p-companyProfile__inner {
  padding-bottom: 60px;
	padding-top: 60px;
  position: relative;
}
.p-companyProfile__inner > * {
  position: relative;
}
.p-companyProfile__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-companyProfile__inner::before {
    left: -100px;
  }
}
@media (min-width: 768px) {
  .p-companyProfile__inner {
    padding-bottom: 35px;
	  	padding-top: 60px;
  }
}
.p-companyProfile__inner::before {
  top: 20px;
}

.p-companyProfile__table {
  line-height: 1.875;
}
.p-companyProfile__table > div:last-child {
  border-bottom: none;
}
@media (min-width: 768px) {
  .p-companyProfile__table > div > dt {
    max-width: 175px;
  }
}
.p-companyProfile__table .executive li {
  display: flex;
  flex-wrap: wrap;
  gap: 0 2em;
}
.p-companyProfile__table .address {
  line-height: 2;
}
.p-companyProfile__table .address dt {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #1859BC;
}
.p-companyProfile__table .address dd + dt {
  margin-top: 25px;
}
.p-companyProfile__table .address dd p {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1em;
}
.p-companyProfile__table .map {
  margin-top: 26px;
}
.p-companyProfile__table .map iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  border-radius: 10px;
}
@media (min-width: 1024px) {
  .p-companyProfile__table .map iframe {
    aspect-ratio: 10/4;
  }
}
.p-companyProfile__table .license div {
  display: flex;
}
@media (max-width: 767px) {
  .p-companyProfile__table .license div {
    flex-direction: column;
  }
}
.p-companyProfile__table .license div + div {
  margin-top: 20px;
}
.p-companyProfile__table .license dt {
  font-weight: normal;
}
.p-companyProfile__table .license dt::before {
  content: "●";
}
@media (min-width: 768px) {
  .p-companyProfile__table .license dt {
    width: 5em;
  }
}

/* history
-------------------------------------- */
.p-companyHistory {
  overflow: hidden;
  overflow: clip;
}

.p-companyHistory__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-companyHistory__inner > * {
  position: relative;
}
.p-companyHistory__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-companyHistory__inner::before {
    right: 100px;
  }
}
.p-companyHistory__inner::before {
  top: 20px;
}

.p-companyHistory__title {
  margin-bottom: 30px;
}
@media (min-width: 1024px) {
  .p-companyHistory__title {
    margin-bottom: 50px;
  }
}

.p-companyHistory__wrapper {
  display: flex;
  gap: 30px 60px;
}
@media (max-width: 1023px) {
  .p-companyHistory__wrapper {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .p-companyHistory__wrapper {
    align-items: flex-start;
  }
}

@media (min-width: 1024px) {
  .p-companyHistory__list {
    flex: 1;
  }
}
.p-companyHistory__list div {
  position: relative;
  display: flex;
  padding-bottom: 40px;
}
@media (max-width: 520px) {
  .p-companyHistory__list div {
    flex-direction: column;
    padding-left: 30px;
  }
}
@media (min-width: 1024px) {
  .p-companyHistory__list div {
    padding-bottom: 70px;
  }
}
.p-companyHistory__list div::before {
  position: absolute;
  top: 0.5em;
  left: 0.75em;
  bottom: 0;
  width: 1px;
  background: #1859BC;
  content: "";
}
@media (min-width: 521px) {
  .p-companyHistory__list div::before {
    left: 142px;
  }
}
.p-companyHistory__list div:last-child {
  padding-bottom: 0;
}
.p-companyHistory__list div:last-child::before {
  display: none;
}
@media (min-width: 521px) {
  .p-companyHistory__list dt {
    width: 188px;
  }
}
.p-companyHistory__list dt::before {
  position: absolute;
  left: 0;
  width: 1.5625em;
  aspect-ratio: 1/1;
  background: #1859BC;
  border-radius: 100%;
  border: 0.3125em solid #f2f2f2;
  content: "";
}
@media (min-width: 521px) {
  .p-companyHistory__list dt::before {
    left: 130px;
  }
}
@media (min-width: 521px) {
  .p-companyHistory__list dd {
    flex: 1;
  }
}

@media (min-width: 1024px) {
  .p-companyHistory__img {
    position: sticky;
    top: 8vw;
    width: 39.1666666667%;
  }
}

/* performance
-------------------------------------- */
.p-companyPerformance {
  overflow: hidden;
}

.p-companyPerformance__inner {
  padding-bottom: 60px;
  position: relative;
}
.p-companyPerformance__inner > * {
  position: relative;
}
.p-companyPerformance__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-companyPerformance__inner::before {
    left: -100px;
  }
}
.p-companyPerformance__inner::before {
  top: 20px;
}

.p-companyPerformance__wrapper {
  display: grid;
  gap: 40px;
}
@media (min-width: 1024px) {
  .p-companyPerformance__wrapper {
    grid-template-columns: 1fr 1fr;
  }
}
.p-companyPerformance__wrapper .c-sectionSubtitle {
  margin-bottom: 0.8em;
  text-align: center;
}

.p-companyPerformance__files {
  margin-top: 20px;
}
.p-companyPerformance__files li {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.4em 1em;
  justify-content: space-between;
  padding: 1.2em 0;
  border-bottom: 1px solid #bbbcbe;
}

/* nav
-------------------------------------- */
.p-companyNav {
  overflow: hidden;
}

.p-companyNav__inner {
  display: grid;
  gap: 10px;
  padding: 60px 0;
  grid-template-columns: repeat(2, 1fr);
  position: relative;
}
@media (min-width: 521px) {
  .p-companyNav__inner {
    gap: 20px;
  }
}
@media (min-width: 1024px) {
  .p-companyNav__inner {
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-companyNav__inner > * {
  position: relative;
}
.p-companyNav__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
@media (min-width: 1024px) {
  .p-companyNav__inner::before {
    left: -100px;
  }
}
.p-companyNav__inner::before {
  top: 0;
}

.p-companyNav__item {
  position: relative;
  border-radius: 10px;
  background-color: #fff;
  grid-template-rows: 1fr auto;
  display: grid;
}
@media (any-hover: hover) {
  .p-companyNav__item {
    transition: 0.5s box-shadow;
  }
  .p-companyNav__item:hover {
    box-shadow: rgba(134, 134, 134, 0.3) 5px 5px 15px;
  }
}
.p-companyNav__item .link {
  display: block;
  border-radius: 10px;
  overflow: hidden;
}
.p-companyNav__item .img {
  aspect-ratio: 570/376;
  border-radius: 10px 10px 0 0;
  overflow: hidden;
}
.p-companyNav__item .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-companyNav__item .btn {
  background: #FFF;
}
.p-companyNav__item .btn .c-secondaryBtn {
  box-sizing: border-box;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 10px 25px 10px 14px;
}
@media (max-width: 520px) {
  .p-companyNav__item .btn .c-secondaryBtn {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media (min-width: 521px) {
  .p-companyNav__item .btn .c-secondaryBtn {
    padding: 20px 28px;
  }
}
.p-companyNav__item .btn .c-secondaryBtn::before, .p-companyNav__item .btn .c-secondaryBtn::after {
  right: 10px;
}
@media (min-width: 521px) {
  .p-companyNav__item .btn .c-secondaryBtn::before, .p-companyNav__item .btn .c-secondaryBtn::after {
    right: 20px;
  }
}

/* 沿革ダウンロード
-------------------------------------- */
.c-tableList .license .keibi .keibi-dl .c-link--download {
  font-weight: normal;
}
.c-tableList .license .keibi .keibi-dl .c-link--download::after {
  margin-top: -5px;
}
@media (min-width: 521px) {
  .c-tableList .license .keibi .keibi-dl {
    padding-left: 20px;
  }
}

/* history
-------------------------------------- */
.p-companyHistory__list div::before {
  position: absolute;
  top: 0.5em;
  left: 0.75em;
  bottom: 0;
  width: 1px;
  background: #1859BC;
  content: "";
}
@media (min-width: 521px) {
  .p-companyHistory__list div::before {
    left: 196px;
  }
}
@media (min-width: 521px) {
  .p-companyHistory__list dt {
    width: 223px;
  }
}
.p-companyHistory__list dt::before {
  position: absolute;
  left: 0;
  width: 1.5625em;
  aspect-ratio: 1/1;
  background: #1859BC;
  border-radius: 100%;
  border: 0.3125em solid #f2f2f2;
  content: "";
}
@media (min-width: 521px) {
  .p-companyHistory__list dt::before {
    left: 185px;
  }
}

/* 強み
-------------------------------------- */
#strengths {
  overflow: hidden;
}
#strengths .c-strengths-title {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
}
@media (min-width: 1024px) {
  #strengths .c-strengths-title {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media (min-width: 1024px) {
  #strengths .p-companyPhilosophy__list {
    margin-top: 40px;
  }
}
@media (min-width: 1024px) {
  #strengths .p-companyPhilosophy__list .list {
    gap: 60px;
  }
}
#strengths .p-companyPhilosophy__list .list li {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
}
#strengths .p-companyPhilosophy__list .list li .strengths_flex {
  display: flex;
  align-items: baseline;
  margin-bottom: 0;
}
#strengths .p-companyPhilosophy__list .list li .strengths_flex .strengths_number {
  line-height: 1;
}
#strengths .p-companyPhilosophy__list .list li .strengths_flex .strengths_text {
  margin-left: -75px;
}

.strengths_contents {
  padding-top: 50px;
}
.strengths_contents::before {
  top: 0px;
}
.strengths_contents .p-strengths__subtitle {
  transform: inherit;
  align-items: baseline;
}
.strengths_contents .p-strengths__subtitle .title {
  margin-left: -80px;
}
@media (min-width: 1024px) {
  .strengths_contents .p-strengths__subtitle .title {
    margin-left: -110px;
  }
}
@media (min-width: 1024px) {
  .strengths_contents .p-sectionTextImg__text {
    max-width: 1040px !important;
    width: 70vw !important;
  }
}

.strengths_number {
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  line-height: 0.8;
  color: white;
  transition: 0.5s color;
  font-size: 70px;
  font-size: 4.375rem;
}
@media (min-width: 1366px) {
  .strengths_number {
    font-size: 100px;
    font-size: 6.25rem;
  }
}

/* =========================================================
 service
========================================================= */
/* sectionLead
-------------------------------------- */
.p-serviceSectionLead {
  overflow: hidden;
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center;
  line-height: 1.27;
  font-size: 22px;
  font-size: 1.375rem;
}
@media (min-width: 768px) {
  .p-serviceSectionLead {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
@media (min-width: 1024px) {
  .p-serviceSectionLead {
    font-size: 36px;
    font-size: 2.25rem;
  }
}

/* head
-------------------------------------- */
.p-serviceHead {
  overflow: hidden;
}

.p-serviceHead__inner {
  max-width: 1600px;
}

.p-serviceHead__en {
  display: flex;
  gap: 1em;
  position: relative;
  line-height: 0.8;
  white-space: nowrap;
  color: transparent;
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  font-size: min(26.0416666667vw, 200px);
  letter-spacing: 0.06em;
  -webkit-text-stroke: 1px #f2f2f2;
  text-stroke: 1px #f2f2f2;
}
@media (min-width: 1024px) {
  .p-serviceHead__en {
    font-size: min(12.5vw, 250px);
  }
}
.p-serviceHead__en > span {
  flex-flow: none;
}
.p-serviceHead__en > span:last-child {
  position: absolute;
  right: calc(100% + 1em);
}

.is-serviceHeadEn--ticker > span {
  animation-name: ticker;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-play-state: running;
}
.is-serviceHeadEn.p-serviceHead__en--propertyManagement > span {
  animation-duration: 57s;
}

@keyframes ticker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-100% - 1em));
  }
}
.p-serviceHead__title {
  position: relative;
  margin-top: -30px;
}
@media (min-width: 1024px) {
  .p-serviceHead__title {
    margin-top: -25px;
  }
}

/* lead
-------------------------------------- */
.p-serviceLead {
  overflow: hidden;
  position: relative;
  margin-top: 35px;
}
@media (min-width: 1024px) {
  .p-serviceLead {
    margin-top: 45px;
  }
}

.p-serviceLead__inner {
  max-width: 1600px;
  position: relative;
  padding-bottom: 0;
}
.p-serviceLead__inner > * {
  position: relative;
}
.p-serviceLead__inner::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
.p-serviceLead__inner::before {
  top: 30vw;
}
@media (min-width: 768px) {
  .p-serviceLead__inner::before {
    top: 27.2%;
  }
}
@media (max-width: 767px) {
  .p-serviceLead__inner {
    padding-bottom: 40px;
  }
}

.p-serviceLead__img {
  border-radius: 16px;
  overflow: hidden;
}

.p-serviceLead__wrapper {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 767px) {
  .p-serviceLead__wrapper {
    flex-direction: column;
    gap: 30px;
  }
}
@media (min-width: 1024px) {
  .p-serviceLead__wrapper {
    margin-top: 55px;
  }
}

@media (min-width: 768px) {
  .p-serviceLead__main {
    width: 100%;
    padding-bottom: 60px;
  }
}
.p-serviceLead__main .title {
  margin-bottom: 1em;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 26px;
  font-size: 1.625rem;
}
@media (min-width: 1024px) {
  .p-serviceLead__main .title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}

.p-serviceLead__illust {
  text-align: center;
}
@media (min-width: 768px) {
  .p-serviceLead__illust {
    width: 34.1666666667%;
  }
}
.p-serviceLead__illust img {
  max-width: 236px;
}
@media (min-width: 768px) {
  .p-serviceLead__illust img {
    transform: translateY(-32%);
  }
}

/* point
-------------------------------------- */
.p-servicePoint {
  overflow: hidden;
}

.p-servicePoint__title {
  margin-bottom: 20px;
}
@media (min-width: 1024px) {
  .p-servicePoint__title {
    margin-bottom: 45px;
  }
}

.p-servicePoint__wrapper {
  display: grid;
  gap: 30px;
  padding-bottom: 45px;
  position: relative;
}
@media (max-width: 1023px) {
  .p-servicePoint__wrapper {
    max-width: 400px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 1024px) {
  .p-servicePoint__wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-servicePoint__wrapper > * {
  position: relative;
}
.p-servicePoint__wrapper::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
.p-servicePoint__wrapper::before {
  top: 155px;
}
@media (min-width: 768px) {
  .p-servicePoint__wrapper::before {
    top: 27.2%;
  }
}

.p-servicePoint__box {
  position: relative;
  padding: 30px 30px;
  border-radius: 10px;
  background: #FFF;
}
.p-servicePoint__box .img {
  width: 68.4210526316%;
  margin: auto;
}
.p-servicePoint__box .number {
  margin-top: 0.5em;
  color: #1859BC;
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  font-size: 24px;
  font-size: 1.5rem;
}
@media (min-width: 1024px) {
  .p-servicePoint__box .number {
    font-size: 26px;
    font-size: 1.625rem;
  }
}
.p-servicePoint__box .title {
  margin-bottom: 0.8em;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
}
@media (min-width: 1024px) {
  .p-servicePoint__box .title {
    font-size: 26px;
    font-size: 1.625rem;
  }
}

/* description
-------------------------------------- */
.p-serviceDescription__title {
  margin-bottom: 40px;
}
@media (min-width: 1024px) {
  .p-serviceDescription__title {
    margin-bottom: 80px;
  }
}

.p-serviceDescription__subtitle {
  margin-bottom: 1em;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-serviceDescription__wrapper + .p-serviceDescription__subtitle {
  margin-top: 2em;
}

.p-serviceDescription__wrapper {
  display: grid;
  gap: 20px;
}
@media (min-width: 768px) {
  .p-serviceDescription__wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .p-serviceDescription__wrapper {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
}

.p-serviceDescription__item div {
  border-radius: 10px;
  overflow: hidden;
  background: #f2f2f2;
}
.p-serviceDescription__item dt {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 4.615em;
  padding: 20px;
  cursor: pointer;
  line-height: 1.53;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-serviceDescription__item dt .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 20px;
  aspect-ratio: 1/1;
  background: #040000;
  border-radius: 100%;
  content: "";
}
.p-serviceDescription__item dt .icon::before, .p-serviceDescription__item dt .icon::after {
  position: absolute;
  width: 70%;
  height: 2px;
  background: #FFF;
  content: "";
}
.p-serviceDescription__item dt .icon::after {
  transform: rotate(90deg);
  transition: 0.5s;
}
@media (any-hover: hover) {
  .p-serviceDescription__item dt .icon {
    transition: 0.5s background-color;
  }
  .p-serviceDescription__item dt:hover .icon {
    background: #1859BC;
  }
}
.p-serviceDescription__item dt.is-toggleBtn--open .icon::after {
  transform: rotate(360deg);
}
@media (any-hover: hover) {
  .p-serviceDescription__item dt {
    transition: 0.5s color;
  }
  .p-serviceDescription__item dt:hover {
    color: #1859BC;
  }
}
@media (min-width: 1366px) {
  .p-serviceDescription__item dt {
    padding: 20px 30px;
  }
}
.p-serviceDescription__item dd {
  display: grid;
  padding-inline: 20px;
  display: grid;
  grid-template-rows: 0fr;
  transition: 0.5s grid-template-rows ease, 0.5s padding ease;
}
.p-serviceDescription__item dd > * {
  overflow: hidden;
}
.p-serviceDescription__item dd.is-toggleContents--open {
  grid-template-rows: 1fr;
}
@media (min-width: 1024px) {
  .p-serviceDescription__item dd {
    padding-inline: 30px;
  }
}
.p-serviceDescription__item dd.is-toggleContents--open {
  padding-bottom: 20px;
}
@media (min-width: 1366px) {
  .p-serviceDescription__item dd.is-toggleContents--open {
    padding-bottom: 30px;
  }
}

/* area
-------------------------------------- */
.p-serviceArea {
  overflow: hidden;
}

.p-serviceArea__wrapper {
  display: flex;
  padding-bottom: 50px;
  position: relative;
}
@media (min-width: 1024px) {
  .p-serviceArea__wrapper {
    padding-bottom: 70px;
  }
}
.p-serviceArea__wrapper > * {
  position: relative;
}
.p-serviceArea__wrapper::before {
  position: absolute;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  background: #f2f2f2;
  content: "";
}
.p-serviceArea__wrapper::before {
  top: 100px;
}
@media (min-width: 1024px) {
  .p-serviceArea__wrapper::before {
    top: 155px;
  }
}
@media (max-width: 1023px) {
  .p-serviceArea__wrapper {
    flex-direction: column;
    gap: 30px;
  }
}

.p-serviceArea__main {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
@media (max-width: 767px) {
  .p-serviceArea__main {
    flex-direction: column;
    gap: 25px;
  }
}
@media (min-width: 768px) {
  .p-serviceArea__main {
    align-items: center;
    justify-content: space-between;
  }
}
@media (min-width: 1024px) {
  .p-serviceArea__main {
    width: 64.1666666667%;
  }
}
@media (min-width: 768px) {
  .p-serviceArea__main .img {
    width: 49.3506493506%;
  }
}
.p-serviceArea__main .lead {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 22px;
  font-size: 1.375rem;
}
@media (min-width: 768px) {
  .p-serviceArea__main .lead {
    width: 46.7532467532%;
    font-size: min(2.5390625vw, 26px);
  }
}
@media (min-width: 1024px) {
  .p-serviceArea__main .lead {
    font-size: min(1.8571428571vw, 26px);
  }
}
.p-serviceArea__main .text {
  width: 100%;
}
@media (min-width: 768px) {
  .p-serviceArea__main .text {
    margin-top: 2em;
  }
}
@media (min-width: 1024px) {
  .p-serviceArea__main .text {
    width: 89.6103896104%;
    margin-top: 3em;
  }
}

.p-serviceArea__illust {
  position: relative;
}
@media (max-width: 1023px) {
  .p-serviceArea__illust {
    width: 80%;
    max-width: 400px;
    margin: auto;
  }
}
@media (min-width: 1024px) {
  .p-serviceArea__illust {
    flex: 1;
  }
}

.p-serviceArea__data {
  display: grid;
  position: relative;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 60px;
  grid-template-columns: repeat(3, 1fr);
  gap: 2vw;
  max-width: 1000px;
}
@media (min-width: 768px) {
  .p-serviceArea__data {
    gap: min(4.4014084507vw, 50px);
  }
}
.p-serviceArea__data::before {
  position: absolute;
  top: 0;
  right: calc(50% - 50vw);
  bottom: 0;
  left: calc(50% - 50vw);
  content: "";
  background: #f2f2f2;
}

.p-serviceArea__dataItem {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  aspect-ratio: 1/1;
  border-radius: 100%;
  background: #FFF;
}
.p-serviceArea__dataItem dt {
  margin-bottom: 0.2em;
  padding: 0 1em;
  background: #1859BC;
  border-radius: 1em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #FFF;
  font-size: min(2.6408450704vw, 30px);
}
@media (min-width: 768px) {
  .p-serviceArea__dataItem dt {
    font-size: min(2.2887323944vw, 26px);
  }
}
.p-serviceArea__dataItem dd {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.p-serviceArea__dataItem dd .number {
  color: #1859BC;
  font-family: "Noto Sans", sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: min(10.5633802817vw, 120px);
}
@media (min-width: 768px) {
  .p-serviceArea__dataItem dd .number {
    font-size: min(8.8028169014vw, 100px);
  }
}
.p-serviceArea__dataItem dd .suffix {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold;
  line-height: 1;
  font-size: min(2.8169014085vw, 32px);
}
@media (min-width: 768px) {
  .p-serviceArea__dataItem dd .suffix {
    font-size: min(2.2887323944vw, 26px);
  }
}

.contents-adjust {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media (min-width: 1024px) {
  .p-companyPhilosophy__inner.contents_cover::before {
    right: -40px;
  }
}
/* =========================================================
 news
========================================================= */
/* list
-------------------------------------- */
.p-newsList__archive {
  margin: 30px 0 0 auto;
}
@media (min-width: 1024px) {
  .p-newsList__archive {
    margin-top: 60px;
  }
}

.p-newsList__list {
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .p-newsList__list {
    margin-top: 30px;
  }
}
.p-newsList__list li {
  border-bottom: 1px solid #bbbcbe;
}
.p-newsList__list .link {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0.6em 1em;
  padding: 22px 0;
}
@media (min-width: 1024px) {
  .p-newsList__list .link {
    padding: 28px 0;
  }
}
.p-newsList__list .date {
  min-width: 5em;
}
@media (min-width: 768px) {
  .p-newsList__list .date {
    min-width: 5.25em;
  }
}
.p-newsList__list .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-newsList__list .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-newsList__list .text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (max-width: 1023px) {
  .p-newsList__list .text {
    width: 100%;
  }
}
@media (min-width: 1024px) {
  .p-newsList__list .text {
    flex: 1;
    -webkit-line-clamp: 1;
  }
}
@media (max-width: 1023px) {
  .p-newsList__list .btn {
    width: 100%;
    text-align: right;
  }
}
@media (min-width: 1024px) {
  .p-newsList__list .btn {
    margin-left: 3em;
  }
}

.p-newsArticle__head {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
@media (min-width: 1024px) {
  .p-newsArticle__head {
    margin-bottom: 60px;
  }
}
.p-newsArticle__head .title {
  width: 100%;
  margin-bottom: 0.4em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: min(6.9333333333vw, 26px);
}
@media (min-width: 1024px) {
  .p-newsArticle__head .title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.p-newsArticle__head .date {
  min-width: 5em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (min-width: 768px) {
  .p-newsArticle__head .date {
    min-width: 5.25em;
  }
}
.p-newsArticle__head .category  ,.p-featuresArticle__head .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-newsArticle__head .category span ,.p-featuresArticle__head .category span{
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.p-newsArticle__pdf {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.4em 1em;
  padding-block: 1.75em;
  border-block: 1px solid #bbbcbe;
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .p-newsArticle__pdf {
    margin-top: 80px;
  }
}
.p-newsArticle__pdf .title {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.p-newsArticle__nav {
  margin-top: 40px;
  text-align: center;
}
@media (min-width: 1024px) {
  .p-newsArticle__nav {
    margin-top: 80px;
  }
}

/* =========================================================
 form
========================================================= */
/* section
-------------------------------------- */
.p-contact__lead {
  margin-bottom: 30px;
}

.p-contact__btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-top: 50px;
}
@media (min-width: 1024px) {
  .p-contact__btn {
    margin-top: 140px;
  }
}

/* formTable
-------------------------------------- */
.p-contactTable dt span {
  padding: 0.2em 0.8em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
}

@media (min-width: 768px) {
  .p-contactTable > div {
    align-items: flex-start;
    padding-block: 30px;
  }
}
.p-contactTable > div:last-child {
  border-bottom: none;
}
.p-contactTable dt {
  display: flex;
  align-items: center;
  gap: 1.1em;
}
@media (min-width: 768px) {
  .p-contactTable dt {
    width: 318px;
  }
}
@media (min-width: 768px) {
  .p-contactTable:has(input[type=email]) dt {
    margin-top: 8px;
  }
}

.p-contactTable__att {
  font-size: 14px;
  font-size: 0.875rem;
}
* + .p-contactTable__att {
  margin-top: 10px;
}

.p-contactTable__select select, .p-contactTable__date, .p-contactTable__textarea, .p-contactTable__input {
  width: 100%;
  box-sizing: border-box;
  height: 40px;
  padding: 0 0.8em;
  border-radius: 5px;
  background: #f2f2f2;
  font-size: 16px;
  font-size: 1rem;
}
.p-contactTable__select select::placeholder, .p-contactTable__date::placeholder, .p-contactTable__textarea::placeholder, .p-contactTable__input::placeholder {
  color: #bbbdbe;
}

.p-contactTable__input[readonly] {
  background: none;
  border: none;
  padding: 0;
}

.p-contactTable__textarea {
  height: 10em;
  padding: 0.8em;
}

.p-contactTable__date {
  max-width: 12em;
}

.p-contactTable__select {
  position: relative;
}
.p-contactTable__select::after {
  position: absolute;
  right: 1em;
  top: 1.1em;
  background: #040000;
  height: 0.3em;
  width: 0.5em;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
}
.p-contactTable__select select {
  padding-right: 3em;
  color: #040000;
  cursor: pointer;
}

.p-contactTable__checkbox .wpcf7-list-item {
  margin-left: 0;
}
.p-contactTable__checkbox .wpcf7-form-control-wrap .wpcf7-form-control {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 1.5em;
}
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    max-width: 50%;
    margin: auto;
    text-align: center;
    margin-top: 50px;
}
/* privacy
-------------------------------------- */
.p-contactPrivacy {
  margin-top: 50px;
  padding: 25px;
  border: 1px solid #bbbcbe;
}
@media (min-width: 1024px) {
  .p-contactPrivacy {
    margin-top: 100px;
    padding: 5%;
  }
}

.p-contactPrivacy__title {
  margin-bottom: 1.5em;
  color: #1859BC;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.p-contactPrivacy__text .c-link--external {
  text-decoration: underline;
}

.p-contactPrivacy__check {
  margin-top: 25px;
}
@media (min-width: 1024px) {
  .p-contactPrivacy__check {
    margin-top: 35px;
  }
}
.p-contactPrivacy__check label {
  display: flex;
  align-items: center;
  gap: 0.6em;
  position: relative;
  width: fit-content;
  margin: auto;
}
.p-contactPrivacy__check label::before {
  width: 1.25em;
  aspect-ratio: 1/1;
  border-radius: 3px;
  background: #bbbdbe;
  content: "";
  transition: 0.2s background-color;
}
.p-contactPrivacy__check label::after {
  position: absolute;
  left: 0.3em;
  width: 0.6em;
  height: 0.8em;
  margin-top: -0.3em;
  border-right: 2.5px solid #FFF;
  border-bottom: 2.5px solid #FFF;
  transform: rotate(45deg);
  content: "";
  opacity: 0;
  transition: 0.2s opacity;
}
.p-contactPrivacy__check label input {
  display: none;
}
.p-contactPrivacy__check label:has(input:checked)::before {
  background: #1859BC;
}
.p-contactPrivacy__check label:has(input:checked)::after {
  opacity: 1;
}

/* =========================================================
 features
========================================================= */
/* list
-------------------------------------- */
.p-featuresList__archive {
  margin-left: auto;
}

.p-featuresList__list {
  margin-top: 20px;
}
@media (min-width: 1024px) {
  .p-featuresList__list {
    margin-top: 30px;
  }
}
.p-featuresList__list li {
  border-bottom: 1px solid #bbbcbe;
}
.p-featuresList__list .link {
  display: flex;
  gap: 0 16px;
  padding: 22px 0;
}
@media (min-width: 1024px) {
  .p-featuresList__list .link {
    gap: 0 40px;
    padding: 30px 0;
  }
}
.p-featuresList__list .img {
  width: 120px;
  height: 80px;
}
.p-featuresList__list .img img {
  height: 100%;
  object-fit: cover;
}
.p-featuresList__list .main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  flex: 1;
}
@media (max-width: 767px) {
  .p-featuresList__list .main {
    gap: 4px;
  }
}
.p-featuresList__list .date {
  min-width: 5em;
}
@media (min-width: 768px) {
  .p-featuresList__list .date {
    min-width: 5.25em;
  }
}
.p-featuresList__list .title {
  font-weight: normal;
  font-size: inherit;
}
@media (max-width: 767px) {
  .p-featuresList__list .title {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .p-featuresList__list .title {
    flex: 1;
  }
}
@media (max-width: 767px) {
  .p-featuresList__list .btn {
    width: 100%;
    text-align: right;
  }
}
@media (min-width: 768px) {
  .p-featuresList__list .btn {
    margin-left: 3em;
  }
}

.p-featuresArticle__eyecatch {
  margin-bottom: 35px;
  aspect-ratio: 2400/1000;
}
@media (min-width: 1024px) {
  .p-featuresArticle__eyecatch {
    margin-bottom: 55px;
  }
}
.p-featuresArticle__eyecatch img {
  height: 100%;
  object-fit: cover;
}

.p-featuresArticle__head {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
@media (min-width: 1024px) {
  .p-featuresArticle__head {
    margin-bottom: 60px;
  }
}
.p-featuresArticle__head .title {
  width: fit-content;
  margin-bottom: 0.4em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: min(6.9333333333vw, 26px);
}
@media (min-width: 1024px) {
  .p-featuresArticle__head .title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.p-featuresArticle__head .date {
  width: 100%;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (min-width: 768px) {
  .p-featuresArticle__head .date {
    min-width: 5.25em;
  }
}


.p-featuresArticle__body > * + * {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .p-featuresArticle__body > * + * {
    margin-top: 80px;
  }
}

.blog .p-featuresArticle__body > * + * {
  margin-top: 20px;
}

.blog h2 {
  border-bottom: solid 2px #1859BC;
	margin-top: 30px;
}
.blog h3,.blog h4{
	margin-top: 30px;
}
.blog ul{list-style: disc;
    margin-left: 10px;margin-top: 20px;}
.blog ol{
	margin-top: 20px;
}
.blog li{list-style: disc;
    margin-left: 10px}
.blog p {margin-top: 30px;}

@media (min-width: 1024px) {
.blog .p-featuresArticle__body > * + * {
    margin-top: 40px;
  }
}

.p-featuresArticle__imgText {
  display: flex;
  gap: 40px 3.3333333333%;
  margin-bottom: 60px;
}
@media (max-width: 1023px) {
  .p-featuresArticle__imgText {
    flex-direction: column;
    margin-bottom: 35px;
  }
}
@media (min-width: 1024px) {
  .p-featuresArticle__imgText--reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1024px) {
  .p-featuresArticle__imgText .img {
    width: 46.6666666667%;
  }
}
@media (min-width: 1024px) {
  .p-featuresArticle__imgText .main {
    flex: 1;
  }
}
.p-featuresArticle__imgText .title {
  width: fit-content;
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .p-featuresArticle__imgText .title {
    margin: 20px 0 30px;
  }
}
@media (min-width: 1024px) {
  .p-featuresArticle__imgText .title {
    margin: 50px 0 60px;
  }
}
.p-featuresArticle__imgText .title > .is-cover__contents {
  display: flex;
  gap: 0.77em;
}
.p-featuresArticle__imgText .title > .is-cover__contents::before {
  flex-shrink: 0;
  width: 1.53em;
  height: 1px;
  margin-top: 0.7em;
  background: #1859BC;
  content: "";
}

.p-featuresArticle__nav {
  margin-top: 40px;
  text-align: center;
}
@media (min-width: 1024px) {
  .p-featuresArticle__nav {
    margin-top: 80px;
  }
}

/* =========================================================
 pertner
========================================================= */
.p-pertner__list {
  margin-top: 25px;
}
.p-pertner__list li {
  display: flex;
  align-items: center;
  gap: 0.4em 1em;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 1.2em 0;
  border-bottom: 1px solid #bbbcbe;
}

/* =========================================================
 work
========================================================= */
/* list
-------------------------------------- */
.p-workList__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0 10px;
  position: relative;
  margin-bottom: 35px;
}
@media (min-width: 768px) {
  .p-workList__head {
    gap: 0 35px;
    margin-bottom: 55px;
  }
}

.p-workList__title {
  font-size: min(7.4666666667vw, 28px);
}
@media (min-width: 1024px) {
  .p-workList__title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}

.p-workList__list {
  display: grid;
  gap: 40px 20px;
  margin-top: 30px;
}
@media (min-width: 521px) {
  .p-workList__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .p-workList__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 30px;
    margin-top: 60px;
  }
}

.p-workList__item .img {
  aspect-ratio: 760/640;
}
.p-workList__item .img img {
  height: 100%;
  object-fit: cover;
}
.p-workList__item .title {
  margin-block: 0.9em 0.4em;
}
.p-workList__item .data {
  display: flex;
  gap: 1.5em;
  align-items: center;
  margin-bottom: 0.7em;
}
.p-workList__item .date {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-workList__item .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-workList__item .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-workList__item .info {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4em 0.5em;
}
.p-workList__item .info div {
  width: 100%;
}
.p-workList__item .info div.half {
  width: calc((100% - 0.5em) / 2);
}
.p-workList__item .info dt {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-workList__item .btn {
  margin-top: 0.8em;
  text-align: right;
}
.p-workList__item .btn .c-link--external {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-decoration: underline;
}

.is-workListItem {
  display: none;
}
.is-workListItem--active {
  display: block;
  animation: fade 0.5s;
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* =========================================================
 rent
========================================================= */
/* list
-------------------------------------- */
.p-rentList__list {
  display: grid;
  gap: 40px 20px;
  margin-top: 40px;
}
@media (min-width: 521px) {
  .p-rentList__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .p-rentList__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 30px;
    margin-top: 80px;
  }
}

.p-rentList__item .img {
  aspect-ratio: 760/640;
}
.p-rentList__item .img img {
  height: 100%;
  object-fit: cover;
}
.p-rentList__item .title {
  margin-block: 0.9em 0.4em;
}
.p-rentList__item .data {
  display: flex;
  gap: 1.5em;
  align-items: center;
  margin-bottom: 0.7em;
}
.p-rentList__item .date {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-rentList__item .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-rentList__item .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-rentList__item .info {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4em 0.5em;
}
.p-rentList__item .info div {
  width: 100%;
}
.p-rentList__item .info div.half {
  width: calc((100% - 0.5em) / 2);
}
.p-rentList__item .info dt {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-rentList__item .btn {
  margin-top: 0.8em;
  text-align: right;
}

/* nav
-------------------------------------- */
.p-rentNav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px 60px;
  margin-top: 60px;
}
@media (min-width: 1024px) {
  .p-rentNav {
    margin-top: 120px;
  }
}
.p-rentNav .c-tertiaryBtn {
  min-width: 20em;
}

/* article
-------------------------------------- */
.p-rentArticle__img {
  aspect-ratio: 1200/850;
}
.p-rentArticle__img img {
  height: 100%;
  object-fit: cover;
}

.p-rentArticle__head {
  display: flex;
  flex-wrap: wrap;
  margin-top: 35px;
}
.p-rentArticle__head .title {
  width: 100%;
  margin-bottom: 0.2em;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: min(8vw, 30px);
}
@media (min-width: 768px) {
  .p-rentArticle__head .title {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.p-rentArticle__head .date {
  margin-right: 1em;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.p-rentArticle__head .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 0.15em;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.p-rentArticle__head .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  background: #e05423;
  border-radius: 2em;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.p-rentArticle__section {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .p-rentArticle__section {
    margin-top: 55px;
  }
}

.p-rentArticle__sectionTable {
  min-width: 1100px;
}
@media (min-width: 1024px) {
  .p-rentArticle__sectionTable {
    min-width: 1200px;
  }
}
.p-rentArticle__sectionTable th, .p-rentArticle__sectionTable td {
  padding-right: 1em;
}
.p-rentArticle__sectionTable th:nth-child(1), .p-rentArticle__sectionTable td:nth-child(1) {
  width: 12.5%;
}
.p-rentArticle__sectionTable th:nth-child(2), .p-rentArticle__sectionTable td:nth-child(2) {
  width: 17.5%;
}
.p-rentArticle__sectionTable th:nth-child(3), .p-rentArticle__sectionTable td:nth-child(3) {
  width: 14.1666666667%;
}
.p-rentArticle__sectionTable th:nth-child(4), .p-rentArticle__sectionTable td:nth-child(4) {
  width: 14.1666666667%;
}
.p-rentArticle__sectionTable th:nth-child(5), .p-rentArticle__sectionTable td:nth-child(5) {
  width: 10.8333333333%;
}
.p-rentArticle__sectionTable th:nth-child(6), .p-rentArticle__sectionTable td:nth-child(6) {
  width: 10%;
}
.p-rentArticle__sectionTable th:nth-child(7), .p-rentArticle__sectionTable td:nth-child(7) {
  width: 10%;
}
.p-rentArticle__sectionTable th:nth-child(8), .p-rentArticle__sectionTable td:nth-child(8) {
  width: 10.8333333333%;
  padding-right: 0;
}

.p-rentArticle__description {
  margin-top: 40px;
}
@media (min-width: 1024px) {
  .p-rentArticle__description {
    margin-top: 55px;
  }
}

.p-rentArticle__descriptionTitle {
  margin-bottom: 10px;
}

@media (min-width: 1024px) {
  .p-rentArticle__descriptionTable {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 60px;
  }
}
.p-rentArticle__descriptionTable > div > dt {
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (min-width: 1024px) {
  .p-rentArticle__descriptionTable > div.drawing {
    grid-column: 1/3;
    margin-top: -1px;
    border-top: 1px solid #bbbcbe;
  }
  .p-rentArticle__descriptionTable > div.drawing dd {
    text-align: right;
  }
}

/* =========================================================
 privacy
========================================================= */
@media (max-width: 767px) {
  .p-privacy__nav {
    flex-wrap: wrap;
  }
  .p-privacy__nav .p-tabNav__link {
    width: 100%;
  }
}

.p-privacy__contents {
  margin-top: 30px;
}
@media (min-width: 1024px) {
  .p-privacy__contents {
    margin-top: 60px;
  }
}
.p-privacy__contents hr {
  margin-block: 25px !important;
  border-bottom-color: #bbbcbe;
  border-top: none;
  border-inline: none;
}
@media (min-width: 1024px) {
  .p-privacy__contents ol li + li {
    margin-top: 1.5em;
  }
}

.is-tabContents {
  display: none;
}
.is-tabContents--active {
  display: block;
}

/* =========================================================
 ここからデルマー修正分
========================================================= */
/* =========================================================
 .animation.scss
========================================================= */
.is-cover__mask {
  background: #1859BC !important;
}

/* =========================================================
 .footer.scss
========================================================= */
.l-footer__info dd .nishimatsu {
  width: 250px;
  height: 50px;
}
.l-footer__info dd .nishimatsu:hover::after {
  background-image: url(../img/common/icon_external_white.svg);
}

.l-footer__facility {
  padding-bottom: 1.4em;
}

.l-footer__facilityBtn {
  pointer-events: none;
}

.l-footer__facilityRelation dt {
  pointer-events: none;
  padding: 0;
  background-color: transparent;
  color: #040000;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
}
.l-footer__facilityRelation dt .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 1em;
  aspect-ratio: 1/1;
  background: #040000;
  border-radius: 100%;
  content: "";
}
.l-footer__facilityRelation dt .icon::before, .l-footer__facilityRelation dt .icon::after {
  position: absolute;
  width: 70%;
  height: 2px;
  background: #FFF;
  content: "";
}
.l-footer__facilityRelation dt .icon::after {
  transform: rotate(90deg);
  transition: 0.5s;
}
@media (any-hover: hover) {
  .l-footer__facilityRelation dt .icon {
    transition: 0.5s background-color;
  }
  .l-footer__facilityRelation dt:hover .icon {
    background: #1859BC;
  }
}
.l-footer__facilityRelation dt.is-toggleBtn--open .icon::after {
  transform: rotate(360deg);
}
@media (any-hover: hover) {
  .l-footer__facilityRelation dt {
    transition: 0.5s color;
  }
  .l-footer__facilityRelation dt:hover {
    color: #1859BC;
  }
}
@media (min-width: 1024px) {
  .l-footer__facilityRelation dt {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media (max-width: 1023px) {
  .l-footer__facilityRelation dd ul {
    gap: 15px;
  }
}
.l-footer__facilityRelation dd ul li .category {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 8.66em;
  font-size: 12px;
  font-size: 0.75rem;
}
.l-footer__facilityRelation dd ul li .category span {
  min-width: 5.91em;
  padding: 0.1em 0.9em;
  border: 1px solid #040000;
  border-radius: 2em;
  margin-bottom: 10px;
  color: #040000;
  text-align: center;
  font-weight: bold;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* =========================================================
 .utility.scss
========================================================= */
.u-ml-0 {
  margin-left: 0 !important;
}

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

/* =========================================================
 .component.scss
========================================================= */
.c-link--download {
  margin-left: auto;
}

/* =========================================================
 company.scss
========================================================= */
.p-companyProfile__table .executive.director li {
  gap: 0;
  flex-wrap: nowrap;
}
.p-companyProfile__table .executive.director li span:first-child {
  width: 135px;
  margin-right: 1em;
}
.p-companyProfile__table .executive.director li span:last-child {
  width: calc(100% - 135px - 1em);
}

/* =========================================================
 home.scss
========================================================= */
.p-homeNav__item .recruit .c-secondaryBtn::before, .p-homeNav__item .recruit .c-secondaryBtn::after {
  display: none;
}
.p-homeNav__item .recruit .c-secondaryBtn .c-link--external::after {
  transition: 0.4s;
}
.p-homeNav__item a:hover .recruit .c-secondaryBtn .c-link--external::after {
  background: url(../img/common/icon_external_primary.svg) no-repeat center/contain;
}

@media (max-width: 767px) {
  .p-homeService::before {
    height: 420px;
  }
}
@media (max-width: 520px) {
  .p-homeService::before {
    height: 460px;
  }
}
@media (max-width: 375px) {
  .p-homeService::before {
    height: 490px;
  }
}

/* =========================================================
 service.scss
========================================================= */
.p-serviceHead__title {
  margin-top: 0;
}
@media (max-width: 767px) {
  .p-serviceHead__title {
    margin-top: 40px;
  }
}

.title .text-inline {
  display: inline-block;
}

/* =========================================================
 _partner.sccs
========================================================= */
.hotline {
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: center;
  border: 1px solid #bbbcbe;
  padding: 25px;
  margin-bottom: 50px;
}
.hotline .hotline-text {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.hotline .hotline-text a {
  max-width: 350px;
}
@media (min-width: 1024px) {
  .hotline {
    padding: 60px;
    margin-bottom: 100px;
    justify-content: flex-start;
    gap: 60px;
  }
  .hotline a {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .hotline {
    flex-direction: column;
  }
  .hotline .hotline-text {
    justify-content: center;
    gap: 10px;
  }
  .hotline .hotline-text a {
    margin-right: auto;
    margin-left: auto;
    margin-top: 20px;
  }
}
@media (min-width: 768px) {
  .hotline .hotline-text {
    justify-content: flex-start;
  }
}

.p-pertner__list li {
  flex-wrap: nowrap;
}
.p-pertner__list li a {
  width: 116px;
  white-space: nowrap;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .p-pertner__list li a {
    width: 125px;
  }
}
@media (max-width: 520px) {
  .p-pertner__list li {
    flex-direction: column;
    align-items: flex-start;
  }
  .p-pertner__list li a {
    margin-left: auto;
  }
}

/* =========================================================
 _contact.sccs
========================================================= */
.check-contents > div {
  display: flex;
  align-items: center;
  gap: 5px;
}
.check-contents > div + div {
  margin-top: 5px;
}
.check-contents .check-intext .check-text {
  min-width: 50px;
}
.check-contents .check-intext .other-text {
  width: 90%;
  margin-left: auto;
}

/* =========================================================
 footer.sccs
========================================================= */
.uncharted-footer .l-footer__head {
  margin-bottom: 0;
  gap: 60px;
}
.uncharted-footer .l-footer__head .l-footer__logo02 a {
  display: block;
  text-align: center;
}
.uncharted-footer .l-footer__head .l-footer__logo02 a img {
  display: block;
}
@media (max-width: 1023px) {
  .uncharted-footer .l-footer__head .l-footer__logo02 a img {
    margin-left: auto;
    margin-right: auto;
  }
}
.uncharted-footer .l-footer__head .l-footer__logo02 a p {
  text-align: center;
  margin-top: 20px;
}
.uncharted-footer .l-footer__head .l-footer__logo02 a:hover p {
  color: #1859BC;
}
.uncharted-footer .l-footer__head .l-footer__logo02 a:hover p .c-link--external::after {
  background-image: url(../img/common/icon_external_primary.svg);
}
.uncharted-footer .l-footer__facility {
  border-top: none;
  margin-top: 50px;
}
@media (min-width: 1490px) {
  .uncharted-footer .l-footer__facility {
    margin-top: -90px;
  }
}
@media (min-width: 590px) {
  .uncharted-footer .l-footer__facility .l-footer__facilityBranch {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1270px) {
  .uncharted-footer .l-footer__facility .l-footer__facilityBranch {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1490px) {
  .uncharted-footer .l-footer__facility .l-footer__facilityBranch {
    grid-template-columns: repeat(5, 1fr);
  }
}
.uncharted-footer .l-footer__facilityRelation dd ul {
  align-items: flex-end;
}
.uncharted-footer .l-footer__facilityRelation dd ul .category span {
  background-color: #e05423;
  border-style: none;
  color: #fff;
}
.uncharted-footer .l-footer__facilityRelation dd ul + ul {
  margin-top: 30px;
}
.uncharted-footer .footer-sub {
  margin-top: 30px;
  padding-bottom: 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1080px) {
  .uncharted-footer .footer-sub {
    display: block;
    margin-top: 15px;
  }
}
.uncharted-footer .footer-sub .footer-sub-nav {
  display: flex;
}
@media (max-width: 767px) {
  .uncharted-footer .footer-sub .footer-sub-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
}
.uncharted-footer .footer-sub .footer-sub-nav li {
  padding-top: 8px;
  padding-bottom: 8px;
}
@media (max-width: 767px) {
  .uncharted-footer .footer-sub .footer-sub-nav li {
    padding-top: 4px;
    padding-bottom: 4px;
  }
}
.uncharted-footer .footer-sub .footer-sub-nav li + li {
  margin-left: 30px;
  padding-left: 30px;
  border-left: 1px solid #040000;
}
@media (max-width: 767px) {
  .uncharted-footer .footer-sub .footer-sub-nav li + li {
    margin-left: 0;
    padding-left: 0;
    border-left: none;
  }
}
.uncharted-footer .footer-sub .footer__copy {
  font-size: 10px;
  font-size: 0.625rem;
}
@media (max-width: 1080px) {
  .uncharted-footer .footer-sub .footer__copy {
    text-align: center;
    margin-top: 30px;
  }
}


.uncharted-footer .footer-sub {
    margin-top: 30px;
    padding-bottom: 30px;
    display: flex
;
    justify-content: space-between;
    align-items: center;
}
.uncharted-footer .footer-sub .footer-sub-nav {
    display: flex
;
}
.uncharted-footer .footer-sub .footer-sub-nav li {
    padding-top: 8px;
    padding-bottom: 8px;
}
.uncharted-footer .footer-sub .footer-sub-nav li a {
    transition: 0.5s color;
}


@media (max-width: 1080px) {
    .uncharted-footer .footer-sub {
        display: block;
        margin-top: 15px;
    }
}
@media (max-width: 767px) {
    .uncharted-footer .footer-sub .footer-sub-nav {
        display: grid
;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
}

@media (max-width: 767px) {
    .uncharted-footer .footer-sub .footer-sub-nav li {
        padding-top: 4px;
        padding-bottom: 4px;
    }
}
/* =========================================================
 共通クラス
========================================================= */
.point-none {
  pointer-events: none;
}

.w100 {
  width: 100%;
}/*# sourceMappingURL=styles.css.map */



