@charset "UTF-8";
body {
  font-size: 0.14rem;
  font-family: "Shippori Mincho", serif;
  font-weight: 500;
  color: #000;
}

@media screen and (max-width: 767.98px) {
  body {
    min-width: 320px;
  }
}

.wrapper:not(._nohide) {
  overflow: hidden;
}

.container_s {
  max-width: 8rem;
  margin: 0 auto;
}

@media screen and (max-width: 767.98px) {
  .container_s {
    width: calc(100% - 0.4rem);
  }
}

.container_m {
  max-width: 10.8rem;
  margin: 0 auto;
}

@media screen and (max-width: 767.98px) {
  .container_m {
    width: calc(100% - 0.4rem);
  }
}

.container_l {
  max-width: 12rem;
  margin: 0 auto;
}

@media screen and (max-width: 767.98px) {
  .container_l {
    width: calc(100% - 0.4rem);
  }
}

a {
  color: #000;
}

@media screen and (max-width: 767.98px) {
  img {
    width: 100%;
  }
}

@media screen and (max-width: 767.98px) {
  .pconly {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .sponly {
    display: none !important;
  }
}

.objectfit {
  width: 100%;
  height: 100%;
}

.objectfit.cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.objectfit.contain {
  -o-object-fit: contain;
     object-fit: contain;
}

._el {
  font-family: "Helvetica Neue", "Arial Narrow", Arial, sans-serif;
  font-style: italic;
}

.fixed_video {
  width: 100%;
  height: 100vh;
  position: fixed;
  z-index: -10;
}

.cmn_header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  -webkit-transition: background-color 1s ease, -webkit-transform 0.4s ease;
  transition: background-color 1s ease, -webkit-transform 0.4s ease;
  transition: transform 0.4s ease, background-color 1s ease;
  transition: transform 0.4s ease, background-color 1s ease, -webkit-transform 0.4s ease;
}

