@charset "UTF-8";
.sub-menu .nav-accordion-ttl,
a {
  -webkit-transition: all 0.3s;
  cursor: pointer; }

a,
a.btn,
body {
  color: #000; }

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
s,
samp,
section,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline; }

body,
header .header-inner nav ul.main-list li {
  line-height: 2; }

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

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

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

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

div {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer; }

a.btn,
div#container {
  -webkit-box-sizing: border-box; }

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none; }

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px; }

html {
  font-size: 62.5%; }

body {
  font-size: 1.6rem;
  background-color: #e5e4e0;
  font-family: YakuHanJP, "A+mfCv-TPゴシック L StdN";
  font-weight: 400; }

_::-webkit-full-page-media, _:future, :root body {
  background-color: #e9e7e4; }

@media (max-width: 768px) {
  _::-webkit-full-page-media, _:future, :root body {
    background-color: #e5e4e0; } }

.news-contents-wrapper .news-list .item .textarea p,
.sub-menu p,
.sub-menu ul.sticky-menu li,
.three-columns-wrapper .flex .item p,
.three-columns-wrapper p.ttl-block span,
a.btn,
footer .flex-wrap .textarea a,
footer .flex-wrap .textarea p.address,
h2.mask-title .text .jp,
header .header-inner nav ul.main-list li a span,
p.section-title span {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

@media (max-width: 768px) {
  body {
    font-size: 1.5rem;
    line-height: 1.6; } }

body.no-scroll {
  overflow: hidden;
  height: 100%; }

a {
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.common_contact-container a .btn,
a.btn {
  -webkit-transition: background 0.3s;
  text-align: center; }

a:hover {
  opacity: 0.8; }

a.btn {
  display: inline-block;
  border: 1px solid #000;
  border-radius: 100px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  padding: 0.7vw 2.4vw; }

@media (max-width: 768px) {
  a.btn {
    margin: 0 auto;
    padding: 1.5rem 4rem; } }

a.btn span.inner {
  position: relative;
  display: block; }

a.btn span.text {
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s; }

a.btn span.text:last-of-type {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateX(0) translateY(10px) translateZ(0);
  transform: translateX(0) translateY(10px) translateZ(0);
  opacity: 0; }

div#container,
h2.mask-title,
h2.mask-title .ttl-inner {
  position: relative; }

a.btn:hover {
  opacity: 1;
  background-color: #000; }

a.btn:hover span.text {
  -webkit-transform: translateX(0) translateY(-10px) translateZ(0);
  transform: translateX(0) translateY(-10px) translateZ(0);
  opacity: 0;
  color: #fff; }

a.btn:hover span.text:last-of-type {
  -webkit-transform: translateX(0) translateY(0) translateZ(0);
  transform: translateX(0) translateY(0) translateZ(0);
  opacity: 1;
  color: #fff; }

a.btn.white {
  border: 1px solid #fff;
  color: #fff;
  padding: 0.7vw 2.4vw; }

a.btn.white:hover {
  border: 1px solid #000; }

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

.sp-view {
  display: none !important; }

@media (max-width: 768px) {
  .pc-view {
    display: none !important; }
  .sp-view {
    display: block !important; } }

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  font-size: 0;
  visibility: hidden; }

.clearfix {
  min-height: 1px; }

* html .clearfix {
  height: 1px; }

div#container {
  width: 100%;
  padding: 0;
  margin: 0;
  text-align: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.top_news-container,
h2.mask-title,
header .header-inner {
  -webkit-box-sizing: border-box; }

.max1280 {
  max-width: 1280px;
  margin: 0 auto; }

.common-container {
  padding-top: 19.5rem;
  margin-bottom: 25rem; }

p.section-title {
  font-size: 3.2rem;
  line-height: 1; }

@media (max-width: 768px) {
  .common-container {
    padding-top: 14rem;
    margin-bottom: 13.5rem; }
  p.section-title {
    text-align: center;
    margin-bottom: 5.5rem; } }

p.section-title span {
  font-size: 1.6rem;
  margin-top: 0.5rem; }

h2.mask-title {
  max-width: 1390px;
  padding: 0 4.5rem;
  margin: 0 auto 10rem;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

@media (max-width: 768px) {
  h2.mask-title {
    padding-left: 2.5rem;
    margin-bottom: 6rem;
    white-space: nowrap; } }

h2.mask-title .border-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 0%;
  background-color: #000;
  z-index: 10; }

h2.mask-title .text-wrapper {
  position: relative;
  display: inline-block; }

h2.mask-title .mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #e5e4e0;
  z-index: 2;
  -webkit-transform: translateY(0);
  transform: translateY(0); }

h2.mask-title .text {
  position: relative;
  z-index: 1;
  font-size: 6rem;
  line-height: 1;
  padding: 1rem 0 1rem 5rem;
  display: block; }

@media (max-width: 768px) {
  h2.mask-title .text {
    padding: 0.6rem 0 0.6rem 2rem;
    font-size: 4rem; } }

h2.mask-title .text .jp {
  display: block;
  font-size: 2rem;
  margin-top: 2.5rem; }

@media (max-width: 768px) {
  h2.mask-title .text .jp {
    font-size: 1.7rem;
    margin-top: 1.5rem; } }

.three-columns-wrapper {
  max-width: 1390px;
  margin: 25rem auto 0;
  padding: 0 4.5rem; }

.three-columns-wrapper p.ttl-block {
  font-size: 3.2rem;
  border-bottom: 1px solid #969696;
  padding-bottom: 4rem;
  margin-bottom: 5rem;
  line-height: 1.2em; }

.three-columns-wrapper p.ttl-block span {
  font-size: 1.6rem;
  display: block; }

.three-columns-wrapper .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 5rem;
  -moz-column-gap: 5rem;
  column-gap: 5rem; }

.three-columns-wrapper .flex .item {
  width: calc((100% - 10rem) / 3); }

@media (max-width: 768px) {
  .three-columns-wrapper {
    margin-top: 12rem; }
  .three-columns-wrapper p.ttl-block {
    text-align: center; }
  .three-columns-wrapper .flex {
    display: block; }
  .three-columns-wrapper .flex .item {
    width: 100%; }
  .three-columns-wrapper .flex .item:not(:last-of-type) {
    margin-bottom: 5rem; } }

.three-columns-wrapper .flex .item a:hover img {
  -webkit-transform: scale(1.15);
  transform: scale(1.15); }

.three-columns-wrapper .flex .item .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 73.3%;
  margin-bottom: 2rem; }

.three-columns-wrapper .flex .item .trimming::before {
  content: "";
  display: block; }

.three-columns-wrapper .flex .item .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px;
  -webkit-transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1); }

.three-columns-wrapper .flex .item p.border {
  font-size: 1.5rem;
  border-bottom: 1px solid #000;
  display: inline-block;
  margin-bottom: 2rem; }

.three-columns-wrapper .flex .item p.text {
  font-size: 1.7rem;
  line-height: 1.53;
  margin-bottom: 1.5rem; }

.three-columns-wrapper .flex .item p.date {
  font-size: 1.5rem;
  line-height: 1; }

@media (max-width: 768px) {
  .three-columns-wrapper .flex .item p.date {
    font-size: 1.4rem; } }

.three-columns-wrapper .flex .item a {
  display: block; }

.three-columns-wrapper .flex .item .text-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 1.5rem; }

.three-columns-wrapper .flex .item .text-flex .viewmore {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
  font-size: 1.3rem; }

.three-columns-wrapper .flex .item .text-flex .viewmore .arrow {
  position: relative;
  display: inline-block;
  width: 13.5px;
  height: 1px;
  margin-top: 2.6px;
  border-radius: 9999px;
  background-color: #000; }

.three-columns-wrapper .flex .item .text-flex .viewmore .arrow::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: 0;
  width: 6px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
  transform-origin: calc(100% - 0.5px) 50%; }

.pagination-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 6rem; }

ul.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 17rem; }

ul.pagination li {
  font-size: 1.6rem;
  line-height: 1; }

@media (max-width: 768px) {
  .pagination-wrapper img {
    width: 12px; }
  ul.pagination li {
    font-size: 1.8rem; } }

ul.pagination li a {
  color: #969696;
  -webkit-transition: all 0.15s linear;
  transition: all 0.15s linear; }

ul.pagination li a.isActive {
  color: #000;
  pointer-events: none; }

ul.pagination li a:not(.isActive):hover {
  color: #000;
  opacity: 1; }

ul.pagination li a:not(.isActive):hover img {
  -webkit-filter: brightness(0) invert(0);
  filter: brightness(0) invert(0); }

