@charset "UTF-8";
/* modern reset css */
/*! ress.css • v1.2.2 MIT License github.com/filipelinhares/ress */
/* # ================================================================= # Global selectors # ================================================================= */
html { box-sizing: border-box; overflow-y: scroll; /* All browsers without overlaying scrollbars */ -webkit-text-size-adjust: 100%; /* iOS 8+ */ }

*, ::before, ::after { background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements */ box-sizing: inherit; }

::before, ::after { text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */ vertical-align: inherit; }

/* Remove margin, padding of all elements and set background-no-repeat as default */
* { padding: 0; /* Reset `padding` and `margin` of all elements */ margin: 0; }

/* # ================================================================= # General elements # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) { display: none; height: 0; }

hr { overflow: visible; /* Show the overflow in Edge and IE */ }

/* Correct `block` display not defined for any HTML5 element in IE 8/9 Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox Correct `block` display not defined for `main` in IE 11 */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { display: block; }

summary { display: list-item; /* Add the correct display in all browsers */ }

small { font-size: 80%; /* Set font-size to 80% in `small` elements */ }

[hidden], template { display: none; /* Add the correct display in IE */ }

abbr[title] { border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */ text-decoration: none; /* Remove text decoration in Firefox 40+ */ }

a { background-color: transparent; /* Remove the gray background on active links in IE 10 */ -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */ }

a:active, a:hover { outline-width: 0; /* Remove the outline when hovering in all browsers */ }

code, kbd, pre, samp { font-family: monospace, monospace; /* Specify the font family of code elements */ }

b, strong { font-weight: bolder; /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */ }

dfn { font-style: italic; /* Address styling not present in Safari and Chrome */ }

/* Address styling not present in IE 8/9 */
mark { background-color: #ff0; color: #000; }

/* https://gist.github.com/unruthless/413930 */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* # ================================================================= # Forms # ================================================================= */
input { border-radius: 0; }

/* Apply cursor pointer to button elements */
button, [type="button"], [type="reset"], [type="submit"], [role="button"] { cursor: pointer; }

/* Replace pointer cursor in disabled elements */
[disabled] { cursor: default; }

[type="number"] { width: auto; /* Firefox 36+ */ }

[type="search"] { -webkit-appearance: textfield; /* Safari 8+ */ }

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; /* Safari 8 */ }

textarea { overflow: auto; /* Internet Explorer 11+ */ resize: vertical; /* Specify textarea resizability */ }

button, input, optgroup, select, textarea { font: inherit; /* Specify font inheritance of form elements */ }

optgroup { font-weight: bold; /* Restore the font weight unset by the previous rule. */ }

button { overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */ }

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: 0; padding: 0; }

/* Replace focus style removed in the border reset above */
button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { outline: 1px dotted ButtonText; }

button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */ }

button, select { text-transform: none; /* Firefox 40+, Internet Explorer 11- */ }

/* Remove the default button styling in all browsers */
button, input, select, textarea { background-color: transparent; border-style: none; color: inherit; }

/* Style select like a standard input */
select { -moz-appearance: none; /* Firefox 36+ */ -webkit-appearance: none; /* Chrome 41+ */ }

select::-ms-expand { display: none; /* Internet Explorer 11+ */ }

select::-ms-value { color: currentColor; /* Internet Explorer 11+ */ }

legend { border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */ color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */ display: table; /* Correct the text wrapping in Edge and IE */ max-width: 100%; /* Correct the text wrapping in Edge and IE */ white-space: normal; /* Correct the text wrapping in Edge and IE */ }

::-webkit-file-upload-button { -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */ font: inherit; /* Change font properties to `inherit` in Chrome and Safari */ }

[type="search"] { -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */ outline-offset: -2px; /* Correct the outline style in Safari */ }

/* # ================================================================= # Specify media element style # ================================================================= */
img { border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */ }

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress { vertical-align: baseline; }

svg:not(:root) { overflow: hidden; /* Internet Explorer 11- */ }

audio, canvas, progress, video { display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */ }

/* # ================================================================= # Accessibility # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen { [hidden~="screen"] { display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) { position: absolute !important; clip: rect(0 0 0 0) !important; } }

/* Specify the progress cursor of updating elements */
[aria-busy="true"] { cursor: progress; }

/* Specify the pointer cursor of trigger elements */
[aria-controls] { cursor: pointer; }

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] { cursor: default; }

/* # ================================================================= # Selection # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection { background-color: #b3d4fc; /* Required when declaring ::selection */ color: #000; text-shadow: none; }

