@charset "UTF-8";
/* ==========================================================================
  Foundation
  ========================================================================== */
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  background: transparent;
  border: 0;
  font-size: 100%;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  background: transparent;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  border: 0;
  border-top: 1px solid #cccccc;
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

/* フォームの初期化を追加 */
/* テキスト */
input[type=text],
input[type=email] {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  background-image: none;
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  width: 100%;
}

input[type=text]:focus,
input[type=email]:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
}

/* テキストエリア */
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  background-image: none;
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  height: 100px;
  width: 100%;
}

textarea:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
}

/* セレクト */
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: white;
  border-radius: 0;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
}

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

select:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
}

input[type=text],
input[type=email],
input[type=tel] {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  font-size: 1em;
  padding: 0.4em 0.8em;
  width: 100%;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus {
  outline: none;
}

textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 0;
  color: inherit;
  font-family: inherit;
  font-size: 1em;
  height: 100px;
  padding: 0.4em 0.8em;
  width: 100%;
}

textarea:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}

input[type=submit] {
  -webkit-appearance: none;
  background-image: none;
  border: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  margin: 0 0 1em;
  padding: 0.6em 2em;
  text-decoration: none;
}

input[type=submit]:hover,
input[type=submit]:focus {
  outline: none;
}

input[type=submit]::-moz-foucus-inner {
  border: none;
  padding: 0;
}