ul.pagination li .no-link {
  color: #969696; }

ul.pagination > * + * {
  margin-left: 2rem; }

ul.pagination img {
  width: 8px;
  vertical-align: middle;
  -webkit-transition: all 0.15s linear;
  transition: all 0.15s linear; }

.sub-menu {
  width: 110px;
  position: sticky;
  top: 15rem; }

@media (max-width: 768px) {
  .sub-menu {
    position: static;
    top: auto;
    width: 200px;
    margin: 0 auto 8.5rem; } }

.sub-menu .contents:not(:last-of-type) {
  margin-bottom: 3rem; }

.sub-menu p {
  line-height: 1; }

.sub-menu p.border {
  border-bottom: 1px solid #000;
  padding-bottom: 0.8rem;
  font-size: 1.5rem;
  margin-bottom: 1.4rem; }

@media (max-width: 768px) {
  .sub-menu p.border {
    font-size: 1.6rem; } }

.sub-menu .nav-accordion-ttl {
  font-size: 1.4rem;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.sub-menu .nav-accordion-ttl::after,
.sub-menu .nav-accordion-ttl::before {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  content: "";
  background-color: #000;
  border-radius: 10px;
  width: 10px;
  height: 1px;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(0) translateY(-50%);
  transform: translateY(-50%) rotate(0);
  right: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  margin-top: -3px; }

@media (max-width: 768px) {
  .sub-menu .nav-accordion-ttl {
    font-size: 1.7rem; }
  .sub-menu .nav-accordion-ttl::after,
  .sub-menu .nav-accordion-ttl::before {
    width: 16px; } }

.sub-menu .nav-accordion-ttl::before {
  width: 1px;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 4px; }

.sub-menu .nav-accordion-ttl.open::before {
  -webkit-transform: translateY(-50%) rotate(-90deg);
  transform: translateY(-50%) rotate(-90deg); }

.sub-menu .nav-accordion-ttl.open::after {
  -webkit-transform: translateY(-50%) rotate(0);
  transform: translateY(-50%) rotate(0); }

.sub-menu .nav-accordion-inner {
  display: none;
  padding-top: 1rem; }

.sub-menu .nav-accordion-inner ul li {
  line-height: 1;
  font-size: 1.4rem;
  color: #969696;
  cursor: pointer; }

.sub-menu .nav-accordion-inner ul li:not(:last-of-type) {
  margin-bottom: 1rem; }

.sub-menu .nav-accordion-inner ul li.active,
.sub-menu .nav-accordion-inner ul li.all {
  color: #000; }

.sub-menu ul.sticky-menu li {
  font-size: 1.5rem;
  line-height: 1; }

.sub-menu ul.sticky-menu li:not(:last-of-type) {
  margin-bottom: 3.5rem; }

.sub-menu ul.sticky-menu li a {
  color: #969696;
  border-bottom: 1px solid #969696;
  padding-bottom: 1rem;
  width: 85px;
  display: block; }

.sub-menu ul.sticky-menu li a.active {
  border-bottom: 1px solid #000;
  color: #000;
  width: 110px; }

.top_news-container {
  padding-top: 25rem;
  margin-bottom: 23.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

@media (max-width: 768px) {
  .sub-menu .nav-accordion-ttl::before {
    height: 16px;
    right: 7px; }
  .top_news-container {
    padding: 16.5rem 5.5rem 0;
    margin-bottom: 17.5rem; } }

.top_news-container .inner {
  max-width: 900px;
  width: 100%;
  margin: 0 auto; }

.top_news-container .btn-wrapper {
  text-align: right; }

header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: 0 0;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease; }

header.active h1.general {
  display: none; }

header.active h1.active {
  display: block !important;
  z-index: 1000; }

header.header-fade {
  opacity: 0;
  visibility: hidden;
  pointer-events: none; }

header.header-fixed-stop {
  position: absolute;
  bottom: auto;
  left: 0;
  right: 0;
  top: 0; }

header .header-inner {
  padding: 6rem 6rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: inherit;
  position: relative;
  min-width: 1420px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

@media (max-width: 1420px) {
  header .header-inner {
    min-width: 100%;
    padding-left: 4.5rem;
    padding-right: 4.5rem; } }

@media (max-width: 768px) {
  header .header-inner {
    padding: 3rem 2.5rem 0; } }

header .header-inner h1 {
  z-index: 1;
  width: 152px; }

header .header-inner h1.active {
  display: none; }

header .header-inner nav {
  position: fixed;
  top: 0;
  right: 0;
  width: 75%;
  height: 100vh;
  background-color: #323232;
  z-index: 999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 20rem;
  -webkit-column-gap: 13rem;
  -moz-column-gap: 13rem;
  column-gap: 13rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: opacity 2s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 2s cubic-bezier(0.22, 1, 0.36, 1); }

@media (max-width: 768px) {
  header .header-inner nav {
    width: 100%;
    display: block;
    padding: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch; } }

header .header-inner nav.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto; }

footer nav ul.main-list li.main-list-item a.no-link,
header .header-inner nav ul.main-list li.main-list-item a.none,
header .header-inner nav:not(.active) {
  pointer-events: none; }

header .header-inner nav .nav-inner {
  padding: 11rem 4rem 5rem; }

@media (max-width: 768px) {
  header .header-inner nav .nav-inner {
    padding-top: 17rem; } }

header .header-inner nav .hamburger-bottom {
  background-image: url(../images/hamburger_bottom_bg.png);
  width: 100%;
  height: 260px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end; }

header .header-inner nav .hamburger-bottom img {
  width: 210px;
  padding: 0 0 5rem 7rem; }

header .header-inner nav .accordion-wrap {
  margin-bottom: 4rem; }

header .header-inner nav .accordion-wrap p.accordion-ttl {
  border-left: none;
  border-bottom: 1px solid #fff;
  padding-left: 0;
  padding-bottom: 1rem;
  font-size: 2.2rem;
  color: #fff;
  position: relative; }

header .header-inner nav .accordion-wrap p.accordion-ttl::after,
header .header-inner nav .accordion-wrap p.accordion-ttl::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: -5px auto auto;
  background-color: #fff;
  border-radius: 10px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }

header .header-inner nav .accordion-wrap p.accordion-ttl::before {
  width: 1px;
  height: 16px;
  right: 10.5px; }

header .header-inner nav .accordion-wrap p.accordion-ttl::after {
  width: 16px;
  height: 1px;
  right: 3px; }

header .header-inner nav .accordion-wrap p.accordion-ttl.open::before {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg); }

header .header-inner nav .accordion-wrap p.accordion-ttl span {
  font-size: 1.5rem;
  margin-left: 1.2rem; }

header .header-inner nav .accordion-wrap ul.accordion-contents {
  margin-top: 3rem;
  display: none; }

header
.header-inner
nav
.accordion-wrap
ul.accordion-contents
li.sub-list-item {
  margin-bottom: 1rem;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease; }

@media (max-width: 768px) {
  header .header-inner nav .accordion-wrap p.accordion-ttl {
    border-bottom: none;
    border-left: 1px solid #fff;
    padding-left: 2rem; }
  header .header-inner nav .accordion-wrap p.accordion-ttl span {
    margin-left: 0; }
  header
.header-inner
nav
.accordion-wrap
ul.accordion-contents
li.sub-list-item {
    padding-left: 2rem; } }

header
.header-inner
nav
.accordion-wrap
ul.accordion-contents
li.sub-list-item:last-of-type {
  margin-bottom: 0; }

header
.header-inner
nav
.accordion-wrap
ul.accordion-contents
li.sub-list-item
a {
  color: #969696;
  font-size: 2rem; }

header
.header-inner
nav
.accordion-wrap
ul.accordion-contents
li.sub-list-item
span {
  display: block;
  font-size: 1.5rem; }

header .header-inner nav ul.main-list {
  width: 164px; }

header .header-inner nav ul.main-list li.main-list-item {
  border-left: 1px solid #fff;
  padding-left: 2.5rem;
  margin-bottom: 3.5rem;
  position: relative; }

@media (max-width: 768px) {
  header .header-inner nav ul.main-list li.main-list-item {
    border-left: none;
    border-bottom: 1px solid #fff;
    padding-left: 0;
    padding-bottom: 1rem;
    margin-bottom: 4rem; }
  header .header-inner nav ul.main-list li.main-list-item a {
    font-size: 2.2rem; } }

header .header-inner nav ul.main-list li.main-list-item:has(a:hover) {
  border-color: rgba(255, 255, 255, 0.8);
  -webkit-transition: border-color 0.3s ease;
  transition: border-color 0.3s ease; }

header .header-inner nav ul.main-list li.main-list-item a {
  color: #fff; }

header .header-inner nav ul.main-list li.sub-list-item {
  margin-bottom: 1.7rem;
  padding-left: 2.5rem; }

@media (max-width: 768px) {
  header .header-inner nav ul.main-list li.main-list-item a span {
    font-size: 1.5rem;
    margin-left: 1.2rem; }
  header .header-inner nav ul.main-list li.sub-list-item {
    display: none;
    overflow: hidden;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  header .header-inner nav ul.main-list li a span {
    font-family: YakuHanJP, "A+mfCv-TPゴシック L StdN"; } }

header .header-inner nav ul.main-list li.sub-list-item a {
  color: #969696;
  display: block; }

header .header-inner nav ul.main-list li a {
  font-size: 1.4rem; }

header .header-inner nav ul.main-list li a span {
  font-size: 1.7rem; }

header .header-inner nav ul.main-list li span {
  display: block; }

header .header-inner nav ul.main-list li span.en {
  font-size: 2.4rem; }

header .header-inner nav a.privacy {
  color: #969696;
  position: absolute;
  bottom: 50px;
  right: 60px;
  font-size: 1.5rem; }

@media (max-width: 768px) {
  header .header-inner nav ul.main-list li span {
    display: inline-block; }
  header .header-inner nav a.privacy {
    position: static;
    bottom: auto;
    right: auto;
    margin-bottom: 4rem;
    display: block; }
  header .header-inner nav .catch {
    width: 165px; } }

header .header-inner .header-hamburger {
  width: 50px; }

header .header-inner .hamburger {
  background-color: transparent;
  z-index: 9999;
  cursor: pointer;
  padding: 0;
  margin: 0;
  border: none; }

.news-contents-wrapper .news-list .item,
.projects_column-container .inner .company-wrapper table tr:first-of-type {
  border-top: 1px solid #c8c8c8; }

header .header-inner .hamburger span {
  width: 50px;
  height: 1px;
  background-color: #000;
  position: relative;
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
  display: block; }

header .header-inner .hamburger span:nth-child(1) {
  top: 0; }

header .header-inner .hamburger span:nth-child(2) {
  margin: 8px 0 0; }

header .header-inner .hamburger.active span {
  background-color: #fff; }

header .header-inner .hamburger.active span:nth-child(1) {
  top: 5px;
  -webkit-transform: rotate(15deg);
  transform: rotate(15deg); }

header .header-inner .hamburger.active span:nth-child(2) {
  top: -5px;
  -webkit-transform: rotate(-15deg);
  transform: rotate(-15deg); }

.navbox-mask {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 2s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 2s cubic-bezier(0.22, 1, 0.36, 1);
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 998;
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.85)), to(rgba(0, 0, 0, 0.85))), url(../images/hamburger_bg.png);
  background-image: linear-gradient(rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.85)), url(../images/hamburger_bg.png);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto 100vh; }

.navbox-mask.active {
  opacity: 1;
  visibility: visible; }

@media (max-width: 768px) {
  .navbox-mask.active {
    display: none; } }

.navbox-mask.active .catch {
  position: absolute;
  left: 60px;
  bottom: 50px;
  opacity: 1 !important;
  width: 210px; }

.navbox-mask.active .catch img {
  vertical-align: middle; }

.catch,
.privacy,
.slidein {
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px); }

