@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@100..900&display=swap");
@import url("assets/font/stylesheet.css");
html { font-size: 0.520832vw; }
@media (max-width: 1280px) and (min-width: 961px) { html { font-size: 0.6vw; } }
@media (max-width: 960px) and (min-width: 768px) { html { font-size: 1.30208vw; } }
@media (max-width: 767px) { html { font-size: 2.66667vw; } }

*, :after, :before { box-sizing: border-box; margin: 0; padding: 0; }

body { font-size: 1.6rem; letter-spacing: 0; line-height: 175%; font-weight: 500; font-family: "M PLUS 1", "Noto Sans JP", serif; }

.anchor_fixtop { display: block; position: relative; top: -15rem; width: 100%; visibility: hidden; }
@media (max-width: 960px) { .anchor_fixtop { top: -8rem; } }

.grid-1200 { max-width: 1230px; }

.is-group-content > div { width: 100%; max-width: 121rem; margin: 0 auto; padding-left: 1.5rem; padding-right: 1.5rem; }

p { font-size: 1.8rem; font-weight: 500; line-height: 200%; letter-spacing: .115rem; color: #333333; }

p.has-text-align-center { text-align: center; }

#page_top { position: fixed; bottom: 1rem; right: 1rem; width: 6rem; height: 6rem; opacity: 0; border: #FFF solid .1rem; background: #005ba7 url(assets/img/page-top.svg) no-repeat center; border-radius: 100%; background-size: 2.1rem; cursor: pointer; outline: none; z-index: 50; }
#page_top.show { opacity: 1; }
#page_top.show:hover { opacity: 0.8; }
@media (max-width: 960px) { #page_top { right: 1.5rem; bottom: 7rem; width: 5rem; height: 5rem; position: fixed; }
  #page_top.fixed { bottom: 9rem; } }
@media (max-width: 767px) { #page_top { bottom: 11rem; } }

.wow_custom { opacity: 0; -webkit-transform: translate(0, 35px); transform: translate(0, 35px); transition: all 0.5s ease; }
.wow_custom.show { opacity: 1; -webkit-transform: none; transform: none; }
.wow_custom.show.wow_vz_02 { animation: fade_in_0 500ms 500ms linear; animation-fill-mode: forwards; }
.wow_custom.show.wow_vz_03 { animation: fade_in_0 500ms 1000ms linear; animation-fill-mode: forwards; }
.wow_custom.show.wow_vz_04 { animation: fade_in_0 500ms 1500ms linear; animation-fill-mode: forwards; }
.wow_custom.show.wow_vz_05 { animation: fade_in_0 500ms 2000ms linear; animation-fill-mode: forwards; }

@keyframes fade_in_0 { 0% { opacity: 0; transform: translate3d(0, 35px, 0); }
  100% { opacity: 1; transform: translateZ(0); } }
@keyframes fade_in_1 { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes fade_in { 0% { opacity: 0; position: relative; top: 100px; }
  100% { position: relative; top: 0px; opacity: 1; } }
@keyframes fade_left { 0% { opacity: 0; transform: translate3d(-100px, 0, 0); }
  100% { opacity: 1; transform: translateZ(0); } }
@keyframes fade_right { 0% { opacity: 0; transform: translate3d(100px, 0, 0); }
  100% { opacity: 1; transform: translateZ(0); } }
.fade-left.show { animation: fade_left 300ms 200ms ease-in-out; animation-fill-mode: forwards; }

.fade-right.show { animation: fade_right 300ms 200ms ease-in-out; animation-fill-mode: forwards; }

[data-animation="fade-in"].show { animation: fade_in_1 500ms 1s ease-in-out; animation-fill-mode: forwards; }

.wow_custom_no { opacity: 0; position: relative; z-index: 1; }

@media (max-width: 1280px) and (min-width: 960.5px) { body, p { font-size: 2rem; } }
@media (max-width: 960px) { body, p { font-size: 1.5rem; }
  p { letter-spacing: .022rem; line-height: 175%; text-align: justify; font-size: 1.4rem; } }
:root { --wp--preset--color--black: #000000; --wp--preset--color--cyan-bluish-gray: #abb8c3; --wp--preset--color--white: #ffffff; --wp--preset--color--pale-pink: #f78da7; --wp--preset--color--vivid-red: #cf2e2e; --wp--preset--color--luminous-vivid-orange: #ff6900; --wp--preset--color--luminous-vivid-amber: #fcb900; --wp--preset--color--light-green-cyan: #7bdcb5; --wp--preset--color--vivid-green-cyan: #00d084; --wp--preset--color--pale-cyan-blue: #8ed1fc; --wp--preset--color--vivid-cyan-blue: #0693e3; --wp--preset--color--vivid-purple: #9b51e0; }

.has-black-color { color: var(--wp--preset--color--black) !important; }

.has-cyan-bluish-gray-color { color: var(--wp--preset--color--cyan-bluish-gray) !important; }

.has-white-color { color: var(--wp--preset--color--white) !important; }

.has-pale-pink-color { color: var(--wp--preset--color--pale-pink) !important; }

.has-vivid-red-color { color: var(--wp--preset--color--vivid-red) !important; }

.has-luminous-vivid-orange-color { color: var(--wp--preset--color--luminous-vivid-orange) !important; }

.has-luminous-vivid-amber-color { color: var(--wp--preset--color--luminous-vivid-amber) !important; }

.has-light-green-cyan-color { color: var(--wp--preset--color--light-green-cyan) !important; }

.has-vivid-green-cyan-color { color: var(--wp--preset--color--vivid-green-cyan) !important; }

.has-pale-cyan-blue-color { color: var(--wp--preset--color--pale-cyan-blue) !important; }

.has-vivid-cyan-blue-color { color: var(--wp--preset--color--vivid-cyan-blue) !important; }

.has-vivid-purple-color { color: var(--wp--preset--color--vivid-purple) !important; }

.has-black-background-color { background-color: var(--wp--preset--color--black) !important; }

.has-cyan-bluish-gray-background-color { background-color: var(--wp--preset--color--cyan-bluish-gray) !important; }

.has-white-background-color { background-color: var(--wp--preset--color--white) !important; }

.has-pale-pink-background-color { background-color: var(--wp--preset--color--pale-pink) !important; }

.has-vivid-red-background-color { background-color: var(--wp--preset--color--vivid-red) !important; }

.has-luminous-vivid-orange-background-color { background-color: var(--wp--preset--color--luminous-vivid-orange) !important; }

.has-luminous-vivid-amber-background-color { background-color: var(--wp--preset--color--luminous-vivid-amber) !important; }

.has-light-green-cyan-background-color { background-color: var(--wp--preset--color--light-green-cyan) !important; }

.has-vivid-green-cyan-background-color { background-color: var(--wp--preset--color--vivid-green-cyan) !important; }

.has-pale-cyan-blue-background-color { background-color: var(--wp--preset--color--pale-cyan-blue) !important; }

.has-vivid-cyan-blue-background-color { background-color: var(--wp--preset--color--vivid-cyan-blue) !important; }

.has-vivid-purple-background-color { background-color: var(--wp--preset--color--vivid-purple) !important; }

.has-black-border-color { border-color: var(--wp--preset--color--black) !important; }

.has-cyan-bluish-gray-border-color { border-color: var(--wp--preset--color--cyan-bluish-gray) !important; }

.has-white-border-color { border-color: var(--wp--preset--color--white) !important; }

.has-pale-pink-border-color { border-color: var(--wp--preset--color--pale-pink) !important; }

.has-vivid-red-border-color { border-color: var(--wp--preset--color--vivid-red) !important; }

.has-luminous-vivid-orange-border-color { border-color: var(--wp--preset--color--luminous-vivid-orange) !important; }

.has-luminous-vivid-amber-border-color { border-color: var(--wp--preset--color--luminous-vivid-amber) !important; }

.has-light-green-cyan-border-color { border-color: var(--wp--preset--color--light-green-cyan) !important; }

.has-vivid-green-cyan-border-color { border-color: var(--wp--preset--color--vivid-green-cyan) !important; }

.has-pale-cyan-blue-border-color { border-color: var(--wp--preset--color--pale-cyan-blue) !important; }

.has-vivid-cyan-blue-border-color { border-color: var(--wp--preset--color--vivid-cyan-blue) !important; }

.has-vivid-purple-border-color { border-color: var(--wp--preset--color--vivid-purple) !important; }

[class*="dflex"] { display: flex; flex-wrap: wrap; }

[class*="aic"] { align-items: center; }

[class*="aie"] { align-items: flex-end; }

[class*="ais"] { align-items: flex-start; }

[class*="jcc"] { justify-content: center; }

[class*="jcsb"] { justify-content: space-between; }

[class*="jcfe"] { justify-content: flex-end; }

[class*="fcolumn"] { flex-flow: column; }

a[href^="tel:"] { cursor: default; pointer-events: none; }
@media (max-width: 1024px) { a[href^="tel:"] { cursor: pointer; pointer-events: all; } }

.p-fixed { position: fixed; left: var(--fixed-left); top: var(--fixed-top); }

[class*="grid"] { padding-left: 1.5rem; padding-right: 1.5rem; margin-left: auto; margin-right: auto; width: 100%; }

.grid-1600 { max-width: 163rem; }

.grid-1440 { max-width: 147rem; }

.grid-1200 { max-width: 123rem; }

body, html { height: 100%; }

p { font-family: "M PLUS 1", sans-serif; }

img { max-width: 100%; height: auto; vertical-align: top; overflow-clip-margin: inherit; }

a, button { color: inherit; text-decoration: none; }

input, textarea, button, select { outline: none; resize: none; }

.hv-o { transition: ease all 0.5s; }
.hv-o:hover { opacity: 0.8; }

.ho-main, .os-main { overflow: hidden; }

.os-y-hidden { overflow-y: hidden; }

.os-section { position: relative; }

.os-align-center { text-align: center; }

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

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

.u-sp { display: none; }

ul, ol { list-style: none; }

@media (max-width: 960px) { .u-pc { display: none; }
  .u-sp { display: block; } }
.header { position: fixed; top: 0; left: 0; width: 100%; z-index: 99; background: rgba(0, 0, 0, 0.4); padding: 1rem 2rem 1.7rem; transition: all 0.35s; }
.header-gp { margin-bottom: 1.6rem; transition: all 0.35s; }
.header-gp-item:first-child { padding-top: .5rem; }
.header-gp .logo img { width: 34.8rem; }
.header-btn-gp { background: #FFFFFF; padding: .6rem .5rem .6rem 1.8rem; border-radius: 2rem; transition: all 0.35s; }
.header-btn-gp li { margin-right: 2rem; }
.header-btn-gp li:last-child { margin-right: 0; }
.header-btn-gp li .btn.tel { margin-top: .6rem; }
.header-btn-gp li .btn.tel a span { display: block; font-size: 2rem; color: #323232; font-family: "GenJyuuGothic Medium", "Noto Sans JP", sans-serif; transition: all 0.35s; }
.header-btn-gp li .btn.tel a span:first-child { font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; font-size: 3.5rem; padding-left: 3rem; letter-spacing: .23rem; position: relative; margin-bottom: .5rem; transition: all 0.35s; }
.header-btn-gp li .btn.tel a span:first-child::before { content: ""; position: absolute; width: 2.1rem; height: 2.8rem; top: 50%; left: 0; transform: translateY(-50%); -webkit-mask: url(assets/img/icon-tel.svg) center/100% no-repeat; mask: url(assets/img/icon-tel.svg) center/100% no-repeat; background: #007fea; }
.header-btn-gp li .btn.access a { padding-top: .8rem; background: #007fea; color: #FFFFFF; border-radius: 2rem; display: flex; align-items: center; justify-content: center; width: 14rem; height: 6.8rem; font-family: "Source Han Sans JP Medium", "Noto Sans JP", sans-serif; transition: all 0.35s; }
.header-menu { transition: all 0.35s; }
.header-menu .menu { position: relative; justify-content: space-around; }
.header-menu .menu > li:first-child > a::after { content: ""; position: absolute; width: 1px; height: 100%; top: 0; left: -4.2rem; background: #FFFFFF; }
.header-menu .menu > li > a::before { content: ""; position: absolute; width: 1px; height: 100%; top: 0; right: -4.2rem; background: #FFFFFF; }
.header-menu .menu > li > a > span { display: block; }
.header-menu li a { font-size: 1.8rem; color: #ffffff; line-height: 175%; letter-spacing: .2rem; font-weight: 500; font-family: "Source Han Sans JP Medium", "Noto Sans JP", sans-serif; display: inline-block; padding: .5rem 0 0; transition: all 0.35s; position: relative; }
.header-menu li a span::before { content: ""; position: absolute; width: 1.2rem; height: 1.2rem; top: -1rem; opacity: 0; left: 50%; transform: translateX(-50%); border-radius: 100%; background: #FFFFFF; transition: all 0.35s; }
.header-menu li a:hover span::before { opacity: 1; }
.header-menu li.current_page_item > a span::before, .header-menu li.current-menu-parent > a span::before { opacity: 1; }
@media (min-width: 961px) { .header-menu li .sub-menu { pointer-events: none; position: absolute; display: flex; flex-wrap: wrap; z-index: 0; opacity: 0; right: 0; top: 100%; padding-top: 1.5rem; transition: all 0.35s; min-width: 76rem; width: 100%; padding: 3rem 1.5rem; }
  .header-menu li .sub-menu::before { content: ""; position: absolute; bottom: 0; left: 0; z-index: -1; width: 100%; height: calc(100% - 1rem); background: #FFFFFF; filter: drop-shadow(0 0 2rem rgba(0, 0, 0, 0.15)); border-radius: 2rem; }
  .header-menu li .sub-menu li { border-bottom: #d9e3f0 .1rem solid; width: calc((100% - 3.001rem) / 2); margin-right: 3rem; }
  .header-menu li .sub-menu li:nth-child(2n) { margin-right: 0; }
  .header-menu li .sub-menu li a { display: block; padding: 1.7rem 0 1rem; border-right: 0; color: #333333; position: relative; }
  .header-menu li .sub-menu li a::before { content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: 0; left: auto; width: 1rem; height: 1rem; -webkit-mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; background: #333333; }
  .header-menu li .sub-menu li a::after { content: ""; position: absolute; bottom: -0.1rem; left: 0; width: 0; height: .1rem; background: #005ba7; transition: all 0.35s; }
  .header-menu li .sub-menu li a:hover { padding-left: 1rem; }
  .header-menu li .sub-menu li a:hover::before { background: #005ba7; }
  .header-menu li .sub-menu li a:hover::after { width: 100%; }
  .header-menu li .sub-menu li.current_page_item a { color: #005ba7; }
  .header-menu li .sub-menu li.current_page_item a::before { background: #005ba7; }
  .header-menu li:hover .sub-menu { opacity: 1; pointer-events: auto; }
  .header-menu li:hover.menu-item-has-children > a::before { opacity: 1; } }
@media (min-width: 960.5px) { .header.active { padding-bottom: 3rem; background: rgba(0, 127, 234, 0.9); }
  .header.active .header-gp { margin-bottom: 1rem; }
  .header.active .header-btn-gp { padding: .2rem .5rem .2rem 1.8rem; }
  .header.active .header-btn-gp li .btn.access a { height: 6rem; }
  .header.active .header-btn-gp li .btn.tel a span { font-size: 1.5rem; }
  .header.active .header-btn-gp li .btn.tel a span:first-child { font-size: 2.5rem; }
  .header.active .header-menu { margin-top: -7rem; }
  .header.active .header-menu li a span::before { width: .9rem; height: .9rem; top: -0.5rem; }
  .header.active .header-menu .menu > li > a::before { right: -1.5rem; }
  .header.active .header-menu .menu > li:first-child > a::after { left: -1.5rem; }
  .header.active .header-menu .grid-1200 { max-width: 83rem; } }
@media (min-width: 1280.5px) { .header.active { padding-bottom: 2.5rem; }
  .header.active .header-menu { margin-top: -6rem; }
  .header.active .header-menu .grid-1200 { max-width: 105rem; }
  .header.active .header-menu .menu > li > a::before { right: -2.7rem; }
  .header.active .header-menu .menu > li:first-child > a::after { left: -2.7rem; } }

.no_scroll { overflow: hidden; }

.banner { width: calc(100% - var(--banner-width-xrem)); border-radius: 0 0 2rem 2rem; margin-left: auto; margin-right: auto; position: relative; overflow: hidden; }
.banner::before { content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: rgba(0, 0, 0, 0.35); }
.banner-images img { width: 100%; height: var(--banner-img-height-xrem); object-fit: cover; aspect-ratio: auto; }
.banner-title { position: absolute; z-index: 3; left: var(--banner-title-left-xrem); right: var(--banner-title-right-xrem); top: var(--banner-title-top-xrem); bottom: var(--banner-title-bottom-xrem); transform: translate(var(--banner-title-translateX-xrem), var(--banner-title-translateY-xrem)); text-align: center; border-top-left-radius: var(--banner-border-radius-xrem); border-top-right-radius: var(--banner-border-radius-xrem); letter-spacing: 0.3rem; height: var(--banner-title-height-xrem); padding: var(--banner-title-pdtop-xrem) var(--banner-title-pdleftright-xrem) var(--banner-title-pdbottom-xrem); min-width: var(--banner-title-minwidth-xrem); display: flex; align-items: center; justify-content: center; background-color: #ffffff; }
.banner-title::before, .banner-title::after { content: var(--banner-title-before-xrem); position: absolute; width: 4rem; height: 2rem; border: 4px double var(--banner-title-color-xrem); }
.banner-title::before { left: 0.5rem; top: 0.5rem; border-bottom: 0; border-right: 0; }
.banner-title::after { right: 0.5rem; bottom: 0.5rem; border-top: 0; border-left: 0; }
.banner-title .ja { font-size: var(--banner-title-fzja-xrem); line-height: 120%; font-weight: bold; font-family: "Noto Sans JP", sans-serif; color: var(--banner-title-color-xrem); }

.grits_meta_h1 { position: absolute; opacity: 0; top: 0; left: 0; pointer-events: none; }

@media (max-width: 960px) { header { height: 7rem; }
  .header { position: absolute; padding: 0; background: transparent; }
  .header-gp { justify-content: center; left: 0; width: 100%; height: auto; background: #FFFFFF; padding: 0 1.5rem; overflow-y: scroll; display: block; position: fixed; top: 7rem; }
  .header-gp-item { width: 100%; }
  .header-gp-item:first-child { padding-left: 0; padding-top: 0; text-align: center; background: #005ba7; padding: .5rem 0 .5rem 1.5rem; width: 100%; display: flex; justify-content: space-between; align-items: center; position: fixed; top: 0; left: 0; z-index: 2; }
  .header-gp-item:last-child { display: none; }
  .header-gp-item .header-menu { display: block; }
  .header-gp .logo img { width: 25rem; }
  .header-gp.active { height: calc(100vh - 6rem); overflow-y: scroll; padding-bottom: 20rem; display: block; position: fixed; }
  .header-menu { display: none; }
  .header-menu li { border-bottom: #333333 solid 1px; }
  .header-menu li a { display: block; padding: 1.5rem 3.5rem .8rem 0.5rem; border-right: 0; font-size: 1.5rem; }
  .header-menu li:first-child a { border-left: 0; }
  .header-menu .menu > li { position: relative; }
  .header-menu .menu > li:not(.item-has-children) a:before { content: ""; display: block; position: absolute; top: 50%; left: auto; right: 1rem; width: 1rem; aspect-ratio: 1 / 1; z-index: 1; -webkit-mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; background: #333333; transform: translateY(-50%); border: 0; opacity: 1; height: 1rem; }
  .header-menu .menu > li .dropdow { position: absolute; display: block; top: 1rem; right: 0rem; width: 3rem; height: 3rem; z-index: 2; background: #FFFFFF; border-radius: 100%; }
  .header-menu .menu > li .dropdow::before, .header-menu .menu > li .dropdow::after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 1rem; height: 0.1rem; background: #005ba7; }
  .header-menu .menu > li .dropdow::after { transition: all 0.35s; transform: translate(-50%, -50%) rotate(90deg); }
  .header-menu .menu > li .dropdow.active::after { transform: translate(-50%, -50%) rotate(0deg); }
  .header-menu .menu > li .sub-menu { position: relative; margin-bottom: 1.5rem; padding: 2rem; opacity: 1; display: none; min-width: 100%; background-color: #005ba7; }
  .header-menu .menu > li .sub-menu::before { content: none; }
  .header-menu .menu > li .sub-menu li { border: 0; width: 100%; margin-right: 0; }
  .header-menu .menu > li .sub-menu li:first-child a { border-top: #FFFFFF dashed .1rem; }
  .header-menu .menu > li .sub-menu li a { width: 100%; text-align: left; padding-left: 0; border-bottom: #FFFFFF dashed .1rem; color: #ffffff; position: relative; }
  .header-menu .menu > li .sub-menu li a::before { content: ""; display: block; position: absolute; top: 50%; right: 0rem; width: 1rem; aspect-ratio: 1 / 1; z-index: 1; -webkit-mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; background: #ffffff; transform: translateY(-50%); }
  .header-menu .menu > li a { position: relative; color: #333333; }
  .header-menu .menu > li.current-menu-item > a { color: #005ba7; }
  .header-menu .menu > li.current-menu-item > a::before { background: #005ba7; }
  .header-btn-gp { display: none; }
  .menu-title { font-size: 2.4rem; color: #333333; margin-top: 4rem; } }
.btn-tel { margin-bottom: 1.4rem; }
.btn-tel a { font-size: 4.2rem; color: #ffffff; line-height: 120%; letter-spacing: .15rem; font-weight: 500; font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; display: inline-block; padding-left: 3.6rem; position: relative; }
.btn-tel a::before { content: ""; position: absolute; width: 2.5rem; height: 3.3rem; top: 50%; left: 0; transform: translateY(-50%); -webkit-mask: url(assets/img/icon-tel.svg) center/100% no-repeat; mask: url(assets/img/icon-tel.svg) center/100% no-repeat; background: #FFFFFF; }
.btn-tel.vs-02 a { color: #333333; }
.btn-tel.vs-02 a::before { background: #333333; }

.table-calendar { margin-bottom: 4.3rem; }
.table-calendar table { width: 100%; border-spacing: 0; border-collapse: collapse; border-radius: 2rem; overflow: hidden; }
.table-calendar table td { background: #ffffff; font-size: 1.8rem; color: #333333; font-weight: 700; letter-spacing: 0; line-height: 150%; padding: 1.5rem 0; width: 5.7rem; text-align: center; position: relative; }
.table-calendar table td:first-child { text-align: left; padding-left: 1.3rem; width: 15.2rem; letter-spacing: .05rem; }
.table-calendar table td .desc { position: absolute; z-index: 1; left: -0.4rem; width: calc(100% + 1rem); bottom: -0.4rem; font-size: 1.6rem; font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; letter-spacing: .1rem; }
.table-calendar table td .desc span { font-size: 60%; }
.table-calendar table tr:first-child td { background: #82ceff; padding: 1.05rem 0; }
.table-calendar table tr:first-child td:first-child { padding-left: 1.3rem; }
.table-calendar table tr:not(:first-child) td:first-child { font-size: 2rem; font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; }

.footer { padding-top: 3.8rem; padding-bottom: 7.5rem; background: url(assets/img/footer_bg-01.jpg) no-repeat center left; background-size: cover; }
.footer-title-01 { margin-bottom: 1.2rem; }
.footer-title-01 span { font-size: 3.6rem; color: #ffffff; line-height: 120%; display: inline-block; letter-spacing: 0; font-weight: 500; font-family: "GenJyuuGothic Medium", "Noto Sans JP", sans-serif; border-bottom: #ffffff solid 2px; }
.footer-gp-box { width: 50%; }
.footer-gp-box:first-child { padding-left: 12rem; padding-right: 4.8rem; }
.footer-gp-box .logo { margin-bottom: 1.6rem; }
.footer-gp-box .logo img { width: 55.5rem; }
.footer-gp-box p { font-size: 2.4rem; color: #ffffff; letter-spacing: .05rem; line-height: 175%; font-weight: 700; }
.footer-gp-box .table-calendar p { font-size: 1.6rem; margin-top: .7rem; letter-spacing: -0.1rem; }
.footer-gp-item:first-child { width: 37.5rem; }
.footer-gp-item:last-child { width: 24rem; }
.footer-gp .maps iframe { vertical-align: top; border: #343434 solid 1px; width: 100%; height: 32.6rem; border-radius: 2rem; }

.menu-footer li { margin-bottom: 2.5rem; }
.menu-footer li:last-child { margin-bottom: 0; }
.menu-footer li a { color: #ffffff; font-size: 1.8rem; font-weight: 700; line-height: 173%; letter-spacing: 0; position: relative; display: inline-block; padding-left: 2.4rem; transition: all 0.35s; }
.menu-footer li a::before { content: ""; position: absolute; width: 1.5rem; height: 1.5rem; top: .8rem; left: 0; background: #FFFFFF; border-radius: 100%; }
.menu-footer li a:hover { opacity: 0.8; }
.menu-footer li.menu-item-1108 a { letter-spacing: -0.18rem; }
.menu-footer li .sub-menu { margin-top: 1rem; padding-left: 1.7rem; margin-bottom: -1.5rem; }
.menu-footer li .sub-menu li { margin-bottom: .9rem; }
.menu-footer li .sub-menu li:last-child { margin-bottom: 0; }
.menu-footer li .sub-menu li a { position: relative; padding-left: 2.5rem; }
.menu-footer li .sub-menu li a::before { content: "‐"; background: transparent; top: 0; left: 1rem; position: absolute; }
.menu-footer li.vs-custom { margin-top: -2.1rem; }
.menu-footer li.vs-custom > a { font-size: 0; }
.menu-footer li.vs-custom .sub-menu { display: flex; margin-top: -0.7rem; margin-bottom: 0; }
.menu-footer li.vs-custom .sub-menu li { margin-bottom: 0; }
.menu-footer li.vs-custom .sub-menu li:first-child a { padding-left: .8rem; }
.menu-footer li.vs-custom .sub-menu li a { padding-left: 1.6rem; }
.menu-footer li.vs-custom .sub-menu li a::before { content: "・"; left: 0; }
.menu-footer > li > a[href="#"] { cursor: default; pointer-events: none; }

.copyright { background: #005ba7; border-top: #ffffff solid 2px; padding: 1.5rem; }
.copyright-item { width: 50%; padding: .4rem 3rem; }
.copyright-item.logo { border-right: #ffffff solid 1px; text-align: right; }
.copyright-item.logo img { width: 18rem; }
.copyright-item p { font-size: 1.4rem; letter-spacing: 0; line-height: 175%; font-weight: 700; color: #ffffff; }

@media (min-width: 960.5px) { .menu_right_fix { display: none; } }
@media (max-width: 960px) { .menu_right_fix { border-top: #FFFFFF solid 1px; left: 0; bottom: 0; transform: inherit; display: flex; width: 100%; position: fixed; z-index: 100; transition: all 0.35s; }
  .menu_right_fix li { width: calc(100% / 2); border-right: #FFFFFF solid 1px; }
  .menu_right_fix li:last-child { border-right: 0; }
  .menu_right_fix li a { display: flex; align-items: center; justify-content: center; height: 6rem; background: #005ba7; color: #FFFFFF; }
  .menu_right_fix.no-active { display: none; }
  .btn-tel { text-align: center; }
  .btn-tel a { font-size: 3rem; padding-left: 2.5rem; background-size: 2rem; }
  .btn-tel a::before { width: 2rem; height: 2.6rem; }
  .table-calendar table { border-radius: 1rem; }
  .table-calendar table td { font-size: 1.5rem; width: 4.5rem; padding: 1rem 0; }
  .table-calendar table td:first-child { padding-left: .7rem; width: 14.2rem; }
  .table-calendar table td .desc { font-size: 1rem; left: -1.5rem; width: calc(100% + 3rem); }
  .table-calendar table tr:not(:first-child) td:first-child { font-size: 1.5rem; }
  .footer { padding: 3rem 0 6rem; }
  .footer-gp-box { width: 100%; }
  .footer-gp-box:first-child { padding-left: 0; padding-right: 0; }
  .footer-gp-box:last-child { display: none; }
  .footer-gp-box .logo { text-align: center; }
  .footer-gp-box .logo img { width: 30rem; }
  .footer-gp-box p { font-size: 1.5rem; }
  .footer-gp-box .table-calendar p { font-size: 1.5rem; }
  .footer-gp-box > p { text-align: center; }
  .footer-gp .maps iframe { height: 27rem; border-radius: 1rem; }
  .nav-menu { display: flex; position: relative; bottom: 0; right: 0; background: #005ba7; width: 7.5rem; height: 6rem; z-index: 10; }
  .nav-menu-item { width: 100%; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; padding: 1.5rem; }
  .nav-menu-item span { background: #fff; display: block; height: 1px; transition: transform 0.3s; width: 100%; transform-origin: center; position: relative; }
  .nav-menu-item.active span:first-child { transform: rotate(45deg); margin-bottom: 0; top: .9rem; }
  .nav-menu-item.active span:nth-child(2) { display: none; }
  .nav-menu-item.active span:nth-child(3) { transform: rotate(135deg); top: -0.6rem; }
  .copyright { padding-bottom: 7rem; }
  .copyright-item.logo { width: 15rem; padding-left: 0; padding-right: 1rem; }
  .copyright-item.logo img { width: 14rem; }
  .copyright-item.txt { width: calc(100% - 15rem); padding-left: 1rem; padding-right: 0; }
  .copyright-item p { font-size: 1.2rem; text-align: left; } }
@media (max-width: 960px) and (min-width: 767.5px) { .copyright { justify-content: center; }
  .copyright-item.logo, .copyright-item.txt { width: 50%; } }

@media (max-width: 767px) { .copyright-item .u-sp { display: none; } }
.wp-title-main_01 { position: relative; text-align: center; margin-bottom: var(--px-50px); }
.wp-title-main_01 .wp-block-heading { font-size: var(--px-32px); font-weight: bold; line-height: 150%; letter-spacing: 0.1em; color: #333333; }
.wp-title-main_01 p { display: inline-block; position: relative; color: #12b9c1; padding-right: var(--px-60px); margin-bottom: .4rem; }
.wp-title-main_01 p::before { content: ''; width: var(--px-20px); height: 1px; top: var(--px-18px); position: absolute; right: var(--px-30px); background-color: #12b9c1; }
@media (max-width: 1200px) and (min-width: 961px) { .wp-title-main_01 p::before { top: 2.1rem; right: 3.15rem; } }
@media (max-width: 960px) { .wp-title-main_01 p::before { top: var(--px-13px); } }
.wp-title-main_01 p::after { position: absolute; right: 0; }
@media (max-width: 960px) { .wp-title-main_01 .wp-block-heading { letter-spacing: 0.15em; } }
.wp-title-main_02 { width: 100%; background-color: #12b9c1; padding: 2rem 2rem 2.1rem; border-radius: .5rem; margin-bottom: var(--px-50px); color: #fff; font-size: 2.501rem; font-weight: 500; line-height: 150%; letter-spacing: 0; }
.wp-title-main_02 + .wp-img-no__full { margin-top: -0.8rem; }
@media (max-width: 1280px) and (min-width: 960.5px) { .wp-title-main_02 { font-size: 17px; } }
@media (max-width: 960px) { .wp-title-main_02 { padding: 1rem 1.5rem; font-size: 1.8rem; font-weight: bold; font-feature-settings: 'palt'; }
  .wp-title-main_02 + .wp-img-no__full { margin-top: -0.6rem; } }
.wp-title-main_03 { color: #333333; font-size: 2.201rem; font-weight: bold; line-height: 150%; letter-spacing: 0; padding-bottom: var(--px-13px); margin-bottom: var(--px-20px); border-bottom: .2rem solid #333333; }
@media (max-width: 1280px) and (min-width: 960.5px) { .wp-title-main_03 { font-size: 17px; } }
@media (max-width: 960px) { .wp-title-main_03 { font-size: 1.7rem; border-bottom: 1px solid #333333; } }
.wp-title-main_04 { display: block !important; margin-bottom: 1.2rem; color: #12b9c1; font-size: 2.01rem; font-weight: bold; line-height: 150%; letter-spacing: 0.1rem; }
@media (max-width: 960px) { .wp-title-main_04 { font-size: 1.6rem; } }

:where(main) { counter-reset: h2-counter 1; }
:where(main) .wp-title-main_01 h2 { counter-increment: h2-counter; }
:where(main) .wp-title-main_01 h3 { counter-increment: h2-counter; }
:where(main) .wp-title-main_01 p:after { content: "0" counter(h2-counter); }

.wp-title-main_01 p { display: none !important; }

.main_page .group-block-title { margin-bottom: 5.5rem; }
@media (max-width: 767px) { .main_page .group-block-title { margin-bottom: 3rem; } }
.main_page .group-block-title > :is(h3) { text-align: center; margin: 0; padding: 4.7rem 0 0 0; color: #000000; font-size: 2.801rem; font-weight: 700; line-height: 170%; letter-spacing: 0.5rem; }
.main_page .group-block-title > :is(h3):before { width: 4rem; height: 4rem; background-size: contain; bottom: inherit; top: 0; background-image: url(assets/img/favicon.png); background-repeat: no-repeat; }
@media (max-width: 767px) { .main_page .group-block-title > :is(h3) { font-size: 2.4rem; letter-spacing: 0.2rem; } }

:root { --px-11px: 1.1rem; --px-13px: 1.3rem; --px-15px: 1.5rem; --px-16px: 1.6rem; --px-18px: 1.8rem; --px-20px: 2rem; --px-22px: 2.2rem; --px-25px: 2.5rem; --px-30px: 3rem; --px-32px: 3.2rem; --px-41px: 4.1rem; --px-50px: 5rem; --px-60px: 6rem; --px-77px: 7.7rem; --px-102px: 10.2rem; --px-110px: 11.0rem; --px-111px: 11.1rem; --px-120px: 12.0rem; --px-131px: 13.1rem; --px-137px: 13.7rem; --px-140px: 14rem; --px-205px: 20.5rem; --px-250px: 25rem; --px-422px: 42.2rem; --px--5px: -0.5rem; --px--27px: -2.7rem; --px--30px: -3rem; --main-color: #90785f; }
@media (max-width: 960px) { :root { --px-140px: 8rem; --px-50px: 2.5rem; --px-20px: 1.8rem; --px-110px: 8rem; --px-102px: 7.5rem; --px-32px: 2.2rem; } }

.mg-b-30 { margin-bottom: 3rem !important; }

.mb-15 { margin-bottom: 1.5rem; }

.mb-30 { margin-bottom: 3rem; }

.mb-50 { margin-bottom: 5rem; }

.mb-60 { margin-bottom: 6rem; }

.mb-143 { margin-bottom: 14.3rem !important; }

.mb-150 { margin-bottom: 15rem  !important; }

.pt-50 { padding-top: var(--px-50px); }

@media (max-width: 960px) { .mb-50 { margin-bottom: 3rem; }
  .mb-sp-100 { margin-bottom: 10rem !important; }
  .mb-sp-92 { margin-bottom: 9.2rem !important; }
  .mb-sp-72 { margin-bottom: 7.2rem !important; }
  .mb-sp-65 { margin-bottom: 6.5rem !important; }
  .mb-sp-25 { margin-bottom: 2.5rem !important; }
  .mt-sp-10 { margin-top: 1rem !important; }
  .mb-60 { margin-bottom: 3rem; } }
.mt--30 { margin-top: -3rem; }

.mt-15 { margin-top: 1.5rem; }

.mt-20 { margin-top: 2rem; }

.mt-30 { margin-top: 3rem; }

@media (min-width: 1000.5px) { .mt-pc--30 { margin-top: -3rem; } }
.noimg { border: 1px solid #eeeeee; }

.main_page .group-block-img img { display: block; margin-left: auto; margin-right: auto; border-radius: 2rem; }
@media (max-width: 960px) { .main_page .group-block-img img { border-radius: 1rem; } }
.main_page .max-width-900 { max-width: 90rem; margin-left: auto; margin-right: auto; }
.main_page .group-block-table { width: 100%; position: relative; }
.main_page .group-block-table table { border-collapse: collapse; border-spacing: 0; width: 100%; }
.main_page .table-v1 :is(td,th) { background-color: transparent; padding: 1.3rem 1.5rem; color: #423e3e; font-size: 1.701rem; font-weight: 500; line-height: 180%; letter-spacing: 0.15rem; }
@media (max-width: 960px) { .main_page .table-v1 :is(td,th) { font-size: 1.5rem; padding: 1.2rem 0; line-height: 175%; vertical-align: top; letter-spacing: 0.05rem; } }
.main_page .table-v1 th { width: 18rem; text-align: left; }
@media (max-width: 960px) { .main_page .table-v1 th { width: 9.5rem; } }
.main_page .table-v1 td:last-child { font-weight: 400; }
.main_page .table-v1 td .fix-01 { margin-left: -1rem; }
.main_page .table-v1 tr { border-bottom: 1px solid #cec9c6; }
.main_page .table-v1 tr:first-of-type { border-top: 1px solid #cec9c6; }
.main_page .table-v2 :is(td,th) { background-color: transparent; padding: 1.8rem 0rem; border-bottom: 1px solid #cec9c6; border-right: 1px solid #cec9c6; color: #423e3e; font-size: 1.701rem; font-weight: 400; line-height: 180%; letter-spacing: 0.05rem; }
.main_page .table-v2 :is(td,th):last-child { border-right: 0; }
@media (max-width: 960px) { .main_page .table-v2 :is(td,th) { font-size: 1.4rem; line-height: 175%; letter-spacing: -0.5px; padding-top: 0.5rem; padding-bottom: 0.5rem; } }
@media (max-width: 960px) and (min-width: 767.5px) { .main_page .table-v2 :is(td,th) { padding-top: 1.5rem; padding-bottom: 1.5rem; } }

.main_page .table-v2 td { width: 6.3rem; text-align: center; position: relative; vertical-align: middle; }
@media (max-width: 960px) { .main_page .table-v2 td { width: 4rem; } }
@media (max-width: 960px) and (min-width: 767.5px) { .main_page .table-v2 td { width: 7.3rem; } }

.main_page .table-v2 td .time-out { position: absolute; left: 0; font-size: 1.2rem; font-weight: bold; letter-spacing: -0.05rem; bottom: .5rem; width: 100%; text-align: center; line-height: 100%; }
.main_page .table-v2 td .time-out span { font-size: 1rem; display: inline-block; margin-left: .3rem; }
@media (max-width: 960px) { .main_page .table-v2 td .time-out { font-size: 0.9rem; bottom: 0.1rem; }
  .main_page .table-v2 td .time-out span { font-size: 0.7rem; } }
@media (max-width: 960px) and (min-width: 767.5px) { .main_page .table-v2 td .time-out { font-size: 1.2rem; bottom: 0.2rem; }
  .main_page .table-v2 td .time-out span { font-size: 0.9rem; } }

.main_page .table-v2 thead th { letter-spacing: .25rem; font-weight: 500; }
@media (max-width: 960px) { .main_page .table-v2 thead th { letter-spacing: normal; font-weight: bold; } }
.main_page .table-v2 tbody tr:last-child :is(td,th) { border-bottom: 0; }
.main_page .table-v2 tbody th { letter-spacing: normal; }
.main_page .table-v2--note { font-size: 1.6rem; font-weight: 400; letter-spacing: .1rem; margin-bottom: 0 !important; }
@media (max-width: 960px) { .main_page .table-v2--note { font-size: 1.4rem; font-weight: 500; } }
.main_page .group-colums.colums-50 :is(.left, .right) { width: calc( (100% - 5.001rem) / 2 ); }
@media (max-width: 960px) { .main_page .group-colums.colums-50 :is(.left, .right) { width: 100%; } }
.main_page .group-colums.colums-50 .group-colums-item { margin-right: 5rem; }
.main_page .group-colums.colums-50 .group-colums-item:nth-child(2n), .main_page .group-colums.colums-50 .group-colums-item:last-child { margin-right: 0; }
@media (max-width: 960px) { .main_page .group-colums.colums-50 .group-colums-item { margin-right: 0rem; }
  .main_page .group-colums.colums-50 .group-colums-item:not(:last-child) { margin-bottom: 4rem; } }
@media (max-width: 960px) { .main_page .group-colums.group-maps--text .group-colums-item:not(:last-child) { margin-bottom: 1.5rem; } }
.main_page .group-before { position: relative; padding-top: 9rem; }
.main_page .group-before::before { content: ""; position: absolute; width: 100%; height: 1px; background-color: #cec9c6; top: 0; left: 0; }
@media (max-width: 960px) { .main_page .group-before { padding-top: 4rem; } }
@media (max-width: 960px) { .main_page .group-maps--iframe { margin-bottom: 2rem !important; } }
.main_page .group-maps--iframe iframe { width: 100%; height: 56.5rem; border: 0; vertical-align: top; }
@media (max-width: 960px) { .main_page .group-maps--iframe iframe { height: 26rem; } }
.main_page .group-maps--iframe p { font-weight: 500; }
.main_page .group-maps--iframe p strong { display: block; font-weight: 700; }
.main_page .group-block-bg { background-color: rgba(0, 127, 234, 0.1); padding: 2rem 3rem; overflow: hidden; }
.main_page .group-block-bg p { margin-bottom: 0 !important; }
@media (max-width: 960px) { .main_page .group-block-bg { padding: 2rem 2rem; } }

@media (max-width: 960px) { .mb150 { margin-bottom: 7rem !important; }
  .column-default-30.group-facilities .item { width: calc((100% - 1.001rem) / 2); margin-right: 1rem; margin-bottom: 1rem !important; }
  .column-default-30.group-facilities .item:nth-child(3n) { margin-right: 1rem; }
  .column-default-30.group-facilities .item:nth-child(2n), .column-default-30.group-facilities .item:last-child { margin-right: 0; } }
.wp-block-banner { overflow: hidden; margin-left: auto; margin-right: auto; position: relative; width: calc(100% - var(--banner-width-xrem)); border-radius: var(--banner-border-radius-xrem); margin-top: 3rem; }
.wp-block-banner::before { content: var(--banner-before-content-xrem); position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(139, 212, 228, 0.25); z-index: 1; }
.wp-block-banner__images { position: relative; }
.wp-block-banner__images img { width: 100%; height: var(--banner-img-height-xrem); object-fit: cover; aspect-ratio: auto; }
.wp-block-banner__title { position: absolute; z-index: 3; left: var(--banner-title-left-xrem); right: var(--banner-title-right-xrem); top: var(--banner-title-top-xrem); bottom: var(--banner-title-bottom-xrem); transform: translate(var(--banner-title-translateX-xrem), var(--banner-title-translateY-xrem)); text-align: center; border-top-left-radius: var(--banner-border-radius-xrem); border-top-right-radius: var(--banner-border-radius-xrem); letter-spacing: 0.3rem; height: var(--banner-title-height-xrem); padding: var(--banner-title-pdtop-xrem) var(--banner-title-pdleftright-xrem) var(--banner-title-pdbottom-xrem); min-width: var(--banner-title-minwidth-xrem); display: flex; align-items: center; justify-content: center; background-color: #ffffff; }
.wp-block-banner__title::before, .wp-block-banner__title::after { content: var(--banner-title-before-xrem); position: absolute; width: 4rem; height: 2rem; border: 4px double var(--banner-title-color-xrem); }
.wp-block-banner__title::before { left: 0.5rem; top: 0.5rem; border-bottom: 0; border-right: 0; }
.wp-block-banner__title::after { right: 0.5rem; bottom: 0.5rem; border-top: 0; border-left: 0; }
.wp-block-banner__title .ja { font-size: var(--banner-title-fzja-xrem); line-height: 150%; font-weight: bold; color: var(--banner-title-color-xrem); }

.breadcrumbs { width: 100%; text-align: var(--breadcrumb-text-align-xrem); position: relative; padding: 0 var(--breadcrumb-padding-lr-xrem); }
.breadcrumbs-content { text-align: var(--breadcrumb-content-text-align-xrem); display: inline-block; width: 100%; max-width: 120.001rem; margin-top: var(--breadcrumb-padding-top-xrem); margin-bottom: var(--breadcrumb-padding-bottom-xrem); margin-left: auto; margin-right: auto; }
.breadcrumbs-content li { position: relative; display: inline; }
.breadcrumbs-content li:not(:last-child) { padding-right: 1.5rem; margin-right: 1.5rem; }
.breadcrumbs-content li:not(:last-child)::before { content: ""; position: absolute; right: 0; top: 50%; width: 0.8rem; aspect-ratio: 1 / 1; transform: translateY(-47%) rotate(45deg); position: absolute; content: ""; border-top: 1px solid #353535; border-right: 1px solid #353535; }
.breadcrumbs-content li a { transition: ease all 0.35s; }
.breadcrumbs-content li a:hover { opacity: 0.7; }

.title-default-01 { margin-bottom: 2rem; }
.title-default-01 h3 { font-size: 3.6rem; font-weight: 700; line-height: 150%; color: #333333; letter-spacing: 0; }
.title-default-01 p { font-size: 2.4rem; font-weight: 500; font-style: italic; line-height: 150%; color: rgba(50, 50, 50, 0.5); letter-spacing: 0; font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; margin-top: -1rem; }
.title-default-02 h3 { color: #333333; font-size: 6rem; font-weight: 700; line-height: 130%; letter-spacing: 0; }
.title-default-02 p { color: #ff0000; font-size: 6rem; font-weight: 500; line-height: 130%; letter-spacing: 0; font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; font-style: italic; opacity: 0.3; margin-top: -2.2rem; }
.title-default-03 { color: #333333; font-size: 3.6rem; font-weight: 700; line-height: 115%; letter-spacing: 0; text-align: center; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; min-height: 8.3rem; }
.title-default-03.vs-02 { color: #e85757; text-align: left; display: block; min-height: auto; line-height: 130%; }
.title-default-03.vs-02 span { color: #343434; }

.btn-default-01 a { font-size: 1.6rem; line-height: 175%; letter-spacing: 0; font-weight: 700; color: #472a1e; background: #82ceff; display: flex; align-items: center; justify-content: center; height: 4rem; width: 11.2rem; border-radius: 4rem; transition: all 0.35s; }
.btn-default-01 a:hover { background: #472a1e; color: #82ceff; }
.btn-default-02 a { display: flex; justify-content: center; align-items: center; width: 42rem; height: 12rem; background: #e07a47; border-radius: 12rem; font-size: 2rem; color: #ffffff; letter-spacing: 0; line-height: 150%; font-weight: 700; position: relative; z-index: 0; transition: all 0.35s; box-shadow: 0.4rem 0.4rem 0.4rem rgba(0, 0, 0, 0.5); }
.btn-default-02 a::before { content: ""; position: absolute; width: calc(100% - .8rem); height: calc(100% - .8rem); top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: -1; border: #ffffff solid 1px; border-radius: 11.2rem; transition: all 0.35s; }
.btn-default-02 a::after { content: ""; position: absolute; width: 1.6rem; height: 1.9rem; top: 50%; right: 3rem; transform: translateY(-50%); background: #ffffff; z-index: -1; clip-path: polygon(0 0, 0% 100%, 100% 50%); transition: all 0.35s; }
.btn-default-02 a:hover { color: #e07a47; }
.btn-default-02 a:hover::before { background: #ffffff; }
.btn-default-02 a:hover::after { background: #e07a47; }
.btn-default-02.vs-02 a { width: 40rem; height: 8rem; margin-left: auto; margin-right: auto; }
.btn-default-03 a { display: flex; align-items: center; justify-content: center; width: 40rem; height: 8rem; border-radius: 8rem; position: relative; background: #ffffff; z-index: 0; color: #343434; font-size: 1.8rem; font-weight: 700; line-height: 175%; letter-spacing: 0; transition: all 0.35s; box-shadow: 0.4rem 0.4rem 0.4rem rgba(0, 0, 0, 0.5); }
.btn-default-03 a::before { content: ""; position: absolute; width: calc(100% - .8rem); height: calc(100% - .8rem); top: 50%; left: 50%; transform: translate(-50%, -50%); border: #000066 solid 1px; border-radius: 8rem; z-index: -1; transition: all 0.35s; }
.btn-default-03 a::after { content: ""; position: absolute; width: 1.6rem; height: 1.9rem; top: 50%; right: 3rem; transform: translateY(-50%); background: #333333; z-index: -1; clip-path: polygon(0 0, 0% 100%, 100% 50%); transition: all 0.35s; }
.btn-default-03 a:hover { color: #ffffff; }
.btn-default-03 a:hover::before { background: #000066; }
.btn-default-03 a:hover::after { background: #ffffff; }
.btn-default-03.vs-02 a { background: #e07a47; color: #ffffff; }
.btn-default-03.vs-02 a::before { border-color: #ffffff; }
.btn-default-03.vs-02 a::after { background: #ffffff; }
.btn-default-03.vs-02 a:hover { color: #e07a47; }
.btn-default-03.vs-02 a:hover::before { background: #ffffff; }
.btn-default-03.vs-02 a:hover::after { background: #e07a47; }
.btn-default-04 a { display: flex; align-items: center; justify-content: center; height: 14rem; width: 44rem; border-radius: 2rem; border: #001f4d solid 2px; background: rgba(244, 252, 255, 0.9); font-size: 3rem; line-height: 150%; letter-spacing: 0; color: #333333; font-weight: 700; position: relative; transition: all 0.35s; }
.btn-default-04 a::before { content: "▶"; width: 3.4rem; height: 3.4rem; position: absolute; top: 50%; right: 1.7rem; transform: translateY(-50%); font-size: 1.6rem; background: #39b9e4; border-radius: 100%; color: #ffffff; display: flex; align-items: center; justify-content: center; }
.btn-default-04 a:hover { background: rgba(0, 31, 77, 0.9); color: #ffffff; }

.btn-list-01 { position: relative; z-index: 1; }
.btn-list-01 li { margin-right: 10rem; }
.btn-list-01 li:last-child { margin-right: 0; }
.btn-list-02 li { margin-right: 4rem; margin-bottom: 3rem; }
.btn-list-02 li:nth-child(2n), .btn-list-02 li:last-child { margin-right: 0; }

.mv { position: relative; }
.mv-view { overflow: hidden; border-radius: 0 0 2rem 2rem; }
.mv-view video { vertical-align: top; height: 108rem; object-fit: cover; width: 100%; }
.mv-cont { position: absolute; bottom: 12rem; width: 100%; padding-right: 2rem; padding-left: 3.7rem; }
.mv-cont h2 { color: #ffffff; font-size: 4.8rem; font-weight: 700; line-height: 125%; letter-spacing: 0; text-shadow: 0 0 2rem #000; margin-bottom: 2rem; }
.mv-cont h3 { color: #ffffff; font-size: 3rem; font-weight: 700; line-height: 155%; letter-spacing: 0; text-shadow: 0 0 2rem #000; }
.mv-cont-item li { margin-right: 3rem; }
.mv-cont-item li:last-child { margin-right: 0; }
.mv-cont-item li img { width: 22rem; }

.top-news { position: relative; z-index: 1; margin-top: -5.7rem; border-radius: 2rem; padding: 4rem 8rem 0; margin-bottom: 7rem; background: url(assets/img/news_bg-01.jpg) no-repeat center; background-size: cover; }
.top-news-gp:first-child { width: 68rem; }
.top-news-gp:last-child { width: 57.5rem; padding-top: 1.2rem; padding-right: 2rem; }
.top-news-gp-item:first-child { width: 16.5rem; }
.top-news-gp-item:last-child { width: calc(100% - 16.5rem); padding-top: 7rem; }
.top-news-gp > p { font-size: 2.4rem; color: #323232; letter-spacing: .05rem; line-height: 175%; font-weight: 700; }
.top-news-gp .table-calendar { margin-bottom: 3.6rem; }
.top-news-gp .table-calendar p { font-size: 1.6rem; margin-top: .7rem; letter-spacing: 0; }
.top-news-gp .logo { margin-bottom: 1.4rem; }
.top-news-gp .logo img { width: 100%; }

.news-list li a { border-bottom: #404141 solid 1px; display: flex; flex-wrap: wrap; padding: 1.9rem 0; position: relative; }
.news-list li a::before { content: ""; position: absolute; width: 1.5rem; height: 1.7rem; top: 50%; right: 0; transform: translateY(-50%); background: #333333; clip-path: polygon(0 0, 0% 100%, 100% 50%); }
.news-list li a span { font-size: 1.8rem; color: #333333; line-height: 175%; letter-spacing: 0; font-weight: 700; }
.news-list li a span.date { font-family: "Source Han Sans JP Medium", "Noto Sans JP", sans-serif; width: 13.2rem; padding: 0 1rem; position: relative; top: .5rem; }
.news-list li a span.txt { width: calc(100% - 13.2rem); }

.top-menu { margin-top: .8rem; padding-top: 14.5rem; padding-bottom: 4.6rem; background: url(assets/img/menu_bg.jpg) no-repeat center; background-size: cover; position: relative; }
.top-menu::before { content: ""; position: absolute; width: 100%; height: 6.1rem; top: 0; left: 0; background: url(assets/img/news_bg-02.png) no-repeat center bottom; background-size: cover; }
.top-menu-head { margin-bottom: 6.8rem; }
.top-menu-head .txt { color: #333333; font-size: 3.6rem; font-weight: 700; line-height: 175%; letter-spacing: 0; font-family: "Noto Sans JP", sans-serif; margin-top: -1.5rem; }
.top-menu-list-01 { margin-bottom: 2.4rem; }
.top-menu-list-01 li { width: calc((100% - 8.101rem) / 4); margin-right: 2.7rem; margin-bottom: 2.7rem; }
.top-menu-list-01 li:nth-child(4n) { margin-right: 0; }
.top-menu-list-01 li a { display: block; position: relative; border-radius: 2rem; overflow: hidden; z-index: 0; box-shadow: 2rem 2rem 8rem rgba(0, 0, 102, 0.2); }
.top-menu-list-01 li a::before { content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: #4e4e4e; mix-blend-mode: hard-light; z-index: -1; transition: all 0.35s; }
.top-menu-list-01 li a::after { content: ""; position: absolute; width: calc(100% - 1rem); height: calc(100% - 1rem); top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 1.6rem; border: #ffffff solid 1px; z-index: -1; }
.top-menu-list-01 li a .img { position: relative; z-index: -2; }
.top-menu-list-01 li a .img img { width: 100%; }
.top-menu-list-01 li a .txt { position: absolute; top: 50%; left: 50%; text-align: center; transform: translate(-50%, -50%); color: #ffffff; font-size: 2.8rem; font-weight: 700; line-height: 175%; letter-spacing: 0; transition: all 0.35s; }
.top-menu-list-01 li a:hover::before { background: transparent; }
.top-menu-list-01 li a:hover .txt { color: #4e4e4e; text-shadow: .2rem .2rem 1rem  #fff, .2rem .2rem 1rem  #fff; }
.top-menu-list-02 { padding: 0 3rem; }
.top-menu-list-02 li { width: calc((100% - 26.1rem) / 4); margin-right: 8.7rem; margin-bottom: 6rem; }
.top-menu-list-02 li:nth-child(4n) { margin-right: 0; }
.top-menu-list-02 li a { position: relative; display: block; z-index: 0; border-radius: 2rem; overflow: hidden; box-shadow: 2rem 2rem 8rem rgba(0, 0, 102, 0.2); transition: all 0.35s; }
.top-menu-list-02 li a::before { content: ""; position: absolute; width: calc(100% - 1rem); height: calc(100% - 1rem); top: 50%; left: 50%; transform: translate(-50%, -50%); border: #72d2f2 solid 1px; z-index: -1; border-radius: 1.5rem; }
.top-menu-list-02 li a .txt { bottom: .9rem; left: 0; width: 100%; text-align: center; position: absolute; color: #4c7999; font-size: 2.4rem; font-weight: 700; line-height: 175%; letter-spacing: 0; }
.top-menu-list-02 li a .img { position: relative; z-index: -2; }
.top-menu-list-02 li a .img img { width: 100%; }
.top-menu-list-02 li a:hover { opacity: 0.8; }
.top-menu-list-02 li.vs-02 a .txt { color: #7b4c32; }

.top-diagnosis { padding-top: 8.7rem; padding-bottom: 8rem; }
.top-diagnosis-list { padding: 0 1rem; }
.top-diagnosis-list li { width: calc((100% - 2.001rem) / 2); margin-right: 2rem; margin-bottom: 2rem; }
.top-diagnosis-list li:nth-child(2n) { margin-right: 0; }
.top-diagnosis-list li a { border-radius: 2rem; overflow: hidden; position: relative; z-index: 0; display: block; }
.top-diagnosis-list li a::before { content: ""; position: absolute; width: calc(100% - 2rem); height: calc(100% - 2rem); top: 50%; left: 50%; transform: translate(-50%, -50%); background: #e6e6e6; mix-blend-mode: hard-light; border-radius: 1.6rem; transition: all 0.35s; }
.top-diagnosis-list li a .img { position: absolute; z-index: -2; width: 100%; height: 100%; }
.top-diagnosis-list li a .img img { width: 100%; height: 100%; object-fit: cover; }
.top-diagnosis-list li a .cont { position: relative; top: 0; left: 0; width: 100%; padding: 10.7rem 6.5rem 2rem; display: block; }
.top-diagnosis-list li a .cont .title { color: #333333; font-size: 3rem; font-weight: 700; line-height: 175%; letter-spacing: 0; display: block; text-align: center; margin-bottom: 2rem; transition: all 0.35s; }
.top-diagnosis-list li a .cont .txt { color: #333333; font-size: 1.8rem; font-weight: 700; line-height: 168%; letter-spacing: 0; display: block; margin-bottom: 7rem; transition: all 0.35s; }
.top-diagnosis-list li a .cont .btn { display: flex; align-items: center; justify-content: center; width: 100%; max-width: 40rem; height: 8rem; border-radius: 8rem; transition: all 0.35s; margin-left: auto; margin-right: auto; background: #ffffff; color: #343434; font-size: 1.9rem; font-weight: 700; line-height: 168%; letter-spacing: 0; box-shadow: 0.4rem 0.4rem 0.4rem rgba(0, 0, 0, 0.5); position: relative; z-index: 0; }
.top-diagnosis-list li a .cont .btn::before { content: ""; position: absolute; width: calc(100% - .8rem); height: calc(100% - .8rem); top: 50%; left: 50%; transform: translate(-50%, -50%); border: #000066 solid 1px; border-radius: 8rem; z-index: -1; }
.top-diagnosis-list li a .cont .btn::after { content: ""; position: absolute; width: 1.6rem; height: 1.9rem; top: 50%; right: 3rem; transform: translateY(-50%); background: #343434; z-index: -1; clip-path: polygon(0 0, 0% 100%, 100% 50%); transition: all 0.35s; }
.top-diagnosis-list li a:hover::before { opacity: 0; }
.top-diagnosis-list li a:hover .title, .top-diagnosis-list li a:hover .txt { color: #ffffff; }
.top-diagnosis .title-default-02 { margin-bottom: 5.2rem; }

.top-examination { padding-top: 8.4rem; padding-bottom: 10.8rem; background: #f5f8fa; }
.top-examination-tab-list li { width: calc((100% - 1.201rem) / 3); margin-right: .6rem; }
.top-examination-tab-list li:nth-child(3n) { margin-right: 0; }
.top-examination-tab-list li a { border-radius: 2rem 2rem 0 0; background: #007fea; display: flex; align-items: center; justify-content: center; width: 100%; height: 14rem; text-align: center; color: #ffffff; font-size: 3rem; font-weight: 700; line-height: 120%; letter-spacing: 0; }
.top-examination-tab-list li:nth-child(2) a { background: #5cb1b9; }
.top-examination-tab-list li:nth-child(3) a { background: #5571a9; }
.top-examination-tab-main { background: #ffffff; padding: 3rem; }
.top-examination-tab-item { opacity: 0; -webkit-transform: translate(0, 35px); transform: translate(0, 35px); transition: all 0.5s ease; }
.top-examination-tab-item:first-child { padding-top: 5rem; padding-left: 7rem; padding-right: 10rem; width: calc(100% - 64rem); }
.top-examination-tab-item:last-child { width: 64rem; }
.top-examination-tab-item img { width: 100%; border-radius: 3rem; }
.top-examination-tab-gp { display: none; flex-wrap: wrap; }
.top-examination-tab-gp.active { display: flex; }
.top-examination-tab-gp.active .top-examination-tab-item { animation: fade_in_0 500ms 500ms ease-in-out; animation-fill-mode: forwards; }
.top-examination-tab p { color: #343434; font-size: 1.8rem; font-weight: 700; line-height: 168%; letter-spacing: 0; margin-bottom: 9.6rem; }
.top-examination .title-default-02 { margin-bottom: 8.4rem; }

.feature { padding-top: 9rem; padding-bottom: 16rem; background: url(assets/img/feature-bg-05.jpg) no-repeat center; background-size: cover; }
.feature-gp { position: relative; z-index: 0; margin-bottom: 10rem; }
.feature-gp:last-child { margin-bottom: 0; }
.feature-gp::before { content: ""; position: absolute; width: calc(100% - 12rem); height: calc(100% - 6.4rem); top: 6.4rem; border-radius: 0 3rem 3rem 0; left: 0; z-index: -1; background: url(assets/img/feature-bg-01.jpg) no-repeat center; background-size: cover; }
.feature-gp-box { max-width: 144rem; margin-left: auto; margin-right: auto; }
.feature-gp-box .field { padding-top: 2.7rem; padding-left: 9.8rem; padding-right: 9.8rem; background: #ffffff; min-height: 30rem; border-radius: 3rem 0 0 3rem; margin-bottom: 5rem; }
.feature-gp-box .field p { max-width: 57rem; line-height: 175%; font-size: 1.8rem; letter-spacing: 0; color: #343434; font-weight: 700; }
.feature-gp-item:first-child { padding-left: 2rem; width: calc(100% - 56rem); }
.feature-gp-item:last-child { width: 56rem; }
.feature-gp-item img { border-radius: 3rem; width: 100%; }
.feature-gp:nth-child(2n) { padding-bottom: 3.3rem; }
.feature-gp:nth-child(2n)::before { left: auto; right: 0; border-radius: 3rem 0 0 3rem; }
.feature-gp:nth-child(2n) .feature-gp-item:first-child { order: 1; width: calc(100% - 68rem); padding-left: 0; }
.feature-gp:nth-child(2n) .feature-gp-item:last-child { width: 68rem; }
.feature-gp:nth-child(2n) .feature-gp-box .field { border-radius: 0 3rem 3rem 0; padding-left: 3rem; }
.feature-gp:nth-child(2n) .point-title { text-align: right; }
.feature-gp:nth-child(1) .btn-list-02 { padding-right: 2rem; }
.feature-gp:nth-child(2)::before { background-image: url(assets/img/feature-bg-02.jpg); }
.feature-gp:nth-child(3) { padding-bottom: 3.4rem; }
.feature-gp:nth-child(3)::before { background-image: url(assets/img/feature-bg-03.jpg); }
.feature-gp:nth-child(3) .btn-list-02 { padding-right: 2rem; }
.feature-gp:nth-child(4)::before { background-image: url(assets/img/feature-bg-04.jpg); }
.feature .title-default-02 { margin-bottom: 8.4rem; }
.feature .point-title { margin-bottom: -6.2rem; padding: 0 3rem; }
.feature .point-title span { color: #ffffff; font-size: 15rem; font-weight: 500; line-height: 155%; letter-spacing: 0; font-family: "Helvetica Neue LT Pro", "Noto Sans JP", sans-serif; }
.feature .point-title span:first-child { font-size: 3.6rem; }

.top-doctor { padding-top: 8.8rem; padding-bottom: 1.2rem; display: flex; background: url(assets/img/doctor-bg.jpg) no-repeat center; background-size: cover; overflow: hidden; position: relative; }
.top-doctor-item { width: calc((100% - 84rem) / 2); position: relative; }
.top-doctor-item:nth-child(1) .img { left: -14.5rem; bottom: -48rem; width: 127.5rem; position: absolute; }
.top-doctor-item:nth-child(2) { width: 84rem; margin-left: auto; margin-right: auto; z-index: 1; }
.top-doctor-item:nth-child(3) .img { position: absolute; right: -18rem; bottom: -70.2rem; width: 97.6rem; }
.top-doctor-item:nth-child(3) .top-doctor-name { left: auto; right: 2rem; }
.top-doctor-name { position: absolute; bottom: 10rem; left: 2rem; background: #ffffff; border-radius: 2rem; font-size: 3rem; padding: 2.2rem 6rem; }
.top-doctor-name span { color: #343434; line-height: 140%; letter-spacing: 0; font-weight: 700; display: block; }
.top-doctor-name span:first-child { font-size: 80%; }
.top-doctor-name::before { content: ""; position: absolute; width: calc(100% - .8rem); height: calc(100% - .8rem); top: 50%; left: 50%; border-radius: 1.6rem; transform: translate(-50%, -50%); border: #000066 solid 1px; }
.top-doctor .title-default-02 { margin-bottom: 5.8rem; }
.top-doctor .title-default-03 { margin-bottom: 2.6rem; }
.top-doctor .box { max-width: 73rem; margin-left: auto; margin-right: auto; }
.top-doctor .box p { font-size: 2.2rem; line-height: 164%; letter-spacing: .35rem; font-weight: 700; color: #333333; margin-bottom: 11.8rem; }

.top-column { padding-top: 8.4rem; padding-bottom: 10rem; }
.top-column .title-default-02 { margin-bottom: 8.4rem; }
.top-column .column-title-01 a { font-size: 1.6rem; font-weight: 700; color: #333333; line-height: 150%; letter-spacing: 0; }

.column-list { margin-bottom: 5.6rem; }
.column-list li { width: calc((100% - 14.001rem) / 5); margin-right: 3.5rem; position: relative; border-radius: .8rem; overflow: hidden; margin-bottom: 3rem; }
.column-list li:nth-child(5n) { margin-right: 0; }
.column-list li .img { margin-bottom: .8rem; }
.column-list li .img img { border-radius: .8rem; width: 100%; }
.column-list li .cate-item { position: absolute; display: flex; flex-wrap: wrap; top: 0; left: 0; }
.column-list li .cate-item a { background: #4d7999; display: inline-block; color: #ffffff; font-size: 1.6rem; letter-spacing: 0; line-height: 175%; font-weight: 400; padding: 0 1.5rem; margin-right: 1.5rem; }
.column-list li .cate-item a:last-child { margin-right: 0; }

.top-job { position: relative; }
.top-job-wrap { position: absolute; z-index: 1; width: 100%; top: 50%; transform: translateY(-50%); }

@media (max-width: 1280px) and (min-width: 960.5px) { .mv-cont-item li img { width: 20rem; } }
@media (max-width: 960px) { .title-default-01 h3 { font-size: 2.4rem; }
  .title-default-01 p { font-size: 1.5rem; margin-top: -0.5rem; }
  .title-default-02 h3 { font-size: 2.4rem; }
  .title-default-02 p { font-size: 2rem; text-align: center; margin-top: 0; }
  .title-default-03 { min-height: auto; font-size: 2.2rem; }
  .btn-default-01 a { font-size: 1.5rem; }
  .btn-default-02 a { width: 100%; font-size: 1.5rem; height: 7rem; }
  .btn-default-02.vs-02 a { width: 100%; height: 7rem; }
  .btn-default-03 { width: 100%; }
  .btn-default-03 a { width: 100%; height: 7rem; font-size: 1.5rem; }
  .btn-default-03 a::after { right: 1.5rem; }
  .btn-default-04 a { width: 100%; height: 10rem; font-size: 2rem; }
  .btn-list-01 li { margin-right: 0; width: 100%; margin-bottom: 1.5rem; }
  .btn-list-01 li:last-child { margin-bottom: 0; }
  .btn-list-02 li { margin-right: 0; width: 100%; margin-bottom: 1.5rem; }
  .btn-list-02 li:last-child { margin-bottom: 0; }
  .mv-view video { height: 37rem; }
  .mv-slide .slick-slide img { height: 37rem; object-fit: cover; }
  .mv-cont { padding: 0 1.5rem; bottom: 4rem; }
  .mv-cont-item:first-child { margin-bottom: 3rem; }
  .mv-cont-item li { width: calc((100% - 2.001rem) / 3); margin-right: 1rem; }
  .mv-cont-item li:nth-child(3n) { margin-right: 0; }
  .mv-cont-item li img { width: 12rem; }
  .mv-cont h2 { font-size: 2rem; line-height: 175%; }
  .mv-cont h3 { font-size: 1.6rem; font-weight: 400; }
  .top-news { margin-top: -2rem; padding: 1.5rem 0.7rem; }
  .top-news-gp:first-child { width: 100%; margin-bottom: 4.5rem; }
  .top-news-gp:last-child { width: 100%; padding-right: 0; }
  .top-news-gp-item:first-child { width: 100%; display: flex; justify-content: space-between; }
  .top-news-gp-item:last-child { width: 100%; padding-top: 1rem; }
  .top-news-gp > p { font-size: 1.5rem; letter-spacing: 0; }
  .news-list li a { padding: 1rem 1.5rem 1rem 0; }
  .news-list li a span { font-size: 1.5rem; }
  .news-list li a span.date { width: 100%; padding: 0; }
  .news-list li a span.txt { width: 100%; }
  .top-menu { margin-top: 6rem; padding-top: 5.5rem; }
  .top-menu::before { content: none; }
  .top-menu-head { margin-bottom: 3.3rem; }
  .top-menu-head .txt { font-size: 1.8rem; margin-top: 0; text-align: center; }
  .top-menu-list-01 li { width: calc((100% - 1.501rem) / 2); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .top-menu-list-01 li:nth-child(2n) { margin-right: 0; }
  .top-menu-list-01 li a .txt { font-size: 1.6rem; width: 100%; text-align: center; }
  .top-menu-list-02 { padding: 0; }
  .top-menu-list-02 li { width: calc((100% - 1.501rem) / 2); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .top-menu-list-02 li:nth-child(2n) { margin-right: 0; }
  .top-menu-list-02 li a .txt { font-size: 1.5rem; }
  .top-diagnosis { padding-top: 5.3rem; padding-bottom: 6rem; }
  .top-diagnosis-list li { width: 100%; margin-right: 0; margin-bottom: 1.5rem; }
  .top-diagnosis-list li:last-child { margin-bottom: 0; }
  .top-diagnosis-list li a .cont { padding: 2rem; }
  .top-diagnosis-list li a .cont .title { font-size: 2rem; margin-bottom: 1rem; }
  .top-diagnosis-list li a .cont .txt { font-size: 1.5rem; line-height: 175%; margin-bottom: 3.5rem; }
  .top-diagnosis-list li a .cont .btn { font-size: 1.5rem; height: 7rem; }
  .top-diagnosis-list li a .cont .btn::after { right: 1rem; }
  .top-diagnosis .title-default-02 { margin-bottom: 3.7rem; }
  .top-examination { padding-top: 5.4rem; padding-bottom: 6rem; }
  .top-examination-tab-item:first-child { width: 100%; padding: 0; order: 1; }
  .top-examination-tab-item:last-child { width: 100%; margin-bottom: 1.4rem; }
  .top-examination-tab-list li a { font-size: 1.5rem; height: 8rem; }
  .top-examination-tab-main { padding: 1.5rem; }
  .top-examination-tab p { font-size: 1.5rem; line-height: 175%; margin-bottom: 2.5rem; }
  .top-examination .title-default-02 { margin-bottom: 3.4rem; }
  .feature { padding-top: 0; padding-bottom: 6rem; }
  .feature-gp { padding-bottom: 6rem; margin-bottom: 6rem; }
  .feature-gp::before { width: 100%; border-radius: 0; top: 3rem; height: calc(100% - 3rem); }
  .feature-gp-item:first-child { width: 100%; order: 1; padding-left: 1.5rem; padding-right: 1.5rem; }
  .feature-gp-item:last-child { width: 100%; padding: 0 1.5rem; }
  .feature-gp-item img { border-radius: 1.5rem; }
  .feature-gp-box .field { padding: 1.5rem; min-height: auto; border-radius: 1.5rem; margin-bottom: 4rem; }
  .feature-gp-box .field p { font-size: 1.5rem; }
  .feature-gp:nth-child(2n) { padding-bottom: 6rem; }
  .feature-gp:nth-child(2n)::before { border-radius: 0; }
  .feature-gp:nth-child(2n) .feature-gp-item:first-child { width: 100%; padding-left: 1.5rem; }
  .feature-gp:nth-child(2n) .feature-gp-item:last-child { width: 100%; }
  .feature-gp:nth-child(2n) .feature-gp-box .field { border-radius: 1.5rem; padding-left: 1.5rem; }
  .feature-gp:nth-child(3) .btn-list-02 { padding-right: 0; }
  .feature .title-default-02 { margin-bottom: 3.4rem; }
  .feature .point-title { margin-bottom: -3.3rem; padding: 0 1.5rem; }
  .feature .point-title span { font-size: 8rem; }
  .feature .point-title span:first-child { font-size: 2rem; }
  .top-doctor { padding: 5.4rem 1.5rem 0; flex-wrap: wrap; }
  .top-doctor-item { width: 50%; }
  .top-doctor-item:nth-child(1) { order: 1; }
  .top-doctor-item:nth-child(1) .img { position: relative; width: 50rem; bottom: 0; margin-bottom: -21rem; left: -11.5rem; }
  .top-doctor-item:nth-child(2) { width: 100%; margin-bottom: 4rem; }
  .top-doctor-item:nth-child(3) { order: 2; }
  .top-doctor-item:nth-child(3) .img { width: 38rem; bottom: 0; margin-bottom: -28rem; right: -13rem; }
  .top-doctor-item:nth-child(3) .top-doctor-name { right: 0; }
  .top-doctor-name { bottom: 1.5rem; padding: 1.5rem; left: 0; font-size: 2rem; }
  .top-doctor .title-default-02 { margin-bottom: 2.8rem; }
  .top-doctor .title-default-03 { margin-bottom: .7rem; }
  .top-doctor .box p { font-size: 1.5rem; line-height: 175%; letter-spacing: 0; margin-bottom: 3.5rem; }
  .top-column { padding-top: 5.4rem; padding-bottom: 6rem; }
  .top-column .title-default-02 { margin-bottom: 3.4rem; }
  .top-column .column-title-01 a { font-size: 1.5rem; line-height: 175%; }
  .column-list { margin-bottom: 3.6rem; }
  .column-list li { width: 100%; margin-right: 0; }
  .column-list li:last-child { margin-bottom: 0; }
  .column-list li .cate-item a { font-size: 1.5rem; } }
@media (max-width: 767px) { .mv-cont-item li img { width: 100%; } }
.mt-60 { margin-top: 6rem; }

.mt-50 { margin-top: 5rem; }

.mb70 { margin-bottom: 7rem; }

.mb100, .mb101 { margin-bottom: 10rem; }

.mb150 { margin-bottom: 15rem; }

.main_page .cl-red { color: #FF0000; }

.catalogue { margin-top: 2.5rem; margin-bottom: 10rem; }
.catalogue-title { display: none; }
.catalogue-gp { max-width: 120.001rem; }
.catalogue-gp:not(.style-4button) { padding: 2rem 5rem 3.9rem; background-color: rgba(255, 255, 255, 0.2); border-radius: 1rem; border: 1px solid #353535; box-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.08); }
.catalogue-list ul { display: flex; flex-wrap: wrap; }
.catalogue-list ul li { margin-right: 3rem; }
.catalogue-list ul li:last-child { margin-right: 0; }
.catalogue-list ul li a { font-size: 1.8rem; font-weight: 500; line-height: 175%; color: #353535; letter-spacing: .1rem; transition: ease all 500ms; position: relative; padding-top: 1.1rem; padding-bottom: 0.9rem; display: block; letter-spacing: 0; border-bottom: #353535 solid .1rem; padding-right: 3rem; }
.catalogue-list ul li a::before { content: ""; display: block; position: absolute; top: 50%; right: 1rem; width: 1.1rem; aspect-ratio: 1/1; z-index: 5; -webkit-mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; background: #333; transform: translateY(-50%); }
.catalogue-list ul li a::after { content: ""; display: block; position: absolute; bottom: -1px; left: 0; width: 0; height: 1px; z-index: 1; pointer-events: none; background: #005ba7; transition: 0.5s; }
.catalogue-list ul li a:hover { padding-left: 1rem; color: #005ba7; font-weight: bold; }
.catalogue-list ul li a:hover::before { animation: arrowMove 0.6s ease 0s 1 both; background: #005ba7; }
.catalogue-list ul li a:hover::after { width: 100%; }
.catalogue-list.style-1columns li { width: 100%; margin-right: 0; }
.catalogue-list.style-2columns li { width: calc((100% - 3.001rem) / 2); }
.catalogue-list.style-2columns li:nth-child(2n) { margin-right: 0; }
.catalogue-list.style-3columns li { width: calc((100% - 6.001rem) / 3); }
.catalogue-list.style-3columns li:nth-child(3n) { margin-right: 0; }
.catalogue-list.style-4button ul { justify-content: center; margin-bottom: -1.5rem; }
.catalogue-list.style-4button ul li { margin-bottom: 1.5rem; margin-right: 1.5rem; }
.catalogue-list.style-4button ul li:last-child { margin-right: 0; }
.catalogue-list.style-4button ul li.current-menu-item a, .catalogue-list.style-4button ul li:hover a { background: #005ba7; color: #ffffff; font-weight: 500; }
.catalogue-list.style-4button ul li a { border-bottom: 0; color: #005ba7; position: relative; transition: all 0.35s; padding: 1rem 2rem; }
.catalogue-list.style-4button ul li a::before, .catalogue-list.style-4button ul li a::after { content: none; }
@media (min-width: 767.5px) { .catalogue-list.style-4button ul li a { background: rgba(0, 91, 167, 0.3); border: #005ba7 solid 1px; } }
@media (max-width: 767px) { .catalogue-list.style-4button ul li a { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 1rem; } }

.sitemap-wrap { padding: 6.5rem 0 8.5rem; }
.sitemap-title { color: #005ba7; font-size: 3.2rem; font-weight: 700; line-height: 150%; letter-spacing: 0; margin-bottom: 3.5rem; }
.sitemap-list { margin-bottom: 8.5rem; }
.sitemap-list li { width: calc((100% - 3rem) / 3); margin-right: 1.5rem; margin-bottom: 2rem; position: relative; padding-left: 2rem; }
.sitemap-list li::before { content: ""; position: absolute; top: 1.2rem; left: 0; width: .6rem; height: .6rem; background: #005ba7; border-radius: 100%; }
@media (min-width: 960.5px) { .sitemap-list li:nth-child(3n) { margin-right: 0; } }
.sitemap-list li a { color: #333; font-size: 1.6rem; font-weight: 500; line-height: 150%; letter-spacing: 0; transition: all 0.35s; }
.sitemap-list li a:hover { color: #005ba7; }

.news-gp { padding: 5.5rem 0 6rem; }
.news-gp-item:first-child { width: calc(100% - 30rem); }
.news-gp-item:last-child { width: 30rem; padding-left: 5rem; }
.news-gp .news-list { margin-bottom: 6rem; }

.pagenavi-wrap { margin-bottom: 6rem; }
.pagenavi-wrap ul { display: flex; justify-content: center; }
.pagenavi-wrap ul li { margin: 0 .8rem; }
.pagenavi-wrap ul li * { height: 4rem; border: #005ba7 solid 0.1rem; display: flex; align-items: center; justify-content: center; padding: 0 1.55rem; color: #727272; transition: all 0.35s; }
.pagenavi-wrap ul li .current, .pagenavi-wrap ul li a:hover { background: #005ba7; color: #FFFFFF; }

.archive-gp { border: #005ba7 solid 0.1rem; margin-bottom: 5rem; }
.archive-gp:last-child { margin-bottom: 0; }
.archive-title { color: #fff; font-size: 2rem; font-weight: 700; line-height: 150%; letter-spacing: 0; background: #005ba7; text-align: center; padding: 1rem; cursor: pointer; position: relative; }
.archive-title::before { content: ""; position: absolute; right: 1.5rem; top: 50%; width: 0.8rem; height: .8rem; transform: translateY(-50%) rotate(135deg); position: absolute; content: ""; border-top: .1rem solid #FFFFFF; border-right: .1rem solid #FFFFFF; transition: all 0.35s; }
.archive-title.active::before { transform: translateY(-50%) rotate(315deg); }
.archive-list { padding: 0 1.5rem; max-height: 32rem; overflow: auto; }
.archive-list li { border-bottom: #333 solid .1rem; }
.archive-list li:last-child { border-bottom: 0; }
.archive-list li a { color: #333; font-size: 1.6rem; font-weight: 700; line-height: 150%; letter-spacing: 0; display: block; padding: 1.3rem; transition: all 0.35s; }
.archive-list li a:hover { color: #005ba7; }

.single-gp .date { margin-bottom: 2.8rem; }
.single-gp .image { margin-bottom: 1.5rem; }
.single-wrap :is(h1, h2, h3, h4, h5, h6) { font-weight: 700; line-height: 150%; letter-spacing: 0; color: #000000; }
.single-wrap :is(h1, h2, h3, h4, h5, h6, p, ul, ol, .wp-block-image) { margin-bottom: 1.5rem; }
.single-wrap ul li { position: relative; padding-left: 1.5rem; }
.single-wrap ul li::before { content: ''; position: absolute; left: 0; top: .5rem; width: 1rem; height: 1rem; border-radius: 100%; background: #00c0ff; }
@media (max-width: 960px) { .single-wrap ul li::before { top: .75rem; } }
.single-wrap a { color: #233b5b; text-decoration: underline; transition: all 0.35s; }
.single-wrap a:hover { text-decoration: none; }
.single-wrap ol { padding-left: 1.5rem; }
.single-wrap ol li { list-style: decimal; }
.single-wrap blockquote { background: #EEEEEE; padding: 5rem; border-radius: 1.5rem; position: relative; margin: 5rem 0; }
.single-wrap blockquote::before { content: ""; width: 3.4rem; height: 3rem; position: absolute; left: 2rem; top: -1.2rem; background-image: url(assets/img/quote.svg); background-position: left top; background-repeat: no-repeat; background-size: contain; }
.single-wrap blockquote p:last-child { margin-bottom: 0; }
.single-wrap :is(p, li, blockquote) { font-size: 1.6rem; line-height: 170%; letter-spacing: 0; color: #000000; font-weight: 500; }
.single-wrap h1 { font-size: 3.2rem; }
.single-wrap h2 { font-size: 2.4rem; }
.single-wrap h3 { font-size: 2.2rem; }
.single-wrap h4 { font-size: 2rem; }
.single-wrap h5 { font-size: 1.8rem; }
.single-wrap h6 { font-size: 1.6rem; }

.nextpre_area-item a, .nextpre_area-item span { transition: all 0.35s; display: flex; align-items: center; justify-content: center; width: 25.5rem; font-size: 1.6rem; color: #262c34; height: 6.5rem; border: #005ba7 solid 0.1rem; border-radius: 3.3rem; font-family: "Noto Sans JP", sans-serif; background: #FFF; }
.nextpre_area-item span { opacity: 0.5; }
.nextpre_area-item a:hover { color: #FFF; background: #005ba7; }

.nextpre_area.vs-02 .nextpre_area-item a, .nextpre_area.vs-02 .nextpre_area-item span { border-color: #005ba7; }
.nextpre_area.vs-02 .nextpre_area-item a:hover { background: #005ba7; }

.single-title-01 { color: #000000; font-size: 3.2rem; font-weight: 700; line-height: 150%; letter-spacing: 0; }

.column-gp { padding: 5.5rem 0 6rem; }

.wp-column { padding: 2.4rem 0 4rem; }

.column-gp-01 { margin-bottom: 5rem; }
.column-gp-01 li { width: calc((100% - 4.501rem) / 4); margin-right: 1.5rem; margin-bottom: 1.5rem; padding: 1.5rem; box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2); }
.column-gp-01 li:nth-child(4n) { margin-right: 0; }
.column-gp-01 li .img { margin-bottom: 1.5rem; }
.column-gp-01 li .img img { width: 100%; aspect-ratio: 4 / 2.8; object-fit: cover; }
.column-gp-01 li h4 { color: #333; font-size: 1.8rem; font-weight: 700; line-height: 140%; letter-spacing: 0; margin-bottom: .7rem; }
.column-gp-01 li h4 a { display: block; display: -webkit-box; max-width: 100%; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.column-gp-01 li p { color: #333; font-size: 1.6rem; font-weight: 400; line-height: 170%; letter-spacing: 0; }

.column-cate-list { margin-bottom: 3rem; }
.column-cate-list li { margin-right: 1.7rem; margin-bottom: 1.7rem; }
.column-cate-list li a { background: #FFFFFF; display: block; padding: .9rem 3.2rem; font-size: 1.2rem; color: #777777; transition: all 0.35s; border: #3b4148 solid .1rem; }
.column-cate-list li a.active, .column-cate-list li a:hover { background: #3b4148; color: #FFFFFF; }

.wp-faq-gp .wp-block-columns { border: #CCC solid .1rem; border-radius: .5rem; margin-bottom: 3rem; padding: 2rem 3rem; }
.wp-faq-gp .wp-block-columns:first-child .wp-block-column:last-child { display: block; }
.wp-faq-gp .wp-block-columns:last-child { margin-bottom: 0; }
.wp-faq-gp .wp-block-heading { padding-left: 3.5rem; padding-right: 3rem; color: #3e3b39; font-size: 2.4rem; font-weight: 700; line-height: 150%; letter-spacing: 0; position: relative; cursor: pointer; }
.wp-faq-gp .wp-block-heading::before { content: "Q"; position: absolute; top: 0; left: 0; color: #f29a63; }
.wp-faq-gp .wp-block-heading::after { content: "＋"; position: absolute; top: 0; right: 0; }
.wp-faq-gp .wp-block-heading.active::after { content: "－"; }
.wp-faq-gp .wp-block-column:last-child { margin-top: 1.5rem; padding: 2rem 0 0 3.5rem; position: relative; display: none; border-top: #CCC solid .1rem; }
.wp-faq-gp .wp-block-column:last-child::before { content: "A"; position: absolute; font-size: 2.4rem; left: 0; top: 2rem; color: #3fa1b0; }

.wp-block-group__catalogue__li2 { list-style: none; margin-bottom: 10rem; }
.wp-block-group__catalogue__li2 .wp-block-heading__title-01 { display: none; }
.wp-block-group__catalogue__li2 > div { max-width: 120.001rem; padding: 2rem 5rem 3.9rem; border: .2rem solid #353535; background-color: rgba(255, 255, 255, 0.2); box-shadow: 0 0.4rem 1rem rgba(0, 0, 0, 0.08); border-radius: 1rem; }

.wp-block-list__catalogue-02 { display: flex; flex-wrap: wrap; }
.wp-block-list__catalogue-02 li { font-size: 1.8rem; font-weight: 500; line-height: 175%; color: #353535; letter-spacing: .1rem; width: calc((100% - 3.001rem) / 2); margin-right: 3rem; }
.wp-block-list__catalogue-02 li:nth-child(2n) { margin-right: 0; }
.wp-block-list__catalogue-02 li a { transition: ease all 500ms; position: relative; padding-top: 1.1rem; padding-bottom: 0.9rem; display: block; letter-spacing: 0; border-bottom: #353535 solid .1rem; padding-right: 3rem; }
.wp-block-list__catalogue-02 li a::before { content: ""; display: block; position: absolute; top: 50%; right: 1rem; width: 1.1rem; aspect-ratio: 1/1; z-index: 5; -webkit-mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; mask: url(assets/img/icon_arrow.svg) center/100% no-repeat; background: #005ba7; transform: translateY(-50%); }
.wp-block-list__catalogue-02 li a::after { content: ""; display: block; position: absolute; bottom: -1px; left: 0; width: 0; height: 1px; z-index: 1; pointer-events: none; background: #005ba7; transition: 0.5s; }
.wp-block-list__catalogue-02 li a:hover { padding-left: 1rem; color: #005ba7; font-weight: bold; }
.wp-block-list__catalogue-02 li a:hover::before { animation: arrowMove 0.6s ease 0s 1 both; }
.wp-block-list__catalogue-02 li a:hover::after { width: 100%; }

.column_grouping_01.wp-step .wp-block-columns { background: #EEEEEE; padding: 2rem; position: relative; }
.column_grouping_01.wp-step .wp-block-columns::before { content: ""; position: absolute; width: 4rem; height: 2.5rem; background: #005ba7; left: 50%; bottom: -4rem; transform: translateX(-50%); clip-path: polygon(100% 0, 0 0, 50% 100%); }
.column_grouping_01.wp-step .wp-block-columns:last-child::before { content: none; }
.column_grouping_01.wp-step .wp-block-columns .wp-title-main_02 { margin-bottom: 1.8rem; }

@keyframes arrowMove { 0% { opacity: 1; transform: translate(0%, -50%); }
  50% { opacity: 0; transform: translate(120%, -50%); }
  64% { opacity: 0; transform: translate(-120%, -50%); }
  100% { opacity: 1; transform: translate(0%, -50%); } }
@media (max-width: 1280px) and (min-width: 960.5px) { .sitemap-list li a { font-size: 2rem; }
  .sitemap-list li::before { top: 1.5rem; }
  .nextpre_area-item a, .nextpre_area-item span { font-size: 2rem; }
  .single-wrap :is(p, li, blockquote) { font-size: 2rem; }
  .column-gp-01 li p { font-size: 2rem; }
  .column-gp-01 li h4 { font-size: 2.1rem; }
  .wp-block-list__catalogue-02 li { font-size: 2rem; } }
@media (max-width: 960px) { .mt-60 { margin-top: 3rem; }
  .mt65 { margin-top: 3.5rem; }
  .mb70 { margin-bottom: 4rem; }
  .mb100 { margin-bottom: 5rem; }
  .mb101 { margin-bottom: 6rem; }
  .catalogue { margin-bottom: 5rem; }
  .catalogue-gp:not(.style-4button) { padding: 1.5rem; }
  .catalogue-list ul li a { font-size: 1.4rem; }
  .wp-sitemap { padding: 1rem 0 5.6rem; }
  .wp-sitemap .wp-block-heading { margin-bottom: 1.5rem; }
  .sitemap-wrap { padding: 1rem 0 5.6rem; }
  .sitemap-list { margin-bottom: 2.7rem; }
  .sitemap-list li { width: calc((100% - 1.501rem) / 2); margin-bottom: 1rem; }
  .sitemap-list li:nth-child(2n) { margin-right: 0; }
  .sitemap-list li a { font-size: 1.5rem; }
  .news-gp-item:first-child { width: 100%; }
  .news-gp-item:last-child { padding-left: 0; width: 100%; }
  .archive-gp { margin-bottom: 3rem; }
  .nextpre_area-item a, .nextpre_area-item span { width: 20rem; }
  .single-title-01 { font-size: 2.2rem; text-align: justify; display: block; margin-bottom: 1rem; }
  .single-wrap { margin-bottom: 5.4rem; }
  .single-wrap h1 { font-size: 2.2rem; }
  .single-wrap h2 { font-size: 2.0rem; }
  .single-wrap h3 { font-size: 1.8rem; }
  .single-wrap h4 { font-size: 1.6rem; }
  .single-wrap h5 { font-size: 1.4rem; }
  .single-wrap h6 { font-size: 1.3rem; }
  .single-wrap :is(p, li, blockquote) { font-size: 1.5rem; line-height: 175%; }
  .single-wrap blockquote { padding: 2rem; margin: 3rem 0; }
  .single-wrap blockquote::before { top: -0.5rem; width: 2rem; height: 1.8rem; }
  .single-title-01 { font-size: 2.2rem; text-align: justify; margin-bottom: 1rem; }
  .nextpre_area-item a, .nextpre_area-item span { width: 20rem; }
  .column-gp { padding-bottom: 0; }
  .wp-column { padding: 0 0 1rem; }
  .column-gp-01 { margin-bottom: 3rem; }
  .column-gp-01 li { width: calc((100% - 1.501rem) / 2); }
  .column-gp-01 li:nth-child(2n) { margin-right: 0; }
  .column-cate-list li { margin-right: 1.5rem; margin-bottom: 1rem; }
  .column-cate-list li a { padding: .9rem 1.5rem; }
  .wp-block-group__catalogue__li2 { padding-left: 1.5rem; padding-right: 1.5rem; margin-bottom: 5rem; }
  .wp-block-group__catalogue__li2 > div { padding: 1.5rem; }
  .wp-block-list__catalogue-02 li { font-size: 1.4rem; }
  .wp-faq-gp .wp-block-columns { padding: 2rem 0; }
  .wp-faq-gp .wp-block-column:last-child { padding-right: 1.5rem; }
  .wp-faq-gp .wp-block-column:last-child::before { left: 1rem; font-size: 1.8rem; }
  .wp-faq-gp .wp-block-heading { font-size: 1.8rem; }
  .wp-faq-gp .wp-block-heading::before { left: 1rem; }
  .wp-faq-gp .wp-block-heading::after { right: 1rem; }
  .sp-aspect-4-48 { aspect-ratio: 4 / 4.8; object-fit: cover; } }
@media (max-width: 767px) { .catalogue-list.style-2columns li, .catalogue-list.style-3columns li { width: 100%; margin-right: 0; }
  .catalogue-list.style-4button ul { margin-bottom: -1rem; }
  .catalogue-list.style-4button ul li { width: calc((100% - 1.01rem) / 2); margin-right: 1rem; margin-bottom: 1rem; background: rgba(0, 91, 167, 0.1); border: #005ba7 solid 1px; }
  .catalogue-list.style-4button ul li:nth-child(2n) { margin-right: 0; }
  .sitemap-list li { width: 100%; margin-right: 0; }
  .sitemap-list li:last-child { margin-bottom: 0; }
  .wp-news-gp { flex-wrap: wrap !important; }
  .wp-news-gp-item:first-child { width: 100%; margin-bottom: 5rem; }
  .wp-news-gp-item:last-child { width: 100%; padding-left: 0; }
  .nextpre_area-item { width: calc((100% - 1.501rem) / 2); margin-right: 1.5rem; }
  .nextpre_area-item:nth-child(2) { width: 100%; margin-right: 0; margin-top: 1.5rem; order: 1; }
  .nextpre_area-item:nth-child(3n) { margin-right: 0; }
  .nextpre_area-item a, .nextpre_area-item span { width: 100%; height: 5rem; }
  .column-gp-01 li { width: 100%; margin-right: 0; }
  .column-gp-01 li:last-child { margin-bottom: 0; }
  .wp-block-list__catalogue-02 li { width: 100%; margin-right: 0; } }
.main_page .title-default-01 h3 { padding-bottom: 0; margin-bottom: 0; }
.main_page h3 { color: #005ba7; font-size: 2.8rem; font-weight: 700; line-height: 140%; letter-spacing: 0.3rem; padding-bottom: 2.1rem; margin-bottom: 3.3rem; text-align: center; position: relative; }
.main_page h3::before { content: ""; position: absolute; bottom: 0; left: 0; right: 1px; margin: 0 auto; width: 9rem; height: .6rem; }
@media (max-width: 960px) { .main_page h3 { font-size: 2.4rem; } }
.main_page h4 { color: #ffffff; font-size: 2.61rem; font-weight: 700; line-height: 140%; letter-spacing: 0.3rem; padding: 1.5rem 2rem; margin-bottom: 2.4rem; background: linear-gradient(270deg, #9eccfa 0%, #4e86bb 100%); }
@media (max-width: 960px) { .main_page h4 { font-size: 2rem; margin-bottom: 1.5rem; letter-spacing: 0.15rem; padding: 1.2rem 1.5rem; } }
.main_page h5 { color: #005ba7; font-size: 2.4rem; font-weight: 700; line-height: 140%; letter-spacing: 0; border-bottom: 1px solid #005ba7; padding-bottom: 1.5rem; margin-bottom: 2rem; }
@media (max-width: 960px) { .main_page h5 { font-size: 1.8rem; } }
.main_page h6 { color: #005ba7; font-size: 2rem; font-weight: 700; line-height: 140%; letter-spacing: 0; margin-bottom: 1.5rem; padding-left: 3rem; position: relative; }
.main_page h6::before { content: ""; position: absolute; top: .7rem; left: 0; margin: 0 auto; width: 1.5rem; height: 1.5rem; background-color: #005ba7; }
@media (max-width: 960px) { .main_page h6 { font-size: 1.6rem; } }
.main_page iframe { width: 100%; height: 45rem; vertical-align: top; }
.main_page p:not(:last-child) { margin-bottom: 0; }
.main_page table.vs-02 { width: 100%; border-spacing: 0; border-collapse: collapse; }
.main_page table.vs-02 td { border-top: #cccccc solid 1px; border-bottom: #cccccc solid 1px; padding: 1.5rem 2rem; font-size: 1.6rem; line-height: 185%; color: #333333; font-weight: 500; letter-spacing: 0; vertical-align: top; }
.main_page table.vs-02 td:first-child { width: 32rem; color: #ffffff; font-weight: bold; background-color: #005ba7; font-family: "GenJyuuGothic Medium", "Noto Sans JP", sans-serif; }
.main_page table.vs-02.shinryo-jikan th { border: #ffffff solid 1px; border-top: 1px solid #005ba7; border-bottom: 1px solid #005ba7; padding: 1.5rem 2rem; text-align: center; background-color: #005ba7; color: #ffffff; font-size: 1.7rem; font-family: "GenJyuuGothic Medium", "Noto Sans JP", sans-serif; }
.main_page table.vs-02.shinryo-jikan th:first-child { border-left: 1px solid #005ba7; }
.main_page table.vs-02.shinryo-jikan th:last-child { border-right: 1px solid #005ba7; }
.main_page table.vs-02.shinryo-jikan td { text-align: center; border: #005ba7 solid 1px; font-weight: 600; }
.main_page table.vs-02.shinryo-jikan td:first-child { color: #005ba7; background-color: transparent; }
.main_page table.vs-02.vs-30 td { text-align: center; border: #cccccc solid 1px; width: calc(100%/3); }
.main_page table.vs-02.vs-30 td:first-child { background: transparent; color: #333333; font-weight: 500; }
.main_page table.vs-02.vs-64 { margin-bottom: 1rem; }
.main_page table.vs-02.vs-64 th { border: #cccccc solid 1px; padding: 1.5rem 2rem; background-color: #005ba7; width: 25%; color: #ffffff; }
.main_page table.vs-02.vs-64 th:nth-child(1) { width: 50%; text-align: left; }
.main_page table.vs-02.vs-64 td { border: #cccccc solid 1px; }
.main_page table.vs-02.vs-64 td:nth-child(1) { background-color: transparent; color: #333333; font-weight: 500; }
.main_page table.vs-02.vs-64 td:not(:first-child) { text-align: center; }
@media (max-width: 767px) { .main_page table.vs-02.vs-64 { border: 0px; margin-top: -2rem; border-spacing: 0px 1rem; border-collapse: separate; }
  .main_page table.vs-02.vs-64 th { display: none; }
  .main_page table.vs-02.vs-64 td { text-align: right !important; position: relative; padding-left: 12rem; }
  .main_page table.vs-02.vs-64 td:not(:last-child) { border-bottom: 0; }
  .main_page table.vs-02.vs-64 td::before { content: attr(data-title); position: absolute; left: 0; top: 0; padding: 1.2rem 1.5rem; background-color: #005ba7; width: 11rem; height: 100%; color: #ffffff; text-align: left !important; } }
.main_page table.vs-02.profile { border-collapse: collapse; margin-bottom: 5.1rem; }
.main_page table.vs-02.profile tr:last-child td:first-child::before { height: 60%; }
.main_page table.vs-02.profile td { padding-top: 1rem; padding-bottom: 1rem; font-feature-settings: 'palt'; color: #333333; font-size: 1.8rem; font-weight: 400; line-height: 150%; letter-spacing: 0; position: relative; border: 0 !important; vertical-align: middle; }
.main_page table.vs-02.profile td:first-child { letter-spacing: .1rem; font-weight: bold; width: 10rem; background-color: transparent; font-family: "GenJyuuGothic Medium", "Noto Sans JP", sans-serif; padding-left: 0; }
.main_page table.vs-02.profile td:first-child::before { content: ""; position: absolute; width: 1px; height: 125%; background-color: rgba(26, 131, 201, 0.3); right: 0rem; top: 40%; }
.main_page table.vs-02.profile td:last-child { padding-left: 3rem; padding-right: 0; font-size: 1.6rem; }
.main_page table.vs-02.profile td:last-child::before { content: ""; position: absolute; width: 1.5rem; height: 1.5rem; background-color: #1a83c9; border-radius: 100%; left: -0.8rem; top: 50%; transform: translateY(-50%); }
@media (max-width: 960px) { .main_page table.vs-02.profile { border: 0 !important; margin-bottom: 3rem; }
  .main_page table.vs-02.profile tr:first-child td:first-child { display: none; }
  .main_page table.vs-02.profile tr:first-child td:last-child::before { top: 1.5rem; }
  .main_page table.vs-02.profile tr:first-child td:last-child::after { top: 35%; height: calc(100% - 35%); }
  .main_page table.vs-02.profile td { padding-top: 1rem; padding-bottom: 1rem; font-size: 1.5rem; float: left; width: 100%; }
  .main_page table.vs-02.profile td:first-child { width: 100%; padding-bottom: 0; padding-left: 2rem; font-size: 1.6rem; }
  .main_page table.vs-02.profile td:first-child::before { right: inherit; left: -1px; top: 0% !important; height: 100% !important; }
  .main_page table.vs-02.profile td:last-child { font-size: 1.5rem; line-height: 175%; padding-left: 2rem; }
  .main_page table.vs-02.profile td:last-child::before { top: -2rem; transform: translateY(0); }
  .main_page table.vs-02.profile td:last-child::after { content: ""; position: absolute; width: 1px; height: 100%; background-color: rgba(26, 131, 201, 0.3); left: -1px; top: 0%; } }
.main_page ul { display: flex; flex-wrap: wrap; border: 0.4rem solid #005ba7; padding: 2rem 3rem; margin-bottom: 3rem; }
@media (max-width: 767px) { .main_page ul { border: 0.3rem solid #005ba7; } }
.main_page ul li { width: calc((100% - 1.501rem) / 2); margin-right: 1.5rem; margin-bottom: 1rem; padding-left: 2rem; position: relative; font-size: 1.6rem; color: #333333; }
.main_page ul li::before { content: ""; position: absolute; width: 1.2rem; height: 1.2rem; top: .9rem; left: 0; border-radius: 100%; background: #005ba7; }
.main_page ul li:nth-child(2n) { margin-right: 0; }
.main_page ul li.last { padding-left: 0; }
.main_page ul li.last::before { content: none; }
@media (min-width: 960.5px) { .main_page ul li:nth-last-child(2), .main_page ul li:last-child { margin-bottom: 0; } }
.main_page ul.vs-02 li { padding-left: 2.5rem; }
.main_page ul.vs-02 li::before { width: 2rem; height: 2rem; top: .4rem; -webkit-mask: url(assets/img/check.svg) center/100% no-repeat; mask: url(assets/img/check.svg) center/100% no-repeat; }
.main_page ul.vs-02 li.last { padding-left: 0; }
.main_page .faq > div { margin-bottom: 6rem; }
.main_page .faq > div:last-child { margin-bottom: 0; }

span.red { color: #dc0707; }

.column-img-right { display: flex; flex-wrap: wrap; }
.column-img-right > div:first-child { width: calc(100% - 42rem); padding-right: 5rem; }
.column-img-right > div:last-child { width: 42rem; }
.column-img-right > div:last-child img { width: 100%; object-fit: cover; border-radius: .5rem; aspect-ratio: 4 / 2.7; }
@media (max-width: 960px) { .column-img-right > div:first-child { width: 100%; padding-right: 0; order: 1; }
  .column-img-right > div:last-child { order: 0; width: 100%; margin-bottom: 1.5rem; } }
.column-img-right.vs-02 > div:last-child img { aspect-ratio: 4 / 4.6; }
.column-img-left { display: flex; flex-wrap: wrap; }
.column-img-left > div:first-child { width: 42rem; }
.column-img-left > div:first-child img { width: 100%; object-fit: cover; border-radius: .5rem; aspect-ratio: 4 / 2.7; }
.column-img-left > div:last-child { padding-left: 5rem; width: calc(100% - 42rem); }
@media (max-width: 960px) { .column-img-left > div:first-child { width: 100%; margin-bottom: 1.5rem; }
  .column-img-left > div:last-child { padding-left: 0; width: 100%; } }
.column-img-left.vs-02 > div:first-child img { aspect-ratio: 4 / 4.6; }
.column-default-30 { margin-top: 4rem; }
@media (max-width: 960px) { .column-default-30 { margin-top: 2rem; } }
.column-default-30 .item { width: calc((100% - 4.001rem) / 3); margin-right: 2rem; }
.column-default-30 .item:nth-child(3n) { margin-right: 0; }
.column-default-30 .item img { border-radius: 1rem; width: 100%; aspect-ratio: 4 / 2.8; object-fit: cover; }
@media (max-width: 960px) { .column-default-30 .item img { border-radius: 0.5rem; } }
@media (max-width: 960px) { .column-default-30 .item { width: calc((100% - 2.001rem) / 3); margin-right: 1rem; } }
.column-default-30.mb--item { margin-bottom: -2rem; }
.column-default-30.mb--item .item { margin-bottom: 2rem; }

.group-pd-bg { background-color: rgba(157, 203, 250, 0.2); padding: 4rem; border-radius: 1rem; }
@media (max-width: 960px) { .group-pd-bg { padding: 2rem 1.5rem; } }

@media (max-width: 960px) { .main_page table.vs-02 { border: 1px solid #005ba7; }
  .main_page table.vs-02 td { font-size: 1.5rem; float: left; width: 100%; padding: 1.2rem 1.5rem; border: 0; }
  .main_page table.vs-02 td:first-child { width: 100%; }
  .main_page ul { padding: 1.5rem 1.5rem .7rem; }
  .main_page ul li { font-size: 1.5rem; } }
@media (max-width: 767px) { .main_page ul { padding-bottom: 1.5rem; }
  .main_page ul li { width: 100%; margin-right: 0; margin-bottom: .8rem; }
  .main_page ul li:last-child { margin-bottom: 0; } }
.chart-container { margin: 3rem 0; display: flex; align-items: flex-start; justify-content: center; }

.chart-wrapper { display: flex; align-items: flex-start; }

.chart-legend { margin-left: 4rem; font-family: sans-serif; font-size: 1.4rem; }

.chart-legend ul { list-style: none; padding-left: 0; }

.chart-legend li { display: flex; align-items: center; line-height: 175%; }

.chart-legend span { display: inline-block; width: 1.6rem; height: 1.6rem; margin-right: .8rem; }

#myPieChart { width: 49.901rem !important; height: 49.901rem !important; position: relative; top: .5rem; }
@media (max-width: 960px) and (min-width: 767.5px) { #myPieChart { width: 40rem !important; height: 40rem !important; } }
@media (max-width: 767px) { #myPieChart { width: 34rem !important; height: 34rem !important; } }

p.max-810 { width: 100%; max-width: 68rem; margin-left: auto; margin-right: auto; }

@media (max-width: 767px) { .chart-container { flex-wrap: wrap; }
  .chart-legend { margin-left: 0; margin-top: 2rem; } }
.wp-column { background-image: initial; }
.wp-column .column-list-01 { display: flex; flex-wrap: wrap; max-width: 100%; margin-bottom: 8rem; }
.wp-column .column-list-01 li { width: calc((100% - 2.001rem) / 2); margin-right: 2rem; margin-bottom: 2.25rem; }
.wp-column .column-list-01 li:nth-child(2n) { margin-right: 0; }
.wp-column .wp-block-pagenavi .page-numbers:hover, .wp-column .wp-block-pagenavi .page-numbers.current { background: #12b9c1; }
.wp-column .wp-block-pagenavi .page-numbers { border-color: #12b9c1; }

@media (max-width: 960px) { .wp-column .column-list-01 { max-width: 54rem; margin-bottom: 2rem; }
  .wp-column .column-list-01 li { width: 100%; margin-right: 0; } }
.list-default-01 { display: flex; flex-wrap: wrap; margin-top: 2.5rem; margin-bottom: 2rem; border: #12b9c1 solid .5rem; border-radius: 2rem; padding: 3.5rem 2rem 2rem 2rem; }
.list-default-01 li { font-family: "M PLUS 1", sans-serif; color: #333333; font-size: 1.8rem; font-weight: 500; line-height: 170%; letter-spacing: 0.05rem; width: calc((100% - 1.501rem) / 2); margin-right: 1.5rem; position: relative; padding-left: 3.5rem; margin-bottom: 1.5rem; font-feature-settings: 'palt'; }
.list-default-01 li:nth-child(2n) { margin-right: 0; }
.list-default-01 li::before { content: ""; position: absolute; width: 2.5rem; height: 2rem; -webkit-mask: url(assets/img/check.svg) center/100% no-repeat; mask: url(assets/img/check.svg) center/100% no-repeat; background: #12b9c1; top: .5rem; left: 0; }

@media (max-width: 960px) { .list-default-01 { border: #12b9c1 solid .2rem; border-radius: 1.5rem; padding: 2rem; }
  .list-default-01 li { font-size: 1.4rem; }
  .list-default-01 li::before { width: 2rem; } }
@media (max-width: 767px) { .list-default-01 li { width: 100%; margin-right: 0; }
  .list-default-01 li:last-child { margin-bottom: 0; } }

/*# sourceMappingURL=style.css.map */