.cmn_header .__wrap {
  padding: 0 0.4rem;
  height: 1.1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.cmn_header .__logo_area {
  position: relative;
  z-index: 200;
}

.cmn_header .__logo {
  width: 2rem;
}

.cmn_header .__logo img,
.cmn_header .__logo svg {
  width: 100%;
  height: 100%;
  fill: #fff;
  -webkit-transition: fill 1s;
  transition: fill 1s;
}

.cmn_header .__tit {
  margin-top: 1em;
  font-size: 0.1rem;
  color: #fff;
  -webkit-transition: color 1s;
  transition: color 1s;
}

.cmn_header .__parent_lists {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.4rem;
}

.cmn_header .__p_item:hover .__txt::after {
  opacity: 1;
  visibility: visible;
}

@media screen and (min-width: 768px) {
  .cmn_header .__global {
    opacity: 1 !important;
    display: block !important;
  }
}

.cmn_header .__txt {
  line-height: 1.1rem;
  cursor: pointer;
  position: relative;
  color: #fff;
  -webkit-transition: color 1s;
  transition: color 1s;
}

.cmn_header .__txt::after {
  content: "";
  width: 1px;
  height: 0.4rem;
  position: absolute;
  bottom: 0;
  left: 50%;
  background-color: #fff;
  opacity: 0;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  visibility: hidden;
}

.cmn_header .__txt:hover::after {
  opacity: 1;
  visibility: visible;
}

.cmn_header .__txt:hover + .__menu {
  opacity: 1;
  visibility: visible;
}

.cmn_header .__txt a {
  color: #fff;
  -webkit-transition: 1s;
  transition: 1s;
}

.cmn_header .__menu {
  padding: 0.3rem 0;
  position: absolute;
  z-index: 1;
  width: 100%;
  top: 1.1rem;
  left: 0;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 0;
  visibility: hidden;
  background-color: #fff;
}

.cmn_header .__menu:hover {
  opacity: 1;
  visibility: visible;
  display: block;
}

.cmn_header .__menu_inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.cmn_header .__main_area {
  padding-left: 1.4rem;
}

.cmn_header .mod_tit {
  width: 3rem;
}

.cmn_header .mod_btn {
  margin-top: 0.25rem;
}

.cmn_header .__child_lists {
  width: calc(100% - 3rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.2rem;
}

.cmn_header .__child_lists .__c_item a {
  width: 2rem;
  padding: 0.12rem 0.1rem;
  text-align: center;
  display: inline-block;
  border-radius: 10rem;
  border: 1px solid #000;
}

.cmn_header .__btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.cmn_header .__btn a {
  width: 1.6rem;
  display: block;
  text-align: center;
  line-height: 0.4rem;
  color: #fff;
  border-radius: 0.2rem;
  border: 1px solid #fff;
  -webkit-transition: 1s;
  transition: 1s;
}

.cmn_header._show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  background-color: #fafbfd;
}

.cmn_header._show .__logo svg {
  fill: #0b3a8e;
}

.cmn_header._show .__tit {
  color: #000;
}

.cmn_header._show .__txt {
  color: #000;
}

.cmn_header._show .__txt::after {
  background-color: #000;
}

.cmn_header._show .__txt a {
  color: #000;
}

.cmn_header._show .__btn a {
  color: #0b3a8e;
  background-color: #fff;
  border: 1px solid #0b3a8e;
}

@media screen and (min-width: 768px) {
  .cmn_header._show .__btn a:hover {
    opacity: 1;
    color: #fff;
    background-color: #0b3a8e;
  }
}

.cmn_header._show .__hamburger span {
  background-color: #000;
}

.cmn_header._hide {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

@media screen and (max-width: 767.98px) {
  .cmn_header._open .__logo svg {
    fill: #0b3a8e;
  }
  .cmn_header._open .__tit {
    color: #000;
  }
  .cmn_header .__wrap {
    padding: 0 0.2rem;
    height: 0.7rem;
  }
  .cmn_header .__logo {
    width: 1.6rem;
  }
  .cmn_header .__tit {
    margin-top: 0.5em;
    font-size: 0.08rem;
  }
  .cmn_header .__txt {
    font-size: 0.16rem;
    padding: 0.2rem;
    line-height: 1;
    color: #000;
    font-weight: 700;
  }
  .cmn_header .__txt::before, .cmn_header .__txt::after {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    background-color: #0b3a8e;
  }
  .cmn_header .__txt::before {
    top: 50%;
    right: 0.25rem;
    width: 0.2rem;
    height: 0.02rem;
  }
  .cmn_header .__txt::after {
    right: 0.34rem;
    width: 0.02rem;
    height: 0.2rem;
    left: auto;
    -webkit-transition: height 0.4s;
    transition: height 0.4s;
    opacity: 1;
    visibility: visible;
  }
  .cmn_header .__txt.active::after {
    height: 0;
  }
  .cmn_header .__txt a {
    color: #000;
  }
  .cmn_header .__menu {
    padding: 0;
    position: static;
    opacity: 1;
    visibility: visible;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: 0.7s ease max-height;
    transition: 0.7s ease max-height;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .cmn_header .__menu_inner {
    padding: 0.1rem 0 0.25rem;
  }
  .cmn_header .__parent_lists {
    display: block;
    border-top: 1px solid #e3e8f2;
  }
  .cmn_header .__p_item {
    border-bottom: 1px solid #e3e8f2;
  }
  .cmn_header .__child_lists {
    width: 100%;
    display: block;
  }
  .cmn_header .__child_lists .__c_item_sp {
    width: 100%;
  }
  .cmn_header .__child_lists .__c_item:not(:first-of-type) {
    margin-top: 0.2rem;
  }
  .cmn_header .__child_lists .__c_item a {
    width: 100%;
    padding: 0 0 0 1.2em;
    font-size: 0.12rem;
    text-align: left;
    display: block;
    border-radius: 0;
    border: none;
    position: relative;
  }
  .cmn_header .__child_lists .__c_item a::before {
    content: "";
    width: 0.07rem;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 0;
    background-color: #000;
  }
  .cmn_header .__btn {
    margin-top: 0.4rem;
  }
  .cmn_header .__btn a {
    color: #0b3a8e;
    border: 1px solid #0b3a8e;
  }
  .cmn_header .__global {
    width: 100%;
    height: 100vh;
    padding: 0.7rem 0 0.5rem;
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 101;
    overflow-y: scroll;
    background-color: #fff;
  }
  .cmn_header .__hamburger {
    width: 0.4rem;
    height: 0.4rem;
    top: 0.1rem;
    right: 0.05rem;
    -webkit-transition: -webkit-transform 0.4s;
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
    position: fixed;
    z-index: 102;
  }
  .cmn_header .__hamburger span {
    width: 0.3rem;
    height: 1px;
    position: absolute;
    right: calc(50% - 0.1rem);
    -webkit-transition: 0.4s;
    transition: 0.4s;
    background-color: #fff;
  }
  .cmn_header .__hamburger span:nth-of-type(1) {
    top: 0.13rem;
  }
  .cmn_header .__hamburger span:nth-of-type(2) {
    top: 0.195rem;
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .cmn_header .__hamburger span:nth-of-type(3) {
    top: 0.26rem;
  }
  .cmn_header .__hamburger.active span {
    background-color: #000;
  }
  .cmn_header .__hamburger.active span:nth-child(1) {
    top: 0.2rem;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .cmn_header .__hamburger.active span:nth-child(3) {
    top: 0.2rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .cmn_header .__hamburger.active span:nth-child(2) {
    opacity: 0;
  }
}

.cmn_footer {
  padding: 1.2rem 0;
  position: relative;
  z-index: 1;
  color: #fff;
}

.cmn_footer::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.cmn_footer .__logo {
  width: 3rem;
}

.cmn_footer .__logo img,
.cmn_footer .__logo svg {
  width: 100%;
  height: 100%;
  fill: #fff;
}

.cmn_footer .__add {
  margin-top: 0.2rem;
  font-size: 0.12rem;
  line-height: 1.5;
  color: #fff;
}

.cmn_footer .__wrap {
  margin-top: 0.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cmn_footer .__parent_lists {
  width: 8.7rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.8rem;
}

.cmn_footer .__parent_lists .__p_item a {
  color: #fff;
}

.cmn_footer .__child_lists {
  margin-top: 0.15rem;
}

.cmn_footer .__child_lists .__c_item:not(:first-of-type) {
  margin-top: 0.1rem;
}

.cmn_footer .__child_lists .__c_item a {
  font-size: 0.12rem;
  color: #fff;
}

.cmn_footer .__r_sec {
  width: 2rem;
}

.cmn_footer .__btn a {
  width: 100%;
  line-height: 0.4rem;
  display: block;
  text-align: center;
  border-radius: 0.2rem;
  color: #fff;
  border: 1px solid #fff;
}

.cmn_footer .__img {
  margin-top: 0.4rem;
}

.cmn_footer .__img img {
  width: 100%;
}

.cmn_footer .__after {
  margin-top: 1.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cmn_footer .__after .__link a {
  font-size: 0.1rem;
  color: #fff;
}

.cmn_footer .__after small {
  font-size: 0.1rem;
}

@media screen and (max-width: 767.98px) {
  .cmn_footer {
    padding: 0.6rem 0;
  }
  .cmn_footer .__logo {
    width: 2rem;
  }
  .cmn_footer .__wrap {
    margin-top: 0.4rem;
  }
  .cmn_footer .__r_sec {
    width: 100%;
  }
  .cmn_footer .__btn a {
    width: 2rem;
    margin: 0 auto;
    line-height: 0.4rem;
    border-radius: 0.2rem;
  }
  .cmn_footer .__img {
    margin-top: 0.3rem;
    text-align: center;
  }
  .cmn_footer .__img img {
    width: 2rem;
  }
  .cmn_footer .__after {
    margin-top: 0.55rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.4rem 0;
  }
  .cmn_footer .__after .__link {
    width: 100%;
    text-align: center;
  }
  .cmn_footer .__after .__link a {
    font-size: 0.1rem;
  }
  .cmn_footer .__after small {
    width: 100%;
    text-align: center;
    font-size: 0.1rem;
  }
}

.cmn_contact {
  padding: 1rem 0;
  text-align: center;
}

.cmn_contact .__tit .__ja,
.cmn_contact .__tit .__en {
  color: #fff;
}

.cmn_contact .__tit .__en {
  margin-top: 0.1rem;
  font-size: 0.4rem;
  letter-spacing: 0.04em;
}

.cmn_contact .__wrap {
  margin-top: 0.3rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 0.4rem;
}

.cmn_contact .__btn a {
  width: 3.2rem;
  height: 0.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  border-radius: 0.4rem;
  border: 1px solid #fff;
}

.cmn_contact .__btn .__txt {
  font-size: 0.16rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .cmn_contact ._tel a {
    pointer-events: none;
  }
}

.cmn_contact ._tel .__txt {
  font-size: 0.12rem;
}

.cmn_contact ._tel .__num {
  margin-top: 0.05rem;
  font-size: 0.32rem;
  letter-spacing: 0.04em;
}

@media screen and (max-width: 767.98px) {
  .cmn_contact {
    padding: 0.5rem 0;
  }
  .cmn_contact .__tit .__en {
    margin-top: 0.1rem;
    font-size: 0.32rem;
  }
  .cmn_contact .__wrap {
    margin-top: 0.3rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.2rem;
  }
  .cmn_contact .__btn a {
    width: 3.2rem;
    height: 0.6rem;
  }
  .cmn_contact .__btn .__txt {
    font-size: 0.14rem;
  }
  .cmn_contact ._tel .__txt {
    font-size: 0.1rem;
  }
  .cmn_contact ._tel .__num {
    font-size: 0.24rem;
  }
}

.cmn_deco {
  width: 100%;
}

.cmn_deco .__img {
  width: 100%;
  height: 100vh;
}

@media screen and (max-width: 1280px) {
  .cmn_deco .__img {
    height: 2.85rem;
  }
}

.noentry {
  margin-top: 0.6rem;
  text-align: center;
}

@media screen and (max-width: 767.98px) {
  .noentry {
    margin-top: 0.4rem;
  }
}

/* --------------------------------------------------------------
   Module_Element
-------------------------------------------------------------- */
.mod_tit .__ja {
  font-size: 0.18rem;
  font-weight: 700;
}

.mod_tit .__en {
  margin-top: 0.13rem;
  font-size: 0.72rem;
  color: #0b3a8e;
  letter-spacing: 0.04em;
}

.mod_tit._small .__ja {
  font-size: 0.12rem;
  color: #000;
}

.mod_tit._small .__en {
  margin-top: 0.05rem;
  font-size: 0.32rem;
}

.mod_tit._white .__ja,
.mod_tit._white .__en {
  color: #fff;
}

@media screen and (max-width: 767.98px) {
  .mod_tit .__ja {
    font-size: 0.16rem;
  }
  .mod_tit .__en {
    margin-top: 0.13rem;
    font-size: 0.42rem;
  }
  .mod_tit._small .__ja {
    font-size: 0.12rem;
    color: #000;
  }
  .mod_tit._small .__en {
    margin-top: 0.05rem;
    font-size: 0.32rem;
  }
  .mod_tit._white .__ja,
  .mod_tit._white .__en {
    color: #fff;
  }
}

.mod_btn a,
.mod_btn div {
  display: block;
  width: 1.4rem;
  padding-bottom: 0.12rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  position: relative;
}

.mod_btn a::before,
.mod_btn div::before {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: width 0.4s;
  transition: width 0.4s;
  background-color: #000;
}

@media screen and (min-width: 768px) {
  .mod_btn a:hover,
  .mod_btn div:hover {
    opacity: 1;
  }
  .mod_btn a:hover::before,
  .mod_btn div:hover::before {
    width: calc(100% + 0.3rem);
  }
}

.mod_btn._white a,
.mod_btn._white div {
  color: #fff;
}

.mod_btn._white a::before,
.mod_btn._white div::before {
  background-color: #fff;
}

.mod_btn._small a,
.mod_btn._small div {
  width: 1rem;
  font-size: 0.12rem;
  padding-bottom: 0.07rem;
}

.mod_btn02 a {
  width: 3.2rem;
  line-height: 0.8rem;
  display: block;
  font-size: 0.16rem;
  text-align: center;
  font-weight: 700;
  color: #0b3a8e;
  border-radius: 0.4rem;
  border: 1px solid #0b3a8e;
  background-color: #fff;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

@media screen and (min-width: 768px) {
  .mod_btn02 a:hover {
    opacity: 1;
    color: #fff;
    background-color: #0b3a8e;
  }
}

@media screen and (max-width: 767.98px) {
  .mod_btn02 a {
    width: 2.8rem;
    line-height: 0.6rem;
  }
}

.mod_news_lists {
  width: 8rem;
  border-top: 1px solid #e3e8f2;
}

.mod_news_lists li {
  border-bottom: 1px solid #e3e8f2;
}

.mod_news_lists li a {
  padding: 0.36rem 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod_news_lists .__date {
  width: 0.9rem;
  font-size: 0.14rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #0b3a8e;
}

.mod_news_lists .__cate {
  width: 1.4rem;
  padding: 0.05rem 0.1rem;
  border-radius: 10rem;
  line-height: 1.45;
  font-size: 0.12rem;
  text-align: center;
  border: 1px solid #000;
  background-color: #fff;
}

.mod_news_lists .__tit {
  width: 5.65rem;
  line-height: 2;
  padding-left: 0.3rem;
}

@media screen and (max-width: 767.98px) {
  .mod_news_lists {
    width: 100%;
  }
  .mod_news_lists li a {
    padding: 0.2rem 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .mod_news_lists .__date {
    width: 0.9rem;
    font-size: 0.14rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #0b3a8e;
  }
  .mod_news_lists .__cate {
    width: 1.4rem;
    padding: 0.05rem 0.1rem;
    font-size: 0.1rem;
  }
  .mod_news_lists .__tit {
    width: 100%;
    line-height: 2;
    padding-left: 0;
    margin-top: 0.1rem;
  }
}

.mod_mv {
  padding: 2.07rem 0 0.88rem;
}

.mod_mv .__tit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  color: #fff;
}

.mod_mv .__tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.mod_mv .__tit .__en {
  margin-top: 0.12rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

@media screen and (max-width: 767.98px) {
  .mod_mv {
    padding: 1rem 0 0.4rem;
  }
  .mod_mv .__tit .__ja {
    font-size: 0.2rem;
  }
}

._mod_under_layout {
  padding: 1.6rem 0 2rem;
  background-color: #fafbfd;
}

@media screen and (max-width: 767.98px) {
  ._mod_under_layout {
    padding: 0.8rem 0 1rem;
  }
}

.breadcrumbs {
  padding: 0.12rem 0;
  position: relative;
  z-index: 10;
}

.breadcrumbs > span {
  display: inline;
  font-size: 0.1rem;
  color: #fff;
}

.breadcrumbs > span a,
.breadcrumbs > span > span {
  padding: 0.1rem 0 0.1rem;
  color: #fff;
}

.breadcrumbs > span a {
  margin-right: 0.3rem;
  position: relative;
}

.breadcrumbs > span a::after {
  content: ">";
  position: absolute;
  top: 0.125rem;
  right: -0.2rem;
}

@media screen and (max-width: 767.98px) {
  .breadcrumbs {
    padding: 0.12rem 0;
    overflow-y: hidden;
    white-space: nowrap;
  }
  .breadcrumbs > span a,
  .breadcrumbs > span > span {
    padding: 0.1rem 0 0.1rem;
  }
  .breadcrumbs > span a {
    margin-right: 0.2rem;
  }
  .breadcrumbs > span a::after {
    right: -0.14rem;
  }
}

.wp-pagenavi {
  margin-top: 0.75rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.wp-pagenavi a,
.wp-pagenavi .current,
.wp-pagenavi .extend {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 0.3rem;
  height: 0.3rem;
  margin: 0.05rem;
  font-weight: 700;
  border-radius: 50%;
  font-family: "Helvetica Neue", "Arial Narrow", Arial, sans-serif;
}

.wp-pagenavi a {
  font-size: 0.12rem;
  background-color: #fff;
  color: #000;
  border: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .wp-pagenavi a {
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .wp-pagenavi a:hover {
    opacity: 0.7;
  }
  .wp-pagenavi a:hover {
    opacity: 1;
    color: #fff;
    border: 1px solid #0b3a8e;
    background-color: #0b3a8e;
  }
}

.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
  padding: 0.07rem 0.1rem 0.07rem;
  -webkit-box-pack: normal;
  -webkit-justify-content: normal;
      -ms-flex-pack: normal;
          justify-content: normal;
  width: 0.3rem;
  margin: 0.03rem;
  font-size: 0.14rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .wp-pagenavi a.previouspostslink:hover, .wp-pagenavi a.nextpostslink:hover {
    opacity: 1;
    color: #fff;
    border: 1px solid #0b3a8e;
    background-color: #0b3a8e;
  }
}

.wp-pagenavi .current {
  font-size: 0.14rem;
  color: #fff;
  background-color: #0b3a8e;
  border: 1px solid #0b3a8e;
}

@media screen and (max-width: 767.98px) {
  .wp-pagenavi {
    margin-top: 0.4rem;
  }
}

.post_content .wp-block {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

.post_content h1,
.post_content h2,
.post_content h3,
.post_content h4,
.post_content h5,
.post_content h6,
.post_content .wp-block-heading {
  line-height: 1.5;
  margin: 0 0 1.8em;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.post_content h1,
.post_content .wp-block-heading.is-style-h1 {
  font-size: 0.2rem;
}

.post_content h2,
.post_content .wp-block-heading.is-style-h2 {
  font-size: 0.22rem;
}

.post_content h3,
.post_content .wp-block-heading.is-style-h3 {
  font-size: 0.2rem;
}

.post_content h4,
.post_content .wp-block-heading.is-style-h4 {
  font-size: 0.18rem;
}

.post_content h5,
.post_content .wp-block-heading.is-style-h5 {
  font-size: 0.16rem;
}

.post_content h6,
.post_content .wp-block-heading.is-style-h6 {
  font-size: 0.14rem;
}

.post_content p,
.post_content .wp-block-paragraph {
  margin: 0 0 2.3em;
  font-size: 0.14rem;
  line-height: 1.85;
  letter-spacing: 0.1em;
}

.post_content figure.wp-block-image {
  padding: 5%;
}

.post_content figure.wp-block-image img {
  max-width: 100%;
  height: auto;
}

.post_content figure.wp-block-image figcaption {
  font-size: 0.12rem;
  margin-top: 1em;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

.post_content .wp-block-columns-is-layout-flex figure.wp-block-image {
  padding: 0;
}

.post_content blockquote,
.post_content .wp-block-quote {
  background: #f1f1f1;
  padding: 1em;
  margin: 1em auto;
}

.post_content blockquote p,
.post_content .wp-block-quote p {
  margin-bottom: 0;
}

.post_content blockquote p ~ p,
.post_content .wp-block-quote p ~ p {
  margin-top: 1em;
}

.post_content ul,
.post_content ol,
.post_content .wp-block-list {
  margin: 1em 0 1em 1.5em;
}

.post_content ul li,
.post_content .wp-block-list li {
  list-style: outside disc;
  line-height: 1.45;
}

.post_content ul li:not(:first-of-type),
.post_content .wp-block-list li:not(:first-of-type) {
  margin-top: 1em;
}

.post_content ul li::marker,
.post_content .wp-block-list li::marker {
  color: #000;
  font-size: 0.15rem;
}

.post_content ol li,
.post_content .wp-block-list li {
  list-style: outside decimal;
  line-height: 1.45;
}

.post_content ol li:not(:first-of-type),
.post_content .wp-block-list li:not(:first-of-type) {
  margin-top: 1em;
}

.post_content ol li::marker,
.post_content .wp-block-list li::marker {
  color: #000;
  font-size: 0.15rem;
}

.post_content ul.wp-block-list li {
  list-style: outside disc;
}

.post_content ol.wp-block-list li {
  list-style: outside decimal;
}

.post_content ol.wp-block-list li::marker {
  font-size: 0.15rem;
}

.post_content a {
  text-decoration: underline;
  color: #0b3a8e;
}

.post_content em {
  font-style: italic;
}

.post_content .wp-block-group {
  margin: 2em 0;
}

.post_content .wp-block-columns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
}

@media screen and (max-width: 767.98px) {
  .post_content .wp-block-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.post_content .wp-block-embed,
.post_content figure.wp-block-embed,
.post_content .wp-block-embed__wrapper {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.post_content .wp-block-embed iframe,
.post_content figure.wp-block-embed iframe,
.post_content .wp-block-embed__wrapper iframe {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border: none;
  display: block;
}

.post_content iframe[src*="youtube.com"],
.post_content iframe[src*="youtu.be"],
.post_content iframe[src*="vimeo.com"],
.post_content iframe[src*="maps.google"],
.post_content iframe[src*="dailymotion.com"],
.post_content iframe[src*="soundcloud.com"] {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  border: none;
  display: block;
}

.mod_form_wrap .__lists dt:not(:first-of-type) {
  margin-top: 0.45rem;
}

.mod_form_wrap .__lists dt .__req {
  color: #ff0000;
}

.mod_form_wrap .__lists dd {
  margin-top: 0.12rem;
  position: relative;
}

.mod_form_wrap .__lists input[type="text"],
.mod_form_wrap .__lists input[type="email"],
.mod_form_wrap .__lists input[type="tel"],
.mod_form_wrap .__lists textarea {
  width: 100%;
  padding: 0.1rem 0.2rem;
  border: 1px solid #e3e8f2;
  font-size: 0.14rem;
}

.mod_form_wrap .__lists input[type="text"],
.mod_form_wrap .__lists input[type="email"],
.mod_form_wrap .__lists input[type="tel"],
.mod_form_wrap .__lists select {
  height: 0.6rem;
}

.mod_form_wrap .__lists select {
  padding: 0.1rem;
  border: 1px solid #e3e8f2;
  font-size: 0.14rem;
  margin-right: 0.15rem;
  background-color: #fff;
}

.mod_form_wrap .__lists textarea {
  min-height: 3rem;
  padding: 0.2rem;
}

.mod_form_wrap .__lists .wpcf7-not-valid-tip {
  display: block;
  font-size: 0.12rem;
  margin-top: 0.1rem;
  font-weight: 500;
  color: #ff0000;
  white-space: nowrap;
}

.mod_form_wrap .__lists .__disabled input[type="text"] {
  background-color: #e3e8f2;
  pointer-events: none;
}

.mod_form_wrap .__lists .__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.15rem;
}

.mod_form_wrap .__lists .__inner {
  position: relative;
}

.mod_form_wrap .__lists .__inner .wpcf7-not-valid-tip {
  position: absolute;
  bottom: -0.4rem;
}

.mod_form_wrap .__lists ._large select {
  width: 1.6rem;
}

.mod_form_wrap .__lists ._small select {
  width: 0.8rem;
}

.mod_form_wrap .privacy {
  margin-top: 0.6rem;
  text-align: center;
}

.mod_form_wrap .privacy a {
  color: #0b3a8e;
  text-decoration: underline;
}

.mod_form_wrap .privacy .__req {
  color: #ff0000;
}

.mod_form_wrap .submit_btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0.6rem auto 0;
  text-align: center;
  position: relative;
}

.mod_form_wrap .submit_btn input {
  width: 3.2rem;
  height: 0.8rem;
  text-align: center;
  font-weight: bold;
  font-size: 0.16rem;
  border-radius: 0.4rem;
  color: #0b3a8e;
  border: 1px solid #0b3a8e;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .mod_form_wrap .submit_btn input:hover {
    opacity: 1;
    color: #fff;
    background-color: #0b3a8e;
  }
}

.mod_form_wrap .submit_btn .wpcf7-spinner {
  position: absolute;
  right: 0;
  top: calc(50% - 12px);
}

@media screen and (max-width: 767.98px) {
  .mod_form_wrap .__lists dt:not(:first-of-type) {
    margin-top: 0.3rem;
  }
  .mod_form_wrap .__lists dd {
    margin-top: 0.05rem;
  }
  .mod_form_wrap .__lists input[type="text"],
  .mod_form_wrap .__lists input[type="email"],
  .mod_form_wrap .__lists input[type="tel"],
  .mod_form_wrap .__lists textarea {
    width: 100%;
    padding: 0.1rem 0.1rem;
    font-size: 0.12rem;
  }
  .mod_form_wrap .__lists input[type="text"],
  .mod_form_wrap .__lists input[type="email"],
  .mod_form_wrap .__lists input[type="tel"],
  .mod_form_wrap .__lists select {
    height: 0.4rem;
  }
  .mod_form_wrap .__lists select {
    font-size: 0.12rem;
    margin-right: 0.1rem;
  }
  .mod_form_wrap .__lists textarea {
    min-height: 2rem;
  }
  .mod_form_wrap .__lists .wpcf7-not-valid-tip {
    font-size: 0.1rem;
    margin-top: 0.05rem;
  }
  .mod_form_wrap .__lists .__wrap {
    gap: 0 0.1rem;
  }
  .mod_form_wrap .__lists .__inner .wpcf7-not-valid-tip {
    bottom: -0.26rem;
  }
  .mod_form_wrap .__lists ._large select {
    width: 1rem;
  }
  .mod_form_wrap .__lists ._small select {
    width: 0.65rem;
  }
  .mod_form_wrap .privacy {
    margin-top: 0.4rem;
  }
  .mod_form_wrap .submit_btn {
    margin: 0.4rem auto 0;
  }
  .mod_form_wrap .submit_btn input {
    width: 2.8rem;
    height: 0.6rem;
    font-size: 0.16rem;
    border-radius: 0.4rem;
  }
}

/* TOP
--------------------------------------------------------------*/
.top_mv .__before {
  width: 100%;
  height: 100vh;
  position: relative;
  min-height: 5rem;
  margin-bottom: 3.8rem;
}

.top_mv .__cat {
  position: absolute;
  top: 50%;
  left: calc(50% - 3.9rem);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.top_mv .__cat img {
  width: 7.8rem;
}

.top_mv .scroll {
  position: absolute;
  bottom: 0;
  left: 50%;
}

.top_mv .scroll .__bar {
  width: 1px;
  height: 1rem;
  -webkit-animation: scroll 2.5s infinite;
          animation: scroll 2.5s infinite;
  background-color: #bbdcf1;
}

@-webkit-keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  51% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

@keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  51% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

.top_mv .__after {
  text-align: center;
}

.top_mv .__after img {
  width: 100%;
}

@media screen and (max-width: 767.98px) {
  .top_mv .__before {
    margin-bottom: 2rem;
  }
  .top_mv .__cat {
    left: calc(50% - 1.5rem);
  }
  .top_mv .__cat img {
    width: 3rem;
  }
}

.top_business {
  padding: 1.6rem 0 0;
  position: relative;
}

.top_business::before {
  content: "";
  width: 100%;
  height: 1.6rem;
  height: calc(1.6rem + 2px);
  position: absolute;
  top: -1px;
  background-color: #fafbfd;
}

.top_business .__before {
  position: relative;
}

.top_business .__before::before, .top_business .__before::after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #fafbfd;
}

.top_business .__before::before {
  left: calc(-50vw + 50%);
  width: calc(50vw - 50%);
}

.top_business .__before::after {
  right: calc(-50vw + 50%);
  width: calc(50vw - 50%);
}

.top_business .__before .__content {
  padding: 0.45rem 0 0.4rem;
  max-width: 8.8rem;
  margin: 0 auto;
  background-color: #fafbfd;
}

.top_business .__before .mod_tit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.top_business .__before .__cat {
  margin-top: 0.9rem;
  font-size: 0.32rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
}

.top_business .__before .__txt {
  margin-top: 0.8rem;
  line-height: 2.5;
  text-align: center;
}

.top_business .__before .mod_btn {
  margin-top: 0.55rem;
}

.top_business .__before .mod_btn a {
  margin: 0 auto;
}

.top_business .__after {
  padding: 1.1rem 0.4rem 0.4rem;
  margin-top: -1px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.4rem;
  background-color: #fafbfd;
}

.top_business .__after .__item {
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.top_business .__after .__item::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.top_business .__after .__item:hover {
  opacity: 1;
}

.top_business .__after .__item:hover .__item_img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.top_business .__after .__item:hover .mod_btn a::before,
.top_business .__after .__item:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.top_business .__after .__item_img {
  overflow: hidden;
  aspect-ratio: 2 / 1;
}

.top_business .__after .__item_img img {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  will-change: transform;
}

.top_business .__after .__item_tit {
  padding: 0.05rem 0 0.05rem 0.2rem;
  color: #fff;
  position: absolute;
  z-index: 1;
  top: 0.2rem;
  left: 0.3rem;
  border-left: 1px solid #fff;
}

.top_business .__after .__item_tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.top_business .__after .__item_tit .__en {
  margin-top: 0.12rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

.top_business .__after .mod_btn {
  position: absolute;
  z-index: 1;
  bottom: 0.2rem;
  right: 0.3rem;
}

@media screen and (max-width: 767.98px) {
  .top_business {
    padding: 0.8rem 0 0;
  }
  .top_business::before {
    height: calc(0.8rem + 2px);
  }
  .top_business .__before .__content {
    padding: 0.45rem 0.2rem 0.4rem;
    max-width: 3.2rem;
  }
  .top_business .__before .__cat {
    margin-top: 0.45rem;
    font-size: 0.22rem;
  }
  .top_business .__before .__txt {
    margin-top: 0.3rem;
    text-align: left;
  }
  .top_business .__before .mod_btn {
    margin-top: 0.3rem;
  }
  .top_business .__after {
    padding: 0.5rem 0.2rem 0.2rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.2rem;
  }
  .top_business .__after .__item {
    min-height: auto;
  }
  .top_business .__after .__item_tit {
    padding: 0.05rem 0 0.05rem 0.1rem;
    top: 0.1rem;
    left: 0.1rem;
  }
  .top_business .__after .__item_tit .__ja {
    font-size: 0.18rem;
  }
  .top_business .__after .__item_tit .__en {
    margin-top: 0.07rem;
    font-size: 0.1rem;
  }
  .top_business .__after .mod_btn {
    bottom: 0.1rem;
    right: 0.15rem;
  }
}

.top_about {
  padding: 1rem 0 0;
}

.top_about .__content {
  padding: 1.7rem 0.6rem 1.5rem 0;
  border-radius: 0 3rem 0 0;
  background-color: #fafbfd;
  position: relative;
}

.top_about .__content::before {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #fafbfd;
}

.top_about .__content::before {
  left: calc(-50vw + 50%);
  width: calc(50vw - 49%);
}

.top_about .__before {
  position: relative;
}

.top_about .__before .__img {
  position: absolute;
  top: 0.6rem;
  right: 0;
}

.top_about .__before .__img img {
  width: 5.4rem;
}

.top_about .__before .__cat {
  margin-top: 0.7rem;
  font-size: 0.32rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.top_about .__before .__txt {
  margin-top: 0.35rem;
  line-height: 2;
}

.top_about .__before .mod_btn {
  margin-top: 0.37rem;
}

.top_about .__after {
  margin-top: 1.5rem;
  padding-right: 0.6rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.4rem;
}

.top_about .__after .__item {
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.top_about .__after .__item::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.top_about .__after .__item:hover {
  opacity: 1;
}

.top_about .__after .__item:hover .__item_img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.top_about .__after .__item:hover .mod_btn a::before,
.top_about .__after .__item:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.top_about .__after .__item_img {
  overflow: hidden;
  aspect-ratio: 2 / 1;
}

.top_about .__after .__item_img img {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  will-change: transform;
}

.top_about .__after .__item_tit {
  padding: 0.05rem 0 0.05rem 0.2rem;
  color: #fff;
  position: absolute;
  z-index: 1;
  top: 0.2rem;
  left: 0.2rem;
  border-left: 1px solid #fff;
}

.top_about .__after .__item_tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.top_about .__after .__item_tit .__en {
  margin-top: 0.1rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

.top_about .__after .mod_btn {
  position: absolute;
  z-index: 1;
  bottom: 0.2rem;
  right: 0.2rem;
}

@media screen and (max-width: 767.98px) {
  .top_about {
    padding: 0.5rem 0 0;
  }
  .top_about .__content {
    padding: 0.9rem 0.3rem 0.75rem 0;
    border-radius: 0 1.25rem 0 0;
  }
  .top_about .__before .__img {
    margin-top: 0.4rem;
    position: static;
  }
  .top_about .__before .__img img {
    width: 100%;
  }
  .top_about .__before .__cat {
    margin-top: 0.35rem;
    font-size: 0.22rem;
  }
  .top_about .__before .__txt {
    margin-top: 0.2rem;
  }
  .top_about .__before .mod_btn {
    margin-top: 0.2rem;
  }
  .top_about .__after {
    margin-top: 0.75rem;
    padding-right: 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.2rem;
  }
  .top_about .__after .__item_tit {
    padding: 0.05rem 0 0.05rem 0.1rem;
    z-index: 1;
    top: 0.1rem;
    left: 0.1rem;
  }
  .top_about .__after .__item_tit .__ja {
    font-size: 0.18rem;
  }
  .top_about .__after .__item_tit .__en {
    margin-top: 0.07rem;
    font-size: 0.1rem;
  }
  .top_about .__after .mod_btn {
    bottom: 0.1rem;
    right: 0.15rem;
  }
}

.top_news {
  padding: 1rem 0;
}

.top_news .__content {
  padding: 1.6rem 0 1.6rem 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-radius: 3rem 0 0 0;
  background-color: #fafbfd;
  position: relative;
}

.top_news .__content::before {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #fafbfd;
}

.top_news .__content::before {
  right: calc(-50vw + 50%);
  width: calc(50vw - 49%);
}

.top_news .__before {
  width: 3rem;
}

.top_news .__before .__txt {
  margin-top: 0.3rem;
  font-size: 0.12rem;
  line-height: 1.5;
}

.top_news .__before .__btn {
  margin-top: 0.35rem;
}

.top_news .__before .__btn a {
  font-size: 0.12rem;
  text-decoration: underline;
}

.top_news .__after .mod_btn {
  margin-top: 0.6rem;
}

.top_news .__after .mod_btn a {
  margin-left: auto;
}

@media screen and (max-width: 767.98px) {
  .top_news {
    padding: 0.5rem 0;
  }
  .top_news .__content {
    padding: 0.9rem 0 0.8rem 0.3rem;
    border-radius: 1.25rem 0 0 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .top_news .__before {
    width: 100%;
    display: contents;
  }
  .top_news .__before .__txt {
    margin-top: 0.3rem;
    font-size: 0.12rem;
    line-height: 1.5;
  }
  .top_news .__before .__btn {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin: 0.5rem auto 0;
  }
  .top_news .__before .__btn a {
    font-size: 0.12rem;
    text-decoration: underline;
  }
  .top_news .__after .mod_news_lists {
    margin-top: 0.4rem;
  }
  .top_news .__after .mod_btn {
    margin-top: 0.3rem;
  }
}

.top_recruit {
  padding: 0.4rem;
  background-color: #fafbfd;
}

.top_recruit .__content {
  position: relative;
  z-index: 1;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-image: url(../../assets/img/top/recruit_img01.webp);
}

.top_recruit .__content::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

.top_recruit .__before {
  padding: 1.05rem 0.4rem 0.98rem;
}

.top_recruit .__before .__txt {
  margin-top: 0.17rem;
  line-height: 1.5;
  color: #fff;
}

.top_recruit .__before .mod_btn {
  margin-top: 0.45rem;
}

.top_recruit .__after {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid #aaa;
}

.top_recruit .__after .__item {
  width: calc(100% / 3);
  padding: 0.2rem;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  position: relative;
  overflow: hidden;
}

.top_recruit .__after .__item:hover {
  opacity: 1;
}

.top_recruit .__after .__item:hover .mod_btn a::before,
.top_recruit .__after .__item:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.top_recruit .__after .__item:not(:last-of-type) {
  border-right: 1px solid #aaa;
}

.top_recruit .__after .__item_tit {
  padding: 0.05rem 0 0.05rem 0.2rem;
  color: #fff;
  border-left: 1px solid #fff;
}

.top_recruit .__after .__item_tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.top_recruit .__after .__item_tit .__en {
  margin-top: 0.1rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

.top_recruit .__after .__img {
  height: 1.1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.top_recruit .__after .__img img {
  width: auto;
  height: 0.65rem;
}

.top_recruit .__after .mod_btn div {
  margin-left: auto;
}

@media screen and (max-width: 767.98px) {
  .top_recruit {
    padding: 0.2rem;
  }
  .top_recruit .__content {
    background-image: url(../../assets/img/top/recruit_img01_sp.webp);
  }
  .top_recruit .__before {
    padding: 0.5rem 0;
  }
  .top_recruit .__before .__txt {
    margin-top: 0.17rem;
  }
  .top_recruit .__before .mod_btn {
    margin-top: 0.45rem;
  }
  .top_recruit .__after {
    display: block;
  }
  .top_recruit .__after .__item {
    width: 100%;
  }
  .top_recruit .__after .__item:not(:last-of-type) {
    border-right: none;
    border-bottom: 1px solid #aaa;
  }
  .top_recruit .__after .__item_tit {
    padding: 0.05rem 0 0.05rem 0.1rem;
  }
  .top_recruit .__after .__item_tit .__ja {
    font-size: 0.18rem;
  }
  .top_recruit .__after .__item_tit .__en {
    margin-top: 0.07rem;
    font-size: 0.1rem;
  }
  .top_recruit .__after .__img {
    height: 0.6rem;
  }
  .top_recruit .__after .__img img {
    height: 0.4rem;
  }
}

/* error/404
--------------------------------------------------------------*/
.error_content .__txt {
  text-align: center;
  line-height: 2;
}

.error_content .mod_btn02 a {
  margin: 0.8rem auto 0;
}

@media screen and (max-width: 767.98px) {
  .error_content .mod_btn02 a {
    margin: 0.4rem auto 0;
  }
}

/* privacy/プライバシーポリシー
--------------------------------------------------------------*/
.privacy_content {
  line-height: 2;
}

.privacy_content .tit {
  margin-top: 0.33rem;
  font-size: 0.2rem;
  font-weight: 900;
}

.privacy_content .txt {
  margin-top: 0.15rem;
}

.privacy_content .lists li {
  padding-left: 1em;
  position: relative;
}

.privacy_content .lists li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  color: #1a1a1a;
}

@media screen and (max-width: 767.98px) {
  .privacy_content .tit {
    font-size: 0.18rem;
  }
}

/* contact/コンタクトフォーム
--------------------------------------------------------------*/
.news_content .__cate_lists {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.1rem;
}

.news_content .__cate_lists li a {
  padding: 0.07rem 0.1rem;
  min-width: 0.66rem;
  text-align: center;
  display: block;
  border-radius: 10rem;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  background-color: #fff;
  border: 1px solid #000;
}

.news_content .__cate_lists li a.current {
  color: #fff;
  background-color: #0b3a8e;
  border: 1px solid #0b3a8e;
}

.news_content .__cate_lists li a:hover {
  opacity: 1;
  color: #fff;
  background-color: #0b3a8e;
  border: 1px solid #0b3a8e;
}

.news_content .mod_news_lists {
  margin-top: 0.76rem;
}

.news_content .__btn {
  margin-top: 0.85rem;
  text-align: center;
}

.news_content .__btn a {
  font-size: 0.12rem;
  text-decoration: underline;
}

@media screen and (max-width: 767.98px) {
  .news_content .mod_news_lists {
    margin-top: 0.35rem;
  }
  .news_content .__btn {
    margin-top: 0.4rem;
  }
}

/* お知らせ詳細
--------------------------------------------------------------*/
.news_detail_content .__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.3rem;
}

.news_detail_content .__cate {
  min-width: 1rem;
  padding: 0.08rem 0.18rem;
  text-align: center;
  font-size: 0.12rem;
  font-weight: 700;
  color: #000;
  border-radius: 10rem;
  background-color: #fff;
  border: 1px solid #000;
}

.news_detail_content .__date {
  font-size: 0.14rem;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: #0b3a8e;
}

.news_detail_content .__tit {
  margin-top: 0.2rem;
  font-size: 0.24rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

.news_detail_content .post_content {
  margin-top: 0.75rem;
}

.news_detail_content .mod_btn {
  margin-top: 0.8rem;
}

.news_detail_content .mod_btn a {
  margin: 0 auto;
}

@media screen and (max-width: 767.98px) {
  .news_detail_content .mod_btn {
    margin-top: 0.4rem;
  }
}

/* sustainability/サスティナビリティ
--------------------------------------------------------------*/
.wrapper.sustainability_page {
  overflow: visible;
}

.sustainability_content .__lists {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  -ms-grid-rows: (50vh)[5];
      grid-template-rows: repeat(5, 50vh);
  /* カード1枚の高さ */
  gap: 15vh;
  /* 余白の合計 */
  padding-bottom: calc(5 * 0.3rem);
}

.sustainability_content .__lists .__item {
  /* スクロールしても画面上部に固定にする */
  position: -webkit-sticky;
  position: sticky;
  top: 1.2rem;
  /* 1枚ずつ余白を大きくしている */
  padding-top: calc(var(--index) * 0.3rem);
}

.sustainability_content .__lists .__item._item01 {
  --index: 1;
}

.sustainability_content .__lists .__item._item02 {
  --index: 2;
}

.sustainability_content .__lists .__item._item03 {
  --index: 3;
}

.sustainability_content .__lists .__item._item04 {
  --index: 4;
}

.sustainability_content .__lists .__item._item05 {
  --index: 5;
}

.sustainability_content .__lists .__item_inner {
  max-height: 4.25rem;
  min-height: 4.25rem;
  padding: 0.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #fff;
  -webkit-box-shadow: rgba(0, 0, 0, 0.08) 0 0 0.12rem;
          box-shadow: rgba(0, 0, 0, 0.08) 0 0 0.12rem;
  margin-bottom: 1rem;
}

.sustainability_content .__lists .__img {
  width: 4.6rem;
}

.sustainability_content .__lists .__img img {
  width: 100%;
}

.sustainability_content .__lists .__txt {
  width: 6rem;
  font-weight: 700;
}

.sustainability_content .__lists .__num {
  font-size: 0.56rem;
  color: #0b3a8e;
  font-family: "Helvetica Neue", "Arial Narrow", Arial, sans-serif;
}

.sustainability_content .__lists .__tit {
  margin-top: 0.3rem;
  font-size: 0.32rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.sustainability_content .__lists .__cat {
  margin-top: 0.2rem;
  font-size: 0.18rem;
  color: #0b3a8e;
  letter-spacing: 0.06em;
}

.sustainability_content .__lists .__desc {
  margin-top: 0.25rem;
  line-height: 2;
  font-weight: 500;
}

@media screen and (max-width: 767.98px) {
  .sustainability_content .__lists {
    display: block;
    padding-bottom: 0;
  }
  .sustainability_content .__lists .__item {
    position: static;
    top: 1.6rem;
    padding-top: 0;
  }
  .sustainability_content .__lists .__item:not(:first-of-type) {
    margin-top: 0.4rem;
  }
  .sustainability_content .__lists .__item_inner {
    max-height: 100%;
    min-height: auto;
    padding: 0.2rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 0;
  }
  .sustainability_content .__lists .__img {
    width: 100%;
  }
  .sustainability_content .__lists .__txt {
    width: 100%;
    margin-top: 0.2rem;
  }
  .sustainability_content .__lists .__num {
    font-size: 0.4rem;
  }
  .sustainability_content .__lists .__tit {
    margin-top: 0.15rem;
    font-size: 0.22rem;
  }
  .sustainability_content .__lists .__cat {
    margin-top: 0.2rem;
    font-size: 0.16rem;
  }
  .sustainability_content .__lists .__desc {
    margin-top: 0.25rem;
  }
}

.wrapper.logistics_page {
  overflow: visible;
}

.logistics_content._mod_under_layout {
  background-color: transparent;
}

.logistics_content {
  width: 100%;
  margin: 0 auto;
  padding: 2rem 0 0;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.logistics_content::before {
  content: "";
  width: 100%;
  height: 2rem;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fafbfd;
}

.logistics_content .__img {
  width: 50%;
  height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  overflow: hidden;
}

.logistics_content .__img .__area {
  width: 100%;
  margin: auto;
  display: block;
  visibility: hidden;
  position: absolute;
  top: 0;
  bottom: 0;
  -webkit-transition: 0.8s !important;
  transition: 0.8s !important;
  opacity: 0;
}

.logistics_content .__img .__area:first-child, .logistics_content .__img .__area.active {
  visibility: visible;
  opacity: 1;
}

.logistics_content .__txt {
  width: 50%;
  position: relative;
}

.logistics_content .__txt::before {
  content: "";
  width: 100%;
  height: 50vh;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fafbfd;
}

.logistics_content .__txt:last-child {
  padding-bottom: 50vh;
}

.logistics_content .__txt .__area {
  padding-top: 30vh;
  position: relative;
}

.logistics_content .__txt .__area::before {
  content: "";
  width: 100%;
  height: calc(30vh + 2px);
  position: absolute;
  top: -1px;
  left: 0;
  background-color: #fafbfd;
}

.logistics_content .__wrap {
  margin-top: -0.05rem;
  padding: 0.25rem 0;
  background-color: #fafbfd;
}

.logistics_content .__inner {
  width: 5.6rem;
  margin-left: 0.4rem;
}

.logistics_content .__mask_svg {
  height: 3rem;
}

.logistics_content .__mask_svg text {
  font-family: "Helvetica Neue", "Arial Narrow", Arial, sans-serif;
  font-size: 3rem;
  font-weight: 700;
  fill: #000;
}

.logistics_content .__tit {
  font-size: 0.32rem;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-height: 1.5;
}

.logistics_content .__desc {
  margin-top: 0.25rem;
  line-height: 2;
}

.logistics_content .__desc:not(:first-of-type) {
  margin-top: 2em;
}

@media screen and (max-width: 767.98px) {
  .logistics_content {
    padding: 1rem 0 0;
  }
  .logistics_content::before {
    height: 1rem;
  }
  .logistics_content .__txt {
    width: 100%;
  }
  .logistics_content .__txt::before {
    height: 0.4rem;
    bottom: 1px;
  }
  .logistics_content .__txt:last-child {
    padding-bottom: 0.4rem;
  }
  .logistics_content .__txt .__area {
    padding-top: 0;
  }
  .logistics_content .__txt .__area::before {
    content: none;
  }
  .logistics_content .__wrap {
    margin-top: -0.05rem;
    padding: 0.2rem 0 0.8rem;
  }
  .logistics_content .__inner {
    width: 100%;
    margin-left: 0;
    padding: 0 0.2rem 0;
  }
  .logistics_content .__mask_svg {
    height: 1.5rem;
  }
  .logistics_content .__mask_svg text {
    font-size: 1.5rem;
  }
  .logistics_content .__tit {
    font-size: 0.32rem;
    text-align: center;
  }
  .logistics_content .__desc {
    margin-top: 0.25rem;
  }
}

.numbers_content {
  padding-bottom: 3rem;
  position: relative;
}

.numbers_content::before {
  content: "";
  width: 100%;
  height: 3rem;
  position: absolute;
  bottom: 0.03rem;
  left: 0;
  background-color: #fafbfd;
}

.numbers_content .__intro_txt {
  padding: 1.55rem 0 1rem;
  font-size: 0.16rem;
  text-align: center;
  line-height: 2;
  background-color: #fafbfd;
}

.numbers_content .__intro_txt .__notes {
  margin-top: 0.05rem;
  display: block;
  font-size: 0.12rem;
}

.numbers_content .__lists_wrap {
  max-width: 12.8rem;
  margin: 0 auto;
  position: relative;
}

.numbers_content .__lists {
  margin-top: -1px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr);
}

.numbers_content .__lists::before, .numbers_content .__lists::after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #fafbfd;
}

.numbers_content .__lists::before {
  left: calc(-50vw + 50%);
  width: calc(50vw - 49%);
}

.numbers_content .__lists::after {
  right: calc(-50vw + 50%);
  width: calc(50vw - 49%);
}

.numbers_content .__lists li {
  width: 6.4rem;
  position: relative;
}

.numbers_content .__lists li:nth-of-type(odd) {
  -webkit-transform: translateX(1px);
          transform: translateX(1px);
}

.numbers_content .__lists li:nth-of-type(even) {
  -webkit-transform: translateX(-1px);
          transform: translateX(-1px);
}

.numbers_content .__lists li:nth-child(n + 3) {
  margin-top: -0.03rem;
}

.numbers_content .__content {
  width: calc(100% - 0.8rem);
  position: absolute;
  text-align: center;
  top: 0.4rem;
  left: 0.4rem;
  color: #fff;
}

.numbers_content .__before {
  min-height: 1.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.1rem 0;
}

.numbers_content .__before .__icon img {
  width: auto;
  height: 0.6rem;
}

.numbers_content .__before .__tit {
  font-size: 0.24rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.numbers_content .__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 0.35rem;
}

.numbers_content .__wrap .__count {
  font-size: 1rem;
  margin: 0 0.05rem;
}

.numbers_content .__wrap .__pre {
  font-size: 0.32rem;
}

.numbers_content .__wrap .__unit {
  font-size: 0.32rem;
}

.numbers_content .__count {
  font-size: 1.6rem;
  font-weight: 700;
  font-family: "Helvetica Neue", "Arial Narrow", Arial, sans-serif;
}

.numbers_content .__unit {
  font-size: 0.54rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.numbers_content .__notes {
  margin-top: 1em;
  font-size: 0.16rem;
  font-weight: 700;
}

@media screen and (max-width: 767.98px) {
  .numbers_content {
    padding-bottom: 1.5rem;
  }
  .numbers_content::before {
    height: 1.5rem;
    bottom: 0.03rem;
  }
  .numbers_content .__intro_txt {
    padding: 0.75rem 0 0.5rem;
    font-size: 0.14rem;
  }
  .numbers_content .__lists {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }
  .numbers_content .__lists li {
    width: 100%;
  }
  .numbers_content .__lists li:nth-of-type(odd) {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .numbers_content .__lists li:nth-of-type(even) {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .numbers_content .__lists li:nth-child(n + 3) {
    margin-top: 0;
  }
  .numbers_content .__lists li:not(:first-of-type) {
    margin-top: -0.05rem;
  }
  .numbers_content .__before {
    min-height: 0.9rem;
    gap: 0.1rem 0;
  }
  .numbers_content .__before .__icon img {
    height: 0.3rem;
  }
  .numbers_content .__before .__tit {
    font-size: 0.2rem;
  }
  .numbers_content .__wrap {
    gap: 0 0.2rem;
  }
  .numbers_content .__wrap .__count {
    font-size: 0.6rem;
    margin: 0 0.05rem;
  }
  .numbers_content .__wrap .__pre {
    font-size: 0.22rem;
  }
  .numbers_content .__wrap .__unit {
    font-size: 0.22rem;
  }
  .numbers_content .__count {
    font-size: 1rem;
  }
  .numbers_content .__unit {
    font-size: 0.4rem;
  }
  .numbers_content .__notes {
    font-size: 0.14rem;
  }
}

/* about/徳島港湾荷役について
--------------------------------------------------------------*/
.about_bg {
  width: 100%;
  height: 3.84rem;
  position: relative;
  overflow: hidden;
}

.about_bg::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #e3e8f2;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition: all 0.4s ease-in-out 1s;
  transition: all 0.4s ease-in-out 1s;
}

.about_bg img {
  vertical-align: middle;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

.about_bg.show::after {
  -webkit-animation: viewinMask 1s ease-in-out forwards;
          animation: viewinMask 1s ease-in-out forwards;
}

.about_bg.show img {
  -webkit-animation: viewinImg 1s ease-in-out forwards;
          animation: viewinImg 1s ease-in-out forwards;
}

@-webkit-keyframes viewinMask {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  40% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}

@keyframes viewinMask {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  40% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}

@-webkit-keyframes viewinImg {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  40% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}

@keyframes viewinImg {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  40% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}

@media screen and (max-width: 767.98px) {
  .about_bg {
    height: 1.92rem;
  }
}

.__about_link_wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.4rem;
}

.__about_link_wrap .__item {
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.__about_link_wrap .__item::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.__about_link_wrap .__item:hover {
  opacity: 1;
}

.__about_link_wrap .__item:hover .__item_img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.__about_link_wrap .__item:hover .mod_btn a::before,
.__about_link_wrap .__item:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.__about_link_wrap .__item_img {
  overflow: hidden;
  aspect-ratio: 2 / 1;
}

.__about_link_wrap .__item_img img {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  will-change: transform;
}

.__about_link_wrap .__item_tit {
  padding: 0.05rem 0 0.05rem 0.2rem;
  color: #fff;
  position: absolute;
  z-index: 1;
  top: 0.2rem;
  left: 0.2rem;
  border-left: 1px solid #fff;
}

.__about_link_wrap .__item_tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.__about_link_wrap .__item_tit .__en {
  margin-top: 0.1rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

.__about_link_wrap .mod_btn {
  position: absolute;
  z-index: 1;
  bottom: 0.2rem;
  right: 0.2rem;
}

@media screen and (max-width: 767.98px) {
  .__about_link_wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.2rem;
  }
  .__about_link_wrap .__item_tit {
    padding: 0.05rem 0 0.05rem 0.1rem;
    z-index: 1;
    top: 0.1rem;
    left: 0.1rem;
  }
  .__about_link_wrap .__item_tit .__ja {
    font-size: 0.18rem;
  }
  .__about_link_wrap .__item_tit .__en {
    margin-top: 0.07rem;
    font-size: 0.1rem;
  }
  .__about_link_wrap .mod_btn {
    bottom: 0.1rem;
    right: 0.1rem;
  }
}

.__about_sustainability {
  padding: 2rem 0 0;
}

.__about_sustainability .__before {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.__about_sustainability .__before .__content {
  width: calc(100% - 6rem);
}

.__about_sustainability .__before .__cat {
  margin-top: 0.75rem;
  font-size: 0.32rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.__about_sustainability .__before .__txt {
  margin-top: 0.3rem;
  line-height: 2;
}

.__about_sustainability .__before .mod_btn {
  margin-top: 0.55rem;
}

.__about_sustainability .__before .__img {
  width: 6rem;
}

@media screen and (max-width: 767.98px) {
  .__about_sustainability {
    padding: 1rem 0 0;
  }
  .__about_sustainability .__before {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .__about_sustainability .__before .__content {
    width: 100%;
    display: contents;
  }
  .__about_sustainability .__before .mod_tit,
  .__about_sustainability .__before .__cat {
    -webkit-box-ordinal-group: -1;
    -webkit-order: -2;
        -ms-flex-order: -2;
            order: -2;
  }
  .__about_sustainability .__before .__cat {
    margin-top: 0.2rem;
    font-size: 0.18rem;
  }
  .__about_sustainability .__before .__txt {
    margin-top: 0.3rem;
  }
  .__about_sustainability .__before .mod_btn {
    margin-top: 0.3rem;
  }
  .__about_sustainability .__before .__img {
    width: 100%;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
    margin-top: 0.4rem;
  }
}

.__about_business {
  margin-top: 2rem;
}

.__about_business .__item {
  width: 100%;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.__about_business .__item::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.__about_business .__item:hover {
  opacity: 1;
}

.__about_business .__item:hover .__item_img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.__about_business .__item:hover .mod_btn a::before,
.__about_business .__item:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.__about_business .__item_img {
  overflow: hidden;
}

.__about_business .__item_img img {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  will-change: transform;
}

.__about_business .__item_tit {
  padding: 0.05rem 0 0.05rem 0.2rem;
  color: #fff;
  position: absolute;
  z-index: 1;
  top: 0.2rem;
  left: 0.2rem;
  border-left: 1px solid #fff;
}

.__about_business .__item_tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.__about_business .__item_tit .__en {
  margin-top: 0.1rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

.__about_business .mod_btn {
  position: absolute;
  z-index: 1;
  bottom: 0.2rem;
  right: 0.2rem;
}

@media screen and (max-width: 767.98px) {
  .__about_business {
    margin-top: 1rem;
  }
  .__about_business .__item_img {
    height: 1.4rem;
  }
  .__about_business .__item_tit {
    padding: 0.05rem 0 0.05rem 0.1rem;
    z-index: 1;
    top: 0.1rem;
    left: 0.1rem;
  }
  .__about_business .__item_tit .__ja {
    font-size: 0.18rem;
  }
  .__about_business .__item_tit .__en {
    margin-top: 0.07rem;
    font-size: 0.1rem;
  }
  .__about_business .mod_btn {
    bottom: 0.1rem;
    right: 0.1rem;
  }
}

/* company/会社概要
--------------------------------------------------------------*/
.wrapper.company_page {
  overflow: visible;
}

.company_content .company_message .__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.company_content .company_message .__content {
  width: calc(100% - 6.8rem);
}

.company_content .company_message .__pos {
  margin-top: 0.65rem;
  font-size: 0.12rem;
  font-weight: 700;
}

.company_content .company_message .__pos .__name {
  margin-top: 0.1rem;
  display: block;
  font-size: 0.32rem;
  letter-spacing: 0.06em;
}

.company_content .company_message .__img {
  width: 6.8rem;
}

.company_content .company_message .__txt {
  margin-top: 0.75rem;
}

.company_content .company_message .__desc {
  line-height: 2;
}

.company_content .company_message .__desc:not(:first-of-type) {
  margin-top: 2em;
}

@media screen and (max-width: 767.98px) {
  .company_content .company_message .__wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .company_content .company_message .__content {
    width: 100%;
    display: contents;
  }
  .company_content .company_message .mod_tit {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
  }
  .company_content .company_message .__pos {
    margin-top: 0.2rem;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
  }
  .company_content .company_message .__pos .__name {
    margin-top: 0.1rem;
    font-size: 0.26rem;
  }
  .company_content .company_message .__img {
    width: 100%;
    margin-top: 0.2rem;
  }
  .company_content .company_message .__txt {
    margin-top: 0.35rem;
  }
}

.company_content .company_outline {
  padding: 2rem 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.company_content .company_outline .mod_tit {
  width: calc(100% - 8rem);
  padding-top: 0.65rem;
  position: -webkit-sticky;
  position: sticky;
  top: 0.6rem;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.company_content .company_outline .__lists {
  width: 8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-top: 1px solid #e3e8f2;
}

.company_content .company_outline .__lists dt,
.company_content .company_outline .__lists dd {
  padding: 0.4rem 0;
  line-height: 1.5;
  border-bottom: 1px solid #e3e8f2;
}

.company_content .company_outline .__lists dt {
  width: 2rem;
}

.company_content .company_outline .__lists dd {
  width: calc(100% - 2rem);
}

.company_content .company_outline .__lists dd p {
  padding: 0 0.4rem;
}

.company_content .company_outline .__lists dd p:not(:first-of-type) {
  margin-top: 1em;
}

.company_content .company_outline .__lists dd a {
  color: #0b3a8e;
  text-decoration: underline;
}

@media screen and (max-width: 767.98px) {
  .company_content .company_outline {
    padding: 1rem 0 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.4rem 0;
  }
  .company_content .company_outline .mod_tit {
    width: 100%;
    padding-top: 0;
    position: static;
  }
  .company_content .company_outline .__lists {
    width: 100%;
  }
  .company_content .company_outline .__lists dt,
  .company_content .company_outline .__lists dd {
    padding: 0.2rem 0;
  }
  .company_content .company_outline .__lists dt {
    width: 0.9rem;
    font-weight: 700;
  }
  .company_content .company_outline .__lists dd {
    width: calc(100% - 0.9rem);
  }
  .company_content .company_outline .__lists dd p {
    padding: 0 0.1rem;
  }
}

.company_content .company_history {
  padding: 2rem 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.company_content .company_history .mod_tit {
  width: calc(100% - 8rem);
  padding-top: 0.65rem;
  position: -webkit-sticky;
  position: sticky;
  top: 0.6rem;
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.company_content .company_history .__parent_lists {
  width: 8rem;
  position: relative;
  padding: 0.6rem 0;
}

.company_content .company_history .__parent_lists::before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 1.7rem;
  background-color: #e3e8f2;
}

.company_content .company_history .__parent_lists li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.company_content .company_history .__parent_lists li:not(:first-of-type) {
  margin-top: 0.63rem;
}

.company_content .company_history .__parent_lists .year {
  width: 1.7rem;
  font-size: 0.56rem;
  color: #0b3a8e;
  font-weight: 700;
  font-style: normal;
  position: relative;
}

.company_content .company_history .__parent_lists .year::before, .company_content .company_history .__parent_lists .year::after {
  content: "";
  position: absolute;
  background-color: #e3e8f2;
}

.company_content .company_history .__parent_lists .year::before {
  width: 0.2rem;
  height: 0.2rem;
  top: calc(50% - 0.1rem);
  left: 1.6rem;
  border-radius: 50%;
}

.company_content .company_history .__parent_lists .year::after {
  width: 0.6rem;
  height: 1px;
  top: 50%;
  right: -0.6rem;
}

.company_content .company_history .__parent_lists .__wrap {
  width: calc(100% - 1.7rem);
  padding: 0.17rem 0 0 1.1rem;
}

.company_content .company_history .__parent_lists .__child_lists:not(:first-of-type) {
  margin-top: 0.4rem;
}

.company_content .company_history .__parent_lists .__child_lists dt {
  font-size: 0.24rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.company_content .company_history .__parent_lists .__child_lists dd {
  margin-top: 0.35rem;
  line-height: 1.5;
}

@media screen and (max-width: 767.98px) {
  .company_content .company_history {
    padding: 1rem 0 0;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .company_content .company_history .mod_tit {
    width: 100%;
    padding-top: 0;
    position: static;
  }
  .company_content .company_history .__parent_lists {
    width: 100%;
    margin-top: 0.4rem;
    padding: 0.3rem 0;
  }
  .company_content .company_history .__parent_lists::before {
    left: 0.1rem;
  }
  .company_content .company_history .__parent_lists li:not(:first-of-type) {
    margin-top: 0.63rem;
  }
  .company_content .company_history .__parent_lists .year {
    width: 100%;
    font-size: 0.48rem;
    padding-left: 0.4rem;
  }
  .company_content .company_history .__parent_lists .year::before {
    left: 0;
  }
  .company_content .company_history .__parent_lists .year::after {
    content: none;
  }
  .company_content .company_history .__parent_lists .__wrap {
    width: 100%;
    padding: 0.25rem 0 0 0.4rem;
  }
  .company_content .company_history .__parent_lists .__child_lists:not(:first-of-type) {
    margin-top: 0.3rem;
  }
  .company_content .company_history .__parent_lists .__child_lists dt {
    font-size: 0.24rem;
  }
  .company_content .company_history .__parent_lists .__child_lists dd {
    margin-top: 0.2rem;
  }
}

/* business/事業内容
--------------------------------------------------------------*/
.business_bg {
  width: 100%;
  height: 3.84rem;
  position: relative;
  overflow: hidden;
}

.business_bg::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #e3e8f2;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition: all 0.4s ease-in-out 1s;
  transition: all 0.4s ease-in-out 1s;
}

.business_bg img {
  vertical-align: middle;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -o-object-position: center 73%;
     object-position: center 73%;
}

.business_bg.show::after {
  -webkit-animation: viewinMask 1s ease-in-out forwards;
          animation: viewinMask 1s ease-in-out forwards;
}

.business_bg.show img {
  -webkit-animation: viewinImg 1s ease-in-out forwards;
          animation: viewinImg 1s ease-in-out forwards;
}

@keyframes viewinMask {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  40% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}

@keyframes viewinImg {
  0% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  40% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  60% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
  }
}

@media screen and (max-width: 767.98px) {
  .business_bg {
    height: 1.92rem;
  }
}

.business_link_wrap {
  padding: 0 0.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.4rem;
  background-color: #fafbfd;
}

.business_link_wrap .__item {
  width: 100%;
  min-height: 3.3rem;
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.business_link_wrap .__item::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
}

.business_link_wrap .__item:hover {
  opacity: 1;
}

.business_link_wrap .__item:hover .__item_img img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.business_link_wrap .__item:hover .mod_btn a::before,
.business_link_wrap .__item:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.business_link_wrap .__item_img {
  overflow: hidden;
  aspect-ratio: 2 / 1;
}

.business_link_wrap .__item_img img {
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  will-change: transform;
}

.business_link_wrap .__item_tit {
  padding: 0.05rem 0 0.05rem 0.2rem;
  color: #fff;
  position: absolute;
  z-index: 1;
  top: 0.2rem;
  left: 0.3rem;
  border-left: 1px solid #fff;
}

.business_link_wrap .__item_tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.business_link_wrap .__item_tit .__en {
  margin-top: 0.12rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
}

.business_link_wrap .mod_btn {
  position: absolute;
  z-index: 1;
  bottom: 0.2rem;
  right: 0.3rem;
}

@media screen and (max-width: 767.98px) {
  .business_link_wrap {
    padding: 0 0.2rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.2rem;
  }
  .business_link_wrap .__item {
    min-height: auto;
  }
  .business_link_wrap .__item_tit {
    padding: 0.05rem 0 0.05rem 0.1rem;
    top: 0.1rem;
    left: 0.1rem;
  }
  .business_link_wrap .__item_tit .__ja {
    font-size: 0.18rem;
  }
  .business_link_wrap .__item_tit .__en {
    margin-top: 0.07rem;
    font-size: 0.1rem;
  }
  .business_link_wrap .mod_btn {
    bottom: 0.1rem;
    right: 0.1rem;
  }
}

.business_group {
  padding: 2.5rem 0 0;
}

.business_group .mod_tit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.business_group .__img {
  margin-top: 0.85rem;
}

.business_group .__content {
  width: 6.4rem;
  margin: 0.85rem auto 0;
}

.business_group .__tit {
  font-size: 0.32rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.business_group .__cat {
  margin-top: 0.2rem;
  font-size: 0.18rem;
  letter-spacing: 0.06em;
  font-weight: 700;
  color: #0b3a8e;
}

.business_group .__desc {
  margin-top: 0.4rem;
  line-height: 2;
}

.business_group .mod_btn02 a {
  margin: 0.75rem auto 0;
}

@media screen and (max-width: 767.98px) {
  .business_group {
    padding: 1.25rem 0 0;
  }
  .business_group .__img {
    margin-top: 0.4rem;
  }
  .business_group .__content {
    width: 100%;
    margin: 0.4rem auto 0;
  }
  .business_group .__tit {
    font-size: 0.24rem;
  }
  .business_group .__cat {
    margin-top: 0.1rem;
    font-size: 0.14rem;
  }
  .business_group .__desc {
    margin-top: 0.2rem;
  }
  .business_group .mod_btn02 a {
    margin: 0.4rem auto 0;
  }
}

/* warehousing/倉庫事業
--------------------------------------------------------------*/
.warehousing_content._mod_under_layout {
  background-color: transparent;
}

.warehousing_content {
  position: relative;
}

.warehousing_content::before, .warehousing_content::after {
  content: "";
  width: 100%;
  position: absolute;
  background-color: #fafbfd;
}

.warehousing_content::before {
  top: 1px;
  height: 1.6rem;
}

.warehousing_content::after {
  bottom: 1px;
  height: 2rem;
}

.warehousing_content .__before {
  padding: 0 0.2rem 2rem;
  text-align: center;
  background-color: #fafbfd;
}

.warehousing_content .__before .__txt {
  line-height: 2;
}

.warehousing_content .__before .mod_btn02 a {
  margin: 0.35rem auto 0;
}

.warehousing_content .__after .__mod_tit_wrap {
  margin: -2px 0;
  background-color: #fafbfd;
}

.warehousing_content .__after .mod_tit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.warehousing_content .__after .__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.warehousing_content .__after .__wrap::before, .warehousing_content .__after .__wrap::after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #fafbfd;
}

.warehousing_content .__after .__wrap::before {
  left: calc(-50vw + 50%);
  width: calc(50vw - 50% + 2.82rem);
}

.warehousing_content .__after .__wrap::after {
  right: calc(-50vw + 50%);
  width: calc(50vw - 49%);
}

.warehousing_content .__after .__side {
  width: 2.8rem;
  position: absolute;
  padding-top: 1.2rem;
  top: 0;
  left: 0;
}

.warehousing_content .__after .__side._fixed {
  position: fixed;
  top: 0;
  left: var(--side-left);
}

.warehousing_content .__after .__side._bottom {
  padding-bottom: auto;
  position: absolute;
  top: auto;
  height: auto;
  bottom: 0;
  z-index: 100;
}

.warehousing_content .__after .__side li:not(:first-of-type) {
  margin-top: 0.2rem;
}

.warehousing_content .__after .__side a {
  display: block;
  padding-right: 0.4rem;
  position: relative;
  color: #666;
  line-height: 1.5;
}

.warehousing_content .__after .__side a::before {
  content: "→";
  position: absolute;
  left: -0.4rem;
  color: #0b3a8e;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  opacity: 0;
}

.warehousing_content .__after .__side .current {
  font-weight: bold;
  color: #000;
}

.warehousing_content .__after .__side .current::before {
  left: -0.25rem;
  opacity: 1;
}

.warehousing_content .__after .__content_wrap {
  margin: 1.1rem 0 0 2.8rem;
  width: calc(100% - 2.8rem);
  position: relative;
}

.warehousing_content .__after .__content_wrap::before {
  content: "";
  width: 100%;
  height: 1.1rem;
  position: absolute;
  top: -1.1rem;
  left: 0;
  background-color: #fafbfd;
}

.warehousing_content .__after .__content:not(:first-of-type) {
  margin-top: 0.6rem;
  position: relative;
}

.warehousing_content .__after .__content:not(:first-of-type)::before {
  content: "";
  width: 100%;
  height: 0.6rem;
  position: absolute;
  top: -0.61rem;
  left: 0;
  background-color: #fafbfd;
}

.warehousing_content .__after .__tit {
  padding: 0.24rem;
  font-size: 0.24rem;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
}

.warehousing_content .__after .__item_wrap {
  padding-top: 0.55rem;
  background-color: #fafbfd;
}

.warehousing_content .__after .__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 10;
}

.warehousing_content .__after .__item:not(:first-of-type) {
  margin-top: 0.4rem;
}

.warehousing_content .__after .__img {
  width: 3.8rem;
  height: 2.54rem;
}

.warehousing_content .__after .__summary {
  width: calc(100% - 3.8rem);
  padding: 0.2rem 0 0 0.4rem;
}

.warehousing_content .__after .__stit {
  font-size: 0.2rem;
  font-weight: 700;
  line-height: 1.5;
}

.warehousing_content .__after .__lists {
  margin-top: 0.25rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.warehousing_content .__after .__lists dt,
.warehousing_content .__after .__lists dd {
  line-height: 1.4;
}

.warehousing_content .__after .__lists dt:not(:first-of-type),
.warehousing_content .__after .__lists dd:not(:first-of-type) {
  margin-top: 0.12rem;
}

.warehousing_content .__after .__lists dt {
  width: 1rem;
}

.warehousing_content .__after .__lists dd {
  width: calc(100% - 1rem);
}

.warehousing_content .__after .mod_btn {
  margin-top: 0.3rem;
}

.warehousing_content .__after .mod_btn a {
  margin-left: auto;
}

@media screen and (max-width: 767.98px) {
  .warehousing_content::before {
    height: 0.8rem;
  }
  .warehousing_content::after {
    height: 1rem;
  }
  .warehousing_content .__before {
    padding-bottom: 1rem;
  }
  .warehousing_content .__after .__mod_tit_wrap {
    margin: -2px 0;
  }
  .warehousing_content .__after .__wrap {
    display: block;
  }
  .warehousing_content .__after .__wrap::before {
    left: calc(-50vw + 50%);
    width: calc(50vw - 50% + 1px);
  }
  .warehousing_content .__after .__wrap::after {
    right: calc(-50vw + 50%);
    width: calc(50vw - 49%);
  }
  .warehousing_content .__after .__content_wrap {
    margin: 0.5rem 0 0 0;
    width: 100%;
  }
  .warehousing_content .__after .__content_wrap::before {
    width: 100vw;
    height: 0.51rem;
    top: -0.5rem;
    left: -0.2rem;
  }
  .warehousing_content .__after .__tit {
    padding: 0.2rem;
    font-size: 0.2rem;
  }
  .warehousing_content .__after .__item_wrap {
    padding-top: 0.3rem;
  }
  .warehousing_content .__after .__item {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .warehousing_content .__after .__item:not(:first-of-type) {
    margin-top: 0.4rem;
  }
  .warehousing_content .__after .__img {
    width: 100%;
  }
  .warehousing_content .__after .__summary {
    width: 100%;
    padding: 0.15rem 0 0 0;
  }
  .warehousing_content .__after .__stit {
    font-size: 0.18rem;
  }
  .warehousing_content .__after .__lists {
    margin-top: 0.2rem;
  }
}

/* recruit/採用情報
--------------------------------------------------------------*/
.recruit_content .recruit_about .mod_tit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.recruit_content .recruit_about .__txt {
  margin-top: 0.9rem;
  text-align: center;
  font-size: 0.16rem;
  line-height: 3;
}

.recruit_content .recruit_about .__wrap {
  margin-top: 0.7rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.3rem;
}

.recruit_content .recruit_about .__item {
  width: 3.8rem;
}

.recruit_content .recruit_about .__item a {
  overflow: hidden;
  padding: 0.23rem 0.2rem;
  display: block;
  background-color: #fff;
  -webkit-transition: -webkit-box-shadow 0.4s;
  transition: -webkit-box-shadow 0.4s;
  transition: box-shadow 0.4s;
  transition: box-shadow 0.4s, -webkit-box-shadow 0.4s;
  -webkit-box-shadow: 0 0 0.12rem rgba(0, 0, 0, 0.08);
          box-shadow: 0 0 0.12rem rgba(0, 0, 0, 0.08);
}

.recruit_content .recruit_about .__item a:hover {
  opacity: 1;
  -webkit-box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.1);
          box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.1);
}

.recruit_content .recruit_about .__item a:hover .mod_btn a::before,
.recruit_content .recruit_about .__item a:hover .mod_btn div::before {
  width: calc(100% + 0.3rem);
}

.recruit_content .recruit_about .__tit {
  padding: 0.05rem 0.2rem;
  border-left: 1px solid #000;
}

.recruit_content .recruit_about .__tit .__ja {
  font-size: 0.24rem;
  font-weight: 700;
}

.recruit_content .recruit_about .__tit .__en {
  margin-top: 0.1rem;
  font-size: 0.12rem;
  letter-spacing: 0.04em;
  color: #0b3a8e;
}

.recruit_content .recruit_about .__icon {
  min-height: 1.37rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.recruit_content .recruit_about .__icon img {
  width: auto;
  height: 0.6rem;
}

.recruit_content .recruit_about .mod_btn div {
  margin-left: auto;
}

@media screen and (max-width: 767.98px) {
  .recruit_content .recruit_about .__txt {
    margin-top: 0.5rem;
    text-align: left;
    font-size: 0.14rem;
  }
  .recruit_content .recruit_about .__wrap {
    margin-top: 0.35rem;
    gap: 0.3rem;
  }
  .recruit_content .recruit_about .__item {
    width: 100%;
  }
  .recruit_content .recruit_about .__item a {
    padding: 0.2rem;
    display: block;
    background-color: #fff;
    -webkit-transition: -webkit-box-shadow 0.4s;
    transition: -webkit-box-shadow 0.4s;
    transition: box-shadow 0.4s;
    transition: box-shadow 0.4s, -webkit-box-shadow 0.4s;
    -webkit-box-shadow: 0 0 0.12rem rgba(0, 0, 0, 0.08);
            box-shadow: 0 0 0.12rem rgba(0, 0, 0, 0.08);
  }
  .recruit_content .recruit_about .__item a:hover {
    opacity: 1;
    -webkit-box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.1);
            box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.1);
  }
  .recruit_content .recruit_about .__item a:hover .mod_btn a::before,
  .recruit_content .recruit_about .__item a:hover .mod_btn div::before {
    width: calc(100% + 0.3rem);
  }
  .recruit_content .recruit_about .__tit .__ja {
    font-size: 0.2rem;
  }
  .recruit_content .recruit_about .__tit .__en {
    font-size: 0.12rem;
  }
  .recruit_content .recruit_about .__icon {
    min-height: 1rem;
  }
  .recruit_content .recruit_about .__icon img {
    height: 0.5rem;
  }
}

.recruit_content .recruit_job {
  padding: 2rem 0 0;
}

.recruit_content .recruit_job .mod_tit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.recruit_content .recruit_job .__item_wrap {
  margin-top: 0.8rem;
}

.recruit_content .recruit_job .__item {
  padding: 0.3rem 0.3rem 0.6rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  overflow: hidden;
  background-color: #fff;
  -webkit-box-shadow: 0 0 0.12rem rgba(0, 0, 0, 0.08);
          box-shadow: 0 0 0.12rem rgba(0, 0, 0, 0.08);
}

.recruit_content .recruit_job .__item:not(:first-of-type) {
  margin-top: 0.4rem;
}

.recruit_content .recruit_job .__img {
  width: 2.8rem;
  height: 1.86rem;
}

.recruit_content .recruit_job .__summary {
  width: calc(100% - 2.8rem);
  padding: 0 0.4rem;
}

.recruit_content .recruit_job .__tit {
  font-size: 0.2rem;
  font-weight: 700;
}

.recruit_content .recruit_job .__desc {
  margin-top: 0.2rem;
  line-height: 2;
}

.recruit_content .recruit_job .mod_btn {
  position: absolute;
  bottom: 0.3rem;
  right: 0.3rem;
}

@media screen and (max-width: 767.98px) {
  .recruit_content .recruit_job {
    padding: 1rem 0 0;
  }
  .recruit_content .recruit_job .__item_wrap {
    margin-top: 0.4rem;
  }
  .recruit_content .recruit_job .__item {
    padding: 0.35rem 0.2rem 0.8rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .recruit_content .recruit_job .__item:not(:first-of-type) {
    margin-top: 0.2rem;
  }
  .recruit_content .recruit_job .__img {
    width: 100%;
    height: 1.86rem;
    margin-top: 0.25rem;
  }
  .recruit_content .recruit_job .__summary {
    width: 100%;
    display: contents;
  }
  .recruit_content .recruit_job .__tit {
    font-size: 0.2rem;
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
  }
}

/* interview/社員インタビュー
--------------------------------------------------------------*/
.interview_content .__item:not(:first-of-type) {
  margin-top: 1rem;
}

.interview_content .__img {
  width: 8rem;
  height: 5.34rem;
  position: relative;
}

.interview_content .__cat {
  min-width: 1.8rem;
  padding: 0.25rem 0.2rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #fafbfd;
}

.interview_content .__cat .__name {
  font-size: 0.24rem;
  letter-spacing: 0.06em;
  font-weight: 700;
}

.interview_content .__cat .__small {
  margin-left: 0.05rem;
  font-size: 0.16rem;
}

.interview_content .__cat .__post {
  margin-top: 0.1rem;
  color: #0b3a8e;
}

.interview_content .__btn {
  width: 1.6rem;
  line-height: 0.4rem;
  margin: 0.6rem auto 0;
  letter-spacing: 0.06em;
  text-align: center;
  border-radius: 0.2rem;
  color: #0b3a8e;
  background-color: #fff;
  border: 1px solid #0b3a8e;
  cursor: pointer;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.interview_content .__btn._open {
  color: #fff;
  background-color: #0b3a8e;
}

.interview_content .__content {
  overflow: hidden;
  height: 0;
  -webkit-transition: height 0.8s ease;
  transition: height 0.8s ease;
}

.interview_content .__lists {
  margin-top: 0.6rem;
}

.interview_content .__lists dt,
.interview_content .__lists dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 0.2rem;
}

.interview_content .__lists dt p,
.interview_content .__lists dt .__inner,
.interview_content .__lists dd p,
.interview_content .__lists dd .__inner {
  width: 5.6rem;
  padding: 0.2rem;
  line-height: 1.5;
  border-radius: 0.2rem;
  position: relative;
}

.interview_content .__lists dt p::before,
.interview_content .__lists dt .__inner::before,
.interview_content .__lists dd p::before,
.interview_content .__lists dd .__inner::before {
  content: "";
  width: 0.14rem;
  height: 0.124rem;
  position: absolute;
  top: 0.25rem;
  -webkit-clip-path: polygon(100% 0, 0 50%, 100% 100%);
          clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.interview_content .__lists dt:not(:first-of-type) {
  margin-top: 0.4rem;
}

.interview_content .__lists dt p {
  color: #fff;
  background-color: #0b3a8e;
}

.interview_content .__lists dt p::before {
  left: -0.13rem;
  background-color: #0b3a8e;
}

.interview_content .__lists dd {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: row-reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  margin-top: 0.2rem;
}

.interview_content .__lists dd .__inner {
  background-color: #e3e8f2;
}

.interview_content .__lists dd .__inner p {
  width: auto;
  padding: 0;
}

.interview_content .__lists dd .__inner::before {
  right: -0.13rem;
  background-color: #e3e8f2;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

.interview_content .__lists .__icon {
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 0.24rem;
  font-weight: 700;
  font-style: normal;
}

.interview_content .__lists .__q_icon {
  color: #fff;
  background-color: #0b3a8e;
}

.interview_content .__lists .__a_icon {
  color: #000;
  background-color: #e3e8f2;
}

@media screen and (max-width: 767.98px) {
  .interview_content .__item:not(:first-of-type) {
    margin-top: 0.6rem;
  }
  .interview_content .__img {
    width: 100%;
    height: 2.5rem;
  }
  .interview_content .__cat {
    min-width: 1.4rem;
    padding: 0.15rem 0.2rem;
  }
  .interview_content .__cat .__name {
    font-size: 0.2rem;
  }
  .interview_content .__cat .__small {
    font-size: 0.14rem;
  }
  .interview_content .__btn {
    width: 1.6rem;
    line-height: 0.4rem;
    margin: 0.3rem auto 0;
  }
  .interview_content .__lists {
    margin-top: 0.3rem;
  }
  .interview_content .__lists dt,
  .interview_content .__lists dd {
    gap: 0 0.15rem;
  }
  .interview_content .__lists dt p,
  .interview_content .__lists dt .__inner,
  .interview_content .__lists dd p,
  .interview_content .__lists dd .__inner {
    width: calc(100% - 0.55rem);
    padding: 0.15rem;
    font-size: 0.12rem;
    border-radius: 0.1rem;
  }
  .interview_content .__lists dt p::before,
  .interview_content .__lists dt .__inner::before,
  .interview_content .__lists dd p::before,
  .interview_content .__lists dd .__inner::before {
    width: 0.1rem;
    height: 0.085rem;
    top: 0.17rem;
  }
  .interview_content .__lists dt:not(:first-of-type) {
    margin-top: 0.4rem;
  }
  .interview_content .__lists dt p::before {
    left: -0.09rem;
  }
  .interview_content .__lists dd {
    margin-top: 0.2rem;
  }
  .interview_content .__lists dd .__inner::before {
    right: -0.09rem;
  }
  .interview_content .__lists .__icon {
    width: 0.4rem;
    height: 0.4rem;
    font-size: 0.2rem;
  }
}

/* reasons/働く5つの魅力
--------------------------------------------------------------*/
.reasons_content._mod_under_layout {
  padding: 1.6rem 0 1rem;
  background-color: transparent;
}

@media screen and (max-width: 767.98px) {
  .reasons_content._mod_under_layout {
    padding: 0.8rem 0 0.5rem;
  }
}

.reasons_content {
  position: relative;
  text-align: center;
}

.reasons_content::before, .reasons_content::after {
  content: "";
  width: 100%;
  position: absolute;
  left: 0;
  background-color: #fafbfd;
}

.reasons_content::before {
  height: 1.6rem;
  top: 1px;
}

.reasons_content::after {
  height: 2rem;
  bottom: 0;
}

.reasons_content .__p_item {
  position: relative;
}

.reasons_content .__p_item:not(:first-of-type) {
  padding-top: 2.2rem;
}

.reasons_content .__p_item:not(:first-of-type)::before, .reasons_content .__p_item:not(:first-of-type)::after {
  content: "";
  position: absolute;
  top: -1px;
}

.reasons_content .__p_item:not(:first-of-type)::before {
  width: 100%;
  height: 2.3rem;
  left: 0;
  background-color: #fafbfd;
}

.reasons_content .__p_item:not(:first-of-type)::after {
  width: 1px;
  height: 1.6rem;
  left: 50%;
  background-color: #0b3a8e;
}

.reasons_content .__summary {
  margin-top: -0.1rem;
  padding: 0.25rem 0 1rem;
  background-color: #fafbfd;
}

.reasons_content .__mask_svg {
  height: 3rem;
}

.reasons_content .__mask_svg text {
  font-family: "Helvetica Neue", "Arial Narrow", Arial, sans-serif;
  font-size: 3rem;
  font-weight: 700;
  fill: #000;
}

.reasons_content .__tit,
.reasons_content .__cat {
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

.reasons_content .__tit {
  font-size: 0.32rem;
}

.reasons_content .__cat {
  margin-top: 0.15rem;
  font-size: 0.18rem;
  color: #0b3a8e;
}

.reasons_content .__icon {
  min-height: 2.75rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.reasons_content .__icon img {
  width: auto;
  height: 1.2rem;
}

.reasons_content .__child_lists {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.15rem;
}

.reasons_content .__child_lists .__c_item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 1.5rem;
  padding: 0.12rem 0.2rem;
  text-align: center;
  border-radius: 10rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #000;
}

.reasons_content .__child_lists .__c_item._adjust .__small {
  margin-top: 0.5em;
  display: block;
  font-size: 0.12rem;
}

.reasons_content .__notes {
  margin-top: 1em;
  font-size: 0.12rem;
}

@media screen and (max-width: 767.98px) {
  .reasons_content::before {
    height: 0.8rem;
  }
  .reasons_content::after {
    height: 1rem;
  }
  .reasons_content .__p_item:not(:first-of-type) {
    padding-top: 1.1rem;
  }
  .reasons_content .__p_item:not(:first-of-type)::before {
    height: 1.2rem;
  }
  .reasons_content .__p_item:not(:first-of-type)::after {
    height: 0.8rem;
  }
  .reasons_content .__summary {
    margin-top: -0.1rem;
    padding: 0.25rem 0 0.5rem;
  }
  .reasons_content .__mask_svg {
    height: 1.5rem;
  }
  .reasons_content .__mask_svg text {
    font-size: 1.5rem;
  }
  .reasons_content .__tit {
    font-size: 0.28rem;
  }
  .reasons_content .__cat {
    font-size: 0.16rem;
  }
  .reasons_content .__icon {
    min-height: 1.5rem;
  }
  .reasons_content .__icon img {
    height: 0.8rem;
  }
  .reasons_content .__child_lists {
    gap: 0.15rem;
  }
  .reasons_content .__child_lists .__c_item {
    min-width: 1.5rem;
    padding: 0.1rem 0.2rem;
  }
}

/* faq/よくある質問
--------------------------------------------------------------*/
.faq_content .__ac {
  border-top: 1px solid #e3e8f2;
  border-bottom: 1px solid #e3e8f2;
  background-color: #fff;
}

.faq_content .__parent,
.faq_content .__child {
  line-height: 2;
}

.faq_content .__parent {
  padding: 0.3rem 0.8rem;
  cursor: pointer;
  position: relative;
}

.faq_content .__parent::before, .faq_content .__parent::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #0b3a8e;
}

.faq_content .__parent::before {
  top: 50%;
  right: 0.2rem;
  width: 0.2rem;
  height: 0.02rem;
}

.faq_content .__parent::after {
  right: 0.29rem;
  width: 0.02rem;
  height: 0.2rem;
  -webkit-transition: height 0.4s;
  transition: height 0.4s;
}

.faq_content .__parent._active::after {
  height: 0;
}

.faq_content .__parent:not(:first-of-type) {
  border-top: 1px solid #e3e8f2;
}

.faq_content .__icon {
  font-size: 0.4rem;
  font-weight: 700;
  font-style: normal;
  color: #0b3a8e;
  position: absolute;
}

.faq_content .__q_icon {
  top: 0.02rem;
  left: 0.2rem;
}

.faq_content .__a_icon {
  top: -0.1rem;
  left: 0.8rem;
}

.faq_content .__child {
  padding-left: 1.4rem;
  max-height: 0;
  overflow: hidden;
  position: relative;
  -webkit-transition: 0.7s ease max-height;
  transition: 0.7s ease max-height;
}

.faq_content .__wrap {
  padding: 0.15rem 0.85rem 0.4rem 0;
}

@media screen and (max-width: 767.98px) {
  .faq_content .__parent,
  .faq_content .__child {
    font-size: 0.12rem;
  }
  .faq_content .__parent {
    padding: 0.15rem 0.4rem;
  }
  .faq_content .__parent::before {
    right: 0.15rem;
    width: 0.15rem;
    height: 1px;
  }
  .faq_content .__parent::after {
    right: 0.22rem;
    width: 1px;
    height: 0.15rem;
  }
  .faq_content .__icon {
    font-size: 0.24rem;
  }
  .faq_content .__q_icon {
    top: 0.02rem;
    left: 0.1rem;
  }
  .faq_content .__a_icon {
    top: -0.03rem;
    left: 0.4rem;
  }
  .faq_content .__child {
    padding-left: 0.7rem;
  }
  .faq_content .__wrap {
    padding: 0.1rem 0.2rem 0.4rem 0;
  }
}

/* movie/会社ムービー
--------------------------------------------------------------*/
.movie_content .__txt {
  text-align: center;
  font-size: 0.16rem;
  line-height: 2;
}

.movie_content .__wrap {
  margin-top: 0.95rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.2rem;
}

.movie_content iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
}

.movie_content .__main {
  width: 100%;
}

.movie_content .__sub {
  width: calc((100% - (0.2rem * 1)) / 2);
}

.movie_content .mod_btn02 a {
  margin: 0.8rem auto 0;
}

@media screen and (max-width: 767.98px) {
  .movie_content .__txt {
    font-size: 0.14rem;
  }
  .movie_content .__wrap {
    margin-top: 0.45rem;
    gap: 0.2rem;
  }
  .movie_content .__sub {
    width: 100%;
  }
  .movie_content .mod_btn02 a {
    margin: 0.4rem auto 0;
  }
}

/* recruit_detail/募集要項
--------------------------------------------------------------*/
.recruit_detail_content .__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.recruit_detail_content .__img {
  width: 5rem;
  height: 3.33rem;
  aspect-ratio: 500 / 333;
}

.recruit_detail_content .__summary {
  width: 5.4rem;
  padding: 0.45rem 0 0;
}

.recruit_detail_content .__cat,
.recruit_detail_content .__tit {
  letter-spacing: 0.06em;
  font-weight: 700;
}

.recruit_detail_content .__cat {
  font-size: 0.18rem;
  color: #0b3a8e;
}

.recruit_detail_content .__tit {
  font-size: 0.32rem;
  line-height: 1.5;
}

.recruit_detail_content .__txt {
  margin-top: 0.37rem;
  line-height: 2;
}

.recruit_detail_content .__lists {
  margin-top: 1.15rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  border-top: 1px solid #e3e8f2;
  background-color: #fff;
}

.recruit_detail_content .__lists dt,
.recruit_detail_content .__lists dd {
  padding: 0.4rem 0;
  line-height: 1.5;
  border-bottom: 1px solid #e3e8f2;
}

.recruit_detail_content .__lists dt {
  width: 2.4rem;
}

.recruit_detail_content .__lists dt p {
  padding: 0 0.4rem;
}

.recruit_detail_content .__lists dd {
  width: calc(100% - 2.4rem);
}

.recruit_detail_content .__lists dd p {
  padding-right: 0.2rem;
}

.recruit_detail_content .__lists dd p:not(:first-of-type) {
  margin-top: 1em;
}

.recruit_detail_content .__lists dd a {
  color: #0b3a8e;
  text-decoration: underline;
}

.recruit_detail_content .mod_btn02 a {
  margin: 0.8rem auto 0;
}

@media screen and (max-width: 767.98px) {
  .recruit_detail_content .__wrap {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .recruit_detail_content .__img {
    width: 100%;
    height: auto;
    margin-top: 0.3rem;
  }
  .recruit_detail_content .__summary {
    width: 100%;
    display: contents;
  }
  .recruit_detail_content .__cat,
  .recruit_detail_content .__tit {
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1;
    width: 100%;
  }
  .recruit_detail_content .__cat {
    font-size: 0.16rem;
  }
  .recruit_detail_content .__tit {
    font-size: 0.28rem;
  }
  .recruit_detail_content .__txt {
    margin-top: 0.2rem;
  }
  .recruit_detail_content .__lists {
    margin-top: 0.6rem;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .recruit_detail_content .__lists dt,
  .recruit_detail_content .__lists dd {
    padding: 0.2rem 0;
  }
  .recruit_detail_content .__lists dt {
    width: 100%;
    border-bottom: none;
    font-weight: 700;
  }
  .recruit_detail_content .__lists dt p {
    padding: 0 0.2rem;
  }
  .recruit_detail_content .__lists dd {
    width: 100%;
    padding: 0 0 0.2rem;
  }
  .recruit_detail_content .__lists dd p {
    padding-right: 0.2rem;
    padding: 0 0.2rem;
  }
  .recruit_detail_content .mod_btn02 a {
    margin: 0.4rem auto 0;
  }
}

/* entry/エントリーフォーム
--------------------------------------------------------------*/
/*# sourceMappingURL=style.css.map */