#header-lock-point {
  position: relative;
  top: 0;
  height: 0; }

.news-contents-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 110px;
  -moz-column-gap: 110px;
  column-gap: 110px;
  margin-bottom: 6.5rem; }

@media (max-width: 768px) {
  .news-contents-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 5.5rem; } }

.news-contents-wrapper .news-list {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1; }

.news-contents-wrapper .news-list .item:last-of-type {
  border-bottom: 1px solid #c8c8c8; }

.news-contents-wrapper .news-list .item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 36px;
  -moz-column-gap: 36px;
  column-gap: 36px;
  padding: 4rem 4.2rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  position: relative; }

.news-contents-wrapper .news-list .item a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #e0dfda;
  -webkit-transition: width 0.4s ease;
  transition: width 0.4s ease;
  z-index: 0; }

.news-contents-wrapper .news-list .item a:hover {
  opacity: 1; }

.news-contents-wrapper .news-list .item a:hover::before {
  width: 100%; }

.news-contents-wrapper .news-list .item a > * {
  position: relative;
  z-index: 1; }

.news-contents-wrapper .news-list .item .img-wrap {
  width: 180px; }

@media (max-width: 768px) {
  .news-contents-wrapper .news-list .item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 3rem 2rem; }
  .news-contents-wrapper .news-list .item .img-wrap {
    width: 100%;
    margin-bottom: 2.4rem; } }

.news-contents-wrapper .news-list .item .img-wrap .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 72.222%; }

.news-contents-wrapper .news-list .item .img-wrap .trimming::before {
  content: "";
  display: block; }

.news-contents-wrapper .news-list .item .img-wrap .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px; }

.news-contents-wrapper .news-list .item .textarea {
  width: calc(100% - 180px); }

.news-contents-wrapper .news-list .item .textarea p {
  line-height: 1.875;
  margin-bottom: 0.5rem; }

@media (max-width: 768px) {
  .news-contents-wrapper .news-list .item .textarea {
    width: 100%; }
  .news-contents-wrapper .news-list .item .textarea p {
    margin-bottom: 1rem; } }

.news-contents-wrapper .news-list .item .textarea p.date {
  font-size: 1.5rem;
  margin-bottom: 0; }

.news-container .inner {
  max-width: 1390px;
  margin: 0 auto;
  padding: 0 4.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 110px;
  -moz-column-gap: 110px;
  column-gap: 110px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }

.news-container .inner .news-contents-wrapper {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-bottom: 0; }

.news-container .pagination-wrapper {
  margin-top: 17rem; }

footer {
  background-color: #323232;
  padding: 9rem 6rem 4rem;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

footer img.logo {
  width: 194px;
  margin-bottom: 4rem; }

footer img.arrow {
  width: 50px;
  position: absolute;
  top: 90px;
  right: 60px; }

@media (max-width: 768px) {
  .news-container .inner {
    display: block; }
  .news-container .pagination-wrapper {
    margin-top: 7rem; }
  footer {
    padding: 7.5rem 4rem 4rem; }
  footer img.arrow {
    position: static;
    top: auto;
    right: auto;
    margin: 0 auto 4rem;
    display: block; } }

footer .flex-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 6rem; }

@media (max-width: 768px) {
  footer .flex-wrap {
    display: block; }
  footer .flex-wrap .textarea {
    margin-bottom: 5rem; } }

footer .flex-wrap .textarea p.address {
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.86;
  margin-bottom: 2.2rem; }

footer .flex-wrap .textarea a {
  color: #969696;
  font-size: 1.5rem; }

footer nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 13rem;
  -moz-column-gap: 13rem;
  column-gap: 13rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

@media (max-width: 768px) {
  footer .flex-wrap .textarea p.address {
    margin-bottom: 1rem; }
  footer nav {
    display: block;
    margin-bottom: 7rem; }
  footer nav ul.main-list {
    margin-bottom: 3.5rem; }
  footer nav ul.main-list:last-of-type {
    margin-bottom: 0; } }

footer nav ul.main-list li {
  line-height: 2; }

footer nav ul.main-list li.main-list-item {
  border-left: 1px solid #fff;
  padding-left: 2.5rem;
  margin-bottom: 3.5rem; }

footer nav ul.main-list li.main-list-item a {
  color: #fff;
  font-size: 2rem; }

footer nav ul.main-list li.main-list-item a span {
  font-size: 1.5rem; }

@media (max-width: 768px) {
  footer nav ul.main-list li.main-list-item {
    border-left: none;
    border-bottom: 1px solid #fff;
    padding-left: 0;
    padding-bottom: 1rem;
    margin-bottom: 2.5rem; }
  footer nav ul.main-list li.main-list-item a span {
    margin-left: 1.2rem; } }

footer nav ul.main-list li.sub-list-item {
  margin-bottom: 1.3rem;
  padding-left: 2.5rem; }

footer nav ul.main-list li.sub-list-item a {
  color: #969696;
  font-size: 1.4rem;
  display: block; }

@media (max-width: 768px) {
  footer nav ul.main-list li.sub-list-item {
    padding-left: 0; }
  footer nav ul.main-list li.sub-list-item:last-of-type {
    margin-bottom: 0; }
  footer nav ul.main-list li.sub-list-item a {
    font-size: 2rem;
    margin-bottom: 1rem; }
  footer nav ul.main-list li.sub-list-item a span {
    display: block; } }

footer nav ul.main-list li.sub-list-item a span {
  font-size: 1.5rem; }

footer nav ul.main-list li span {
  display: block; }

@media (max-width: 768px) {
  footer nav ul.main-list li span {
    display: inline-block; } }

footer .footer-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  color: #787878;
  line-height: 1;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end; }

footer .footer-text p.eng {
  font-size: 5.5rem;
  font-family: YakuHanJP, "A+mfCv-TPゴシック UL StdN";
  line-height: 100%; }

@media (max-width: 768px) {
  footer .footer-text {
    display: block;
    text-align: center; }
  footer .footer-text p.eng {
    margin-bottom: 2rem; } }

footer .footer-text p.copyright {
  font-size: 1.2rem; }

