@charset "UTF-8";
/* 変数の定義
--------------------------------------------------*/
/* reset
--------------------------------------------------*/
html, body, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body, p {
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.8;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 769px) {
  body, p {
    font-size: 1.6rem;
  }
}

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

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

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

a {
  display: inline-block;
  text-decoration: none;
  opacity: 1;
  transition: all 0.4s ease-out;
}

.img_wrap {
  display: inline-block;
  overflow: hidden;
  transition: all 0.4s ease-out;
}

img {
  display: inline-block;
  border-style: none;
  max-width: 100%;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: all 0.4s ease-out;
}

:focus {
  border-style: none;
  outline: none;
}

/* ie11以下のテキストルール */
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, body {
    font-family: Century, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  }
}
/* 色の定義
--------------------------------------------------*/
/* テキストパーツ
--------------------------------------------------*/
.white {
  color: #fff;
}

.black {
  color: #1C1C1C;
}

.blue {
  color: #0069B5;
}

.l-blue {
  color: #0069B5;
}

.gray {
  color: #F8F8F8;
}

/* フォントの定義
--------------------------------------------------*/
html, body, ul, ol, dl, li, dt, dd, p, div, span, img, svg, a, table, tr, th, td, figure {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.6;
  color: #1C1C1C;
  font-feature-settings: "halt";
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Noto Serif JP", serif;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #1C1C1C;
  font-feature-settings: "halt";
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 400;
  font-feature-settings: "halt";
}

html {
  font-size: 62.5%;
}

p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #1C1C1C;
  letter-spacing: 0.06em;
  font-feature-settings: "halt";
}
@media screen and (min-width: 769px) {
  p {
    font-size: 1.6rem;
  }
}