@font-face {
  font-family: "Meiryo UI";
  font-style: normal;
  font-weight: 400;
  src: url("../font/MeiryoUI.ttf") format("truetype");
}
@font-face {
  font-family: "Meiryo UI";
  font-style: italic;
  font-weight: 400;
  src: url("../font/MeiryoUI-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "Meiryo UI";
  font-style: normal;
  font-weight: bold;
  src: url("../font/MeiryoUI-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Furuta";
  font-style: normal;
  font-weight: bold;
  src: url("../font/Futura-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Zen Maru Gothic";
  src: url("../font/ZenMaruGothic-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Zen Maru Gothic";
  font-style: normal;
  src: url("../font/ZenMaruGothic-Regular.ttf") format("truetype");
}
/* base */
html {
  font-size: 62.5%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

*,
::before,
::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

body {
  color: #000000;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.08;
}
@media (max-width: 999px) {
  body {
    font-size: 1.6rem;
    line-height: 1.3;
  }
}
@media screen and (max-width: 499px) {
  body {
    padding-bottom: 84px;
  }
}

.wrapper {
  overflow: hidden;
}

@media (max-width: 999px) {
  .show--pc {
    display: none !important;
  }
}
@media (min-width: 1000px) {
  .show--sp {
    display: none !important;
  }
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
a:hover {
  text-decoration: none !important;
}

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

li {
  list-style: none;
}

a:focus {
  outline: none;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
  border: none;
}

@media (min-width: 1000px) {
  a[href*="tel:"] {
    cursor: default;
    pointer-events: none;
    text-decoration: none;
  }
}
h1,
h2,
h3,
h4,
h5 {
  line-height: 1.5;
}

@-webkit-keyframes showItem {
  0% {
    display: none;
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  1% {
    display: block;
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  85% {
    display: block;
    opacity: 1;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    display: block;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes showItem {
  0% {
    display: none;
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  1% {
    display: block;
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  85% {
    display: block;
    opacity: 1;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    display: block;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
/* ==========================================================================
  inner
  ========================================================================== */
.inner {
  margin: 0 auto;
  max-width: calc(988px + 10%);
  padding: 0 5%;
  width: 100%;
}
@media (max-width: 999px) {
  .inner {
    max-width: 500px !important;
    padding: 0 16px;
  }
}

/* ==========================================================================
  ttl
  ========================================================================== */
.ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 6rem;
  font-weight: bold;
  font-weight: bold;
  position: relative;
}
@media (max-width: 999px) {
  .ttl {
    font-size: 3rem;
    line-height: 1.2;
  }
}
@media (max-width: 355px) {
  .ttl {
    font-size: 2.6rem;
  }
}
.ttl::before {
  background: #d90200;
  border-radius: 6px;
  content: "";
  height: 100%;
  position: absolute;
  top: 50%;
  width: 6px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.ttl--left {
  margin-left: -20px;
  padding-left: 20px;
}
@media (min-width: 1000px) {
  .ttl--left {
    letter-spacing: 0.04em;
    line-height: 1.6;
  }
}
@media (max-width: 999px) {
  .ttl--left {
    margin-left: -13px;
    padding-left: 13px;
  }
}
.ttl--left::before {
  left: -3px;
}
@media (max-width: 999px) {
  .ttl--right {
    padding-left: 7px;
  }
  .ttl--right::before {
    left: -4px;
  }
}
@media (min-width: 1000px) {
  .ttl--right::before {
    right: 0;
  }
}

.ttlWrap {
  border-bottom: 1px solid #000;
  display: inline-block;
  margin-bottom: 60px;
  margin-left: -56px;
  padding-left: 56px;
}
@media (max-width: 999px) {
  .ttlWrap {
    margin-bottom: 20px;
  }
}

.section-ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 36px;
  font-weight: bold;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 0 10px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.section-ttl span {
  font-size: 16px;
  font-weight: normal;
  padding-bottom: 4px;
}

/* ==========================================================================
  text
  ========================================================================== */
.highlight-yellow {
  background: #f6ffb0;
  border-radius: 4px;
  font-weight: bold;
  padding: 0 4px;
}

.pink {
  color: #D49BAA;
}

.brown {
  color: #A25E5F;
}

.blue {
  color: #648EA3;
}

.yellow {
  color: #C9A572;
}

/* ==========================================================================
  topLink
  ========================================================================== */
.topLink {
  -webkit-transition: 0.2s;
  background: #d90200;
  border: 1px solid #d90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  padding: 0 20px;
  position: relative;
  transition: 0.2s;
  width: 200px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  border-radius: 6px;
  font-size: 2rem;
  justify-content: center;
}
@media (max-width: 999px) {
  .topLink {
    font-size: 1.2rem;
    height: 30px;
    width: 200px;
  }
}
.topLink::before {
  background: #fff;
  border-radius: 6px;
  content: "";
  height: 2px;
  position: absolute;
  right: 13px;
  top: 50%;
  width: 13px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.topLink:hover {
  background: #fff;
  color: #d90200;
}
.topLink:hover::before {
  background: #d90200;
}
.topLink--reverse {
  background: #fff;
  border: none;
  color: #d90200;
}
.topLink--reverse::before {
  background: #d90200;
}
.topLink--reverse:hover {
  background: #d90200;
  color: #fff;
}
.topLink--reverse:hover::before {
  background: #fff;
}

/* ==========================================================================
  format
  ========================================================================== */
.format {
  color: #012346;
}
.format__ttl {
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 6rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-bottom: 38px;
  padding-left: 30px;
  position: relative;
}
@media (max-width: 999px) {
  .format__ttl {
    font-size: 3rem;
    line-height: 1.3;
    margin-bottom: 18px;
    padding-left: 12px;
  }
}
.format__ttl::before {
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  background: #012346;
  height: 100%;
  transform: translateY(-50%);
  width: 5px;
}
@media (max-width: 999px) {
  .format__ttl::before {
    height: 90%;
  }
}
.format__subTtl {
  border-bottom: 1px solid #012346;
  color: #012346;
  display: inline-block;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 20px;
  padding-bottom: 20px;
  padding-right: 8%;
}
@media (max-width: 999px) {
  .format__subTtl {
    font-size: 1.6rem;
    margin-bottom: 8px;
    padding-bottom: 7px;
  }
}
.format__subTtl ._em {
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3rem;
  font-weight: bold;
  font-weight: bold;
}
@media (max-width: 999px) {
  .format__subTtl ._em {
    font-size: 2rem;
  }
}
.format__txt {
  letter-spacing: 0.2em;
}
@media (min-width: 1000px) {
  .format__txt {
    line-height: 1.8;
  }
}

.finalMessage__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}
.finalMessage__logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.finalMessage__logo img {
  width: 200px;
}

/* ==========================================================================
  kv
  ========================================================================== */
.kv {
  margin-bottom: 103px;
  min-height: 453px;
  position: relative;
  width: 100%;
}
@media (max-width: 999px) {
  .kv {
    min-height: 300px;
  }
}
.kv::before {
  bottom: 0;
  content: "";
  height: 100%;
  margin-right: -47%;
  position: absolute;
  right: 0;
  width: 115%;
  z-index: -1;
}
@media (min-width: 1000px) {
  .kv::before {
    top: 0;
  }
}
@media (max-width: 1500px) {
  .kv::before {
    margin-right: 0;
    width: 65%;
  }
}
@media (max-width: 999px) {
  .kv::before {
    bottom: -80px;
    content: "";
    height: 70%;
    margin-right: 0;
    position: absolute;
    right: -7%;
    width: 80%;
    z-index: -1;
  }
}
.kv::after {
  background: rgba(255, 255, 255, 0.6);
  bottom: 0;
  content: "";
  height: 100%;
  margin-right: -47%;
  position: absolute;
  right: 0;
  width: 115%;
  z-index: 0;
}
@media (min-width: 1000px) {
  .kv::after {
    top: 0;
  }
}
@media (max-width: 999px) {
  .kv::after {
    bottom: -80px;
    content: "";
    height: 70%;
    margin-right: 0;
    position: absolute;
    right: -7%;
    width: 80%;
    z-index: -1;
  }
}
.kv__ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 6rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.06em;
  line-height: 1.6;
  margin-bottom: 20px;
  padding-left: 30px;
  position: relative;
  z-index: 1;
}
.kv__ttl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  width: 4px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (max-width: 999px) {
  .kv__ttl {
    font-size: 3rem;
    padding-left: 20px;
  }
  .kv__ttl::before {
    width: 4px;
  }
}
.kv__desc {
  letter-spacing: 0.2em;
  position: relative;
  z-index: 1;
}
@media (max-width: 999px) {
  .kv__desc {
    line-height: 1.7;
  }
}

.interview .kv::before {
  background: url(../img/interview/interview1.jpg) no-repeat center center/cover;
}

/* ==========================================================================
  pagination
  ========================================================================== */
.news__list + .pagination {
  margin-top: 42px;
}

.pagination {
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  margin-top: 12px;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.pagination a.next, .pagination a.prev {
  background: #fff;
  width: 62px;
}

.page-numbers {
  background: #fff;
  border: 1px solid #d90200;
  border-radius: 6px;
  color: #d90200;
  font-size: 1.6rem;
  font-weight: 400;
  height: 50px;
  line-height: 48px;
  margin-right: 14px;
  min-width: 50px;
}
@media (max-width: 999px) {
  .page-numbers {
    font-size: 1.4rem;
    height: 32px;
    line-height: 30px;
    margin-right: 8px;
    min-width: 32px;
    width: 32px;
  }
}
@media (max-width: 355px) {
  .page-numbers {
    font-size: 1.2rem;
    height: 28px;
    line-height: 26px;
    margin-right: 5px;
    min-width: 28px;
    width: 28px;
  }
}
.page-numbers:last-child {
  margin-right: 0;
}
.page-numbers.next {
  background: transparent;
}
.page-numbers.next .page-numbers-arrow::before {
  -webkit-transform: rotate(45deg);
  right: 0;
  transform: rotate(45deg);
}
.page-numbers.prev {
  background: transparent;
}
.page-numbers.prev .page-numbers-arrow::before {
  -webkit-transform: rotate(225deg);
  left: 0;
  transform: rotate(225deg);
}
.page-numbers.prev:hover, .page-numbers.next:hover {
  background: #d90200;
  border: 1px solid #d90200;
  color: #fff;
}
.page-numbers.current {
  background: #d90200;
  border: 1px solid #d90200;
  color: #fff;
}
.page-numbers.current:hover {
  opacity: 1;
}
.page-numbers:hover {
  background: #d90200;
  border: 1px solid #d90200;
  color: #fff;
}
.page-numbers.dots {
  border: none;
}
.page-numbers.dots:hover {
  opacity: 1;
}
.page-numbers.dots, .page-numbers.next, .page-numbers.prev {
  background: transparent;
  min-width: initial;
  width: auto;
}
/* ==========================================================================
  ボタン
  ========================================================================== */
.btnWrap {
  margin: 0 auto;
  margin-top: 60px;
  text-align: center;
}

.greenBtn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  background: #9CB2AA;
  border-radius: 36px;
  color: #fff;
  font-weight: bold;
  justify-content: center;
  padding: 10px 0;
  text-decoration: none;
  width: 330px;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  position: relative;
}
.greenBtn::after {
  content: "\f054";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 24px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.greenBtn:hover {
  background: #a0b5a7;
}

.primaryBtn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  border: 1px solid #222;
  border-radius: 36px;
  color: #222;
  font-weight: bold;
  justify-content: center;
  padding: 10px 0;
  text-decoration: none;
  width: 330px;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  position: relative;
}
.primaryBtn::after {
  content: "\f054";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  right: 24px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.primaryBtn:hover {
  background: #f5f5f5;
}

/* ==========================================================================
  case
  ========================================================================== */
@media (min-width: 1000px) {
  .tcase {
    padding: 60px 0 0;
  }
}
.tcase .caseList__body {
  background-color: #f4f4f4;
  border-radius: 0 0 20px 20px;
}

.tcase .swiper-slide:hover .caseList__desc {
  color: #F10000;
  opacity: 0.5;
}

.swiper-pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  margin-top: 40px;
  position: static;
}

.swiper-pagination-bullet {
  background: transparent;
  border: 2px solid #444;
  border-radius: 50%;
  height: 14px;
  margin: 0;
  opacity: 1;
  width: 14px;
  -webkit-transition: background 0.2s, border 0.2s;
  transition: background 0.2s, border 0.2s;
}

.swiper-pagination-bullet-active {
  background: #444;
  border: 2px solid #444;
}

/* ==========================================================================
contact
========================================================================== */
.contact-page {
  background: #F4F6F8;
}

.contact {
  padding-bottom: 140px;
}

@media (max-width: 999px) {
  .contact {
    padding-bottom: 80px;
  }
}
.contact__ttl {
  color: #D90200;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-bottom: 37px;
  text-align: center;
}

@media (max-width: 999px) {
  .contact__ttl {
    font-size: 2.6rem;
    margin-bottom: 20px;
  }
}
.contact__desc {
  font-size: 2.2rem;
  margin-bottom: 20px;
}

@media (max-width: 999px) {
  .contact__desc {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.contact__item {
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  border-bottom: 1px solid #707070;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 40px 3%;
}

@media (max-width: 999px) {
  .contact__item {
    padding: 30px 3%;
  }
}
.contact__item--flexStart {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
}

@media (max-width: 999px) {
  .contact__item {
    -ms-flex-align: start;
    -ms-flex-direction: column;
    -ms-flex-wrap: wrap;
    -webkit-align-items: flex-start;
    -webkit-box-align: start;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -webkit-flex-direction: column;
    -webkit-flex-wrap: wrap;
    align-items: flex-start;
    flex-direction: column;
    flex-wrap: wrap;
  }
}
.contact__label {
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 2rem;
  font-weight: bold;
  justify-content: space-between;
}

@media (min-width: 1000px) {
  .contact__label {
    margin-right: 10%;
    min-width: 204px;
    width: 24%;
  }
}
@media (max-width: 999px) {
  .contact__label {
    font-size: 1.8rem;
    margin-bottom: 15px;
    width: 100%;
  }
}
@media (max-width: 999px) {
  .contact__label {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }
}
.contact__label--required::after {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background: #FE4E4E;
  color: #fff;
  content: "必須";
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.2rem;
  height: 20px;
  justify-content: center;
  line-height: 1;
  width: 40px;
}

@media (max-width: 999px) {
  .contact__label--required::after {
    margin-left: 15px;
  }
}
.contact__contents {
  -ms-flex: 1 1 0%;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  flex: 1 1 0%;
}

.contact__contents input[type=text],
.contact__contents input[type=email],
.contact__contents input[type=tel],
.contact__contents textarea,
.contact__contents select {
  background: #fff;
  border: 1px solid #707070;
  height: 46px;
  padding: 10px 4%;
  width: 87%;
}

@media (max-width: 999px) {
  .contact__contents input[type=text],
  .contact__contents input[type=email],
  .contact__contents input[type=tel],
  .contact__contents textarea,
  .contact__contents select {
    padding: 6px 4%;
    width: 100%;
  }
}
.contact__contents input[type=text]::-webkit-input-placeholder, .contact__contents input[type=email]::-webkit-input-placeholder, .contact__contents input[type=tel]::-webkit-input-placeholder, .contact__contents textarea::-webkit-input-placeholder, .contact__contents select::-webkit-input-placeholder {
  color: #ACACAC;
}

.contact__contents input[type=text]::-moz-placeholder, .contact__contents input[type=email]::-moz-placeholder, .contact__contents input[type=tel]::-moz-placeholder, .contact__contents textarea::-moz-placeholder, .contact__contents select::-moz-placeholder {
  color: #ACACAC;
}

.contact__contents input[type=text]:-ms-input-placeholder, .contact__contents input[type=email]:-ms-input-placeholder, .contact__contents input[type=tel]:-ms-input-placeholder, .contact__contents textarea:-ms-input-placeholder, .contact__contents select:-ms-input-placeholder {
  color: #ACACAC;
}

.contact__contents input[type=text]::-ms-input-placeholder, .contact__contents input[type=email]::-ms-input-placeholder, .contact__contents input[type=tel]::-ms-input-placeholder, .contact__contents textarea::-ms-input-placeholder, .contact__contents select::-ms-input-placeholder {
  color: #ACACAC;
}

.contact__contents input[type=text]::placeholder,
.contact__contents input[type=email]::placeholder,
.contact__contents input[type=tel]::placeholder,
.contact__contents textarea::placeholder,
.contact__contents select::placeholder {
  color: #ACACAC;
}

.contact__contents textarea {
  height: 246px;
}

@media (max-width: 999px) {
  .contact__contents textarea {
    height: 200px;
  }
}
.contact__contents .preferred-date {
  margin-bottom: 30px;
}

.contact__txt._zip {
  -ms-flex-align: start;
  -ms-flex-direction: column;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-flex-direction: column;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  margin-bottom: 20px;
}

.contact__txt._zip .mwform-zip-field {
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.contact__txt._zip input {
  margin: 0 10px;
  width: 100px !important;
  width: 100px;
}

@media (max-width: 999px) {
  .contact__txt._zip input {
    width: 80px !important;
  }
}
@media (max-width: 355px) {
  .contact__txt._zip input {
    width: 70px !important;
  }
}
.contact__txt._tel input {
  width: 100px !important;
}

@media (max-width: 999px) {
  .contact__txt._tel input {
    margin-bottom: 5px;
    width: 80px !important;
  }
}
@media (max-width: 355px) {
  .contact__txt._tel input {
    width: 70px !important;
  }
}
.contact input[type=radio] {
  display: none;
}

.contact input[type=radio] + span {
  cursor: pointer;
  display: inline-block;
  margin: 0 0.2em 0;
  padding: 0 0 0 30px;
  position: relative;
}

@media (max-width: 999px) {
  .contact input[type=radio] + span {
    margin-bottom: 16px;
  }
}
.contact input[type=radio] + span::before {
  -webkit-transform: translateY(-50%);
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.16);
  border-radius: 50%;
  content: "";
  display: block;
  height: 24px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
}

.contact input[type=radio] + span::after {
  -webkit-transform: translateY(-50%);
  -webkit-transition: all 0.3s ease 0s;
  background: rgba(0, 0, 0, 0.32);
  border: 1px solid transparent;
  border-radius: 50%;
  content: "";
  height: 12px;
  left: 6px;
  opacity: 0;
  padding: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease 0s;
  width: 12px;
}

.contact input[type=radio]:checked + span::after {
  opacity: 1;
}

.contact__submit {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -webkit-transition: 0.2s;
  align-items: center;
  background: #F26149;
  border: 1px solid #F26149;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 50px;
  justify-content: center;
  margin: 0 auto;
  max-width: 268px;
  position: relative;
  transition: 0.2s;
  width: 100%;
}

.contact__submit:hover {
  background: #fff;
}

.contact__submit:hover input[type=submit] {
  color: #F26149;
}

.contact__submit:hover::before {
  color: #F26149;
}

.contact__submit::before {
  -webkit-transform: translateY(-50%);
  color: #fff;
  content: "＞";
  font-size: 1rem;
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
}

.contact__submit input[type=submit] {
  -webkit-transition: 0.2s;
  background: transparent;
  font-family: inherit;
  font-size: 1.6rem;
  height: 100%;
  letter-spacing: 0.4em;
  margin: 0;
  padding: 0;
  transition: 0.2s;
  width: 100%;
}

.contact .privacy__ttl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.9rem;
  font-weight: bold;
  font-weight: bold;
  margin-bottom: 30px;
  padding-left: 30px;
  position: relative;
}

@media (max-width: 999px) {
  .contact .privacy__ttl {
    font-size: 2.6rem;
    padding-left: 20px;
  }
}
.contact .privacy__ttl::before {
  -webkit-transform: translateY(-50%);
  background: #D90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
}

@media (max-width: 999px) {
  .contact .privacy__ttl::before {
    width: 3px;
  }
}
.contact .privacy__box {
  background: #F2F2F2;
  border: 1px solid #707070;
  font-size: 1.7rem;
  height: 282px;
  letter-spacing: 0.1em;
  margin-bottom: 40px;
  overflow-y: scroll;
  padding: 5px 3%;
  width: 100%;
}

@media (max-width: 999px) {
  .contact .privacy__box {
    font-size: 1.4rem;
    height: 200px;
    line-height: 2;
    padding: 20px;
  }
}
.contact .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}

.contact .mw_wp_form .error {
  color: #fe4e4e;
  font-size: 1.6rem;
  font-weight: bold;
  margin-top: 3px;
}

@media (max-width: 999px) {
  .contact .mw_wp_form .error {
    font-size: 1.4rem;
  }
}
/* ==========================================================================
  privacy
  ========================================================================== */
.privacy h3,
.privacy h4 {
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 20px;
}

.privacy p {
  margin-bottom: 5px;
}

.privacy ul {
  margin: 10px 0;
}

.privacy ul li:not(:last-child) {
  margin-bottom: 8px;
}

/* ==========================================================================
  thanks (404も同様コード使用)
  ========================================================================== */
.thanks,
.notFound {
  padding-bottom: 233px;
}

@media (max-width: 999px) {
  .thanks,
  .notFound {
    padding-bottom: 80px;
  }
}
.thanks__ttl,
.notFound__ttl {
  color: #D90200;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-bottom: 25px;
  text-align: center;
}

@media (max-width: 999px) {
  .thanks__ttl,
  .notFound__ttl {
    font-size: 2.6rem;
  }
}
.thanks__txt,
.notFound__txt {
  letter-spacing: 0.2em;
  line-height: 1.6;
}

.thanks__btn,
.notFound__btn {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background: #D90200;
  border: 1px solid #D90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  justify-content: center;
  margin: 40px auto 0;
  max-width: 352px;
  width: 100%;
}

.thanks__btn:hover,
.notFound__btn:hover {
  background: #fff;
  color: #D90200;
}

.thanks__txt + .thanks__txt {
  margin-top: 25px;
}

.notFound {
  text-align: center;
}

/* ==========================================================================
  common
  ========================================================================== */
/* ==========================================================================
  banner
  ========================================================================== */
.banner {
  background: #f4f6f8;
  padding: 104px 0 168px;
}
@media (max-width: 999px) {
  .banner {
    padding: 44px 0;
  }
}
@media (max-width: 999px) {
  .banner .present-pc {
    display: none;
  }
}
.banner .present-pc img {
  margin-bottom: 50px;
}
@media (min-width: 1000px) {
  .banner .present-sp {
    display: none;
  }
}
.banner .present-sp img {
  margin-bottom: 30px;
}
.banner .tochi img {
  margin-bottom: 30px;
}
@media (max-width: 999px) {
  .banner .tochi img {
    margin-bottom: 20px;
  }
}
.banner a:hover {
  opacity: 0.7;
}
.banner__note {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-top: 5px;
  text-align: center;
}
@media (max-width: 999px) {
  .banner__note {
    font-size: 1.4rem;
  }
}
.banner__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.banner__item {
  margin-bottom: 30px;
}
@media (max-width: 999px) {
  .banner__item {
    margin-bottom: 20px;
  }
}
@media (min-width: 1000px) {
  .banner__item {
    width: 47.5%;
  }
  .banner__item:not(:nth-child(2n)) {
    margin-right: 5%;
  }
}

.banner70 {
  padding: 60px 0 20px !important;
}

.purchase {
  background: #f4f6f8;
  padding: 100px 0;
}
@media (max-width: 999px) {
  .purchase {
    padding: 50px 0;
  }
}
.purchase .banner__purchase {
  display: block;
  margin: 0 auto;
  max-width: 755px;
  width: 100%;
}
.purchase .banner__purchase:hover {
  opacity: 0.7;
}

.floating {
  backdrop-filter: blur(20px);
  background: rgba(255, 255, 255, 0.95);
  bottom: 0;
  height: 84px;
  left: 0;
  position: fixed;
  width: 100%;
  z-index: 999;
  -webkit-backdrop-filter: blur(20px);
  border-top: 0.5px solid rgba(0, 0, 0, 0.08);
  padding-bottom: env(safe-area-inset-bottom);
}
@media screen and (min-width: 500px) {
  .floating {
    display: none;
  }
}
.floating__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  padding: 6px 0;
}
.floating__item {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  position: relative;
  text-align: center;
}
.floating__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  color: #8E8E93;
  justify-content: center;
  padding: 8px 4px 6px;
  text-decoration: none;
  -webkit-transition: all 0.2s ease;
  border-radius: 12px;
  min-height: 52px;
  transition: all 0.2s ease;
}
.floating__item a:hover, .floating__item a:active {
  background: rgba(212, 155, 170, 0.1);
  color: #D49BAA;
  -webkit-transform: scale(0.95);
  transform: scale(0.95);
}
.floating__item a i {
  display: block;
  font-size: 20px;
  margin-bottom: 14px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.floating__item.active a {
  color: #D49BAA;
}
.floating__item.active a i {
  -webkit-transform: translateY(-1px);
  transform: translateY(-1px);
}
.floating__text {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: -0.1px;
  line-height: 1.1;
  margin: 0;
}

/* ==========================================================================
  fixedMenu
  ========================================================================== */
.fixedMenu {
  opacity: 0;
  position: fixed;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 997;
}
@media (min-width: 601px) {
  .fixedMenu {
    position: fixed !important;
  }
}
@media (max-width: 600px) {
  .fixedMenu .showAjust--pc {
    display: none !important;
  }
}
@media (min-width: 601px) {
  .fixedMenu .showAjust--sp {
    display: none !important;
  }
}
@media (min-width: 601px) {
  .fixedMenu {
    right: 0;
    top: 50%;
    width: 80px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}
@media (max-width: 600px) {
  .fixedMenu {
    bottom: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    left: 0;
    width: 100%;
  }
}
.fixedMenu.is-show {
  opacity: 1;
  visibility: visible;
}
@media (min-width: 601px) {
  .fixedMenu img {
    width: auto;
  }
}
@media (min-width: 601px) {
  .fixedMenu__item:not(:last-child) {
    border-bottom: 1px solid #fff;
  }
}
.fixedMenu__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1.2;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media (min-width: 601px) {
  .fixedMenu__item--cordless img {
    width: 53px;
  }
}
@media (max-width: 600px) {
  .fixedMenu__item--cordless {
    width: 20%;
  }
}
.fixedMenu__item--cordless a {
  background: #F8F8F8;
  height: 170px;
}
@media (max-width: 600px) {
  .fixedMenu__item--cordless a {
    border: 1px solid #003274;
    height: 100%;
    min-height: 50px;
    width: 100%;
  }
}
.fixedMenu__item--cordless a p {
  color: #012346;
  font-size: 1.6rem;
  font-weight: bold;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media (max-width: 600px) {
  .fixedMenu__item--cordless a p {
    font-size: 1rem;
  }
}
@media (max-width: 355px) {
  .fixedMenu__item--cordless a p {
    line-height: 1.1;
  }
}
@media (max-width: 600px) {
  .fixedMenu__item--cordless a img {
    width: 12px;
  }
}
.fixedMenu__item--cordless a:hover p {
  color: #036edd;
}
@media (max-width: 600px) {
  .fixedMenu__item--top {
    width: 20%;
  }
}
.fixedMenu__item--top a {
  background: #012346;
  color: #fff;
  font-size: 1.5rem;
  height: 90px;
}
@media (max-width: 600px) {
  .fixedMenu__item--top a {
    font-size: 1rem;
    height: 100%;
    min-height: 50px;
    width: 100%;
  }
}
.fixedMenu__item--top a:hover {
  background: #02376e;
}
@media (max-width: 600px) {
  .fixedMenu__item--top a img {
    width: 12px;
  }
}
.fixedMenu__item--top a p {
  margin-top: 5px;
}
@media (min-width: 601px) {
  .fixedMenu__item--buy a {
    background: #F26149;
    color: #fff;
    font-size: 1.8rem;
    height: 90px;
  }
  .fixedMenu__item--buy a:hover {
    background: #f5826f;
  }
  .fixedMenu__item--buy a p {
    margin-top: 5px;
  }
}
@media (max-width: 600px) {
  .fixedMenu__item--buy {
    width: 60%;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    -ms-flex-order: -1;
    background: #F26149;
    order: -1;
    position: relative;
  }
  .fixedMenu__item--buy::before {
    background: url(../img/common/triangle2.svg) no-repeat center center/24px 14px;
    content: "";
    height: 14px;
    position: absolute;
    right: 0;
    top: 50%;
    width: 24px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .fixedMenu__item--buy a {
    height: 100%;
  }
  .fixedMenu__item--buy .buyWrap {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .fixedMenu__item--buy .buyWrap img {
    margin-right: 5%;
    width: 18px;
  }
  .fixedMenu__item--buy span {
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 0.15em;
    white-space: nowrap;
  }
  .fixedMenu__item--buy .pop {
    left: 50%;
    max-width: 229px;
    position: absolute;
    top: -12px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 80%;
  }
}

/* ==========================================================================
  footer
  ========================================================================== */
.footer {
  color: #fff;
  line-height: 1.5;
  padding: 54px 0 0;
}
.footer .area {
  background-color: #666666;
  padding: 30px 0;
  text-align: left;
}
.footer .area h2 {
  border-bottom: 1px solid #fff !important;
}
.footer .area .area__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-column-gap: 70px;
  -moz-column-gap: 70px;
  column-gap: 70px;
}
@media (max-width: 999px) {
  .footer .area .area__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.footer .area .area__inner .area__inner-item {
  margin-bottom: 32px;
}
.footer .area .area__inner .area__inner-item .prefecture {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}
.footer .area .area__inner .area__inner-item .area-list {
  display: block;
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.footer .area .area__inner .area__inner-item .area-list li {
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 6px;
  padding-left: 1em;
  position: relative;
}
.footer .area .area__inner .area__inner-item .area-list li::before {
  color: #fff;
  content: "•";
  font-size: 1em;
  left: 0;
  position: absolute;
}
.footer .area .area__inner .saitama-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
@media (max-width: 999px) {
  .footer .area .area__inner .area__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 24px;
  }
  .footer .area .area__inner .area__inner-item.saitama .area-list {
    display: block;
    grid-template-columns: 1fr;
  }
}
.footer .area .area__note {
  color: #fff;
  font-size: 13px;
  letter-spacing: 0.02em;
  line-height: 1.7;
  margin-top: 18px;
}
.footer__txt:first-of-type {
  margin-bottom: 13px;
}
.footer__copyright {
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#d90200), to(#d90200)) 0% 0% no-repeat;
  background: transparent -webkit-linear-gradient(top, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  background: transparent linear-gradient(180deg, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 25px;
  margin-top: 49px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  font-size: 1.2rem;
  justify-content: center;
}
@media screen and (max-width: 499px) {
  .footer__copyright {
    padding-bottom: 84px;
  }
}
.footer .footer__contents {
  background-color: #9CB2AA;
  padding: 54px 0;
}
.footer .footer__contents h2 {
  border-bottom: 1px solid #fff !important;
  margin-left: -56px;
}
.footer .footer__contents .footerContentsInner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 100px;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.footer .footer__contents .footerContentsInner .linkList .footerNav {
  -webkit-box-flex: 2;
  -webkit-flex: 2;
  -ms-flex: 2;
  flex: 2;
}
.footer .footer__contents .footerContentsInner .linkList .footerNav ul {
  display: grid;
  gap: 8px 48px;
  grid-template-columns: 1fr 1fr;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 999px) {
  .footer .footer__contents .footerContentsInner .linkList .footerNav ul {
    gap: 8px 0;
    grid-template-columns: 1fr;
  }
}
.footer .footer__contents .footerContentsInner .linkList .footerNav ul li {
  border-bottom: 1px solid #fff;
  padding: 6px 0;
  padding-left: 1.2em;
  position: relative;
}
.footer .footer__contents .footerContentsInner .linkList .footerNav ul li::before {
  content: "＞";
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  color: #fff;
  font-size: 0.6em;
  transform: translateY(-50%);
}
.footer .footer__contents .footerContentsInner .linkList .footerNav ul li a {
  color: #fff;
  font-size: 1.8rem;
  text-decoration: none;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.footer .footer__contents .footerContentsInner .linkList .footerNav ul li a:hover {
  opacity: 0.7;
}
.footer .footer__contents .footerContentsInner .info {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 1;
  gap: 24px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  font-size: 1.6rem;
  font-weight: 100;
}
@media (max-width: 999px) {
  .footer .footer__contents .footerContentsInner .info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 24px;
  }
}
.footer .footer__contents .footerContentsInner .info .footer__company {
  line-height: 2;
}
.footer .footer__contents .footerContentsInner .info .footer__company .footer__logo {
  width: 300px;
}
@media (max-width: 999px) {
  .footer .footer__contents .footerContentsInner .info .footer__company .footer__logo {
    width: 200px;
  }
}
.footer .footer__contents .footerContentsInner .info .footer__company .footer__address {
  margin-top: 20px;
}
.footer .footer__contents .footerContentsInner .info .footer__company .footer__address i {
  margin-right: 6px;
}
.footer .footer__contents .footerContentsInner .info .footer__map {
  background: #fff;
  color: #888;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 220px;
  width: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  border-radius: 8px;
  font-size: 2rem;
  justify-content: center;
  overflow: hidden;
}
@media (max-width: 999px) {
  .footer .footer__contents .footerContentsInner .info .footer__map {
    height: 180px;
    margin: 0 auto;
    max-width: 100%;
    width: 100%;
  }
}
.footer .footer__contents .footerContentsInner .info .footer__map img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  display: block;
  object-fit: cover;
}
.footer .footer__contents .footerContentsInner .info .footer__sns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.footer .footer__contents .footerContentsInner .info .footer__sns .icon {
  color: #222;
  font-size: 6rem;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.footer .footer__contents .footerContentsInner .info .footer__sns .icon:hover {
  color: #00796b;
}

@media (max-width: 999px) {
  .fixedMenu + .footer__contents {
    padding-top: 50px;
  }
}

.area-list.saitama-city {
  display: block !important;
}

/* ==========================================================================
  menuLink
  ========================================================================== */
.menuLink {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 999px) {
  .menuLink {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.menuLink__item {
  position: relative;
  width: 25%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media (max-width: 999px) {
  .menuLink__item {
    width: 100%;
  }
}
.menuLink__item::before {
  background: rgba(255, 255, 255, 0.4);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.menuLink__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 235px;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  font-size: 3rem;
  font-weight: bold;
  position: relative;
  z-index: 1;
}
@media (max-width: 1250px) {
  .menuLink__item a {
    font-size: 3rem;
  }
}
@media (max-width: 999px) {
  .menuLink__item a {
    font-size: 2rem;
    height: 150px;
  }
}
.menuLink__item--company {
  background: url(../img/common/menu1.jpeg) no-repeat center center/cover;
}
.menuLink__item--contact {
  background: url(../img/common/menu2.jpg) no-repeat center center/cover;
}
.menuLink__item--case {
  background: url(../img/common/menu3.jpeg) no-repeat center center/cover;
}
.menuLink__item--news {
  background: url(../img/common/menu4.jpg) no-repeat center center/cover;
}
.menuLink__item:hover::before {
  background: rgba(255, 255, 255, 0.5);
}

/* ==========================================================================
  shop
  ========================================================================== */
.shop {
  margin-top: -100px;
  padding-top: 100px;
  position: relative;
}
@media (max-width: 999px) {
  .shop {
    margin-top: -70px;
    padding-top: 70px;
  }
}
.shop__contents {
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
  background: #e8f2fa;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
  padding: 100px 0;
}
@media (max-width: 999px) {
  .shop__contents {
    padding: 44px 0;
  }
}
.shop .format__ttl {
  color: #003274;
}
@media (max-width: 999px) {
  .shop .format__ttl {
    margin-bottom: 30px;
  }
}
.shop .format__ttl::before {
  background: #003274;
}
.shop__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media (max-width: 999px) {
  .shop__list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (max-width: 999px) {
  .shop__item {
    text-align: center;
    width: 100%;
  }
  .shop__item:not(:last-child) {
    margin-bottom: 35px;
  }
}
@media (min-width: 1000px) {
  .shop__item img {
    width: auto;
  }
}
@media (max-width: 999px) {
  .shop__item img {
    width: 60%;
  }
}
.shop__item a:hover {
  opacity: 0.7;
}

/* ==========================================================================
  shopTab
  ========================================================================== */
.shopTab {
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#003274), to(#6296ff)) 0% 0% no-repeat;
  background: transparent -webkit-linear-gradient(top, #003274 0%, #6296ff 100%) 0% 0% no-repeat;
  background: transparent linear-gradient(180deg, #003274 0%, #6296ff 100%) 0% 0% no-repeat;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.2);
  padding: 155px 0 86px;
  position: relative;
}
@media (max-width: 999px) {
  .shopTab {
    padding: 60px 0 70px;
  }
}
.shopTab__inner {
  max-width: calc(1038px + 10%);
}
.shopTab__ttl {
  color: #fff;
  margin-bottom: 35px;
  position: relative;
}
@media (max-width: 999px) {
  .shopTab__ttl {
    margin-bottom: 20px;
  }
}
.shopTab__ttl p {
  font-size: 16px;
}
.shopTab__ttl p a {
  text-decoration: underline;
}
.shopTab__ttl::before {
  background: #fff;
  top: 0;
  -webkit-transform: none;
  transform: none;
}
@media (min-width: 1000px) {
  .shopTab__ttl::before {
    height: calc(100% + 109px);
  }
}
.shopTab .tab {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 3%;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
}
@media (min-width: 1000px) {
  .shopTab .tab:after {
    background: #fff;
    bottom: 0;
    content: "";
    display: block;
    height: 1px;
    left: 2%;
    position: relative;
    width: 100%;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    -ms-flex-order: -1;
    order: -1;
  }
}
.shopTab .tab__ttl {
  display: none;
}
.shopTab .tab__label {
  font-weight: bold;
  white-space: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  height: 78px;
  text-align: center;
  width: 211px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  -ms-flex-order: -1;
  background: #c9e0ff;
  cursor: pointer;
  line-height: 1.4;
  order: -1;
  outline: 1px solid #fff;
  position: relative;
  position: relative;
  z-index: 1;
}
.shopTab .tab__label img {
  width: auto;
}
@media (max-width: 999px) {
  .shopTab .tab__label img {
    width: 80px;
  }
}
@media (max-width: 355px) {
  .shopTab .tab__label img {
    width: 60px;
  }
}
@media (max-width: 999px) {
  .shopTab .tab__label[for=yahoo] img {
    width: 94px;
  }
}
@media (max-width: 355px) {
  .shopTab .tab__label[for=yahoo] img {
    width: 80px;
  }
}
@media (max-width: 999px) {
  .shopTab .tab__label {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-size: 1.6rem;
    height: 58px;
    max-width: 172px;
  }
}
@media (min-width: 1000px) {
  .shopTab .tab__label:not(:last-of-type) {
    margin-right: 8px;
  }
}
.shopTab .tab__contents {
  height: 0;
  opacity: 0;
  visibility: hidden;
  width: 100%;
}
.shopTab .tab__switch:checked + .tab__label {
  background: #ffffff;
}
.shopTab .tab__switch:checked + .tab__label::before {
  bottom: -16px;
  content: "";
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  border-color: #fff transparent transparent transparent;
  border-style: solid;
  border-width: 16px 20px 0 20px;
  height: 0;
  transform: translateX(-50%);
  width: 0;
  z-index: 2;
}
.shopTab .tab__switch {
  display: none;
}
.shopTab .tab__switch:checked + .tab__label + .tab__contents {
  height: auto;
  opacity: 1;
  visibility: visible;
  -webkit-transition: 0.8s opacity;
  transition: 0.8s opacity;
}
@media (min-width: 1000px) {
  .shopTab .tab__switch:checked + .tab__label + .tab__contents {
    padding: 85px 8% 0 5%;
  }
}
@media (max-width: 999px) {
  .shopTab .tab__switch:checked + .tab__label + .tab__contents {
    padding-top: 30px;
  }
}
.shopTab__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media (max-width: 999px) {
  .shopTab__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.shopTab__item {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media (max-width: 999px) {
  .shopTab__item {
    margin: 0 auto;
  }
  .shopTab__item:not(:last-child) {
    margin-bottom: 30px;
  }
  .shopTab__item a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media (max-width: 999px) {
  .shopTab__item {
    width: 85%;
  }
}
@media (max-width: 355px) {
  .shopTab__item {
    width: 95%;
  }
}
@media (min-width: 1000px) {
  .shopTab__item--new {
    position: relative;
  }
  .shopTab__item--new::before {
    background: #ff9300;
    border-radius: 50%;
    content: "NEW";
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
    font-size: 1.8rem;
    font-weight: bold;
    font-weight: bold;
    height: 66px;
    left: -60px;
    position: absolute;
    top: -44px;
    width: 66px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
  }
}
@media (max-width: 999px) {
  .shopTab__item--new .shopTab__subTtl {
    text-align: left;
  }
  .shopTab__item--new .shopTab__subTtl::before {
    background: #ff9300;
    border-radius: 50%;
    content: "NEW";
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
    font-size: 1rem;
    font-weight: bold;
    font-weight: bold;
    height: 40px;
    width: 40px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    margin-bottom: 20px;
    text-align: left;
  }
}
.shopTab__item:hover {
  opacity: 0.6;
}
.shopTab__subTtl {
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 10px;
}
@media (min-width: 1000px) {
  .shopTab__subTtl {
    text-align: center;
  }
}
@media (max-width: 999px) {
  .shopTab__subTtl {
    font-size: 1.6rem;
    text-align: left;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
  .shopTab__subTtl span {
    padding-left: 16px;
  }
}
@media (min-width: 1000px) {
  .shopTab__subTtl._adjust {
    margin-top: -19px;
  }
}
.shopTab__remarks {
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 10px;
  text-align: center;
}
@media (max-width: 999px) {
  .shopTab__img {
    margin-right: 22%;
    width: 20%;
  }
}
@media (max-width: 999px) and (min-width: 1000px) {
  .shopTab__img img {
    margin-bottom: 20px;
    width: auto;
  }
}
@media (max-width: 999px) {
  .shopTab__img._adjust {
    margin-right: 2%;
    width: 40%;
  }
}

@media all and (-ms-high-contrast: none) {
  .shopTab .tab__switch:checked + .tab__label + .tab__contents {
    -webkit-transition: none;
    transition: none;
  }
}
/* ==========================================================================
  toTop
  ========================================================================== */
.toTop {
  background: #d90200;
  color: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.5rem;
  height: 97px;
  width: 110px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  bottom: 30px;
  flex-direction: column;
  opacity: 0;
  position: fixed;
  right: 2%;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 9990;
}
@media (max-width: 999px) {
  .toTop {
    bottom: 10px;
    font-size: 1.2rem;
    height: 48.5px;
    width: 55px;
  }
}
.toTop:hover {
  background: #ff0503;
}
.toTop img {
  width: 24px;
}
@media (max-width: 999px) {
  .toTop img {
    width: 12px;
  }
}
.toTop p {
  margin-top: 5px;
}
@media (max-width: 999px) {
  .toTop p {
    margin-top: 2px;
  }
}

.toTop._show {
  opacity: 1;
  visibility: visible;
}

/* ==========================================================================
  breadcrumb
  ========================================================================== */
.breadcrumb {
  color: #d90200;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  padding: 8px 10px 60px 79px;
}
@media (max-width: 999px) {
  .breadcrumb {
    padding: 20px 16px 30px;
  }
}
.breadcrumb__arrow {
  padding: 0 5px;
}
.breadcrumb a:hover {
  opacity: 0.6;
}
@media (max-width: 999px) {
  .breadcrumb__contents {
    overflow-x: scroll;
    padding-bottom: 10px;
    white-space: nowrap;
  }
}

/* ==========================================================================
  header
  ========================================================================== */
.header {
  height: 98px;
  position: fixed;
  width: 100%;
  z-index: 999;
}
@media (max-width: 999px) {
  .header {
    height: 60px;
  }
}
.header__inner {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  max-width: calc(1840px + 4%);
  padding: 0 0 0 2%;
  width: 100%;
}
@media (max-width: 999px) {
  .header__inner {
    max-width: initial !important;
  }
}
.header__logo {
  width: 300px;
}
@media (min-width: 1000px) {
  .header__logo {
    width: 250px;
  }
}
@media (max-width: 999px) {
  .header__logo {
    height: 32px;
    width: 200px;
  }
  .header__logo img {
    vertical-align: top;
  }
}
.header__logo > a {
  display: block;
}
.header__logo > a:hover {
  opacity: 0.8;
}
.header__contents {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 40px 0 40px 10px;
}
@media (min-width: 1000px) {
  .header__contents {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
}
@media (max-width: 999px) {
  .header__contents {
    background: #f8f8f8;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    max-width: 500px;
    padding: 40px 20px;
    position: fixed;
    right: 0;
    top: 60px;
    -webkit-transform: translateX(140%);
    transform: translateX(140%);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    width: 77%;
    z-index: 999;
  }
  .header__contents.action {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@media (min-width: 1000px) {
  .header__contents {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .header__nav {
    display: block;
    margin-right: 15px;
  }
}
@media (max-width: 999px) {
  .header__nav {
    margin-bottom: 20px;
    width: 100%;
  }
}
.header__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media (max-width: 999px) {
  .header__list {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.header__item {
  line-height: 1;
  position: relative;
}
@media (max-width: 999px) {
  .header__item {
    border-bottom: 1px solid #acacac;
    color: #111;
    width: 100%;
  }
  .header__item:not(:last-child) {
    margin-bottom: 30px;
  }
}
.header__item > a {
  color: #fff;
  display: block;
  height: 52px;
  padding: 0 20px;
  text-align: center;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
@media (min-width: 1000px) {
  .header__item > a {
    padding: 0 14px;
  }
}
@media (min-width: 1000px) {
  .header__item > a {
    padding: 0 10px;
  }
}
.header__item > a:hover {
  opacity: 0.8;
}
@media (max-width: 999px) {
  .header__item > a {
    padding: 0 14px 10px;
    text-align: left;
  }
  .header__item > a:hover {
    opacity: 0.8;
  }
}
.header__item ._below {
  font-size: 1.3rem;
  font-weight: bold;
  padding-top: 12px;
}
@media (min-width: 1000px) {
  .header__item ._below {
    font-size: 1.3rem;
  }
}
@media (min-width: 1000px) {
  .header__item ._below {
    font-size: 1.2rem;
  }
}
@media (max-width: 999px) {
  .header__item ._below {
    font-size: 1.6rem;
  }
}
.header._black .header__item > a {
  color: #000;
}
.header._black .header__item > a:hover {
  opacity: 0.8;
}
.header._whiteBg {
  background: #fff;
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.header .header__contents.action .header__item > a {
  color: #000;
}
.header .header__contents.action .header__item > a:hover {
  opacity: 0.8;
}
.header .green {
  background-color: #00C9C8;
}
.header .blue {
  background-color: #008BFF;
}
.header__link {
  color: #FFF;
  font-family: "メイリオ", "Meiryo", sans-serif;
  font-weight: bold;
  height: 98px;
  text-align: center;
  width: 98px;
}
@media (min-width: 1000px) {
  .header__link {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.2rem;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media (min-width: 1000px) {
  .header__link {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    width: 98px;
  }
}
@media (max-width: 999px) {
  .header__link {
    font-size: 1.6rem;
    width: 100%;
  }
}
.header__link:hover {
  opacity: 0.8;
}
@media (max-width: 999px) {
  .header__link .fx {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.header__link .fx img {
  height: 16px;
  width: 24px;
}
@media (min-width: 1000px) {
  .header__link .fx img {
    margin-bottom: 10px;
  }
}
@media (max-width: 999px) {
  .header__link .fx img {
    margin-right: 5px;
  }
}

.overlayer {
  background: rgba(0, 0, 0, 0.6);
  bottom: 0;
  display: none;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 998;
}

/* ==========================================================================
  pageHead
  ========================================================================== */
.pageHead {
  height: 260px;
  width: 100%;
}
@media (max-width: 999px) {
  .pageHead {
    height: 160px;
  }
}
.pageHead__contents {
  background: url(../img/common/gradient.svg) no-repeat top right/cover;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 662px;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}
@media (max-width: 999px) {
  .pageHead__contents {
    max-width: 400px;
    width: 85%;
  }
}
.pageHead__contents::before {
  border-color: #007bff transparent transparent transparent;
  border-style: solid;
  border-width: 200px 200px 0 0;
  height: 0;
  width: 0;
}
.pageHead__ttl {
  margin-top: 95px;
  padding-left: 79px;
  white-space: nowrap;
}
@media (max-width: 999px) {
  .pageHead__ttl {
    margin-top: 65px;
    padding-left: 20px;
  }
}
.pageHead__ttl ._upper {
  color: #6b6b6b;
  display: block;
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.3;
  margin-bottom: -3px;
}
@media (max-width: 999px) {
  .pageHead__ttl ._upper {
    font-size: 3rem;
    line-height: 1.3;
    margin-bottom: 1px;
  }
}
.pageHead__ttl ._below {
  color: #d90200;
  font-size: 2rem;
  font-weight: bold;
}
@media (max-width: 999px) {
  .pageHead__ttl ._below {
    font-size: 1.8rem;
  }
}

.header._black .header__item > a {
  color: #000;
}
.header._black .header__item > a:hover {
  color: #f10000;
}

.news-page .pageHead {
  background: url(../img/news/bg.jpg) no-repeat top left/cover;
}

.case-page .pageHead {
  background: url(../img/case/bg.jpg) no-repeat top left/cover;
}

.plan-page .pageHead {
  background: url(../img/case/bg.jpg) no-repeat top left/cover;
}

.event-page .pageHead {
  background: url(../img/news/bg.jpg) no-repeat top left/cover;
}

.staff-page .pageHead {
  background: url(../img/news/bg.jpg) no-repeat top left/cover;
}

.company-page .pageHead {
  background: url(../img/company/bg.jpg) no-repeat center center/cover;
}

.contact-page .pageHead {
  background: url(../img/contact/bg.jpg) no-repeat top center/cover;
}

.agency-page .pageHead {
  background: url(../img/agency/bg.jpg) no-repeat center center/cover;
}

.notFound-page .pageHead {
  background: url(../img/news/bg.jpg) no-repeat top left/cover;
}
@media (max-width: 999px) {
  .notFound-page .pageHead__ttl ._upper {
    font-size: 2.7rem;
  }
}

/* ==========================================================================
  toggle
  ========================================================================== */
.toggle {
  cursor: pointer;
  height: 30px;
  position: relative;
  top: -3px;
  width: 42px;
  z-index: 1000;
  -webkit-transition: 0.3s;
  display: none;
  transition: 0.3s;
}
@media (max-width: 999px) {
  .toggle {
    display: block;
  }
}
.toggle.active {
  top: -4px;
}
.toggle.active .toggle__txt {
  display: none;
}
.toggle span {
  -webkit-transition: 0.35s ease-in-out;
  border-bottom: solid 2px #fff;
  display: block;
  left: 8px;
  position: absolute;
  transition: 0.35s ease-in-out;
  width: 24px;
}
.toggle span:nth-child(1) {
  top: 7px;
}
.toggle span:nth-child(2) {
  top: 16px;
}
.toggle span:nth-child(3) {
  top: 25px;
}
.toggle.active span:nth-child(1) {
  -webkit-transform: rotate(-45deg);
  left: 8px;
  top: 18px;
  transform: rotate(-45deg);
}
.toggle.active span:nth-child(2), .toggle.active span:nth-child(3) {
  -webkit-transform: rotate(45deg);
  top: 18px;
  transform: rotate(45deg);
}
.toggle__txt {
  bottom: -7px;
  color: #d90200;
  font-size: 1rem;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  margin-left: 1px;
  transform: translateX(-50%);
  white-space: nowrap;
}

.toggle__line {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  color: #fff;
  flex-direction: column;
  font-size: 1.2rem;
  font-weight: bold;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
@media (min-width: 1000px) {
  .toggle__line {
    display: none;
  }
}

.header._black .toggle span {
  border-bottom-color: #000;
}
.header._black .toggle__line {
  color: #000;
}

.header__contents.action ~ .toggle__line {
  color: #000;
}
.header__contents.action ~ .toggle__line .toggle span {
  border-bottom-color: #000;
}

/* ==========================================================================
  agency
  ========================================================================== */
.agency {
  padding-bottom: 100px;
}
.agency__ttl {
  color: #d90200;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-bottom: 37px;
  text-align: center;
}
@media (max-width: 999px) {
  .agency__ttl {
    font-size: 2.6rem;
  }
}
.agency__txt {
  letter-spacing: 0.1em;
  line-height: 1.6;
}
.agency__txt ._em {
  font-weight: bold;
}
.agency__box {
  margin-top: 100px;
  text-align: center;
}
@media (max-width: 999px) {
  .agency__box {
    margin-top: 60px;
  }
}
.agency__box .agency__ttl {
  margin-bottom: 20px;
}
.agency__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 20px;
}
@media (max-width: 999px) {
  .agency__list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 30px;
  }
}
.agency__item {
  width: 33.3333333333%;
}
@media (max-width: 999px) {
  .agency__item {
    max-width: 300px;
    width: 100%;
  }
  .agency__item:not(:last-child) {
    margin-bottom: 20px;
  }
}
.agency__item a {
  display: block;
}
.agency__item a:hover {
  opacity: 0.7;
}
.agency__btn {
  background: #d90200;
  border: 1px solid #d90200;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  max-width: 352px;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  margin: 38px auto 0;
}
.agency__btn:hover {
  background: #fff;
  color: #d90200;
}

.agency__txt + .agency__txt {
  margin-top: 25px;
}

.agency + .contact .contact__ttl {
  margin-bottom: 20px;
}
.agency + .contact .contact__desc {
  font-size: 2rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: center;
}

.hiraya-kv {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  height: 716px;
  position: relative;
}

@media (max-width: 999px) {
  .hiraya-kv {
    height: 677px;
  }
}
.hiraya-kv__img {
  -o-object-fit: cover;
  -o-object-position: center;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hiraya-kv__inner {
  /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-50%) translateX(-50%);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 20%;
}

@media (max-width: 999px) {
  .hiraya-kv__inner {
    top: 70%;
    width: 55%;
  }
}
.hiraya-kv__inner--content {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 60px;
  justify-content: center;
}

@media (max-width: 999px) {
  .hiraya-kv__inner--content {
    display: block;
  }
}
.hiraya-kv__inner--content img {
  width: 25%;
}

@media (max-width: 999px) {
  .hiraya-kv__inner--content img {
    width: 50%;
  }
}
.hiraya-kv__inner--content div {
  text-align: left;
}

.hiraya-kv__inner--content div h4 {
  font-size: 50px;
  margin-left: 40px;
}

@media (max-width: 999px) {
  .hiraya-kv__inner--content div h4 {
    font-size: 25px;
    margin-left: 0;
    margin-top: 20px;
  }
}
.hiraya-kv__inner--content div h4 span {
  font-size: 60px;
}

@media (max-width: 999px) {
  .hiraya-kv__inner--content div h4 span {
    font-size: 30px;
  }
}
/* ==========================================================================

  ========================================================================== */
.hiraya-massage {
  background: #b6c8b8;
  color: #fff;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .hiraya-massage {
    padding: 50px 0;
  }
}
.hiraya-massage__inner--title h3 {
  color: #fff;
  font-size: 70px;
  font-weight: bold;
  margin-bottom: 60px;
  padding: 100px 0;
  text-align: center;
}

@media (max-width: 999px) {
  .hiraya-massage__inner--title h3 {
    font-size: 35px;
    text-align: right;
  }
}
.hiraya-massage__inner--title h3 span {
  font-size: 75px;
}

@media (max-width: 999px) {
  .hiraya-massage__inner--title h3 span {
    font-size: 40px;
  }
}
.hiraya-massage__inner--content {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 60px;
  justify-content: center;
}

@media (max-width: 999px) {
  .hiraya-massage__inner--content {
    display: block;
  }
}
.hiraya-massage__inner--content img {
  width: 25%;
}

@media (max-width: 999px) {
  .hiraya-massage__inner--content img {
    width: 50%;
  }
}
.hiraya-massage__inner--content div {
  text-align: left;
}

.hiraya-massage__inner--content div h4 {
  color: #fff;
  font-size: 50px;
  font-weight: bold;
  margin-left: 40px;
}

@media (max-width: 999px) {
  .hiraya-massage__inner--content div h4 {
    font-size: 25px;
    margin-left: 0;
    margin-top: 20px;
  }
}
.hiraya-massage__inner--content div h4 span {
  font-size: 60px;
}

@media (max-width: 999px) {
  .hiraya-massage__inner--content div h4 span {
    font-size: 30px;
  }
}
/* ==========================================================================

  ========================================================================== */
.siyou {
  background-color: #cba797;
  color: #ffffff;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .siyou {
    padding: 50px 0;
  }
}
.siyou__inner--title {
  text-align: center;
}

.siyou__inner--title h3 {
  color: #ffffff;
  font-size: 45px;
  font-weight: bold;
  margin-bottom: 30px;
  position: relative;
}

@media (max-width: 999px) {
  .siyou__inner--title h3 {
    font-size: 30px;
  }
}
.siyou__inner--title h3:before {
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  border: 1px solid #fff;
  bottom: 0px;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 50%;
}

.siyou__inner--title h3 span {
  font-size: 65px;
}

@media (max-width: 999px) {
  .siyou__inner--title h3 span {
    font-size: 35px;
  }
}
.siyou__inner--title p {
  font-size: 25px;
}

@media (max-width: 999px) {
  .siyou__inner--title p {
    font-size: 16px;
  }
}
.siyou__inner--title p span {
  font-weight: bold;
}

.siyou__inner--content {
  margin-top: 40px;
}

.siyou__inner--content img {
  width: 100%;
}

/* ==========================================================================

  ========================================================================== */
.taiyo {
  color: #333333;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .taiyo {
    padding: 50px 0;
  }
}
.taiyo .green {
  color: #708d6e;
}

.taiyo .orange {
  color: #e28c6a;
}

.taiyo__inner--title h3 {
  border-bottom: 1px solid #333333;
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 60px;
  text-align: center;
}

@media (max-width: 999px) {
  .taiyo__inner--title h3 {
    font-size: 25px;
    text-align: left;
  }
}
.taiyo__inner--title h3 span {
  font-size: 45px;
}

@media (max-width: 999px) {
  .taiyo__inner--title h3 span {
    font-size: 30px;
  }
}
.taiyo__inner--content {
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 60px;
  justify-content: space-between;
}

@media (max-width: 999px) {
  .taiyo__inner--content {
    display: block;
    text-align: center;
  }
}
.taiyo__inner--content .kigou {
  width: 20px;
}

@media (max-width: 999px) {
  .taiyo__inner--content .kigou {
    margin: 20px 0;
  }
}
.taiyo__inner--content img {
  width: 200px;
}

@media (max-width: 999px) {
  .taiyo__inner--content img {
    width: 50%;
  }
}
.taiyo__inner--content p {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.taiyo__inner--content p span {
  font-size: 35px;
}

/* ==========================================================================

  ========================================================================== */
.tokucho {
  color: #333333;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .tokucho {
    padding: 50px 0;
  }
}
.tokucho .green {
  color: #708d6e;
}

.tokucho__inner--title h3 {
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 60px;
  position: relative;
  text-align: center;
}

@media (max-width: 999px) {
  .tokucho__inner--title h3 {
    font-size: 25px;
  }
}
.tokucho__inner--title h3:before {
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  border-bottom: 1px solid #333333;
  bottom: 0px;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 50%;
}

@media (max-width: 999px) {
  .tokucho__inner--title h3:before {
    width: 80%;
  }
}
.tokucho__inner--title h3 span {
  font-size: 60px;
}

@media (max-width: 999px) {
  .tokucho__inner--title h3 span {
    font-size: 30px;
  }
}
.tokucho__inner--content {
  margin-bottom: 60px;
}

@media (max-width: 999px) {
  .tokucho__inner--content {
    display: block;
    text-align: center;
  }
}
.tokucho__inner--content .title {
  -ms-flex-align: center;
  -ms-flex-pack: start;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-start;
  margin-bottom: 10px;
}

.tokucho__inner--content .title .number {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background-color: rgba(255, 189, 160, 0.3);
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 40px;
  font-weight: bold;
  height: 100px;
  justify-content: center;
  width: 100px;
}

@media (max-width: 999px) {
  .tokucho__inner--content .title .number {
    font-size: 20px;
    height: 50px;
    width: 50px;
  }
}
.tokucho__inner--content .title h4 {
  font-size: 30px;
  font-weight: bold;
  margin-left: 10px;
  text-align: left;
}

@media (max-width: 999px) {
  .tokucho__inner--content .title h4 {
    font-size: 2px;
  }
}
.tokucho__inner--content .meritto {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  justify-content: center;
}

@media (max-width: 999px) {
  .tokucho__inner--content .meritto {
    display: block;
  }
}
.tokucho__inner--content .meritto img {
  -ms-flex-order: -1;
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
  order: -1;
  width: 30%;
}

@media (max-width: 999px) {
  .tokucho__inner--content .meritto img {
    margin: 0 auto;
    margin-top: 20px;
    width: 40%;
  }
}
.tokucho__inner--content .meritto div {
  margin-left: 30px;
  width: 70%;
}

@media (max-width: 999px) {
  .tokucho__inner--content .meritto div {
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    margin-left: 0;
    order: -1;
    text-align: left;
    width: 100%;
  }
}
.tokucho__inner--content .meritto div p {
  font-size: 20px;
}

@media (max-width: 999px) {
  .tokucho__inner--content .meritto div p {
    font-size: 14px;
  }
}
.tokucho__inner--content .meritto div .orange {
  color: #e28c6a;
  font-size: 50px;
  margin-bottom: 20px;
}

@media (max-width: 999px) {
  .tokucho__inner--content .meritto div .orange {
    font-size: 40px;
  }
}
.tokucho__inner--content .meritto div .moji {
  font-size: 40px;
}

.tokucho__inner--content .meritto div .line {
  position: relative;
  width: 100%;
}

.tokucho__inner--content .meritto div .line:before {
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  border: 0.6px solid #333333;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20%;
}

@media (max-width: 999px) {
  .tokucho__inner--content .meritto div .line:before {
    border: none;
  }
}
.tokucho__inner--content .meritto div .right {
  text-align: right;
}

/* ==========================================================================

  ========================================================================== */
.yutaka {
  color: #707070;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .yutaka {
    padding: 50px 0;
  }
}
.yutaka__inner--title {
  text-align: center;
}

.yutaka__inner--title h3 {
  font-size: 45px;
  font-weight: bold;
  margin-bottom: 30px;
  position: relative;
}

@media (max-width: 999px) {
  .yutaka__inner--title h3 {
    font-size: 30px;
    text-align: left;
  }
}
.yutaka__inner--title h3 span {
  font-size: 65px;
}

@media (max-width: 999px) {
  .yutaka__inner--title h3 span {
    font-size: 35px;
  }
}
@media (max-width: 999px) {
  .yutaka__inner--title .right {
    text-align: right;
  }
}
.yutaka__inner--content {
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

.yutaka__inner--content img {
  margin: 0 auto;
  width: 345px;
}

@media (max-width: 999px) {
  .yutaka__inner--content img {
    width: 172px;
  }
}
.hiraya-bunner {
  color: #333333;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .hiraya-bunner {
    padding: 50px 0;
  }
}
.hiraya-bunner__inner--content {
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}

@media (max-width: 999px) {
  .hiraya-bunner__inner--content {
    display: block;
    text-align: center;
    width: 100%;
  }
}
.hiraya-bunner__inner--content a {
  height: 100%;
  width: 100%;
}

.hiraya-bunner__inner--content img {
  width: 100%;
}

.gallary {
  color: #333333;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  position: relative;
  width: 100%;
}

@media (max-width: 999px) {
  .gallary {
    padding: 50px 0;
  }
}
.gallary__content {
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 60px;
  justify-content: space-between;
}

.gallary__content--inner {
  width: 30%;
}

@media (max-width: 999px) {
  .gallary__content--inner {
    width: 100%;
  }
}
.gallary__content img {
  width: 100%;
}

@media (max-width: 999px) {
  .gallary__content {
    display: block;
    text-align: center;
  }
}
.gallary__content .gallary01 {
  margin-top: 20%;
  position: relative;
}

.gallary__content .gallary01::before {
  border-top: 1px solid #e28c6a;
  bottom: -50px;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 96%;
}

@media (max-width: 999px) {
  .gallary__content .gallary01::before {
    border-top: 15px solid #e28c6a;
    height: 15px;
  }
}
.gallary__content .gallary03 {
  margin-bottom: 20%;
  position: relative;
}

.gallary__content .gallary03::after {
  border-top: 1px solid #b6c8b8;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: -50px;
  width: 97%;
}

@media (max-width: 999px) {
  .gallary__content .gallary03::after {
    border-top: 15px solid #b6c8b8;
    height: 15px;
  }
}
.hiraya-madori-kv {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  height: 716px;
  position: relative;
}

@media (max-width: 999px) {
  .hiraya-madori-kv {
    height: 677px;
  }
}
.hiraya-madori-kv__img {
  -o-object-fit: cover;
  -o-object-position: center;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hiraya-madori-kv::before {
  /* オーバーレイを作成 */
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(134, 134, 134, 0.5)), to(rgba(134, 134, 134, 0.6)));
  background: -webkit-linear-gradient(rgba(134, 134, 134, 0.5), rgba(134, 134, 134, 0.6));
  background: linear-gradient(rgba(134, 134, 134, 0.5), rgba(134, 134, 134, 0.6));
  /* contentプロパティは必須 */
  content: "";
  height: 100%;
  left: 0;
  /* divを起点に位置を調整する */
  position: absolute;
  top: 0;
  width: 100%;
}

.hiraya-madori-kv__inner {
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-50%) translateX(-50%);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
}

@media (max-width: 999px) {
  .hiraya-madori-kv__inner {
    display: block;
    text-align: center;
  }
}
.hiraya-madori-kv__inner img {
  width: 20%;
}

@media (max-width: 999px) {
  .hiraya-madori-kv__inner img {
    width: 50%;
  }
}
.hiraya-madori-kv__inner h2 {
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  margin: 10px 40px;
  text-align: center;
}

.zumen {
  color: #333333;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .zumen {
    padding: 50px 0;
  }
}
.zumen .en-green {
  background-color: #b6c8b8;
}

.zumen .en-orange {
  background-color: #ffbda0;
}

.zumen .box-orange {
  background: #cba797;
}

.zumen .box-green {
  background: #b6c8b8;
}

.zumen .orange {
  color: #e28c6a;
}

.zumen .green {
  color: #708d6e;
}

.zumen__inner {
  margin-bottom: 300px;
}

@media (max-width: 999px) {
  .zumen__inner {
    margin-bottom: 100px;
  }
}
.zumen__inner--title {
  margin-bottom: 100px;
}

@media (max-width: 999px) {
  .zumen__inner--title {
    margin-bottom: 30px;
  }
}
.zumen__inner--title h3 {
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 60px;
  position: relative;
  text-align: center;
}

@media (max-width: 999px) {
  .zumen__inner--title h3 {
    font-size: 25px;
    text-align: center;
  }
}
.zumen__inner--title h3 span {
  font-size: 45px;
}

@media (max-width: 999px) {
  .zumen__inner--title h3 span {
    font-size: 30px;
  }
}
.zumen__inner--title h3:before {
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  border-bottom: 1px solid #333333;
  bottom: 0px;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 50%;
}

@media (max-width: 999px) {
  .zumen__inner--title h3:before {
    width: 80%;
  }
}
.zumen__inner--content {
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 60px;
  justify-content: space-between;
  margin-bottom: 20px;
  position: relative;
}

.zumen__inner--content .en {
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  aspect-ratio: 1/1;
  border-radius: 50%;
  left: 50%;
  opacity: 0.3;
  opacity: 0.3;
  position: absolute;
  top: -50px;
  transform: translateX(-50%);
  width: 100%;
  z-index: -100;
}

@media (max-width: 999px) {
  .zumen__inner--content .en {
    left: 100%;
    overflow: hidden;
    width: 200%;
  }
}
@media (max-width: 999px) {
  .zumen__inner--content {
    display: block;
    text-align: center;
  }
}
.zumen__inner--content .box {
  -webkit-box-shadow: 15px 15px white;
  box-shadow: 15px 15px white;
  color: #fff;
  margin-bottom: 100px;
  padding: 10px;
  width: 30%;
}

@media (max-width: 999px) {
  .zumen__inner--content .box {
    margin-bottom: 20px;
  }
}
@media (max-width: 999px) {
  .zumen__inner--content .box {
    width: 100%;
  }
}
.zumen__inner--content .box h4 {
  color: #fff;
  font-size: 30px;
  font-weight: bold;
}

.zumen__inner--content .box h4 span {
  font-size: 25px;
}

.zumen__inner--content .box p {
  font-size: 20px;
}

.zumen__inner--content .box p span {
  font-size: 35px;
  font-weight: bold;
}

.zumen__inner--content .box .right {
  font-size: 16px;
  text-align: right;
}

.zumen__inner--content .box__inner {
  border-bottom: 3px solid #fff;
  text-align: left;
}

.zumen__inner--content .parse {
  margin-left: 20px;
  width: 70%;
}

@media (max-width: 999px) {
  .zumen__inner--content .parse {
    margin-left: 0;
  }
}
.zumen__inner--content .parse img {
  -webkit-box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.2);
  box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.2);
  height: 100%;
}

@media (max-width: 999px) {
  .zumen__inner--content .parse {
    width: 100%;
  }
}
.zumen__inner--content .madori {
  width: 60%;
}

@media (max-width: 999px) {
  .zumen__inner--content .madori {
    width: 100%;
  }
}
.zumen__inner--content .plane {
  margin-left: 20px;
  width: 40%;
}

@media (max-width: 999px) {
  .zumen__inner--content .plane {
    width: 100%;
  }
}
@media (max-width: 999px) {
  .zumen__inner--content .plane__inner {
    text-align: left;
  }
}
.zumen__inner--content .plane h4 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 60px;
  text-shadow: 30px 20px 0 rgba(0, 0, 0, 0.1);
}

@media (max-width: 999px) {
  .zumen__inner--content .plane h4 {
    margin-bottom: 20px;
  }
}
.zumen__inner--content .plane h4 span {
  font-size: 40px;
}

.zumen__inner--content .plane .line {
  font-size: 20px;
  font-weight: bold;
}

.zumen__inner--content .plane p {
  font-size: 16px;
}

.hiraya-case {
  background-color: #b6c8b8;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  padding: 100px 0;
  width: 100%;
}

@media (max-width: 999px) {
  .hiraya-case {
    padding: 50px 0;
  }
}
.hiraya-case .en-green {
  background-color: #b6c8b8;
}

.hiraya-case .en-orange {
  background-color: #ffbda0;
}

.hiraya-case .box-orange {
  background: #cba797;
}

.hiraya-case .box-green {
  background: #b6c8b8;
}

.hiraya-case .orange {
  color: #e28c6a;
}

.hiraya-case .green {
  color: #708d6e;
}

.hiraya-case__inner {
  margin-bottom: 300px;
}

@media (max-width: 999px) {
  .hiraya-case__inner {
    margin-bottom: 100px;
  }
}
.hiraya-case__inner--title {
  color: #fff;
  margin-bottom: 100px;
}

@media (max-width: 999px) {
  .hiraya-case__inner--title {
    margin-bottom: 30px;
  }
}
.hiraya-case__inner--title h3 {
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 60px;
  position: relative;
  text-align: center;
}

@media (max-width: 999px) {
  .hiraya-case__inner--title h3 {
    font-size: 25px;
    text-align: center;
  }
}
.hiraya-case__inner--title h3 span {
  font-size: 45px;
}

@media (max-width: 999px) {
  .hiraya-case__inner--title h3 span {
    font-size: 30px;
  }
}
.hiraya-case__inner--title h3:before {
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  border-bottom: 1px solid #333333;
  bottom: 0px;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 50%;
}

@media (max-width: 999px) {
  .hiraya-case__inner--title h3:before {
    width: 80%;
  }
}
.hiraya-case__inner--content {
  margin-bottom: 20px;
  position: relative;
}

.hiraya-case__inner--content .en {
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  aspect-ratio: 1/1;
  background-color: #b6c8b8;
  border-radius: 50%;
  left: 100%;
  opacity: 0.3;
  overflow: hidden;
  position: absolute;
  top: -50px;
  transform: translateX(-50%);
  width: 200%;
  z-index: -100;
}

@media (max-width: 999px) {
  .hiraya-case__inner--content .en {
    left: 100%;
    width: 200%;
  }
}
.hiraya-case__inner--content .case-logo {
  width: 300px;
}

@media (max-width: 999px) {
  .hiraya-case__inner--content .case-logo {
    width: 172px;
  }
}
.hiraya-case__inner--content img {
  z-index: 100;
}

/* ==========================================================================
  caseItem
  ========================================================================== */
.caseItem {
  height: auto;
  padding-bottom: 199px;
}
@media (max-width: 999px) {
  .caseItem {
    padding-bottom: 80px;
  }
}
.caseItem img {
  border-radius: 6px;
}
.caseItem .sectionTitle {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.8rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
  margin-bottom: 20px;
  padding-left: 20px;
  position: relative;
}
.caseItem .sectionTitle::before {
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  background: #D90200;
  border-radius: 6PX;
  height: 100%;
  transform: translateY(-50%);
  width: 6px;
}
.caseItem__ttl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.3rem;
  font-weight: bold;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.04em;
  letter-spacing: 0.02em;
  margin-bottom: 4px;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .caseItem__ttl {
    font-size: 3rem;
    margin-bottom: 8px;
  }
}
.caseItem__txt {
  font-size: 2rem;
  margin-bottom: 27px;
}
@media (max-width: 999px) {
  .caseItem__txt {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.caseItem__subTtl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.2rem;
  font-weight: bold;
  font-weight: bold;
  font-weight: bold;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .caseItem__subTtl {
    font-size: 2rem;
    margin: 10px 0;
  }
}
.caseItem__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 90px;
}
@media (max-width: 999px) {
  .caseItem__main {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 60px;
  }
}
.caseItem__img1 {
  position: relative;
}
@media (min-width: 1000px) {
  .caseItem__img1 {
    margin-right: 1.5%;
    width: 44%;
  }
}
@media (max-width: 999px) {
  .caseItem__img1 {
    margin-bottom: 20px;
    width: 100%;
  }
}
.caseItem__img1::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.caseItem__img1 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
@media (min-width: 1000px) {
  .caseItem__mainContents {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .caseItem__mainContents {
    width: 100%;
  }
}
.caseItem__list dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  letter-spacing: 0.2em;
}
.caseItem__list dl:not(:last-child) {
  margin-bottom: 20px;
}
.caseItem__list dl dt {
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 30px;
  width: 100px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#d90200), to(#d90200)) 0% 0% no-repeat;
  background: transparent -webkit-linear-gradient(top, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  background: transparent linear-gradient(180deg, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  border-radius: 6px;
  font-size: 1.2rem;
}
@media (max-width: 999px) {
  .caseItem__list dl dt {
    font-size: 1.3rem;
    height: 24px;
    width: 90px;
  }
}
.caseItem__list dl dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
}
.caseItem__desc {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.9;
}
@media (max-width: 999px) {
  .caseItem__desc {
    margin-bottom: 30px;
  }
}
.caseItem__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 95px;
}
@media (max-width: 999px) {
  .caseItem__box {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 65px;
  }
}
@media (min-width: 1000px) {
  .caseItem__contents {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
    margin-left: 20px;
  }
}
@media (max-width: 999px) {
  .caseItem__contents {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .caseItem__info {
    margin-left: 2%;
    width: 21%;
  }
}
@media (max-width: 999px) {
  .caseItem__info {
    width: 100%;
  }
}
.caseItem__img2 {
  position: relative;
  width: 100%;
}
.caseItem__img2::before {
  content: "";
  display: block;
}
@media (max-width: 999px) {
  .caseItem__img2::before {
    padding-top: 80%;
  }
}
.caseItem__img2 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  height: 100%;
  object-position: center center;
  width: 100%;
}
@media (max-width: 999px) {
  .caseItem__img2 img {
    -o-object-position: top center;
    object-position: top center;
  }
}
.caseItem__name {
  display: block;
  letter-spacing: 0.2em;
  margin-top: 11px;
  text-align: center;
}
.caseItem__img3 {
  height: auto;
  position: relative;
}
@media (min-width: 1000px) {
  .caseItem__img3 {
    width: 56%;
  }
}
@media (max-width: 999px) {
  .caseItem__img3 {
    width: 100%;
  }
}
.caseItem__img3::before {
  content: "";
  display: block;
  height: auto;
}
.caseItem__img3 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  height: auto;
  object-position: center center;
  width: 100%;
}
.caseItem__btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #D90200;
  border: 1px solid #D90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 54px auto 0;
  max-width: 352px;
  width: 100%;
}
@media (max-width: 999px) {
  .caseItem__btn {
    margin: 50px auto 0;
  }
}
.caseItem__btn:hover {
  background: #fff;
  color: #d90200;
}

.caseItem__gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}

@media (max-width: 999px) {
  .caseItem__gallery {
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 65px;
    margin-bottom: 10px;
  }
}
.caseItem__gallery--img3 {
  position: relative;
}

@media (min-width: 1000px) {
  .caseItem__gallery--img3 {
    margin: 0 5px;
    width: 50%;
  }
}
@media (max-width: 999px) {
  .caseItem__gallery--img3 {
    margin-bottom: 10px;
    width: 100%;
  }
}
.caseItem__gallery--img3::before {
  content: "";
  display: block;
  padding-top: 100%;
}

@media (max-width: 999px) {
  .caseItem__gallery--img3::before {
    padding-top: 100%;
  }
}
.caseItem__gallery--img3 img {
  -o-object-fit: cover;
  -o-object-position: center center;
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center center;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

/* ==========================================================================
  caseList
  ========================================================================== */
.caseList {
  padding-bottom: 60px;
}
.caseList dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.6rem;
}
.caseList .small {
  font-size: 1rem !important;
}
.caseList .cardTable {
  font-size: 1.6rem;
}
.caseList dt {
  font-weight: bold;
  width: 70px;
}
.caseList__ttl {
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  line-height: 1.4;
  margin-bottom: 33px;
  text-align: center;
}
@media (max-width: 999px) {
  .caseList__ttl {
    font-size: 2.2rem;
  }
}
.caseList__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.caseList__item {
  background: none;
  border-radius: 6px;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  margin-bottom: 40px;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.caseList__item a {
  display: block;
}
.caseList__item::before {
  background: url(../img/case/arrow.svg) no-repeat center center/30px 10px;
  bottom: 25px;
  content: "";
  height: 10px;
  position: absolute;
  right: 9%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  width: 30px;
}
.caseList__item:hover {
  list-style: none;
  opacity: 0.7;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
}
.caseList__item:hover::before {
  right: 6%;
}
@media (min-width: 1000px) {
  .caseList__item {
    width: 32%;
  }
  .caseList__item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (max-width: 999px) {
  .caseList__item {
    width: 100%;
  }
}
.caseList__body {
  padding: 20px 6%;
  position: relative;
}
.caseList__cats {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  margin-bottom: 10px;
}
.caseList__cat {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #D90200;
  border-radius: 4px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  font-size: 1.2rem;
  justify-content: center;
  padding: 2px 10px;
}
.caseList__cat._primary, .caseList__cat._secondary {
  font-size: 0.9rem;
}
.caseList__subTtl {
  font-size: 2.2rem !important;
  font-weight: bold;
  line-height: 1;
  line-height: 2.5rem;
  margin-bottom: 6px;
  padding-left: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .caseList__subTtl {
    font-size: 2rem !important;
  }
}
.caseList__subTtl:hover {
  list-style: none;
}
.caseList__subTtl::before {
  background: #D90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  border-radius: 6px;
  transform: translateY(-50%);
  width: 4px;
}
.caseList__subTtl ._upper {
  display: block;
  font-size: 1.6rem;
  margin-bottom: 4px;
}
.caseList__subTtl ._below {
  color: #111111;
  font-size: 1.6rem;
  font-weight: bold;
}
.caseList__desc {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
.caseList__img {
  position: relative;
}
.caseList__img::before {
  content: "";
  display: block;
  padding-top: 57%;
}
.caseList__img img {
  border-radius: 6px 6px 0 0;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  top: 0;
  width: 100%;
}
.caseList__box {
  border-top: 1px solid #0D0D0D;
  margin-bottom: 60px;
  margin-top: 94px;
  padding-top: 100px;
}
@media (max-width: 999px) {
  .caseList__box {
    margin-bottom: 40px;
    margin-top: 70px;
    padding-top: 70px;
  }
}
.caseList__logos {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media (max-width: 999px) {
  .caseList__logos {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (min-width: 1000px) {
  .caseList__logo {
    width: 30%;
  }
  .caseList__logo:not(:last-child) {
    margin-right: 5%;
  }
}
@media (max-width: 999px) {
  .caseList__logo {
    max-width: 300px;
    width: 100%;
  }
  .caseList__logo:not(:last-child) {
    margin-bottom: 40px;
  }
}
.caseList__logo a {
  display: block;
}
.caseList__logo a:hover {
  opacity: 0.7;
}

/* ==========================================================================
  company
  ========================================================================== */
.company .about {
  letter-spacing: 0.2em;
  margin: 0 calc(50% - 50vw);
  padding: 4px calc(50vw - 50%) 112px;
  position: relative;
  width: 100vw;
}
@media (max-width: 999px) {
  .company .about {
    line-height: 1.7;
    margin: 140px calc(50% - 50vw) 0;
    padding: 4px calc(50vw - 50%) 70px;
  }
}
.company .about::before {
  background: url(../img/company/company1.png) no-repeat top left/1920px 750px;
  bottom: 0;
  content: "";
  height: 750px;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  right: 0;
  width: 1920px;
  z-index: -1;
}
.company .about .kv__ttl {
  margin-bottom: 20px;
}
.company .about__txt {
  margin-bottom: 35px;
}
.company .about__item:not(:last-child) {
  margin-bottom: 37px;
}
.company .about__ttl {
  font-weight: 400;
}

.summary {
  background: #FEFFFF;
  margin: 0 calc(50% - 50vw);
  padding: 94px calc(50vw - 50% + 8px) 194px;
  position: relative;
  width: 100vw;
}
@media (max-width: 999px) {
  .summary {
    padding-bottom: 80px;
  }
}
.summary__ttl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.9rem;
  font-weight: bold;
  font-weight: bold;
  padding-left: 30px;
  position: relative;
}
@media (max-width: 999px) {
  .summary__ttl {
    font-size: 2.6rem;
    padding-left: 20px;
  }
}
.summary__ttl::before {
  background: #D90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 4px;
}
@media (max-width: 999px) {
  .summary__ttl::before {
    width: 3px;
  }
}
.summary__item {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #0D0D0D;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0;
  line-height: 1.4;
  padding: 39px 3%;
}
@media (max-width: 999px) {
  .summary__item {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 20px 0;
  }
}
.summary__item dt {
  font-weight: bold;
  width: 10%;
}
@media (max-width: 999px) {
  .summary__item dt {
    margin-bottom: 8px;
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .summary__item dd {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .summary__item dd {
    width: 100%;
  }
}

/* ==========================================================================
  planFilter 絞り込み検索
  ========================================================================== */
.planFilter {
  padding-bottom: 20px;
}
.planFilter__group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
}
@media (max-width: 999px) {
  .planFilter__group {
    margin-bottom: 10px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.planFilter__title {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  width: 60px;
}
@media (max-width: 999px) {
  .planFilter__title {
    font-size: 1.6rem;
  }
}
.planFilter__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
}
@media (max-width: 999px) {
  .planFilter__list {
    width: 100%;
  }
}
.planFilter__btn {
  background: #fff;
  border: 1px solid #D90200;
  border-radius: 4px;
  color: #D90200;
  cursor: pointer;
  font-family: "Zen Maru Gothic", sans-serif;
  padding: 8px 16px;
  -webkit-transition: all 0.3s;
  font-size: 2rem;
  font-weight: bold;
  transition: all 0.3s;
  width: 200px;
}
@media (max-width: 999px) {
  .planFilter__btn {
    font-size: 1.6rem;
    padding: 6px 12px;
    width: 100%;
  }
}
.planFilter__btn.is-active {
  background: #D90200;
  color: #fff;
}
.planFilter__btn:hover {
  opacity: 0.8;
}

/* ==========================================================================
  planItem
  プラン詳細ページのスタイル
  ========================================================================== */
.planItem {
  height: auto;
  padding-bottom: 199px;
  /* セクションタイトル */
  /* メインタイトル（キャッチコピー） */
  /* プラン名 */
  /* サブタイトル（間取り図のタイトルなど） */
  /* メインビジュアル部分 */
  /* メインビジュアル画像 */
  /* メインビジュアル右側コンテンツ */
  /* カテゴリータグリスト */
  /* 説明文 */
  /* 間取り図ボックス */
  /* 間取り図コンテナ */
  /* 間取り図説明コンテンツ */
  /* 間取り図画像 */
  /* 戻るボタン */
  /* ポイントリスト */
  /* テーブル共通スタイル */
  /* シミュレーションテーブル */
  /* ローンシミュレーション */
}
@media (max-width: 999px) {
  .planItem {
    padding-bottom: 80px;
  }
}
.planItem img {
  border-radius: 6px;
}
.planItem .sectionTitle {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.8rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin-bottom: 20px;
  padding-left: 20px;
  position: relative;
}
.planItem .sectionTitle::before {
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  background: #D90200;
  border-radius: 6px;
  height: 100%;
  transform: translateY(-50%);
  width: 6px;
}
.planItem__ttl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.3rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .planItem__ttl {
    font-size: 2.6rem;
    margin-bottom: 8px;
  }
}
.planItem__txt {
  font-size: 2rem;
  margin-bottom: 27px;
}
@media (max-width: 999px) {
  .planItem__txt {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.planItem__subTtl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.2rem;
  font-weight: bold;
  font-weight: bold;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .planItem__subTtl {
    font-size: 2rem;
    margin: 10px 0;
  }
}
.planItem__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 90px;
  /* 坪数・価格表示 */
}
.planItem__main .cardTable {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 4rem;
  font-weight: bold;
  gap: 10px;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
.planItem__main .cardTable .small {
  font-size: 1.6rem;
}
@media (max-width: 999px) {
  .planItem__main {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
}
.planItem__img1 {
  position: relative;
}
@media (min-width: 1000px) {
  .planItem__img1 {
    margin-right: 1.5%;
    width: 44%;
  }
}
@media (max-width: 999px) {
  .planItem__img1 {
    margin-bottom: 20px;
    width: 100%;
  }
}
.planItem__img1::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.planItem__img1 img {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.planItem__mainContents h3 {
  font-size: 2rem;
  font-weight: bold;
}
@media (min-width: 1000px) {
  .planItem__mainContents {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
}
@media (max-width: 999px) {
  .planItem__mainContents {
    width: 100%;
  }
}
.planItem__list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  letter-spacing: 0.2em;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.planItem__list ul:not(:last-child) {
  margin-bottom: 20px;
}
.planItem__list ul li {
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #d90200;
  border-radius: 4px;
  font-size: 1.4rem !important;
  padding: 4px 10px;
}
@media (max-width: 999px) {
  .planItem__list ul li {
    font-size: 1.3rem;
  }
}
.planItem__desc {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.9;
}
@media (max-width: 999px) {
  .planItem__desc {
    margin-bottom: 30px;
  }
}
.planItem__box {
  width: 48%;
}
@media (max-width: 999px) {
  .planItem__box {
    width: 100%;
  }
}
.planItem .floorPlan-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 4%;
  margin-bottom: 40px;
}
@media (max-width: 999px) {
  .planItem .floorPlan-container {
    gap: 40px;
    margin-bottom: 20px;
  }
}
@media (min-width: 1000px) {
  .planItem__contents {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 20px;
  }
}
@media (max-width: 999px) {
  .planItem__contents {
    width: 100%;
  }
}
.planItem__img3 {
  height: auto;
  position: relative;
}
@media (min-width: 1000px) {
  .planItem__img3 {
    width: 56%;
  }
}
@media (max-width: 999px) {
  .planItem__img3 {
    width: 100%;
  }
}
.planItem__img3 img {
  height: auto;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.planItem__btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #D90200;
  border: 1px solid #D90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 54px auto 0;
  max-width: 352px;
  width: 100%;
}
@media (max-width: 999px) {
  .planItem__btn {
    margin: 50px auto 0;
  }
}
.planItem__btn:hover {
  background: #fff;
  color: #d90200;
}
.planItem .point-list {
  margin: 15px 0;
}
.planItem .point-list__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
.planItem .point-list__item i {
  color: #D90200;
  margin-right: 10px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.planItem .data-table, .planItem .simulation-table table {
  border-collapse: collapse;
  width: 100%;
  /* 重要な数値の強調 */
  /* 補足的な単位表示 */
}
.planItem .data-table th, .planItem .simulation-table table th, .planItem .data-table td, .planItem .simulation-table table td {
  border-bottom: 1px solid #eee;
  line-height: 1.4;
  padding: 15px 12px;
}
.planItem .data-table th, .planItem .simulation-table table th {
  color: #333;
  text-align: left;
  width: 50%;
}
.planItem .data-table td, .planItem .simulation-table table td {
  font-family: "Roboto", sans-serif;
  text-align: right;
}
.planItem .data-table .emphasis, .planItem .simulation-table table .emphasis {
  color: #D90200;
  font-size: 2.4rem;
  font-weight: bold;
}
.planItem .data-table .unit, .planItem .simulation-table table .unit {
  color: #666;
  font-size: 1.4rem;
  margin-left: 4px;
}
.planItem .simulation-table {
  border: 1px solid #ddd;
  border-radius: 8px;
  margin: 30px 0;
  max-width: 600px;
  padding: 20px;
  /* セクションヘッダー */
  /* 重要な行の強調 */
  /* 内訳行（やや控えめに） */
  /* 結果行 */
}
.planItem .simulation-table__header {
  background: #f8f8f8;
  border-radius: 4px;
  margin-bottom: 20px;
  padding: 15px;
  text-align: center;
}
.planItem .simulation-table__title {
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 10px;
}
.planItem .simulation-table .section-header {
  background: #f5f5f5;
}
.planItem .simulation-table .section-header th {
  color: #333;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 12px 15px;
}
.planItem .simulation-table .important-row {
  background: #fff9f9;
}
.planItem .simulation-table .important-row th, .planItem .simulation-table .important-row td {
  font-weight: bold;
  padding: 20px 12px;
}
.planItem .simulation-table .important-row td {
  color: #D90200;
  font-size: 2rem;
}
.planItem .simulation-table .breakdown {
  background: #fafafa;
}
.planItem .simulation-table .breakdown th {
  color: #666;
  font-size: 1.4rem;
  padding-left: 30px;
}
.planItem .simulation-table .breakdown td {
  color: #666;
  font-size: 1.4rem;
}
.planItem .simulation-table .result-row {
  background: #fff;
  border-top: 2px solid #eee;
}
.planItem .simulation-table .result-row th, .planItem .simulation-table .result-row td {
  font-weight: bold;
  padding: 20px 12px;
}
.planItem .simulation-table .result-row td {
  color: #D90200;
  font-size: 2.2rem;
}
.planItem .simulation-table__notes {
  border-top: 1px dotted #ddd;
  margin-top: 25px;
  padding-top: 20px;
}
.planItem .simulation-table__note {
  color: #777;
  font-size: 1.2rem;
  line-height: 1.8;
  margin-bottom: 3px;
  padding-left: 1em;
  text-indent: -1em;
}
.planItem .simulation-table__note:last-child {
  margin-bottom: 0;
}
.planItem .loan-simulation {
  margin-top: 40px;
}
.planItem .loan-simulation .price-breakdown,
.planItem .loan-simulation .payment-breakdown {
  background: #f5f5f5;
}
.planItem .loan-simulation .price-breakdown th,
.planItem .loan-simulation .payment-breakdown th {
  color: #333;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 15px;
}
.planItem .loan-simulation .total-row {
  background: #fff9f9;
  border-top: 2px solid #eee;
}
.planItem .loan-simulation .total-row th, .planItem .loan-simulation .total-row td {
  font-weight: bold;
  padding: 20px 12px;
}
.planItem .loan-simulation .total-row td {
  color: #D90200;
  font-size: 2.2rem;
}

.zoom-button {
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
  bottom: 10px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 40px;
  position: absolute;
  right: 10px;
  width: 40px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  border: none;
  cursor: pointer;
  justify-content: center;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  z-index: 2;
}
.zoom-button:hover {
  background: rgba(0, 0, 0, 0.8);
}
.zoom-button i {
  font-size: 1.6rem;
}

/* モーダル */
.modal {
  display: none;
  left: 50%;
  position: fixed;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.8);
  height: 100%;
  padding: 20px;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 1000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  /* モーダル内のコンテンツ */
  /* 閉じるボタン */
}
.modal.is-active {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.modal__content {
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  background: #fff;
  border-radius: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-height: 90vh;
  max-width: 90%;
  padding: 20px;
  transform: translate(-50%, -50%);
  width: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.modal__content img {
  display: block;
  height: auto;
  margin: 0 auto;
  max-height: calc(90vh - 120px);
  max-width: 100%;
  width: auto;
  -o-object-fit: contain;
  object-fit: contain;
}
.modal__close {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 2.4rem;
  height: 40px;
  position: absolute;
  right: 0;
  top: -40px;
  width: 40px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  z-index: 2;
}
.modal__close:hover {
  opacity: 0.8;
}
@media (max-width: 999px) {
  .modal__close {
    right: 0;
    top: -40px;
  }
}

/* ==========================================================================
  planList
  ========================================================================== */
.planList {
  padding-bottom: 60px;
}
.planList dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.6rem;
}
.planList .small {
  font-size: 1rem !important;
}
.planList .cardTable {
  font-size: 1.6rem;
}
.planList dt {
  font-weight: bold;
  width: 70px;
}
.planList__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.planList__item {
  background: none;
  border-radius: 6px;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  margin-bottom: 40px;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.planList__item a {
  display: block;
}
.planList__item::before {
  background: url(../img/plan/arrow.svg) no-repeat center center/30px 10px;
  bottom: 25px;
  content: "";
  height: 10px;
  position: absolute;
  right: 9%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  width: 30px;
}
.planList__item:hover {
  list-style: none;
  opacity: 0.7;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
}
.planList__item:hover::before {
  right: 6%;
}
@media (min-width: 1000px) {
  .planList__item {
    width: 32%;
  }
  .planList__item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (max-width: 999px) {
  .planList__item {
    width: 100%;
  }
}
.planList__body {
  padding: 20px 6%;
  position: relative;
}
.planList__cats {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  margin-bottom: 10px;
}
.planList__cat {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #d90200;
  border-radius: 4px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  font-size: 1.2rem;
  justify-content: center;
  padding: 2px 10px;
}
.planList__subTtl {
  font-size: 2.2rem !important;
  font-weight: bold;
  line-height: 1;
  line-height: 2.5rem;
  margin-bottom: 6px;
  padding-left: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .planList__subTtl {
    font-size: 2rem !important;
  }
}
.planList__subTtl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  border-radius: 6px;
  transform: translateY(-50%);
  width: 4px;
}
.planList__img {
  position: relative;
}
.planList__img::before {
  content: "";
  display: block;
  padding-top: 57%;
}
.planList__img img {
  border-radius: 6px 6px 0 0;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  top: 0;
  width: 100%;
}

/* ==========================================================================
  planFilter 絞り込み検索
  ========================================================================== */
.planFilter {
  padding-bottom: 20px;
}
.planFilter__group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
}
@media (max-width: 999px) {
  .planFilter__group {
    margin-bottom: 10px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.planFilter__title {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  width: 60px;
}
@media (max-width: 999px) {
  .planFilter__title {
    font-size: 1.6rem;
  }
}
.planFilter__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
}
@media (max-width: 999px) {
  .planFilter__list {
    width: 100%;
  }
}
.planFilter__btn {
  background: #fff;
  border: 1px solid #d90200;
  border-radius: 4px;
  color: #d90200;
  cursor: pointer;
  font-family: "Zen Maru Gothic", sans-serif;
  padding: 8px 16px;
  -webkit-transition: all 0.3s;
  font-size: 2rem;
  font-weight: bold;
  transition: all 0.3s;
  width: 200px;
}
@media (max-width: 999px) {
  .planFilter__btn {
    font-size: 1.6rem;
    padding: 6px 12px;
    width: 100%;
  }
}
.planFilter__btn.is-active {
  background: #d90200;
  color: #fff;
}
.planFilter__btn:hover {
  opacity: 0.8;
}

/* ==========================================================================
  eventItem
  ========================================================================== */
.event-page.eventItem {
  height: auto;
  padding-top: 30px;
}
@media (max-width: 999px) {
  .event-page.eventItem {
    padding-bottom: 80px;
  }
}
.event-page.eventItem img {
  border-radius: 6px;
}
.event-page.eventItem .pageHeadEvent {
  margin-bottom: 20px;
}
.event-page.eventItem .status {
  border-radius: 4px;
  color: white;
  display: inline-block;
  font-size: 20px;
  font-weight: bold;
  min-width: 100px;
  padding: 4px 10px;
  text-align: center;
}
@media (max-width: 999px) {
  .event-page.eventItem .status {
    font-size: 16px;
  }
}
.event-page.eventItem .status._now {
  background-color: rgba(247, 105, 70, 0.82);
}
.event-page.eventItem .status._before {
  background-color: rgba(114, 132, 175, 0.82);
}
.event-page.eventItem .status._end {
  background-color: rgba(51, 51, 51, 0.82);
}
.event-page.eventItem .count-down {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  font-size: 20px;
  justify-content: center;
}
.event-page.eventItem__ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.3rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.04em;
  letter-spacing: 0.02em;
  margin-bottom: 4px;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .event-page.eventItem__ttl {
    font-size: 3rem;
    margin-bottom: 8px;
  }
}
.event-page.eventItem__txt {
  font-size: 2rem;
  margin-bottom: 27px;
}
@media (max-width: 999px) {
  .event-page.eventItem__txt {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.event-page.eventItem__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 90px;
}
@media (max-width: 999px) {
  .event-page.eventItem__main {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 60px;
  }
}
.event-page.eventItem__img1 {
  position: relative;
}
@media (min-width: 1000px) {
  .event-page.eventItem__img1 {
    margin-right: 1.5%;
    width: 44%;
  }
}
@media (max-width: 999px) {
  .event-page.eventItem__img1 {
    margin-bottom: 20px;
    width: 100%;
  }
}
.event-page.eventItem__img1::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.event-page.eventItem__img1 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
.event-page.eventItem__img1 img.endEvent {
  opacity: 0.5;
}
@media (min-width: 1000px) {
  .event-page.eventItem__mainContents {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .event-page.eventItem__mainContents {
    width: 100%;
  }
}
.event-page.eventItem__list dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  letter-spacing: 0.2em;
}
.event-page.eventItem__list dl:not(:last-child) {
  margin-bottom: 20px;
}
.event-page.eventItem__list dl dt {
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 30px;
  width: 100px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#d90200), to(#d90200)) 0% 0% no-repeat;
  background: transparent -webkit-linear-gradient(top, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  background: transparent linear-gradient(180deg, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  border-radius: 6px;
  font-size: 1.2rem;
}
@media (max-width: 999px) {
  .event-page.eventItem__list dl dt {
    font-size: 1.3rem;
    height: 24px;
    width: 90px;
  }
}
.event-page.eventItem__list dl dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
}
.event-page.eventItem__list dl dd span {
  display: block;
  font-size: 1.4rem;
  margin-top: 5px;
}
.event-page.eventItem__desc {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.9;
}
@media (max-width: 999px) {
  .event-page.eventItem__desc {
    margin-bottom: 30px;
  }
}
.event-page.eventItem__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 95px;
}
@media (max-width: 999px) {
  .event-page.eventItem__box {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 65px;
  }
}
@media (min-width: 1000px) {
  .event-page.eventItem__contents {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
    margin-left: 20px;
  }
}
@media (max-width: 999px) {
  .event-page.eventItem__contents {
    width: 100%;
  }
}
.event-page.eventItem .contact {
  margin-top: 60px;
}
@media (max-width: 999px) {
  .event-page.eventItem .contact {
    margin-top: 30px;
  }
}

/* ==========================================================================
  eventList
  ========================================================================== */
.eventList {
  padding-bottom: 60px;
}
.eventList__sort {
  margin-bottom: 20px;
  text-align: right;
}
.eventList__sort select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='4' viewBox='0 0 8 4'%3E%3Cpath d='M0 0l4 4 4-4z' fill='%23333'/%3E%3C/svg%3E") no-repeat right 12px center;
  border: 1px solid #ddd;
  border-radius: 4px;
  cursor: pointer;
  font-size: 1.4rem;
  padding: 8px 32px 8px 12px;
  -webkit-transition: border-color 0.2s;
  transition: border-color 0.2s;
}
.eventList__sort select:hover {
  border-color: #999;
}
.eventList__sort select:focus {
  border-color: #666;
  outline: none;
}
.eventList .detail {
  font-size: 1.6rem !important;
  line-height: 2rem;
  margin-bottom: 4px;
}
.eventList .detail span {
  font-size: 1.4rem;
}
.eventList__status {
  color: white;
  font-weight: bold;
  text-align: center;
}
@media (max-width: 999px) {
  .eventList__status {
    padding: 8px;
  }
}
.eventList__status span {
  font-size: 16px;
  font-weight: normal;
  margin-left: 5px;
}
.eventList__status._now {
  background-color: rgba(247, 105, 70, 0.82);
}
.eventList__status._before {
  background-color: rgba(114, 132, 175, 0.82);
}
.eventList__status._end {
  background-color: rgba(51, 51, 51, 0.82);
}
.eventList__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.eventList__item {
  background: none;
  border-radius: 6px;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  margin-bottom: 40px;
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.eventList__item a {
  display: block;
  text-decoration: none;
}
.eventList__item:hover {
  list-style: none;
  opacity: 0.7;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}
@media (min-width: 1000px) {
  .eventList__item {
    width: 32%;
  }
  .eventList__item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (max-width: 999px) {
  .eventList__item {
    width: 100%;
  }
}
.eventList__body {
  background: #fff;
  border-radius: 0 0 6px 6px;
  padding: 15px 6% 20px;
  position: relative;
}
.eventList__subTtl {
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 10px;
  padding-left: 12px;
  position: relative;
}
.eventList__subTtl:hover {
  list-style: none;
}
.eventList__subTtl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  border-radius: 6px;
  transform: translateY(-50%);
  width: 4px;
}
.eventList__subTtl ._below {
  color: #111111;
  font-size: 1.3rem;
  font-weight: bold;
}
.eventList__img {
  position: relative;
}
.eventList__img .endEvent {
  -webkit-filter: grayscale(60%);
  filter: grayscale(60%);
}
.eventList__img::before {
  content: "";
  display: block;
  padding-top: 57%;
}
.eventList__img img {
  border-radius: 6px 6px 0 0;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  top: 0;
  width: 100%;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

/* ==========================================================================
  staffList
  ========================================================================== */
.staffList {
  padding-bottom: 60px;
}
.staffList dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.4rem;
  gap: 10px;
  margin-bottom: 4px;
}
@media (max-width: 999px) {
  .staffList dl {
    font-size: 1.2rem;
  }
}
.staffList dt {
  font-weight: bold;
  width: 70px;
}
.staffList dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.staffList__ttl {
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.2em;
  line-height: 1.4;
  margin-bottom: 33px;
  text-align: center;
}
@media (max-width: 999px) {
  .staffList__ttl {
    font-size: 2.2rem;
  }
}
.staffList__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.staffList__item {
  background: none;
  border-radius: 6px;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.169);
  margin-bottom: 40px;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.staffList__item a {
  display: block;
}
.staffList__item::before {
  background: url(../img/case/arrow.svg) no-repeat center center/30px 10px;
  bottom: 25px;
  content: "";
  height: 10px;
  position: absolute;
  right: 9%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  width: 30px;
}
.staffList__item:hover {
  list-style: none;
  opacity: 0.7;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.4);
}
.staffList__item:hover::before {
  right: 6%;
}
@media (min-width: 1000px) {
  .staffList__item {
    width: 32%;
  }
  .staffList__item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media (max-width: 999px) {
  .staffList__item {
    width: 100%;
  }
}
.staffList__body {
  padding: 20px 6%;
  position: relative;
}
.staffList__cats {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
.staffList__cat {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #d90200;
  border-radius: 6px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  font-size: 0.9rem;
  justify-content: center;
  margin-left: 5px;
  padding: 2px 10px;
}
.staffList__cat._primary, .staffList__cat._secondary {
  font-size: 0.9rem;
}
.staffList__subTtl {
  line-height: 1;
  margin-bottom: 10px;
  padding-left: 10px;
  position: relative;
}
.staffList__subTtl:hover {
  list-style: none;
}
.staffList__subTtl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  border-radius: 6px;
  transform: translateY(-50%);
  width: 4px;
}
.staffList__subTtl ._upper {
  display: block;
  font-size: 1.6rem;
  margin-bottom: 4px;
}
.staffList__subTtl ._below {
  color: #111111;
  font-size: 1.6rem;
  font-weight: bold;
}
.staffList__desc {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
.staffList__img {
  position: relative;
}
.staffList__img::before {
  content: "";
  display: block;
  padding-top: 57%;
}
.staffList__img img {
  border-radius: 6px 6px 0 0;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  top: 0;
  width: 100%;
}
.staffList__box {
  border-top: 1px solid #0d0d0d;
  margin-bottom: 60px;
  margin-top: 94px;
  padding-top: 100px;
}
@media (max-width: 999px) {
  .staffList__box {
    margin-bottom: 40px;
    margin-top: 70px;
    padding-top: 70px;
  }
}
.staffList__logos {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media (max-width: 999px) {
  .staffList__logos {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (min-width: 1000px) {
  .staffList__logo {
    width: 30%;
  }
  .staffList__logo:not(:last-child) {
    margin-right: 5%;
  }
}
@media (max-width: 999px) {
  .staffList__logo {
    max-width: 300px;
    width: 100%;
  }
  .staffList__logo:not(:last-child) {
    margin-bottom: 40px;
  }
}
.staffList__logo a {
  display: block;
}
.staffList__logo a:hover {
  opacity: 0.7;
}

/* ==========================================================================
  company
  ========================================================================== */
.company .about {
  letter-spacing: 0.2em;
  margin: 0 calc(50% - 50vw);
  padding: 4px calc(50vw - 50%) 112px;
  position: relative;
  width: 100vw;
}
@media (max-width: 999px) {
  .company .about {
    line-height: 1.7;
    margin: 140px calc(50% - 50vw) 0;
    padding: 4px calc(50vw - 50%) 70px;
  }
}
.company .about::before {
  background: url(../img/company/company1.png) no-repeat top left/1920px 750px;
  bottom: 0;
  content: "";
  height: 750px;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  right: 0;
  width: 1920px;
  z-index: -1;
}
.company .about .kv__ttl {
  margin-bottom: 20px;
}
.company .about__txt {
  margin-bottom: 35px;
}
.company .about__item:not(:last-child) {
  margin-bottom: 37px;
}
.company .about__ttl {
  font-weight: 400;
}

.summary {
  background: #feffff;
  margin: 0 calc(50% - 50vw);
  padding: 94px calc(50vw - 50% + 8px) 194px;
  position: relative;
  width: 100vw;
}
@media (max-width: 999px) {
  .summary {
    padding-bottom: 80px;
  }
}
.summary__ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.9rem;
  font-weight: bold;
  font-weight: bold;
  padding-left: 30px;
  position: relative;
}
@media (max-width: 999px) {
  .summary__ttl {
    font-size: 2.6rem;
    padding-left: 20px;
  }
}
.summary__ttl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 4px;
}
@media (max-width: 999px) {
  .summary__ttl::before {
    width: 3px;
  }
}
.summary__item {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #0d0d0d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0;
  line-height: 1.4;
  padding: 39px 3%;
}
@media (max-width: 999px) {
  .summary__item {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 20px 0;
  }
}
.summary__item dt {
  font-weight: bold;
  width: 25%;
}
@media (max-width: 999px) {
  .summary__item dt {
    margin-bottom: 8px;
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .summary__item dd {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .summary__item dd {
    width: 100%;
  }
}

/* ==========================================================================
  staffItem
  ========================================================================== */
.staffItem {
  height: auto;
  padding-bottom: 199px;
}
@media (max-width: 999px) {
  .staffItem {
    padding-bottom: 80px;
  }
}
.staffItem img {
  border-radius: 6px;
}
.staffItem .sectionTitle {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.8rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
  margin-bottom: 20px;
  padding-left: 20px;
  position: relative;
}
.staffItem .sectionTitle::before {
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  background: #D90200;
  border-radius: 6PX;
  height: 100%;
  transform: translateY(-50%);
  width: 6px;
}
.staffItem__ttl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.3rem;
  font-weight: bold;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.04em;
  letter-spacing: 0.02em;
  margin-bottom: 4px;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .staffItem__ttl {
    font-size: 3rem;
    margin-bottom: 8px;
  }
}
.staffItem__txt {
  font-size: 2rem;
  margin-bottom: 27px;
}
@media (max-width: 999px) {
  .staffItem__txt {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.staffItem__subTtl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.2rem;
  font-weight: bold;
  font-weight: bold;
  font-weight: bold;
  margin-bottom: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .staffItem__subTtl {
    font-size: 2rem;
    margin: 10px 0;
  }
}
.staffItem__main {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 90px;
}
@media (max-width: 999px) {
  .staffItem__main {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 60px;
  }
}
.staffItem__img1 {
  position: relative;
}
@media (min-width: 1000px) {
  .staffItem__img1 {
    margin-right: 1.5%;
    width: 44%;
  }
}
@media (max-width: 999px) {
  .staffItem__img1 {
    margin-bottom: 20px;
    width: 100%;
  }
}
.staffItem__img1::before {
  content: "";
  display: block;
  padding-top: 60%;
}
.staffItem__img1 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
@media (min-width: 1000px) {
  .staffItem__mainContents {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .staffItem__mainContents {
    width: 100%;
  }
}
.staffItem__list dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  letter-spacing: 0.2em;
}
.staffItem__list dl:not(:last-child) {
  margin-bottom: 20px;
}
.staffItem__list dl dt {
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 30px;
  width: 100px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#d90200), to(#d90200)) 0% 0% no-repeat;
  background: transparent -webkit-linear-gradient(top, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  background: transparent linear-gradient(180deg, #d90200 0%, #d90200 100%) 0% 0% no-repeat;
  border-radius: 6px;
  font-size: 1.2rem;
}
@media (max-width: 999px) {
  .staffItem__list dl dt {
    font-size: 1.3rem;
    height: 24px;
    width: 90px;
  }
}
.staffItem__list dl dd {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
}
.staffItem__desc {
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.9;
}
@media (max-width: 999px) {
  .staffItem__desc {
    margin-bottom: 30px;
  }
}
.staffItem__box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 95px;
}
@media (max-width: 999px) {
  .staffItem__box {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 65px;
  }
}
@media (min-width: 1000px) {
  .staffItem__contents {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
    margin-left: 20px;
  }
}
@media (max-width: 999px) {
  .staffItem__contents {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .staffItem__info {
    margin-left: 2%;
    width: 21%;
  }
}
@media (max-width: 999px) {
  .staffItem__info {
    width: 100%;
  }
}
.staffItem__img2 {
  position: relative;
  width: 100%;
}
.staffItem__img2::before {
  content: "";
  display: block;
}
@media (max-width: 999px) {
  .staffItem__img2::before {
    padding-top: 80%;
  }
}
.staffItem__img2 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  height: 100%;
  object-position: center center;
  width: 100%;
}
@media (max-width: 999px) {
  .staffItem__img2 img {
    -o-object-position: top center;
    object-position: top center;
  }
}
.staffItem__name {
  display: block;
  letter-spacing: 0.2em;
  margin-top: 11px;
  text-align: center;
}
.staffItem__img3 {
  height: auto;
  position: relative;
}
@media (min-width: 1000px) {
  .staffItem__img3 {
    width: 56%;
  }
}
@media (max-width: 999px) {
  .staffItem__img3 {
    width: 100%;
  }
}
.staffItem__img3::before {
  content: "";
  display: block;
  height: auto;
}
.staffItem__img3 img {
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  height: auto;
  object-position: center center;
  width: 100%;
}
.staffItem__btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #D90200;
  border: 1px solid #D90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 54px auto 0;
  max-width: 352px;
  width: 100%;
}
@media (max-width: 999px) {
  .staffItem__btn {
    margin: 50px auto 0;
  }
}
.staffItem__btn:hover {
  background: #fff;
  color: #d90200;
}

.staffItem__gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}

@media (max-width: 999px) {
  .staffItem__gallery {
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 65px;
    margin-bottom: 10px;
  }
}
.staffItem__gallery--img3 {
  position: relative;
}

@media (min-width: 1000px) {
  .staffItem__gallery--img3 {
    margin: 0 5px;
    width: 50%;
  }
}
@media (max-width: 999px) {
  .staffItem__gallery--img3 {
    margin-bottom: 10px;
    width: 100%;
  }
}
.staffItem__gallery--img3::before {
  content: "";
  display: block;
  padding-top: 100%;
}

@media (max-width: 999px) {
  .staffItem__gallery--img3::before {
    padding-top: 100%;
  }
}
.staffItem__gallery--img3 img {
  -o-object-fit: cover;
  -o-object-position: center center;
  bottom: 0;
  font-family: "object-fit:cover,object-position: center center";
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center center;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

/* ==========================================================================
  company
  ========================================================================== */
.company .about {
  letter-spacing: 0.2em;
  margin: 0 calc(50% - 50vw);
  padding: 4px calc(50vw - 50%) 112px;
  position: relative;
  width: 100vw;
}
@media (max-width: 999px) {
  .company .about {
    margin: 140px calc(50% - 50vw) 0;
    padding: 4px calc(50vw - 50%) 70px;
  }
}
.company .about::before {
  bottom: 0;
  content: "";
  height: 750px;
  position: absolute;
  right: 0;
  width: 1920px;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: -1;
}
@media (max-width: 999px) {
  .company .about {
    line-height: 1.7;
  }
}
.company .about .kv__ttl {
  margin-bottom: 20px;
}
.company .about__txt {
  margin-bottom: 35px;
}
.company .about__item:not(:last-child) {
  margin-bottom: 37px;
}
.company .about__ttl {
  font-weight: 400;
}

.summary {
  background: #feffff;
  margin: 0 calc(50% - 50vw);
  padding: 94px calc(50vw - 50% + 8px) 194px;
  position: relative;
  width: 100vw;
}
@media (max-width: 999px) {
  .summary {
    padding-bottom: 80px;
  }
}
.summary__ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.9rem;
  font-weight: bold;
  font-weight: bold;
  padding-left: 30px;
  position: relative;
}
@media (max-width: 999px) {
  .summary__ttl {
    font-size: 2.6rem;
    padding-left: 20px;
  }
}
.summary__ttl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  width: 4px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (max-width: 999px) {
  .summary__ttl::before {
    width: 3px;
  }
}
.summary__item {
  border-bottom: 1px solid #0d0d0d;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0;
  line-height: 1.4;
  padding: 39px 3%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
@media (max-width: 999px) {
  .summary__item {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 20px 0;
  }
}
.summary__item dt {
  font-weight: bold;
  width: 25%;
}
@media (max-width: 999px) {
  .summary__item dt {
    margin-bottom: 8px;
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .summary__item dd {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .summary__item dd {
    width: 100%;
  }
}

/* ==========================================================================
  contact
  ========================================================================== */
.contact-page {
  background: #F4F6F8;
}

.contact {
  padding: 140px 0;
}
@media (max-width: 999px) {
  .contact {
    padding: 80px 0;
  }
}
.contact__ttl {
  color: #d90200;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-bottom: 37px;
  text-align: center;
}
@media (max-width: 999px) {
  .contact__ttl {
    font-size: 2.6rem;
    margin-bottom: 20px;
  }
}
.contact__desc {
  font-size: 2.2rem;
  margin-bottom: 20px;
}
@media (max-width: 999px) {
  .contact__desc {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.contact__list {
  margin-bottom: 90px;
}
@media (max-width: 999px) {
  .contact__list {
    margin-bottom: 60px;
  }
}
.contact__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 40px 3%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #707070;
}
@media (max-width: 999px) {
  .contact__item {
    padding: 30px 3%;
  }
}
.contact__item--flexStart {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media (max-width: 999px) {
  .contact__item {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.contact__label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  font-size: 2rem;
  font-weight: bold;
  justify-content: space-between;
}
@media (min-width: 1000px) {
  .contact__label {
    margin-right: 10%;
    min-width: 204px;
    width: 24%;
  }
}
@media (max-width: 999px) {
  .contact__label {
    font-size: 1.8rem;
    margin-bottom: 15px;
    width: 100%;
  }
}
@media (max-width: 999px) {
  .contact__label {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.contact__label--required::after {
  background: #FE4E4E;
  content: "必須";
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 20px;
  width: 40px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
}
@media (max-width: 999px) {
  .contact__label--required::after {
    margin-left: 15px;
  }
}
.contact__contents {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
}
.contact__contents input[type=text],
.contact__contents input[type=email],
.contact__contents input[type=tel],
.contact__contents textarea {
  background: #fff;
  border: 1px solid #707070;
  height: 46px;
  padding: 10px 4%;
  width: 87%;
}
@media (max-width: 999px) {
  .contact__contents input[type=text],
  .contact__contents input[type=email],
  .contact__contents input[type=tel],
  .contact__contents textarea {
    padding: 6px 4%;
    width: 100%;
  }
}
.contact__contents input[type=text]::-webkit-input-placeholder, .contact__contents input[type=email]::-webkit-input-placeholder, .contact__contents input[type=tel]::-webkit-input-placeholder, .contact__contents textarea::-webkit-input-placeholder {
  color: #ACACAC;
}
.contact__contents input[type=text]::-moz-placeholder, .contact__contents input[type=email]::-moz-placeholder, .contact__contents input[type=tel]::-moz-placeholder, .contact__contents textarea::-moz-placeholder {
  color: #ACACAC;
}
.contact__contents input[type=text]:-ms-input-placeholder, .contact__contents input[type=email]:-ms-input-placeholder, .contact__contents input[type=tel]:-ms-input-placeholder, .contact__contents textarea:-ms-input-placeholder {
  color: #ACACAC;
}
.contact__contents input[type=text]::-ms-input-placeholder, .contact__contents input[type=email]::-ms-input-placeholder, .contact__contents input[type=tel]::-ms-input-placeholder, .contact__contents textarea::-ms-input-placeholder {
  color: #ACACAC;
}
.contact__contents input[type=text]::placeholder,
.contact__contents input[type=email]::placeholder,
.contact__contents input[type=tel]::placeholder,
.contact__contents textarea::placeholder {
  color: #ACACAC;
}
.contact__contents textarea {
  height: 246px;
}
@media (max-width: 999px) {
  .contact__contents textarea {
    height: 200px;
  }
}
.contact__txt._zip {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.contact__txt._zip .mwform-zip-field {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.contact__txt._zip input {
  margin: 0 10px;
  width: 100px !important;
  width: 100px;
}
@media (max-width: 999px) {
  .contact__txt._zip input {
    width: 80px !important;
  }
}
@media (max-width: 355px) {
  .contact__txt._zip input {
    width: 70px !important;
  }
}
.contact__txt._tel input {
  width: 100px !important;
}
@media (max-width: 999px) {
  .contact__txt._tel input {
    margin-bottom: 5px;
    width: 80px !important;
  }
}
@media (max-width: 355px) {
  .contact__txt._tel input {
    width: 70px !important;
  }
}
.contact input[type=radio] {
  display: none;
}
.contact input[type=radio] + span {
  cursor: pointer;
  display: inline-block;
  margin: 0 0.2em 0;
  padding: 0 0 0 30px;
  position: relative;
}
@media (max-width: 999px) {
  .contact input[type=radio] + span {
    margin-bottom: 16px;
  }
}
.contact input[type=radio] + span::before {
  -webkit-transform: translateY(-50%);
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.16);
  border-radius: 50%;
  content: "";
  display: block;
  height: 24px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
}
.contact input[type=radio] + span::after {
  -webkit-transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.32);
  border: 1px solid transparent;
  border-radius: 50%;
  content: "";
  height: 12px;
  left: 6px;
  opacity: 0;
  padding: 2px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  width: 12px;
}
.contact input[type=radio]:checked + span::after {
  opacity: 1;
}
.contact__submit {
  background: #F26149;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 50px;
  max-width: 268px;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid #F26149;
  color: #fff;
  margin: 0 auto;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.contact__submit:hover {
  background: #fff;
}
.contact__submit:hover input[type=submit] {
  color: #F26149;
}
.contact__submit:hover::before {
  color: #F26149;
}
.contact__submit::before {
  color: #fff;
  content: "＞";
  font-size: 1rem;
  position: absolute;
  right: 4px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.contact__submit input[type=submit] {
  background: transparent;
  height: 100%;
  margin: 0;
  padding: 0;
  width: 100%;
  -webkit-transition: 0.2s;
  font-family: inherit;
  font-size: 1.6rem;
  letter-spacing: 0.4em;
  transition: 0.2s;
}
.contact .privacy__ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.9rem;
  font-weight: bold;
  font-weight: bold;
  margin-bottom: 30px;
  padding-left: 30px;
  position: relative;
}
@media (max-width: 999px) {
  .contact .privacy__ttl {
    font-size: 2.6rem;
    padding-left: 20px;
  }
}
.contact .privacy__ttl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  width: 4px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (max-width: 999px) {
  .contact .privacy__ttl::before {
    width: 3px;
  }
}
.contact .privacy__box {
  background: #F2F2F2;
  border: 1px solid #707070;
  font-size: 1.7rem;
  height: 282px;
  letter-spacing: 0.1em;
  margin-bottom: 40px;
  overflow-y: scroll;
  padding: 5px 3%;
  width: 100%;
}
@media (max-width: 999px) {
  .contact .privacy__box {
    font-size: 1.4rem;
    height: 200px;
    line-height: 2;
    padding: 20px;
  }
}
.contact .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}
.contact .mw_wp_form .error {
  color: #fe4e4e;
  font-size: 1.6rem;
  font-weight: bold;
  margin-top: 3px;
}
@media (max-width: 999px) {
  .contact .mw_wp_form .error {
    font-size: 1.4rem;
  }
}

/* ==========================================================================
  privacy
  ========================================================================== */
.privacy h3,
.privacy h4 {
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 20px;
}
.privacy p {
  margin-bottom: 5px;
}
.privacy ul {
  margin: 10px 0;
}
.privacy ul li:not(:last-child) {
  margin-bottom: 8px;
}

/* ==========================================================================
  thanks (404も同様コード使用)
  ========================================================================== */
.thanks,
.notFound {
  padding-bottom: 233px;
}
@media (max-width: 999px) {
  .thanks,
  .notFound {
    padding-bottom: 80px;
  }
}
.thanks__ttl,
.notFound__ttl {
  color: #d90200;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0;
  margin-bottom: 25px;
  text-align: center;
}
@media (max-width: 999px) {
  .thanks__ttl,
  .notFound__ttl {
    font-size: 2.6rem;
  }
}
.thanks__txt,
.notFound__txt {
  letter-spacing: 0.2em;
  line-height: 1.6;
}
.thanks__btn,
.notFound__btn {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #d90200;
  border: 1px solid #d90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 40px auto 0;
  max-width: 352px;
  width: 100%;
}
.thanks__btn:hover,
.notFound__btn:hover {
  background: #fff;
  color: #d90200;
}

.thanks__txt + .thanks__txt {
  margin-top: 25px;
}

.notFound {
  text-align: center;
}

/* ==========================================================================
  interview
  ========================================================================== */
.interview {
  padding-bottom: 190px;
}
@media (max-width: 999px) {
  .interview {
    padding-bottom: 80px;
  }
}
@media (max-width: 999px) {
  .interview .kv {
    margin-bottom: 150px;
  }
}
.interview__item:not(:last-child) {
  margin-bottom: 48px;
}
@media (max-width: 999px) {
  .interview__item:not(:last-child) {
    margin-bottom: 60px;
  }
}
.interview__subTtl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.6rem;
  font-weight: bold;
  font-weight: bold;
  margin-bottom: 20px;
  padding-left: 23px;
  position: relative;
}
@media (max-width: 999px) {
  .interview__subTtl {
    font-size: 2.6rem;
    padding-left: 20px;
  }
}
.interview__subTtl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  width: 4px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (max-width: 999px) {
  .interview__subTtl::before {
    width: 3px;
  }
}
.interview__txt {
  letter-spacing: 0.2em;
  line-height: 1.9;
}
.interview__imgs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 30px 0;
}
@media (max-width: 999px) {
  .interview__imgs {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (min-width: 1000px) {
  .interview__img {
    width: calc(50% - 5px);
  }
  .interview__img:not(:nth-child(2n)) {
    margin-right: 10px;
  }
}
@media (max-width: 999px) {
  .interview__img {
    width: 100%;
  }
  .interview__img:not(:last-child) {
    margin-bottom: 10px;
  }
}

.interview__txt + .interview__txt {
  margin-top: 36px;
}
@media (max-width: 999px) {
  .interview__txt + .interview__txt {
    margin-top: 30px;
  }
}

/* ==========================================================================
  news
  ========================================================================== */
.news-page {
  background: #f4f6f8;
}
.news-page .news {
  padding: 20px 2% 200px;
}
@media (max-width: 999px) {
  .news-page .news {
    padding-bottom: 80px;
  }
}
.news-page .news__inner {
  max-width: calc(990px + 10%);
}
.news-page .news__time, .news-page .news__cat, .news-page .news__subTtl {
  color: #141414;
}
.news-page .news__subTtl {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.news-page .news__item::before {
  background: url(../img/common/news-arrow-dark.svg) no-repeat center center/30px 10px;
}
.news-page .news__item a {
  padding-bottom: 19px;
}
.news-page .news__item:not(:last-child) {
  margin-bottom: 15px;
}
.news-page .news__item:hover {
  opacity: 1;
}
.news-page .news__item:hover .news__subTtl {
  color: #d90200;
}
.news-page .news__time {
  font-size: 2.2rem;
  margin-right: 5%;
}
@media (max-width: 999px) {
  .news-page .news__time {
    font-size: 1.2rem;
  }
}
.news-page .news__info {
  width: 32%;
}
@media (max-width: 999px) {
  .news-page .news__info {
    margin-bottom: 14px;
    width: 100%;
  }
}

/* ==========================================================================
  post
  ========================================================================== */
.post {
  padding-bottom: 120px;
}
@media (max-width: 999px) {
  .post {
    padding-bottom: 80px;
  }
}
.post__ttl {
  color: #d90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.3rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}
@media (max-width: 999px) {
  .post__ttl {
    font-size: 2.2rem;
    margin-bottom: 15px;
    padding-left: 20px;
  }
}
.post__ttl::before {
  background: #d90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  width: 4px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (max-width: 999px) {
  .post__ttl::before {
    width: 3px;
  }
}
.post__time {
  color: #707070;
  display: block;
  font-size: 2rem;
  margin-bottom: 20px;
}
@media (max-width: 999px) {
  .post__time {
    font-size: 1.4rem;
  }
}
.post__contents {
  margin-bottom: 46px;
}
@media (max-width: 999px) {
  .post__contents {
    margin-bottom: 40px;
  }
}
.post__contents p {
  letter-spacing: 0.23em;
  line-height: 1.9;
  margin-bottom: 20px;
  margin-top: 20px;
}
@media (max-width: 999px) {
  .post__contents p {
    margin-bottom: 15px;
    margin-top: 15px;
  }
}
.post__contents p a {
  color: #d90200;
  text-decoration: underline;
}
.post__contents p a:hover {
  opacity: 0.6;
}
.post__contents figcaption {
  margin-top: 10px;
}
.post__contents ul {
  margin: 20px 0;
  padding-left: 30px;
}
.post__contents ul li {
  list-style: disc;
}
.post__contents ol {
  margin: 20px 0;
  padding-left: 30px;
}
.post__contents ol li {
  list-style: decimal;
}
.post__contents table {
  border: 1px solid #666666;
  border-collapse: collapse;
  margin: 30px 0;
  table-layout: fixed;
  width: 100%;
}
.post__contents table th,
.post__contents table td {
  border: 1px solid #666666;
}
.post__contents .wp-block-button {
  margin: 30px 0;
}
.post__contents img {
  height: auto !important;
  max-width: 100% !important;
  width: auto !important;
}
.post__contents h1 + p,
.post__contents h2 + p,
.post__contents h3 + p,
.post__contents h4 + p,
.post__contents h5 + p,
.post__contents h6 + p {
  margin-top: 0;
}
.post__contents h1 {
  font-size: 2.8rem;
}
@media (max-width: 999px) {
  .post__contents h1 {
    font-size: 2.2rem;
  }
}
.post__contents h2 {
  font-size: 2.6rem;
}
@media (max-width: 999px) {
  .post__contents h2 {
    font-size: 2rem;
  }
}
.post__contents h3 {
  font-size: 2.4rem;
}
@media (max-width: 999px) {
  .post__contents h3 {
    font-size: 1.8rem;
  }
}
.post__contents h1, .post__contents h2, .post__contents h3 {
  margin-bottom: 16px;
}
.post__contents h4, .post__contents h5, .post__contents h6 {
  font-size: 2.2rem;
  margin-bottom: 12px;
}
@media (max-width: 999px) {
  .post__contents h4, .post__contents h5, .post__contents h6 {
    font-size: 1.7rem;
  }
}
.post__contents h1,
.post__contents h2,
.post__contents h3,
.post__contents h4,
.post__contents h5,
.post__contents h6 {
  font-weight: bold;
}
.post__contents .wp-block-image {
  margin: 30px 0;
}
.post__btn {
  background: #d90200;
  border: 1px solid #d90200;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  height: 40px;
  max-width: 352px;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  margin: 0 auto;
}
.post__btn:hover {
  background: #fff;
  color: #d90200;
}

.pageHeadEvent {
  background: url(../img/event/bg.jpg) no-repeat top center/cover;
  height: 600px;
  position: relative;
  width: 100%;
}
.pageHeadEvent.event {
  background: none;
  height: 108px;
}
@media (max-width: 999px) {
  .pageHeadEvent.event {
    height: 0;
  }
}

.pageHeadEvent__ttl {
  -webkit-transform: translateY(-50%) translateX(-50%);
  left: 50%;
  position: absolute;
  position: absolute;
  top: 55%;
  transform: translateY(-50%) translateX(-50%);
  width: 328px;
}

.pageHeadEvent__ttl img {
  width: 100%;
}

@media (max-width: 999px) {
  .pageHeadEvent__ttl {
    font-size: 2.7rem;
  }
}
.event {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 2%;
}

@media (max-width: 999px) {
  .event {
    padding: 20px 0;
  }
}
.event__inner {
  max-width: calc(1228px + 10%);
}

.event__box {
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.161);
  align-items: center;
  background: #F8F8F8;
  box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.161);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: -118px;
  padding: 18px 6% 30px;
  position: relative;
  z-index: 1;
}

@media (max-width: 1400px) {
  .event__box {
    margin-bottom: -38px;
    margin-top: -38px;
  }
}
@media (max-width: 999px) {
  .event__box {
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
    margin-top: 0px;
    padding: 24px 3% 12px;
  }
}
@media (min-width: 1000px) {
  .event__left {
    margin-right: 4%;
    padding-top: 20px;
    width: 22.5%;
  }
}
@media (max-width: 1300px) {
  .event__left {
    width: 30%;
  }
}
@media (max-width: 999px) {
  .event__left {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .event__right {
    -ms-flex: 1 1 0%;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .event__right {
    width: 100%;
  }
}
.event__ttl {
  font-size: 4.2rem;
  margin-bottom: 28px;
}

@media (max-width: 999px) {
  .event__ttl {
    margin-bottom: 20px;
  }
}
@media (max-width: 999px) {
  .event__ttl-pc {
    display: none;
  }
}
@media (min-width: 1000px) {
  .event__ttl-sp {
    display: none;
  }
}
.event__item {
  -webkit-transition: 0.2s;
  border-bottom: 1px solid #707070;
  position: relative;
  transition: 0.2s;
}

.event__item a {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 15px;
  padding-right: 40px;
}

@media (max-width: 1300px) {
  .event__item a {
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (max-width: 999px) {
  .event__item a {
    padding-bottom: 1px;
    padding-right: 0;
  }
}
.event__item:hover {
  opacity: 0.7;
}

@media (min-width: 1000px) {
  .event__item:hover::before {
    right: -20px;
  }
}
.event__item:not(:last-child) {
  margin-bottom: 10px;
}

.event__item::before {
  -webkit-transform: translateY(-50%);
  -webkit-transition: 0.2s;
  background: url(../img/common/news-arrow.svg) no-repeat center center/30px 10px;
  content: "";
  height: 30px;
  margin-top: -3px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.2s;
  width: 30px;
}

@media (max-width: 999px) {
  .event__item::before {
    display: none;
    margin-top: 8px;
  }
}
.event__info {
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

@media (max-width: 1300px) {
  .event__info {
    width: 100%;
  }
}
@media (max-width: 999px) {
  .event__info {
    margin-bottom: 4px;
    width: 100%;
  }
}
.event__subTtl {
  color: #111111;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 4px;
}

@media (min-width: 1000px) {
  .event__subTtl {
    -ms-flex: 1 1 0%;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    position: relative;
    top: 7px;
  }
}
@media (max-width: 1300px) {
  .event__subTtl {
    width: 100%;
  }
}
@media (max-width: 999px) {
  .event__subTtl {
    font-size: 1.3rem;
  }
}
.event__schedule {
  color: #707070;
  font-size: 1.4rem;
  margin-bottom: 10px;
}

@media (max-width: 999px) {
  .event__schedule {
    font-size: 1.2rem;
    margin-right: 12px;
  }
}
.event__comment {
  color: #111;
  font-size: 1.6rem;
  margin-bottom: 10px;
}

@media (max-width: 999px) {
  .event__comment {
    font-size: 1.2rem;
    margin-right: 12px;
  }
}
.event__cat {
  color: #707070;
  font-size: 1.6rem;
  padding-left: 10px;
  position: relative;
}

@media (max-width: 999px) {
  .event__cat {
    font-size: 1.2rem;
  }
}
.event__cat::before {
  -webkit-transform: translateY(-50%);
  background: #707070;
  content: "";
  height: 60%;
  left: 0;
  line-height: 1;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
}

.event__btn {
  font-size: 1.6rem;
}

@media (max-width: 999px) {
  .event__btn {
    font-size: 1.2rem;
    margin: 19px auto 0;
    width: 130px;
  }
  .event__btn::before {
    display: none;
  }
}
/* ==========================================================================
  post
  ========================================================================== */
.post {
  padding-bottom: 120px;
}

@media (max-width: 999px) {
  .post {
    padding-bottom: 80px;
  }
}
.post__ttl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 3.3rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}

@media (max-width: 999px) {
  .post__ttl {
    font-size: 2.2rem;
    margin-bottom: 15px;
    padding-left: 20px;
  }
}
.post__ttl::before {
  -webkit-transform: translateY(-50%);
  background: #D90200;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
}

@media (max-width: 999px) {
  .post__ttl::before {
    width: 3px;
  }
}
.post__eventTtl {
  color: #000;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.5rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.02em;
  margin-bottom: 40px;
  padding-left: 30px;
  position: relative;
  text-align: center;
}

@media (max-width: 999px) {
  .post__eventTtl {
    font-size: 2.2rem;
    margin-bottom: 15px;
    padding-left: 20px;
  }
}
.post__time {
  color: #707070;
  display: block;
  font-size: 2rem;
  margin-bottom: 20px;
}

@media (max-width: 999px) {
  .post__time {
    font-size: 1.4rem;
  }
}
.post__contents {
  margin-bottom: 46px;
}

@media (max-width: 999px) {
  .post__contents {
    margin-bottom: 40px;
  }
}
.post__contents p {
  letter-spacing: 0.23em;
  line-height: 1.9;
  margin-bottom: 20px;
  margin-top: 20px;
}

@media (max-width: 999px) {
  .post__contents p {
    margin-bottom: 15px;
    margin-top: 15px;
  }
}
.post__contents p a {
  color: #D90200;
  text-decoration: underline;
}

.post__contents p a:hover {
  opacity: 0.6;
}

.post__contents figcaption {
  margin-top: 10px;
}

.post__contents ul {
  margin: 20px 0;
  padding-left: 30px;
}

.post__contents ul li {
  list-style: disc;
}

.post__contents ol {
  margin: 20px 0;
  padding-left: 30px;
}

.post__contents ol li {
  list-style: decimal;
}

.post__contents table {
  border: 1px solid #666666;
  border-collapse: collapse;
  margin: 30px 0;
  table-layout: fixed;
  width: 100%;
}

.post__contents table th,
.post__contents table td {
  border: 1px solid #666666;
}

.post__contents .wp-block-button {
  margin: 30px 0;
}

.post__contents img {
  height: auto !important;
  max-width: 100% !important;
  width: auto !important;
}

.post__contents h1 + p,
.post__contents h2 + p,
.post__contents h3 + p,
.post__contents h4 + p,
.post__contents h5 + p,
.post__contents h6 + p {
  margin-top: 0;
}

.post__contents h1 {
  font-size: 2.8rem;
}

@media (max-width: 999px) {
  .post__contents h1 {
    font-size: 2.2rem;
  }
}
.post__contents h2 {
  font-size: 2.6rem;
}

@media (max-width: 999px) {
  .post__contents h2 {
    font-size: 2rem;
  }
}
.post__contents h3 {
  font-size: 2.4rem;
}

@media (max-width: 999px) {
  .post__contents h3 {
    font-size: 1.8rem;
  }
}
.post__contents h1, .post__contents h2, .post__contents h3 {
  margin-bottom: 16px;
}

.post__contents h4, .post__contents h5, .post__contents h6 {
  font-size: 2.2rem;
  margin-bottom: 12px;
}

@media (max-width: 999px) {
  .post__contents h4, .post__contents h5, .post__contents h6 {
    font-size: 1.7rem;
  }
}
.post__contents h1,
.post__contents h2,
.post__contents h3,
.post__contents h4,
.post__contents h5,
.post__contents h6 {
  font-weight: bold;
}

.post__contents .wp-block-image {
  margin: 30px 0;
}

.post__btn {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background: #D90200;
  border: 1px solid #D90200;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-weight: bold;
  font-weight: bold;
  height: 40px;
  justify-content: center;
  margin: 0 auto;
  max-width: 352px;
  width: 100%;
}

.post__btn:hover {
  background: #fff;
  color: #D90200;
}

@media (min-width: 1000px) {
  .post .mainContents {
    -ms-flex: 1 1 0%;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .post .mainContents {
    width: 100%;
  }
}
.post .list dl {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0.2em;
}

.post .list dl:not(:last-child) {
  margin-bottom: 20px;
}

.post .list dl dt {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background: #D90200;
  border-radius: 23px;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 28px;
  justify-content: center;
  margin-right: 8%;
  width: 80px;
}

@media (max-width: 999px) {
  .post .list dl dt {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    height: 28px;
    justify-content: center;
    margin-right: 6%;
    width: 100px;
  }
}
.post .list dl dd {
  -ms-flex: 1 1 0%;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  flex: 1 1 0%;
  font-size: 18px;
  font-weight: bold;
}

.post .list dl dd span {
  font-size: 14px;
  font-weight: normal;
}

.post .cvButtonLinkWrap {
  padding: 40px 0;
  text-align: center;
  width: 100%;
}

.post .cvButtonLink {
  -webkit-transition: 0.2s;
  display: inline-block;
  margin: 0 auto;
  transition: 0.2s;
}

.post .cvButtonLink .hukidashi {
  width: 202px;
}

.post .cvButtonLink:hover .arrowRight {
  -webkit-transform: translateX(8px);
  -webkit-transition: 0.2s;
  transform: translateX(8px);
  transition: 0.2s;
}

.post .cvButtonLink:hover .hukidashi {
  -webkit-transform: scale(1.2);
  -webkit-transition: 0.2s;
  transform: scale(1.2);
  transition: 0.2s;
}

.post .cvButtonLink__button {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background-color: #FF7F2C;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 60px;
  justify-content: center;
  margin: 0 auto;
  max-width: 335px;
}
.post .cvButtonLink__button[disabled] {
  background-color: rgba(51, 51, 51, 0.82);
  opacity: 0.4;
}

.post .cvButtonLink__button span {
  color: #fff;
  font-size: 26px;
  font-weight: bold;
}
@media (max-width: 999px) {
  .post .cvButtonLink__button span {
    font-size: 20px;
  }
}

.post .cvButtonLink__button .arrowRight {
  margin-left: 10px;
  width: 30px;
}

.post .madori {
  width: 100%;
}

.post .madori__inner {
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  justify-content: space-around;
}

.jcbBanner {
  margin: 0 auto 30px;
  max-width: 600px;
}

@media (max-width: 999px) {
  .post .madori__inner {
    display: block;
  }
  .post .madori__inner--img {
    width: 100%;
  }
}
.post .madori__inner--img {
  width: 50%;
}

@media (max-width: 999px) {
  .post .madori__inner--img {
    margin-bottom: 20px;
    width: 100%;
  }
}
.post .madori__comment {
  font-size: 1.6rem;
  line-height: 33px;
  margin: 20px 0;
}

.event-message {
  font-weight: bold;
  margin: 0 auto;
  margin-top: 30px;
  max-width: 600px;
  text-align: center;
}
@media (max-width: 999px) {
  .event-message {
    max-width: 320px;
  }
}
.event-message .blue {
  color: #1138A3 !important;
  font-size: 2.5rem;
}
.event-message .red {
  color: #FF0000 !important;
  font-size: 2.5rem;
}
.event-message .yellow {
  color: #EDC20B !important;
  font-size: 2.5rem;
}
.event-message .orange {
  color: #FF5A03 !important;
  font-size: 2.5rem;
}
.event-message .marugo {
  font-family: "heisei-maru-gothic-std", sans-serif !important;
  font-style: normal !important;
  font-weight: bold !important;
}
.event-message .bgRed {
  background-color: #FF0000 !important;
  color: #fff !important;
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 20px;
  padding: 10px 20px;
}
.event-message .cashBack {
  font-weight: normal !important;
}
.event-message h3 {
  margin-top: 20px;
}
.event-message .annotation {
  font-size: 1rem;
  margin-top: 0;
}
.event-message-text {
  margin: 0 !important;
}

/* ==========================================================================
plan
========================================================================== */
.eventPlan {
  margin-top: 80px;
  position: relative;
  width: 100%;
}

@media (max-width: 599px) {
  .eventPlan {
    margin-top: 40px;
  }
}
.eventPlan__box {
  -webkit-box-shadow: 3px 3px 3px rgba(139, 139, 139, 0.2);
  background: rgba(255, 255, 255, 0.8);
  border-radius: 6px;
  box-shadow: 3px 3px 3px rgba(139, 139, 139, 0.2);
  margin-bottom: 40px;
  max-width: 654px;
  position: relative;
  width: 100%;
  width: 45%;
  z-index: 1;
}

@media (max-width: 999px) {
  .eventPlan__box {
    width: 100%;
  }
}
.eventPlan__box p {
  margin: 0;
}

.eventPlan__box .number {
  -webkit-transform: translateY(-50%);
  color: #D90200;
  font-size: 40px;
  font-weight: bold;
  position: absolute;
  top: -10px;
  transform: translateY(-50%);
}

.eventPlan__box .number span {
  color: #000;
  font-size: 20px;
}

.eventPlan__box .eventPlanImg {
  -o-object-fit: cover;
  -o-object-position: center;
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.eventPlan__wrap {
  -ms-flex-pack: distribute;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: space-around;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-around;
}

@media (max-width: 999px) {
  .eventPlan__wrap {
    display: block;
  }
}
.eventPlan__ttl {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  font-weight: bold;
  justify-content: center;
  margin-bottom: 80px;
}

.eventPlan__ttl .logo {
  width: 157px;
}

.eventPlan__txt {
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  line-height: 2;
  margin-bottom: 40px;
}

@media (max-width: 999px) {
  .eventPlan__txt {
    margin-bottom: 20px;
  }
}
@media (max-width: 599px) {
  .eventPlan__txt {
    line-height: 1.3;
    margin-bottom: 0;
  }
}
.eventPlan .subTtlWrap {
  background: rgba(255, 255, 255, 0.8);
  bottom: 15px;
  position: absolute;
  right: 15px;
}

.eventPlan__subTtl {
  color: #000;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 4rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
  padding: 10px 20px;
}

.eventPlan span {
  font-size: 24px;
}

/* ==========================================================================
  housingLoan
  ========================================================================== */
.housingLoan {
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  border: 1px solid #F2000F;
  border-radius: 6px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  padding: 20px;
  position: relative;
  width: 100%;
}

.housingLoan__img {
  width: 60%;
}

.housingLoan__img img {
  -o-object-fit: cover;
  -o-object-position: left;
  height: 100%;
  object-fit: cover;
  object-position: left;
}

@media (max-width: 999px) {
  .housingLoan__img {
    width: 100%;
  }
}
@media (max-width: 999px) {
  .housingLoan {
    display: block;
    margin-bottom: 20px;
  }
}
.housingLoan__contents {
  border-radius: 6px;
  text-align: center;
}

@media (max-width: 999px) {
  .housingLoan__contents {
    text-align: center;
  }
}
.housingLoan__contents .free {
  font-size: 20px;
  font-weight: bold;
  margin-top: 20px;
}

.housingLoan .simulationWrap {
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  margin: 20px 0;
}

.housingLoan .simulation {
  width: 270px;
}

.housingLoan .listWrap {
  background: #F2000F;
  border-radius: 6px;
  color: #fff;
  gap: 20px;
  padding: 10px 16px;
  text-align: left;
}

@media (max-width: 999px) {
  .housingLoan .listWrap {
    margin: 0 auto;
    max-width: 300px;
  }
}
.housingLoan .listWrap li {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.housingLoan .listWrap li img {
  width: 16px;
}

.housingLoan_list img {
  margin: 0 auto;
}

/* ==========================================================================
us
========================================================================== */
.homeMadeWrap {
  background-color: #FEE5E4;
  border-radius: 6px;
  padding: 40px 40px 0;
}

@media (max-width: 999px) {
  .homeMadeWrap {
    padding: 40px 0 0;
  }
}
.homeMade {
  margin-top: 80px;
  position: relative;
}

@media (max-width: 599px) {
  .homeMade {
    margin-top: 40px;
  }
}
.homeMade .content-left {
  margin-bottom: 100px;
}

.homeMade .content-left::before {
  background-position: center;
  content: "";
  height: 200px;
  position: absolute;
  right: 0;
  top: 40px;
  width: 59%;
}

.homeMade .content-left .number {
  left: 10px;
}

.homeMade .content-right {
  margin-bottom: 100px;
}

.homeMade .content-right::before {
  background-position: center;
  content: "";
  height: 200px;
  left: 0;
  position: absolute;
  top: 40px;
  width: 59%;
}

.homeMade .content-right .box {
  margin-left: auto;
}

.homeMade .content-right .number {
  right: 10px;
}

.homeMade .homeMade1::before {
  background: url(../img/event/homeMade1.png) no-repeat top center/cover;
}

@media (max-width: 1400px) {
  .homeMade .homeMade1::before {
    background: url(../img/event/homeMade1.png) no-repeat top right/cover;
  }
}
.homeMade .homeMade2::before {
  background: url(../img/event/homeMade2.png) no-repeat top center/cover;
}

@media (max-width: 1400px) {
  .homeMade .homeMade2::before {
    background: url(../img/event/homeMade2.png) no-repeat top right/cover;
  }
}
.homeMade .homeMade3::before {
  background: url(../img/event/homeMade3.png) no-repeat top center/cover;
}

@media (max-width: 1400px) {
  .homeMade .homeMade3::before {
    background: url(../img/event/homeMade3.png) no-repeat top right/cover;
  }
}
.homeMade .homeMade4::before {
  background: url(../img/event/homeMade5.png) no-repeat top center/cover;
}

@media (max-width: 1400px) {
  .homeMade .homeMade4::before {
    background: url(../img/event/homeMade5.png) no-repeat top right/cover;
  }
}
.homeMade__inner {
  margin-bottom: 100px;
}

@media (max-width: 599px) {
  .homeMade__inner {
    padding: 0 10px;
  }
}
.homeMade__box {
  -webkit-box-shadow: 3px 3px 3px rgba(139, 139, 139, 0.2);
  background: rgba(255, 255, 255, 0.8);
  border-radius: 6px;
  box-shadow: 3px 3px 3px rgba(139, 139, 139, 0.2);
  max-width: 654px;
  padding: 34px;
  position: relative;
  width: 100%;
  z-index: 1;
}

@media (max-width: 999px) {
  .homeMade__box {
    width: 80%;
  }
}
.homeMade__box p {
  margin: 0;
}

.homeMade__box .number {
  -webkit-transform: translateY(-50%);
  color: #D90200;
  font-size: 40px;
  font-weight: bold;
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}

.homeMade__wrap {
  position: relative;
}

.homeMade__ttl {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  font-weight: bold;
  justify-content: center;
  margin-bottom: 30px;
}

.homeMade__ttl .logo {
  width: 157px;
}

.homeMade__txt {
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  line-height: 2;
  margin-bottom: 40px;
}

@media (max-width: 999px) {
  .homeMade__txt {
    margin-bottom: 20px;
  }
}
@media (max-width: 599px) {
  .homeMade__txt {
    line-height: 1.3;
    margin-bottom: 0;
  }
}
.homeMade__subTtl {
  color: #D90200;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
}

/* ==========================================================================
  searchLand
  ========================================================================== */
.searchLand {
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  background-color: #FEE5E4;
  border-radius: 6px;
  gap: 30px;
  margin: 0 auto 30px;
  max-width: 335px;
  padding: 20px;
  position: relative;
  text-align: center;
  width: 100%;
}

.searchLand p {
  margin: 20px 0;
}

.searchLand__ttl {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  font-weight: bold;
  justify-content: center;
  margin-bottom: 30px;
}

.searchLand__ttl .logo {
  width: 157px;
}

.searchLand__img {
  border-radius: 6px;
  height: 160px;
}

.searchLand__img img {
  -o-object-fit: cover;
  -o-object-position: left;
  height: 100%;
  object-fit: cover;
  object-position: left;
}

@media (max-width: 999px) {
  .searchLand__img {
    width: 100%;
  }
}
.top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 205px;
}
@media (max-width: 999px) {
  .top {
    gap: 154px;
  }
}
.top .top__ttl {
  border-bottom: 1px solid #000;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-left: 56px;
}
.top .top__ttl span {
  font-size: 16px;
  font-weight: normal;
}
@media (max-width: 999px) {
  .top .top__ttl {
    margin-bottom: 20px;
  }
}

.top .about {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  gap: 80px;
  justify-content: center;
}
.top .about .about__logo img {
  width: 285px;
}
@media (max-width: 999px) {
  .top .about .about__logo img {
    width: 236px;
  }
}
.top .about p {
  color: #000000;
  font-family: "vdl-penletter", sans-serif !important;
  font-size: 2.1875rem;
  line-height: 2.08;
}
.top .about .about__decoration img {
  width: 18px;
}
@media (max-width: 999px) {
  .top .contents {
    padding-bottom: 20px;
    padding-top: 42px;
  }
}

.top .concept {
  background: #fff;
  padding: 60px 0;
}
.top .concept__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  gap: 30px;
  justify-content: center;
}
.top .concept__img {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 50%;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%;
  max-width: 600px;
  min-width: 320px;
}
.top .concept__img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
}
.top .concept__content {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 50%;
  -ms-flex: 1 1 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 1 1 50%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  gap: 32px;
  justify-content: center;
}
.top .concept__catch {
  border-bottom: 2px solid #dadada;
  color: #222;
  display: inline-block;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 1.2em;
  padding-bottom: 0.2em;
}
.top .concept__text {
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 16px;
}
.top .concept__text p {
  letter-spacing: 0.1em;
}
@media (max-width: 999px) {
  .top .concept__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px;
    padding: 0 12px;
  }
  .top .concept__img, .top .concept__content {
    max-width: 100%;
    min-width: 0;
  }
  .top .concept__btn {
    width: 330px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 16px 0;
  }
}

.top .case .swiper.mySwiper {
  padding-bottom: 40px;
}
.top .case .swiper-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.top .case .swiper-slide {
  background: #fff;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 10px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  height: auto;
  max-width: 298px;
  min-width: 280px;
}
.top .case__img {
  aspect-ratio: 298/180;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 180px;
  overflow: hidden;
  width: 100%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  background: #b3e0ff;
  justify-content: center;
}
.top .case__img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.top .case__body {
  padding: 12px 10px 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 1 1 auto;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
@media (max-width: 768px) {
  .top .case__body {
    padding: 10px 8px 0 8px;
  }
}
.top .case__title {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 8px;
}
.top .case__desc {
  color: #222;
  display: -webkit-box;
  font-size: 1.6rem;
  font-weight: 500;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  line-height: 1.6;
  overflow: hidden;
}
.top .case__info {
  border-top: 2px solid #dadada;
  margin-top: 12px;
  padding-top: 12px;
}
.top .case__floor, .top .case__place {
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  margin: 0;
}
.top .case__floor {
  margin-bottom: 6px;
}

.top .movie p {
  font-weight: bold;
}
.top .movie .movie__inner {
  padding-top: 56.25%; /* 16:9 Aspect Ratio */
  position: relative;
  width: 100%;
}
.top .movie .movie__inner iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

/* ==========================================================================
  contents
  ========================================================================== */
.contents {
  padding-bottom: 166px;
  padding-top: 94px;
}

@media (max-width: 999px) {
  .contents {
    padding-bottom: 20px;
    padding-top: 42px;
  }
}
@media (max-width: 999px) {
  .contents__inner {
    padding: 0 10px;
  }
}
.contents__ttl {
  margin-bottom: 34px;
}

@media (max-width: 999px) {
  .contents__ttl {
    margin-bottom: 22px;
  }
}
.contents__list {
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}

.contents__item {
  height: 350px;
  margin-bottom: 30px;
  position: relative;
  position: relative;
}

.contents__item a {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
}

.contents__item--interview {
  background: url(../img/top/contents-bg1.png) no-repeat top center/cover;
}

.contents__item--agency {
  background: url(../img/top/contents-bg2.jpeg) no-repeat top center/cover;
}

.contents__item--contact {
  background: url(../img/top/contents-bg3.jpeg) no-repeat top center/cover;
}

.contents__item::before {
  -webkit-transition: 0.2s;
  background: rgba(255, 255, 255, 0.4);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: 0.2s;
}

@media (max-width: 999px) {
  .contents__item {
    height: 260px;
    margin-bottom: 19px;
  }
}
.contents__item--full {
  width: 100%;
}

.contents__item--full .contents__box {
  max-width: 390px;
}

@media (max-width: 999px) {
  .contents__item--full .contents__box {
    max-width: 260px;
    min-height: 75px;
  }
}
@media (min-width: 1000px) {
  .contents__item--half {
    width: 49%;
  }
  .contents__item--half:not(:last-child) {
    margin-right: 2%;
  }
}
@media (max-width: 999px) {
  .contents__item--half .contents__box {
    max-width: 260px;
    min-height: 75px;
  }
}
@media (max-width: 999px) {
  .contents__item--half {
    width: 100%;
  }
  .contents__item--half:not(:last-child) {
    margin-bottom: 20px;
  }
}
.contents__item:hover::before {
  background: rgba(255, 255, 255, 0.2);
}

.contents__box {
  -ms-flex-align: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  align-items: center;
  background: #fff;
  border-radius: 30px 0 0 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  position: absolute;
  right: 0;
  top: 200px;
  width: 80%;
}

@media (min-width: 1000px) {
  .contents__box {
    height: 100px;
  }
}
@media (max-width: 999px) {
  .contents__box {
    height: 74px;
    top: 140px;
  }
}
.contents .column {
  background: #d90200;
}

.contents .line {
  background: #00b900;
}

.contents .instagram {
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: -webkit-linear-gradient(315deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  /*グラデーション①*/
}

.contents__subTtl1 {
  color: #fff;
}

.contents__subTtl1 ._upper {
  display: block;
  text-align: center;
}

.contents__subTtl1 ._upper img {
  width: 98px;
}

@media (max-width: 999px) {
  .contents__subTtl1 ._upper img {
    width: 60px;
  }
}
.contents__subTtl1 ._below {
  font-size: 3rem;
  font-weight: bold;
}

@media (max-width: 999px) {
  .contents__subTtl1 ._below {
    font-size: 2rem;
  }
}
.contents__subTtl1 ._below ._lg {
  font-size: 2.8rem;
}

@media (min-width: 1000px) {
  .contents__subTtl1 ._below ._lg {
    font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
    font-weight: bold;
    font-weight: bold;
  }
}
@media (max-width: 999px) {
  .contents__subTtl1 ._below ._lg {
    font-size: 2rem;
  }
}
.contents__subTtl2 {
  color: #fff;
  text-align: center;
}

.contents__subTtl2 ._upper {
  display: block;
  font-size: 1.2rem;
}

@media (max-width: 999px) {
  .contents__subTtl2 ._upper {
    font-size: 1rem;
  }
}
.contents__subTtl2 ._below {
  font-size: 3rem;
  font-weight: bold;
}

@media (max-width: 999px) {
  .contents__subTtl2 ._below {
    font-size: 2rem;
  }
}
.contents__subTtl2 ._below i {
  font-size: 10px;
  margin-left: 2px;
}

.event__slider {
  position: relative;
}
.event__slide {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  min-height: 320px;
  width: 100%;
}
.event__container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  background: #fff;
}
@media (max-width: 999px) {
  .event__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.event__image {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 1;
  position: relative;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.event__image img {
  display: block;
  height: auto;
  width: 100%;
}
.event__info {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 1;
  padding: 32px 24px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: left;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  font-size: 1.6rem;
  font-weight: bold;
}
@media (max-width: 999px) {
  .event__info {
    padding: 18px 10px;
  }
}
.event__main-title {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 8px;
}
.event__divider {
  border: none;
  border-top: 2px solid #222;
  margin: 8px 0 16px 0;
  width: 100%;
}
.event__row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}
.event__icon {
  color: #222;
  margin-right: 10px;
}
.event__date, .event__place {
  font-weight: bold;
  letter-spacing: 0.04em;
}

.swiper-button-prev.event-swiper-prev, .swiper-button-next.event-swiper-next {
  background-color: rgba(255, 255, 255, 0.3);
  color: #222;
  height: 55px;
  margin-top: -22px;
  top: 50%;
  width: 30px;
  z-index: 10;
}
.swiper-button-prev.event-swiper-prev {
  left: 10px;
}
.swiper-button-next.event-swiper-next {
  right: 10px;
}

/* ==========================================================================
  fv
  ========================================================================== */
.top .fv {
  height: 100dvh;
  position: relative;
  width: 100%;
}
.top .fv .swiper {
  height: 100%;
  width: 100%;
}
.top .fv .swiper-slide {
  height: 100%;
  width: 100%;
}
.top .fv__ttl-wrap {
  height: 100%;
  left: 0;
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
}
@media (max-width: 999px) {
  .top .fv__img1 {
    -o-object-position: 70% bottom;
    object-position: 70% bottom;
  }
}
.top .fv img {
  height: 100dvh;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: bottom;
  object-position: bottom;
}
@media (max-width: 999px) {
  .top .fv img {
    -o-object-position: bottom;
    object-position: bottom;
  }
}
.top .fv .swiper-pagination {
  bottom: 30px;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 3;
}
.top .fv .swiper-pagination-bullet {
  background: rgba(255, 255, 255, 0.5);
  height: 12px;
  opacity: 1;
  width: 12px;
}
.top .fv .swiper-pagination-bullet-active {
  background: #fff;
}
.top .fv__ttl {
  color: #ffffff;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 5.7rem;
  font-weight: bold;
  font-weight: bold;
  left: 3%;
  letter-spacing: 0.14em;
  line-height: 1.34;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.top .fv__ttl svg {
  max-width: 280px;
}
@media (min-width: 1000px) {
  .top .fv__ttl svg {
    max-width: 491px;
  }
}
@media (max-width: 999px) {
  .top .fv__ttl {
    font-size: 3rem;
  }
}

/* ==========================================================================
  news
  ========================================================================== */
.news .news__box {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
}
@media (max-width: 999px) {
  .news .news__box {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
    margin-top: 0px;
    padding: 24px 3% 12px;
  }
}
.news .news__list {
  width: 100%;
}
.news .news__item {
  border-bottom: 1px solid #707070;
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.news .news__item:not(:last-child) {
  margin-bottom: 10px;
}
.news .news__item:hover {
  opacity: 0.7;
}
.news .news__item:hover .news__time {
  color: #f10000;
}
.news .news__body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}
@media (max-width: 999px) {
  .news .news__body {
    margin-bottom: 10px;
  }
}
.news .news__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 15px;
  padding-right: 40px;
  width: 100%;
}
@media (max-width: 999px) {
  .news .news__item a {
    padding-bottom: 1px;
    padding-right: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.news .news__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 4%;
  width: 30%;
}
@media (max-width: 999px) {
  .news .news__info {
    margin-bottom: 4px;
    width: 100%;
  }
}
.news .news__time {
  color: #333;
  font-size: 1.6rem;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media (max-width: 999px) {
  .news .news__time {
    font-size: 1.2rem;
  }
}
.news .news__cat {
  color: #707070;
  font-size: 1.6rem;
  padding-left: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .news .news__cat {
    font-size: 1.2rem;
  }
}
.news .news__cat::before {
  content: "";
  left: 4px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  background: #707070;
  height: 60%;
  transform: translateY(-50%);
  width: 1px;
}
.news .news__subTtl {
  color: #111;
  font-size: 2rem;
  font-weight: bold;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  flex: 1 1 0%;
}
@media (max-width: 999px) {
  .news .news__subTtl {
    font-size: 1.3rem;
  }
}
.news .news__btn {
  font-size: 1.6rem;
}
@media (max-width: 999px) {
  .news .news__btn {
    font-size: 1.2rem;
    margin: 19px auto 0;
    width: 130px;
  }
}
.news .news__arrow {
  color: #707070;
  font-size: 1.6rem;
  margin-left: auto;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media (max-width: 999px) {
  .news .news__arrow {
    display: none;
  }
}
.news .news__item:hover .news__arrow {
  color: #f10000;
}

.product__list {
  display: grid;
  gap: 48px 32px;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 48px;
}
@media (max-width: 999px) {
  .product__list {
    gap: 16px 16px;
    grid-template-columns: repeat(2, 1fr);
  }
}
.product__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.product__item img {
  height: 180px;
  width: 180px;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s, -webkit-box-shadow 0.2s;
  display: block;
  transition: -webkit-transform 0.3s, -webkit-box-shadow 0.2s;
  transition: transform 0.3s, box-shadow 0.2s;
  transition: transform 0.3s, box-shadow 0.2s, -webkit-transform 0.3s, -webkit-box-shadow 0.2s;
}
@media (max-width: 999px) {
  .product__item img {
    height: 140px;
    width: 140px;
  }
}
.product__item a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  overflow: hidden;
}
.product__item a:hover img {
  -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.18);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.18);
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}
.product__label {
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 999px) {
  .product__label {
    font-size: 1.4rem;
  }
}

.companyIntroduction__container {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  height: 140px;
  overflow: hidden;
  width: 100%;
}
@media (max-width: 999px) {
  .companyIntroduction__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: auto;
  }
}

.companyIntroduction__block {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 1;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  background: #fff;
  border: 1px solid #000;
  color: #000;
  font-size: 2rem;
  font-weight: bold;
  justify-content: center;
  text-decoration: none;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
}
@media (max-width: 999px) {
  .companyIntroduction__block {
    -webkit-box-flex: 0;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
    height: 140px;
  }
}
.companyIntroduction__block:hover {
  background: #f5f5f5;
}
@media (max-width: 999px) {
  .companyIntroduction__block--left, .companyIntroduction__block--right {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
  }
}

.companyIntroduction__block--left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding-left: 3vw;
}

.companyIntroduction__block--right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding-right: 3vw;
}

.companyIntroduction__divider {
  background: #000;
  height: 100%;
  width: 40px;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
@media (max-width: 999px) {
  .companyIntroduction__divider {
    height: 40px;
    width: 100%;
  }
}

.request__ttl,
.contact__ttl {
  color: #333;
  font-size: 3rem;
  font-weight: bold;
  margin: 0 auto;
  text-align: center;
}
.request__txt,
.contact__txt {
  color: #333;
  font-size: 1.6rem;
  margin: 0 auto;
  text-align: center;
}

.c-requestBanner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 40px;
  padding: 40px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.c-requestBanner__content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 48px;
  width: 100%;
}
@media (max-width: 999px) {
  .c-requestBanner__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    gap: 24px;
  }
}
.c-requestBanner__text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  width: 50%;
}
@media (max-width: 999px) {
  .c-requestBanner__text {
    width: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
  }
}
.c-requestBanner__lead {
  color: #333;
  font-family: inherit;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}
.c-requestBanner__lead .c-requestBanner__sec {
  color: #d49baa;
  font-size: 2.2rem;
  font-weight: bold;
  margin: 0 2px;
  vertical-align: middle;
}
.c-requestBanner__books {
  width: 50%;
}
@media (max-width: 999px) {
  .c-requestBanner__books {
    width: 100%;
  }
}
.c-requestBanner__img {
  height: auto;
  width: 100%;
}

.instagram {
  text-align: center;
}
.instagram .instagram__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 30px;
}
.instagram .instagram__title img {
  width: 200px;
}

.sdgs {
  background: #fff;
  text-align: left;
}
.sdgs__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.sdgs__logo-wrap {
  margin: 0 auto;
  max-width: 500px;
}
.sdgs__logo {
  display: block;
  height: auto;
  width: 100%;
}
.sdgs__text-block {
  text-align: center;
}
.sdgs__main-text {
  text-align: center;
}
.sdgs__rico-logo {
  height: 32px;
  margin-right: 8px;
  vertical-align: middle;
  width: auto;
}

.concept {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 205px !important;
}
@media (max-width: 999px) {
  .concept {
    gap: 154px !important;
  }
}
.concept .concept__ttl {
  border-bottom: 1px solid #000;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-left: 56px;
}
.concept .concept__ttl span {
  font-size: 16px;
  font-weight: normal;
}
@media (max-width: 999px) {
  .concept .concept__ttl {
    margin-bottom: 20px;
  }
}

.catch {
  position: relative;
  z-index: 1;
}
.catch h3 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.6;
}
@media (max-width: 999px) {
  .catch h3 {
    font-size: 2.5rem;
  }
}

.conceptSection {
  position: relative;
}
.conceptSection img {
  height: 400px;
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  -o-object-fit: cover;
  mask-image: -webkit-gradient(linear, left top, right top, from(transparent), to(black));
  mask-image: linear-gradient(to right, transparent, black);
  object-fit: cover;
  z-index: -1;
  -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(transparent), to(black));
  -webkit-mask-image: -webkit-linear-gradient(left, transparent, black);
}
.conceptSection__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 32px;
}
.conceptSection__left {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 220px;
}
.conceptSection__left .conceptSection__title {
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 24px;
}
.conceptSection__left .conceptSection__lead {
  color: #333;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 16px;
}
.conceptSection__right {
  -webkit-box-flex: 2;
  -webkit-flex: 2;
  -ms-flex: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 2;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 999px) {
  .conceptSection__right {
    gap: 16px;
  }
}
.conceptSection__block {
  font-size: 15px;
  letter-spacing: 0.05em;
  line-height: 3;
}
@media (max-width: 999px) {
  .conceptSection__block {
    font-size: 14px;
    padding: 16px 10px;
  }
}

.show--sp {
  display: none;
}
@media (max-width: 999px) {
  .show--sp {
    display: inline;
  }
}

/* ==========================================================================
  fv
  ========================================================================== */
.concept {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px;
}
.concept .fv {
  height: 60dvh;
  position: relative;
  width: 100%;
}
.concept .fv__inner {
  position: relative;
}
.concept .fv img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: bottom;
  object-position: bottom;
}
@media (max-width: 999px) {
  .concept .fv img {
    -o-object-position: bottom;
    object-position: bottom;
  }
}
.concept .fv__ttl {
  bottom: 20px;
  color: #ffffff;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 5.7rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.14em;
  line-height: 1.34;
  position: absolute;
  right: 3%;
}
@media (max-width: 999px) {
  .concept .fv__ttl {
    font-size: 3rem;
  }
}

.message__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 60px;
}
.message__logo {
  max-width: 60%;
}
@media (max-width: 999px) {
  .message__logo {
    max-width: 235px;
  }
}
.message__text p {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2;
}
.message__text p span {
  font-weight: bold;
}
.message__text-value, .message__text--value {
  display: inline-block;
  margin-right: 30px;
  text-align: left;
  vertical-align: top;
  width: 100px;
}

.planOfHouse .products__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 60px;
}
.planOfHouse .products__img {
  max-width: 300px;
}
@media (max-width: 999px) {
  .planOfHouse .products__img {
    max-width: 235px;
  }
}
.planOfHouse .products__text p {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2;
}
.planOfHouse .products__text p span {
  font-weight: bold;
}
.planOfHouse .products__text-value, .planOfHouse .products__text--value {
  display: inline-block;
  margin-right: 30px;
  text-align: left;
  vertical-align: top;
  width: 100px;
}

.planOfHouse {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 205px !important;
}
@media (max-width: 999px) {
  .planOfHouse {
    gap: 154px !important;
  }
}
.planOfHouse .planOfHouse__ttl {
  border-bottom: 1px solid #000;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-left: 56px;
}
.planOfHouse .planOfHouse__ttl span {
  font-size: 16px;
  font-weight: normal;
}
@media (max-width: 999px) {
  .planOfHouse .planOfHouse__ttl {
    font-size: 26px;
    margin-bottom: 20px;
  }
}

.catch {
  position: relative;
  z-index: 1;
}
.catch h3 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.6;
}
@media (max-width: 999px) {
  .catch h3 {
    font-size: 2.5rem;
  }
}

.conceptSection {
  position: relative;
}
.conceptSection img {
  height: 400px;
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  -o-object-fit: cover;
  mask-image: -webkit-gradient(linear, left top, right top, from(transparent), to(black));
  mask-image: linear-gradient(to right, transparent, black);
  object-fit: cover;
  z-index: -1;
  -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(transparent), to(black));
  -webkit-mask-image: -webkit-linear-gradient(left, transparent, black);
}
.conceptSection__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 32px;
}
.conceptSection__left {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 220px;
}
.conceptSection__left .conceptSection__title {
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 24px;
}
.conceptSection__left .conceptSection__lead {
  color: #333;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 16px;
}
.conceptSection__right {
  -webkit-box-flex: 2;
  -webkit-flex: 2;
  -ms-flex: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 2;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 999px) {
  .conceptSection__right {
    gap: 16px;
  }
}
.conceptSection__block {
  font-size: 15px;
  letter-spacing: 0.05em;
  line-height: 3;
}
@media (max-width: 999px) {
  .conceptSection__block {
    font-size: 14px;
    padding: 16px 10px;
  }
}

.show--sp {
  display: none;
}
@media (max-width: 999px) {
  .show--sp {
    display: inline;
  }
}

/* ==========================================================================
  fv
  ========================================================================== */
.planOfHouse {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px;
}
.planOfHouse .fv {
  height: 60dvh;
  position: relative;
  width: 100%;
}
.planOfHouse .fv__inner {
  position: relative;
}
.planOfHouse .fv__ttl {
  bottom: 20px;
  color: #000000;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 5.7rem;
  font-weight: bold;
  font-weight: bold;
  left: 3%;
  letter-spacing: 0.14em;
  line-height: 1.34;
  position: absolute;
}
@media (max-width: 999px) {
  .planOfHouse .fv__ttl {
    font-size: 2.6rem;
  }
}
.planOfHouse .fv img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: bottom;
  object-position: bottom;
}
@media (max-width: 999px) {
  .planOfHouse .fv img {
    -o-object-position: bottom;
    object-position: bottom;
  }
}

/* ==========================================================================
  planTabs
  ========================================================================== */
.planTabs {
  margin-top: 40px;
}
.planTabs__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  border-radius: 8px;
  justify-content: center;
  margin-bottom: 20px;
  overflow: hidden;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
@media (max-width: 999px) {
  .planTabs__nav {
    margin-bottom: 15px;
  }
}
.planTabs__btn {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  background: #f8f8f8;
  border: none;
  color: #666;
  cursor: pointer;
  flex: 1;
  font-size: 1.6rem;
  font-weight: bold;
  padding: 15px 30px;
  -webkit-transition: all 0.3s ease;
  position: relative;
  transition: all 0.3s ease;
}
@media (max-width: 999px) {
  .planTabs__btn {
    font-size: 1.4rem;
    padding: 12px 20px;
  }
}
.planTabs__btn:not(:last-child) {
  border-right: 1px solid #ddd;
}
.planTabs__btn:hover {
  background: #e8e8e8;
}
.planTabs__btn.active {
  background: #d49baa;
  color: #fff;
}
.planTabs__btn.active:hover {
  background: #c28a9a;
}
.planTabs__content {
  display: none;
}
.planTabs__content.active {
  display: block;
}
.planTabs__subNav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  gap: 2px;
  justify-content: center;
  margin-bottom: 30px;
}
@media (max-width: 999px) {
  .planTabs__subNav {
    margin-bottom: 20px;
  }
}
.planTabs__subBtn {
  background: #fff;
  border: 2px solid #d49baa;
  color: #d49baa;
  cursor: pointer;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 10px 20px;
  -webkit-transition: all 0.3s ease;
  border-radius: 25px;
  transition: all 0.3s ease;
}
@media (max-width: 999px) {
  .planTabs__subBtn {
    font-size: 1.2rem;
    padding: 8px 16px;
  }
}
.planTabs__subBtn:hover {
  background: #ffe8e8;
}
.planTabs__subBtn.active {
  background: #d49baa;
  color: #fff;
}
.planTabs__subBtn.active:hover {
  background: #c28a9a;
}
.planTabs__subContent {
  display: none;
}
.planTabs__subContent.active {
  display: block;
}

.planItem {
  background: #fff;
  border-radius: 12px;
  margin: 0 auto;
  max-width: 800px;
  -webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.planItem__image {
  height: 300px;
  overflow: hidden;
  width: 100%;
}
@media (max-width: 999px) {
  .planItem__image {
    height: 200px;
  }
}
.planItem__image img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.planItem__floorplan {
  background: #f9f9f9;
  border-bottom: 2px solid #d49baa;
  padding: 20px;
  width: 100%;
}
@media (max-width: 999px) {
  .planItem__floorplan {
    padding: 15px;
  }
}
.planItem__floorplan img {
  border-radius: 8px;
  height: auto;
  width: 100%;
}
.planItem__price {
  padding: 30px;
}
@media (max-width: 999px) {
  .planItem__price {
    padding: 20px;
  }
}
.planItem__priceItem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #eee;
  margin-bottom: 15px;
  padding: 10px 20px;
}
@media (max-width: 999px) {
  .planItem__priceItem {
    margin-bottom: 12px;
    padding: 8px 15px;
  }
}
.planItem__priceItem--highlight {
  background: -webkit-linear-gradient(315deg, #fff3f3 0%, #ffe8e8 100%);
  background: linear-gradient(135deg, #fff3f3 0%, #ffe8e8 100%);
  border: none;
  border-radius: 8px;
  margin: 20px 0;
  padding: 15px 20px;
}
@media (max-width: 999px) {
  .planItem__priceItem--highlight {
    margin: 15px 0;
    padding: 12px 15px;
  }
}
.planItem__priceItem--final {
  background: -webkit-linear-gradient(315deg, #f0fff0 0%, #e8f8e8 100%);
  background: linear-gradient(135deg, #f0fff0 0%, #e8f8e8 100%);
  border: 2px solid #4caf50;
  border-radius: 8px;
  margin: 20px 0 0;
  padding: 20px;
}
@media (max-width: 999px) {
  .planItem__priceItem--final {
    margin: 15px 0 0;
    padding: 15px;
  }
}
.planItem__priceItem--final .planItem__priceLabel {
  font-size: 1.8rem;
  font-weight: bold;
}
@media (max-width: 999px) {
  .planItem__priceItem--final .planItem__priceLabel {
    font-size: 1.5rem;
  }
}
.planItem__priceItem--final .planItem__priceValue {
  font-size: 2.4rem;
}
@media (max-width: 999px) {
  .planItem__priceItem--final .planItem__priceValue {
    font-size: 2rem;
  }
}
.planItem__priceLabel {
  color: #333;
  font-size: 1.6rem;
  font-weight: 500;
}
@media (max-width: 999px) {
  .planItem__priceLabel {
    font-size: 1.3rem;
  }
}
.planItem__priceValue {
  color: #333;
  font-size: 2rem;
  font-weight: bold;
}
@media (max-width: 999px) {
  .planItem__priceValue {
    font-size: 1.7rem;
  }
}
.planItem__priceValue--red {
  color: #d49baa;
}
.planItem__priceValue--green {
  color: #4caf50;
}
.planItem__priceUnit {
  font-size: 1.4rem;
  font-weight: normal;
  margin-left: 2px;
}
@media (max-width: 999px) {
  .planItem__priceUnit {
    font-size: 1.2rem;
  }
}

.storageBattery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 205px !important;
}
@media (max-width: 999px) {
  .storageBattery {
    gap: 154px !important;
  }
}
.storageBattery .planOfHouse__ttl {
  border-bottom: 1px solid #000;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-left: 56px;
}
.storageBattery .planOfHouse__ttl span {
  font-size: 16px;
  font-weight: normal;
}
@media (max-width: 999px) {
  .storageBattery .planOfHouse__ttl {
    font-size: 26px;
    margin-bottom: 20px;
  }
}

.catch {
  position: relative;
  z-index: 1;
}
.catch h3 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.6;
}
@media (max-width: 999px) {
  .catch h3 {
    font-size: 2.5rem;
  }
}

.conceptSection {
  position: relative;
}
.conceptSection img {
  height: 400px;
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  -o-object-fit: cover;
  mask-image: -webkit-gradient(linear, left top, right top, from(transparent), to(black));
  mask-image: linear-gradient(to right, transparent, black);
  object-fit: cover;
  z-index: -1;
  -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(transparent), to(black));
  -webkit-mask-image: -webkit-linear-gradient(left, transparent, black);
}
.conceptSection__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 32px;
}
.conceptSection__left {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 220px;
}
.conceptSection__left .conceptSection__title {
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 24px;
}
.conceptSection__left .conceptSection__lead {
  color: #333;
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 16px;
}
.conceptSection__right {
  -webkit-box-flex: 2;
  -webkit-flex: 2;
  -ms-flex: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex: 2;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 999px) {
  .conceptSection__right {
    gap: 16px;
  }
}
.conceptSection__block {
  font-size: 15px;
  letter-spacing: 0.05em;
  line-height: 3;
}
@media (max-width: 999px) {
  .conceptSection__block {
    font-size: 14px;
    padding: 16px 10px;
  }
}

.show--sp {
  display: none;
}
@media (max-width: 999px) {
  .show--sp {
    display: inline;
  }
}

/* ==========================================================================
  fv
  ========================================================================== */
.storageBattery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px;
}
.storageBattery .fv {
  height: 60dvh;
  position: relative;
  width: 100%;
}
.storageBattery .fv__inner {
  position: relative;
}
.storageBattery .fv__ttl {
  bottom: 20px;
  color: #000000;
  font-family: "游ゴシック体", YuGothic, "Yu Gothic", sans-serif;
  font-size: 5.7rem;
  font-weight: bold;
  font-weight: bold;
  left: 3%;
  letter-spacing: 0.14em;
  line-height: 1.34;
  position: absolute;
}
@media (max-width: 999px) {
  .storageBattery .fv__ttl {
    font-size: 2.6rem;
  }
}
.storageBattery .fv img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: bottom;
  object-position: bottom;
}
@media (max-width: 999px) {
  .storageBattery .fv img {
    -o-object-position: bottom;
    object-position: bottom;
  }
}

.storageBattery .products__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 60px;
}
.storageBattery .products__img {
  max-width: 300px;
}
@media (max-width: 999px) {
  .storageBattery .products__img {
    max-width: 235px;
  }
}
.storageBattery .products__text p {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2;
}
.storageBattery .products__text p span {
  font-weight: bold;
}
.storageBattery .products__text-value, .storageBattery .products__text--value {
  display: inline-block;
  margin-right: 30px;
  text-align: left;
  vertical-align: top;
  width: 100px;
}

.lp {
  margin: 0 auto;
  max-width: 1366px;
  padding-top: 98px;
  /* ==========================================================================
  event
  ========================================================================== */
}
@media (max-width: 999px) {
  .lp {
    max-width: 100%;
    padding-top: 60px;
  }
}
.lp .youtube-video-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 20px;
}
.lp .sp {
  display: none !important;
}
@media (max-width: 999px) {
  .lp .sp {
    display: block !important;
  }
}
.lp .pc {
  display: block !important;
}
@media (max-width: 999px) {
  .lp .pc {
    display: none !important;
  }
}
.lp .event {
  text-align: left;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 100px 0;
  padding: 20px 2%;
}
@media (max-width: 999px) {
  .lp .event {
    padding: 20px 0;
  }
}
.lp .event__inner {
  max-width: calc(1228px + 10%);
}
.lp .event__box {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background: #f8f8f8;
  -webkit-box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.161);
  box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.161);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0;
  padding: 18px 6% 30px;
  position: relative;
  z-index: 1;
}
@media (max-width: 1400px) {
  .lp .event__box {
    margin-bottom: -38px;
    margin-top: -38px;
  }
}
@media (max-width: 999px) {
  .lp .event__box {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 0;
    margin-top: 0px;
    padding: 24px 3% 12px;
  }
}
@media (min-width: 1000px) {
  .lp .event__left {
    margin-right: 4%;
    padding-top: 20px;
    width: 22.5%;
  }
}
@media (max-width: 1300px) {
  .lp .event__left {
    width: 30%;
  }
}
@media (max-width: 999px) {
  .lp .event__left {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .lp .event__right {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
  }
}
@media (max-width: 999px) {
  .lp .event__right {
    width: 100%;
  }
}
.lp .event__ttl {
  font-size: 3.8rem;
  margin-bottom: 28px;
}
@media (max-width: 999px) {
  .lp .event__ttl {
    margin-bottom: 20px;
  }
}
@media (max-width: 999px) {
  .lp .event__ttl-pc {
    display: none;
  }
}
@media (min-width: 1000px) {
  .lp .event__ttl-sp {
    display: none;
  }
}
.lp .event__item {
  -webkit-transition: 0.2s;
  border-bottom: 1px solid #707070;
  position: relative;
  transition: 0.2s;
}
.lp .event__item:hover {
  opacity: 0.7;
}
@media (min-width: 1000px) {
  .lp .event__item:hover::before {
    right: -20px;
  }
}
.lp .event__item:not(:last-child) {
  margin-bottom: 10px;
}
.lp .event__item::before {
  background: url(../img/common/news-arrow.svg) no-repeat center center/30px 10px;
  content: "";
  height: 30px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: 0.2s;
  transition: 0.2s;
  width: 30px;
}
@media (max-width: 999px) {
  .lp .event__item::before {
    display: none;
    margin-top: 8px;
  }
}
.lp .event__item a {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 15px;
  padding-right: 40px;
}
@media (max-width: 1300px) {
  .lp .event__item a {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
@media (max-width: 999px) {
  .lp .event__item a {
    padding-bottom: 1px;
    padding-right: 0;
  }
}
.lp .event__info {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media (min-width: 1000px) {
  .lp .event__info {
    margin-right: 4%;
    width: 100%;
  }
}
@media (max-width: 1300px) {
  .lp .event__info {
    width: 100%;
  }
}
@media (max-width: 999px) {
  .lp .event__info {
    margin-bottom: 4px;
    width: 100%;
  }
}
.lp .event__subTtl {
  color: #111111;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 4px;
}
@media (min-width: 1000px) {
  .lp .event__subTtl {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0%;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
    position: relative;
    top: 7px;
  }
}
@media (max-width: 1300px) {
  .lp .event__subTtl {
    width: 100%;
  }
}
@media (max-width: 999px) {
  .lp .event__subTtl {
    font-size: 1.3rem;
  }
}
.lp .event__schedule {
  color: #707070;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
@media (max-width: 999px) {
  .lp .event__schedule {
    font-size: 1.2rem;
    margin-right: 12px;
  }
}
.lp .event__comment {
  color: #111;
  font-size: 1.6rem;
  margin-bottom: 10px;
}
@media (max-width: 999px) {
  .lp .event__comment {
    font-size: 1.2rem;
    margin-right: 12px;
  }
}
.lp .event__cat {
  color: #707070;
  font-size: 1.6rem;
  padding-left: 10px;
  position: relative;
}
@media (max-width: 999px) {
  .lp .event__cat {
    font-size: 1.2rem;
  }
}
.lp .event__cat::before {
  background: #707070;
  content: "";
  height: 60%;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 1px;
}
.lp .event__btn {
  font-size: 1.6rem;
}
@media (max-width: 999px) {
  .lp .event__btn {
    font-size: 1.2rem;
    margin: 19px auto 0;
    width: 130px;
  }
  .lp .event__btn::before {
    display: none;
  }
}
.lp .cv {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 0;
}
.lp .cv .topLink {
  font-size: 3rem;
  height: 60px;
  margin-bottom: 20px;
  width: 320px;
}