.common_contact-container {
  position: relative;
  overflow: hidden;
  z-index: 0;
  max-width: 1160px;
  margin: 0 auto 6rem;
  border-radius: 15px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.common_contact-container::after,
.common_contact-container::before {
  position: absolute;
  inset: 0;
  content: ""; }

.common_contact-container::after {
  background-image: url(../images/contact_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right center;
  -webkit-transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: scale(1);
  transform: scale(1);
  z-index: 0; }

.common_contact-container::before {
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1; }

.common_contact-container:has(a:hover)::after {
  -webkit-transform: scale(1.15);
  transform: scale(1.15); }

.common_contact-container a {
  position: relative;
  z-index: 2;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 12.5rem 13.5rem 13.5rem 11rem;
  display: block;
  cursor: pointer; }

.common_contact-container a .flex {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.common_contact-container a .textarea {
  color: #fff; }

@media (max-width: 768px) {
  .common_contact-container {
    margin: 0 2.5rem 2.5rem; }
  .common_contact-container::after {
    background-image: url(../images/contact_bg_sp.png); }
  .common_contact-container:has(a:hover)::after {
    -webkit-transform: scale(1);
    transform: scale(1); }
  .common_contact-container a {
    padding: 10rem 2rem; }
  .common_contact-container a .flex {
    display: block;
    text-align: center; }
  .common_contact-container a .textarea p {
    margin-bottom: 6rem;
    text-align: center;
    line-height: 1.86; } }

.common_contact-container a .textarea p.contact-ttl {
  font-size: 4.4rem;
  line-height: 1;
  margin-bottom: 6rem; }

@media (max-width: 768px) {
  .common_contact-container a .textarea p.contact-ttl {
    text-align: center;
    font-size: 3.2rem;
    margin-bottom: 7rem; } }

.common_contact-container a .textarea p.contact-ttl span {
  font-size: 1.8rem;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

.common_contact-container a .btn {
  display: inline-block;
  border: 1px solid #fff;
  border-radius: 100px;
  padding: 1.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 175px;
  height: 45px;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  line-height: 45px; }

@media (max-width: 768px) {
  .common_contact-container a .textarea p.contact-ttl span {
    font-size: 1.6rem;
    margin-top: 0.5rem; }
  .common_contact-container a .btn {
    margin: 0 auto;
    padding: 1.5rem 4rem; } }

.common_contact-container a .btn span.text {
  position: absolute;
  left: 0;
  display: block;
  height: 100%;
  width: 100%;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.common_contact-container a .btn span.text:nth-child(1) {
  bottom: 0; }

.common_contact-container a .btn span.text:nth-child(2) {
  bottom: -100%; }

.common_contact-container a:hover .btn {
  border: 1px solid #000;
  opacity: 1;
  background-color: #000; }

.common_contact-container a:hover .btn span.text:nth-child(1) {
  bottom: 100%; }

.common_contact-container a:hover .btn span.text:nth-child(2) {
  bottom: 0; }

@media (max-width: 768px) {
  .common_contact-container a:hover .btn {
    border: 1px solid #fff;
    background-color: transparent; }
  .common_contact-container a:hover .btn span.text:nth-child(1) {
    bottom: 0; }
  .common_contact-container a:hover .btn span.text:nth-child(2) {
    bottom: -100%; } }

.confirm-container .text-block {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  background-color: #dbdad6;
  padding: 9rem 2rem;
  border-radius: 5px; }

.confirm-container .text-block p {
  text-align: center;
  font-size: 2rem;
  line-height: 1.5; }

@media (max-width: 768px) {
  .confirm-container .text-block {
    border-radius: 0; }
  .confirm-container .text-block p {
    font-size: 1.8rem; } }

.confirm-container .text-block p span {
  display: block;
  line-height: 2;
  font-size: 1.5rem;
  margin-top: 1.5rem; }

.contact-container .inner {
  max-width: 800px;
  margin: 0 auto;
  background-color: #dbdad6;
  padding: 8.5rem 7rem;
  border-radius: 5px; }

@media (max-width: 768px) {
  .contact-container .inner {
    padding: 6rem 4rem 12rem; } }

.contact-container .inner p.read {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.875;
  border-bottom: 1px solid #c8c8c8;
  padding-bottom: 6rem;
  margin-bottom: 7.5rem; }

@media (max-width: 768px) {
  .contact-container .inner p.read {
    padding-bottom: 5rem;
    margin-bottom: 5rem; } }

.contact-container .form {
  margin-top: 80px;
  margin-left: auto;
  margin-right: auto;
  max-width: 720px; }

.contact-container .form .item {
  margin-bottom: 4rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.contact-container .form .item p {
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  width: 9em; }

@media (max-width: 768px) {
  .contact-container .form .item {
    display: block; }
  .contact-container .form .item p {
    text-align: center;
    margin-bottom: 2.5rem;
    width: 100%; } }

.contact-container .form .item p span {
  display: inline-block;
  text-align: center;
  margin-left: 0.5rem; }

.contact-container .form .item p span.must {
  width: auto !important; }

.contact-container .form .item input[type="email"],
.contact-container .form .item input[type="tel"],
.contact-container .form .item input[type="text"] {
  border: 1px solid #ddd;
  border-radius: 5px;
  padding-left: 1em;
  padding-right: 1em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 50px;
  width: 430px;
  background: #f0f0f0; }

@media (max-width: 768px) {
  .contact-container .form .item input[type="email"],
  .contact-container .form .item input[type="tel"],
  .contact-container .form .item input[type="text"] {
    width: 100%; } }

.contact-container .form .item textarea {
  border: 1px solid #ddd;
  border-radius: 5px;
  padding-left: 1em;
  padding-right: 1em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 200px;
  width: 430px;
  background: #f0f0f0; }

@media (max-width: 768px) {
  .contact-container .form .item textarea {
    margin-left: 0;
    width: 100%; } }

.contact-container .form .item .checkboxItem {
  line-height: 1;
  cursor: pointer; }

.contact-container .form .item .checkboxItem label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 4px;
  -moz-column-gap: 4px;
  column-gap: 4px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

.contact-container .form .item .checkbox {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  width: 26px;
  height: 26px;
  border-radius: 5px;
  background-color: #f0f0f0;
  cursor: pointer; }

.contact-container .form .item .checkbox:checked::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 6px;
  width: 12px;
  height: 6px;
  border-bottom: 2px solid #565656;
  border-left: 2px solid #565656;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.contact-container .form .item a {
  text-decoration: underline; }

.contact-container .form .item.item-checkbox {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-bottom: 10rem; }

.contact-container .form .item.item-checkbox > div {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  max-width: 430px; }

@media (max-width: 768px) {
  .contact-container .form .item.item-checkbox {
    margin-bottom: 8rem; }
  .contact-container .form .item.item-checkbox > div {
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }

.contact-container .form .item select {
  width: 430px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 5px;
  background-image: url(../images/form_arrow.png);
  background-repeat: no-repeat;
  background-size: 15.5px auto;
  background-position: right 20px center;
  background-color: #f0f0f0;
  height: 50px;
  border: none;
  cursor: pointer;
  padding: 0 1em; }

.contact-container .form .item select::-ms-expand {
  display: none; }

@media (max-width: 768px) {
  .contact-container .form .item select {
    width: 100%; } }

.contact-container .form input[type="submit"] {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  padding: 1.5rem 0;
  width: 150px;
  display: block;
  font-size: 1.5rem;
  background-color: transparent;
  border: 1px solid #000;
  border-radius: 100px;
  line-height: 1;
  margin: 0 auto; }

.bg-contents-wrapper {
  width: 100%;
  height: 0;
  padding-top: 65%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
  margin-bottom: 18rem; }

@media (max-width: 768px) {
  .bg-contents-wrapper {
    padding-top: 119%;
    margin-bottom: 0;
    height: auto;
    background-size: auto 100%; } }

.mask-textarea {
  background-color: #ecebe6;
  padding: 4.6rem 3.7rem;
  position: absolute;
  bottom: 70px;
  right: 60px;
  max-width: 710px;
  border-radius: 5px; }

@media (max-width: 768px) {
  .mask-textarea {
    position: static;
    bottom: auto;
    right: auto;
    padding: 4rem 4.5rem;
    margin-bottom: 8rem; } }

.mask-textarea p {
  line-height: 2.125em; }

.mask-textarea .fade-line {
  position: relative;
  display: block;
  opacity: 1;
  overflow: hidden;
  line-height: 2.125; }

.mask-textarea .fade-line .mask {
  content: "";
  position: absolute;
  top: -10%;
  left: 0;
  width: 100%;
  height: 140%;
  background-color: #ecebe6;
  z-index: 2;
  -webkit-transform: translateY(0);
  transform: translateY(0); }

.mask-textarea .fade-line.read {
  font-size: 3.6rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
  font-family: YakuHanJP, "A+mfCv-TPゴシック L StdN";
  letter-spacing: 0.02em; }

.knowledge-wrapper .ttl-block .fade-line span,
.mask-textarea .fade-line.border,
.mask-textarea .fade-line.left,
.slider-wrapper .read-block p:last-of-type,
.slider-wrapper .slide-block .item .textarea {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

.mask-textarea .fade-line.border {
  display: inline-block;
  letter-spacing: 0.07em;
  margin-bottom: 1.5rem;
  line-height: 1;
  border-bottom: 1px solid transparent;
  padding-bottom: 0.4rem; }

@media (max-width: 768px) {
  .mask-textarea .fade-line.read {
    font-size: 3rem;
    white-space: nowrap; }
  .mask-textarea .fade-line.border {
    font-size: 1.8rem;
    margin-bottom: 4rem; } }

.mask-textarea .fade-line.left {
  text-align: left;
  letter-spacing: 0.07em;
  line-height: 2.125; }

.slider-wrapper {
  padding-left: 14rem;
  margin-bottom: 12rem;
  position: relative; }

@media (max-width: 768px) {
  .slider-wrapper {
    padding-left: 5rem;
    margin-bottom: 8rem; } }

.slider-wrapper:hover .slick-arrow-custom {
  opacity: 1;
  pointer-events: auto; }

.slider-wrapper .read-block {
  border-left: 1px solid #000;
  padding: 1rem 0 1rem 3rem;
  margin-bottom: 4rem; }

.slider-wrapper .read-block .fade-line {
  position: relative;
  display: inline-block;
  overflow: hidden; }

.slider-wrapper .read-block .fade-line .mask {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background: #e5e4e0;
  z-index: 2;
  -webkit-transform: translateY(0);
  transform: translateY(0); }

.slider-wrapper .read-block .eng {
  font-size: 3.8rem;
  line-height: 1.5; }

@media (max-width: 768px) {
  .slider-wrapper .read-block {
    border-left: none;
    text-align: center;
    padding: 0 5rem 0 0;
    margin-bottom: 2.8rem; }
  .slider-wrapper .read-block .eng {
    border-bottom: 1px solid #000;
    font-size: 3.2rem;
    margin-bottom: 3rem;
    padding-bottom: 0.8rem; } }

.slider-wrapper .read-block p:last-of-type {
  text-align: left;
  font-size: 1.6rem; }

.slider-wrapper .slide-block {
  cursor: pointer; }

.slider-wrapper .slide-block .item a {
  display: block; }

.slider-wrapper .slide-block .item a .slick-drag {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.slider-wrapper .slide-block .item a:hover {
  opacity: 1; }

.slider-wrapper .slide-block .item a:hover .img-wrap .trimming img {
  -webkit-transform: scale(1.15);
  transform: scale(1.15); }

.slider-wrapper .slide-block .item .img-wrap {
  width: 100%;
  margin-bottom: 2rem;
  border-radius: 5px; }

.slider-wrapper .slide-block .item .img-wrap .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 73.333%;
  border-radius: 5px; }

.slider-wrapper .slide-block .item .img-wrap .trimming::before {
  content: "";
  display: block; }

.slider-wrapper .slide-block .item .img-wrap .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px;
  -webkit-transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1); }

.slider-wrapper .slide-block .item .textarea p.ttl {
  font-size: 1.7rem;
  margin-bottom: 1.5rem;
  line-height: 1.53; }

.slider-wrapper .slide-block .item .textarea p.date {
  font-size: 1.4rem;
  line-height: 1.43; }

.slider-wrapper .slide-block .item .textarea .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  line-height: 1em; }

.slider-wrapper .slide-block .item .textarea .flex p.date {
  font-size: 1.5rem;
  line-height: 1; }

@media (max-width: 768px) {
  .slider-wrapper .slide-block .item .textarea .flex p.date {
    font-size: 1.4rem; } }

.slider-wrapper .slide-block .item .textarea .flex .arrow {
  position: relative;
  display: inline-block;
  width: 13.5px;
  height: 1px;
  margin-top: 2.6px;
  border-radius: 9999px;
  background-color: #000; }

.slider-wrapper .slide-block .item .textarea .flex a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
  font-size: 1.3rem; }

.slider-wrapper .slide-block .item .textarea .flex .arrow::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: 0;
  width: 6px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
  transform-origin: calc(100% - 0.5px) 50%; }

.slider-wrapper .slick-slide {
  margin-right: 40px; }

@media (max-width: 768px) {
  .slider-wrapper .slick-slide {
    margin-right: 30px; } }

.slider-wrapper .slick-track {
  pointer-events: auto !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }

.custom-cursor {
  position: fixed;
  width: 80px;
  height: 80px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 9999;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  pointer-events: none; }

.knowledge-wrapper {
  max-width: 1200px;
  padding: 0 5rem;
  margin: 36rem auto 0; }

.knowledge-wrapper .ttl-block {
  border-bottom: 1px solid #969696;
  padding-bottom: 3rem;
  margin-bottom: 5rem; }

@media (max-width: 768px) {
  .knowledge-wrapper {
    margin-top: 15rem; }
  .knowledge-wrapper .ttl-block {
    text-align: center; } }

.knowledge-wrapper .ttl-block .fade-line {
  position: relative;
  display: inline-block;
  overflow: hidden;
  font-size: 3.2rem;
  line-height: 1.4; }

.knowledge-wrapper .ttl-block .fade-line span {
  display: block;
  font-size: 1.6rem;
  margin-top: 0.5rem; }

.knowledge-wrapper .ttl-block .fade-line .mask {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background: #e5e4e0;
  z-index: 2;
  -webkit-transform: translateY(0);
  transform: translateY(0); }

.knowledge-wrapper .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 50px;
  -moz-column-gap: 50px;
  column-gap: 50px; }

.knowledge-wrapper .flex .item {
  width: calc(100% / 3); }

@media (max-width: 768px) {
  .knowledge-wrapper .flex {
    display: block; }
  .knowledge-wrapper .flex .item {
    width: 100%;
    margin-bottom: 6rem; }
  .knowledge-wrapper .flex .item:last-of-type {
    margin-bottom: 0; } }

.knowledge-wrapper .flex .item a:hover .img-wrap img {
  -webkit-transform: scale(1.15);
  transform: scale(1.15); }

.knowledge-wrapper .flex .item .img-wrap {
  width: 100%;
  margin-bottom: 2rem; }

.knowledge-wrapper .flex .item .img-wrap .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 73.333%;
  border-radius: 5px; }

.knowledge-wrapper .flex .item .img-wrap .trimming::before {
  content: "";
  display: block; }

.knowledge-wrapper .flex .item .img-wrap .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px;
  -webkit-transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1); }

.knowledge-wrapper .flex .item .textarea {
  margin-bottom: 3rem;
  font-family: YakuHanJP, "A+mfCv-TPゴシック L StdN"; }

.knowledge-wrapper .flex .item .btn,
.projects-container .inner .projects-list-wrapper .flex .item p,
.projects-container .inner .projects-list-wrapper p.total,
.projects_column-container .inner .mv-wrapper .ttl-block p,
.projects_det-container .inner .read-block p {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

.knowledge-wrapper .flex .item .textarea p {
  font-size: 1.5rem;
  color: #969696;
  line-height: 1.6; }

.knowledge-wrapper .flex .item .textarea p.read {
  font-size: 1.7rem;
  margin-bottom: 1.2rem;
  color: #000;
  line-height: 1.53; }

.knowledge-wrapper .flex .item .btn-wrapper {
  text-align: center; }

.knowledge-wrapper .flex .item .btn {
  display: inline-block;
  border: 1px solid #000;
  border-radius: 100px;
  padding: 1.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #000;
  text-align: center;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  width: 175px;
  height: 45px;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  line-height: 45px; }

@media (max-width: 768px) {
  .knowledge-wrapper .flex .item .btn {
    margin: 0 auto;
    padding: 1.5rem 4rem; } }

.knowledge-wrapper .flex .item .btn span.text {
  position: absolute;
  left: 0;
  display: block;
  height: 100%;
  width: 100%;
  color: #000;
  font-size: 1.5rem;
  text-align: center;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.knowledge-wrapper .flex .item .btn span.text:nth-child(1) {
  bottom: 0; }

.knowledge-wrapper .flex .item .btn span.text:nth-child(2) {
  bottom: -100%; }

.knowledge-wrapper .flex .item a:hover {
  opacity: 1; }

.knowledge-wrapper .flex .item a:hover .btn {
  border: 1px solid #000;
  opacity: 1;
  background-color: #000; }

.knowledge-wrapper .flex .item a:hover .btn span.text {
  color: #fff; }

.knowledge-wrapper .flex .item a:hover .btn span.text:nth-child(1) {
  bottom: 100%; }

.knowledge-wrapper .flex .item a:hover .btn span.text:nth-child(2) {
  bottom: 0; }

.projects-container .sub-menu {
  position: static;
  top: auto; }

.projects-container .inner {
  max-width: 1390px;
  padding: 0 4.5rem;
  margin: 0 auto 13rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 100px;
  -moz-column-gap: 100px;
  column-gap: 100px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }

@media (max-width: 768px) {
  .projects-container .inner {
    display: block;
    margin-bottom: 8rem; }
  .projects-container .inner .projects-list-wrapper p.total {
    text-align: center; } }

.projects-container .inner .projects-list-wrapper {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

.projects-container .inner .projects-list-wrapper p.total {
  margin-bottom: 2rem;
  font-size: 1.5rem;
  line-height: 1; }

.projects-container .inner .projects-list-wrapper .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 45px;
  -moz-column-gap: 45px;
  column-gap: 45px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%; }

.projects-container .inner .projects-list-wrapper .flex .item {
  width: calc((100% - 90px) / 3); }

.projects-container
.inner
.projects-list-wrapper
.flex
.item:not(:last-of-type) {
  margin-bottom: 5.4rem; }

@media (max-width: 768px) {
  .projects-container .inner .projects-list-wrapper .flex {
    display: block; }
  .projects-container .inner .projects-list-wrapper .flex .item {
    width: 100%; }
  .projects-container
.inner
.projects-list-wrapper
.flex
.item:not(:last-of-type) {
    margin-bottom: 3.6rem; } }

.projects-container
.inner
.projects-list-wrapper
.flex
.item:nth-last-child(-n + 3) {
  margin-bottom: 0; }

.projects-container .inner .projects-list-wrapper .flex .item a {
  display: block; }

.projects-container .inner .projects-list-wrapper .flex .item a:hover {
  opacity: 1; }

.projects-container .inner .projects-list-wrapper .flex .item a:hover img {
  -webkit-transform: scale(1.15);
  transform: scale(1.15); }

.projects-container .inner .projects-list-wrapper .flex .item .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 66.6%;
  margin-bottom: 1.5rem;
  border-radius: 5px; }

.projects-container
.inner
.projects-list-wrapper
.flex
.item
.trimming
.item
.trimming {
  opacity: 0 !important;
  -webkit-transform: scale(1.1) translateY(30px) !important;
  transform: scale(1.1) translateY(30px) !important; }

.projects-container
.inner
.projects-list-wrapper
.flex
.item
.trimming::before {
  content: "";
  display: block; }

.projects-container .inner .projects-list-wrapper .flex .item .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px;
  -webkit-transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 1.2s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1.2s cubic-bezier(0.19, 1, 0.22, 1); }

.projects-container .inner .projects-list-wrapper .flex .item p.border {
  display: inline-block;
  border-bottom: 1px solid #000;
  font-size: 1.5rem;
  margin-bottom: 1.5rem; }

.projects-container .inner .projects-list-wrapper .flex .item p.ttl {
  font-size: 1.7rem;
  line-height: 1.53;
  margin-bottom: 1.5rem; }

.projects-container .inner .projects-list-wrapper .flex .item p.date {
  font-size: 1.4rem;
  line-height: 1; }

.projects-container .inner .projects-list-wrapper .flex .item .txt-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.projects-container .inner .projects-list-wrapper .flex .item .txt-flex .arrow {
  position: relative;
  display: inline-block;
  width: 13.5px;
  height: 1px;
  margin-top: 2.6px;
  border-radius: 9999px;
  background-color: #000; }

.projects-container
.inner
.projects-list-wrapper
.flex
.item
.txt-flex
.viewmore {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 8px;
  -moz-column-gap: 8px;
  column-gap: 8px;
  font-size: 1.3rem; }

.projects-container
.inner
.projects-list-wrapper
.flex
.item
.txt-flex
.arrow::before {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: 0;
  width: 6px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
  transform-origin: calc(100% - 0.5px) 50%; }

@media (max-width: 768px) {
  .projects-container .projects-nav-accordion-inner ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-column-gap: 3rem;
    -moz-column-gap: 3rem;
    column-gap: 3rem; }
  .projects-container .projects-nav-accordion-inner ul li {
    width: calc(50% - 1.5rem);
    margin-bottom: 1.5rem; } }

.projects-container .three-columns-wrapper p.text {
  margin-bottom: 0; }

.projects_det-container .inner {
  max-width: 1190px;
  padding: 0 4.5rem;
  margin: 0 auto; }

.projects_det-container .inner .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 54.4%;
  margin-bottom: 5rem; }

@media (max-width: 768px) {
  .projects_det-container .inner .trimming {
    padding-top: 73.3%;
    margin-bottom: 3rem; } }

.projects_det-container .inner .trimming::before {
  content: "";
  display: block; }

.projects_det-container .inner .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px; }

.projects_det-container .inner .read-block {
  margin-bottom: 15rem; }

@media (max-width: 768px) {
  .projects_det-container .inner .read-block {
    margin-bottom: 8rem; } }

.projects_det-container .inner .read-block .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 2.2rem; }

@media (max-width: 768px) {
  .projects_det-container .inner .read-block .flex {
    margin-bottom: 1.8rem;
    display: block; } }

.projects_det-container .inner .read-block p.border {
  border-bottom: 1px solid #000;
  display: inline-block;
  margin-bottom: 2.4rem; }

.projects_det-container .inner .read-block p.ttl {
  font-size: 2rem;
  line-height: 1.7; }

@media (max-width: 768px) {
  .projects_det-container .inner .read-block p.ttl {
    font-size: 1.8rem;
    margin-bottom: 2.2rem; } }

.projects_det-container .inner .read-block p.category {
  font-size: 1.5rem;
  padding: 0 1.6rem;
  border-right: 1px solid #000;
  border-left: 1px solid #000;
  line-height: 1.3;
  display: inline-block; }

.projects_det-container .inner .read-block p.date {
  font-size: 1.5rem; }

.projects_det-container .inner .flex-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 130px;
  -moz-column-gap: 130px;
  column-gap: 130px;
  margin-bottom: 8rem; }

@media (max-width: 768px) {
  .projects_det-container .inner .flex-wrap {
    display: block;
    margin-bottom: 5rem; } }

.projects_det-container .inner .flex-wrap .category-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 12px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media (max-width: 768px) {
  .projects_det-container .inner .flex-wrap .category-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-column-gap: 16px;
    -moz-column-gap: 16px;
    column-gap: 16px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 3.2rem; }
  .projects_det-container .inner .flex-wrap .category-wrap .multiply {
    margin-top: 0.7rem; } }

