@charset "utf-8";
/* CSS Document */
/*
Theme Name: ORIGINAL
Description: オリジナルテーマ
Version: 1.1
Author: FAM
*/

@import url('https://fonts.googleapis.com/css?family=Lato:400,700|Noto+Sans+JP:400,700');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400;600&display=swap');

/* CLEAR FIX */
.cf:after{content: "."; display: block; height: 0;  clear: both; visibility:hidden;}
.cf{display: inline-table;} 
/* Hides from IE Mac */
* html .cf{height: 1%;}
.cf{display:block;}
/* BOXSIZING */
.boxSizing { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;}
/* iOSでのsubmitのスタイルをリセット */
input[type="submit"],input[type="button"] {border-radius: 0;-webkit-box-sizing: content-box;-webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer;}
input[type="submit"]::-webkit-search-decoration,input[type="button"]::-webkit-search-decoration {display: none;}
input[type="submit"]::focus,input[type="button"]::focus {outline-offset: -2px;}

/* =======PRUGIN SETTINGS======= */
/* PAGE TOP */
.pagetop {z-index: 999; position: fixed;bottom: 55px;right: 55px;opacity: 0;filter: alpha(opacity=0);-webkit-transform: scale(0.3);-moz-transform: scale(0.3);-ms-transform: scale(0.3);-o-transform: scale(0.3);transform: scale(0.3);-webkit-transition: all .4s;-moz-transition: all .4s;	-o-transition: all .4s;	transition: all .4s;}
.pagetop a {display: block;width: 50px;	height: 50px;background-color: #000;text-align: center;color: #fff;font-size: 1em;text-decoration: none;line-height: 50px; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%;}
.pagetop.show {	opacity: 1;filter: alpha(opacity=100);-webkit-transform: scale(1);-moz-transform: scale(1);-ms-transform: scale(1);-o-transform: scale(1);transform: scale(1);}
#pagetop{content: ""; display: block; height: 111px;  margin-top: -111px; visibility: hidden;}

/* BLOCK LINK */
.box-link{cursor:pointer;}
.box-link,
.box-link::before,
.box-link::after {-webkit-transition: all .3s;transition: all .3s;}
.box-link:hover{background:#EEE;}

/* =======WP PAGENAVI SETTINGS======= */
.wp-pagenavi {clear: both; text-align: center; margin-bottom: 100px;}
.wp-pagenavi a, .wp-pagenavi span {text-decoration: none; display:inline-block;color:#444; background-color:#EEE; padding: 8px 15px; margin:0 1px 2px; white-space: nowrap; -moz-border-radius: 3px;-webkit-border-radius: 3px;border-radius: 3px;-webkit-transition: 0.2s ease-in-out;-moz-transition: 0.2s ease-in-out;-o-transition: 0.2s ease-in-out;transition: 0.2s ease-in-out;}
.wp-pagenavi a:hover, .wp-pagenavi span.current {color:#FFF;background-color:#666;border-color:#666;}
.wp-pagenavi span.current {color:#FFF;background-color:#0818A8;border-color:#0818A8;font-weight: bold;}

/* =======TABLE ======= */
/* .table-col1 */
td.column-1 {white-space: nowrap; width:20%;}
.basic-table {font-size: 0.8em; width: 100%;}
.basic-table td{border: 1px solid #CCC; padding: 15px;}
.basic-table th {border: 1px solid #CCC; padding: 15px; white-space: nowrap; font-weight: bold;}

.basic-table2 {width:100%; margin-bottom: 30px;}
.basic-table2 td{border-bottom: 1px solid #CCC; padding: 15px;}
.basic-table2 th {border-bottom: 1px solid #CCC; padding: 15px; width: 10%; white-space: nowrap; font-weight: bold;}

.basic-table3 {font-size: 0.8em; width:100%; margin-bottom: 30px;}
.basic-table3 td{width:50%; border: 1px solid #CCC; padding: 15px;}

/* ACCORDION */
.accordion {background: #444; border-top: 1px solid #CCC; max-width: 100%;}
.acctoggle {display: none;}
.accoption {position: relative;}
.acctitle,.acccontent {-webkit-backface-visibility: hidden;backface-visibility: hidden;transform: translateZ(0);transition: all 0.3s;}
.acctitle {border-bottom: solid 1px #ccc; padding: 1em; display: block; color: #FFF;}
.Notacctitle {border: solid 1px #ccc;padding: 1em;display: block;color: #333;font-weight: bold;}
.acctitle::after,.acctitle::before {content: "";position: absolute;right: 1.25em;top: 1.25em;width: 2px;height: 0.75em;background-color: #FFF;transition: all 0.3s;}
.acctitle::after {transform: rotate(90deg);}
.acccontent {max-height: 0;overflow: hidden;}
.acccontent p {margin: 0; padding: 0 0 30px;}
.acctoggle:checked + .acctitle + .acccontent {max-height: 1800px;transition: all 1.5s;}
.acctoggle:checked + .acctitle::before {transform: rotate(90deg) !important;}

/* =======SLIDER======= */
.slick-slide {box-sizing: border-box;}
.slick-slider div { transition: none; }

/* ======= BASIC ======= */
html,body { height: 100%; width: 100%; min-width: 1100px; }
body{font-family: 'Noto Sans JP', san-serif; color:#333; letter-spacing: 0.1em;}
img {max-width: 100%; height: auto;}
a{text-decoration: none; color:#222; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all  0.3s ease;}
a:hover{color:#CCC;}
strong{font-weight:bold;}

div.wp-caption {max-width: 100%!important; height: auto;}


/* OTHER-STYLING */
.big{font-size:1.4em;}
.small{font-size:0.6em;}
.bg-brack{display:inline-block; background:#000; padding:10px 15px; font-size:0.8em; color:#FFF; margin-right:10px; vertical-align: super; margin:10px 0;}
.bgglay {background: #EEE; padding: 30px;}.bgglay p{margin:0;}
.bgBlue {background: #E0F1F4; padding: 30px; margin-bottom: 50px;}
.arrow-down{ margin-bottom: 30px; font-size: 3em;}
.mb0{margin-bottom:0 !important;}
.mb10{margin-bottom:10px;}
.mb30{margin-bottom:30px;}
.mb50{margin-bottom:50px;}
.pc{display:inline;}
.sp {display: none;}
.menu-sp{display:none;}
.text-left{text-align:left;}
.text-right{text-align:right;}
.text-center{text-align:center;}

.jump{margin-top:-100px; padding-top:100px;}
.jump2 {margin-top: -180px; padding-top: 180px;}
.name {font-weight: bold; display: block; text-align: right; margin-top: 17px;}

.youtube {position: relative; width: 100%; padding-top: 56.25%;}
.youtube iframe {position: absolute; top: 0; right: 0; width: 100%; height: 100%;}

/* ======= HEADER ======= */
header{width:100%; padding-bottom: 20px; z-index: 9999; position: fixed; top: 0; background: rgba(255,255,255,0.9); border-bottom: 1px solid #EEE;}
header h1 {padding: 20px 0 0 25px;}
header h1 img {width: 220px;}

.headBox {display: flex; justify-content: flex-end; align-items: center;  flex-direction: column-reverse;}
ul.headBoxNav {font-size: 0.9em; display: flex; align-items: center; justify-content: center;}
ul.headBoxNav li {text-align: center; margin-right: 30px;letter-spacing: normal;}
.headBoxnav2 {font-size: 0.9em; width: 100%; margin-bottom: 20px; display: flex; justify-content: flex-end; align-items: center;}
.headBoxnav2 a.yotei {background: #0818A8; padding: 20px 20px; margin-left: 20px; color: #FFF; display: block;}
.headBoxnav2 p {font-size: 0.9em; margin-right: 20px;}
.smlBtn button {border: 1px solid #CCC; background: #FFF; cursor: pointer;}
.smlBtn button.active {background: #0818A8; color: #FFF; border: 1px solid #0818A8;}

/* global nav */
#gnav {display: flex; justify-content: space-between; align-items: center;}
.nav-button-box {padding: 20px; z-index: 50; vertical-align: top;}
.nav-button-box p {font-size: 0.5em;text-align: center; margin-top: 5px;}
.nav-button {display: block; cursor: pointer; }

/*メニューボタンのエフェクト*/
.nav-button span { display: inline-block; transition: all 0.4s; box-sizing: border-box;}
.nav-button { z-index: 20; position: relative; width: 40px; height: 36px;}
.nav-button span {position: absolute; left: 0; width: 100%; height: 4px; background-color: #222; border-radius: 4px;}
.nav-button span:nth-of-type(1) {top: 0;}
.nav-button span:nth-of-type(2) {top: 16px;}
.nav-button span:nth-of-type(3) {bottom: 0;}

.nav-button.active span:nth-of-type(1) {
-webkit-transform: translateY(16px) rotate(-45deg);
transform: translateY(16px) rotate(-45deg);
}
.nav-button.active span:nth-of-type(2) {
opacity: 0;
}
.nav-button.active span:nth-of-type(3) {
-webkit-transform: translateY(-16px) rotate(45deg);
transform: translateY(-16px) rotate(45deg);
}

/* 展開後 */
.nav-wrap {display:none; width: 100%; height: 100%;padding: 0; box-sizing: border-box; z-index: 10; }
.navBox {width: 100%; height: 100vh; background: #FFF; padding: 0 80px; box-sizing: border-box; position: fixed; right: 0; font-size: 12px;}


/* ======= FOOTER ======= */
footer {width: 100%; color: #333;}
footer section.wrapCont {width: 90%; min-width:1180px; }

.footTop {border-top: 1px solid #EEE; border-bottom: 1px solid #EEE; text-align: center;}
.footTop ul.col3 li {width: 33.3333333%; box-sizing: border-box;}
.footTop ul li:nth-child(2){border-left: 1px solid #EEE; border-right: 1px solid #EEE; box-sizing:border-box;}
.footTop ul li a{display: block; padding: 15px 0;}
.footTop ul li a:hover {background: #EEE; color:#333;}
.footTop i {color: #0818A8;}

.footbox {display: flex; padding: 50px 0;}

.footbox01 {width: 30%; text-align: left;}
.footbox01 p {margin-bottom: 30px; }
.footbox01 img {margin-bottom: 20px;}

.footbox02 {font-size: 0.9em; display: flex; width: 70%; justify-content: flex-start;}
.footbox02 h3 {color: #0818A8; border-bottom: 1px solid #EEE; padding-bottom: 10px; font-weight: bold; margin-bottom: 10px;}
.footbox02 ul.col3 {width: 100%;}
.footbox02 a {display: block; margin-bottom: 5px;}

p.copyRights {font-size: 0.8em; text-align: center; background-color: #0818A8; color: #FFF;  padding: 20px 0;}

/*  ======= TOP =======  */
section.wrapCont{width: 90%; min-width: 1100px; margin:0 auto; position:relative; z-index:1;}
#container.toppage {z-index: 1; position: relative;}

.toppage p {text-align: justify;}
.toppage h4 {font-size: 1.3em; font-weight: bold;  margin-bottom: 20px;}

.moveLine {width: 150px; position: absolute;  right: 0;  top: 20px;}
.moveLine a {display: block;padding-bottom: 5px;}
.moveLine:after {content: ""; position: absolute; display: block; width: 150px; height: 1px; background: #333; animation: 2s ease-in 1s infinite alternate forwards running expansion;}
@keyframes expansion{
  0%{width:10px;}
  100%{width:150px; background:#CCC;}
}

/* TEASER */
#teaser {width: 100%; height: 500px; margin-top: 103px; text-align: center; background:url("img/top/01.jpg")no-repeat; background-size: cover; display: flex; align-items: center;}
.teaserInr {width: 100%; padding: 0 100px; overflow:hidden;}
.teaserInr h2 {font-size: 60px; color: #FFF; text-align: left; font-family: "Montserrat"; color: #ffffff;
   text-shadow: 2px 2px 10px #827978 ,
-2px 2px 10px #827978 ,
2px -2px 10px #827978 ,
-2px -2px 10px #827978;}
.teaserInr h2 span {display: block; font-family: 'Noto Sans JP'; font-size: 18px; margin-top: 20px;letter-spacing: 0.6em;}

/* STAGE01 */
#stage01 {padding: 80px 0; position: relative;}
#stage01 ul {background: #F7F5F2; padding: 20px;  border-radius: 10px; letter-spacing: normal;  font-size: 0.85em; display: flex; justify-content: space-evenly;}
#stage01 ul li {margin-bottom: 10px;}
#stage01 ul li:last-child {margin-bottom: 0;}
#stage01 ul p span {font-weight: bold; color: #0818A8; margin-right: 15px;}

/* STAGE02 */
#stage02 {margin-bottom: 50px; padding:50px 0; position: relative;}
#stage02 {
  background-image: linear-gradient(
    to bottom,
    #0818A8,                       /* 濃い青（スタート） */
    #5f84d9 50%,                   /* ミディアムブルー（中間） */
    #e6f0ff 100%                   /* 淡い青・やさしさ（終点） */
  );
}
#stage02 ul {margin-bottom: -30px;}
#stage02 ul li { margin-bottom: 30px;}
#stage02 ul li h3 {letter-spacing: normal;}
#stage02 ul li h3 span {display: block; font-size: 0.6em; color: #CCC;}
#stage02 ul li a {background: #FFF; display: block; border-radius: 10px; padding: 20px 0; text-align: center;}
#stage02 ul li a:hover {background: #0818A8; color: #FFF;}
#stage02 ul li a:hover span{color: #FFF}
#stage02 ul li a img {width: 100px; margin: 30px 0;}
#stage02 ul li a p {text-align: center; font-size: 0.8em; letter-spacing: normal;  border-top: 1px dotted #EEE; padding-top: 20px; width: 50%; margin: 0 auto;
}
/* STAGE03 */
#stage03 {margin-bottom: 50px; position: relative;}
#stage03 ul li {cursor: pointer; overflow: hidden; position: relative; border-radius: 10px;}
#stage03 ul li img {height: auto; transition: transform .6s ease; }
#stage03 ul li:hover img {transform: scale(1.1); }
#stage03 ul li h3 {font-size: 16px; align-items: center; bottom: 0; display: flex; justify-content: center; flex-direction: column; left: 0; margin: auto;  position: absolute;  right: 0;  top: 0;  width: 80%;}
#stage03 ul li h3 span {display: block; font-size: 10px;}
#stage03 ul li i {position: absolute; right: 10px; bottom: 10px;}
#stage03 ul li a{color:#333;}
#stage03 .wrapCont {padding-bottom: 50px; border-bottom: 1px solid #BBE4F5; border-image: linear-gradient(to right, #BBE4F5 0%, #ABDFB2 100%);  border-image-slice: 1;}

/* STAGE04 */
#stage04 {margin-bottom: 100px; position: relative; text-align: right;}
#stage04 a {display: flex; align-items: center; border-bottom: 1px solid #EEE;}
#stage04 .topNewsTitle a {border: none;}
.topNewsTitle {display: flex; border-bottom: 1px solid #EEE; padding: 10px 0; justify-content: space-between;}
.topNewsTitle i {color: #0818A8; font-size: 28px; line-height: 1;}
.topNewsTitle h3 {display: flex; align-items: center;}
.topNewsTitle h3 span {font-size: 11px; color: #CCC; margin-left: 10px;}
p.time {width: 10%; text-align: center; padding: 0 10px;}
p.time span {display: block; font-size: 11px;}
p.title {width: 90%; background: #f7f5f2; padding: 15px; font-size: 0.9em;}

/* STAGE05 */
#stage05 {margin-bottom: 80px; position: relative; }
.sticky {width: 100%; height: 100vh; display: flex; align-items: center; justify-content: center; position: -webkit-sticky; position: sticky; top: 0;}
.sticky p {text-align: center; line-height: 2; font-size: 1.6em; color: #FFF; font-weight: bold; text-shadow: 2px 2px 4px black;}
.sticky img {object-fit: cover; height: 100%; width: 100%;}
.block-one {z-index: 100;}
.block-two {z-index: 200;}
#stage05 h3 span {display: block; color: #333; font-size: 18px; font-family: 'Noto Sans JP';}
#stage05 h3 {text-align: center; color: #0818A8; font-weight: bold; font-family: 'Montserrat'; font-size: 50px; margin-bottom: 50px;}

/* STAGE06 */
#stage06 {margin-bottom: 80px; position: relative;}
#stage06 .wrapCont {width: 60%; min-width: 1000px;}
#stage06 ul {margin-bottom: 20px;}
div#stage06 ul li {position: relative; padding: 0 5px; box-sizing: border-box;}
.caption {position: absolute; bottom: 0;   background: rgba(255,255,255,0.8); padding: 12px 22px;  font-size: 0.9em;}

/* STAGE07 */
#stage07 {margin-bottom: 130px; position: relative;}
#stage07 ul li {width: 50%;position: relative; overflow: hidden;}
#stage07 ul li img {height: auto; transition: transform .6s ease; }
#stage07 ul li:hover img {transform: scale(1.1); }
#stage07 ul li h3 {font-family: 'Montserrat'; font-weight: bold; font-size: 38px; align-items: center; bottom: 0; display: flex; justify-content: center; flex-direction: column; left: 0; margin: auto;  position: absolute;  right: 0;  top: 0;  width: 80%;}
#stage07 ul li h3 span {font-family: 'Noto Sans JP'; display: block; font-size: 14px;}
#stage07 ul li a{color:#FFF;}
.s07Bnr {display: flex; position: absolute;  right: 3%; bottom: -40px; width: 40%; padding: 15px 20px; border-radius: 10px; align-items: center;}
.s07Bnr {background-image: linear-gradient(90deg, rgba(255, 255, 255, 1), rgba(255, 196, 17, 1) 38%, rgba(184, 134, 11, 1));}
.s07Bnr h5 {font-weight: bold;text-align: center;font-size: 15px; width: 35%; padding-right: 5%; box-sizing: border-box;}
.s07Bnr p { font-size: 12px; width: 65%;}

/* STAGE08 */
#stage08 {margin-bottom: 80px; position: relative;}
#stage08 h3 span {display: block; color: #333; font-size: 18px; font-family: 'Noto Sans JP';}
#stage08 h3 {text-align: center; color: #0818A8; font-weight: bold; font-family: 'Montserrat'; font-size: 50px; margin-bottom: 50px;}
#stage08 li p:first-child {font-size: 1.1em; font-weight: bold;}
#stage08 p {border-bottom: 1px solid #EEE; padding: 15px 0;}

/* STAGE098 */
#stage09 {margin-bottom: 100px;}
#stage09 h3{display: flex; border-bottom: 1px solid #EEE; padding: 10px 0; align-items: center; justify-content: flex-start; margin-bottom: 30px;}
#stage09 h3 span {font-size: 11px; color: #CCC; margin-left: 10px;}
#stage09 i {color: #0818A8; font-size: 28px; line-height: 1;}
#stage09 ul {margin-bottom: 30px; font-size: 0.8em; letter-spacing: normal; justify-content: flex-start;}
#stage09 ul li{text-align:center;}
#stage09 ul li p{margin: 10px 0; text-align: center;}
#stage09 ul li img{border-radius:10px;}
#stage09 ul.col6 li:last-child {margin: 0;}
#stage09 ul.col6 li {width: 16%;  margin-right: 1%;}

/* ======= PAGES ======= */
#container.page {}
#container.post {margin: 50px 0 100px;}
section.w1080 {width: 90%; margin: 0 auto; max-width: 1440px;}

.page-title {height: 25vw; min-height: 300px; width: 100%; text-align: center; position: relative; margin: 150px auto 80px; z-index: 1;}
.page-title h2 {background: #FFF; display: block; position: absolute; bottom: 0; padding: 10px 50px; font-size: 2em; font-family: 'Noto Serif JP'; font-weight: bold; border-radius: 0 10px 0 0;}

.clinicPage {background: url("img/clinic/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.aboutPage {background: url("img/about/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.devicePage {background: url("img/device/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.emergencyPage {background: url("img/emergency/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.hospitalPage {background: url("img/hospitalization/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.newsPage {background: url("img/news/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.officePage {background: url("img/office/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.otherPage {background: url("img/other/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.subjectsPage {background: url("img/subjects/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.contactPage {background: url("img/other/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.facilityPage {background: url("img/facility/title.jpg")no-repeat; background-size: cover; border-radius: 10px;}
.page h3 {font-family:'Noto Serif JP', serif; text-align: left; font-size: 32px; margin-bottom: 30px; font-weight: bold;  border-bottom: 1px solid #EEE;}
.page h4 {border-left: 3px solid #0818A8; font-size: 1.2em; padding-left: 20px; margin-bottom: 20px;}
.page h4 span {color: #0818A8;}
.page h5 {font-weight: bold; color: #0818A8; font-size: 1.2em; margin-bottom: 10px;}
.page p {font-size: 0.9em; margin-bottom:15px; text-align: justify;}
.page table{ margin-bottom:15px;}

.basebox {margin-bottom: 50px; line-height: 2;}

table.tablepress {width: 100%;}
table.tablepress td {border: 1px solid #EEE; padding: 5px 15px; white-space: nowrap;}
table.tablepress td.column-1 {background: #F7F5F2;}

.pagefoot {text-align: center;}
.pagefoot img {width: 518px; height: auto;}

ul.col2{display: flex; justify-content: space-between;flex-wrap: wrap;}
ul.col2 li{width:48%;}
ul.col2:after {content: ""; display: block; width: 48%; height: 0;}
ul.col2 img{max-width:100%; width: 100%;}
ul.col3{display: flex; justify-content: space-between;flex-wrap: wrap;}
ul.col3 li{width:32%;}
ul.col3:after {content: ""; display: block; width: 32%; height: 0;}
ul.col3 img{width:100%; margin-bottom: 10px;}
ul.col4{letter-spacing: -.4em; width:100%;}
ul.col4 li{letter-spacing: 0.1em; display:inline-block; width:23.33333%; vertical-align: top; margin:0 0 0 2%;}
ul.col4 li:nth-child(4n+1){margin:0 0 0 0;}
ul.col5 li {width: 19%;}
ul.col5 {display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap;}
ul.col5:after {content: ""; display: block; width: 19%; height: 0;}

ul.col6 li {width: 15%;}
ul.col6 {display: flex; justify-content: space-between;}

.partsFoot ul li {width: 50%;position: relative; overflow: hidden;}
.partsFoot ul li img {height: auto; transition: transform .6s ease; }
.partsFoot ul li:hover img {transform: scale(1.1); }
.partsFoot ul li h3 {font-family: 'Montserrat'; font-weight: bold; font-size: 38px; align-items: center; bottom: 0; display: flex; justify-content: center; flex-direction: column; left: 0; margin: auto;  position: absolute;  right: 0;  top: 0;  width: 80%;}
.partsFoot ul li h3 span {font-family: 'Noto Sans JP'; display: block; font-size: 14px;}
.partsFoot ul li a{color:#FFF;}

/**** CLINIC ****/
.clinic02 table.tablepress td.column-2 {background: #F7F5F2;}
.clinic02 table{margin:0;}
.subjects01 ul li a {border-bottom: 1px solid #EEE; padding: 11px 0px; display: block;}
.subjects01 ul li a:hover{background: #F7F5F2;}
.clinic01 table.tablepress tr.row-1 {background: #F7F5F2;}
.clinic02 table.tablepress tr.row-1 {background: #F7F5F2;}
.clinic03 table.tablepress tr.row-1 {background: #F7F5F2;}


/**** HOSPITALIZATION ****/
.pageNav ul li a {border-bottom: 1px solid #EEE; padding: 11px 0px; display: block;}
.pageNav ul li a:hover{background: #F7F5F2;}
.hospital01 p {margin-bottom: 30px;}
.hospital02 ul {max-width: 1100px;}
.hospital02 ul li {border: 1px solid #EEE; text-align: center; padding: 30px; box-sizing: border-box; border-radius: 10px; margin-bottom: 20px;}
.hospital02 ul li img {width: 100px; margin-bottom: 20px;}
.hospital02 ul li p {text-align: left; margin: 0;}
.hospital03 table td {white-space: unset;}
.hospital04 table td {white-space: unset;}
.hospital06 a {display: block; text-align: center; border: 1px solid #0818A8; padding: 10px; border-radius: 10px; color: #0818A8;}
.hospital06 a:hover{background:#0818A8; color:#FFF;}

/**** SUBJECTS ****/
.subjects03 ul li {cursor: pointer; overflow: hidden; position: relative; border-radius: 10px;}
.subjects03 ul li img {height: auto; transition: transform .6s ease; }
.subjects03 ul li:hover img {transform: scale(1.1); }
.subjects03 ul li h3 {font-family: 'Noto Sans JP'; font-size: 16px; align-items: center; bottom: 0; display: flex; justify-content: center; flex-direction: column; left: 0; margin: auto;  position: absolute;  right: 0;  top: 0;  width: 80%;}
.subjects03 ul li h3 span {display: block; font-size: 10px;}
.subjects03 ul li i {position: absolute; right: 10px; bottom: 10px;}
.subjects03 ul li a{color:#333;}
/**** 20240124追加フロー図 ****/
.flow_design03 {
  display: flex;
  align-items: center;
  margin-left: 20px;
	margin-bottom:30px
}

.flow_design03 ul {
  padding: 0;
}

.flow_design03 li {
  list-style-type: none;
}

.flow_design03 dd {
  margin-left: 0;
}

.flow03 {
  position: relative;
}

.flow03::before {
  content: "";
  width: 15px;
  height: 100%;
  background: #eee;
  margin-left: -129px;
  display: block;
  position: absolute;
  top: 0;
  left: 120px;
  border-radius: 20px;
}

.flow03 > li {
  position: relative;
}

.flow03 > li:not(:last-child) {
  margin-bottom: 60px;
}

.flow03 > li .icon03 {
  font-size: 0.8em;
  width: 2em;
  height: 2em;
  line-height: 2;
  text-align: center;
  font-weight: bold;
  border-radius: 100vh;
  color: #fff;
  background: #0818A8;
  display: inline-block;
  margin-right: 0.3em;
}

.flow03 > li dl {
  padding-left: 70px;
  position: relative;
}

.flow03 > li dl::before,
.flow03 > li dl::after {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
}

.flow03 > li dl::before {
  width: 7px;
  height: 7px;
  margin-top: -3px;
  background: #0818A8;
  border-radius: 50%;
  left: -4px;
}

.flow03 > li dl::after {
  width: 50px;
  border-bottom: 1px dashed #999;
  position: absolute;
  left: 5px;
}

.flow03 > li dl dt {
  font-size: 1.3em;
  font-weight: 600;
  color: #0818A8；
  margin-bottom: 0.5em;
  display: flex;
  align-items: center;
}




/**** ABOUT ****/
.about03 table td {white-space: unset;}
.about04 table td {white-space: unset;}

/**** EMARGENCY ****/
.emergency03 table td {white-space: unset;}
.emergency01 .glayBox p {font-size: 2em; font-weight: bold; display: flex; align-items: center;}
.emergency01 .glayBox p span {font-weight: normal; font-size: 0.5em; display: inline-block; margin-left: 25px;}
.glayBox p:last-child {margin: 0;}
.glayBox {background: #F7F5F2; padding: 20px; border-radius: 10px; margin-bottom: 30px;}

/**** DEVICE ****/
.device01 img {margin-bottom: 20px;}

/**** OTHER ****/
.other01 table td {white-space: unset;}
.other02 ul {margin-bottom: 30px; font-size: 0.8em; letter-spacing: normal; justify-content: flex-start;}
.other02 ul li{text-align:center;}
.other02 ul li p{margin: 10px 0; text-align: center;}
.other02 ul li img{border-radius:10px;}
.other02 ul.col6 li:last-child {margin: 0;}
.other02 ul.col6 li {width: 16%;  margin-right: 1%;}

/**** OFFICE ****/
.office01 ul li {font-size: 1.4em; text-align: center; margin-bottom: 30px; font-family: 'Noto Serif JP';}

/**** CONTACT ****/
.contactBox h5 {background: #F5F5F5; text-align: center; margin: 30px 0; padding: 20px 0;}
.contactBox p {text-align: center;}

.scrollBox {margin: 30px 0; height: 100px; overflow-x: hidden; padding: 30px; border: 1px solid #CCC; font-size: 14px;}
.scrollBox p {text-align: justify; font-size: 12px; font-family: 'Noto Sans JP';}

.table-entry input {width: 100%; border: #CCC solid 1px; padding: 10px; box-sizing: border-box;}
.table-entry textarea {margin-top: 10px; width: 100%; border: 1px solid #CCC;}
.table-entry input.p-postal-code {width: 100px;}
.table-entry th span {background: #b62020; border-radius: 5px; font-size: 10px; color: #FFF; padding: 3px 5px; margin-right: 10px;}
span.postText {background: #F5F5F5; margin-left: 15px; padding: 10px 15px;}
input.wpcf7-form-control.wpcf7-submit.has-spinner {width: 100%; padding: 15px 0; background: #3CB371; color: #FFF;}

/* ======= CATEGORY ======= */
.catWrap {display: flex; justify-content: space-between;}
.catpage h3 {font-family: 'Noto Sans JP'; font-size: 1em; margin-bottom: 0;  padding: 10px 0; border-bottom: 1px solid #EEE; font-weight: bold;}
.catNews a {display: flex; align-items: center;  border-bottom: 1px solid #EEE;}
.catNews a p {margin-right: 15px;}

#leftBox {width: 70%;}
#leftBox h3 {border-bottom: none;}

#rightBox {width: 25%;}
#rightBox h3 {margin-bottom: 15px;}
.postCat {margin-bottom: 30px;}

.selectbox-002 {position: relative;}
.selectbox-002::before,
.selectbox-002::after {position: absolute; content: ''; pointer-events: none;}
.selectbox-002::before {right: 0; display: inline-block; width: 2.8em; height: 2.8em; border-radius: 0 3px 3px 0; background-color: #a8a8a8; content: '';}
.selectbox-002::after {position: absolute; top: 50%; right: 1.4em; transform: translate(50%, -50%) rotate(45deg); width: 6px; height: 6px; border-bottom: 3px solid #fff; border-right: 3px solid #fff; content: '';}
.selectbox-002 select {appearance: none; -webkit-appearance: none; -moz-appearance: none; min-width: 230px; height: 2.8em; padding: .4em 3.6em .4em .8em; border: 2px solid #a8a8a8; border-radius: 3px; color: #333333; font-size: 1em; cursor: pointer;}
.selectbox-002 select:focus {outline: 1px solid #a8a8a8;}

/* ======= SINGLE PAGE ======= */
#leftBox h3.single-title {border-bottom: 1px solid #EEE; font-family: 'Noto Serif JP'; padding: 0 0 10px; font-size: 1.6em; display: flex; align-items: center; margin-bottom: 50px; font-weight: normal;}
#leftBox h3.single-title span{font-size: 0.5em; margin-right: 15px;}

.cat_paging {width: 100%; position: relative; overflow: hidden; text-align: center;}
.cat_paging p {margin-bottom: 20px;}
.cat_paging a {border: 1px solid #EEE; display: block; padding: 15px 0; border-radius: 5px;  font-family: nNoto sans-serif;  font-size: 0.9em;}
.cat-back {border-top: 1px solid #EEE; padding: 50px 0; margin-top: 50px; }

.alignLeft {float: right; width: 30%;}
.alignCenter {position: absolute; width: 30%; left: 35%;}
.alignRight {float: left; width: 30%;}

/* 投稿エリアの設定 */
#editor-area a{color:#444;}
#editor-area a:hover{background:#EEEEEE;}
#editor-area img{max-width: 100%; height:auto; display:block;}
#editor-area h4{border-left: 3px solid #0818A8; font-size: 1.2em; padding-left: 20px; margin-bottom: 20px;}
#editor-area h5 {font-weight: bold; color: #0818A8; font-size: 1.2em; margin-bottom: 10px;}
#editor-area h6{font-weight: bold; font-size: 1em; padding-bottom:10px; margin-bottom:10px; color:#333; }
#editor-area p{margin-bottom:30px; line-height: 1.8em;}
#editor-area strong{font-weight:bold;}
#editor-area ul{margin: 30px 0 30px 5px;}
#editor-area ul li{margin: 2px 0 2px 15px;  list-style: disc;}
#editor-area table{ width: 100%; border-collapse: collapse; margin-bottom:30px;}
#editor-area table th{padding: 10px; background-color: #eee; border: 1px solid #CCC;}
#editor-area table td { padding: 10px; border: 1px solid #EEE;}
#editor-area blockquote{padding: 20px; margin-bottom:30px; background:#EEEEEE;}
#editor-area blockquote p{margin:0px !important;}
#editor-area div.borderbox{border:1px dotted #CCC; padding: 20px; margin-bottom:30px;}
#editor-area div.borderbox p{margin:0px !important;}
#editor-area div.borderbox ul{margin:0px !important;}

#editor-area iframe::before { content: "<div>";}
#editor-area iframe::after { content: "</div>";}
#editor-area a{color:#2196F3; }
#editor-area a:hover{color:#EEEEEE;}

a.groupBtn {text-align: center; display: block; padding: 20px; background: #66cb9e; color: #fff;	font-size:14px;}
a.groupBtn:hover {background: #F5F5F5; color: #CCC;}

@media screen and (max-width: 1279px) {
 /*　================================ for ipad ================================　*/

}

@media screen and (max-width: 480px) {
 /*　================================ for iphone ================================　*/

/* HEAD */
html,body { height: 100%; width: 100%; min-width: 100%; font-size: 14px;}
section.w1080 {width:90%; margin: 0 auto;}
.pagetop{bottom:10px; right:10px; z-index: 2;}
section.wrapCont {width: 90%; min-width: auto;}	

.sp{display:inline;}
.pc{display:none!important;}
.mb50 {margin-bottom: 20px;}
.mt50 {margin-top: 50px;}
.button {padding: .9em 30%;}
.jump{margin-top:-142px; padding-top:142px;}


/* header */
header { padding-bottom: 0;}
header h1 {padding: 0 0 0 10px;}
header h1 img {width: 180px;}	
ul.headBoxNav {display: none;}
.nav-button-box {background: #0818A8;}
.nav-button span {background-color: #FFF;}

.navBox {width: 100%; height: 100vh;  background-color: rgba(255,255,255,0.9); padding: 80px 10%; position: fixed; top:0; right: 0; font-size: 16px;}
.nav-wrap {position: fixed;}
.navBox a {font-size: 18px; font-weight: bold; font-family: 'Montserrat'; border-bottom: 1px solid #333;  display: block; padding: 10px 0;}
.navBox a span {font-size: 10px; display: block;}
.headBoxnav2{display:none;}

.sp.headFoot {border-top: 1px solid #EEE; display: block;}
.headFoot ul {display: flex;}
.headFoot ul li {text-align: center; letter-spacing: normal; font-size: 10px; width: 33.33333%;}
.headFoot ul li:nth-child(2) {border-left: 1px solid #EEE; border-right: 1px solid #EEE;}
.headFoot ul li a {display: block; padding: 10px 0;}
.headFoot ul li a i {display: block; font-size: 20px; color: #0818A8;}

/* footer */
.footTop ul.col3 {flex-direction: row;}
.footTop ul li {text-align: center; letter-spacing: normal; font-size: 10px; width: 33.33333%;}
.footTop ul li:nth-child(2) {border-left: 1px solid #EEE; border-right: 1px solid #EEE;}
.footTop ul li a {display: block; padding: 10px 0;}
.footTop ul li a i {display: block; font-size: 20px; color: #0818A8;}

footer {padding: 0 0 64px 0;}
footer section.wrapCont {width: 90%; min-width: auto;}
.footbox {flex-wrap: nowrap; flex-direction: column;}
.footbox01 {width: 100%; margin-bottom: 30px;}
.footbox01 p {margin-bottom: 10px; text-align: center;}
.footbox02 {width: 100%;}
.footbox02 ul.col3 {text-align: center;}
.footbox02 ul.col3 li{margin-bottom: 10px;}

p.copyRights {margin: 0;}

.footBtnFix.sp {position: fixed; bottom: 0; text-align: center; width: 100%; z-index: 500;}
.footBtnFix a {display: block; text-align: center; padding: 20px 0;  background: #0818A8; color: #FFF; font-size: 16px; font-weight: bold; }


/* 共通 */
#whiteBg {width: 90%;}
#container{width:100%; margin:0; padding:0;}

table.base th {white-space: nowrap; padding: 10px; border: none; display: block; border-bottom: 1px solid #CCC; background: #F5F5F5;}
table.base td {border: none; border-bottom: 1px solid #CCC; padding: 10px 0; display: block; box-sizing: border-box;}

.basebox {margin-bottom: 30px;}
.basebox h4 {margin-bottom: 20px;}
.basebox h5 {margin-bottom: 20px;}
.basebox.pickup h3 {text-align: center; font-size: 1.5em; letter-spacing: 0.1em;  margin-bottom: 30px;}
.basebox.pickup p {text-align: justify; line-height: 2em;}

.partsFoot ul.col2 {margin-bottom: 0;}
.partsFoot ul.col2 li {width: 100%; margin-bottom: 0;}
.partsFoot ul.col2 li h3 {font-size: 25px;}


/* TEASER */
#teaser {margin-top: 142px;}
#teaser {background: url("img/top/01sp.jpg")no-repeat; display: flex; align-items: flex-end; background-size: cover; background-position: bottom;}
.teaserInr {padding: 0 0 30px 30px;}
.teaserInr h2 {font-size: 35px; padding-bottom: 30%;}
.teaserInr h2 span {font-size: 12px;}

/* STAGE01 */
#stage01 {padding: 20px 0 0;}
#stage01 ul {font-size: 1em;}
#stage01 ul p span {display: block;}

/* STAGE02 */
#stage02 {padding-top: 80px; padding-bottom: 40px; margin-bottom: 30px;}
#stage02 ul.col4 {display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
#stage02 ul li {width: 47%; text-align: center; margin: 0 0 20px 0;}
#stage02 ul li h3 {font-size: 12px; padding-bottom: 10px; margin-bottom: 0;}
#stage02 ul li a img {width: 70px; margin: 10px 0 20px;}
#stage02 ul li a p {width: 90%;}

/* STAGE03 */
#stage03 {margin-bottom: 20px;}
#stage03 ul li {width: 100%; text-align: center;}
#stage03 ul.col2 {display: flex; flex-direction: column-reverse;}
#stage03 ul li:last-child:after {width: 100%; height: 230px; top: 10px; right: unset; bottom: unset; left: 10px;}

/* STAGE04 */
#stage04 {margin-bottom: 50px; position: relative; text-align: center;}
#stage04 ul li {margin: 0 0 10px 0;}
.topNewsTitle h3 span {display: none;}
p.time {width: 10%; padding: 0 10px; font-size: 11px;}

/* STAGE05 */
#stage05 {margin-bottom: 30px; position: relative; text-align: center;}
#stage05 h3 {font-size: 40px; margin-bottom: 30px;}
#stage05 h3 span {font-size: 12px;}
.sticky p {font-size: 16px; padding: 0 30px;}

/* STAGE06 */
#stage06 {margin-bottom: 30px; position: relative;}
#stage06 .wrapCont {width: 84%; min-width: auto;}
.caption {padding: 6px 9px; font-size: 10px; letter-spacing: normal;}
#stage06 ul {margin-bottom: 10px;}
#stage06 ul li {padding: 0 1px; }

/* STAGE07 */
#stage07 {margin-bottom: 50px; position: relative; text-align: center;}
#stage07 ul li {width: 100%; margin-bottom: 0;}
#stage07 ul li h3 {font-size: 25px;}
.s07Bnr {position: relative; right: unset; bottom: unset; width: 90%; padding: 15px 20px; box-sizing: border-box; margin: 0 auto;}

/* STAGE08 */
#stage08 {margin-bottom: 30px; position: relative;}
#stage08 h3 {font-size: 40px; margin-bottom: 30px;}
#stage08 h3 span {font-size: 12px;}
#stage08 p {text-align: center; font-size: 12px;}

/* STAGE09 */
#stage09 {margin-bottom: 30px;}
#stage09 h3 span {display: none;}
#stage09 ul.col6 li {width: 100%; margin-right: 0; padding-bottom: 10px;  border-bottom: 1px solid #EEE;  margin-bottom: 10px;}
#stage09 ul.col6 li a {display: flex; align-items: center;}
#stage09 ul.col6 li a img {width: 30%; margin-right: 10px;}
#stage09 ul.col6 li:last-child {border: none;}

/* =====PAGE===== */
#container.page {width: 100%;margin-bottom: 0; box-sizing: border-box;}

.page-title {min-height: auto; padding: 0; margin: 160px auto 30px; height: 120px;}
.page-title h2 {font-size: 16px; padding: 10px 5%;}

h2.blueTitle {padding: 20px; font-size: 20px;}
h2.orangeTitle {padding: 20px; font-size: 20px;}
h2.greenTitle {padding: 20px; font-size: 20px;}
h2.yellowTitle {padding: 20px; font-size: 20px;}

.page h3 {font-size: 20px; padding-bottom: 10px; margin-bottom: 30px;}

.basebox p {font-size: 14px;}

ul.col2 {flex-direction: column; margin-bottom: -30px;}
ul.col2 li{width:100%; margin-bottom: 30px;}
ul.col3 {flex-direction: column; margin-bottom: -30px;}
ul.col3 li{width:100%; margin-bottom: 30px;}
ul.col6 {justify-content: space-between; flex-direction: row; flex-wrap: wrap; margin-bottom: -30px;}
ul.col6 li {width: 48%; margin-bottom: 30px;}

ul.col2.reverse {display: flex; flex-direction: column-reverse;}

/* ABOUT */
.pageNav ul li a {font-size: 0.9em;}
.pageNav ul.col3 li {margin: 0;}

/* CLINIC */
.clinic02 table {margin: 0; margin-bottom: 15px;}

/* SUBJECTS*/
.subjects01 ul.col4 {display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between;}
.subjects01 ul.col4 li {width: 48%; margin: 0; letter-spacing: 0; font-size: 0.9em;}

/* NEWS */
.catNews ul li a {align-items: flex-start; flex-direction: column;}
.catNews ul li a p {font-size: 11px;}
.catNews ul li a h3 {margin-bottom: 0; margin-left: 0; font-size: 15px; padding-bottom: 0;}

/* EMARGENCY */
.emergency01 .glayBox p {display: flex; align-items: center; flex-direction: column;}

/* WEL */
.wel01 {margin-bottom: 20px;}
.wel01 img { height: 150px;}

.other02 ul.col6 li {width: 100%; margin-right: 0; padding-bottom: 10px;  border-bottom: 1px solid #EEE;  margin-bottom: 10px;}
.other02 ul.col6 li a {display: flex; align-items: center;}
.other02 ul.col6 li a img {width: 30%; margin-right: 10px;}
.other02 ul.col6 li:last-child {border: none;}

.hospital03 table td {white-space: nowrap;}

/* =======CATEGORY======= */

.catPage ul li h3 {font-size: 14px; color: #333; margin: 10px 0;}

.catWrap {display: flex; justify-content: flex-start; flex-direction: column;}
#leftBox { width: 100%;}
#rightBox {width: 100%; margin-bottom: 50px;}
.selectbox-002 select{width: 100%; min-width: 100%;}
.postCat ul li a {border: 1px solid #EEE; width: 100%; text-align: center; display: block; margin-bottom: 10px; padding: 10px; box-sizing: border-box; border-radius: 5px;}

/* =======POST AREA======= */
.cat-postbox h3 span {display: block; font-size: 0.8em; margin-bottom: 10px;}
.cat-postbox { padding: 10px 0;}
.cat-postbox li { padding: 20px 0; font-size: 0.9em;}
.cat-nav li {margin: 5px 5px; font-size: 0.8em;}

.single-postbox {padding: 0;  margin-bottom: 30px;}
.single-postbox h3 { font-size: 1.2em; margin-bottom: 30px;}
.single-postbox h3 span {margin: 0 10px 0 0;}

.cat_paging a {font-size: 12px; letter-spacing: normal;}
.cat-back {padding: 20px 0; margin-top: 30px;}

.tag-title {margin-bottom: 30px;}
.tag-title h3 {margin-top: 30px; margin-bottom: 30px; font-size: 1.5em;}

/* =======EDITOR AREA======= */
#editor-area p {font-size: 0.9em;}
#editor-area h4 {font-size: 1em !important; margin-bottom: 25px !important; }
#editor-area h5 {font-size: 1em; margin-bottom: 10px;}

.wp-pagenavi {margin-top: 0; margin-bottom: 50px;}

.access01 ul.col2 li:nth-child(odd) {margin: 0px;}
	.access01 ul li{width:100%;}


.oshirase {margin: 0 auto 30px;}
table.tablepress { white-space: nowrap; font-size: 0.6em;}

}

