@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Crimson+Text:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

:root {
	--number: 'Crimson Text', 'Noto Serif JP', serif;
	--serif: 'Noto Serif JP', Garamond, 'Yu Mincho', 'YuMincho', 'Meiryo', sans-serif;
	--serif-en: 'Crimson Text', 'Noto Serif JP', Garamond, 'Yu Mincho', 'YuMincho', 'Meiryo', serif;
	--sansserif: 'Noto Sans JP', 'Yu Gothic', "游ゴシック", 'YuGothic', "游ゴシック体", Hiragino Kaku Gothic ProN, 'Meiryo', sans-serif;
}

body { color: #494645; background: #ffffff; letter-spacing: .05em; line-height: 1.75; font-size: 14px; font-weight: 300; font-family: var(--sansserif); }
a { color: #214AB1; }
a:hover { color: #54bcdb; text-decoration: none; }
a img { border: none; }
select::-ms-expand { display: none; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 100%; margin-bottom: 20px; padding: 10px; font-size: 15px; line-height: 1.1em; border: 1px solid #eee; border-radius: 5px; }
select:focus { outline: 3px solid #214AB1; border-radius: 5px; overflow: hidden; }
[type=button], [type=reset], [type=submit], button { -webkit-appearance: button; }
button, input[type=button], input[type=image], input[type=reset], input[type=submit], select { cursor: pointer; }
button, input:not([type=checkbox]):not([type=radio]):not([type=number]), select, textarea { font-family: var(--sansserif); -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0; border: 1px solid #CCC; width: 100%;}
input[type=tel],input[type=email],input[type=text],textarea { padding:10px; }
::selection { background-color: rgba(241,237,231,0.88); }
::-moz-selection { background-color: rgba(241,237,231,0.88); }

@-webkit-keyframes zoomUp { 0% { -webkit-transform: scale(1.15); transform: scale(1.15); } 100% { -webkit-transform: scale(1); transform: scale(1); } }
@keyframes zoomUp { 0% { -webkit-transform: scale(1.15); transform: scale(1.15); } 100% { -webkit-transform: scale(1); transform: scale(1); } }
@-webkit-keyframes { 0%{ height: 0; top: 0; opacity: 0; } 30%{ height: 30px; opacity: 1; } 100%{ height: 0; top: 50px; opacity: 0; } }
@keyframes pathmove { 0%{ height: 0; top: 0; opacity: 0; } 30%{ height: 30px; opacity: 1; } 100%{ height: 0; top: 50px; opacity: 0; } }
@-webkit-keyframes scroll-point { 0% { bottom: 117px; opacity: 0; } 20% { opacity: 1; } 48% { bottom: 0; opacity: 1; } 70% { opacity: 0; } 100% { bottom: 0; opacity: 0; } }
@keyframes scroll-point { 0% { bottom: 117px; opacity: 0; } 20% { opacity: 1; } 48% { bottom: 0; opacity: 1; } 70% { opacity: 0; } 100% { bottom: 0; opacity: 0; } }
@-webkit-keyframes scroll-point-sp { 0% { bottom: 4.5em; opacity: 0; } 20% {  opacity: 1; } 40% {  bottom: 0; opacity: 1 ; } 70% { opacity: 0; } 100% {  bottom: 0; opacity: 0; } }
@keyframes scroll-point-sp { 0% { bottom: 4.5em; opacity: 0; } 20% {  opacity: 1; } 40% { bottom: 0; opacity: 1; } 70% {  opacity: 0; } 100% {  bottom: 0; opacity: 0; } }
@-webkit-keyframes scroll-point-zoom { 0% { opacity: 1; -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1); } 20% { opacity: 1; } 40%{ opacity: 0; -webkit-transform: scale(4); -moz-transform: scale(4); -ms-transform: scale(4); -o-transform: scale(4); transform: scale(4); } 70%{ opacity: 0; } 100%{ opacity: 0; -webkit-transform: scale(4); -moz-transform: scale(4); -ms-transform: scale(4); -o-transform: scale(4); transform: scale(4); } }
@keyframes scroll-point-zoom { 0% { opacity: 1; -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1); } 20% { opacity: 1; } 40%{ opacity: 0; -webkit-transform: scale(4); -moz-transform: scale(4); -ms-transform: scale(4); -o-transform: scale(4); transform: scale(4); } 70%{ opacity: 0; } 100%{ opacity: 0; -webkit-transform: scale(4); -moz-transform: scale(4); -ms-transform: scale(4); -o-transform: scale(4); transform: scale(4); } }
@-webkit-keyframes scroll-point-zoom-sp { 0% { opacity: 0; -webkit-transform: scale(.2) translateY(-50%) translateX(-50%); -moz-transform: scale(.2) translateY(-50%) translateX(-50%); -ms-transform: scale(.2) translateY(-50%) translateX(-50%); -o-transform: scale(.2) translateY(-50%) translateX(-50%); transform: scale(.2) translateY(-50%) translateX(-50%); } 40% {  -webkit-transform: scale(1) translateY(-50%) translateX(-50%); -moz-transform: scale(1) translateY(-50%) translateX(-50%); -ms-transform: scale(1) translateY(-50%) translateX(-50%); -o-transform: scale(1) translateY(-50%) translateX(-50%); transform: scale(1) translateY(-50%) translateX(-50%); } 50% { opacity: 1; } 100% { opacity: 0; -webkit-transform: scale(1) translateY(-50%) translateX(-50%); -moz-transform: scale(1) translateY(-50%) translateX(-50%); -ms-transform: scale(1) translateY(-50%) translateX(-50%); -o-transform: scale(1) translateY(-50%) translateX(-50%); transform: scale(1) translateY(-50%) translateX(-50%); } }
@keyframes scroll-point-zoom-sp { 0% { opacity: 0; -webkit-transform: scale(.2) translateY(-50%) translateX(-50%); -moz-transform: scale(.2) translateY(-50%) translateX(-50%); -ms-transform: scale(.2) translateY(-50%) translateX(-50%); -o-transform: scale(.2) translateY(-50%) translateX(-50%); transform: scale(.2) translateY(-50%) translateX(-50%); } 40% { -webkit-transform: scale(1) translateY(-50%) translateX(-50%); -moz-transform: scale(1) translateY(-50%) translateX(-50%); -ms-transform: scale(1) translateY(-50%) translateX(-50%); -o-transform: scale(1) translateY(-50%) translateX(-50%); transform: scale(1) translateY(-50%) translateX(-50%); } 50% {  opacity: 1; } 100% { opacity: 0; -webkit-transform: scale(1) translateY(-50%) translateX(-50%); -moz-transform: scale(1) translateY(-50%) translateX(-50%); -ms-transform: scale(1) translateY(-50%) translateX(-50%); -o-transform: scale(1) translateY(-50%) translateX(-50%); transform: scale(1) translateY(-50%) translateX(-50%); } }
@-webkit-keyframes arrow { 0% { transform: translateX(0px); } 49% { transform: translateX(1.5em); } 50% { transform: translateX(-.5em); } 100% { transform: translateX(0); } }
@keyframes arrow { 0% { transform: translateX(0px); } 49% { transform: translateX(1.5em); } 50% { transform: translateX(-.5em); } 100% { transform: translateX(0); } }

html, body, .header, .main, .footer { min-width: 1200px; }
.main-top {  }
.main-page { padding: 4.61538em 0 9.2857em; }
.page-content.col-one { width: 100%; }
.page-content.col-two { width: 860px; }
.sidebar { width: 280px; }

.disc{list-style: disc; padding-left: 20px;}
.disc li{list-style: disc;}

/* ヘッダー -----------------------------------------------------*/
.header { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 100%; background: #ffffff; border-bottom: 1px solid #f9eee4; z-index: 998; }
.header-logo { padding-right: 26px; }
.header-logo img { width: 100%; }
.header-logo a { display: block; width: 100%; font-size: 20px; }
.header-nav-sp { display: none; }
.header-top-navi,
.header-top-navi p,
.header-top-navi ul li { height: 50px; }
.header-top-navi p {margin-bottom: 0; font-family: var(--number); }
.header-top-navi p a { font-size: 1.6rem; letter-spacing: .05em; transition: ease .4s; }
.header-top-navi p a:hover { opacity: .8; }
.header-top-navi p a i { font-size: .9rem; transform: rotate(15deg); position: relative; top: -2px; }
.header-top-navi ul li:not(:last-child) { margin-right: 20px; }
.header-top-navi ul li a { font-size: 13px; color: #494645; vertical-align: middle; position: relative; }
.header-top-navi ul li a i { font-size: .8em; position: relative; top: -1px; }
.header-bottom-navi .menu { height: inherit; text-align: center; }
.header-bottom-navi .menu li a { color: #494645; letter-spacing: 0.05em; }
.header-bottom-navi .menu > li > a { position: relative; display: table-cell; height: 78px; padding: 0 15px; vertical-align: middle; line-height: 1.2; text-align: center; transition: all .4s; }
.header-bottom-navi .menu > li > a:hover { text-decoration: none; opacity: .8; }
.header-bottom-navi .menu > li:not(:first-child) > a::before { content: ''; position: absolute; left: -1px; top: 0; bottom: 0; right: auto; margin: auto; display: block; width: 1px; height: 1rem; background: #e6e6e6; }
.header-bottom-navi .menu > li > a > span { position: relative; }
.header-bottom-navi .menu > li > a > span::before { display: block; position: absolute; content: ""; left: 0; right: 0; bottom: -3px; margin: auto; width: 0; height: .2rem; background: linear-gradient(135deg,#214AB1,#f7e052); transition: ease .4s; }
.header-bottom-navi .menu > li.active > a > span::before { width: 100%; }
.header-bottom-navi .menu > li.current_page_item {  }
.header-bottom-navi .menu > li.active .sub-menu-icon { transform: rotate(180deg); }
.header-bottom-navi .sub-menu { display: flex; flex-wrap: wrap; justify-content: flex-start; width: 90%; padding: 2.5em 0; margin: auto; }
.header-bottom-navi .sub-menu > li { -ms-flex: 0 0 25%; flex: 0 0 25%; max-width: 25%; margin-bottom: 6px; padding-right: 22px; position: relative; }
.header-bottom-navi .sub-menu > li > a { display: block; position: relative; text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; transition: ease .4s; }
.header-bottom-navi .sub-menu > li > a:hover { text-decoration: none; opacity: .8; }
.header-bottom-navi .sub-menu > li > a > span::before { margin-right: 4px; color: #214AB1; font-size: .9rem; font-weight: 900; font-family: 'Font Awesome 5 Free'; content: '\f5c9'; }
.header-bottom-navi .sub-menu-icon { position: absolute; bottom: 16px; left: 0; right: 0; margin: auto; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid #214AB1; transition: all .4s; }
.header-bottom-navi .pc-nav-child { position: absolute; display: none; width: 100%; top: 126px; left: 0; right: 0; margin: auto; z-index: 999; border: 6px solid #f9eee4; border-radius: 30px; background: rgb(255 255 255 / 96%); }
.header-bottom-navi .pc-nav-child { min-width: 1200px; max-width: 1300px; }
.header-bottom-navi .menu-item-job .sub-menu > li::after { content: ''; display: block; width: 100%; padding-top: 66.667%; margin-top: 10px; border-radius: 16px; background: url(../images/sample_3-2.png); background-position: top center; background-size: 100%; background-repeat: no-repeat; }
.header-bottom-navi .menu-item-job .sub-menu > li:nth-child(1)::after { background-image: url(../images/staff/doctor01.jpg); }
.header-bottom-navi .menu-item-job .sub-menu > li:nth-child(2)::after { background-image: url(../images/staff/doctor02.jpg); }
.header-bottom-navi .menu-item-job .sub-menu > li:nth-child(3)::after { background-image: url(../images/staff/dh01.jpg); }
.header-bottom-navi .menu-item-job .sub-menu > li:nth-child(4)::after { background-image: url(../images/staff/tc01.jpg); }
.header-bottom-navi .menu-item-job .sub-menu > li:nth-child(5)::after { background-image: url(../images/staff/assistant01.jpg); }
.header-bottom-navi .menu-item-job .sub-menu > li:nth-child(6)::after { background-image: url(../images/staff/dt01.jpg); }
.header-tel a { transition: all .2s; }
.header-tel a:hover { transform: scale(1.06); }
.header-entry a { font-size: .7em; color: #ffffff; background: linear-gradient(135deg,#214AB1,#f7e052); width: 100%; transition: .9s all cubic-bezier(0.19, 1, 0.22, 1); position: relative; overflow: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; border: none; will-change: transform; }
.header-entry a::before { content: ''; display: block; position: absolute; width: 100%; height: 100%; opacity: 0; transition: .6s all cubic-bezier(0.19, 1, 0.22, 1); top: 0; left: 0; transform: rotate(-45deg); z-index: -1; background: #214AB1; }
.header-entry a:hover::before { opacity: 1; transform: scale(2) rotate(0deg); }
.header-entry i { font-size: 1.6rem; }
.header-entry .label-ja { font-weight: 400; }
.header-entry .label-en { font-weight: 400; font-family: var(--serif-en); color: #ffffff; letter-spacing: .1em; padding: 2px 30px 3px; border: 1px solid #ffffff; border-radius: .16rem; transition: ease .4s; }
.header-entry .entry-icon { background: url(../images/icon/header_entry.svg); background-size: 100%; background-position: center; }
.header.fixed { position: fixed; top: 0; left: 0; right: 0; border-bottom: 0; }
.header.fixed .header-top-navi { display: none!important; }
.header.fixed .header-bottom-navi .menu > li > a { height: 86px; }
.header.fixed .header-bottom-navi .pc-nav-child { top: 86px; }
.header.fixed .header-entry i { font-size: 1.4rem; }
.header.fixed .header-entry .label-ja { display: none; }
.header.fixed .header-entry a:hover .label-en { box-shadow: none; }


/* スマホメニュー -----------------------------------------------------*/
.sp-nav { display: none; position: fixed; z-index: 998; top: 0; left: 0; right: 0; width: 100%; padding-top: 76px; overflow: auto; background: rgba(255,255,255,.96); overflow-y: scroll; -webkit-overflow-scrolling: touch; overflow-x: hidden; }
.sp-nav .sp-nav-child { display: none; }
.sp-nav .menu { width: 84%; margin: 0 auto; }
.sp-nav .menu li,
.sp-nav .menu li a,
.sp-nav .menu li span { font-size: .9rem; font-weight: 300; font-family: var(--serif); color: #494645; line-height: 1.4; text-align: left; text-decoration: none; position: relative; }
.sp-nav-icon { width: 68px; height: 50px; display: block; text-align: center; }
.sp-entry-btn { position: fixed; top: .5em; right: calc(.5em + 68px); z-index: 997; }
.sp-entry-btn { background: linear-gradient(135deg,#214AB1,#f7e052); }
.sp-entry-btn i { position: absolute; top: 14px; left: 0; right: 0; margin: auto; color: #ffffff; font-size: .8rem; }
.sp-entry-btn span { position: absolute; left: 0; right: 0; top: auto; bottom: 10px; color: #ffffff; line-height: 1; font-size: .6rem; font-weight: 400; font-style: normal; transform: scale(.68); }
.sp-entry-btn span::before { content: 'ENTRY'; }
.sp-nav-btn { position: fixed; top: .5em; right: .5em; z-index: 999; }
.sp-nav-btn { background: #214AB1; }
.sp-nav-btn i { position: relative; top: 25px; font-size: 9px; font-style: normal; color: #494645; font-weight: 600; }
.sp-nav-btn i::before { content: 'MENU'; }
.sp-nav-btn.active i::before { content: 'CLOSE'; }
.sp-nav-btn span { position: absolute; left: 0; right: 0; margin: 0 auto; display: block; width: 20px; height: 1px; background: #ffffff; transition: all 0.4s; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; }
.sp-nav-btn span:nth-child(1) { top: 14px; }
.sp-nav-btn span:nth-child(2) { top: 38.5%; }
.sp-nav-btn span:nth-child(3) { bottom: 24px; }
.sp-nav-btn i { position: absolute; left: 0; right: 0; top: auto; bottom: 10px; color: #ffffff; line-height: 1; font-size: .6rem; font-weight: 400; font-style: normal; transform: scale(.68); }
.sp-nav-btn.active span:nth-child(1) { top: 16px; -webkit-transform: translateY(3px) rotate(210deg); -moz-transform: translateY(3px) rotate(210deg); -ms-transform: translateY(3px) rotate(210deg); transform: translateY(3px) rotate(210deg); }
.sp-nav-btn.active span:nth-child(2) { opacity: 0; }
.sp-nav-btn.active span:nth-child(3) { -webkit-transform: translateY(-6px) rotate(-210deg); -moz-transform: translateY(-6px) rotate(-210deg); -ms-transform: translateY(-6px) rotate(-210deg); transform: translateY(-6px) rotate(-210deg); }
.sp-close-btn { position: absolute; top: .5em; right: .5em; border: 1px solid #214AB1; }
.sp-close-btn i { position: absolute; left: 0; right: 0; top: auto; bottom: 10px; color: #214AB1; line-height: 1; font-size: .6rem; font-weight: 400; font-style: normal; transform: scale(.68); }
.sp-close-btn i::before { content: 'CLOSE'; }
.sp-close-btn span { position: absolute; left: 0; right: 0; margin: 0 auto; display: block; width: 20px; height: 1px; background: #214AB1; transition: all 0.4s; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; }
.sp-close-btn span:nth-child(1) { top: 14px; -webkit-transform: translateY(3px) rotate(210deg); -moz-transform: translateY(3px) rotate(210deg); -ms-transform: translateY(3px) rotate(210deg); transform: translateY(3px) rotate(210deg); }
.sp-close-btn span:nth-child(2) { opacity: 0; }
.sp-close-btn span:nth-child(3) { bottom: 24px; -webkit-transform: translateY(-6px) rotate(-210deg); -moz-transform: translateY(-6px) rotate(-210deg); -ms-transform: translateY(-6px) rotate(-210deg); transform: translateY(-6px) rotate(-210deg); }
.sp-nav-list { padding-top: 1.6em; border-top: 1px solid #f9eee4; }
.sp-nav-list .menu li {  }
.sp-nav-list .menu li a { display: inline-block; }
.sp-nav-list .menu li a span {  }
.sp-nav-list .menu > li { margin-bottom: 1em; padding: .5em 0 .5em 1.2em; }
.sp-nav-list .menu > li::before { content: ""; position: absolute; top: 1.16em; left: 0; display: block; width: .6em; height: 2px; background: #214AB1; }
.sp-nav-list .menu > li > a { max-width: calc(100% - 3em); }
.sp-nav-list .menu > li > a > span {  }
.sp-nav-list .sub-menu li,
.sp-nav-list .sub-menu li a,
.sp-nav-list .sub-menu li span { font-size: .96em; }
.sp-nav-list .sub-menu { margin-top: 1.2em; position: relative; }
.sp-nav-list .sub-menu > li { margin-bottom: .6em; }
.sp-nav-list .sub-menu > li:last-child { margin-bottom: 0; }
.sp-nav-list .sub-menu > li > a { display: block; position: relative; }
.sp-nav-list .sub-menu > li > a span { overflow: hidden; text-overflow: ellipsis; }
.sp-nav-list .sub-menu-bt { width: 2.1268em; height: 2.1268em; background: none; color: #214AB1; border-radius: 100%; border: 1px solid #214AB1; position: absolute; top: .152em; right: 0; z-index: 2; outline: none!important; }
.sp-nav-list .sub-menu-bt i { position: relative; }
.sp-nav-list .sub-menu-bt i::before,
.sp-nav-list .sub-menu-bt i::after { content: ''; position: absolute; top: 0; bottom: 0; left: -.3em; right: 0; margin: auto; width: .6em; border-top: 1px solid #214AB1; display: block; margin:0 auto; }
.sp-nav-list .sub-menu-bt i::after { transform:rotate(90deg); }
.sp-nav-list .sub-menu-bt.active i::after { opacity: 0; }
.sp-nav-job { padding: 2em 0 1.6em; border-top: 1px solid #f9eee4; background: #f1a3b2; }
.sp-nav-job .menu { display: flex; flex-wrap: wrap; justify-content: space-between; }
.sp-nav-job .menu > li { margin-bottom: 1em; -ms-flex: 0 0 46%; flex: 0 0 46%; max-width: 46%; position: relative; }
.sp-nav-job .menu > li::after { }
/* ここは167行目のBK .sp-nav-job .menu > li::after { content: ''; display: block; width: 100%; padding-top: 66.667%; margin-top: .6em; background: url(../images/sample_3-2.png); background-position: top center; background-size: cover; background-repeat: no-repeat; border: 3px solid #f9eee4; } */
.sp-nav-job .menu > li:nth-child(1)::after { background-image: url(../images/staff/doctor01.jpg); }
.sp-nav-job .menu > li:nth-child(2)::after { background-image: url(../images/staff/doctor02.jpg); }
.sp-nav-job .menu > li:nth-child(3)::after { background-image: url(../images/staff/dh01.jpg); }
.sp-nav-job .menu > li:nth-child(4)::after { background-image: url(../images/staff/tc01.jpg); }
.sp-nav-job .menu > li:nth-child(5)::after { background-image: url(../images/staff/assistant01.jpg); }
.sp-nav-job .menu > li:nth-child(6)::after { background-image: url(../images/staff/dt01.jpg); }
.sp-nav-job .menu > li > a,
.sp-nav-job .menu > li > a > span { color: #ffffff; }
.sp-nav-job .menu > li > a > span::before { content: "\f5c9"; font-family: 'Font Awesome 5 Free'; font-weight: 900; font-size: .6rem; color: #fff; position: relative; top: -.16em; margin-right: 4px; }
.sp-nav-logo img { width: 46%; margin: auto; display: block; position: relative; left: -.36em; }
.sp-nav-desc { margin-top: 4.6em; padding-top: 1.6em; border-top: 1px solid #f9eee4; }
.sp-nav-search  { padding: 1.6em 0; background: #f4f6f8; }
.sp-nav-search .search-1 { width: 84%; margin: 0 auto; }


/* メイン -----------------------------------------------------*/
.mainvisual, .mainvisual .container-ip,
.mainvisual .main-slide { position: relative; }
.main-content, .main-catch, .main-pgbar,
.main-thumbnail, .main-snsbtn, .main-scroll,
.main-copyright { position: absolute; z-index: 11; }
.main-catch,
.main-scroll .scroll-label,
.main-copyright small { color: #ffffff; font-family: var(--serif); text-shadow: #999 1px 1px 8px, #999 -1px 1px 8px; }
.mainvisual { margin-top: 128px; }
.mainvisual .container-ip { height: 100%; }
.main-content { width: 100%; height: 100%; margin: auto; }
.main-catch { left: 2.6em; bottom: 2em; font-size: 2.3rem; color: #ffffff; }
.main-catch span { font-size: 2.8rem; letter-spacing: .08em; }
.main-pgbar { left: 0; bottom: 1.6em; width: 50%; height: 2px; max-width: 100%; background: #ffffff; }
.main-pgbar .pgbar-inner { position: relative; height: 100%; }
.main-pgbar .bar { position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: #214AB1; transform: scaleX(0); transform-origin: 0 0; transition: transform 8s linear; }
.main-thumbnail { display: table; right: 4em; bottom: -2.5em; padding: .38462em; background: #ffffff; }
.main-thumbnail .swiper-container { overflow: visible; }
.main-thumbnail .swiper-slide { width: 90px!important; }
.main-thumbnail .slide-img::before { content: ""; position: absolute; top: -.38462em; left: 50%; visibility: hidden; width: 1.38462em; height: .38462em; background: #54bcdb; opacity: 0; -webkit-transition: all .5s cubic-bezier(.215,.61,.355,1); transition: all .5s cubic-bezier(.215,.61,.355,1); -webkit-transition-property: opacity,-webkit-transform; transition-property: opacity,-webkit-transform; transition-property: opacity,transform; transition-property: opacity,transform,-webkit-transform; -webkit-transform: translateX(-50%); transform: translateX(-50%); }
.main-thumbnail .swiper-slide-thumb-active .slide-img::before { visibility: visible; opacity: 1; }
.main-snsbtn { top: 0; right: 0; width: 5.38462em; height: 100%; }
.main-snsbtn ul { overflow: hidden; background: #fff; margin-bottom: -.76923em; border-radius: 20px; box-shadow: 0 0 3em rgb(0 0 0 / 8.25%); }
.main-snsbtn ul > li { width: 100%; }
.main-snsbtn ul > li > a { color: #214AB1; margin: 0 auto; width: 2.30769em; height: 2.30769em; transition: background .2s cubic-bezier(.25,.46,.45,.94); cursor: pointer; }
.main-snsbtn ul > li .fb { width: 1.26308em; position: relative; left: -.06em; }
.main-snsbtn ul > li .yt { width: 1.12308em; }
.main-snsbtn ul > li .tw { width: .92308em; }
.main-snsbtn ul > li:not(:first-child) { border-top: 1px solid #f9eee4; }
.main-scroll { top: 0; right: 0; width: 5.38462em; height: 100%; overflow: hidden; }
.main-scroll .scroll-inner { position: relative; bottom: -66px; padding-bottom: 136px; margin: 0 auto; -ms-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; -webkit-box-orient: vertical; -webkit-box-direction: normal; -moz-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; }
.main-scroll .scroll-inner::before { content: ""; position: absolute; bottom: 0; left: -1px; right: 0; margin: 0 auto; width: 1px; height: 117px; background: #ffffff; }
.main-scroll .scroll-label { font-size: .8rem; }
.main-scroll .scroll-point { position: absolute; left: -1px; right: 0; width: 7px; height: 7px; bottom: 6.5rem; margin: auto; -webkit-animation: scroll-point 2.6s ease-out infinite; animation: scroll-point 2.6s ease-out infinite; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.main-scroll .scroll-point::after,
.main-scroll .scroll-point::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; backface-visibility: hidden; border-radius: 50%; background: #214AB1; }
.main-scroll .scroll-point::before { z-index: 0; background: rgba(255,255,255,.2); -webkit-animation: scroll-point-zoom 2.6s ease-out infinite; animation: scroll-point-zoom 2.6s ease-out infinite; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.main-copyright { top: 0; left: 0; width: 6.69231em; height: 100%; -ms-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; -moz-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; }
.main-slide .swiper-slide { overflow: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.main-slide .swiper-slide-active .slide-img,
.main-slide .swiper-slide-duplicate-active .slide-img,
.main-slide .swiper-slide-prev .slide-img { -webkit-animation: zoomUp 12s linear 0s; animation: zoomUp 12s linear 0s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.main-slide .slide-img { background-size: cover;  background-position: center center; }
.main-slide .slide-img img { max-width: none; width: 100%; }

.main-breadcrumb { padding: .89286em; background: #fffaf6; font-size: .8em; }
.main-breadcrumb i { color: #214AB1; }
.main-breadcrumb li { margin: .4em 0; line-height: 1.4; }
.main-breadcrumb li::after { margin-right: 10px; margin-left: 10px; content: '>'; position: relative; top: -1px; }
.main-breadcrumb li:last-child::after { content: none; }

.main-header { position: relative; }
.main-header-bg { width: 100%; height: 27.143em; position: absolute; top: 0; left: 0; overflow: hidden; -webkit-transition: all .6s linear; transition: all .6s linear; -webkit-transition-property: opacity,visibility; transition-property: opacity,visibility; }
.main-header-bg span { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; background-position: center center; background-size: cover; background-repeat: no-repeat; }
.main-header-bg img { visibility: hidden; opacity: 0; }
.main-header-box { height: 27.143em; padding-bottom: 4.07692em; color: #ffffff; }
.main-header-box .label-en span { border-bottom: 1px solid #ffffff; letter-spacing: .08em; font-family: var(--serif-en); }
.main-header-box .label-ja { margin-top: .25em; line-height: 1.4; letter-spacing: .08em; font-size: 2rem; font-family: var(--serif); }


/* トップページ -----------------------------------------------------*/
.top-about { margin-top: 10.6em; padding: 6.6em 0; background: url(../images/about_bg.png) top center / cover no-repeat; }
.top-about .top-about-box { padding: 6.6em 6.6em; }
.top-about .about-navi ul > li { margin-right: 1em; text-align: center; }
.top-about .about-navi ul > li:last-child { margin-right: 0; }

.top-day { margin-top: 10.6em; }

.top-voice { margin-top: 10.6em; }
.top-voice .voice-item a { display: block; color: #494645; padding: 1.8em; border: 1px solid #f9eee4; }
.top-voice .voice-item a:hover .voice-bg::before { transform: scale(1.05); }
.top-voice .voice-item a:hover .voice-more::after { transform: translateX(1.5em); }
.top-voice .voice-thumb { margin-bottom: 1em; }
.top-voice .voice-thumb .voice-bg { width: 80%; margin: auto; }
.top-voice .voice-thumb .voice-bg::before { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; margin: auto; width: 100%; height: 100%; border-radius: 100%; background: linear-gradient(135deg,#214AB1,#f7e052); opacity: .5; content: ""; transition: all .4s; }
.top-voice .voice-thumb img { position: relative; z-index: 2; width: 100%; border-radius: 100%; }
.top-voice .voice-titl { font-size: 1.2rem; font-family: var(--serif); line-height: 1.4; margin-bottom: .6em; }
.top-voice .voice-summary { height: 8.6em; margin-bottom: 2em; overflow: hidden; }
.top-voice .voice-summary::after { content: '…'; position: absolute; z-index: 2; bottom: 0; right: 0; padding: 0 .5em; background: #ffffff; }
.top-voice .voice-more { display: block; padding-top: 1.5em; border-top: 1px solid #f9eee4; color: #214AB1; font-family: var(--serif-en); }
.top-voice .voice-more::after { content: ''; display: inline-block; width: 6em; height: 1em; margin-left: 1em; background: url(../images/icon/arrow2.svg) center / 100% no-repeat; transition: ease .4s; }

.top-feature {padding: 6.6em 0; }
.top-feature .top-feature-box { padding: 2.6em 0; background: #214AB1; color: #ffffff; }
.top-feature .feature-item { padding: 0 1.8em; position: relative; z-index: 3; }
.top-feature .feature-item:not(:last-child)::before { content: ""; position: absolute; top: 0; right: 0; margin: auto; display: block; width: 1px; height: 100%; background: #ffffff; }
.top-feature .feature-thumb { margin-bottom: 1rem; }
.top-feature .feature-titl { font-size: 1.4rem; font-family: var(--serif); line-height: 1.4; letter-spacing: .08em; width: 100%; margin-bottom: 1rem; }
.top-feature .feature-titl span { font-size: 2rem; font-weight: 300; font-family: var(--number); line-height: 1; margin-bottom: .2em; display: block; }
.top-feature .feature-titl em { font-size: 1rem; font-style: normal; margin-right: .2em; }
.top-feature .feature-summary { line-height: 1.8; }
.top-feature .feature-summary { height: 75px; margin-bottom: 2em; overflow: hidden; }
.top-feature .feature-summary::after { content: '…'; position: absolute; z-index: 2; bottom: 0; right: 0; padding: 0 .5em; background: #214AB1; }
.top-feature .button-5 a { background: #ffffff; }

.top-clinic { height: 43em; overflow: hidden; }
.top-clinic .top-clinic-box { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; width: 100%; height: 100%; }
.top-clinic .clinic-slide { position: relative; z-index: -1; width: 100%; opacity: .6; }
.top-clinic .clinic-slide .slider img { filter: blur(3px); }
.top-clinic .swiper-slide { overflow: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.top-clinic .swiper-slide-active .slide-img,
.top-clinic .swiper-slide-duplicate-active .slide-img,
.top-clinic .swiper-slide-prev .slide-img { -webkit-animation: zoomUp 12s linear 0s; animation: zoomUp 12s linear 0s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.top-clinic .slide-img { background-size: cover;  background-position: center center; }
.top-clinic .slide-img img { width: 100%; max-width: none; }
.top-clinic .swiper-pagination { position: absolute; top: 0; right: 0; margin: auto; width: 100%; max-width: 1200px; padding: 3.07692em; text-align: right; }
.top-clinic .swiper-pagination span { margin: 0 .15385em 0; opacity: 1; }
.top-clinic .swiper-pagination-bullet { background: #ffffff; }
.top-clinic .swiper-pagination-bullet-active { background: #214AB1; }
.top-clinic .top-clinic-head { height: 33em; }
.top-clinic .clinic-content { height: 880px; margin-top: 6.92308em; background: #214AB1; }
.top-clinic .clinic-summary { margin-top: 2em; line-height: 2; }
.top-clinic .clinic-btn { position: absolute; width: 100%; right: 0; bottom: -1em; }
.top-clinic .clinic-btn ul { position: absolute; right: 0; bottom: 2rem; width: 100%; text-align: right; }
.top-clinic .clinic-btn li:first-child { margin-bottom: 1rem; }
.top-clinic .clinic-btn li:nth-child(1) a { background: #214AB1; color: #ffffff; }
.top-clinic .clinic-btn li:nth-child(1) span::after { background: #ffffff; }
.top-clinic .button-6 a:hover { background: #ffffff; }
.top-clinic .button-6 a { display: block; width: 100%; padding-right: 0; padding-left: 0; }

.top-job { padding-top: 10.6em; }
.top-job .top-job-box { border-top: 1px solid #f9eee4; border-bottom: 1px solid #f9eee4; }
.top-job .top-job-box::before { content: ""; position: absolute; top: 0; left: 0; right: 0; margin: auto; display: block; width: 100%; height: 1px; background: #f9eee4; }
.top-job .button-4 { position: absolute; top: 0; right: 0; bottom: 0; margin: auto; height: 32px; }
.top-job .job-item { transition: all .4s;}
.top-job .job-item a { height: 100%; padding: 4em 3em 4em; color: #494645; border-left: 1px solid #f9eee4; display: block; cursor: pointer; transition: ease .4s; }
.top-job .job-item a:hover { border-color: transparent; }
.top-job .job-item:last-child { border-right: 1px solid #f9eee4; }
.top-job .job-item .job-desc { margin-top: 1.4em; }
.top-job .job-item .job-titl { font-size: 1.2rem; font-family: var(--serif); letter-spacing: .08em; margin-bottom: .7em; }
.top-job .job-item .job-titl i { font-size: 1rem; color: #214AB1; position: relative; top: -2px; }
.top-job .job-item .sub-titl { font-size: .7rem; padding-left: 5px;}
.top-job .job-item .job-summary { margin: .7em 0 0; }

.top-blog { margin-top: 10em; overflow: hidden; }
.top-blog .slick { padding: .7em 2.2em; }
.top-blog .slick *:focus { outline: 0!important; }
.top-blog .slick-slider { position: static; }
.top-blog .slick-list { overflow: visible; }
.top-blog .slick-list li { margin: 0 1em; }
.top-blog .slick-arrow { display: block; position: absolute; top: 16px; z-index: 10; margin: auto 0; width: 2rem; height: 2rem; background: #f4f6f8; border: 1px solid #f9eee4; border-radius: 50%; transform: translateY(-50%); cursor: pointer; font-size: 0; transition: all .2s; }
.top-blog .slick-arrow:hover { background: #ffffff; box-shadow: 0 0 10px rgb(241 169 128 / 20%); }
.top-blog .slick-prev { right: 160px; }
.top-blog .slick-next { right: 120px; }
.top-blog .slick-arrow::before { display: block; content: ''; position: absolute; top: 3px; bottom: 0; left: 0; right: 0; margin: auto; width: 10px; height: 10px; }
.top-blog .slick-prev::before { background: url(../images/icon/arrow_l.svg) 0 0 / 100% no-repeat; }
.top-blog .slick-next::before { background: url(../images/icon/arrow_r.svg) 0 0 / 100% no-repeat; }
.top-blog .blog-list p { margin-bottom: 0; }
.top-blog .blog-list li > a { color: #494645; }
.top-blog .blog-list li > a:hover img { opacity: 1; box-shadow: 0 .3rem 1rem 0 rgba(0,0,0,.2); }
.top-blog .blog-list li > a:hover .img { transform: scale(.96); box-shadow: 0 0 3em rgb(0 0 0 / 33%); }
.top-blog .blog-list li > a:hover .img-inner { transform: scale(1.1); }
.top-blog .blog-list li .img { width: 100%; padding-top: 66.667%; overflow: hidden; position: relative; transition: all .4s; }
.top-blog .blog-list li .img-inner { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; display: block; transition: all .4s; }
.top-blog .blog-list li .img-inner img { width: 100%; height: auto; }
.top-blog .blog-list li .img-inner::before { position: absolute; top: 0; left: 0; z-index: 1; display: block; width: 100%; height: 100%; background: -webkit-gradient(linear,left top,left bottom,color-stop(33%,rgba(0,0,0,0),to(#000))); background: -webkit-linear-gradient(top,rgba(0,0,0,0) 33%,#000); background: linear-gradient(180deg,rgba(0,0,0,0) 33%,#000); content: ""; opacity: .63; }
.top-blog .blog-list li .img-txt { position: absolute; bottom: 0; left: 0; width: 100%; padding: 0 1.53846em 1.47692em; z-index: 2; }
.top-blog .blog-list li .date { margin-bottom: 0.5rem; color: #494645; }
.top-blog .blog-list li .titl { font-size: 1.2rem; font-family: var(--serif); line-height: 1.4; color: #ffffff; }
.top-blog .blog-list li .txt { height: 76px; overflow: hidden; }
.top-blog .blog-list li .info { padding: 1.84615em 1.53846em 0; }
.top-blog .blog-list li .cate { margin-bottom: .5rem; }
.top-blog .blog-list li .cate span { padding: .4rem .8rem .46rem; border-radius: 1rem; color: #ffffff; line-height: 1; font-weight: 400; font-size: .68rem; display: inline-block; background: linear-gradient(135deg,#214AB1,#f7e052); }
.top-blog .button-4 { position: absolute; top: 0; right: 0; }

.top-news { margin-top: 10em; }
.top-news .top-news-box { padding-top: 6.69231em; }
.top-news .top-news-head { padding: 0 6.69231em 3.23077em; }
.top-news .top-news-cate li > span { margin: 0 .92308em; padding: .2em .76em .26em; border-radius: 1rem; cursor: pointer; }
.top-news .top-news-cate li.selected > span { color: #ffffff; background: #214AB1; transition: all .4s; }
.top-news .top-news-cate li.selected > .acunderline::after { content: none; }
.top-news .news-list { padding: 4.61538em 7.69231em 5.07692em; }
.top-news .news-list li::before { content: ''; display: block; width: 0; height: 0; border-top: .15em solid transparent; border-bottom: .15em solid transparent; border-left: 0.8em solid #214AB1; position: absolute; top: calc(50% - .1em); left: 1.75em; transition: .9s all cubic-bezier(0.19, 1, 0.22, 1); transform: translateX(-1em) scaleY(0); -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.top-news .news-list li:not(:first-child) { margin-top: 1rem; }
.top-news .news-list li > a { color: #494645; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.top-news .news-list li > a > span { display: inline-block; }
.top-news .news-list li .date { width: 7.5em; flex-shrink: 0; align-self: flex-start; }
.top-news .news-list li .cate { width: 10.5em; }
.top-news .news-list li .cate span { padding: .4em .8em .56em; border-radius: 1rem; border: 1px solid #214AB1; color: #214AB1; vertical-align: middle; line-height: 1.4; font-weight: 400; font-size: .68rem; display: inline-block; }
.top-news .news-list li .cate span + span { margin-left: 1rem; }
.top-news .news-list li .titl { font-size: 1.06rem; line-height: 1.4; display: inline; }
.top-news .news-list li .new { font-size: 0; position: relative; top: -6px; margin-left: 6px; display: inline-block; }
.top-news .news-list li .new img { width: 36px; height: 13px; margin-right: 5px;}
.top-news .news-list li:hover { opacity: .8; }
.top-news .news-list li:hover::before { transform: none; }
.top-news .news-list li:hover > a img { opacity: 1; }

.top-enviro { margin-top: 10.6em; }
.top-enviro .read-item { max-height: 28.6em; }
.top-enviro .enviro-item { margin-bottom: 2em; }
.top-enviro .enviro-item a { display: block; color: #494645; background: #ffffff; border: 6px solid #f9eee4; transition: ease .4s; }
.top-enviro .enviro-titl { position: absolute; top: 0; left: 0; display: inline-block; padding: .5em; background: #214AB1; color: #ffffff; line-height: 1.4; font-size: 1.17em; font-weight: 400; font-family: var(--serif); }

.top-picup { margin-top: 10.6em; margin-bottom: 11.53846em; }
.top-picup .read-item { max-height: 28.6em; }
.top-picup .top-picup-box { padding-bottom: 46px; }
.top-picup .picup-item:nth-child(1) a,
.top-picup .picup-item:nth-child(2) a { border-top: 1px solid #f9eee4; }
.top-picup .picup-item a { padding: 3.07692em; height: 100%; color: #494645; border-bottom: 1px solid #f9eee4; transition: ease .4s; }
.top-picup .picup-item .picup-titl { font-family: var(--serif); }
.top-picup .picup-item .picup-summary { margin: .46154em 0 0; }


/* フッター -----------------------------------------------------*/
.bottom-bnr ul > li { margin-bottom: 1rem; border: 1px solid #e6e6e6; }
/* .bottom-bnr { padding: 4.3em 0; } */
.bottom-bnr .slick { position: relative; }
.bottom-bnr .slick *:focus { outline: 0!important; }
.bottom-bnr .slick-list li { margin: 0 1em; }
.bottom-bnr .slick-arrow { display: block; position: absolute; top: 0; bottom: 0; z-index: 10; margin: auto; width: 2rem; height: 2rem; background: #f4f6f8; border: 1px solid #f9eee4; border-radius: 50%; cursor: pointer; font-size: 0; transition: all .2s; }
.bottom-bnr .slick-arrow:hover { background: #ffffff; box-shadow: 0 0 10px rgb(241 169 128 / 20%); }
.bottom-bnr .slick-prev { left: 0; }
.bottom-bnr .slick-next { right: 0; }
.bottom-bnr .slick-arrow::before { display: block; content: ''; position: absolute; top: 3px; bottom: 0; left: 0; right: 0; margin: auto; width: 10px; height: 10px; }
.bottom-bnr .slick-prev::before { background: url(../images/icon/arrow_l.svg) 0 0 / 100% no-repeat; }
.bottom-bnr .slick-next::before { background: url(../images/icon/arrow_r.svg) 0 0 / 100% no-repeat; }
.bottom-bnr .slick-dots { display: none!important; position: absolute; left: 0; right: 0; bottom: -36px; margin: auto; width: 100%; text-align: center; }
.bottom-bnr .slick-dots li { display: inline-block; border: none; }
.bottom-bnr .slick-dots li:not(:first-child) { margin-left: 16px; }
.bottom-bnr .slick-dots li button { width: 10px; height: 10px; padding: 0; font-size: 0; border: 0; border-radius: 100%; background: #999; }
.bottom-bnr .slick-dots .slick-active button { transform: scale(1.1); background: #214AB1; }
.bottom-contact ul > li { height: 30.76923em; }
.bottom-contact ul > li > a { height: 100%; color: #ffffff; text-align: center; cursor: pointer; transition: all .2s; }
.bottom-contact ul > li > a:hover .acunderline::after { width: 100%; }
.bottom-contact ul > li > a:hover .contact-btn i { animation: arrow .2s ease-in-out 1 alternate; }
.bottom-contact ul > li:nth-child(odd) > a { background: #efb28b; }
.bottom-contact ul > li:nth-child(odd) > a:hover { background: #f1ab7e; }
.bottom-contact ul > li:nth-child(even) > a { background: #ef92a4; }
.bottom-contact ul > li:nth-child(even) > a:hover { background: #214AB1; }
.bottom-contact .contact-titl > span { display: block; }
.bottom-contact .contact-titl .label-ja { font-size: .9rem; font-weight: 300; }
.bottom-contact .contact-titl .label-en { font-size: 2rem; font-weight: 500; font-family: var(--serif-en); line-height: 1.4; letter-spacing: .08em; margin: .21429em 0 .42308em; }
.bottom-contact .contact-txt { margin-bottom: 1.62308em; }
.bottom-contact .contact-btn > span { display: inline-block; padding: .6em 1.4em .8em; border: 1px solid #f9eee4; border-radius: 2rem; font-weight: 500; position: relative; overflow: hidden; transition: all .2s; }
.bottom-contact .acunderline::after { background: #ffffff; }
.footer-navi .container-ip { padding: 3.5rem 0 3.2rem; }
.footer-utility .container-ip { padding: 3.5rem 0 3.2rem; }
.footer-bottom .container-ip { padding: 3rem 0 6rem; }
.footer-utility a,
.footer-utility span { font-size: .6rem; font-weight: 400; color: #494645; display: block; }
.footer-utility i { color: #214AB1; }
.footer-utility ul > li { margin-left: 15px; }
.footer-sns ul > li:first-child { margin-left: 20px; }
.footer-sns ul > li img { width: 24px; }
.footer-logo img { width: 100%; }
.footer-copyright { text-align: right; line-height: 1; }
.footer-copyright small { font-weight: 400; font-size: .6rem; }


/* サイドバー -----------------------------------------------------*/
.sidebar {  }
.sidebar-box.fixed { position: sticky; top: 120px; border: 1px solid #DBEFF5;border-radius: 4px;}
.sidebar-titl { margin-bottom: 20px; line-height: 1.4; letter-spacing: .08em; font-size: 1.4rem; font-family: var(--serif); }
.sidebar-item:not(:last-child) { margin-bottom: 0;}
.sidebar-item:first-child{text-align: center;font-size: 18px; line-height: 1.2; background: linear-gradient(135deg,#214AB1,#54bcdb); color: #fff; font-weight: normal; letter-spacing: 1px; padding: 24px 5px 18px; border-radius: 4px 4px 0 0;}
.sidebar-item:first-child p{margin-bottom: 0;}
.sidebar-item:nth-child(2) .menu li{position: relative; display: block; background: #fff; border-bottom: 1px dashed #e6e6e6; font-size: 15px; letter-spacing: 1px; padding: 12px 5px 12px 25px; margin-bottom: 0;}
.sidebar-item:nth-child(2) .menu li:last-child{border-bottom:none;}
.sidebar-item label { visibility: hidden; display: block; width: 0; height:0; margin: 0; }
.sidebar-item select { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 100%; margin-bottom: 0; padding: 10px; font-size: 15px; line-height: 1.1em; border: 1px solid #eee; border-radius: 5px; font-family: var(--serif); }
.sidebar-item ul {  }
.sidebar-item ul > li { margin-bottom: 15px; padding-bottom: 10px; border-bottom: 1px solid #f9eee4; }
.sidebar-item ul > li > a { display: block; color: #494645; font-size: 1rem; }
.sidebar-item ul > li > a > span { display: block; }
.sidebar-item .menu {  }
.sidebar-item .menu li { position: relative; }
.sidebar-item .menu li a { }
.sidebar-item .menu > li { position: relative; }
.sidebar-item .menu > li > a {  }
.sidebar-item .menu > li > a::before { margin-right: 8px; color: #214AB1; font-size: .9rem; font-weight: 900; font-family: 'Font Awesome 5 Free'; content: '\f5c9'; }
.sidebar-item .sub-menu > li {  }
.sidebar-item .sub-menu > li > a {  }
.sidebar-item .date { color: #214AB1; font-size: .8em; font-family: var(--number); }
.sidebar-brn a { display: block; }
.sidebar-brn img { width: 100%; max-width: 100%; }


/* アーカイブ -----------------------------------------------------*/
.post-item { position: relative; display: block; margin-bottom: 24px; padding: 24px 28px; border-radius: 24px; background-color: #f4f6f8; font-family: 'Roboto',sans-serif; }
.post-item .date { margin-right: 16px; margin-bottom: 4px; color: #aaa; font-size: 12px; }
.post-item .titl { margin-bottom: 12px; }
.post-item .titl a { color: #4b4948; letter-spacing: .08em; font-size: 22px; text-decoration: none; font-family: 'M PLUS Rounded 1c', sans-serif; transition: all .4s ease; }
.post-item .titl a:hover { color: #214AB1; }
.post-item .cate { overflow: hidden; }
.post-item .cate span { display: inline-block; vertical-align: middle; font-size: 13px; background-color: #214AB1; color: #fff; line-height: 1; padding: 6px 12px 5px; border-radius: 16px; float: left; margin-right: 4px; margin-bottom: 4px; white-space: nowrap; }
.post-item .cate span a { color: #fff; }

.archive-content .post { position: relative; display: block; margin-bottom: 24px; padding: 24px 28px; border-radius: 24px; background-color: #f4f6f8; font-family: 'Roboto',sans-serif; }
.archive-content .date { margin-right: 16px; margin-bottom: 4px; color: #aaa; font-size: 12px; }
.archive-content .titl { margin-bottom: 12px; color: #4b4948; letter-spacing: .08em; font-size: 24px; text-decoration: none; font-family: 'M PLUS Rounded 1c', sans-serif; transition: all .4s ease; }
.archive-content .cate { margin-bottom: 40px; overflow: hidden; }
.archive-content .cate span { display: inline-block; vertical-align: middle; font-size: 13px; background-color: #214AB1; color: #fff; line-height: 1; padding: 6px 12px 5px; border-radius: 16px; float: left; margin-right: 4px; margin-bottom: 4px; white-space: nowrap; }
.archive-content .thumbnail { text-align: center; margin-bottom: 100px; }
.archive-content .thumbnail img { margin: 0 auto; }

/*ページネーション*/
.pagination { margin: 45px auto; font-size: 1.2em; font-family: var(--number); }
.pagination > a,
.pagination > span { margin-bottom: 15px; margin-right: 20px; padding: 0 15px; line-height: 43px; border: 1px solid #214AB1; }
.pagination .dots { padding: 0; border: none; }
.pagination .prev { margin-right: 20px; }
.pagination .prev,
.pagination .next { font-size: .8em; width: auto; padding: 0 10px; margin-bottom: 13px; border: 1px solid; display: block; text-align: center; }
.pagination .current { color: #214AB1; border-color: #214AB1; }
.pagination .prev-link,
.pagination .next-link,
.pagination .list-link { position: relative; width: auto; margin-bottom: 15px; margin-right: 20px; border: 1px solid #214AB1; line-height: 43px; }
.pagination .next-link { margin-right: 0; }
.pagination .prev-link a,
.pagination .next-link a,
.pagination .list-link a { font-size: .8em; padding: 0 15px; margin: 0; border: none; display: block; text-align: center; }
.pagination .prev-link a::before,
.pagination .next-link a::after { font-family: 'Font Awesome 5 Free'; font-weight: 900; }
.pagination .prev-link a::before { content: '\f104'; margin-right: 6px; }
.pagination .next-link a::after { content: '\f105'; margin-left: 6px; }


/* その他 -----------------------------------------------------*/

.fixed { position: fixed; top: 0; left: 0; right: 0; }

/*titl*/
.heading-1 { text-align: center; }
.heading-1 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; font-size: 2rem; font-family: var(--serif); }
.heading-1 .label-en { margin-bottom: 0; line-height: 1; margin-top: 1rem; color: #214AB1; letter-spacing: .08em; font-family: var(--serif-en); }
.heading-2 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; font-size: 2rem; font-family: var(--serif); }
.heading-2 .label-en { margin-bottom: 0; line-height: 1; margin-left: 4rem; color: #214AB1; letter-spacing: .08em; font-family: var(--serif-en); position: relative; top: .1em; }
.heading-2 .label-en::before { content: ""; position: absolute; top: 0; left: -2rem; bottom: 0; margin: auto; display: block; width: 1px; height: 32px; background: #f9eee4; }
.heading-3 .label-ja { margin-bottom: .2em; margin-right: 2em; margin-left: 2em; line-height: 1.4; letter-spacing: .08em; font-size: 1rem; font-family: var(--serif); position: relative; }
.heading-3 .label-ja::before { content: ""; position: absolute; top: 0; left: -1em; bottom: 0; margin: auto; display: block; width: 8px; height: 1px; background: #494645; }
.heading-3 .label-ja::after { content: ""; position: absolute; top: 0; right: -1em; bottom: 0; margin: auto; display: block; width: 8px; height: 1px; background: #494645; }
.heading-3 .label-en { margin-bottom: 0; line-height: 1; letter-spacing: .08em; font-size: 2.3rem; font-family: var(--serif-en); }
.heading-4 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; font-size: 2rem; font-family: var(--serif); }
.heading-4 .label-en { margin-bottom: 1.6em; line-height: 1; letter-spacing: .08em; font-family: var(--serif-en); position: relative; top: .1em; color: #214AB1; }
.heading-5 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; font-size: 2rem; font-family: var(--serif); padding-bottom: .9375em; border-bottom: 1px solid #f9eee4; }
.heading-5 .label-en { margin-bottom: 1.6em; line-height: 1; letter-spacing: .08em; font-family: var(--serif-en); position: relative; top: .1em; color: #214AB1; }
.heading-6{text-align: center; position: relative; font-family: var(--serif-en); font-size: .7rem; color: #54bcdb; padding-top: 15px;}
.heading-6::after{content: "";display:block; width:35px; height:1px; background-color:#54bcdb; position:absolute; bottom:0; left:50%;transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%);}
.heading--6{text-align: center; font-family: var(--serif); padding: 5px 0 20px;}
.heading--1 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; color: #214AB1; font-size: 1.2rem; font-family: var(--serif); text-align: center; display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; overflow: hidden; white-space: nowrap; }
.heading--1 .label-ja::before,
.heading--1 .label-ja::after { content: ''; display: block; width: 7em; height: 1px; background: linear-gradient(135deg,#214AB1,#f7e052); opacity: .5; }
.heading--1 .label-ja::before { margin-right: 1.4em; }
.heading--1 .label-ja::after { margin-left: 1.4em; }
.heading--2 { position: relative; padding-left: 1.8315em; }
.heading--2::before { position: absolute; top: 50%; left: 0; width: .1446em; height: 1.058em; background: linear-gradient(0deg,#f7e052,#214AB1); content: ""; font-size: 1.3rem; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.heading--2 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; font-size: 1.6rem; font-family: var(--serif); }
.heading---1 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; color: #214AB1; font-size: 1rem; font-family: var(--serif); display: inline; border-bottom: 3px solid #f9eee4; }
.heading---2 { position: relative; padding: .6125em .52081em .6125em 2.14285em; background: #f4f6f8; }
.heading---2::before { position: absolute; top: 50%; left: .8em; width: .215em; height: 1.4em; background: #54bcdb; content: ""; -webkit-transform: translateY(-50%); transform: translateY(-50%);}
.heading---2 .label-ja { margin-bottom: 0; line-height: 1.4; letter-spacing: .08em; font-size: 1.2rem; font-family: var(--serif); }

/*button*/
.button-1 a { padding: .6em 1.4em .8em; background: #f4f6f8; border: 1px solid #f9eee4; border-radius: 2rem; font-weight: 500; position: relative; overflow: hidden; transition: all .2s; -webkit-backface-visibility: hidden; backface-visibility: hidden; will-change: transform; }
.button-1 a:hover { color: #ffffff; background: #214AB1; }
.button-2 i { position: relative; top: -1px; font-size: .8em; color: #214AB1; }
.button-2 a { width: 100%; padding: 2rem 1.5rem 2rem; text-align: center; vertical-align: middle; display: block; color: #494645; background: #fff2e7; cursor: pointer; }
.button-2 a:hover .acunderline::after { width: 100%; }
.button-3 a { display: inline-block; padding: 1em 2.8em 1em 3em; color: #214AB1; background: #f4f6f8; border: 1px solid #214AB1; border-radius: 26px; font-weight: 400; text-align: center; transition: all .2s; }
.button-3 a .acunderline::after { background: #ffffff; }
.button-3 a:hover { background: #214AB1; color: #ffffff; }
.button-3 a:hover .acunderline::after { width: 100%; }
.button-4 a { display: inline-block; padding: 0 .8rem; background: #f4f6f8; border: 1px solid #f9eee4; border-radius: 2rem; line-height: 30px; font-size: .8rem; transition: all .2s; }
.button-4 a:hover { color: #214AB1; background: #ffffff; box-shadow: 0 0 10px rgb(84 188 219 / 20%); }
.button-4 a:hover .acunderline::after { width: 100%; }
.button-5 a { display: inline-block; min-width: 21.429em; padding: 1.25em 1.8em 1.25em 2em; color: #214AB1; background: #f4f6f8; border: 1px solid #214AB1; border-radius: 36px; font-weight: 400; transition: all .2s; }
.button-5 a .acunderline::after { background: #ffffff; }
.button-5 a:hover { background: #214AB1; color: #ffffff; }
.button-5 a:hover .acunderline::after { width: 100%; }
.button-6 a { display: inline-block; padding: 1em 2.8em 1em 3em; color: #214AB1; background: #ffffff; border: 1px solid #214AB1; border-radius: 26px; font-weight: 400; text-align: center; transition: all .2s; }
.button-6 a .acunderline::after { background: #214AB1; }
.button-6 a:hover .acunderline::after { width: 100%; }
.button-7{ margin-bottom: 50px;}
.button-7 a{color: #fff; width: 180px; font-size: 100%; padding: 5px 0;position: relative; overflow: hidden; z-index: 1; text-align: center;}
.button-7 a::before{content: ''; display: block; position: absolute; left: 0; top: 0; width: 200%; height: 100%; z-index: -1;
    background: linear-gradient(to right,rgba(9,140,179,.7) 0,rgba(219,239,245,.7) 50%,rgba(9,140,179,.7) 100%);
    transition: transform .3s;}
.button-7 a:hover::before{transform: translateX(-50%);}

/*animation*/
.acunderline { position: relative; }
.acunderline::after { content: ''; display: block; width: 0; height: 1px; background: #214AB1; position: absolute; bottom: 0; left: 0; transition: .9s all cubic-bezier(0.19, 1, 0.22, 1); }
.acunderline:hover::after { width: 100%; }
.lpunderline { position: relative; display: inline-block; overflow: hidden; vertical-align: middle; }
.lpunderline:before { -webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); -o-transform: translateX(0); transform: translateX(0); }
.lpunderline:after, .lpunderline:before { position: absolute; right: 0; bottom: 0; width: 100%; height: 1px; background: rgba(26,26,26,.7); content: ""; }
.hvboxshadow:hover { box-shadow: 0 0 10px rgb(241 169 128 / 20%); transform: scale(1.025); transition: ease .4s; }

/*lightbox[js]*/
.lightbox .lb-dataContainer { padding-top: 1rem; }
.lightbox .lb-data .lb-caption { font-size: 1.4rem; font-weight: 400; font-family: var(--sansserif); letter-spacing: .08em; }

/*readmore[js]*/
.read-box { position: relative; }
.read-box + .read-box { margin-top: 40px; }
.read-item { position: relative; overflow: hidden; padding-bottom: 8em; transition: 1s; }
.read-item::before { content: ""; display: block; position: absolute; bottom: 0; left: 0; z-index: 2; width: 100%; height: 10em; background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%); }
.read-item.close { height: 80px; }
.read-btn { position: absolute; bottom: 0; left: 0; right: 0; margin: auto; z-index: 3; min-width: 21.429em; padding: 1.25em 1.8em 1.25em 2em; color: #214AB1; background: #f4f6f8; border: 1px solid #214AB1; border-radius: 26px; line-height: 1.4; display: inline-block; width: auto; transition: 1s; }
.read-btn:focus { outline: none; }
.read-btn::after,
.read-btn::before { transition: ease .4s; }
.read-btn::after { content: "\f0e2"; font-family: 'Font Awesome 5 Free'; font-weight: 900; margin-left: 6px; }
.read-btn .fa { margin-right: .5em; }
.read-btn.open { overflow: hidden; }
.read-btn.open::after { content: "\f00d"; font-family: 'Font Awesome 5 Free'; font-weight: 900; margin-left: 6px; }
.read-btn.open + .read-item::before { display: none; }
/*.read-btn.close { bottom: -5em; }*/

/*ページトップ*/
.scrolltop-navi { margin: 0; padding: 7.5rem 0 2.5rem; }
.scrolltop { font-weight: 400; cursor: pointer; }

/*検索*/
.search-1 .form-search { display: flex; width: 100%; margin: 0; max-width: 20rem; border: 1px solid #e9e9e9; background: #fff; }
.search-1 .txt { width: 100%; padding: .5rem 1rem; background: #fff; line-height: 1.5; font-size: .8rem; }
.search-1 .txt::-webkit-input-placeholder,
.search-1 .txt:-ms-input-placeholder,
.search-1 .txt::placeholder { font-size: .8rem; color: #999; }
.search-1 .btn { width: 2.8rem; flex-shrink: 0; background: #fff; border-left: 1px solid #e9e9e9; }
.search-1 .btn img { width: 1rem; height: 1rem; margin: 0 auto; }
.search-1 .txt:focus,
.search-1 .btn:focus { outline: none; }


/* ページ -----------------------------------------------------*/

/*サイトマップ*/
.sitemap-box .menu { width: auto; margin: 0 auto; padding-left:3%; }
.sitemap-box .menu li { margin-bottom: 16px; font-weight: bold; }
.sitemap-box .menu li a { position: relative; display: block; padding-left: 30px; text-decoration: none; color: #494645; font-size: 16px; font-weight: 600; transition: all .4s ease-out; outline: none; }
.sitemap-box .menu li a::before { content: ''; position: absolute; top: 5px; bottom: 0; left: 0; margin: auto; display: inline-block; width: 7px; height: 7px; border-top: solid 2px #214AB1; border-right: solid 2px #214AB1; transform: translateY(-3px) rotate(45deg); }
.sitemap-box .sub-menu { margin: 20px 0 10px; padding-left: 30px; }
.sitemap-box .sub-menu li a { padding-left: 20px; font-size: 14px; }
.sitemap-box .sub-menu li a::before { top: 0; width: 7px; height: 2px; background: #eee; border: none; transform: none; }

/*lightbox[js]*/
/*.gallery .gallery-item { position: relative; margin-left: 2%;transition: all .2s; }
.gallery .gallery-item:nth-child(3n+1) {margin-left: 0;}
.gallery .gallery-item:hover { opacity: .8; }
.gallery .gallery-item img:hover { opacity: 1; }
.gallery .gallery-titl { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; padding: 10px; background: rgba(0,0,0,0.8); color: #ffffff; }
*/

.screen-reader-response,
.wpcf7-not-valid-tip { color:red; }

/* Q&A */
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
					box-sizing: border-box;
}
.cp_qa {
	overflow-x: hidden;
	margin: 0 auto;
	color: #333333;
}
.cp_qa .cp_actab {
	padding: 20px 0;
	border-bottom: 1px dotted #cccccc;
}
.cp_qa label {
	font-size: 1.2em;
	position: relative;
	display: block;
	width: 100%;
	margin: 0;
	padding: 10px 10px 0 48px;
	cursor: pointer;
}
.cp_qa .cp_actab-content {
	font-size: 1em;
	position: relative;
	overflow: hidden;
	height: 0;
	margin: 0 40px;
	padding: 0 14px;
	-webkit-transition: 0.4s ease;
					transition: 0.4s ease;
	opacity: 0;
}
.cp_qa .cp_actab input[type=checkbox]:checked ~ .cp_actab-content {
	height: auto;
	padding: 14px;
	opacity: 1;
}
.cp_qa .cp_plus {
	font-size: 2.4em;
	line-height: 100%;
	position: absolute;
	z-index: 5;
	margin: 3px 0 0 10px;
	-webkit-transition: 0.2s ease;
					transition: 0.2s ease;
}
.cp_qa .cp_actab input[type=checkbox]:checked ~ .cp_plus {
	-webkit-transform: rotate(45deg);
					transform: rotate(45deg);
}
.cp_qa .cp_actab input[type=checkbox] {
	display: none;
}

/* クリニックページ */
.clinic-list dl { flex-flow: row wrap; width: 100%; }
.clinic-list dt { flex-basis: 15%; padding: 20px; background-color: #f1f1f1; border-bottom: 1px solid #ccc; }
.clinic-list dd { flex-basis: 85%; padding: 20px; background-color: #fff; border-bottom: 1px solid #ccc; margin-bottom: 0;}

/* グループの活動 */
.group .staff-list-box ul li>div{
  padding: 1px;
}
.group .staff-list-box ul li .tag{ background: rgba(9,140,179,0.75); color: #fff!important; margin: 0!important; position:absolute; width: 99%;bottom: 0; padding: 10px 0!important; text-align: center; opacity: 1;
   -webkit-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; font-weight: normal; font-size: .8rem!important;}
.group .staff-list-box.main ul li .tag{background: rgba(9,140,179,0.75);}
.group .staff-list-box.sub ul li .tag{background: rgba(80,139,135,0.75);}
.group .staff-list-box.office ul li .tag{background: rgba(173,142,157,0.75);}
.group .staff-list-box ul li:hover .tag{opacity: 0;}
.group .staff-list-box ul li .name-box{background: rgba(255,255,255,0.75); color: #666; display: table; text-align: center; width: 100%; height: 100%; position: absolute; top: 0; left: 0; transition: 0.3s ease-in-out; opacity: 0;}
.group .staff-list-box ul li:hover .name-box{opacity: 1; font-size: .9rem;}
.group .staff-list-box ul li .name-box p{font-size: .9rem;}
.group .staff-list-box ul li .name-box::after{content: ""; position: absolute; right: 8px; top: 9px; border: 1px solid rgba(9,140,179,0.75); width: 90%; height: 90%;}
.group .staff-list-box.main ul li .name-box::after{border: 1px solid rgba(9,140,179,0.75);}
.group .staff-list-box.sub ul li .name-box::after{border: 1px solid rgba(80,139,135,0.75);}
.group .staff-list-box.office ul li .name-box::after{border: 1px solid rgba(173,142,157,0.75);}
.group .staff-list-box ul li .name-box>div{display: table-cell; vertical-align: middle;}

.group .service-list{border: 1px solid #f4ebff; margin: 2px;}
.group .service-list.external {border: 1px solid rgba(9,140,179,0.75);}
.group .service-list.internal {border: 1px solid rgba(80,139,135,0.75);}
.group .service-list.patient {border: 1px solid rgba(173,142,157,0.75);}
.group .service-list h2{text-align: center; font-size: 18px; line-height: 1.2; background: rgba(9,140,179,0.75); color: #fff; font-weight: normal; letter-spacing: 1px; padding: 24px 5px 18px; }
.group .service-list.external h2{ background: rgba(9,140,179,0.75); }
.group .service-list.internal h2{ background: rgba(80,139,135,0.75);}
.group .service-list.patient h2{ background: rgba(173,142,157,0.75);}
.group .service-list ul{ padding: 5px;}
.group .service-list ul li { position: relative; padding-left: 15px!important; margin-bottom: 15px!important;}
.group .service-list ul li::before {content: ""; position: absolute; top: .5em; left: 0; width: 10px; height: 10px; background-color: rgba(9,140,179,0.75); border-radius: 50%;}
.group .service-list.external ul li::before{background-color: rgba(9,140,179,0.75);}
.group .service-list.internal ul li::before{background-color: rgba(80,139,135,0.75);}
.group .service-list.patient ul li::before{background-color: rgba(173,142,157,0.75);}
.group .service-list ul li span { display: inline-block; text-align: right; color: #fff; padding: 2px 5px; font-size: .7rem; margin-top: 5px;}
.group .service-list.external ul li span{ background: rgba(9,140,179,0.75); }
.group .service-list.internal ul li span{ background: rgba(80,139,135,0.75);}
.group .service-list.patient ul li span{ background: rgba(173,142,157,0.75);}


/* iphone5-5s-se */
@media screen and (max-width:320px) {

.group .staff-list-box ul li.col-2 { -ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%; }
.group .staff-list-box ul li .name-box::after { right: 7px; top: 7px;}

}

/* pc-ipad */
@media screen and (max-width: 575px) {

body { font-size: .8rem; }
html, body, .header, .main, .footer { min-width: auto!important; }
.main-page { padding: 4.61538em 0 0; }
.page-content.col-one, .page-content.col-two,
.sidebar { width: 100%; }

/* クリニックページ */
.clinic-list dl { flex-flow: column; }


/* ヘッダー -----------------------------------------------------*/

.header { position: fixed; top: 0; left: 0; right: 0; background: none; border-bottom: 0; }
.header .container-ip { width: 100%; margin: 0 auto; }
.header-logo { height: 76px; -ms-flex: 0 0 46%; flex: 0 0 46%; max-width: 46%; padding: 0 1em 0 .5em; background-color: rgba(255,255,255,0.6); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);}
.header-logo img { position: relative; top: -.1em; }
.header-nav { display: none; }
.header-nav-sp { display: block; }


/* メイン -----------------------------------------------------*/

.main-thumbnail,
.main-snsbtn,
.main-scroll .scroll-label { display: none; }

.mainvisual { margin-top: 0; padding-bottom: 40px; }
.mainvisual .container-ip { height: 100%; }
.main-slide { padding: .5em .5em 0; }
.main-catch { font-size: 1rem; left: 1.6em; bottom: calc(3em + 54px); }
.main-catch span { font-size: 1.4rem; }
.main-snsbtn { width: 3.68462em; }
.main-scroll { width: 3.68462em; }
.main-scroll .scroll-inner { height: 4.76923em; bottom: 6em; }
.main-scroll .scroll-inner::before { bottom: 0; height: 4.76923em; }
.main-scroll .scroll-point { bottom: 7.5em; -webkit-animation: scroll-point-sp 2.6s ease-out infinite; animation: scroll-point-sp 2.6s ease-out infinite; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
.main-scroll .scroll-point::before { top:50%; left:50%; z-index:-1; width:35px; height:35px; background:rgba(255,255,255,.5); opacity:0; -webkit-transform:scale(.2) translateY(-50%) translateX(-50%); -moz-transform:scale(.2) translateY(-50%) translateX(-50%); -ms-transform:scale(.2) translateY(-50%) translateX(-50%); -o-transform:scale(.2) translateY(-50%) translateX(-50%); transform:scale(.2) translateY(-50%) translateX(-50%); -webkit-transform-origin:top left; -ms-transform-origin:top left; -o-transform-origin:top left; transform-origin:top left; -webkit-animation:scroll-point-zoom-sp 2.6s ease-out infinite; animation:scroll-point-zoom-sp 2.6s ease-out infinite; -webkit-animation-fill-mode:both; animation-fill-mode:both; }
.main-pgbar { width: 100%; }
.main-copyright { width: 2.69231em; font-size: .6rem; left: 1em; }

.main-breadcrumb { position: absolute; bottom: 0; width: 100%; }

/* トップページ -----------------------------------------------------*/
.heading-1 .label-ja { font-size: 1.2rem; }
.heading-2::before { position: absolute; top: 0; left: 0; display: block; width: 1px; height: 100%; background: #214AB1; content: ""; }
.heading-2 .label-ja { font-size: 1.2rem; padding-left: .82632em; }
.heading-2 .label-en { margin-left: 1em; }
.heading-2 .label-en::before { content: none; }
.heading-3 .label-ja { font-size: 1em; margin-bottom: 0; }
.heading-3 .label-en { font-size: 1.3rem; }
.heading-4 .label-ja { font-size: 1.2rem; }
.heading--1 .label-ja { font-size: 1rem; }
.heading---1 .label-ja { font-size: .9rem; }

.button-2 a { margin: 0 auto; width: 17.69231em; padding: 1rem 1.5rem 1rem; border-radius: 2em; }
.button-5 a { min-width: auto; padding: 1em 1.8em 1em 2em; }

.top-job { padding-top: 3.84615em; }
.top-job .container-ip { margin: 0; }
.top-job .top-job-head { margin: 0 6% 2.5em; }
.top-job .top-job-head .heading-2 { margin-bottom: 1.5em; }
.top-job .top-job-box { border-bottom: 0; }
.top-job .top-job-txt { padding-top: 1em; padding-left: .82632em; border-left: 1px solid #f9eee4; }
.top-job .job-item { border-bottom: 1px solid #f9eee4; }
.top-job .job-item a { height: 9.4em; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.top-job .job-item .job-desc { max-width: 65%; margin-top: 0; padding: .5em .5em 1em 0; -ms-flex: 0 0 65%; flex: 0 0 65%; }
.top-job .job-item .job-thumb { height: 100%; overflow: hidden; position: relative; -ms-flex: 0 0 30%; flex: 0 0 30%; max-width: 30%; display: flex; align-items: center; }
.top-job .job-item .job-titl { font-size: .9rem; margin-bottom: 0; }
.top-job .job-item .job-titl i { font-size: .6rem; }
.top-job .job-item .job-summary { line-height: 1.4; margin: .2em 0 0; max-height: 3.907em; }

.top-blog { margin-top: 3.84615em; }
.top-blog .top-blog-head { margin-bottom: 2em; }
.top-blog .top-blog-txt { display: none; }
.top-blog .blog-list li .info { padding: .6em .5em 0; }
.top-blog .blog-list li .txt { height: 66px; }
.top-blog .blog-list li .img-txt { padding: 0 6% 1.47692em; }
.top-blog .blog-list li .cate span { padding: .13rem .6rem .26rem; }
.top-blog .blog-list li .titl { font-size: 1rem; }
.top-blog .slick-prev { right: 40px; }
.top-blog .slick-next { right: 0; }
.top-blog .button-2 { margin-top: 1em; }

.top-news { margin-top: 3.84615em; }
.top-news .heading-2 { margin-bottom: 2em; }
.top-news .container-ip { margin: 0; width: 100%; }
.top-news .top-news-box { margin: 0 6%; padding: 3.84615em 0; }
.top-news .top-news-head { padding: 0 0 2em; }
.top-news .top-news-cate li { display: inline-block; }
.top-news .top-news-cate li > span { margin: 0 .62308em; padding: .08em .46em .16em; }
.top-news .top-news-cate li:first-child { border-left: 0; }
.top-news .top-news-cate li:first-child span { margin-left: 0; }
.top-news .news-list { padding: 0; }
.top-news .news-list li { border-bottom: 1px solid #f9eee4; }
.top-news .news-list li:not(:first-child) { margin-top: 0; }
.top-news .news-list li > a { padding: .83846em 0; overflow: visible; text-overflow: initial; white-space: initial; }
.top-news .news-list li .date { width: 6.5em; }
.top-news .news-list li .cate { width: 14.5em; }
.top-news .news-list li .cate span { padding: .2rem .6rem .26rem; }
.top-news .news-list li .titl { font-size: 1rem; display: block; }
.top-news .news-list li .new { top: -5px; }
.top-news .button-2 { margin-top: 2em; }

.top-about { margin-top: 3.84615em; padding: 3.84615em 0; }
.top-about .heading-1 { margin-bottom: 2em; }
.top-about .heading--1 { margin-bottom: 1.6em; }
.top-about .top-about-box { padding: 3.84615em 6%; }
.top-about .about-item { margin-bottom: 3.84615em; }
.top-about .about-thumb { margin-bottom: 1rem; }
.top-about .about-navi ul { text-align: center; justify-content: space-between; }
.top-about .about-navi ul > li { margin-right: 0; margin-bottom: 1em; -ms-flex: 0 0 48%; flex: 0 0 48%; max-width: 48%; }
.top-about .about-navi ul > li > a { font-size: .86em; padding: 0 .6rem; display: block; }
.top-about .about-navi ul > li:nth-child(3),
.top-about .about-navi ul > li:nth-child(4) {margin-bottom: 0; }

.top-day { margin-top: 3.84615em; }

.top-voice { margin-top: 3.84615em;}
.top-voice .heading-1 { margin-bottom: 2em; }
.top-voice .top-voice-box { margin: 0 6%; }
.top-voice .voice-item { margin-bottom: 2em; }
.top-voice .voice-titl { font-size: 1rem; }

.top-feature { margin-top: 3.84615em; padding: 3.84615em 0; }
.top-feature .heading-1 { margin-bottom: 2em; }
.top-feature .top-feature-box { padding: 1.8em 0 .6em; }
.top-feature .feature-item { padding: 0 6%; }
.top-feature .feature-titl { font-size: 1rem; margin-bottom: .6em; }
.top-feature .feature-titl span { font-size: 1.5rem; }
.top-feature .button-5 { margin-top: 3em; }

.top-clinic { height: auto; overflow: hidden; }
.top-clinic .heading-4 { margin-bottom: 2em; text-align: center; position: relative; }
.top-clinic .heading-4::before { content: ""; position: absolute; bottom: -1em; left: 0; right: 0; margin: auto; display: block; width: 2em; height: .1em; background: #494645; }
.top-clinic .heading-4 .label-en { margin-bottom: .8em; }
.top-clinic .top-clinic-head { height: auto; margin: 0 6%; }
.top-clinic .clinic-slide { position: absolute; top: 0; left: 0; right: 0; margin: auto; height: auto; }
.top-clinic .top-clinic-box { position: relative; padding: 3.84615em 0; }
.top-clinic .clinic-summary { line-height: 1.4; text-align: center; }
.top-clinic .clinic-btn { position: static; bottom: auto; right: auto; }
.top-clinic .clinic-btn ul { position: static; right: auto; bottom: auto; width: 100%; text-align: left; }
.top-clinic .swiper-pagination { padding: 1.07692em; }

.top-enviro { margin-top: 3.84615em; }
.top-enviro .top-enviro-box { padding-bottom: 0; }
.top-enviro .read-item { max-height: 15.003em; }
.top-enviro .heading-1 { margin-bottom: 2em; }
.top-enviro .enviro-item { position: relative; width: 50%; -ms-flex: 0 0 50%; flex: 0 0 50%; max-width: 50%; margin-bottom: 0; box-sizing: border-box;}
.top-enviro .enviro-item a { border: 0; }
.top-enviro .enviro-titl { top: auto; bottom: 0; padding: .25em .5em .3em; border: 1px solid #f9eee4; font-size: .8rem; }

.top-picup { margin-top: 3.84615em; margin-bottom: 3.84615em; }
.top-picup .top-picup-box { padding-bottom: 0; }
.top-picup .read-item { max-height: 36.6em; }
.top-picup .top-picup-head { margin-bottom: 2em; }
.top-picup .picup-item { border-bottom: 1px solid #f9eee4; }
.top-picup .picup-item:first-child { border-top: 1px solid #f9eee4; }
.top-picup .picup-item:nth-child(1) a,
.top-picup .picup-item:nth-child(2) a { border: none; }
.top-picup .picup-item a { height: 9.4em; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.top-picup .picup-item .picup-titl { font-size: .9rem; margin-bottom: 0; }
.top-picup .picup-item .picup-titl i { font-size: .6rem; }
.top-picup .picup-item .picup-summary { line-height: 1.4; margin: .2em 0 0; max-height: 3.907em; overflow: hidden; }
.top-picup .picup-thumb { height: 100%; overflow: hidden; position: relative; -ms-flex: 0 0 30%; flex: 0 0 30%; max-width: 30%; display: flex; align-items: center; }
.top-picup .picup-desc { max-width: 65%; padding: .5em .5em 1em 0; -ms-flex: 0 0 65%; flex: 0 0 65%; }


/* フッター -----------------------------------------------------*/
.bottom-bnr { padding: 3.84615em 0; }
.bottom-bnr .slick-list li { margin: 0 .5em; }
.bottom-bnr .slick-prev { left: -12px; }
.bottom-bnr .slick-next { right: -12px; }

.bottom-contact ul > li { height: 12.76923rem; }
.bottom-contact .contact-titl .label-ja { font-size: 1.4rem; font-family: var(--serif); }
.bottom-contact .contact-titl .label-ja i { font-size: 0.8em; }
.bottom-contact .contact-titl .label-en,
.bottom-contact .contact-btn { display: none; }
.bottom-contact .contact-txt { margin-top: .5em; margin-bottom: 0; color: #fff2e7; }

.footer-bottom .container-ip { padding: 0; }
.footer-utility .container-ip { padding: 0; }
.footer-utility-top { margin-bottom: 0; }
.footer-utility-top ul,
.footer-utility-bottom ul { padding: 1.25em 0 1.5em; }
.footer-utility a,
.footer-utility span { font-size: .68rem; }
.footer-utility ul { margin: 0 .5em; }
.footer-navi { padding-top: 2em; }
.footer-navi ul { justify-content: space-between; }
.footer-navi ul > li { -ms-flex: 0 0 48%; flex: 0 0 48%; max-width: 48%; margin-bottom: 1em; margin-left: 0; }
.footer-sns ul > li img { width: 22px; }
.footer-sns ul { justify-content: flex-start; }
.footer-sub-titl { padding: .5em 1em; background: #fff2e7; }
.footer-sns-r ul { padding: 1.25em 0 1.5em; }
.footer-sns-r ul > li:first-child { margin-left: 0; }
.footer-desc { padding: .8em 0 1.5em; }
.footer-logo { margin-bottom: 1rem; }
.footer-logo img { width: 6.6em; }
.footer-copyright { padding: 1.5em 0 1.5em; border-top: 1px solid #f9eee4; text-align: center; }




/* アーカイブ -----------------------------------------------------*/
.content-bottom .widget-item li span { display: block; }
.content-bottom .widget-item .titl { margin-left: 0; }

.pagination > a,
.pagination > span { border: none; padding: 0; margin-right: 10px; }
.pagination .prev,
.pagination .next { padding: 0 10px; width: 100%; }
.pagination .prev-link,
.pagination .next-link,
.pagination .list-link { width: 100%; }

/* ページ -----------------------------------------------------*/
/*lightbox[js]*/
.gallery .gallery-item { -ms-flex: 0 0 48%; flex: 0 0 48%; max-width: 48%; margin-left: 4%; }
.gallery .gallery-item:nth-child(3n+1) { margin-left: 4%; }
.gallery .gallery-item:nth-child(2n+1) { margin-left: 0; }
.gallery .gallery-titl { padding: 6px; font-size: 14px; }

/* その他 -----------------------------------------------------*/

.read-btn { padding: 1.157em 1.8em 1.157em 2em; }
.read-item::before { height: 8.2em; }

/*検索*/
.search-1 .form-search { max-width: none; }
.search-1 .txt { padding: .66rem 1rem; }


}