.projects_det-container .inner .flex-wrap .category-wrap .tag-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 12px; }

.projects_det-container .inner .flex-wrap .category-wrap p.tag {
  width: 120px;
  font-size: 1.4rem;
  padding: 1rem 0;
  border: 1px solid #000;
  text-align: center;
  line-height: 1;
  border-radius: 50px; }

.projects_det-container .inner .flex-wrap .category-wrap .multiply {
  position: relative;
  width: 20px;
  height: 20px; }

.projects_det-container .inner .flex-wrap .category-wrap .multiply::after,
.projects_det-container .inner .flex-wrap .category-wrap .multiply::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 20px;
  background: #333; }

.projects_det-container .inner .flex-wrap .category-wrap .multiply::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg); }

.projects_det-container .inner .flex-wrap .category-wrap .multiply::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg); }

.projects_det-container .inner .flex-wrap p.text {
  font-size: 1.6rem;
  line-height: 2; }

.projects_det-container .inner .img-wrap {
  background-color: #dbdad6;
  padding: 7rem 6.6rem 3rem;
  border-radius: 5px; }

@media (max-width: 768px) {
  .projects_det-container .inner .img-wrap {
    padding: 2.5rem;
    margin: 0 -2.5rem; } }

.projects_det-container .inner .img-wrap:not(:last-child) {
  margin-bottom: 6rem; }