::selection { background-color: #b3d4fc; /* Required when declaring ::selection */ color: #000; text-shadow: none; }

/* base */
/* responsive */
/*
#styleguide
基本スタイル

```
<p>特に何も指定しないときの状態</p>
```
*/
body { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-smoothing: antialiased; text-rendering: auto; font-size: 14px; font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; color: #333; background-color: #fff; }

h1, h2, h3, h4, dt, dd, p, span, em, time { line-height: 1; }

em { font-style: normal; }

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

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

img, svg { vertical-align: middle; }

img { width: 100%; height: auto; }

svg { fill: currentColor; }

/* layout */
.l-container { max-width: 1220px; width: 100%; margin: 0 auto; padding: 0 40px; /* 下層コンテンツが2カラムのとき */ /* 下層コンテンツが単一のとき */ }

.l-container__col { position: relative; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; margin-top: 68px; }

.l-container__col-side { -webkit-flex-basis: 27.54%; -ms-flex-preferred-size: 27.54%; flex-basis: 27.54%; }

.l-container__col-main { -webkit-flex-basis: 64.82%; -ms-flex-preferred-size: 64.82%; flex-basis: 64.82%; margin-left: 87px; }

.l-container__single { position: relative; margin-top: 68px; }

@media screen and (max-width: 900px) { .l-container__col { -webkit-flex-direction: column-reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; }
  .l-container__col-side { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; width: 100%; margin-top: 80px; }
  .l-container__col-main { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; width: 100%; margin-left: 0; } }

@media screen and (max-width: 767px) { .l-container { padding: 0; }
  .l-container__col { margin-top: 44px; }
  .l-container__col-side { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; margin-top: 80px; padding: 0 10px; }
  .l-container__col-main { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; padding: 0 20px; }
  .l-container__single { margin-top: 44px; padding: 0 20px; }
  .l-container__col--news-top { margin-top: 51px; }
  .l-container__col--news-top .l-container__col-main { margin-top: 152px; } }

.l-main { margin-bottom: 151px; }

/* 下層用 */
.l-main--pages { margin: 240px 0 150px; }

.l-main--movie { margin: 240px 0 90px; }

@media screen and (max-width: 900px) { .l-main--pages { margin-top: 223px; } }

@media screen and (max-width: 767px) { .l-main { margin: 122px 0 60px; }
  .android .l-main { margin: 110px 0 60px; }
  .l-main--pages { margin: 122px 0 76px; } }

.l-section__inner { max-width: 1440px; width: 100%; margin: 0 auto; padding: 0 60px; }

.l-section__item { position: relative; }

.l-section--grid { margin-top: 124px; }

.l-section--grid .l-section__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: inherit; -ms-flex-align: inherit; align-items: inherit; }

.l-section--grid .l-section__item { width: 48.4%; padding: 70px 59px 58px; border-radius: 28px; box-shadow: 2px 5px 10px 2px rgba(162, 202, 240, 0.4); }

.l-section--grid .l-section__item:hover:before { border: 6px solid #039eec; transition-duration: .4s; }

.l-section--grid .l-section__item:hover .heading-en__icon { -webkit-transform: rotate3d(0, 0, 1, 90deg); transform: rotate3d(0, 0, 1, 90deg); }

.l-section--grid .l-section__item:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; border: 0 solid #fff; border-radius: 28px; z-index: -1; transition: border 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); }

.l-section--intro { margin-top: 140px; }

.l-section--intro .l-section__inner { max-width: 1260px; }

.l-section--news, .l-section--magazine { margin-top: 125px; background-color: #f0f9fd; padding-top: 60px; }

@media screen and (max-width: 767px) { .l-section--news, .l-section--magazine { margin-top: 60px; } }

.l-section--news .l-section__inner, .l-section--magazine .l-section__inner { max-width: 1260px; }

@media screen and (max-width: 900px) { .l-section--grid .l-section__inner { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
  .l-section--grid .l-section__item { max-width: 680px; width: 100%; margin: 80px auto 0; }
  .l-section--grid .l-section__item:first-of-type { margin-top: 0; } }

@media screen and (max-width: 767px) { .l-section__inner { padding: 0 20px; }
  .l-section--grid { margin-top: 61px; }
  .l-section--grid .l-section__inner { padding: 0 10px; }
  .l-section--grid .l-section__item { margin-top: 58px; padding: 70px 10% 60px; box-shadow: 0 4px 10px 1px rgba(162, 202, 240, 0.6); }
  .l-section--grid .l-section__item:before { content: none; }
  .l-section--intro { margin-top: 72px; }
  .l-section__news, .l-section__sakura { margin-top: 59px; } }

.l-wrapper__inner { position: relative; overflow: hidden; }

.l-wrapper__inner:before, .l-wrapper__inner:after { content: ''; position: absolute; height: 100%; top: 0; bottom: 0; border-left: 5px solid #039eec; z-index: 11; }

.l-wrapper__inner:before { left: 0; }

.l-wrapper__inner:after { right: 0; }

.l-wrapper__inner-border { position: absolute; width: 100%; top: 0; left: 0; right: 0; border-top: 5px solid #039eec; z-index: 11; }

@media screen and (max-width: 767px) { .l-wrapper__inner:before, .l-wrapper__inner:after { content: none; }
  .l-wrapper__inner-border { display: none; } }

/* module */
.header { position: fixed; width: 100%; top: 0; left: 0; right: 0; background-color: #fff; z-index: 10; transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); /* SPのときのサブメニュー */ /* SPで表示されるロゴ横の要素 */ /* header スクロールで見え隠れさせる */ }

.header__inner { display: block; max-width: 1900px; width: 100%; margin: 0 auto; padding: 18px 40px 13px; background-color: #fff; overflow: hidden; }

.header__logo { float: left; }

.header__menu { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 6px 0 6px 14px; }

.header__link { margin-top: -4px; max-width: 270px; font-size: 0; letter-spacing: 0; }

.header__link-item { margin-top: 10px; text-align: left; vertical-align: middle; display: inline-block; width: 50%; }

.header__tel { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; margin-left: 2.4%; }

.header__button { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 215px; margin-left: 3.2%; }

.header__menu--sp { position: absolute; display: none; top: 71px; left: 0; right: 0; background-color: #fff; -webkit-transform: translate3d(0, -81.3%, 0); transform: translate3d(0, -81.3%, 0); z-index: -1; transition: box-shadow 0.8s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.8s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.8s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.8s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.8s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.8s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.8s cubic-bezier(0.23, 1, 0.32, 1); }

.header__menu--sp.is-open { box-shadow: 0 3px 20px 0 rgba(162, 202, 240, 0.4); -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.android .header__menu--sp { -webkit-transform: translate3d(0, -82.3%, 0); transform: translate3d(0, -82.3%, 0); }

.header__side-block { position: absolute; display: none; top: 11px; right: 7px; }

.header__access, .header__hamburger { display: inline-block; text-align: center; vertical-align: top; }

.header__access-text, .header__hamburger-text { font-size: 7px; font-weight: 700; }

.header__access-icon { color: #039eec; }

.header__access-icon > svg { width: 22px; height: 29px; }

.header__access-text { margin-top: 3px; }

.header__hamburger { padding-top: 7px; /* 開いたときのアイコンの状態 */ }

.header__hamburger-icon { position: relative; display: block; width: 33px; height: 2px; margin: 0 auto; background-color: #039eec; }

.header__hamburger-icon:first-of-type, .header__hamburger-icon:last-of-type { transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }

.header__hamburger-icon:nth-of-type(2) { margin: 5px auto; transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, -webkit-transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.12s; transition: transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.12s, opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s; transition: transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.12s, opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1) 0.1s, -webkit-transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.12s; }

.header__hamburger-text { min-width: 40px; margin-top: 8px; }

.header__hamburger.is-open .header__hamburger-icon:first-of-type { -webkit-transform: rotate3d(0, 0, 1, -45deg) translate3d(-5px, 6px, 0); transform: rotate3d(0, 0, 1, -45deg) translate3d(-5px, 6px, 0); }

.header__hamburger.is-open .header__hamburger-icon:nth-of-type(2) { opacity: 0; -webkit-transform: translate3d(10px, 0, 0); transform: translate3d(10px, 0, 0); transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1); transition: transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1); transition: transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1), opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), -webkit-transform 0.4s cubic-bezier(0.075, 0.82, 0.165, 1); }

.header__hamburger.is-open .header__hamburger-icon:last-of-type { -webkit-transform: rotate3d(0, 0, 1, 45deg) translate3d(-4px, -5px, 0); transform: rotate3d(0, 0, 1, 45deg) translate3d(-4px, -5px, 0); }

.header.is-hide { -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); }

@media screen and (min-width: 1041px) and (max-width: 1071px) { .header__link { max-width: 258px; }
  .header__link-item:nth-of-type(even) { margin-left: 10px; }
  .header__tel { margin-left: 1.4%; }
  .header__button { margin-left: 1.8%; } }

@media screen and (max-width: 1040px) { .header__logo { float: none; text-align: center; }
  .header__menu { margin-top: 14px; padding-left: 0; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
  .header__link { text-align: left; }
  .header__link-item { margin-top: 10px; text-align: left; }
  .header__link-item:nth-of-type(odd) { width: 42%; }
  .header__link-item:nth-of-type(even) { width: 51%; margin-left: 10px; }
  .header__tel { margin-left: 1.4%; }
  .header__button { margin-left: 1.8%; } }

@media screen and (max-width: 767px) { .header { position: fixed; }
  .header__inner { padding: 12px 0 8px; overflow: visible; border-bottom: 1px solid #cdecfb; }
  .header__logo { padding: 0 10px; text-align: left; }
  .header__menu { display: none; }
  .header__menu--sp { display: block; }
  .header__side-block { display: inline-block; } }

.footer { background-color: #039eec; }

.footer__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; max-width: 1220px; width: 100%; margin: 0 auto; padding: 68px 39px 54px 40px; }

.footer-info { display: inline-block; margin-top: 7px; vertical-align: top; -webkit-flex: 1 1 19.56%; -ms-flex: 1 1 19.56%; flex: 1 1 19.56%; }

.footer-info__item { padding-left: 3px; }

.footer-info__item dt, .footer-info__item dd { padding-top: 5px; font-size: 14px; line-height: 1.6; color: #fff; }

.footer-info__item > dt { font-weight: 700; }

.footer-info__item--address { margin-top: 24px; }

.footer-info__item--address > dt { padding-top: 0; }

.footer-info__item--outpatient { margin-top: 26px; }

.footer-info__item--closeday { margin-top: 27px; }

/***匿名・オプトアウト（footer）***/
.footer-info__item--jnd { margin-top: 27px; border: 1px solid #fff; color: #fff; padding: 0 10px; }

@media screen and (max-width: 767px) { .footer__inner { padding: 34px 20px 13px; }
  .footer-info { max-width: 280px; width: 100%; margin: 0 auto; text-align: center; }
  .footer-info__item { margin: 0; padding: 0; text-align: left; }
  .footer-info__item--address { margin-top: 24px; } }

.achievement__item:nth-of-type(n + 2) { margin-top: 116px; }

.achievement__item > p { font-size: 16px; }

.achievement__text { margin-top: 27px; line-height: 1.95; }

.achievement__table { width: 100%; margin-top: 35px; table-layout: fixed; border-collapse: collapse; border-top: 2px solid #6bcefa; }

.achievement__table th, .achievement__table td { border: 1px solid #cdecfb; }

.achievement__table th { padding: 11px 12px 10px; font-size: 18px; background-color: #f0f9fd; }

.achievement__table td { padding: 17px 20px 16px; font-size: 14px; text-align: center; }

.achievement__table td.is-large { padding: 6px 20px 8px; font-size: 40px; font-weight: 700; }

.achievement__table tbody th { display: none; }

.achievement__note { margin-top: 20px; }

.achievement__table thead tr > td, .achievement__table--multi thead tr > td { display: none; }

@media screen and (max-width: 767px) { .achievement__item:nth-of-type(n + 2) { margin-top: 62px; }
  .achievement__table th, .achievement__table td { display: block; }
  .achievement__table th { padding: 10px 11px 9px; font-size: 14px; border-top: none; border-bottom: none; }
  .achievement__table td { padding: 15px 20px 21px; border-top: none; }
  .achievement__table tbody th { display: block; }
  .achievement__table--multi thead { display: none; }
  .achievement__note { margin-top: 14px; } }

.activity { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; margin-bottom: 43px; }

.activity:last-of-type { margin-bottom: 0; }

.activity__head, .activity__desc { -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; -webkit-flex-shrink: 1; -ms-flex-negative: 1; flex-shrink: 1; }

.activity__head { -webkit-flex-basis: 36%; -ms-flex-preferred-size: 36%; flex-basis: 36%; font-size: 22px; font-weight: 700; line-height: 1.41; }

.activity__desc { -webkit-flex-basis: 64%; -ms-flex-preferred-size: 64%; flex-basis: 64%; position: relative; padding-left: 103px; top: -3px; }

.activity__desc:before { content: ''; position: absolute; width: 1px; height: 94%; top: 8px; left: 67px; background-color: #cdecfb; }

.activity__desc-text { font-size: 16px; line-height: 1.95; }

.activity__desc-button { display: inline-block; margin: 7px 5px 0 1px; }

@media screen and (max-width: 767px) { .activity { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin-bottom: 60px; }
  .activity__head, .activity__desc { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; }
  .activity__head { font-size: 20px; }
  .activity__desc { margin-top: 16px; padding: 14px 0 0; top: auto; }
  .activity__desc:before { width: 100%; height: 1px; top: 0; left: 0; } }

.anchor-link { position: relative; display: inline-block; margin: 0 30px 20px 0; padding-left: 22px; color: #039eec; cursor: pointer; }

@media only screen and (min-width: 900px) { .anchor-link:hover .anchor-link__text { opacity: .6; } }

.anchor-link__icon { position: absolute; display: inline-block; width: 10px; height: 10px; top: 2px; left: 1px; bottom: 0; border-left: 3px solid currentColor; border-bottom: 3px solid currentColor; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.anchor-link__text { font-size: 14px; font-weight: 700; line-height: 1.4; color: currentColor; transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

@media screen and (max-width: 767px) { .anchor-link { display: block; margin: 0 0 16px; } }

/* selectboxの中身の出方 */
@-webkit-keyframes fadeIn { 0% { display: none;
    top: 90%;
    opacity: 0; }
  1% { display: block;
    top: 90%;
    opacity: 0; }
  100% { display: block;
    top: 98%;
    opacity: 1; } }
@keyframes fadeIn { 0% { display: none;
    top: 90%;
    opacity: 0; }
  1% { display: block;
    top: 90%;
    opacity: 0; }
  100% { display: block;
    top: 98%;
    opacity: 1; } }

@-webkit-keyframes fadeOut { 0% { display: block;
    top: 98%;
    opacity: 1; }
  1% { display: block;
    top: 98%;
    opacity: 1; }
  100% { display: none;
    top: 90%;
    opacity: 0; } }

@keyframes fadeOut { 0% { display: block;
    top: 98%;
    opacity: 1; }
  1% { display: block;
    top: 98%;
    opacity: 1; }
  100% { display: none;
    top: 90%;
    opacity: 0; } }

.article__meta { margin-top: 52px; }

.article__title { margin-top: 19px; }

.article__title > h1 { font-size: 32px; line-height: 1.5; }

.article__image { max-width: 430px; margin: 57px auto 0; }

.article__image img { display: block; max-width: 100%; margin: 0 auto; width: auto; }

.article__content { margin-top: 59px; overflow-x: auto; max-width: 738px; /* 記事詳細 テーブル */ /* 記事詳細 リスト群 */ /* リンク */ /* 外部リンク */ }

.article__content img { max-width: 100%; width: auto; }

.article__content h2 { position: relative; margin-bottom: 32px; padding: 8px 0 5px 20px; font-size: 22px; line-height: 1.4; }

.article__content h2:before { content: ''; position: absolute; width: 2px; height: 100%; top: 0; left: 0; background-color: #039eec; }

.article__content h3 { margin-bottom: 8px; font-size: 18px; line-height: 1.4; color: #039eec; font-weight: bold; }

.article__content p { margin-bottom: 31px; font-size: 16px; line-height: 1.95; }

.article__content-table { /* スクロールバーのスタイル */ }

.article__content-table::-webkit-scrollbar { position: absolute; all: unset; top: 0; height: 4px; background-color: transparent; }

.article__content-table::-webkit-scrollbar-thumb { all: unset; width: 1%; background-color: #cfcfcf; }

.article__content table { width: 100%; margin: 67px 0 75px; border-collapse: collapse; border-top: 2px solid #6bcefa; }

.article__content table th, .article__content table td { font-size: 16px; line-height: 1.9; border: 1px solid #cdecfb; }

.article__content table th { width: 18%; background-color: #f0f9fd; }

.article__content table td { padding: 25px 18px 25px 21px; vertical-align: middle; background-color: #fff; }

.article__content table thead th { text-align: center; border-bottom: none; }

.article__content table tbody .column-1 { font-weight: 700; background-color: #f0f9fd; }

.article__content table .odd td { background-color: #fff; }

.article__content > ul, .article__content > ol { margin: -20px 0 10px; }

.article__content > ul li, .article__content > ol li { position: relative; padding-left: 19px; font-size: 16px; font-weight: 700; line-height: 2; }

.article__content > ul ul li, .article__content > ul ol li, .article__content > ol ul li, .article__content > ol ol li { line-height: 1.9; }

.article__content > ul li:before { content: ''; position: absolute; width: 8px; height: 8px; top: 12px; left: 0; background-color: #039eec; }

.article__content > ul ul { padding-left: 11px; }

.article__content > ul ul li { padding-left: 21px; }

.article__content > ul ul li:before { width: 11px; height: 2px; top: 14px; }

.article__content > ol li { padding-left: 35px; counter-increment: count; }

.article__content > ol li:before { content: counter(count); position: absolute; padding: 3px 7px 3px 6px; top: 6px; left: 0; font-family: "Roboto", arial, sans-serif; font-size: 14px; line-height: 1; color: #fff; background-color: #039eec; }

.article__content > ol ol { padding-left: 18px; counter-reset: count; }

.article__content > ol ol li { padding-left: 17px; }

.article__content > ol ol li:before { content: counter(count) "."; padding: 0; top: 9px; color: inherit; background-color: transparent; }

.article__content a { position: relative; display: inline-block; margin-top: 15px; font-size: 16px; font-weight: 700; text-decoration: underline; }

.article__content a:hover { text-decoration: none; }

.article__content a[target=_blank]:after { content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNiAzNCI+DQogICAgPGRlZnM+DQogICAgPHN0eWxlPi5jbHMtMXtmaWxsOiMwMzllZWM7fS5jbHMtMSwuY2xzLTJ7ZmlsbC1ydWxlOmV2ZW5vZGQ7fS5jbHMtMntmaWxsOiMyNDkzZDM7fTwvc3R5bGU+DQogICAgPC9kZWZzPg0KICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTAsMFYyNkgyOFYwWk0yNCwyMkg0VjRIMjRaIi8+DQogICAgPHBhdGggY2xhc3M9ImNscy0yIiBkPSJNMjIsMzBIMzZ2NEgyMloiLz4NCiAgICA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0zNiwyMFYzNEgzMlYyMFoiLz4NCjwvc3ZnPg=="); position: absolute; width: 18px; height: 18px; bottom: 0; -webkit-transform: translate(6px, -3px); -ms-transform: translate(6px, -3px); transform: translate(6px, -3px); }

@media screen and (max-width: 767px) { .article__meta { margin-top: 24px; }
  .article__title { margin-top: 5px; }
  .article__title > h1 { font-size: 18px; }
  .article__image { max-width: 100%; margin-top: 33px; padding: 0 20px; }
  .article__content { margin-top: 40px; }
  .article__content h2 { padding: 0 0 0 12px; font-size: 18px; }
  .article__content h3 { margin-bottom: 14px; font-size: 16px; }
  .article__content-table { padding-bottom: 10px; overflow-x: auto; }
  .article__content table { min-width: 640px; margin: 32px 0 42px; /* thが無く、2カラムのテーブルのとき */ }
  .article__content table th, .article__content table td { margin-bottom: -1px; font-size: 14px; }
  .article__content table.is-line th, .article__content table.is-line td { min-width: 100%; display: block; width: 100%; }
  .article__content table.is-line th { padding: 7px 0 6px; }
  .article__content table.is-line td { padding: 8px 13px; }
  .article__content > ul, .article__content > ol { padding: 0; }
  .article__content > ul li { padding-left: 13px; }
  .article__content > ul li:before { width: 6px; height: 6px; }
  .article__content > ul ul li { padding: 1px 0 1px 21px; }
  .article__content > ul ul li:before { top: 15px; }
  .article__content > ol li { padding-left: 29px; }
  .article__content > ol li:before { padding: 3px 5px 2px 6px; }
  .article__content > ol li ol li { padding: 1px 0 1px 17px; } }

.article-navi { padding: 95px 0 11px; border-bottom: 1px solid #cdecfb; }

.article-navi__inner { position: relative; text-align: center; }

.article-navi__item { position: absolute; display: inline-block; top: 50%; line-height: 1.4; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); /* sp表示 文言変更用 */ }

.article-navi__item > a { position: relative; display: inline-block; padding: 2px 0; font-size: 14px; font-weight: 700; line-height: 1; }

.article-navi__item--prev:before, .article-navi__item--next:before { content: ''; position: absolute; display: inline-block; width: 10px; height: 10px; top: 22%; border-bottom: 3px solid #039eec; transition: -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.article-navi__item--prev > a, .article-navi__item--next > a { transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.article-navi__item--prev { left: 0; }

.article-navi__item--prev:before { left: 0; border-left: 3px solid #039eec; -webkit-transform: rotate(45deg) translate3d(0, 0, 0); transform: rotate(45deg) translate3d(0, 0, 0); }

.article-navi__item--prev > a { padding-left: 26px; }

.article-navi__item--next { right: 0; }

.article-navi__item--next:before { right: 0; border-right: 3px solid #039eec; -webkit-transform: rotate(-45deg) translate3d(0, 0, 0); transform: rotate(-45deg) translate3d(0, 0, 0); }

.article-navi__item--next > a { padding-right: 26px; }

.article-navi__item--back { position: relative; top: 0; -webkit-transform: none; -ms-transform: none; transform: none; }

.article-navi__item--back-icon { position: absolute; top: -3px; right: 0; bottom: 0; color: #039eec; z-index: -1; }

.article-navi__item--back-icon > svg { width: 18px; height: 19px; }

.article-navi__item--back > a { padding-right: 21px; transition: color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.article-navi__item-sp { display: none; }

@media screen and (max-width: 767px) { .article-navi { padding: 72px 0 0; border-bottom: none; }
  .article-navi__inner { min-height: 134px; }
  .article-navi__item-pc { display: none; }
  .article-navi__item-sp { display: inline-block; }
  .article-navi__item--prev, .article-navi__item--next, .article-navi__item--back { border: 1px solid #cdecfb; }
  .article-navi__item--prev, .article-navi__item--next { width: 48%; top: auto; bottom: 0; }
  .article-navi__item--prev:before, .article-navi__item--next:before { top: 41%; }
  .article-navi__item--prev a, .article-navi__item--next a { width: 100%; }
  .article-navi__item--prev:before { left: 16px; }
  .article-navi__item--prev > a { display: block; padding: 15px 0 13px 10px; }
  .article-navi__item--next:before { right: 16px; }
  .article-navi__item--next > a { padding: 15px 10px 13px 0; }
  .article-navi__item--back { width: 100%; top: 12px; }
  .article-navi__item--back-icon { top: 12px; left: 80px; }
  .article-navi__item--back > a { display: block; padding: 15px 20px 14px 0; } }

.assist-menu { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; }

.assist-menu__item { display: block; margin-bottom: -1px; padding: 16px 0; min-height: 51px; width: 50%; text-align: center; border-top: 1px solid #cdecfb; border-bottom: 1px solid #cdecfb; /* 後ろから4番目まで */ /* 後ろから2番目まで */ }

.assist-menu__item:nth-last-of-type(-n + 4) { padding-top: 5px; padding-bottom: 4px; min-height: 100%; }

.assist-menu__item:nth-last-of-type(-n + 2) { }

.assist-menu__item:nth-last-of-type(-n + 2), .assist-menu__item:nth-of-type(2n) { border-bottom: 1px solid transparent; border-top: 1px solid transparent;}

.assist-menu__item:nth-of-type(2n) { border-left: 1px solid #cdecfb; border-bottom: 1px solid #cdecfb;}

.assist-menu__item--tel .assist-menu__icon > svg { width: 19px; height: 12px; }

.assist-menu__item--contact { padding-right: 11px; }

.assist-menu__item--contact .assist-menu__icon > svg { width: 18px; height: 10px; }

.assist-menu__item--dr { padding-right: 4px; }

.assist-menu__item--dr .assist-menu__icon { top: -2px; }

.assist-menu__item--dr .assist-menu__icon > svg { width: 12px; height: 18px; }

.assist-menu__item--bus { padding-right: 11px; }

.assist-menu__item--bus .assist-menu__icon > svg { width: 18px; height: 12px; }

.assist-menu__icon, .assist-menu__text { display: inline-block; }

.assist-menu__icon { position: relative; color: #039eec; line-height: 1; }

.assist-menu__text { font-size: 12px; font-weight: 700; }

.banner__item { display: block; margin-bottom: 30px; transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); }

.banner__item:hover { opacity: .6; }

.block-menu { position: relative; border-bottom: 1px solid #cdecfb; background-color: #fff; z-index: 0; }

.block-menu__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; max-width: 1142px; width: 100%; margin: 0 auto; box-sizing: border-box; }

.ie .block-menu__inner, .edge .block-menu__inner { display: table; }

.block-menu__item { position: relative; width: 16.66667%; display: table-cell; text-align: center; overflow: hidden; box-sizing: border-box; }

.block-menu__item:first-child > a { border-left: 1px solid #cdecfb; }

.block-menu__item:last-child > a { border-right: 1px solid #cdecfb; }

.block-menu__item:nth-child(n + 2) { border-left: 1px solid #cdecfb; }

.block-menu__item > a { padding: 39px 0 25px; }

/* 下層のアイコン付きメニュー */
.block-menu--pages { position: fixed; width: 100%; height: 148px; top: 92px; left: 0; right: 0; border-top: 1px solid #cdecfb; border-bottom: none; z-index: 10; -webkit-backface-visibility: hidden; backface-visibility: hidden; transition: height 0.24s cubic-bezier(0.215, 0.61, 0.355, 1); /* あるポイントまで到達したらサブメニューを変化させる */ }

.block-menu--pages .block-menu__item:after { content: ''; position: absolute; width: 100%; height: 4px; left: 0; right: 0; bottom: 0; background-color: #039eec; -webkit-transform: scale3d(0, 1, 1); transform: scale3d(0, 1, 1); }

.block-menu--pages .block-menu__item-icon { transition: height 0.24s cubic-bezier(0.165, 0.84, 0.44, 1) 0.06s, opacity 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) 0.15s; }

.block-menu--pages.is-change { height: 45px; }

.block-menu--pages.is-change .block-menu__item:hover:after { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }

.block-menu--pages.is-change .block-menu__item:after { transition: -webkit-transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1); transition: transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1); transition: transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1); }

.block-menu--pages.is-change .block-menu__item-inner { padding: 15px 0; }

.block-menu--pages.is-change .block-menu__item-inner:hover .block-menu__item-text { color: #333; }

.block-menu--pages.is-change .block-menu__item-icon { height: 0; opacity: 0; visibility: hidden; transition: height 0.24s cubic-bezier(0.165, 0.84, 0.44, 1); }

.block-menu--pages.is-change .block-menu__item-text { margin: 0; }

@media screen and (max-width: 900px) { .block-menu--pages { height: auto; top: 173px; }
  .block-menu--pages .block-menu__item:hover:after { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  .block-menu--pages .block-menu__item:after { transition: -webkit-transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1); transition: transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1); transition: transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.34s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .block-menu--pages .block-menu__item-inner { padding: 15px 0; }
  .block-menu--pages .block-menu__item-inner:hover .block-menu__item-text { color: #333; }
  .block-menu--pages .block-menu__item-icon { display: none; }
  .block-menu--pages .block-menu__item-text { margin: 0; } }

@media screen and (max-width: 767px) { .block-menu { border: none; }
  .block-menu__inner { -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; border: none; }
  .block-menu__item { width: 50%; }
  .block-menu__item:before { content: ''; position: absolute; width: 100%; height: 1px; left: 0; right: 0; bottom: 0; background-color: #cdecfb; }
  .block-menu__item:nth-child(2n + 1) { border-left: none; }
  .block-menu--pages { display: none; } }

.br--sp { display: block; }

.br--sp { display: none; }

@media screen and (max-width: 767px) { .br--pc { display: none; }
  .br--sp { display: block; } }

.breadcrumb { margin-top: 14px; }

.breadcrumb__inner { margin-right: -12px; font-size: 0; }

.breadcrumb__item { position: relative; display: inline-block; margin-right: 12px; vertical-align: middle; }

.breadcrumb__item:nth-child(n + 2):before { content: ''; position: absolute; width: 1px; height: 13px; top: 5px; left: 0; background-color: #333; -webkit-transform: rotate(22deg); -ms-transform: rotate(22deg); transform: rotate(22deg); }

.breadcrumb__item:nth-child(n + 2) a, .breadcrumb__item:nth-child(n + 2) span { text-indent: .95em; }

.breadcrumb__item a, .breadcrumb__item span { display: inline-block; font-size: 14px; line-height: 1.6; }

.breadcrumb__item a { font-weight: 700; }

.breadcrumb__item a:hover { text-decoration: underline; }

@media screen and (max-width: 767px) { .breadcrumb { margin-top: 16px; padding: 0 20px; } }

.button { position: relative; border-radius: 30px; background-color: #039eec; overflow: hidden; transition: background-color 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.button:hover { background-color: #2eb9ff; }

.button:hover .button__icon > svg { -webkit-transform: translate3d(-2px, -50%, 0); transform: translate3d(-2px, -50%, 0); }

.button__inner { display: block; width: 100%; padding: 14px 0; text-align: center; }

.button__icon { position: absolute; display: inline-block; width: 30px; height: 30px; margin: auto 0; top: 0; left: 10px; bottom: 0; border-radius: 50%; color: #039eec; background-color: #fff; overflow: hidden; }

.button__icon > svg { position: absolute; width: 25px; height: 14px; top: 50%; left: 0; -webkit-transform: translate3d(-6px, -50%, 0); transform: translate3d(-6px, -50%, 0); transition: -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); }

.button__text { position: relative; display: inline-block; left: 12px; font-size: 14px; font-weight: 700; color: #fff; }

/* ダウンロードボタン */
.button--download .button__icon { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }

@media screen and (max-width: 767px) { .button:hover { background-color: #039eec; }
  .button:hover .button__icon > svg { -webkit-transform: translate3d(-6px, -50%, 0); transform: translate3d(-6px, -50%, 0); } }

.button--not-found { width: 237px; display: inline-block; }

@media screen and (max-width: 767px) { .button--not-found { width: 100%; display: block; } }

.button-square { position: relative; display: block; padding: 14px 19px 13px 43px; color: #039eec; border: 1px solid #039eec; overflow: hidden; transition: color 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); }

.button-square:hover { color: #fff; }

.button-square:hover:before { left: 0; }

.button-square:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: -100%; background-color: #039eec; z-index: -1; transition: left 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }

.button-square__icon { position: absolute; display: inline-block; width: 10px; height: 10px; margin: auto 0; top: 0; left: 17px; bottom: 0; border-right: 3px solid currentColor; border-bottom: 3px solid currentColor; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.button-square__text { font-size: 14px; font-weight: 700; line-height: 1.4; color: currentColor; }

/* PDFリンク */
.button-square--pdf { padding: 17px 43px 16px 16px; }

.button-square--pdf:hover .button-square__icon > svg { color: #fff; transition-delay: .05s; }

.button-square--pdf .button-square__icon { width: 18px; height: 22px; left: auto; right: 15px; border: none; -webkit-transform: none; -ms-transform: none; transform: none; transition: none; }

.button-square--pdf .button-square__icon > svg { width: 100%; height: 100%; color: #039eec; transition: color 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); vertical-align: top; }

.card__index { min-height: 98px; margin-top: 22px; }

.card__index dd { margin-top: 16px; padding-left: 4px; }

.card__button { position: absolute; width: 100%; padding: 0 80px; left: 0; right: 0; bottom: -65px; }

@media screen and (max-width: 767px) { .card__button { position: relative; margin-top: 24px; padding: 0 23px; bottom: 0; } }

.card-list__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; margin: 0 -24px; }

.card-list__item { position: relative; width: 50%; margin-bottom: 145px; padding: 0 24px; }

.card-list__item:last-child { text-align: left; }

@media screen and (max-width: 767px) { .card-list__inner { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; }
  .card-list__item { width: 100%; margin-bottom: 70px; padding: 0; } }

.category__name { padding-right: 9px; font-size: 12px; font-weight: 700; color: #039eec; border-right: 1px solid #e5e5e5; }

.category__date { margin-left: 5px; font-family: arial, sans-serif; font-size: 14px; letter-spacing: .07em; }

.category--small .category__name { padding-right: 10px; font-size: 13px; border-right: 1px solid #cdecfb; }

.category--small .category__date { font-size: 13px; }

.category--large .category__name, .category--large .category__date { font-size: 22px; }

.category--large .category__name { padding: 3px 13px 3px 0; border-right: 1px solid #cdecfb; }

.category--large .category__date { margin-left: 15px; font-weight: 700; line-height: 1.5; }

.category--large .category__date > span { margin-right: 15px; font-size: 24px; font-family: "Roboto", arial, sans-serif; }

@media screen and (max-width: 767px) { .category--large .category__name, .category--large .category__date { font-size: 18px; }
  .category--large .category__name { padding: 0px 8px 1px 0; }
  .category--large .category__date { margin-left: 0; }
  .category--large .category__date > span { margin: 0 4px 0 5px; font-size: 18px; } }

.category-link { margin-top: 42px; }

.category-link__inner { display: table; table-layout: fixed; border-collapse: collapse; width: 100%; text-align: center; background-color: #fff; }

@media screen and (max-width: 767px) { .ie .category-link__inner, .edge .category-link__inner { display: block; width: 100%; font-size: 0; letter-spacing: 0; } }

.category-link__item { display: table-cell; vertical-align: middle; border: 1px solid #cdecfb; transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.category-link__item:hover { background-color: #f0f9fd; }

.category-link__item > a { display: inline-block; padding: 13px 22px; font-size: 14px; font-weight: 700; }

.category-link__item.is-current { pointer-events: none; background-color: #f0f9fd; }

@media screen and (max-width: 767px) { .category-link { position: absolute; margin: 0; padding: 0 20px; top: 0; left: 0; right: 0; }
  .category-link__item { display: inline-block; width: 50%; }
  .category-link__item:nth-child(2n + 1) { border-right: none; }
  .category-link__item:nth-child(n + 3) { border-top: none; }
  .category-link__item > a { padding: 16px 14px 15px; font-size: 12px; } }

.column-item { overflow: hidden; }

.column-item__image { float: right; max-width: 46.7%; }

@media screen and (max-width: 767px) { .column-item__image { width: 80%; margin: 0 auto 20px; }
  .column-item__image.collaboration { width: 60%; } }

.column-item__content { display: table-cell; margin-top: -7px; padding: 0 24px 0 0; overflow: hidden; }

.column-item__content-head { margin-bottom: 4px; font-size: 18px; font-weight: 700; line-height: 1.65; }

.column-item__content-text { font-size: 16px; line-height: 1.95; }

.column-item__content-button { display: inline-block; margin-top: 20px; }

/* 並び順が反対のもの */
.column-item--reverse .column-item__image { float: left; }

.column-item--reverse .column-item__content { padding: 0 0 0 24px; }

/* IEでテキストが回り込まないように */
@media all and (-ms-high-contrast: none) { .column-item { overflow: auto; } }

@media screen and (max-width: 767px) { .column-item .column-item__image, .column-item--reverse .column-item__image { float: none; max-width: 100%; }
  .column-item .column-item__content, .column-item--reverse .column-item__content { margin-top: 16px; padding: 0; } }

.contact { margin-top: 31px; text-align: center; }

.contact__tel { padding-right: 13px; }

.contact__button { width: 236px; margin: 42px auto 0; }

@media screen and (max-width: 767px) { .contact { margin-top: 1px; }
  .contact__tel { padding: 0; }
  .contact__button { width: 100%; margin: 25px 0 0; } }

.contact-detail__tel-box { margin-top: 49px; padding: 46px 0 51px; text-align: center; border: 1px solid #cdecfb; }

.contact-detail__tel-box > p { padding-left: 7px; font-size: 16px; }

.contact-detail__tel-num { margin-top: 30px; padding-right: 18px; }

.contact-detail__mail { margin-top: 85px; }

.contact-detail__mail > p { margin-top: 41px; font-size: 16px; line-height: 1.95; }

.contact-detail__mail-form { margin-top: 42px; }

@media screen and (max-width: 767px) { .contact-detail__tel-box { margin-top: 15px; padding: 44px 0 40px; }
  .contact-detail__tel-box > p { padding-left: 9px; font-size: 14px; line-height: 1.6; }
  .contact-detail__tel-num { margin-top: 18px; padding-right: 10px; }
  .contact-detail__mail { margin-top: 71px; }
  .contact-detail__mail > p { margin-top: 22px; line-height: 1.85; } }

.content-link { position: relative; padding-right: 20px; }

.content-link__text { position: relative; display: inline-block; font-size: 16px; font-weight: 700; line-height: 1.7; margin: -3px 0; }

.content-link__num { position: absolute; display: none; width: 24px; height: 24px; margin: auto 0; padding: 5px 4px; top: 0; right: -30px; bottom: 3px; font-family: "Roboto", arial, sans-serif; font-size: 14px; text-align: center; border-radius: 50%; color: #fff; background-color: #039eec; }

.content-link__icon { position: absolute; display: inline-block; width: 10px; height: 10px; margin: auto 0; top: 0; right: 1px; bottom: 0; color: #039eec; border-right: 3px solid currentColor; border-bottom: 3px solid currentColor; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

/* 記事の年での絞り込みリンク */
.content-link--year .content-link__num { display: inline-block; }

/* アコーディオン */
.content-link--accordion .content-link__icon { width: 20px; height: 20px; right: 0; border: none; background-color: currentColor; -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }

.content-link--accordion .content-link__icon:before, .content-link--accordion .content-link__icon:after { content: ''; position: absolute; top: 50%; left: 50%; background-color: #fff; -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); transition: -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1); }

.content-link--accordion .content-link__icon:before { width: 3px; height: 13px; }

.content-link--accordion .content-link__icon:after { width: 13px; height: 3px; }

.copyright { padding: 8px 0 10px; text-align: center; background-color: #039eec; }

.copyright__text { font-size: 12px; font-weight: 700; color: #fff; }

@media screen and (max-width: 767px) { .copyright { padding: 6px 0 9px; }
  .copyright__text { font-size: 10px; } }

.flow__item { position: relative; }

.flow__item:nth-child(n + 2) { padding-top: 21px; }

.flow__item:nth-child(n + 2):before { content: ''; position: absolute; width: 0; height: 0; top: -4px; left: 50%; border-style: solid; border-width: 10px 15px 0; border-color: #039eec transparent transparent; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); }

.form__inner { padding: 60px 51px 8px 49px; background-color: #f0f9fd; }

.form__item { margin-bottom: 50px; /* 必須項目 */ }

.form__item:nth-of-type(n + 2) { padding-top: 50px; border-top: 1px solid #cdecfb; }

.form__item:last-of-type > p { display: none; margin-bottom: 25px; line-height: 1.6; }

.form__item:last-of-type > p.is-show { display: block; }

.form__item:last-of-type .form__head { padding-top: 13px; vertical-align: top; }

.form__item:last-of-type .form__head:after { top: 21px; }

.form__item-inner { display: table; width: 100%; }

.form__item--required .form__head:after { content: '必須'; position: absolute; padding: 3px 3px 3px 4px; top: 50%; right: 0; font-size: 13px; font-weight: 700; letter-spacing: .1em; color: #fff; background-color: #039eec; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.form__head, .form__parts { display: table-cell; vertical-align: middle; }

.form__head { position: relative; width: 33.4%; padding: 15px 0; padding-right: 40px; font-size: 14px; font-weight: 700; line-height: 1.3; }

.form__parts { padding-left: 20px; /* エラー文言用 */ }

.form__parts-inner { position: relative; width: 406px; margin-left: auto; cursor: pointer; }

.form__parts-inner input, .form__parts-inner select, .form__parts-inner textarea { width: 100%; border-radius: 0; border: 1px solid #cdecfb; background-color: #fff; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

.form__parts-error { position: absolute; left: 1px; bottom: -20px; font-size: 14px; font-weight: 700; color: red; }

.form__parts--select { position: relative; }

.form__parts--select:after { content: ''; position: absolute; width: 0; height: 0; top: 52%; right: 16px; border-style: solid; border-width: 7px 4px 0; border-color: #333 transparent transparent; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.form__parts--input input { padding: 10px; line-height: normal; }

.form__parts--textarea textarea { height: 299px; padding: 14px 13px; }

.form__submit { width: 235px; margin: 50px auto 0; }

/* 特殊ブレークポイント */
@media screen and (min-width: 901px) and (max-width: 1070px) { .form__head { display: inline-block; width: auto; padding-right: 44px; }
  .form__parts { display: block; margin-top: 18px; padding: 0; }
  .form__parts-inner { width: 100%; margin-left: 0; } }

@media screen and (max-width: 767px) { .form__inner { padding: 35px 20px 8px; }
  .form__item { margin-bottom: 40px; }
  .form__item:nth-of-type(n + 2) { padding-top: 36px; }
  .form__item:last-of-type { margin-bottom: 29px; }
  .form__item:last-of-type > p { margin-bottom: 8px; }
  .form__head { display: inline-block; width: auto; padding-right: 44px; }
  .form__parts { display: block; margin-top: 8px; padding: 0; }
  .form__parts-inner { width: 100%; margin-left: 0; }
  .form__submit { width: 100%; margin-top: 40px; padding: 0 20px; } }

.greeting { position: relative; }

.greeting__image { width: 100%; height: 283px; background-size: cover; background-position: center; background-repeat: no-repeat; }

.greeting__catch { position: absolute; top: 50%; left: 6%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); z-index: 1; }

.greeting__catch-text { font-size: 22px; font-weight: 700; line-height: 1.6; }

.greeting__catch-name { margin-top: 16px; font-size: 14px; }

@media screen and (max-width: 767px) { .greeting__image { height: 110px; }
  .greeting__catch { position: relative; margin-top: 10px; top: auto; left: auto; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
  .greeting__catch-text { font-size: 16px; }
  .greeting__catch-name { margin-top: 10px; font-size: 12px; } }

.heading__text { font-size: 26px; font-weight: 700; text-align: center; line-height: 1.4; }

@media screen and (max-width: 767px) { .heading__text { font-size: 22px; } }

.heading__icon { margin: 20px auto 0; text-align: center; color: #039eec; }

.heading__icon > svg { width: 43px; height: 8px; }

.heading-en { position: absolute; padding-left: 23px; top: 31px; left: 30px; color: #039eec; }

.heading-en__icon { position: absolute; top: 0; left: 0; bottom: 0; transition: -webkit-transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); }

.heading-en__icon > svg { width: 15px; height: 14px; vertical-align: top; }

.heading-en__text { font-family: "Roboto", arial, sans-serif; font-size: 14px; letter-spacing: .01em; }

@media screen and (max-width: 767px) { .heading-en { top: 21px; left: 20px; } }

.hero { position: relative; width: 100%; height: calc(100vh - 147px); overflow: hidden; }

.hero__inner { position: relative; width: 100%; height: 100%; }

.hero__catch { position: absolute; display: inline-block; min-width: 750px; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); margin-top: 42px; z-index: 2; }

@media screen and (max-width: 767px) { .hero__catch { margin-top: 0; } }

.hero__catch h2, .hero__catch p { color: #fff; text-align: center; font-weight: 700; }

.hero__catch > h2 { font-size: 45px; line-height: 1.3; letter-spacing: .11em; }

.hero__catch > p { position: relative; margin-top: 12px; right: 16px; font-size: 17px; letter-spacing: .14em; }

.hero__catch-quotation { position: absolute; top: -12px; left: -14px; color: #fff; }

.hero__catch-quotation > svg { width: 27px; height: 23px; }

.hero__catch-quotation--shut { top: auto; left: auto; right: -16px; bottom: -7px; -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); }

@media screen and (max-width: 900px) { .hero__catch { min-width: 666px; -webkit-transform: translate(-50%, 0); -ms-transform: translate(-50%, 0); transform: translate(-50%, 0); }
  .hero__catch > h2 { font-size: 40px; }
  .hero__catch > p { font-size: 15px; } }

@media screen and (max-width: 767px) { .hero { height: auto; }
  .hero__catch { min-width: 270px; -webkit-transform: translate(-48%, -45%); -ms-transform: translate(-48%, -45%); transform: translate(-48%, -45%); }
  .hero__catch > h2 { font-size: 18px; letter-spacing: 0; }
  .hero__catch > p { margin-top: 5px; right: 8px; font-size: 10px; }
  .hero__catch-quotation { top: -11px; left: -6px; }
  .hero__catch-quotation > svg { width: 11px; height: 10px; }
  .hero__catch-quotation--shut { right: -2px; bottom: -13px; } }

.info__content { margin-top: 49px; text-align: center; }

.info__content-list:nth-of-type(n + 2) { margin-top: 47px; }

.info__content-list dt, .info__content-list dd { font-size: 16px; }

.info__content-list > dt { font-weight: 700; }

.info__content-list > dd { margin-top: 16px; }

.info__content-list > dd p { line-height: 1.7; }

.info__content-note { margin-top: 10px; font-size: 14px; }

.info__button { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; margin: 13px -10px 0; }

.info__button-item { width: 224px; margin-top: 22px; padding: 0 10px; }

@media screen and (max-width: 767px) { .info__content { margin-top: 46px; }
  .info__content-list:nth-of-type(n + 2) { margin-top: 24px; }
  .info__content-list > dd { margin-top: 13px; line-height: 1.7; }
  .info__content-note { margin: 0; }
  .info__button { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; }
  .info__button-item { width: 100%; margin-top: 21px; padding: 0; } }

.link { position: relative; display: inline-block; }

.link:hover .link__icon > svg { -webkit-transform: translate3d(-2px, -47%, 0); transform: translate3d(-2px, -47%, 0); }

.link:hover .link__text { opacity: .5; }

.link__icon { position: absolute; width: 19px; height: 19px; top: 50%; left: 0; border-radius: 50%; color: #fff; background-color: #039eec; overflow: hidden; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.ie .link__icon { -webkit-transform: translateY(-65%); -ms-transform: translateY(-65%); transform: translateY(-65%); }

.link__icon > svg { position: absolute; width: 18px; height: 10px; top: 50%; left: 0; -webkit-transform: translate3d(-4px, -47%, 0); transform: translate3d(-4px, -47%, 0); stroke: #fff; transition: -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); }

.link__text { padding-left: 24px; font-size: 14px; font-weight: 700; transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

/* 下層ページで使い回す リスト, 番号付きリスト */
.list__item { position: relative; margin-top: 8px; padding-left: 19px; font-size: 16px; line-height: 2; }

.list__item:before { content: ''; position: absolute; width: 8px; height: 8px; top: 12px; left: 0; background-color: #039eec; }

.list__item > a { text-decoration: underline; }

.list__item > a:hover { text-decoration: none; }

.list__item > ul li { margin-left: 15px; font-size: 14px; font-weight: normal; line-height: 1.6; list-style: disc; }

/* 番号付きのリスト */
.list--number .list__item { padding-left: 35px; counter-increment: count; }

.list--number .list__item:before { content: counter(count); position: absolute; width: auto; height: auto; padding: 3px 7px 3px 6px; top: 6px; left: 0; font-family: "Roboto", arial, sans-serif; font-size: 14px; font-weight: 700; line-height: 1; color: #fff; background-color: #039eec; }

.list--number .list__item > ol { padding-left: 18px; counter-reset: count; }

.list--number .list__item > ol li { padding-left: 17px; list-style: none; }

.list--number .list__item > ol li:before { content: counter(count) "."; padding: 0; top: 9px; color: inherit; background-color: transparent; }

/* リストの中にリストがあるとき */
.list--double .list__item { margin-top: 12px; font-weight: 700; }

.logo { display: inline-block; color: #039eec; }

.logo > svg { width: 232px; height: 61px; }

.logo--footer { color: #fff; }

.logo--footer > svg { width: 196px; height: 52px; }

@media screen and (max-width: 767px) { .logo > svg { width: 153px; height: 40px; }
  .logo--footer { text-align: center; }
  .logo--footer > svg { width: 192px; height: 50px; } }

.lower-content { /* アンカーリンク */ /* 見出し群(default) */ /* 本文 */ /* 文中に入る画像用（画像幅を制限しても中央になるように） */ /* テーブル */ /* 施設紹介 YouTube */ /* キャッチコピー用（病院概要の理念などで使用）*/ /* ボタンリンク */ /* バナー */ }

.lower-content__block { margin-bottom: 100px; }

.lower-content__block:last-of-type { margin-bottom: 0; }

.lower-content__block-item { margin-bottom: 75px; }

.lower-content__block-item:last-of-type { margin-bottom: 0; }

.lower-content__anchor { margin-bottom: 75px; }

.lower-content__title { margin-bottom: 32px; }

.lower-content__title-lv4 { margin-bottom: 12px; }

.lower-content__text { font-size: 16px; line-height: 1.95; }

.lower-content__text span.copytext{
  font-size: 18px;
  font-weight: bold;
  color: #039eec;
}

.lower-content__text a { color: #039eec; }

.lower-content__image { margin-left: auto; margin-right: auto; }

.lower-content__table { overflow-x: auto; }

.ie .lower-content__table, .edge .lower-content__table { padding-bottom: 20px; -ms-overflow-style: -ms-autohiding-scrollbar; }

.ie .lower-content__table::-webkit-scrollbar, .edge .lower-content__table::-webkit-scrollbar { -ms-overflow-style: -ms-autohiding-scrollbar; top: 20px; }

.lower-content__table-text { display: none; margin-bottom: 14px; font-size: 14px; line-height: 1.6; }

.lower-content__table::-webkit-scrollbar { position: relative; all: unset; top: 0; height: 4px; background-color: transparent; }

.lower-content__table::-webkit-scrollbar-thumb { all: unset; width: 1%; background-color: #cfcfcf; }

.lower-content__video { position: relative; width: 100%; padding-top: 56.25%; text-align: center; }

.lower-content__video > iframe { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }

.lower-content__catch { text-align: center; }

.lower-content__catch-title { font-size: 32px; font-weight: 700; line-height: 1.6; }

.lower-content__catch-text { margin-top: 24px; font-size: 14px; line-height: 1.6; }

.lower-content__button { display: inline-block; }

.lower-content__banner { display: block; }

.lower-content--yt-list1 { margin-bottom: 88px; }

/* サイトマップ用 */
.lower-content--sitemap { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; margin: 0 -40px; }

.lower-content--sitemap .lower-content__block { width: 50%; padding: 0 40px; }

@media screen and (max-width: 767px) { .lower-content__block { margin-bottom: 75px; }
  .lower-content__title { margin-bottom: 27px; }
  .lower-content__table { padding-bottom: 10px; }
  .lower-content__table-text { display: block; }
  .lower-content__catch-title { font-size: 24px; }
  .lower-content__catch-text { margin-top: 12px; }
  .lower-content--sitemap { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; }
  .lower-content--sitemap .lower-content__block { width: 100%; padding: 0; } }

.lower-heading { position: relative; }

.lower-heading__inner { height: 182px; background-size: cover; background-position: center; background-repeat: no-repeat; }

.lower-heading__text { position: absolute; top: 50%; left: 50%; font-size: 22px; font-weight: 700; color: #fff; background: #039eec; -webkit-transform: translate(-52%, -37%); -ms-transform: translate(-52%, -37%); transform: translate(-52%, -37%); padding: 5px; }

.ie .lower-heading__text { line-height: 1.4; padding: 7px 5px 1px; }

@media screen and (max-width: 767px) { .lower-heading__text { position: relative; -webkit-transform: translate(0, 0); -ms-transform: translate(0, 0); transform: translate(0, 0); top: 0; left: 0; } }

@media screen and (max-width: 767px) { .lower-heading__inner { height: 130px; text-align: center; padding: 0 15px; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
  .lower-heading__text { font-size: 20px; } }

.magazine { position: relative; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; margin-top: 25px; padding: 0 40px 60px 0; }

.magazine:before, .magazine:after { content: ''; position: absolute; width: 100vw; top: 0; left: 50%; bottom: 0; background-color: #f0f9fd; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); z-index: -1; }

.magazine:after { top: auto; bottom: 0; }

.magazine__image { width: 180px; height: 245px; padding: 14px; border: 1px solid #cdecfb; background-color: #fff; }

.magazine__index { -webkit-flex-basis: 429px; -ms-flex-preferred-size: 429px; flex-basis: 429px; padding: 24px 0 0 26px; }

.magazine__index > p { font-size: 16px; line-height: 2; }

.magazine__button { width: 235px; margin-top: 13px; }

@media screen and (max-width: 767px) { .magazine { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding: 0 0 61px; }
  .magazine__image { margin: 0 auto; }
  .magazine__index { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; padding: 11px 17px 0; }
  .magazine__button { width: 100%; margin-top: 22px; padding: 0 3px; } }

.magazine-card__image { padding: 10px; border: 1px solid #cdecfb; }

.magazine-card__meta { margin-top: 16px; }

.magazine-card__button { margin-top: 17px; }

.magazine-card__button a > p { padding: 0 18px 0 28px; }

@media screen and (max-width: 767px) { .magazine-card { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
  .magazine-card__image { width: 50%; padding: 6px; }
  .magazine-card__meta { margin: 0 0 0 15px; padding-bottom: 4px; }
  .magazine-card__meta > time { display: block; margin: 3px 0 0; }
  .magazine-card__button { margin-top: 24px; padding: 0 20px; } }

.magazine-content { margin-top: 35px; }

.magazine-content__title { margin-top: 80px; }

.magazine-content__list { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; margin: -61px -24px 0; }

.magazine-content__item { margin-top: 100px; width: 33.33%; padding: 0 24px; }

/* 特殊ブレークポイント */
@media screen and (max-width: 969px) { .magazine-content__item { width: 50%; } }

@media screen and (max-width: 900px) { .magazine-content__item { width: 33.33%; } }

@media screen and (max-width: 767px) { .magazine-content { margin-top: 40px; }
  .magazine-content__list { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; }
  .magazine-content__item { width: 100%; margin-top: 41px; padding: 0; } }

.magazine-latest { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-end; -ms-flex-align: end; align-items: flex-end; }

.magazine-latest__image { width: 286px; padding: 15px; border: 1px solid #cdecfb; }

.magazine-latest__detail { margin-left: 30px; }

.magazine-latest__serial { padding-left: 2px; }

.magazine-latest__serial:first-of-type { margin-top: 27px; }

.magazine-latest__serial dt, .magazine-latest__serial dd { font-size: 16px; line-height: 1.65; }

.magazine-latest__serial > dt { position: relative; padding-left: 13px; font-weight: 700; }

.magazine-latest__serial > dt:before { content: ''; position: absolute; width: 3px; height: 3px; margin: auto 0; top: 0; left: 3px; bottom: 0; border-radius: 50%; background-color: currentColor; }

.magazine-latest__serial > dd { text-indent: .8em; }

.magazine-latest__button { width: 216px; margin-top: 28px; padding-left: 2px; }

/* 特殊ブレークポイント */
@media screen and (max-width: 969px) { .magazine-latest { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; }
  .magazine-latest__detail { margin-top: 30px; } }

@media screen and (max-width: 900px) { .magazine-latest { -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-align-items: flex-end; -ms-flex-align: end; align-items: flex-end; }
  .magazine-latest__image { width: 310px; } }

@media screen and (max-width: 767px) { .magazine-latest { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; padding: 0 19px; }
  .magazine-latest__image { width: 100%; padding: 12px; }
  .magazine-latest__detail { margin: 21px -19px 0; }
  .magazine-latest__serial { margin: 0 -3px; padding: 0; }
  .magazine-latest__serial:first-of-type { margin-top: 13px; }
  .magazine-latest__button { width: 100%; margin-top: 20px; } }

.map__main { min-height: 240px; height: 0; padding-top: 56.25%; }

.map__sub { margin-top: 24px; }

.map__sub-item { margin-top: 20px; font-size: 0; }

.map__sub-item dt, .map__sub-item dd { display: table-cell; font-size: 14px; vertical-align: text-top; }

.map__sub-item dt { font-weight: 700; white-space: nowrap; }

.map__sub-item dd { padding-left: 24px; line-height: 1.6; }

.media { position: relative; height: 100%; }

.ie .media:hover .media__image-item { -webkit-transform: none; -ms-transform: none; transform: none; }

.media:hover .media__image-item { -webkit-transform: scale3d(1.1, 1.1, 1.1); transform: scale3d(1.1, 1.1, 1.1); }

.media:hover .media__index:after { -webkit-transform: rotate(-45deg) translate3d(4px, 0, 0); transform: rotate(-45deg) translate3d(4px, 0, 0); }

.media__inner { display: block; }

.media__content { margin-top: 27px; }

.media__image { position: relative; width: 100%; overflow: hidden; border: 1px solid #cdecfb; }

.media__image-item { width: 100%; padding-top: 56.5%; background-size: cover; background-position: center; background-repeat: no-repeat; -webkit-backface-visibility: hidden; backface-visibility: hidden; transition: -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.media__index { position: relative; margin-top: 18px; padding-right: 24px; }

.media__index:after { content: ''; position: absolute; display: inline-block; width: 10px; height: 10px; top: 42%; right: 0; border-right: 3px solid #039eec; border-bottom: 3px solid #039eec; -webkit-transform: rotate(-45deg) translate3d(0, -50%, 0); transform: rotate(-45deg) translate3d(0, -50%, 0); transition: -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.media__index > h1 { font-size: 22px; line-height: 1.4; overflow: hidden; }

.media__index > p { margin-top: 16px; line-height: 1.9; letter-spacing: .05em; }

.media--top-grid .media__index { width: 100%; min-height: 98px; }

@media screen and (max-width: 767px) { .media--top-grid .media__index { min-height: unset; } }

.media--top-grid .media__index__wrap > h1 { font-size: 22px; line-height: 1.4; overflow: hidden; }

@media screen and (max-width: 767px) { .media--top-grid .media__index__wrap > h1 { font-size: 18px; } }

.media--top-grid .media__index__wrap > p { margin-top: 16px; line-height: 1.9; letter-spacing: .05em; }

/* 横並び */
.media--horizon .media__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; }

.media--horizon .media__image { -webkit-flex-basis: 58%; -ms-flex-preferred-size: 58%; flex-basis: 58%; }

.media--horizon .media__image-item { min-height: 210px; }

.media--horizon .media__content { -webkit-flex-basis: 37%; -ms-flex-preferred-size: 37%; flex-basis: 37%; margin: -4px 0 0 30px; }

.media--horizon .media__index { padding: 0; }

.media--horizon .media__index:after { content: none; }

.media--horizon .media__index > p { margin-top: 11px; }

/* 小さいもの */
.media--small { transition: box-shadow 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); }

.ie .media--small:hover .media__image-item { -webkit-transform: none; -ms-transform: none; transform: none; }

.media--small:hover { -webkit-transform: translate3d(-3px, -3px, 0); transform: translate3d(-3px, -3px, 0); box-shadow: 6px 6px 27px 3px rgba(162, 202, 240, 0.3); }

.media--small:hover .media__image-item { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }

.media--small .media__inner { padding: 15px; }

.media--small .media__image-item { padding-top: 57.5%; -webkit-backface-visibility: hidden; backface-visibility: hidden; }

.media--small .media__content { margin-top: 18px; }

.media--small .media__index { margin-top: 6px; padding: 0; }

.media--small .media__index:after { content: none; }

.media--small .media__index > h1 { font-size: 16px; line-height: 1.5; }

/* 記事詳細 その他の記事（極小） */
.media--tiny { margin-top: 26px; padding: 0 24px; }

.media--tiny:hover .media__image-item { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }

.media--tiny:hover .media__index > h1 span { text-decoration: underline; }

.media--tiny:first-of-type { margin-top: 30px; }

.media--tiny .media__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; }

.media--tiny .media__content { -webkit-flex-basis: 91%; -ms-flex-preferred-size: 91%; flex-basis: 91%; margin: -1px 0 0 14px; }

.media--tiny .media__image { -webkit-flex-basis: 50%; -ms-flex-preferred-size: 50%; flex-basis: 50%; min-height: 54px; padding: 4px; background-color: #cdecfb; }

.media--tiny .media__image-item { height: 100%; border: 2px solid #fff; }

.media--tiny .media__index { margin-top: 7px; padding: 0; }

.media--tiny .media__index > h1 { max-height: 34px; font-size: 12px; font-weight: 400; line-height: 1.5; }

.media--tiny .media__index:after { content: none; }

@media screen and (max-width: 900px) { .media--tiny .media__image { -webkit-flex-basis: 30%; -ms-flex-preferred-size: 30%; flex-basis: 30%; min-height: 100px; } }

@media screen and (max-width: 767px) { .media:hover .media__image-item { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  .media__content { margin-top: 19px; }
  .media__index { margin-top: 7px; padding: 0; }
  .media__index:after { content: none; }
  .media__index > h1 { font-size: 18px; }
  .media__index > p { margin-top: 9px; }
  .media--horizon:hover, .media--small:hover, .media--tiny:hover { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); box-shadow: none; }
  .media--horizon .media__image, .media--small .media__image, .media--tiny .media__image { display: none; }
  .media--horizon .media__content, .media--small .media__content, .media--tiny .media__content { margin: 0; }
  .media--horizon .media__index > h1 span, .media--small .media__index > h1 span, .media--tiny .media__index > h1 span { padding-bottom: 2px; border-bottom: 1px solid currentColor; }
  .media--horizon .media__inner { padding: 0 20px; }
  .media--horizon .media__index { margin-top: 5px; }
  .media--horizon .media__index > p { display: none; }
  .media--horizon .media__content { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; }
  .media--tiny { padding: 0; }
  .media--tiny:first-of-type { margin-top: 18px; }
  .media--tiny:nth-of-type(n + 2):after { content: ''; position: absolute; width: 92%; height: 1px; top: 0; right: 0; background-color: #cdecfb; z-index: 1; }
  .media--tiny:last-of-type { margin-bottom: 24px; }
  .media--tiny .media__inner { padding: 28px 30px 0; }
  .media--tiny .media__content { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; width: 100%; }
  .media--tiny .media__index { margin-top: 10px; }
  .media--tiny .media__index > h1 { max-height: 100%; font-size: 16px; font-weight: 700; } }

.menu { display: block; }

.menu:hover .menu__icon:after { -webkit-transform: scale3d(5.2, 5.2, 1); transform: scale3d(5.2, 5.2, 1); }

.menu:hover .menu__text { color: #fff; }

.menu__icon { position: relative; width: 55px; height: 55px; margin: 0 auto; color: #fff; }

.menu__icon:after { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; border-radius: 50%; background-color: #039eec; z-index: -1; transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); }

.menu__icon > svg { position: absolute; width: 32px; height: 27px; margin: 0 auto; top: 50%; left: 0; right: 0; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.menu__text { margin-top: 14px; padding-left: 4px; font-size: 14px; font-weight: 700; transition: color 0.17s cubic-bezier(0.455, 0.03, 0.515, 0.955); }

.menu--doctor .menu__icon > svg { width: 19px; height: 31px; }

.menu--outpatient .menu__icon > svg { width: 35px; height: 23px; }

.menu--admision .menu__icon > svg { width: 31px; height: 28px; }

.menu--medicalcheck .menu__icon > svg { width: 21px; height: 31px; }

.menu--athome .menu__icon > svg { width: 32px; height: 32px; }

@media screen and (max-width: 767px) { .menu:hover .menu__icon:after { -webkit-transform: scale3d(1, 1, 1); transform: scale3d(1, 1, 1); }
  .menu:hover .menu__text { color: inherit; } }

/* 下層パーツにつけるmargin-bottomクラス */
.mgb14 { margin-bottom: 14px; }

.mgb30 { margin-bottom: 30px; }

.mgb32 { margin-bottom: 32px; }

.mgb50 { margin-bottom: 50px; }

.mgb75 { margin-bottom: 75px; }

.mgb100 { margin-bottom: 100px; }

@media screen and (max-width: 767px) { .mgb100 { margin-bottom: 75px; } }

.news__list { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: stretch; -ms-flex-pack: stretch; justify-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; }

.news__button { width: 235px; margin: 0 auto; margin-top: 34px; }

.news--top { position: relative; margin-top: 9px; padding: 0 0 60px; }

.news--top:before, .news--top:after { content: ''; position: absolute; width: 100vw; top: 0; left: 50%; bottom: 0; background-color: #f0f9fd; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); z-index: -1; }

.news--top:after { top: auto; bottom: 0; }

.news--top .news__list { margin: -30px -9px 0; }

.news--top .news__item { width: 25%; margin-top: 30px; padding: 0 9px; }

@media screen and (max-width: 965px) { .news--top .news__item { width: 50%; } }

@media screen and (max-width: 767px) { .news--top { padding: 0 0 60px; }
  .news--top .news__list { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; padding-top: 8px; }
  .news--top .news__item { width: 100%; margin: 0; padding: 3px 5px 15px; }
  .news--top .news__item ~ li { border-top: 1px solid #cdecfb; }
  .news--top .news__button { width: 100%; margin: -2px 0 0; padding: 0 20px; } }

.news-content { margin-top: 49px; }

.news-content__list { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: stretch; -ms-flex-pack: stretch; justify-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; margin: 29px -24px 0; }

.news-content__item { width: 33.33%; margin-top: 15px; padding: 0 9px; }

@media screen and (max-width: 767px) { .news-content { margin-top: 24px; }
  .news-content__list { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 25px auto; }
  .news-content__item { width: 100%; margin: 0; padding: 9px 5px 11px; border-top: 1px solid #cdecfb; }
  .news-content__item:last-child { border-bottom: 1px solid #cdecfb; } }

.notes { font-size: 14px; line-height: 1.95; color: #777; }

/* 若干小さめのもの */
.notes--small { font-size: 13px; line-height: 1.6; }

.other-link { padding: 25px 0 24px; background-color: #f0f9fd; }

.other-link__inner { max-width: 1220px; width: 100%; margin: 0 auto; padding: 0 40px; text-align: center; }

.other-link__banner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; margin: -20px -27px 0; }

.other-link__banner-item { width: 298px; margin-top: 20px; padding: 0 27px; }

.other-link__banner-item > a { display: inline-block; transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1); }

.other-link__banner-item > a:hover { opacity: .6; }

.other-link__list { margin: 20px -40px 0; text-align: center; }

.other-link__item { display: inline-block; margin-top: 10px; padding: 0 40px; }

@media screen and (max-width: 1232px) { .other-link__banner, .other-link__list { margin-left: auto; margin-right: auto; }
  .other-link__banner { max-width: 894px; }
  .other-link__list { max-width: 878px; text-align: left; } }

@media screen and (max-width: 988px) { .other-link__banner { max-width: 596px; }
  .other-link__list { max-width: 658px; } }

@media screen and (max-width: 767px) { .other-link { padding: 28px 0 38px; }
  .other-link__inner { padding: 0 20px; }
  .other-link__banner { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; max-width: 100%; margin: 0; padding: 0 17px; }
  .other-link__banner-item { width: 100%; margin-top: 10px; padding: 0; }
  .other-link__banner-item > a:hover { opacity: 1; } }

.outpatient__time-item { display: table; width: 100%; margin-top: 26px; }

.outpatient__time-item:first-of-type { margin-top: 43px; }

.outpatient__time-item dt, .outpatient__time-item dd { display: table-cell; font-size: 16px; }

.outpatient__time-item > dt { width: 103px; padding-top: 7px; font-weight: 700; color: #039eec; -webkit-font-feature-settings: "palt" 1; font-feature-settings: "palt" 1; }

.outpatient__time-item > dd { position: relative; padding-left: 40px; line-height: 1.7; }

.outpatient__time-item > dd:before { content: ''; position: absolute; width: 2px; height: 74%; top: 6px; left: 0; background-color: #cdecfb; }

.outpatient__time-note { margin-top: 31px; font-size: 16px; line-height: 1.65; }

.outpatient__time-closeday { margin-top: 25px; text-align: center; border: 1px solid #cdecfb; background-color: #f0f9fd; }

.outpatient__time-closeday > p { padding: 13px 10px; font-size: 14px; font-weight: 700; line-height: 1.6; }

.outpatient__notice { margin-top: 96px; }

.outpatient__notice-panel { margin-top: 50px; }

.outpatient__subject { margin-top: 80px; }

.outpatient__subject-item { margin-top: 25px; overflow: hidden; }

.outpatient__subject .is-open .outpatient__subject-head > span:before { -webkit-transform: rotate3d(0, 0, 1, 90deg); transform: rotate3d(0, 0, 1, 90deg); }

.outpatient__subject-head { position: relative; padding: 13px 51px 15px 22px; border: 1px solid #cdecfb; border-left: 2px solid #6bcefa; background-color: #fff; cursor: pointer; }

.outpatient__subject-head > p { font-size: 22px; font-weight: 700; line-height: 1.4; color: #039eec; }

.outpatient__subject-head-icon { position: absolute; width: 20px; height: 20px; margin: auto 0; top: 0; right: 26px; bottom: 0; background-color: #039eec; }

.outpatient__subject-head-icon:before, .outpatient__subject-head-icon:after { content: ''; position: absolute; margin: auto; top: 0; left: 0; right: 0; bottom: 0; background-color: #fff; transition: -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); }

.outpatient__subject-head-icon:before { width: 3px; height: 13px; }

.outpatient__subject-head-icon:after { width: 13px; height: 3px; }

.outpatient__subject-table { position: relative; height: 0; transition: height 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), margin 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.outpatient__subject-table-inner { padding: 50px 0 100px; /* tablepress スタイル打ち消し */ /* スクロールバーのスタイル */ }

.outpatient__subject-table-inner > table { width: 100%; table-layout: fixed; border-collapse: collapse; border-top: 2px solid #6bcefa; }

.outpatient__subject-table-inner .tablepress th, .outpatient__subject-table-inner .tablepress td { font-size: 14px; text-align: center; border: 1px solid #cdecfb; }

.outpatient__subject-table-inner .tablepress td { vertical-align: middle; }

.outpatient__subject-table-inner .tablepress td.is-reserve { padding: 15px 9px; }

.outpatient__subject-table-inner .tablepress td.is-reserve:after { content: '予約制'; display: block; width: 45px; margin: 0 auto; padding: 4px 0 6px; font-size: 12px; font-weight: 700; line-height: 1; color: #fff; background-color: #039eec; }

.outpatient__subject-table-inner .tablepress thead th { padding: 14px 0; background-color: #dcf2fb; }

.outpatient__subject-table-inner .tablepress thead th:first-of-type { width: 17%; }

.outpatient__subject-table-inner .tablepress thead th:nth-of-type(2) { width: 6.8%; }

.outpatient__subject-table-inner .tablepress tbody td { padding: 27px 9px; }

.outpatient__subject-table-inner .tablepress tbody .column-1 { padding: 0 17px; font-weight: 700; background-color: #f0f9fd; }

.outpatient__subject-table-inner .tablepress tbody .column-2 { font-weight: 700; }

.outpatient__subject-table-inner .tablepress .odd td { background-color: #fff; }

.outpatient__subject-table-inner::-webkit-scrollbar { position: absolute; all: unset; top: 0; height: 4px; background-color: transparent; }

.outpatient__subject-table-inner::-webkit-scrollbar-thumb { all: unset; width: 1%; background-color: #cfcfcf; }

.outpatient__subject-table-note { position: absolute; display: none; top: 35px; font-size: 14px; line-height: 1.6; }

/* 游ゴシック IEずれ修正 */
@media all and (-ms-high-contrast: none) { .outpatient__subject-head > p { -webkit-transform: translateY(3px); -ms-transform: translateY(3px); transform: translateY(3px); }
  .outpatient__subject-table-inner td.is-reserve:after { padding: 6px 0 4px; } }

@media screen and (max-width: 767px) { .outpatient__time dt, .outpatient__time dd { display: block; }
  .outpatient__time dt { width: 100%; }
  .outpatient__time dd { margin-top: 15px; padding: 9px 0 0; border-top: 1px solid #cdecfb; }
  .outpatient__time dd:before { content: none; }
  .outpatient__time-item { margin-top: 48px; }
  .outpatient__time-item:first-of-type { margin-top: 37px; }
  .outpatient__time-note { margin-top: 23px; }
  .outpatient__notice { margin-top: 66px; }
  .outpatient__notice-panel { margin-top: 40px; }
  .outpatient__subject { margin-top: 71px; }
  .outpatient__subject-head { padding: 17px 51px 17px 22px; }
  .outpatient__subject-head > p { font-size: 18px; }
  .outpatient__subject-head-icon { right: 15px; bottom: 2px; }
  .outpatient__subject-list { margin-top: 41px; }
  .outpatient__subject-item { margin-top: 15px; }
  .outpatient__subject-item.is-open .outpatient__subject-table { margin-bottom: 64px; }
  .outpatient__subject-table-inner { padding: 94px 0 10px; overflow-x: auto; }
  .outpatient__subject-table-inner > table { min-width: 660px; }
  .outpatient__subject-table-inner .tablepress td.is-reserve { bottom: 13px; }
  .outpatient__subject-table-inner .tablepress td.is-reserve:after { bottom: -3px; }
  .outpatient__subject-table-inner .tablepress thead th { padding: 7px 0 5px; }
  .outpatient__subject-table-inner .tablepress tbody td { padding: 20px 9px; }
  .outpatient__subject-table-inner .tablepress tbody .column-1 { width: 10.8%; padding: 0 13px; }
  .outpatient__subject-table-note { display: block; } }

.pages-contact { background-color: #f0f9fd; }

.pages-contact__inner { max-width: 500px; width: 100%; margin: 0 auto; padding: 46px 0 52px 4px; text-align: center; }

.pages-contact__inner > p { font-size: 16px; line-height: 1.6; }

.pages-contact__tel { margin-top: 29px; padding-right: 23px; }

.pages-contact__button { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: center; -ms-flex-align: center; align-items: center; margin-top: 33px; }

.pages-contact__button-item { width: 47%; }

@media screen and (max-width: 767px) { .pages-contact__inner { padding-left: 0; padding-bottom: 100px; }
  .pages-contact__inner > p { padding-left: 9px; font-size: 14px; }
  .pages-contact__tel { margin-top: 18px; padding-right: 9px; }
  .pages-contact__button { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin-top: 22px; padding: 0 40px; }
  .pages-contact__button-item { width: 100%; }
  .pages-contact__button-item:last-child { margin-top: 21px; } }

.pagetop { padding: 18px 0; text-align: center; border-top: 1px solid #cdecfb; cursor: pointer; }

.pagetop:hover .pagetop__text { opacity: .5; }

.pagetop__icon, .pagetop__text { display: inline-block; vertical-align: middle; }

.pagetop__icon { position: relative; left: 5px; color: #039eec; }

.pagetop__icon > svg { width: 35px; height: 17px; }

.pagetop__text { margin-left: 9px; font-size: 14px; font-weight: 700; transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

@media screen and (max-width: 767px) { .pagetop { padding: 19px 0 18px; padding-right: 7px; }
  .pagetop:hover .pagetop__text { opacity: 1; } }

.panel { position: relative; display: table; width: 100%; height: 100%; padding: 0 9px 24px 19px; z-index: 1; border-bottom: 1px solid #cdecfb; }

.panel:after { content: ''; position: absolute; width: 0; left: 0; right: auto; bottom: 0; border-bottom: 1px solid #039eec; transition: width 0.4s cubic-bezier(0.645, 0.045, 0.355, 1); }

.panel:hover { z-index: 2; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.panel:hover .panel__text span { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

.panel:hover:after { width: 100%; transition: width 0.5s cubic-bezier(0.645, 0.045, 0.355, 1); }

.panel__icon, .panel__text { display: table-cell; vertical-align: middle; }

.panel__icon { width: 54px; color: #039eec; }

.panel__icon > svg { width: 51px; height: 46px; }

.panel__text { padding-left: 13px; }

@media screen and (max-width: 767px) { .panel { padding: 0 2px 16px 0; top: auto; -webkit-transform: none; -ms-transform: none; transform: none; }
  .panel:hover .panel__text span { -webkit-transform: rotate(-45deg) translate3d(0, 0, 0); transform: rotate(-45deg) translate3d(0, 0, 0); }
  .panel:after { content: none; } }

.panel-box { width: 100%; margin-top: 23px; }

.panel-box__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; margin: 0 -15px; }

.panel-box__item { position: relative; width: 30.4%; margin: 0 15px; margin-top: 50px; overflow: hidden; }

@media screen and (max-width: 1129px) { .panel-box__item { width: 45%; } }

@media screen and (max-width: 767px) { .panel-box { margin-top: 13px; }
  .panel-box__inner { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; }
  .panel-box__item { min-width: inherit; width: 100%; margin: 15px 0 0; } }

.person-concerned { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; }

.person-concerned__image { -webkit-flex-basis: 170px; -ms-flex-preferred-size: 170px; flex-basis: 170px; }

.person-concerned__info { -webkit-flex-basis: 522px; -ms-flex-preferred-size: 522px; flex-basis: 522px; margin-left: 47px; }

.person-concerned__info-item { display: table; table-layout: fixed; width: 100%; padding: 14px 0 16px; border-bottom: 1px solid #cdecfb; }

.person-concerned__info-item:first-child { padding-top: 0; }

.person-concerned__info-item:nth-child(2) { padding-bottom: 10px; }

.person-concerned__info-item:last-child { border: none; }

.person-concerned__info-head, .person-concerned__info-text { display: table-cell; vertical-align: top; }

.person-concerned__info-head { font-size: 14px; font-weight: 700; color: #fff; }

.person-concerned__info-head > span { display: inline-block; padding: 6px 10px 5px 9px; background-color: #039eec; }

.person-concerned__info-text { padding-left: 19px; font-size: 16px; line-height: 1.6; }

.person-concerned__info-text > span { display: inline-block; margin-right: 13px; font-weight: 700; vertical-align: text-top; }

.person-concerned__info-text > p { display: inline-block; vertical-align: text-top; }

.person-concerned__info-text > p span { display: block; margin: 3px 0 0 1px; font-size: 10px; }

.person-concerned__info-text li { line-height: 1.65; }

.person-concerned__info-desc > p { margin-top: 16px; font-size: 16px; line-height: 1.6; }

@media screen and (max-width: 767px) { .person-concerned { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
  .person-concerned__image, .person-concerned__info { -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; }
  .person-concerned__image { max-width: 400px; width: 100%; margin: 0 auto; padding: 0 50px; }
  .person-concerned__info { margin: 30px 0 0; }
  .person-concerned__info-text > span { margin-right: 0; }
  .person-concerned__info-text > p { display: block; padding-top: 3px; } }

.point-frame { margin-bottom: 20px; padding: 27px 21px 25px; border: 5px solid #cdecfb; }

/* 中身がカラムアイテムのとき */
.point-frame--column { padding: 30px 34px; }

.qa-box { margin-bottom: 25px; overflow: hidden; }

.qa-box__parent { position: relative; display: table; width: 100%; cursor: pointer; }

.qa-box__parent-head, .qa-box__parent-text { display: table-cell; font-size: 18px; font-weight: 700; vertical-align: middle; }

.qa-box__parent-head { width: 60px; text-align: center; font-family: "Roboto", arial, sans-serif; color: #fff; background-color: #6bcefa; }

.qa-box__parent-text { padding: 16px 84px 16px 19px; line-height: 1.6; color: #039eec; border: 1px solid #cdecfb; border-left: none; }

.qa-box__parent-icon { position: absolute; display: inline-block; width: 20px; height: 20px; margin: auto 0; top: 0; right: 27px; bottom: 2px; border: none; background-color: #039eec; }

.qa-box__parent-icon:before, .qa-box__parent-icon:after { content: ''; position: absolute; margin: auto; top: 0; left: 0; right: 0; bottom: 0; background-color: #fff; transition: -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1); }

.qa-box__parent-icon:before { width: 3px; height: 13px; }

.qa-box__parent-icon:after { width: 13px; height: 3px; }

.qa-box__child { height: 0; transition: height 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.qa-box__child-inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; padding-top: 19px; }

.qa-box__child-head { margin-top: 6px; padding: 21px 24px; font-size: 18px; font-weight: 700; color: #039eec; background-color: #f0f9fd; }

.qa-box__child-text { margin-left: 20px; font-size: 16px; line-height: 1.95; }

.qa-box__child-text > a { color: #039eec; text-decoration: underline; }

.qa-box__child-text > a:hover { text-decoration: none; }

.qa-box.is-open .qa-box__parent-icon:before { -webkit-transform: rotate3d(0, 0, 1, 90deg); transform: rotate3d(0, 0, 1, 90deg); }

@media screen and (max-width: 767px) { .qa-box__parent-head { width: 40px; }
  .qa-box__parent-text { padding: 12px 46px 12px 16px; font-size: 16px; }
  .qa-box__parent-icon { right: 16px; } }

.question { margin-top: 31px; }

.question__text { position: relative; padding-left: 61px; padding-right: 3px; font-size: 16px; line-height: 2; }

.question__text:before { content: 'Q'; position: absolute; top: 0; left: 4px; font-family: 'arial', sans-serif; font-size: 52px; line-height: 1; color: #039eec; }

.question__button { width: 247px; margin: 23px auto 0; padding-left: 12px; }

@media screen and (max-width: 767px) { .question { margin-top: 18px; }
  .question__text { padding: 0 0 0 54px; }
  .question__text:before { top: 5px; left: -2px; }
  .question__button { width: 100%; margin: 11px 0 0; padding: 0; } }

.recruit-content { margin-top: 50px; }

.recruit-content__image { width: 100%; height: 252px; background: url("../images/recruit/recruit_naika.jpg") center no-repeat; background-size: cover; }

.recruit-content__index { margin-bottom: 40px; }

.recruit-content__table { width: 100%; border-top: 2px solid #6bcefa; border-collapse: collapse; }

.recruit-content__table-head th { padding: 10px 0; font-size: 18px; font-weight: 700; border: 1px solid #cdecfb; background-color: #dcf2fb; }

.recruit-content__table-body th, .recruit-content__table-body td { border: 1px solid #cdecfb; }

.recruit-content__table-body th { padding: 20px 0; width: 17%; background-color: #f0f9fd; }

.recruit-content__table-body td { padding: 18px 48px; }

.recruit-content__table-body td p { line-height: 1.9; }

.recruit-content__table-body ul li { line-height: 1.9; }

.recruit-content__table-body ul li:nth-child(n + 2) { margin-top: 24px; }

.recruit-content__table-body ul li > p { padding-left: 14px; line-height: 1.95; }

.recruit-content__requirement { margin-top: 116px; }

.recruit-content__subscribe { margin-top: 96px; }

@media screen and (max-width: 767px) { .recruit-content { margin-top: 40px; }
  .recruit-content__image { height: 158px; }
  .recruit-content__table:nth-of-type(n + 2) { margin-top: 40px; }
  .recruit-content__table-head th { display: block; border-bottom: none; }
  .recruit-content__table-body th, .recruit-content__table-body td { display: block; }
  .recruit-content__table-body th { width: 100%; padding: 10px 0; border-top: none; border-bottom: none; }
  .recruit-content__table-body td { padding: 12px 18px 13px; border-top: none; }
  .recruit-content__requirement { margin-top: 67px; } }

.recruit-intro { margin-bottom: 40px; }

.recruit-intro > p { font-size: 16px; line-height: 1.95; }

.recruit-intro__tour { margin: 39px 0 75px; padding: 58px 7px 58px 0; text-align: center; border: 5px solid #cdecfb; }

.recruit-intro__tour-head { font-size: 22px; font-weight: 700; line-height: 1.6; }

.recruit-intro__tour-text { display: inline-block; margin-top: 22px; max-width: 361px; font-size: 14px; line-height: 1.9; }

.recruit-intro__tour-button { width: 235px; margin: 28px auto 0; }

@media screen and (max-width: 767px) { .recruit-intro__tour { margin: 32px 0 72px; padding: 30px 16px 36px; }
  .recruit-intro__tour-head { font-size: 18px; }
  .recruit-intro__tour-text { margin-top: 15px; text-align: left; }
  .recruit-intro__tour-button { width: 100%; margin-top: 19px; } }

.recruit-list__inner { margin-top: 53px; }

.recruit-list__panel { margin-top: 10px; padding: 50px 49px 53px; background-color: #f0f9fd; }

.recruit-list__head { font-size: 22px; font-weight: 700; }

.recruit-list__item { margin: 18px 0 0 -25px; padding-left: 2px; }

.recruit-list__item > a { margin: 14px 0 0 25px; }

.recruit-list__item > a p { padding-left: 28px; }

@media screen and (max-width: 767px) { .recruit-list__inner { margin-top: 40px; }
  .recruit-list__panel { margin-top: 15px; padding: 29px 18px 32px; }
  .recruit-list__head { font-size: 18px; }
  .recruit-list__item { margin-top: 0; }
  .recruit-list__item > a { display: block; margin-top: 22px; } }

.recruit-tour { margin-bottom: 80px; }

.recruit-tour__list-inner > li { margin-top: 20px; }

.recruit-tour__button { width: 230px; margin-top: 20px; }

@media screen and (max-width: 767px) { .recruit-tour__button { width: 100%; margin-top: 36px; } }

.select-hidden { display: none; }

.select-style { padding: 14px 13px 13px; background-color: #fff; border: 1px solid #cdecfb; }

.select-options { -webkit-animation: fadeIn .23s ease-out 1; animation: fadeIn .23s ease-out 1; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; position: absolute; display: none; width: 100%; left: 0; border: 1px solid #cdecfb; background: #fff; z-index: 1; transition: .23s ease-out; }

.select-options > li { position: relative; margin: 0; padding: 14px 13px 13px; cursor: pointer; transition: .2s linear; }

.select-options > li:hover { color: #fff; background: #6bcefa; }

.select-options > li:before { content: ''; position: absolute; width: 93%; height: 1px; margin: 0 auto; top: 0; left: 0; right: 0; background-color: #cdecfb; z-index: -1; }

.select-options > li:nth-child(2):before { content: none; }

.select-options > li[rel=''] { display: none; }

.select-options.is-select { -webkit-animation: fadeOut .23s ease-out 1; animation: fadeOut .23s ease-out 1; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }

.side-navi { padding-bottom: 25px; border-radius: 20px; background-color: #fff; box-shadow: 2px 3px 15px 0 rgba(162, 202, 240, 0.4); }

.side-navi__block { position: relative; }

.side-navi__block:nth-of-type(n + 2) { padding-top: 60px; }

.side-navi__head { position: relative; }

.side-navi__head:after { content: ''; position: absolute; width: 92%; height: 1px; left: 0; bottom: 0; background-color: #6bcefa; z-index: 1; }

.side-navi__head a, .side-navi__head span { display: block; padding: 36px 24px 28px; font-size: 14px; font-weight: 700; color: #039eec; }

.side-navi__item { display: block; min-height: 61px; overflow: hidden; /* 子のサブナビリスト */ }

.side-navi__item:last-of-type > .side-navi__item-inner:after { content: none; }

.side-navi__item-inner { position: relative; display: block; padding: 22px 24px; background-color: #fff; z-index: 1; transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.side-navi__item-inner:hover { background-color: #f0f9fd; }

.side-navi__item-inner:hover .side-navi__item-link > span { -webkit-transform: rotate(-45deg) translate3d(3px, 3px, 0); transform: rotate(-45deg) translate3d(3px, 3px, 0); }

.side-navi__item-inner:after { content: ''; position: absolute; width: 92%; height: 1px; right: 0; bottom: 0; background-color: #cdecfb; }

.side-navi__item-inner p { font-size: 14px; }

.side-navi__item-inner.is-current { pointer-events: none; background-color: #f0f9fd; }

.side-navi__item-inner.is-current:hover span { -webkit-transform: rotate(-45deg) translate3d(0, -50%, 0); transform: rotate(-45deg) translate3d(0, -50%, 0); }

.side-navi__item-child { width: 100%; height: 0; transition: height 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.side-navi__item-child-inner { padding-bottom: 15px; }

.side-navi__item-child .side-navi__item-inner { padding: 22px 45px; }

.side-navi__item-child .side-navi__item-inner:after { width: 86%; }

.side-navi__item-child .side-navi__item-link > p { font-weight: 400; }

.side-navi__button { margin: 25px 0 23px; padding: 0 43px 0 39px; }

/* サイドナビのリスト アコーディオンタイプ */
.side-navi__item--accordion:last-of-type.is-open > .side-navi__item-inner:after { content: ''; }

.side-navi__item--accordion:last-of-type.is-open > .side-navi__item-inner:last-of-type:after { content: none; }

.side-navi__item--accordion:last-of-type .side-navi__item-inner:last-of-type:after { content: none; }

.side-navi__item--accordion > .side-navi__item-inner:hover .side-navi__item-link > span { -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }

.side-navi__item--accordion.is-open > .side-navi__item-inner span:before { -webkit-transform: rotate3d(0, 0, 1, 90deg) translate3d(-50%, -50%, 0); transform: rotate3d(0, 0, 1, 90deg) translate3d(-50%, -50%, 0); }

@media screen and (max-width: 767px) { .side-navi { padding-bottom: 14px; }
  .side-navi__block:nth-of-type(n + 2) { padding-top: 51px; }
  .side-navi__head > a { padding: 42px 29px 26px; }
  .side-navi__item { min-height: 66px; }
  .side-navi__item-inner { padding: 25px 27px 24px; }
  .side-navi__item-inner span { top: 38%; }
  .side-navi__item-child .side-navi__item-inner { padding: 25px 46px 24px 50px; }
  .side-navi__button { display: none; }
  .side-navi__item--accordion .side-navi__item-inner p span { top: 44%; right: -15px; } }

@media screen and (max-width: 767px) and (max-width: 767px) { .side-navi__item--accordion .side-navi__item-inner p span { top: 10%; right: -35px; } }

.single-title { position: relative; padding-bottom: 15px; color: #039eec; border-bottom: 1px solid #cdecfb; }

.single-title:before { content: ''; position: absolute; width: 12%; height: 1px; left: 0; bottom: -1px; background-color: #039eec; }

.single-title__text { font-size: 22px; font-weight: 700; line-height: 1.4; color: #039eec; }

/* h3レベル */
.single-title--lv3 { padding: 0 0 0 18px; border: none; }

.single-title--lv3:before { width: 2px; height: 100%; top: 0; left: 0; }

.single-title--lv3 .single-title__text { line-height: 1.55; color: #333; }

/* h4レベル */
.single-title--lv4 { padding: 0; border: none; }

.single-title--lv4:before { content: none; }

.single-title--lv4 .single-title__text { font-size: 18px; line-height: 1.4; color: #333; }

/* サイトマップでの見出しリンク */
.single-title--link { display: block; }

.single-title--link:hover:before { width: 100%; }

.single-title--link:before { transition: width 0.4s cubic-bezier(0.645, 0.045, 0.355, 1); }

@media screen and (max-width: 767px) { .single-title { margin-right: -20px; padding: 0 20px 16px 0; border-width: 1px; }
  .ie .single-title, .edge .single-title { margin-right: 0; }
  .single-title:after { width: 30%; height: 1px; bottom: -1px; }
  .single-title__text { font-size: 18px; }
  .single-title--lv3 { margin: 0; padding: 0 0 0 11px; }
  .single-title--lv3 .single-title__text { line-height: 1.3; }
  .single-title--lv4 { margin: 0; padding: 0; } }

.sitemap { -webkit-flex: 1 1 64.03%; -ms-flex: 1 1 64.03%; flex: 1 1 64.03%; margin-left: 16.4%; }

.sitemap__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; }

.sitemap__unit > dt { position: relative; padding-left: 15px; }

.sitemap__unit > dt:before { content: ''; position: absolute; width: 10px; height: 2px; top: 10px; left: 0; background-color: #fff; }

.sitemap__unit > dt a { font-weight: 700; }

.sitemap__unit > dd { padding-left: 29px; }

.sitemap__unit a { display: block; margin-top: 3px; font-size: 14px; line-height: 1.6; color: #fff; }

.sitemap__unit a:hover { text-decoration: underline; }

.sitemap__unit01 > dt:last-of-type { margin-top: 28px; }

.sitemap__unit02 { padding-left: 50px; }

.sitemap__unit02 > dt:nth-of-type(n + 2) { margin-top: 28px; }

.sitemap__unit03 { padding-left: 48px; }

@media screen and (max-width: 900px) { .sitemap { margin-left: 8%; } }

@media screen and (max-width: 767px) { .sitemap { display: none; } }

.slider-navi { position: absolute; max-width: 1140px; width: 100%; margin: 0 auto; left: 0; right: 0; bottom: 0; z-index: 1; }

.slider-navi__inner { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; box-sizing: border-box; }

.slider-navi__item { -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; height: 8px; background-color: #fff; opacity: .7; transition: background-color 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95), opacity 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95); box-sizing: border-box; }

.slider-navi__item.is-current { background-color: #039eec; opacity: 1; }

@media screen and (max-width: 767px) { .slider-navi { display: none; } }

.step__list { border-bottom: 1px solid #cdecfb; }

.step__item { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row nowrap; -ms-flex-flow: row nowrap; flex-flow: row nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 39px 39px 40px; border: 1px solid #cdecfb; border-bottom: none; }

.step__label { display: inline-block; padding: 11px 21px; text-align: center; border-radius: 50%; background-color: #039eec; }

.step__label > p { font-family: "Roboto", arial, sans-serif; color: #fff; }

.step__label-text { font-size: 16px; }

.step__label-num { font-size: 34px; font-weight: 700; }

.step__content { margin-left: 21px; }

.step__content-link { font-size: 0; }

.step__content-link-item { display: inline-block; margin: 10px 10px 0 0; }

@media screen and (max-width: 767px) { .step__item { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; padding: 29px 26px 32px; }
  .step__label { padding: 8px 17px; }
  .step__label-num { font-size: 30px; }
  .step__content { margin: 20px 0 0; text-align: center; }
  .step__content-link-item { display: block; margin: 14px 0 0; } }

.tab-panel { border: 1px solid #cdecfb; }

.tab-panel__content { padding: 48px 40px 26px 50px; }

.tab-panel__content-item { overflow: hidden; }

.tab-panel__content-item dl { display: table; width: 100%; border-bottom: 1px solid #cdecfb; }

.tab-panel__content-item dl:nth-of-type(n + 2) { margin-top: 25px; }

.tab-panel__content-item dl:last-of-type { border: none; }

.tab-panel__content-item dt, .tab-panel__content-item dd { display: table-cell; font-size: 14px; }

.tab-panel__content-item dt { width: 17.5%; padding: 0 20px 23px 0; font-family: "Roboto", arial, sans-serif; font-weight: 700; }

.tab-panel__content-item dd > a { display: inline-block; line-height: 1.6; text-decoration: underline; }

.tab-panel__content-item dd > a:hover { text-decoration: none; }

@media screen and (max-width: 767px) { .tab-panel__content { padding: 30px 20px 0 19px; }
  .tab-panel__content-item dl:nth-of-type(n + 2) { margin-top: 32px; }
  .tab-panel__content-item dt, .tab-panel__content-item dd { display: block; }
  .tab-panel__content-item dt { width: 100%; padding: 0 0 10px; }
  .tab-panel__content-item dd { padding-bottom: 26px; } }

.table-block { width: 100%; border-collapse: collapse; border-top: 2px solid #6bcefa; }

@media screen and (max-width: 767px) { .table-block { border-top: 1px solid #cdecfb; } }

.table-block th, .table-block td { font-size: 14px; vertical-align: text-top; border: 1px solid #cdecfb; }

@media screen and (max-width: 767px) { .table-block th, .table-block td { border-top: 0; } }

.table-block thead th { padding: 15px 0 12px; text-align: center; vertical-align: middle; background-color: #dcf2fb; }

.table-block tbody th { width: 19.7%; padding: 0 23px; line-height: 1.9; text-align: left; background-color: #f0f9fd; }

.table-block tbody td { padding: 13px 25px; line-height: 1.9; }

/* 整形された3カラムの表 */
.table-block--col3 tbody td { padding: 16px 11px 12px 25px; }

.table-block--col3 tbody td:last-of-type { width: 17%; padding-left: 32px; padding-right: 32px; }

/* 整形された4カラムの表 */
.table-block--col4 thead th:first-of-type { width: 23%; }

.table-block--col4 thead th:nth-of-type(2) { width: 21%; }

.table-block--col4 thead th:last-of-type { width: 16%; }

/* セル幅が等幅になる表 */
.table-block--line { table-layout: fixed; }

/* tbody内を文字を上下中央寄せにする */
.table-block--middle tbody th, .table-block--middle tbody td { vertical-align: middle; }

/* tbody内を文字を左右中央寄せにする */
.table-block--center tbody th, .table-block--center tbody td { text-align: center; }

@media screen and (max-width: 767px) { .table-block { min-width: 650px; }
  .table-block tbody td { padding: 13px 20px; }
  .table-block--col2 { min-width: 100%; }
  .table-block--col2 tbody th, .table-block--col2 tbody td { display: block; width: 100%; text-align: center; }
  .table-block--col2 tbody th { padding: 10px 11px 9px; }
  .table-block--col2 tbody td { padding: 15px 20px 21px; } }

.tel { display: inline-block; /* 番号下部に配置されるボタン */ }

.tel__inner { color: #039eec; }

.tel__text { display: none; position: relative; left: 3px; font-size: 12px; font-weight: 700; text-align: center; letter-spacing: .01em; color: currentColor; }

.tel__num { position: relative; padding-left: 46px; font-family: "Roboto", arial, sans-serif; font-size: 26px; color: currentColor; /* 補足事項 */ }

.tel__num:before { content: 'TEL'; position: absolute; display: inline-block; top: 50%; left: 0; font-size: 26px; letter-spacing: 0; vertical-align: top; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

.tel__num-notes { margin-top: 6px; font-size: 14px; color: #333; }

.tel__button { display: inline-block; margin-top: 20px; }

.tel--sub .tel__inner, .tel--sub-top .tel__inner { color: #333; }

.tel--sub .tel__num, .tel--sub-top .tel__num { padding-left: 100px; font-size: 44px; letter-spacing: .01em; }

@media screen and (max-width: 900px) { .tel--sub .tel__num, .tel--sub-top .tel__num { padding-left: 120px; } }

.tel--sub .tel__num:before, .tel--sub-top .tel__num:before { content: 'TEL'; position: absolute; display: inline-block; padding: 6px 10px; top: 50%; left: 30px; font-size: 26px; font-weight: 500; letter-spacing: 0; vertical-align: top; color: #fff; background-color: #039eec; -webkit-transform: translateY(-48%); -ms-transform: translateY(-48%); transform: translateY(-48%); }

@media screen and (max-width: 900px) { .tel--sub .tel__num:before, .tel--sub-top .tel__num:before { left: 0; } }

.tel--sub .tel__text { display: block; left: 10px; font-size: 14px; }

.tel--sub .tel__num { margin-top: 10px; }

/* 下層ページ コンテンツ内のお問い合わせ */
.tel--area { display: block; text-align: center; }

.tel--area .tel__text { display: block; color: #333; line-height: 1.6; }

.tel--area .tel__num { margin-top: 5px; padding-left: 0; font-size: 36px; color: #039eec; }

.tel--area .tel__num:before { content: none; }

@media screen and (min-width: 901px) and (max-width: 1104px) { .tel--sub-top .tel__num { padding-left: 52px; font-size: 31px; }
  .tel--sub-top .tel__num:before { padding: 6px; font-size: 20px; left: 0; } }

@media screen and (max-width: 767px) { .tel--sub .tel__text, .tel--sub-top .tel__text { left: 5px; }
  .tel--sub .tel__num, .tel--sub-top .tel__num { margin-top: 18px; padding-left: 42px; left: 3px; font-size: 32px; letter-spacing: 0; }
  .tel--sub .tel__num:before, .tel--sub-top .tel__num:before { padding: 4px 4px 4px 5px; left: -3px; font-size: 18px; font-weight: 400; }
  .tel--area .tel__num { font-size: 30px; }
  .tel--area .tel__button { display: block; }
  .tel--area .tel__button:nth-of-type(n + 2) { margin-top: 14px; } }

.text-set__head { font-size: 18px; font-weight: 700; line-height: 1.4; }

.text-set__desc { margin: 12px 0 0 -2px; font-size: 16px; line-height: 1.65; }

.text-set__desc-table { width: 100%; }

.text-set__desc-table tbody th, .text-set__desc-table tbody td { font-size: 16px; vertical-align: text-top; line-height: 1.65; }

.text-set__desc-table tbody th { font-weight: 700; }

.text-set__desc-table tbody td { padding: 8px 0 4px 10px; text-align: left; }

/* 「ポイント」パーツ内にあるとき */
.text-set--point { text-align: center; }

.text-set--point .text-set__head { color: #039eec; }

.text-set--point .text-set__desc { margin: 14px 0 0; line-height: 1.6; }

@media screen and (max-width: 767px) { .text-set__desc-table tbody th, .text-set__desc-table tbody td { display: block; width: 100%; text-align: center; }
  .text-set__desc-table tbody th { padding-top: 14px; }
  .text-set__desc-table tbody td { padding: 0; } }

.theme-color { color: #039eec; }

.theme-background { background-color: #039eec; }

.topics__content { margin-top: 26px; }

.topics__content-button { display: none; }

@media screen and (max-width: 767px) { .topics__content-button { display: block; margin-top: 21px; } }

.various-reha { margin-bottom: 25px; overflow: hidden; /* 詳細を開いてるとき */ }

.various-reha:last-of-type { margin-bottom: 0; }

.various-reha__head { position: relative; padding: 13px 51px 15px 22px; border: 1px solid #cdecfb; border-left: 2px solid #6bcefa; background-color: #fff; cursor: pointer; }

.various-reha__head > p { font-size: 22px; font-weight: 700; line-height: 1.4; color: #039eec; }

.various-reha__head-icon { position: absolute; width: 20px; height: 20px; margin: auto 0; top: 0; right: 26px; bottom: 0; background-color: #039eec; }

.various-reha__head-icon:before, .various-reha__head-icon:after { content: ''; position: absolute; margin: auto; top: 0; left: 0; right: 0; bottom: 0; background-color: #fff; transition: -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1); }

.various-reha__head-icon:before { width: 3px; height: 13px; }

.various-reha__head-icon:after { width: 13px; height: 3px; }

.various-reha__item { position: relative; height: 0; transition: height 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), margin 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.various-reha__item-inner { padding: 25px 0 50px; }

.various-reha.is-open .various-reha__head-icon:before { -webkit-transform: rotate3d(0, 0, 1, 90deg); transform: rotate3d(0, 0, 1, 90deg); }

/* 游ゴシック IEずれ修正 */
@media all and (-ms-high-contrast: none) { .various-reha__head > p { -webkit-transform: translateY(3px); -ms-transform: translateY(3px); transform: translateY(3px); } }

@media screen and (max-width: 767px) { .various-reha__head { padding: 17px 51px 17px 22px; }
  .various-reha__head > p { font-size: 18px; }
  .various-reha__head-icon { right: 15px; bottom: 2px; } }

.visual-main { position: relative; width: 100%; height: 100%; }

.visual-main:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(3, 158, 236, 0.2); z-index: 1; }

.visual-main__image { position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; transition: opacity 1s cubic-bezier(0.39, 0.575, 0.565, 1); }

.visual-main__image:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(51, 51, 51, 0.2); }

.visual-main__image-item { width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; transition: -webkit-transform 8s linear; transition: transform 8s linear; transition: transform 8s linear, -webkit-transform 8s linear; }

.visual-main__image.is-current { opacity: 1; transition: opacity .3s linear; }

.visual-main__image.is-current .visual-main__image-item { -webkit-transform: scale3d(1.07, 1.07, 1.07); transform: scale3d(1.07, 1.07, 1.07); }

@media screen and (max-width: 767px) { .visual-main { padding-top: 51.1%; } }

.visual-heading { position: relative; width: 100%; overflow: hidden; color: #333333; }

.visual-heading:before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: -1; background: #f0f9fe; }

.visual-heading svg { position: absolute; top: 0; left: 0; }

@media screen and (max-width: 767px) { .visual-heading svg { -webkit-transform: scale(0.7); -ms-transform: scale(0.7); transform: scale(0.7); } }

.visual-heading__wrap { position: relative; min-height: 125px; padding-top: 8.92%; background-size: cover; background-position: center; background-repeat: no-repeat; }

.visual-heading__image { position: absolute; top: 0; left: -40px; right: -40px; max-width: 1140px; margin: 0 auto; bottom: 0; }

.visual-heading__image svg { left: 16.63%; }

.visual-heading__text { position: absolute; top: 50%; left: 0; right: 0; font-size: 30px; letter-spacing: .02em; text-align: center; -webkit-transform: translate3d(0, -40%, 0); transform: translate3d(0, -40%, 0); }

.visual-heading--about { color: #fff; }

.visual-heading--about:before { background-color: #bde3e6; }

.visual-heading--about svg { color: #acd8db; position: absolute; top: 27px; width: 80px; height: 72px; }

.visual-heading--news { color: #fff; }

.visual-heading--news:before { background-color: #b6eae8; }

.visual-heading--news svg { color: #a0e2e0; position: absolute; top: 38px; width: 77px; height: 64px; }

.visual-heading--movie { color: #fff; }

.visual-heading--movie:before { background-color: #b4d7db; }

.visual-heading--movie svg { color: #acd8db; position: absolute; top: 10px; width: 115px; height: 105px; }

.visual-heading--ambulatory { color: #fff; }

.visual-heading--ambulatory:before { background-color: #f9beb6; }

.visual-heading--ambulatory svg { color: #f8aba1; position: absolute; top: 30px; left: 15.4%; width: 103px; height: 69px; }

.visual-heading--healthcheck { color: #fff; }

.visual-heading--healthcheck:before { background-color: #f0d2dc; }

.visual-heading--healthcheck svg { color: #e9c3d0; position: absolute; top: 27px; width: 51px; height: 75px; }

.visual-heading--hospitalization { color: #fff; }

.visual-heading--hospitalization:before { background-color: #eadba4; }

.visual-heading--hospitalization svg { color: #e2cf8b; position: absolute; top: 26px; width: 82px; height: 75px; }

.visual-heading--department { color: #fff; }

.visual-heading--department:before { background-color: #d6e5a2; }

.visual-heading--department svg { color: #c9dc8b; position: absolute; top: 26px; width: 90px; height: 75px; }

.visual-heading--visit { color: #fff; }

.visual-heading--visit:before { background-color: #efcd9f; }

.visual-heading--visit svg { color: #e6be8b; position: absolute; top: 24px; left: 15.4%; width: 75px; height: 75px; }

.visual-heading--access { color: #fff; }

.visual-heading--access:before { background-color: #9fddae; }

.visual-heading--access svg { color: #87d098; position: absolute; top: 21px; left: 14.1%; width: 89px; height: 81px; }

.visual-heading--collaboration { color: #fff; }

.visual-heading--collaboration:before { background-color: #ddcbf1; }

.visual-heading--collaboration svg { color: #d3bbed; position: absolute; top: 27px; width: 90px; height: 71px; }

.visual-heading--recruit { color: #fff; }

.visual-heading--recruit:before { background-color: #ffd2a9; }

.visual-heading--recruit svg { color: #ffc394; position: absolute; top: 22px; width: 44px; height: 75px; }

.visual-heading--inquiry { color: #fff; }

.visual-heading--inquiry:before { background-color: #95c4f0; }

.visual-heading--inquiry svg { color: #7eb2eb; position: absolute; top: 38px; width: 81px; height: 50px; }

.visual-heading--sitemap:before, .visual-heading--faq:before { background-color: #f0f9fe; }

.visual-heading--sitemap .visual-heading__text, .visual-heading--faq .visual-heading__text { color: #333; }

@media screen and (max-width: 767px) { .visual-heading__image { min-height: 112px; }
  .visual-heading__text { font-size: 18px; } }

.wp-pagenavi { position: relative; width: 100%; margin-top: 76px; text-align: center; }

.wp-pagenavi a, .wp-pagenavi span { position: relative; margin: 0 7px 0 6px; padding: 6px 12px 8px; left: 10px; font-family: "Roboto", arial, sans-serif; font-size: 14px; font-weight: 700; border: 1px solid transparent; }

.wp-pagenavi a:after, .wp-pagenavi span:after { content: ''; position: absolute; width: 8px; height: 2px; margin: 0 auto; left: 0; right: 0; bottom: 7px; background-color: currentColor; }

.wp-pagenavi a { transition: border-color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.wp-pagenavi a:hover { border: 1px solid #cdecfb; background-color: #f0f9fd; }

.wp-pagenavi .pages, .wp-pagenavi .first, .wp-pagenavi .last { display: none; }

.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink { position: absolute; display: inline-block; padding: 1px 0 0; top: 50%; font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; line-height: 1.3; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); transition: color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.wp-pagenavi .previouspostslink:hover, .wp-pagenavi .nextpostslink:hover { color: rgba(51, 51, 51, 0.5); border-color: transparent; background-color: transparent; }

.wp-pagenavi .previouspostslink:before, .wp-pagenavi .nextpostslink:before { content: ''; position: absolute; display: inline-block; width: 10px; height: 10px; top: 22%; border-bottom: 3px solid #039eec; transition: -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); -webkit-backface-visibility: hidden; backface-visibility: hidden; }

.wp-pagenavi .previouspostslink:after, .wp-pagenavi .nextpostslink:after { content: none; }

.wp-pagenavi .previouspostslink > span, .wp-pagenavi .nextpostslink > span { margin: 0; padding: 0; left: 0; }

.wp-pagenavi .previouspostslink > span:after, .wp-pagenavi .nextpostslink > span:after { content: none; }

.wp-pagenavi .previouspostslink__sp, .wp-pagenavi .nextpostslink__sp { display: none; }

.wp-pagenavi .previouspostslink { padding-left: 26px; left: -1px; }

.wp-pagenavi .previouspostslink:hover:before { -webkit-transform: rotate(45deg) translate3d(-2px, 2px, 0); transform: rotate(45deg) translate3d(-2px, 2px, 0); }

.wp-pagenavi .previouspostslink:before { left: 0; border-left: 3px solid #039eec; -webkit-transform: rotate(45deg) translate3d(0, 0, 0); transform: rotate(45deg) translate3d(0, 0, 0); }

.wp-pagenavi .nextpostslink { padding-right: 26px; left: auto; right: -3px; }

.wp-pagenavi .nextpostslink:hover:before { -webkit-transform: rotate(-45deg) translate3d(2px, 2px, 0); transform: rotate(-45deg) translate3d(2px, 2px, 0); }

.wp-pagenavi .nextpostslink:before { right: 0; border-right: 3px solid #039eec; -webkit-transform: rotate(-45deg) translate3d(0, 0, 0); transform: rotate(-45deg) translate3d(0, 0, 0); }

.wp-pagenavi .extend { margin: 0; letter-spacing: .1em; }

.wp-pagenavi .extend:after { content: none; }

.wp-pagenavi .current { border: 1px solid #cdecfb; background-color: #f0f9fd; }

/* 特殊ブレークポイント */
@media screen and (max-width: 989px) { .wp-pagenavi .previouspostslink__pc, .wp-pagenavi .nextpostslink__pc { display: none; }
  .wp-pagenavi .previouspostslink__sp, .wp-pagenavi .nextpostslink__sp { display: inline-block; } }

@media screen and (max-width: 767px) { .wp-pagenavi { min-height: 104px; margin-top: 35px; }
  .wp-pagenavi a, .wp-pagenavi span { margin: 0 5px 0 6px; padding: 6px 13px 8px; left: 4px; font-size: 13px; }
  .wp-pagenavi a:after, .wp-pagenavi span:after { bottom: 6px; }
  .wp-pagenavi a:nth-last-of-type(4) { display: none; }
  .wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink { width: 48%; margin: 0; padding: 16px 10px 15px; top: auto; bottom: 0; border: 1px solid #cdecfb; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
  .wp-pagenavi .previouspostslink:hover:before, .wp-pagenavi .nextpostslink:hover:before { -webkit-transform: none; -ms-transform: none; transform: none; }
  .wp-pagenavi .previouspostslink:hover > span, .wp-pagenavi .nextpostslink:hover > span { color: #333; }
  .wp-pagenavi .previouspostslink:before, .wp-pagenavi .nextpostslink:before { top: 49%; }
  .wp-pagenavi .previouspostslink > span, .wp-pagenavi .nextpostslink > span { font-size: 14px; }
  .wp-pagenavi .previouspostslink { margin-right: 1px; left: 0; }
  .wp-pagenavi .previouspostslink:before { left: 16px; -webkit-transform: rotate(45deg) translate3d(0, -60%, 0); transform: rotate(45deg) translate3d(0, -60%, 0); }
  .wp-pagenavi .nextpostslink { right: 0; }
  .wp-pagenavi .nextpostslink:before { right: 12px; -webkit-transform: rotate(-45deg) translate3d(0, -60%, 0); transform: rotate(-45deg) translate3d(0, -60%, 0); }
  .wp-pagenavi .extend { padding: 0 4px 0 17px; } }

.video__featured { margin-top: 50px; width: 100%; height: auto; }

@media screen and (max-width: 767px) { .video__featured { margin-top: 30px; } }

.video__list { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch; margin: 29px -5px 0; }

.video__item { width: 33.3333%; margin-top: 15px; padding: 0 5px; }

@media screen and (max-width: 767px) { .video__item { width: 50%; margin-top: 3px; } }

.youtube-item { margin-bottom: 8px; transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), box-shadow 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); }

.youtube-item:not(.is-current):hover .youtube-item__thumb { border: 6px solid #039eec; }

.youtube-item__thumb { height: 134px; position: relative; border: 6px solid #fff; transition: border 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); box-shadow: 2px 3px 15px 0 rgba(162, 202, 240, 0.4); overflow: hidden; background-size: cover; background-repeat: no-repeat; background-position: center; }

@media screen and (max-width: 767px) { .youtube-item__thumb { height: 100%; padding-top: 75%; box-shadow: 6px 6px 27px 3px rgba(162, 202, 240, 0.3); } }

.youtube-item__thumb__img-pc { position: absolute; top: 50%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); margin-top: -6px; }

@media screen and (max-width: 767px) { .youtube-item__thumb__img-pc { display: none; } }

.youtube-item__thumb__img-spc { display: none; }

@media screen and (max-width: 767px) { .youtube-item__thumb__img-spc { display: block; } }

.youtube-item__head { font-size: 14px; margin-top: 12px; letter-spacing: -0.15em; }

@media screen and (max-width: 767px) { .youtube-item__head { display: none; } }

.youtube-item.is-current .youtube-item__thumb { border: 6px solid #039eec; }

.featured-video__inner { font-size: 0; width: 100%; position: relative; padding-bottom: 56.25%; text-align: center; box-shadow: 2px 3px 15px 0 rgba(162, 202, 240, 0.4); }

.featured-video__inner iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.featured-video__plus-icon { display: none; }

@media screen and (max-width: 767px) { .featured-video__plus-icon { display: block; position: absolute; top: -22px; left: -10px; }
  .featured-video__plus-icon svg { width: 13px; height: 13px; fill: #039eec; } }

.featured-video__number { display: none; }

@media screen and (max-width: 767px) { .featured-video__number { display: block; position: absolute; top: -11px; left: -2px; font-family: "Roboto", arial, sans-serif; font-size: 43px; font-weight: 300; letter-spacing: -0.13em; }
  .featured-video__number span:first-child { color: #333; }
  .featured-video__number span:last-child { margin-left: 4px; color: #039eec; } }

.featured-video__title { position: relative; margin-top: 62px; }

@media screen and (max-width: 767px) { .featured-video__title { margin-top: 59px; } }

.featured-video__title__text { font-size: 22px; font-weight: bold; color: #fff; background-color: #039eec; padding: 0.5em; margin-left: 3px; outline: none; }

@media screen and (max-width: 767px) { .featured-video__title__text { line-height: 1.5; font-size: 19px; letter-spacing: 0.19em; margin-left: 0; display: block; } }

.featured-video__description { min-height: 120px; font-size: 16px; letter-spacing: 0.022em; line-height: 1.9; margin-top: 22px; }

@media screen and (max-width: 767px) { .featured-video__description { letter-spacing: 0.1em; } }

.not-found { display: block; margin-top: 100px; }

@media screen and (max-width: 767px) { .not-found { margin-top: 50px; } }

.not-found__inner { width: 100%; margin: auto; }

.not-found__inner .card-list__item:first-child { text-align: right; }

@media screen and (max-width: 767px) { .not-found__inner .card-list__item:first-child { margin-bottom: 21px; } }

@media screen and (max-width: 767px) { .not-found__inner .card-list__item:last-child { margin-bottom: 25px; } }

.not-found__text { font-size: 22px; font-weight: bold; text-align: center; margin-bottom: 66px; }

@media screen and (max-width: 767px) { .not-found__text { margin-bottom: 42px; } }

.not-found .list { max-width: 420px; margin: 0 auto 68px; }

@media screen and (max-width: 767px) { .not-found .list { margin-bottom: 42px; } }

@media screen and (max-width: 767px) { .not-found .list__item { font-size: 18px; } }
/*# sourceMappingURL=maps/style.css.map */

/*----- 20190705追記 お知らせギャラリー機能 -----*/
.gallery { /** ギャラリーを囲むボックス **/
	width: 100%;
	margin-bottom: 20px !important;
    overflow: hidden;
}

.gallery-item { /** 画像共通のスタイル **/
    float: left;
	margin-bottom: 0 !important;
}
.gallery-icon { /** 画像を囲む dt のスタイル **/
    text-align: center;
}

.gallery-icon img {
	width: 100%;
	height: auto;
	border: none !important;
	margin-bottom: 10px !important;
}

.gallery-caption { /** キャプション **/
    color: #222;
    font-size: 15px;
    margin: 0 0 10px;
    text-align: center;
}

.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100% !important;
    margin-right: 0 !important;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 48% !important;
	margin: 0 1% !important;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 31.33333% !important;
	margin: 0 1% !important;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 23% !important;
    margin: 0 1% !important;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 18% !important;
    margin: 0 1% !important;
}

@media screen and (max-width: 640px) {
	/* 640px以下用の記述 */
	.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
		width: 48% !important;
		margin: 0 1% !important;
	}
	.gallery-columns-5 .gallery-item {
		width: 31.33333% !important;
		margin: 0 1% !important;
	}
}

.article__content h1 { margin-bottom: 50px; border-bottom: solid 3px #d9edf7; position: relative; font-size: 25px; line-height: 2; }

.article__content h1:before { position: absolute;  content: " ";  display: block;  border-bottom: solid 3px #039eec;  bottom: -3px;  width: 30%; }

/**2020.03.12 GSバナー**/
@media screen and (max-width: 910px) { 
    .header { position: fixed; }
    .header__menu { display: none; }
    .header__inner { padding: 12px 0 8px; overflow: visible; border-bottom: 1px solid #cdecfb; }
    .header__logo { padding: 0 15px; text-align: left; }
    .header__side-block { 
        display: table-cell;
        position: absolute;
        top: 25%;
        right: 20px;
        height: 82px;
    }
}
@media screen and (max-width: 767px) { .l-wrapper__inner:before, .l-wrapper__inner:after { content: none; }
  .l-wrapper__inner-border { display: none; }
    .header__logo {
        padding: 0 15px;
    }
    .header__side-block {
    top: 10px !important;
    right: 10px !important;
    }
    .header__menu--sp.is-open {
        top: 60px;
    }
}
.gsbanner{
    margin-bottom: 30px;
}
.header__buttonb { -webkit-flex-shrink: 0; -ms-flex-negative: 0; flex-shrink: 0; width: 245px; margin-left: 1%; }

.header__buttonb .button {
    position: relative;
    border-radius: 30px;
    border: 2px solid #039eec;
    background-color: #fff;
    overflow: hidden;
    transition: background-color 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.header__buttonb .button:hover{
    background-color: #fffad7;
}
.header__buttonb .button__icon {
    position: absolute;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin: auto 0;
    top: 0;
    left: 10px;
    bottom: 0;
    border-radius: 50%;
    color: #fff;
    background-color: #039eec;
    overflow: hidden;
}
.header__buttonb .button__text {
    position: relative;
    display: table;
    left: 12px;
    font-size: 14px;
    font-weight: 700;
    color: #039eec;
    margin: auto;
    text-align: left;
    line-height: 1.3em;
}
.header__buttonb .button__inner {
    display: block;
    width: 100%;
    padding: 8px 0;
    text-align: center;
}

/****20200409電話再診サービス*****/
.tel__inner p{ color: #333; line-height: 1.75em;
    margin-bottom: 15px;
    font-size: 16px;}
.list__item span{
    color: #039eec;
    font-weight: bold;
    border-bottom: solid 2px #039eec;
}
.tel--area .tel__numb {
    display: table;
    margin-top: 5px;
    font-size: 36px;
    color: #039eec;
    margin: 0 auto;
}
.namb_tel{
    display: inline-table;
    border-bottom: solid 2px #039eec;
}
.tel--area .namb_box {
    display: inline-table;
    padding: 6px 10px;
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 0;
    vertical-align: top;
    color: #fff;
    background-color: #039eec;
        margin-right: 10px;
}
.list__title{
    background-color: #CDECFB;
    color: #333;
    padding: 10px;
    display: inline-block;
    margin: 15px 0 5px;
    font-weight: bold;
    font-size: 16px;
}
.list__item small{
    display: block;
    line-height: 2em;
    font-size: 14px;
    margin: 10px 0;
}
.step__content__block{
    margin-bottom: 20px;
}
ul.online_block{
    display: table;
    background-color: #FFFAD7;
    padding: 20px;
    margin: 20px 0;
}
ul.online_block li{
    display: table-cell;
    vertical-align: middle;
}
ul.online_block h2{
    font-size: 1.54em;
    margin: 15px 0;
}
ul.online_block p{
    font-size: 16px;
    line-height: 1.75em;
}
.online_block img{
    width: 60px;
    margin-right: 15px;
}
.step__content-link-item .button-square{
    z-index: 2;
    background-color: #fff;
}
.guide_head{
    background-color: #FFFAD7;
    padding: 30px 20px;
    margin-bottom: 50px;
}
.guide_head img{
    width: 55px;
    margin-right: 10px;
}
.guide_head p{
    margin: 0 auto;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
}
.guide_head small{
    font-size: 16px;
    display: table;
    color: #FD0000;
    font-weight: bold;
    text-align: center;
    margin: 20px auto 0;
}
.online_block_red{
    font-size: 15px !important;
    display: table;
    color: #FD0000;
    font-weight: bold;
    text-align: left;
    margin: 20px 0;
}
.online_block_red span,.guide_head small span{
    display: inline;
    border-bottom: 1px solid #FD0000;
}
.duo_sp {
  position: relative;
  display: inline-block;
  margin: auto;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  font-size: 16px;
  background: #089FEC;
  border-radius: 15px;
    padding: 20px;
}
.sp{
    margin-bottom: 100px;
}
.duo_sp:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 10px solid #089FEC;
}

.duo_sp p {
  margin: 0;
  padding: 0;
}
.duo_sp li{
    display: table-cell;
    vertical-align: middle;
    font-weight: bold;
    line-height: 1.75em;
}
.duo_sp li img{
    width: 80px;
    margin-right: 15px;
}
ul.badge_inner{
   display: table;
    table-layout: fixed;
    text-align: center;
    width: 100%;
    border-collapse: separate;
    border-spacing: 20px 0;
    margin: 40px 0;
}
ul.badge_inner li{
    display: table-cell;
}
ul.badge_inner img{
    height: 50px;
    width: auto;
    margin: 20px 0;
}
ul .badge_box{
    border: 1px solid #CDECFB;
}
ul .badge_box li{
    display: contents;
}
ul .badge_box h1{
    background-color: #CDECFB;
    padding: 10px 0;
    border-collapse: separate;
    border-spacing: 20px 0;
}
.duo_jump{
    display: table;
    margin: 40px 0;
    width: 100%;
    border-collapse: separate;
    border-spacing: 20px 0;
}
.duo_jump li{
    display: table-cell;
    table-layout: fixed;
    text-align: center;
    background-color: #CDECFB;
    border: 1px solid #089FEC;
    padding: 10px;
    font-size: 16px;
}
.duoflow{
    display: flex;
    margin: 40px 0;
}
.duoflow section{
    flex: 1;
    vertical-align: top;
}
.duoflow .nam{
    background-color: #089FEC;
    color: #fff;
    font-weight: bold;
    font-size: 1.75em;
    text-align: center;
    height: 50px;
    width: 50px;
    border-radius: 50%;
    line-height: 50px;
    margin: 0 auto;
}
.duoflow img{
    width: auto;
}
.duoflow p{
    font-size: 16px;
    line-height: 1.75em;
    margin: 20px auto 40px;
    text-align: justify;
}
.duo_omake{
    max-width: 500px;
    margin: 0 auto;
}
.duo_omake p{
    font-size: 16px;
    line-height: 1.75em;
    font-weight: bold;
}
.duo_omake img{
    margin: 30px 0;
}
.duo_redbox{
    border: solid 1px #FD0000;
    padding: 10px 20px;
    display: table;
    color: #FD0000;
    font-weight: bold;
    margin: 0 auto 30px;
    font-size: 1.3em;
    line-height: 1.5em;
    text-align: center;
    font-weight: bold;
}

/**ipad***/
@media screen and (max-width: 767px){
    .list__item {
    text-align: left;
    }
    .sp{
        display: none;
    }
}
@media screen and (max-width: 489px){
    .tel--area .tel__numb {
        font-size: 20px;
        width: auto;
    }
    .tel--area .namb_box {
        font-size: 12px;
    }
    .duo_sp{
        display: grid!important;
    }
    .duo_sp li img {
    width: 60px;
    margin: 0 auto 10px;
    text-align: center;
    display: block;
}
    .duoflow {
    flex-direction: column;
    }
    .duoflow section {
    flex: 1;
    vertical-align: top;
    margin: 0 auto;
        text-align: center;
    }
    .badge_inner{
        display: grid!important;
    }
    .duoflow img {
    width: 80%;
    }
    .duoflow .nam{
            margin: 20px auto 0
    }
}
/****20200409トップ丸囲み*****/
.hero__circle{
    position: absolute;
    display: inline-block;
    right: 50px;
    bottom: 20px;
    height: 180px;
    width: 180px;
    border-radius:50%;
    text-align:center;
    border: 5px solid #efff00;
    background-color: #fff;
    margin: 15px auto;
    z-index: 2;
}
.hero__circle span{
    font-size: 1.3em;
    font-weight: bold;
    color: #333;
    line-height: 1.5em;
    vertical-align: middle;
    position: absolute;
    display: block;
    left: 0;
    right: 0;
    top: 57%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
}
.float{
    animation: img_box_9955 3s linear infinite;
  transform-origin: 50% 50%;
}
@media screen and (max-width: 768px){
.hero__circle {
    width:150px;
    height: 150px;
    right: 20px;
    bottom: 0px;
    }
    .hero__circle span{
        font-size: 15px;
    }
    ul.visit_list > li {
        width: 100%;
    }
    .visit_inner img{
        height: auto;
    }
    .visit_inner .svg {
        height: 200px;
    }
    ul.online_block li{
        display: contents;
    }
    .online_block img{
        margin-right: 0;
    }
    .step__content__block p{
        text-align: left;
    }
}
@media screen and (max-width: 540px){
.hero__circle {
    width: 100px;
    height: 100px;
    margin: inherit;
    right: 20px;
    border: 3px solid #efff00;
    bottom: 10px;
    }
    .hero__circle span{
        font-size: 12px;
    }
    @keyframes img_box_9955 {
      0% { transform: translateY(0) }
      33.33333% { transform: translateY(-3px) }
      66.66667% { transform: translateY(0) }
      100% { transform: translateY(0) }
    }
}



/***オンライン面会とクレジット 2020.5.20***/

.online_kouho {
    padding: 0;
    margin-bottom: 60px;
}
.online_kouho section {
    display: block !important;
}

.online_kouho_inner li span{
    margin-left: -30px;
}
.online_kouho_inner {
    display: flex;
    position: relative;
    border: 1px solid #cccccc;
    border-radius: 50px;
    margin-bottom: 10px;
}
.online_kouho_inner li {
    font-size: 18px;
    display: inline-block;
    line-height: 2em;
    margin-left: 45px;
}
.online_kouho_inner li:before {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    top: 12px;
    left: 20px;
    border-radius: 50%;
    background-color: #ff7d9b;
}
.online-list li{
    margin: 20px 0;
}
.online_kouho a{
    color: #039eec;
    font-weight: bold;
    border-bottom: 1px solid #039eec;
    font-size: 18px;
}
.credit_img{
    border: 1px solid #333;
    width: auto;
    display: table;
    margin: 20px auto 0;
}
.credit_img img{
    width: 100%;
}
.credit_bottom{
    margin-bottom: 40px;
}

@media screen and (max-width: 767px){
    
}
@media screen and (max-width: 400px){
    .online_kouho_inner{
        flex-direction: column;
    }
    .online_kouho_inner li {
        display: flex;
        }
    .online_kouho_inner li span {
        margin-left: 0px;
        margin-bottom: 10px;
    }
    .online_kouho_inner li:before{
        top: 27px;
    }
}


/* 介護医療院　2024.2.29 */

.nursingcare_box {
    background-color: #FFFDE1;
    border-radius: 10px;
    padding: 30px;
    margin-bottom: 30px;
    display: flex;
}

.nursingcare_box h5 {
    font-size: 25px;
    margin-bottom: 20px;
}

.nursingcare_box.medical h5 {
    color: #81BF66;
}

.nursingcare_box.care h5 {
    color: #F08D67;
}

.nursingcare_box img {
    width: 100%;
    min-width: 250px;
}

.nursingcare_box_inner {
    margin-right: 20px;
}

.nursingcare_box_inner p {
    margin-bottom: 20px;
    line-height: 1.75em;
    text-align: justify;
}

.nursingcare_box .nursingcare_box_list {
    padding-top: 20px;
}

.nursingcare_box.medical .nursingcare_box_list {
    border-top: 3px dotted #81BF66;  
}

.nursingcare_box.care .nursingcare_box_list {
    border-top: 3px dotted #F08D67;
}

.nursingcare_box .nursingcare_box_list li:before {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    top: 10px;
    left: 0;  
}

.nursingcare_box.medical .nursingcare_box_list li:before {
    background-color: #81BF66;
}

.nursingcare_box.care .nursingcare_box_list li:before {
    background-color: #F08D67;
}

.nursingcare_box .nursingcare_box_list li {
    position: relative;
    margin-top: 3px;
    padding-left: 19px;
    /* font-size: 16px; */
    line-height: 2; 
}

.nursingcare_box_list li span {
    font-size: 80%;
}

.nursingcare_plus img {
    display: block;
    margin: 0 auto 20px;
    width: 50px;
}

.comments {
    font-size: 80%;
}

@media screen and (max-width: 767px) {
    .nursingcare_box {
        flex-direction: column;
    }
    .nursingcare_box .nursingcare_box_list {
        margin-bottom: 20px;
    }
}

/* 保険外負担に係る費用　2024.4.26 */

#tablepress-17 tbody td,
#tablepress-18 tbody td,
#tablepress-19 tbody td,
#tablepress-20 tbody td,
#tablepress-21 tbody td,
#tablepress-22 tbody td,
#tablepress-23 tbody td {
     vertical-align: middle;
}

#tablepress-17 td.column-1 {
    width: 36%;
}

#tablepress-17 td.column-3 {
    width: 28%;
    text-align: right;
}

#tablepress-18 td.column-2,
#tablepress-19 td.column-2,
#tablepress-20 td.column-2,
#tablepress-21 td.column-2,
#tablepress-22 td.column-2 {
 width: 32%;
 text-align: right;
}

#tablepress-23 td.column-2 {
 width: 36%;
 text-align: right;
}

/*contact7フォーム*/
.form7_main{
	background-color: #f0f9fd;
	padding: 10px 60px;
	    margin: 40px 0;
}

select.wpcf7-form-control.wpcf7-select {
padding:10px;
height: 48px;
border-radius: 4px;
border: 1px solid #ddd;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
width: 100%;
padding:10px;
border-radius: 4px;
border: 1px solid #ddd;
background-color: #fff;

}

.wpcf7 p{
	line-height: 2em;
	font-size: 16px;
}

.wpcf7 .must{
	font-weight: bold;
	background: #039eec;
	color: #fff;
	padding: 5px;
}

/*contact7送信ボタン*/
.wpcf7-submit {
width:100%;
padding:20px;
border-radius:10px;
-webkit-border-radius: 10px;  
-moz-border-radius: 10px;
border: none;
box-shadow: 0 3px 0 #ddd;
background: #039eec;
transition: 0.3s;
color: #fff;
font-weight: bold;
}
.wpcf7-submit:hover {
background: #ddd;
transform: translate3d(0px, 3px, 1px);
-webkit-transform: translate3d(0px, 3px, 1px);
-moz-transform: translate3d(0px, 3px, 1px);
}

@media screen and (max-width: 700px) {
.wpcf7-submit {
  width: 100%;
}
.form7_main {
    padding: 10px 20px;
  }
}

.form_button__inner {
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

/*サイドバーコメント*/
.sidebar_cmt{
    padding-top: 10px;
    line-height: 1.7;
    font-size: 13px;
}