/* Noto Serif JP
--------------------------------------------------*/
.serif {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

/* Noto Sans JP
--------------------------------------------------*/
.sans {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

/* Noto Sans
--------------------------------------------------*/
.sans_en {
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}

/* Sorts Mill Goudy
--------------------------------------------------*/
.mill {
  font-family: "Sorts Mill Goudy", serif;
  font-weight: 400;
  font-style: normal;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 下層メインビジュアル
--------------------------------------------------*/
body {
  overflow-x: hidden;
}

article {
  overflow: hidden;
  width: 100%;
}

section {
  position: relative;
  z-index: 10;
}

.page_kv {
  overflow: hidden !important;
  background-color: #F8F8F8;
  height: 250px;
}
@media screen and (min-width: 769px) {
  .page_kv {
    height: 375px;
  }
}
.page_kv::before {
  content: "";
  position: absolute;
  z-index: 10;
  bottom: 59px;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #AFCCE1;
}
@media screen and (min-width: 769px) {
  .page_kv::before {
    bottom: 80px;
  }
}
.page_kv::after {
  content: "";
  position: absolute;
  z-index: 10;
  bottom: 0;
  left: 5.128vw;
  width: 1px;
  height: 100%;
  border-left: 1px solid #AFCCE1;
}
@media screen and (min-width: 1000px) {
  .page_kv::after {
    left: 7.142vw;
  }
}
@media screen and (min-width: 1400px) {
  .page_kv::after {
    left: 100px;
  }
}
.page_kv .page_kv_ttlwrap {
  position: absolute;
  z-index: 10;
  bottom: 50px;
  left: 5.128vw;
  width: calc(100% - 14.284vw);
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .page_kv .page_kv_ttlwrap {
    bottom: 67px;
  }
}
@media screen and (min-width: 1000px) {
  .page_kv .page_kv_ttlwrap {
    left: 7.142vw;
  }
}
@media screen and (min-width: 1400px) {
  .page_kv .page_kv_ttlwrap {
    left: 100px;
  }
}
.page_kv .page_en_ttl {
  font-family: "Sorts Mill Goudy", serif;
  font-size: clamp(1.7rem, 5.263vw, 2rem);
  color: #0069B5;
  font-weight: 400;
  line-height: 100%;
  -webkit-animation: fade_In 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
          animation: fade_In 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@media screen and (min-width: 380px) {
  .page_kv .page_en_ttl {
    font-size: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .page_kv .page_en_ttl {
    font-size: 2.8rem;
  }
}
.page_kv .page_ttl_wrap {
  overflow: hidden;
}
.page_kv .page_ttl {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(3.7rem, 11.052vw, 4.2rem);
  color: #0069B5;
  line-height: 140%;
  -webkit-animation: fade_In 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
          animation: fade_In 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@media screen and (min-width: 380px) {
  .page_kv .page_ttl {
    font-size: clamp(4.2rem, 6.51vw, 5rem);
  }
}
@media screen and (min-width: 769px) {
  .page_kv .page_ttl {
    font-size: 6.4rem;
  }
}

.breadcrumb-area {
  position: absolute;
  z-index: 10;
  bottom: 20px;
  right: 5.128vw;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  -moz-column-gap: 24px;
       column-gap: 24px;
  row-gap: 10px;
  margin-left: auto;
  width: calc(100% - 10.256vw);
}
@media screen and (min-width: 769px) {
  .breadcrumb-area {
    bottom: 47px;
    right: 20px;
    width: calc(100% - 40px);
  }
}
.breadcrumb-area a {
  position: relative;
  font-size: 1.2rem;
  color: #727272;
  line-height: 180%;
  text-decoration: underline;
  text-underline-offset: 3px;
  -webkit-text-decoration-color: #727272;
          text-decoration-color: #727272;
  text-decoration-thickness: 1px;
}
.breadcrumb-area a::before {
  content: "/";
  position: absolute;
  top: 50%;
  right: -16px;
  transform: translate(0, -50%);
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  color: #727272;
  line-height: 180%;
  font-weight: 500;
}
.breadcrumb-area p {
  font-size: 1.2rem;
  color: #727272;
  line-height: 180%;
  max-width: calc(100% - 62px);
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  word-break: break-all;
}
@media screen and (min-width: 769px) {
  .breadcrumb-area p {
    max-width: calc(100% - 43px - 7.142vw);
  }
}
@media screen and (min-width: 1400px) {
  .breadcrumb-area p {
    max-width: calc(100% - 143px);
  }
}

.rhombus_box {
  content: "";
  position: absolute;
  top: calc(50% + 30px);
  right: -30px;
  transform: translate(0, -50%);
  width: 250px;
  height: 250px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='483' height='453' viewBox='0 0 483 453' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='241.6' y='225.711' width='160.188' height='160.188' transform='rotate(45 241.6 225.711)' fill='url(%23paint0_linear_430_930)'/%3E%3Crect x='368.625' y='97.9117' width='160.188' height='160.188' transform='rotate(45 368.625 97.9117)' fill='url(%23paint1_linear_430_930)'/%3E%3Crect x='240.682' y='-29.9688' width='160.188' height='160.188' transform='rotate(45 240.682 -29.9688)' fill='url(%23paint2_linear_430_930)'/%3E%3Crect x='113.77' y='97.943' width='160.188' height='160.188' transform='rotate(45 113.77 97.943)' fill='url(%23paint3_linear_430_930)'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_430_930' x1='405.983' y1='381.154' x2='246.177' y2='221.348' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='white' stop-opacity='0'/%3E%3Cstop offset='0.5' stop-color='white' stop-opacity='0.5'/%3E%3Cstop offset='0.7' stop-color='white' stop-opacity='0.7'/%3E%3Cstop offset='1' stop-color='white'/%3E%3C/linearGradient%3E%3ClinearGradient id='paint1_linear_430_930' x1='533.008' y1='253.355' x2='373.202' y2='93.5487' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='white' stop-opacity='0'/%3E%3Cstop offset='0.5' stop-color='white' stop-opacity='0.5'/%3E%3Cstop offset='0.7' stop-color='white' stop-opacity='0.7'/%3E%3Cstop offset='1' stop-color='white'/%3E%3C/linearGradient%3E%3ClinearGradient id='paint2_linear_430_930' x1='405.065' y1='125.474' x2='245.259' y2='-34.3318' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='white' stop-opacity='0'/%3E%3Cstop offset='0.5' stop-color='white' stop-opacity='0.5'/%3E%3Cstop offset='0.7' stop-color='white' stop-opacity='0.7'/%3E%3Cstop offset='1' stop-color='white'/%3E%3C/linearGradient%3E%3ClinearGradient id='paint3_linear_430_930' x1='278.152' y1='253.386' x2='118.346' y2='93.5799' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='white' stop-opacity='0'/%3E%3Cstop offset='0.5' stop-color='white' stop-opacity='0.5'/%3E%3Cstop offset='0.7' stop-color='white' stop-opacity='0.7'/%3E%3Cstop offset='1' stop-color='white'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 769px) {
  .rhombus_box {
    right: 5px;
    width: 485px;
    height: 485px;
  }
}

/* 下層共通パーツ
--------------------------------------------------*/
.under_ttl_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 15px;
  border-bottom: 1px solid #0069B5;
}
.under_ttl_wrap .main_ttl {
  font-size: clamp(1.6rem, 5.128vw, 2rem);
}
@media screen and (min-width: 380px) {
  .under_ttl_wrap .main_ttl {
    font-size: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .under_ttl_wrap .main_ttl {
    font-size: 2.2rem;
  }
}
.under_ttl_wrap .main_ttl::before {
  top: 10.5px;
}
.under_ttl_wrap .sub_en_ttl {
  font-family: "Sorts Mill Goudy", serif;
  color: #0069B5;
  font-size: 1.3rem;
  line-height: 100%;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .under_ttl_wrap .sub_en_ttl {
    font-size: 1.8rem;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* header
--------------------------------------------------*/
.header {
  position: fixed;
  z-index: 999;
  top: 14px;
  left: 50%;
  transform: translate(-50%, 0);
  width: calc(100% - 10.256vw);
  height: 60px;
  background-color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 1000px) {
  .header {
    top: 20px;
    width: calc(100% - 2.857vw);
    height: 70px;
  }
}
.header::before {
  content: "";
  position: absolute;
  z-index: 999;
  top: -1px;
  left: 0;
  width: 100%;
  height: 60px;
  background-color: white;
}
@media screen and (min-width: 1000px) {
  .header::before {
    display: none;
  }
}
.header .pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .header .pc-view {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .header .pc-view {
    display: block;
  }
}
.header .sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  .header .sp-view {
    display: block;
  }
}
@media screen and (min-width: 1000px) {
  .header .sp-view {
    display: none;
  }
}

.logo_wrap {
  position: relative;
  z-index: 999;
  margin-left: 2.564vw;
}
@media screen and (min-width: 1000px) {
  .logo_wrap {
    margin-left: 2.142vw;
  }
}
.logo_wrap a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.logo_wrap img {
  width: 25px;
}
@media screen and (min-width: 1000px) {
  .logo_wrap img {
    width: 40px;
  }
}
.logo_wrap .logo_txt {
  margin-left: 8px;
  font-size: clamp(1.4rem, 4.102vw, 1.6rem);
  letter-spacing: 0;
  font-weight: 600;
}
@media screen and (min-width: 1000px) {
  .logo_wrap .logo_txt {
    margin-left: 6px;
    font-size: 2rem;
  }
}

.logo_min_txt {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1;
  margin-bottom: -10px;
  margin-top: 16px;
}
@media screen and (min-width: 1000px) {
  .logo_min_txt {
    font-size: clamp(1.2rem, 0.937vw, 1.5rem);
    margin-bottom: 0;
    margin-top: 0;
  }
}

#nav_head {
  position: absolute;
  z-index: 888;
  top: 59px;
  left: 0;
  width: 100%;
  height: calc(100svh - 28px - 59px);
  max-height: -webkit-fit-content;
  max-height: -moz-fit-content;
  max-height: fit-content;
  pointer-events: none;
  opacity: 0;
  transition: all 0.4s ease-out;
  background-color: white;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 1000px) {
  #nav_head {
    z-index: 998;
    position: relative;
    top: 0;
    right: 0;
    width: auto;
    height: 70px;
    opacity: 1;
    background-color: transparent;
    margin-right: 2.142vw;
    box-shadow: none;
    pointer-events: all;
  }
}
#nav_head.is_active {
  pointer-events: auto;
  pointer-events: all;
  opacity: 1;
  overflow-y: scroll;
  overflow-x: hidden;
}
#nav_head .contact_btn .contact_icon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.6875 0.5H16.3125C16.7812 0.523438 17.1797 0.6875 17.5078 0.992188C17.8125 1.32031 17.9766 1.71875 18 2.1875C17.9766 2.75 17.7539 3.19531 17.332 3.52344L9.66797 9.28906C9.22266 9.57031 8.77734 9.57031 8.33203 9.28906L0.667969 3.52344C0.246094 3.19531 0.0234375 2.75 0 2.1875C0.0234375 1.71875 0.1875 1.32031 0.492188 0.992188C0.820312 0.6875 1.21875 0.523438 1.6875 0.5ZM0 4.4375L7.66406 10.168C8.0625 10.4727 8.50781 10.625 9 10.625C9.49219 10.625 9.9375 10.4727 10.3359 10.168L18 4.4375V11.75C17.9766 12.3828 17.7539 12.9102 17.332 13.332C16.9102 13.7539 16.3828 13.9766 15.75 14H2.25C1.61719 13.9766 1.08984 13.7539 0.667969 13.332C0.246094 12.9102 0.0234375 12.3828 0 11.75V4.4375Z' fill='white'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.6875 0.5H16.3125C16.7812 0.523438 17.1797 0.6875 17.5078 0.992188C17.8125 1.32031 17.9766 1.71875 18 2.1875C17.9766 2.75 17.7539 3.19531 17.332 3.52344L9.66797 9.28906C9.22266 9.57031 8.77734 9.57031 8.33203 9.28906L0.667969 3.52344C0.246094 3.19531 0.0234375 2.75 0 2.1875C0.0234375 1.71875 0.1875 1.32031 0.492188 0.992188C0.820312 0.6875 1.21875 0.523438 1.6875 0.5ZM0 4.4375L7.66406 10.168C8.0625 10.4727 8.50781 10.625 9 10.625C9.49219 10.625 9.9375 10.4727 10.3359 10.168L18 4.4375V11.75C17.9766 12.3828 17.7539 12.9102 17.332 13.332C16.9102 13.7539 16.3828 13.9766 15.75 14H2.25C1.61719 13.9766 1.08984 13.7539 0.667969 13.332C0.246094 12.9102 0.0234375 12.3828 0 11.75V4.4375Z' fill='white'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 1000px) {
  #nav_head .contact_btn .contact_icon {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.3125 0.5C17.2266 0.5 18 1.27344 18 2.1875V12.3125C18 13.2617 17.2266 14 16.3125 14H1.6875C0.738281 14 0 13.2617 0 12.3125V2.1875C0 1.27344 0.738281 0.5 1.6875 0.5H16.3125ZM16.3125 2.1875H1.6875V3.62891C2.46094 4.29688 3.72656 5.28125 6.39844 7.39062C6.99609 7.84766 8.15625 8.97266 9 8.9375C9.80859 8.97266 10.9688 7.84766 11.5664 7.39062C14.2383 5.28125 15.5039 4.29688 16.3125 3.62891V2.1875ZM1.6875 12.3125H16.3125V5.80859C15.5039 6.44141 14.3438 7.35547 12.6211 8.72656C11.8125 9.32422 10.4766 10.6602 9 10.625C7.48828 10.6602 6.11719 9.32422 5.34375 8.72656C3.62109 7.35547 2.46094 6.44141 1.6875 5.80859V12.3125Z' fill='white'/%3E%3C/svg%3E%0A");
            mask-image: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.3125 0.5C17.2266 0.5 18 1.27344 18 2.1875V12.3125C18 13.2617 17.2266 14 16.3125 14H1.6875C0.738281 14 0 13.2617 0 12.3125V2.1875C0 1.27344 0.738281 0.5 1.6875 0.5H16.3125ZM16.3125 2.1875H1.6875V3.62891C2.46094 4.29688 3.72656 5.28125 6.39844 7.39062C6.99609 7.84766 8.15625 8.97266 9 8.9375C9.80859 8.97266 10.9688 7.84766 11.5664 7.39062C14.2383 5.28125 15.5039 4.29688 16.3125 3.62891V2.1875ZM1.6875 12.3125H16.3125V5.80859C15.5039 6.44141 14.3438 7.35547 12.6211 8.72656C11.8125 9.32422 10.4766 10.6602 9 10.625C7.48828 10.6602 6.11719 9.32422 5.34375 8.72656C3.62109 7.35547 2.46094 6.44141 1.6875 5.80859V12.3125Z' fill='white'/%3E%3C/svg%3E%0A");
  }
}

.header_wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  -moz-column-gap: 2.5vw;
       column-gap: 2.5vw;
  padding: 10px 5.128vw 30px;
  height: 100%;
}
@media screen and (min-width: 1000px) {
  .header_wrap {
    padding: 0;
    -moz-column-gap: 1.785vw;
         column-gap: 1.785vw;
  }
}

.header_li {
  width: 100%;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #E9E9E9;
}
@media screen and (min-width: 1000px) {
  .header_li {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: inline-grid;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.header_li.sp-navlink {
  margin-top: 10px;
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
  text-align: center;
}
.header_li.sp-navlink .main_btn {
  text-align: left;
}
.header_li:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.header_link {
  position: relative;
  font-size: 1.8rem;
  width: calc(100% - 5.128vw);
  margin-left: 2.564lvw;
  margin-right: 2.564vw;
  padding-left: 21px;
}
@media screen and (min-width: 1000px) {
  .header_link {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: grid;
    text-align: center;
    font-size: clamp(1.4rem, 1.071vw, 1.5rem);
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
  }
}
.header_link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  width: 15px;
  height: 15px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='7.7782' y='0.221832' width='5' height='5' transform='rotate(45 7.7782 0.221832)' fill='%231C1C1C'/%3E%3Crect x='12.0205' y='4.46445' width='5' height='5' transform='rotate(45 12.0205 4.46445)' fill='%230069B5'/%3E%3Crect x='3.53589' y='4.46454' width='5' height='5' transform='rotate(45 3.53589 4.46454)' fill='%230069B5'/%3E%3Crect x='7.77795' y='8.70715' width='5' height='5' transform='rotate(45 7.77795 8.70715)' fill='%230069B5'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 1000px) {
  .header_link::before {
    top: auto;
    bottom: -4px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 0;
    height: 1px;
    border-bottom: 1px solid #0069B5;
    background-image: none;
    transition: all 0.4s ease-out;
  }
}
.header_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  width: 18px;
  height: 10px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='10' viewBox='0 0 20 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.862549 5.07474H18.0001M18.0001 5.07474C16.6465 4.53701 13.9395 2.76923 13.9395 0M18.0001 5.07474C16.6465 5.56265 13.9395 7.23077 13.9395 10' stroke='%230069B5'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 1000px) {
  .header_link::after {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .header_link.current {
    color: #0069B5;
  }
}
@media screen and (min-width: 1000px) {
  .header_link.current::before {
    width: 28px;
  }
}
.header_link:hover {
  color: #0069B5;
}
@media screen and (min-width: 1000px) {
  .header_link:hover::before {
    width: 28px;
  }
}
.header_link .header_link:first-child {
  padding-top: 20px;
}
@media screen and (min-width: 1000px) {
  .header_link .header_link:first-child {
    margin-top: 0;
  }
}

.header_sp_li {
  margin-left: calc(2.564vw + 22px);
}
.header_sp_li .header_sp_link {
  margin-top: 10px;
  color: #8C8C8C;
  font-weight: 400;
}

.hamburger {
  position: absolute;
  z-index: 999;
  top: 50%;
  right: 2.564vw;
  transform: translate(0, -50%);
  width: 36px;
  height: 36px;
  border: none;
  background-color: white;
  padding: 0;
}
@media screen and (min-width: 1000px) {
  .hamburger {
    display: none;
  }
}
.hamburger .hamburger_bar {
  display: block;
  z-index: 10;
  width: 26px;
  height: 1px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #0069B5;
  transition: all 0.4s ease-out;
}
.hamburger .hamburger_bar:nth-child(1) {
  top: calc(50% + 3px);
}
.hamburger .hamburger_bar:nth-child(2) {
  top: calc(50% - 3px);
}
.hamburger.active .hamburger_bar:nth-child(1) {
  top: 18px;
  transform: translate(-50%, 0) rotate(25deg);
}
.hamburger.active .hamburger_bar:nth-child(2) {
  top: 18px;
  transform: translate(-50%, 0) rotate(-25deg);
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* footer
--------------------------------------------------*/
footer {
  background-color: #F8F8F8;
  padding-top: 50px;
}
@media screen and (min-width: 1000px) {
  footer .top_wrap {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
}
@media screen and (min-width: 1000px) {
  footer .footer_left_wrap {
    width: 330px;
  }
}
@media screen and (min-width: 1200px) {
  footer .footer_left_wrap {
    width: 370px;
  }
}
footer .footer_logo a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
footer .footer_logo img {
  width: 36px;
}
@media screen and (min-width: 1000px) {
  footer .footer_logo img {
    width: clamp(40px, 3.214vw, 45px);
  }
}
footer .footer_logo .logo_txt {
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0;
  margin-left: 7.5px;
}
@media screen and (min-width: 1000px) {
  footer .footer_logo .logo_txt {
    font-size: clamp(1.6rem, 1.607vw, 2.25rem);
    margin-left: 9px;
  }
}
footer .footer_address {
  margin-top: 20px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 180%;
}
@media screen and (min-width: 1000px) {
  footer .footer_address {
    margin-top: 30px;
  }
}
footer .footer_address_bottom {
  margin-top: 4px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 180%;
}
footer .footer_address_bottom .lg-view {
  display: none;
}
@media screen and (min-width: 1000px) {
  footer .footer_address_bottom .lg-view {
    display: block;
  }
}
@media screen and (min-width: 1200px) {
  footer .footer_address_bottom .lg-view {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  footer .footer_right_link_wrap {
    width: calc(100% - 320px);
  }
}
@media screen and (min-width: 1200px) {
  footer .footer_right_link_wrap {
    width: calc(100% - 400px);
  }
}
footer .footer_right_wrap {
  border-top: 1px solid #E9E9E9;
  margin-top: 30px;
  padding-top: 14px;
}
@media screen and (min-width: 1000px) {
  footer .footer_right_wrap {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    flex-wrap: wrap;
    -moz-column-gap: 2.857vw;
         column-gap: 2.857vw;
    row-gap: 40px;
    border-top: none;
    margin-top: 0;
    padding-top: 0;
  }
}
@media screen and (min-width: 1400px) {
  footer .footer_right_wrap {
    -moz-column-gap: 40px;
         column-gap: 40px;
  }
}
footer .footer_li {
  border-bottom: 1px solid #E9E9E9;
  margin-bottom: 14px;
  padding-bottom: 14px;
}
@media screen and (min-width: 1000px) {
  footer .footer_li {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
    display: grid;
    row-gap: 14px;
  }
}
footer .footer_li.pc-view {
  display: none;
}
@media screen and (min-width: 1000px) {
  footer .footer_li.pc-view {
    display: grid;
  }
}
footer .footer_li.sp-view {
  display: grid;
}
@media screen and (min-width: 1000px) {
  footer .footer_li.sp-view {
    display: none;
  }
}
footer .footer_link {
  font-size: 1.4rem;
  line-height: 180%;
  margin: 0 10px;
}
@media screen and (min-width: 1000px) {
  footer .footer_link {
    margin: 0;
  }
}
footer .footer_link:hover {
  color: #0069B5;
}
footer .footer_sub_li {
  margin-top: 14px;
}
@media screen and (min-width: 1000px) {
  footer .footer_sub_li {
    margin-top: -2px;
  }
}
footer .footer_sub {
  margin-top: 10px;
}
@media screen and (min-width: 1000px) {
  footer .footer_sub {
    margin-top: 8px;
  }
}
footer .footer_min_link {
  font-size: 1.4rem;
  line-height: 140%;
  font-weight: 400;
  color: #8C8C8C;
  margin: 0 10px;
}
@media screen and (min-width: 1000px) {
  footer .footer_min_link {
    margin: 0;
  }
}
footer .footer_min_link:hover {
  color: #1C1C1C;
  opacity: 0.8;
}
footer .footer_min_link .footer_sub_br {
  display: none;
}
@media screen and (min-width: 1000px) {
  footer .footer_min_link .footer_sub_br {
    display: block;
  }
}
@media screen and (min-width: 1200px) {
  footer .footer_min_link .footer_sub_br {
    display: none;
  }
}
footer .sns_link {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 15px;
  margin-top: 16px;
}
@media screen and (min-width: 1000px) {
  footer .sns_link {
    justify-content: flex-end;
    margin-top: 45px;
  }
}
footer .insta_link {
  width: 22px;
}
footer .siteseal_wrap {
  margin-top: 30px;
}
@media screen and (min-width: 1000px) {
  footer .siteseal_wrap {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
  }
}
footer .footer_bottom_black {
  margin-top: 60px;
  padding: 20px 0;
  background-color: #1C1C1C;
}
@media screen and (min-width: 1000px) {
  footer .footer_bottom_black {
    margin-top: 40px;
    padding: 10px 0;
  }
}
footer .footer_bottom_black .inner-wrap {
  display: flex;
  align-items: flex-start;
  flex-direction: column-reverse;
  row-gap: 20px;
}
@media screen and (min-width: 1000px) {
  footer .footer_bottom_black .inner-wrap {
    flex-direction: row;
    justify-content: space-between;
  }
}
footer small {
  color: white;
  font-size: 1.2rem;
  font-weight: 400;
}
footer .black_line_link {
  color: white;
  font-size: 1.2rem;
  font-weight: 400;
}
footer .black_line_link:hover {
  opacity: 0.7;
}

/* 流用パーツ
--------------------------------------------------*/
.inner-wrap {
  position: relative;
  z-index: 20;
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-wrap {
    width: calc(100% - 14.285vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-wrap {
    width: 1200px;
  }
}

.inner-middle-wrap {
  position: relative;
  z-index: 20;
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-middle-wrap {
    width: calc(100% - 21.428vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-middle-wrap {
    width: 1100px;
  }
}

.inner-wide-wrap {
  position: relative;
  z-index: 20;
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-wide-wrap {
    width: calc(100% - 14.285vw);
  }
}
@media screen and (min-width: 1000px) {
  .inner-wide-wrap {
    width: calc(100% - 31.428vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-wide-wrap {
    width: 960px;
  }
}

.inner-wide2-wrap {
  position: relative;
  z-index: 20;
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-wide2-wrap {
    width: calc(100% - 14.285vw);
  }
}
@media screen and (min-width: 1000px) {
  .inner-wide2-wrap {
    width: calc(100% - 35.714vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-wide2-wrap {
    width: 900px;
  }
}

.inner-wide3-wrap {
  position: relative;
  z-index: 20;
  width: calc(100% - 10.256vw);
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 769px) {
  .inner-wide3-wrap {
    width: calc(100% - 14.285vw);
  }
}
@media screen and (min-width: 1000px) {
  .inner-wide3-wrap {
    width: calc(100% - 28.571vw);
  }
}
@media screen and (min-width: 1400px) {
  .inner-wide3-wrap {
    width: 1000px;
  }
}

.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .pc-view {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 850px) {
  .pc-view.blank {
    display: none;
  }
}

.sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  .sp-view {
    display: none;
  }
}

.h-pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .h-pc-view {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .h-pc-view {
    display: block;
  }
}

.h-sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  .h-sp-view {
    display: block;
  }
}
@media screen and (min-width: 1000px) {
  .h-sp-view {
    display: none;
  }
}

br.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  br.pc-view {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 850px) {
  br.pc-view.blank {
    display: none;
  }
}
br.sp-view {
  display: block;
}
@media screen and (min-width: 769px) {
  br.sp-view {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .tel_link {
    pointer-events: none;
  }
}

.f_80 {
  font-size: 80%;
}

.word {
  display: inline-block;
}

.txt_block {
  display: contents;
  font-size: 1.6rem;
}
@media screen and (min-width: 769px) {
  .txt_block {
    display: inline-block;
  }
}

/* 共通パーツ
--------------------------------------------------*/
.kv_fade {
  opacity: 0;
  -webkit-animation: fade_In 3s cubic-bezier(0.25, 1, 0.5, 1) forwards;
          animation: fade_In 3s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

.en_dec {
  position: absolute;
  color: #F2F7FB;
  font-family: "Sorts Mill Goudy", serif;
  font-weight: 400;
  line-height: 100%;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  pointer-events: none;
}

.main_ttl {
  position: relative;
  font-family: "Noto Serif JP", serif;
  color: #0069B5;
  font-size: 1.8rem;
  font-weight: 600;
  padding-left: 22px;
}
@media screen and (min-width: 769px) {
  .main_ttl {
    font-size: 2rem;
    padding-left: 27px;
  }
}
.main_ttl::before {
  content: "";
  position: absolute;
  top: 8.5px;
  left: 0;
  width: 16px;
  height: 16px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='17' viewBox='0 0 16 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='7.7782' y='0.721802' width='5' height='5' transform='rotate(45 7.7782 0.721802)' fill='%231C1C1C'/%3E%3Crect x='12.0208' y='4.96442' width='5' height='5' transform='rotate(45 12.0208 4.96442)' fill='%230069B5'/%3E%3Crect x='3.53564' y='4.96454' width='5' height='5' transform='rotate(45 3.53564 4.96454)' fill='%230069B5'/%3E%3Crect x='7.77795' y='9.20715' width='5' height='5' transform='rotate(45 7.77795 9.20715)' fill='%230069B5'/%3E%3C/svg%3E%0A");
}
@media screen and (min-width: 769px) {
  .main_ttl::before {
    width: 19px;
    height: 19px;
  }
}

/* ボタン
--------------------------------------------------*/
.main_btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.6rem;
  color: #0069B5;
  font-weight: 400;
  border-bottom: 1px solid;
  width: 248px;
  padding-bottom: 10px;
}
.main_btn .btn_arrow {
  position: relative;
  display: inline-block;
  width: 48px;
  height: 26px;
  background-color: #0069B5;
  overflow: hidden;
  transition: all 0.4s ease-out;
}
.main_btn .btn_arrow::before, .main_btn .btn_arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 18px;
  height: 10px;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='19' height='10' viewBox='0 0 19 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 5.07474H17.1375M17.1375 5.07474C15.784 4.53701 13.0769 2.76923 13.0769 0M17.1375 5.07474C15.784 5.56265 13.0769 7.23077 13.0769 10' stroke='white'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='19' height='10' viewBox='0 0 19 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 5.07474H17.1375M17.1375 5.07474C15.784 4.53701 13.0769 2.76923 13.0769 0M17.1375 5.07474C15.784 5.56265 13.0769 7.23077 13.0769 10' stroke='white'/%3E%3C/svg%3E%0A");
  background-color: white;
  transition: all 0.4s ease-out;
}
.main_btn .btn_arrow::after {
  left: -50%;
}
.main_btn:hover .btn_arrow::before {
  left: 150%;
}
.main_btn:hover .btn_arrow::after {
  left: 50%;
}
.main_btn.pc-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .main_btn.pc-view {
    display: flex;
  }
}
.main_btn.sp-view {
  display: flex;
}
@media screen and (min-width: 769px) {
  .main_btn.sp-view {
    display: none;
  }
}

.window_link {
  position: relative;
  text-decoration: underline;
  text-underline-offset: 3px;
  -webkit-text-decoration-color: #1C1C1C;
          text-decoration-color: #1C1C1C;
  text-decoration-thickness: 1px;
  line-height: 180%;
}
.window_link::after {
  content: "";
  position: relative;
  display: inline-block;
  bottom: -1px;
  right: -5px;
  width: 14px;
  height: 12px;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='14' height='13' viewBox='0 0 14 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_537_285)'%3E%3Cpath d='M12.7222 2.53735V11.2669L2.09375 11.2499V12.5001H14.0001V2.53735H12.7222Z' fill='%231C1C1C'/%3E%3Cpath d='M0 10.4627V0.5H11.9064V10.4627H0ZM10.6285 9.22958V1.73313H1.27793V9.22958H10.6285Z' fill='%231C1C1C'/%3E%3Cpath d='M0 10.4627V0.5H11.9064V10.4627H0ZM10.6285 9.22958V1.73313H1.27793V9.22958H10.6285Z' fill='%231C1C1C'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_537_285'%3E%3Crect width='14' height='12' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='14' height='13' viewBox='0 0 14 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_537_285)'%3E%3Cpath d='M12.7222 2.53735V11.2669L2.09375 11.2499V12.5001H14.0001V2.53735H12.7222Z' fill='%231C1C1C'/%3E%3Cpath d='M0 10.4627V0.5H11.9064V10.4627H0ZM10.6285 9.22958V1.73313H1.27793V9.22958H10.6285Z' fill='%231C1C1C'/%3E%3Cpath d='M0 10.4627V0.5H11.9064V10.4627H0ZM10.6285 9.22958V1.73313H1.27793V9.22958H10.6285Z' fill='%231C1C1C'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_537_285'%3E%3Crect width='14' height='12' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  background-color: #1C1C1C;
  transition: all 0.4s ease-out;
}
.window_link:hover {
  color: #0069B5;
  -webkit-text-decoration-color: #0069B5;
          text-decoration-color: #0069B5;
}
.window_link:hover::after {
  background-color: #0069B5;
}

/* お知らせ
--------------------------------------------------*/
.news {
  margin-top: 20px;
}
.news .news_link {
  position: relative;
  display: inline-block;
  width: 100%;
  padding-bottom: 20px;
  border-bottom: 1px solid #E9E9E9;
}
@media screen and (min-width: 769px) {
  .news .news_link {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    -moz-column-gap: 2.142vw;
         column-gap: 2.142vw;
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (min-width: 1400px) {
  .news .news_link {
    -moz-column-gap: 30px;
         column-gap: 30px;
  }
}
.news .news_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  border-bottom: 1px solid #0069B5;
  transition: all 0.4s ease-out;
}
.news .news_link:hover::before {
  width: 100%;
}
.news .news_link:hover .news_ttl {
  color: #0069B5;
}
.news .news_date {
  font-family: "Noto Sans", sans-serif;
  font-size: 1.4rem;
  line-height: 180%;
  font-weight: 400;
  margin-top: 0;
}
@media screen and (min-width: 769px) {
  .news .news_date {
    margin-top: 1px;
  }
}
.news .news_ttl_wrap {
  position: relative;
  width: 100%;
}
.news .news_ttl_wrap::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  width: 18px;
  height: 10px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='11' viewBox='0 0 20 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.862549 5.57474H18.0001M18.0001 5.57474C16.6465 5.03701 13.9395 3.26923 13.9395 0.5M18.0001 5.57474C16.6465 6.06265 13.9395 7.73077 13.9395 10.5' stroke='%230069B5'/%3E%3C/svg%3E%0A");
}
.news .news_ttl {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 180%;
  width: calc(100% - 27px);
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  word-break: break-all;
  transition: all 0.4s ease-out;
}
@media screen and (min-width: 769px) {
  .news .news_ttl {
    -webkit-line-clamp: 1;
  }
}

@-webkit-keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
@-webkit-keyframes fade_In {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes fade_In {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes fade_In_img {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fade_In_img {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade {
  opacity: 0;
}
.fade.move {
  -webkit-animation: fade_In_img 1.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
          animation: fade_In_img 1.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
/*# sourceMappingURL=style.css.map */