.projects_det-container .inner .img-wrap img {
  width: 100%; }

.projects_det-container .inner .img-wrap p {
  font-size: 1.5rem;
  margin-top: 1.5rem; }

.projects_det-container .inner .video-wrap {
  background-color: #dbdad6;
  padding: 7rem 6.6rem 3rem;
  border-radius: 5px; }

@media (max-width: 768px) {
  .projects_det-container .inner .img-wrap:not(:last-child) {
    margin-bottom: 2rem; }
  .projects_det-container .inner .video-wrap {
    padding: 2.5rem;
    margin: 0 -2.5rem; } }

.projects_det-container .inner .video-wrap:not(:last-child) {
  margin-bottom: 6rem; }

@media (max-width: 768px) {
  .projects_det-container .inner .video-wrap:not(:last-child) {
    margin-bottom: 2rem; } }

.projects_det-container .inner .video-wrap .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }

.projects_det-container .inner .video-wrap .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%; }

.projects_det-container .inner .video-wrap p {
  font-size: 1.5rem;
  margin-top: 1.5rem; }

.projects_det-container .three-columns-wrapper {
  max-width: 1190px; }

.projects_column-container .inner {
  max-width: 1190px;
  padding: 0 4.5rem;
  margin: 0 auto; }

.projects_column-container .inner .mv-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 10rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 3rem;
  -moz-column-gap: 3rem;
  column-gap: 3rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .mv-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    margin-bottom: 6rem; } }

.projects_column-container .inner .mv-wrapper .ttl-block p.border {
  border-bottom: 1px solid #000;
  display: inline-block;
  margin-bottom: 2.8rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .mv-wrapper .ttl-block p.border {
    margin-bottom: 2rem; } }

.projects_column-container .inner .mv-wrapper .ttl-block p.ttl {
  letter-spacing: 0.07em;
  font-size: 2.4rem;
  line-height: 1.5;
  margin-bottom: 2.8rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .mv-wrapper .ttl-block p.ttl {
    font-size: 1.8rem;
    margin-bottom: 1.5rem; } }

.projects_column-container .inner .mv-wrapper .ttl-block p.date {
  font-size: 1.5rem;
  line-height: 1; }

.projects_column-container .inner .mv-wrapper .img-block {
  border-radius: 5px;
  width: 46.66%; }

.projects_column-container .inner .mv-wrapper .img-block .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 83.3%;
  border-radius: 5px; }

@media (max-width: 768px) {
  .projects_column-container .inner .mv-wrapper .ttl-block p.date {
    font-size: 1.4rem; }
  .projects_column-container .inner .mv-wrapper .img-block {
    width: 100%;
    margin-bottom: 3rem; }
  .projects_column-container .inner .mv-wrapper .img-block .trimming {
    padding-top: 73.3%; } }

.projects_column-container .inner .mv-wrapper .img-block .trimming::before {
  content: "";
  display: block; }

.projects_column-container .inner .mv-wrapper .img-block .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px; }

.projects_column-container .inner .profile-wrapper {
  background-color: #dbdad6;
  padding: 5rem 6rem 6rem;
  margin-bottom: 15rem;
  border-radius: 5px; }

.projects_column-container .inner .profile-wrapper .contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 40px;
  -moz-column-gap: 40px;
  column-gap: 40px; }

@media (max-width: 768px) {
  .projects_column-container .inner .profile-wrapper {
    padding: 4rem 3rem;
    margin-bottom: 10rem; }
  .projects_column-container .inner .profile-wrapper .contents {
    display: block; } }

.projects_column-container
.inner
.profile-wrapper
.contents:not(:last-of-type) {
  margin-bottom: 5.5rem; }

.projects_column-container .inner .profile-wrapper .contents .img-block {
  max-width: 120px;
  width: 100%; }

@media (max-width: 768px) {
  .projects_column-container
.inner
.profile-wrapper
.contents:not(:last-of-type) {
    margin-bottom: 5rem; }
  .projects_column-container .inner .profile-wrapper .contents .img-block {
    display: block;
    margin: 0 auto 2.5rem; } }

.projects_column-container
.inner
.profile-wrapper
.contents
.img-block
.trimming {
  overflow: hidden;
  position: relative;
  padding-top: 100%;
  border-radius: 500px; }

.projects_column-container
.inner
.profile-wrapper
.contents
.img-block
.trimming::before {
  content: "";
  display: block; }

.projects_column-container
.inner
.profile-wrapper
.contents
.img-block
.trimming
img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 500px; }

.projects_column-container .inner .profile-wrapper .contents .text-block {
  padding-top: 1rem; }

.projects_column-container .inner .profile-wrapper .contents .text-block p {
  letter-spacing: 0.07em; }

.projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.department {
  font-family: YakuHanJP, "A+mfCv-TPゴシック L StdN";
  margin-bottom: 0.5rem;
  line-height: 1.875;
  font-size: 1.6rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .profile-wrapper .contents .text-block {
    padding-top: 0; }
  .projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.department {
    margin-bottom: 1rem; } }

.projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.department
span {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  display: block;
  margin-bottom: 0.4rem; }

.projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.name {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  font-size: 2rem;
  margin-bottom: 3rem; }

.projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.name
span {
  font-size: 1.6rem;
  margin-left: 1.2rem; }

@media (max-width: 768px) {
  .projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.name {
    margin-bottom: 2rem; }
  .projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.name
span {
    margin-left: 0;
    display: block; } }

.projects_column-container
.inner
.profile-wrapper
.contents
.text-block
p.text {
  font-size: 1.5rem;
  line-height: 2.13; }

.projects_column-container .inner .column-wrapper .contents {
  margin: 0 0 15rem auto;
  width: 72.2%; }

@media (max-width: 768px) {
  .projects_column-container .inner .column-wrapper .contents {
    width: 100%;
    margin-bottom: 10rem; } }

.projects_column-container .inner .column-wrapper .contents:nth-of-type(2n) {
  margin: 0 auto 15rem 0; }

@media (max-width: 768px) {
  .projects_column-container .inner .column-wrapper .contents:nth-of-type(2n) {
    margin-bottom: 10rem; } }

.projects_column-container .inner .column-wrapper .contents p {
  letter-spacing: 0.05em; }

.projects_column-container .inner .column-wrapper .contents p.ttl {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  font-size: 2rem;
  line-height: 1.8;
  border-left: 1px solid #000;
  padding: 0.7rem 0 0.7rem 3rem;
  margin-bottom: 4rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .column-wrapper .contents p.ttl {
    font-size: 1.8rem;
    padding: 0.4rem 0 0.4rem 2.2rem;
    margin-bottom: 3rem; } }

.projects_column-container .inner .column-wrapper .contents p.text {
  font-size: 1.5rem;
  line-height: 2.13; }

.projects_column-container .inner .column-wrapper .contents a {
  word-break: break-all;
  text-decoration: underline; }

.projects_column-container .inner .column-wrapper .contents .img-block {
  background-color: #dbdad6;
  padding: 4rem 4.5rem;
  margin-top: 6rem;
  border-radius: 5px; }

@media (max-width: 768px) {
  .projects_column-container .inner .column-wrapper .contents .img-block {
    margin-top: 3rem;
    padding: 3rem; } }

.projects_column-container .inner .column-wrapper .contents .img-block img {
  width: 100%; }

.projects_column-container .inner .column-wrapper .contents .img-block p {
  font-size: 1.5rem;
  line-height: 1;
  margin-top: 1.5rem; }

.projects_column-container .inner .column-wrapper .contents.full {
  width: 100%; }

.projects_column-container .inner .column-wrapper .contents.full img {
  border-radius: 5px;
  margin: 0 auto 7rem;
  display: block; }

@media (max-width: 768px) {
  .projects_column-container .inner .column-wrapper .contents.full img {
    margin-bottom: 4rem; } }

.projects_column-container .inner .column-wrapper .contents.full p {
  max-width: 650px;
  width: 100%;
  margin: 0 auto; }

.projects_column-container .inner .column-wrapper .contents.full p.right {
  text-align: right;
  font-size: 1.4rem;
  margin-top: 1.2rem; }

.projects_column-container .inner .company-wrapper {
  background-color: #dbdad6;
  padding: 5rem 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 35px;
  -moz-column-gap: 35px;
  column-gap: 35px;
  border-radius: 5px; }

.projects_column-container .inner .company-wrapper .img-block {
  border-radius: 5px;
  max-width: 240px;
  width: 100%;
  margin-right: 3rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .column-wrapper .contents.full p.right {
    text-align: left; }
  .projects_column-container .inner .company-wrapper {
    display: block;
    padding: 3rem; }
  .projects_column-container .inner .company-wrapper .img-block {
    margin-bottom: 3rem; } }

.projects_column-container .inner .company-wrapper .img-block .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 112.5%; }

@media (max-width: 768px) {
  .projects_column-container .inner .company-wrapper .img-block .trimming {
    padding-top: 100%; } }

.projects_column-container
.inner
.company-wrapper
.img-block
.trimming::before {
  content: "";
  display: block; }

.projects_column-container .inner .company-wrapper .img-block .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px; }

.projects_column-container .inner .company-wrapper table {
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  line-height: 1.33; }

.projects_column-container .inner .company-wrapper table tr {
  border-bottom: 1px solid #c8c8c8; }

.projects_column-container .inner .company-wrapper table tr th {
  border-right: 1px solid #c8c8c8;
  padding: 1.5rem 2rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center; }

@media (max-width: 768px) {
  .projects_column-container .inner .company-wrapper table tr th {
    display: block;
    text-align: left;
    padding: 2rem 0 0;
    border-right: none;
    margin-bottom: 0.5rem; } }

.projects_column-container .inner .company-wrapper table tr td {
  padding: 1.5rem 3rem; }

@media (max-width: 768px) {
  .projects_column-container .inner .company-wrapper table tr td {
    display: block;
    padding: 0 0 2rem; } }

.projects_column-container .inner .company-wrapper table a {
  text-decoration: underline; }

.member-container .mask-title {
  margin-bottom: 0; }

.member-container .inner {
  max-width: 1390px;
  padding: 0 4.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 9rem;
  -moz-column-gap: 9rem;
  column-gap: 9rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin: 6.4rem auto 0; }

@media (max-width: 768px) {
  .member-container .inner {
    margin-top: 0; }
  .member-container .inner .sub-menu {
    display: none; } }

.member-container .inner .sub-menu {
  margin-top: 8.6rem; }

.member-container .inner .flex-wrapper {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

.member-container .inner .contents-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4.5rem;
  -moz-column-gap: 4.5rem;
  column-gap: 4.5rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.member-container .inner .contents-wrapper .contents-ttl {
  width: 110px;
  border-bottom: 1px solid #000;
  padding-bottom: 0.8rem;
  line-height: 1;
  font-size: 1.5rem;
  margin: 0 -2rem 5rem; }

@media (max-width: 768px) {
  .member-container .inner .contents-wrapper {
    display: block;
    padding-top: 11rem; }
  .member-container .inner .contents-wrapper .contents-ttl {
    margin-bottom: 0; }
  .member-container .inner .contents-wrapper .contents-ttl:not(:first-of-type) {
    margin-top: 12rem; } }

.member-container .inner .contents-wrapper .unchor-box {
  width: 100%;
  height: 1px; }

.member-container .inner .contents-wrapper .unchor-box#member_strategy {
  padding-top: 8.6rem; }

.member-container .inner .contents-wrapper .item {
  width: calc((100% - 9rem) / 3); }

@media (max-width: 768px) {
  .member-container .inner .contents-wrapper .unchor-box#member_strategy {
    padding-top: 0; }
  .member-container .inner .contents-wrapper .item {
    width: 100%; } }

.member-container .inner .contents-wrapper .item:not(:last-of-type) {
  padding-top: 14.5rem; }

@media (max-width: 768px) {
  .member-container .inner .contents-wrapper .item:not(:last-of-type) {
    padding-top: 5rem !important; }
  .member-container .inner .contents-wrapper .item.empty-box {
    padding-top: 0 !important; } }

.member-container .inner .contents-wrapper .item.is-first-row {
  padding-top: 0 !important; }

@media (max-width: 768px) {
  .member-container .inner .contents-wrapper .item.is-first-row {
    padding-top: 5rem !important; } }

.member-container .inner .contents-wrapper .item .trimming {
  overflow: hidden;
  position: relative;
  padding-top: 86.274%;
  margin-bottom: 2.2rem;
  opacity: 0;
  -webkit-transform: scale(1.1) translateY(30px);
  transform: scale(1.1) translateY(30px); }

@media (max-width: 768px) {
  .member-container .inner .contents-wrapper .item .trimming {
    margin-bottom: 1.8rem; } }

.member-container .inner .contents-wrapper .item .trimming::before {
  content: "";
  display: block; }

.member-container .inner .contents-wrapper .item .trimming img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px; }

.member-container .inner .contents-wrapper .item .textarea p {
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  line-height: 1; }

.member-container .inner .contents-wrapper .item .textarea p.position {
  margin-bottom: 1.4rem;
  font-size: 1.6rem; }

.member-container .inner .contents-wrapper .item .textarea p.name {
  font-size: 2.2rem;
  margin-bottom: 2.2rem; }

@media (max-width: 768px) {
  .member-container .inner .contents-wrapper .item .textarea p.name {
    margin-bottom: 1.8rem; } }

.member-container .inner .contents-wrapper .item .textarea p.name span {
  display: block;
  font-size: 1.4rem;
  margin-top: 1.4rem; }

.member-container .inner .contents-wrapper .item .textarea p.profile {
  color: #969696;
  line-height: 1.75;
  padding-left: 1.5rem;
  border-left: 1px solid #969696;
  font-size: 1.6rem;
  font-family: YakuHanJP, "A+mfCv-TPゴシック L StdN"; }

.overview-container .mask-title {
  margin-bottom: 0; }

.overview-container .inner {
  max-width: 1390px;
  padding: 0 4.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 9rem;
  -moz-column-gap: 9rem;
  column-gap: 9rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin: 6.4rem auto 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

@media (max-width: 768px) {
  .overview-container .inner {
    margin-top: 0; }
  .overview-container .inner .sub-menu {
    display: none; } }

.overview-container .inner .sub-menu {
  margin-top: 8.6rem; }

.overview-container .inner .flex-wrapper {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  max-width: 850px; }

.overview-container .inner .flex-wrapper .contents-block {
  padding-top: 8.6rem; }

.overview-container .inner .flex-wrapper .contents-block:not(:last-of-type) {
  margin-bottom: 6.4rem; }

@media (max-width: 768px) {
  .overview-container .inner .flex-wrapper .contents-block {
    padding-top: 10rem; }
  .overview-container .inner .flex-wrapper .contents-block:not(:last-of-type) {
    margin-bottom: 0; } }

.overview-container .inner .flex-wrapper .contents-block .contents-ttl {
  width: 110px;
  border-bottom: 1px solid #000;
  padding-bottom: 0.8rem;
  line-height: 1;
  font-size: 1.5rem;
  margin: 0 -2rem 5rem; }

.overview-container .inner .flex-wrapper .contents-block table {
  width: 100%;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN";
  line-height: 1.75;
  font-size: 1.6rem; }

.overview-container .inner .flex-wrapper .contents-block table tr {
  border-top: 1px solid #969696; }

.overview-container .inner .flex-wrapper .contents-block table tr:last-of-type {
  border-bottom: 1px solid #969696; }

.overview-container .inner .flex-wrapper .contents-block table tr td,
.overview-container .inner .flex-wrapper .contents-block table tr th {
  padding-top: 4rem;
  padding-bottom: 4rem; }

.overview-container .inner .flex-wrapper .contents-block table tr th {
  border-right: 1px solid #969696;
  text-align: center;
  width: 23%;
  vertical-align: middle; }

@media (max-width: 768px) {
  .overview-container .inner .flex-wrapper .contents-block table tr {
    border-bottom: 1px solid #969696; }
  .overview-container
.inner
.flex-wrapper
.contents-block
table
tr:last-of-type {
    border-bottom: none; }
  .overview-container .inner .flex-wrapper .contents-block table tr td,
  .overview-container .inner .flex-wrapper .contents-block table tr th {
    display: block;
    text-align: center;
    padding: 0; }
  .overview-container .inner .flex-wrapper .contents-block table tr th {
    width: 100%;
    border-right: none;
    padding: 2.5rem 0 0; } }

.overview-container .inner .flex-wrapper .contents-block table tr td {
  padding-left: 5rem;
  padding-right: 4rem;
  width: 77%; }

.overview-container .inner .flex-wrapper .contents-block span.text {
  font-size: 1.5rem;
  display: block;
  margin-top: 1rem;
  line-height: 1.73; }

.overview-container .inner .flex-wrapper .contents-block .map-wrap {
  margin-top: 3rem; }

@media (max-width: 768px) {
  .overview-container .inner .flex-wrapper .contents-block table tr td {
    width: 100%;
    padding: 1rem 0 2.5rem; }
  .overview-container .inner .flex-wrapper .contents-block .map-wrap {
    margin-top: 4.5rem;
    position: relative;
    left: -4.5rem;
    width: calc(100% + 9rem); } }

.overview-container .inner .flex-wrapper .contents-block .g-map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 72%; }

.overview-container .inner .flex-wrapper .contents-block .g-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.overview-container .inner .flex-wrapper .contents-block img {
  width: 100%;
  border-radius: 5px;
  display: block; }

.overview-container
.inner
.flex-wrapper
.contents-block
img:not(:last-of-type) {
  margin-bottom: 4.8rem; }

@media (max-width: 768px) {
  .overview-container
.inner
.flex-wrapper
.contents-block
img:not(:last-of-type) {
    margin-bottom: 3rem; } }

.philosophy-container .mask-title {
  margin-bottom: 0; }

.philosophy-container .inner {
  max-width: 1390px;
  padding: 0 4.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 12rem;
  -moz-column-gap: 12rem;
  column-gap: 12rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin: 6.4rem auto 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

@media (max-width: 768px) {
  .philosophy-container .inner {
    margin-top: 0;
    display: block; }
  .philosophy-container .inner .sub-menu {
    display: none; } }

.philosophy-container .inner .sub-menu {
  margin-top: 8.6rem; }

.philosophy-container .inner .flex-wrapper {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

.philosophy-container .inner .flex-wrapper .contents-block {
  padding-top: 8.6rem; }

.philosophy-container .inner .flex-wrapper .contents-block:not(:last-of-type) {
  margin-bottom: 4rem; }

@media (max-width: 768px) {
  .philosophy-container .inner .flex-wrapper .contents-block {
    padding-top: 6.5rem; }
  .philosophy-container
.inner
.flex-wrapper
.contents-block:not(:last-of-type) {
    margin-bottom: 0; } }

.philosophy-container .inner .flex-wrapper .contents-block .contents-ttl {
  width: 110px;
  border-bottom: 1px solid #000;
  padding-bottom: 0.8rem;
  line-height: 1;
  font-size: 1.5rem;
  margin: 0 -2rem 5rem; }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.text-contents:nth-of-type(n + 2) {
  margin-top: 15rem; }

.philosophy-container .inner .flex-wrapper .contents-block .text-contents img {
  width: 100%;
  border-radius: 5px; }

@media (max-width: 768px) {
  .philosophy-container
.inner
.flex-wrapper
.contents-block
.text-contents:nth-of-type(n + 2) {
    margin-top: 12rem; }
  .philosophy-container
.inner
.flex-wrapper
.contents-block
.text-contents
img {
    display: block;
    width: 100vw;
    margin-left: -4.5rem;
    margin-right: -4.5rem;
    max-width: none; } }

.philosophy-container .inner .flex-wrapper .contents-block .mask-textarea {
  position: static;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: transparent;
  padding: 4.5rem 0 0;
  max-width: 100%; }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
.mask {
  background-color: #e5e4e0; }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p.read {
  font-size: 2.4rem;
  line-height: 1.75;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

@media (max-width: 768px) {
  .philosophy-container .inner .flex-wrapper .contents-block .mask-textarea {
    display: block; }
  .philosophy-container .inner .flex-wrapper .contents-block .mask-textarea p {
    text-align: center; }
  .philosophy-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p.read {
    font-size: 2rem;
    margin-bottom: 4.5rem; } }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p.left {
  font-size: 1.6rem;
  line-height: 2.18;
  letter-spacing: 0.07em; }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p
span.border {
  border-bottom: 1px solid #000;
  padding-bottom: 0;
  display: inline-block; }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p
span.border:nth-of-type(n + 3) {
  margin-top: 2rem; }

.philosophy-container .inner .flex-wrapper .contents-block .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 8rem;
  -moz-column-gap: 8rem;
  column-gap: 8rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.philosophy-container .inner .flex-wrapper .contents-block .flex img {
  min-width: 440px;
  width: 40vw;
  max-width: 60%; }

@media (max-width: 768px) {
  .philosophy-container .inner .flex-wrapper .contents-block .flex {
    display: block; }
  .philosophy-container .inner .flex-wrapper .contents-block .flex img {
    max-width: 100%;
    min-width: 100vw;
    width: auto;
    margin-bottom: 4.5rem; } }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.flex
.mask-textarea {
  display: block;
  padding-top: 0;
  max-width: 330px;
  width: 100%; }

.philosophy-container
.inner
.flex-wrapper
.contents-block
.flex
.mask-textarea
p.read {
  margin-bottom: 3rem; }

.recruit-container .mask-title {
  max-width: 1390px;
  padding: 0 4.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 0; }

.recruit-container .inner {
  max-width: 1390px;
  padding: 0 4.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 12rem;
  -moz-column-gap: 12rem;
  column-gap: 12rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin: 6.4rem auto 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

@media (max-width: 768px) {
  .recruit-container .inner {
    margin-top: 0;
    display: block; }
  .recruit-container .inner .sub-menu {
    display: none; } }

.recruit-container .inner .sub-menu {
  margin-top: 8.6rem; }

.recruit-container .inner .flex-wrapper {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

.recruit-container .inner .flex-wrapper .contents-block {
  padding-top: 8.6rem; }

.recruit-container .inner .flex-wrapper .contents-block:not(:last-of-type) {
  margin-bottom: 4rem; }

@media (max-width: 768px) {
  .recruit-container .inner .flex-wrapper .contents-block {
    padding-top: 0; }
  .recruit-container .inner .flex-wrapper .contents-block:not(:last-of-type) {
    margin-bottom: 0; }
  .recruit-container .inner .flex-wrapper .contents-block:first-of-type {
    padding-top: 11rem; } }

.recruit-container .inner .flex-wrapper .contents-block .contents-ttl {
  width: 110px;
  border-bottom: 1px solid #000;
  padding-bottom: 0.8rem;
  line-height: 1;
  font-size: 1.5rem;
  margin: 0 -2rem 5rem; }

@media (max-width: 768px) {
  .recruit-container .inner .flex-wrapper .contents-block .contents-ttl {
    margin: 0 0 5rem; } }

.recruit-container
.inner
.flex-wrapper
.contents-block
.text-contents:nth-of-type(n + 2) {
  margin-top: 15rem; }

.recruit-container .inner .flex-wrapper .contents-block .text-contents img {
  width: 100%; }

@media (max-width: 768px) {
  .recruit-container
.inner
.flex-wrapper
.contents-block
.text-contents:nth-of-type(n + 2) {
    margin-top: 12rem; }
  .recruit-container .inner .flex-wrapper .contents-block .text-contents img {
    display: block;
    width: 100vw;
    margin-left: -4.5rem;
    margin-right: -4.5rem;
    max-width: none; } }

.recruit-container .inner .flex-wrapper .contents-block .mask-textarea {
  position: static;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: transparent;
  padding: 4.5rem 0 0;
  max-width: 100%; }

.recruit-container .inner .flex-wrapper .contents-block .mask-textarea .mask {
  background-color: #e5e4e0; }

.recruit-container .inner .flex-wrapper .contents-block .mask-textarea p.read {
  font-size: 2.4rem;
  line-height: 1.75;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }

@media (max-width: 768px) {
  .recruit-container .inner .flex-wrapper .contents-block .mask-textarea {
    display: block;
    white-space: nowrap; }
  .recruit-container .inner .flex-wrapper .contents-block .mask-textarea p {
    text-align: center; }
  .recruit-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p.read {
    font-size: 2rem;
    margin-bottom: 4.5rem; } }

.recruit-container .inner .flex-wrapper .contents-block .mask-textarea p.left {
  font-size: 1.6rem;
  line-height: 2.18;
  letter-spacing: 0.07em; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p
span.border {
  border-bottom: 1px solid #000;
  padding-bottom: 0;
  display: inline-block;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.mask-textarea
p
span.border:nth-of-type(n + 3) {
  margin-top: 2rem; }

.recruit-container .inner .flex-wrapper .contents-block .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 8rem;
  -moz-column-gap: 8rem;
  column-gap: 8rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.recruit-container .inner .flex-wrapper .contents-block .flex img {
  min-width: 440px;
  width: 40vw;
  max-width: 60%; }

@media (max-width: 768px) {
  .recruit-container .inner .flex-wrapper .contents-block .flex {
    display: block; }
  .recruit-container .inner .flex-wrapper .contents-block .flex img {
    max-width: 100%;
    min-width: 100vw;
    width: auto;
    margin-bottom: 4.5rem; } }

.recruit-container .inner .flex-wrapper .contents-block .flex .mask-textarea {
  display: block;
  padding-top: 0;
  max-width: 300px;
  width: 100%; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.flex
.mask-textarea
p.read {
  margin-bottom: 3rem; }

.recruit-container .inner .flex-wrapper .contents-block .table-wrap {
  background-color: #dbdad6;
  padding: 8rem 7rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  border-radius: 5px; }

@media (max-width: 768px) {
  .recruit-container .inner .flex-wrapper .contents-block .table-wrap {
    margin: 0 -4.5rem;
    padding: 7rem 5rem; } }

.recruit-container .inner .flex-wrapper .contents-block .table-wrap table tr {
  border-top: 1px solid #c8c8c8; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr:last-of-type {
  border-bottom: 1px solid #c8c8c8; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
th {
  padding: 5rem 3rem;
  border-right: 1px solid #c8c8c8;
  vertical-align: middle;
  font-size: 1.6rem;
  letter-spacing: 0.07em;
  width: 22%; }

@media (max-width: 768px) {
  .recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
th {
    display: block;
    width: 100%;
    border-right: none;
    padding: 5rem 0;
    text-align: center; } }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td {
  padding: 5rem 1rem 5rem 3rem;
  font-size: 1.5rem;
  letter-spacing: 0.07em;
  line-height: 1.73;
  width: 78%;
  font-family: YakuHanJP, "A+mfCv-TPゴシック R StdN"; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
p.read {
  color: #000;
  margin-bottom: 1.5rem;
  font-size: 1.6rem;
  line-height: 1.25; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
p.read:nth-of-type(n + 2) {
  margin-top: 3.5rem; }

@media (max-width: 768px) {
  .recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td {
    display: block;
    width: 100%;
    padding: 0 0 5rem; }
  .recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
p.read {
    margin-bottom: 2.5rem; }
  .recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
p.read:nth-of-type(n + 2) {
    margin-top: 5rem; } }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
p.read
span {
  border-bottom: 1px solid #000;
  padding-bottom: 0.5rem;
  display: inline-block; }

.recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
p.read
span:first-of-type {
  margin-bottom: 1rem; }

@media (max-width: 768px) {
  .recruit-container
.inner
.flex-wrapper
.contents-block
.table-wrap
table
tr
td
ul
li:not(:last-of-type) {
    margin-bottom: 5px; } }

.policy-container .inner {
  max-width: 1100px;
  margin: 0 auto;
  background-color: #dbdad6;
  padding: 9rem 10rem;
  border-radius: 5px; }

.policy-container .inner .text-block:not(:last-of-type) {
  margin-bottom: 10rem; }

@media (max-width: 768px) {
  .policy-container .inner {
    padding: 8rem 4.5rem;
    border-radius: 0; }
  .policy-container .inner .text-block:not(:last-of-type) {
    margin-bottom: 8rem; }
  .policy-container .inner .text-block p.read {
    text-align: center; } }

.policy-container .inner .text-block p {
  font-size: 1.5rem;
  line-height: 2.13;
  letter-spacing: 0.07em; }

.policy-container .inner .text-block p.read {
  font-size: 1.8rem;
  margin-bottom: 3rem; }

.policy-container .inner .text-block p.title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 2rem;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.8rem;
  margin-bottom: 3rem; }

@media (max-width: 768px) {
  .policy-container .inner .text-block p.title {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  .policy-container .inner .text-block p.title span {
    margin-bottom: 2rem; } }

.policy-container .inner .text-block p.title span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  border: 1px solid #000;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 2.2rem;
  line-height: 1; }

.policy-container .inner .text-block ol {
  margin-top: 4rem; }

.policy-container .inner .text-block ol li {
  list-style-type: decimal;
  list-style-position: inside;
  text-indent: -1.3em;
  padding-left: 1.3em;
  line-height: 2.13; }

.policy-container .inner .text-block ol.alphabet {
  margin-top: 0; }

.policy-container .inner .text-block ol.alphabet li {
  list-style-type: lower-alpha; }
