@charset "utf-8";

/* font */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Zen+Kaku+Gothic+Antique&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@4.1.1/dist/css/yakuhanmp.css');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@4.1.1/dist/css/yakuhanjp.css');

/* var */
:root {
  --c_bg: #efede6;
  --c_black: #333333;
  --c_gray: #aea99a;
  --c_white: #ffffff;
  --c_blue: #20528f;
  --c_ltblue: #b8cbd8;
  --c_mdblue: #4981a3;
  --c_orange: #ee7700;
  --c_ltorange: #ffc779;
  --c_beige: #e0dccf;
  --c_dkbeige: #9b957d;
}

/* reset */
* { padding: 0; margin: 0; box-sizing: border-box; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, caption, cite, code, dfn, em, var { font-style: normal; font-weight: 500; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 600; }
q:before, q:after { content: ''; }
abbr, acronym { border: 0; }
section, article { display: block; }

/* iOS reset */
input[type=text] { border:none; -webkit-border-radius : 0; -webkit-appearance : none; -webkit-tap-highlight-color : rgba(0,0,0,0); }
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: -0.15em; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background: transparent; }
button,input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none; background: transparent; }
input[type="radio"] { display: none; }

/* base */
html { position: relative; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body {
  animation: fadeIn 2s ease 0s 1 normal; -webkit-animation: fadeIn 2s ease 0s 1 normal;
  position: relative; -webkit-font-smoothing: auto; -webkit-font-feature-settings: 'palt'; font-feature-settings: 'palt';
  word-wrap : break-word; overflow-wrap : break-word; font-kerning: normal; -webkit-font-kerning: normal;
  font-family: YakuHanMP,"Noto Serif JP", serif;
  line-height: 1.5em; letter-spacing: 0.05em; font-weight: 500; box-sizing: border-box; background-color: var(--c_bg); color: var(--c_black); padding: 0; margin: 0;
  -webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; }
img { vertical-align: bottom; height: auto; width: 100%; }
img { -webkit-user-drag: none; -khtml-user-drag: none; -moz-user-drag: none; -o-user-drag: none; user-drag: none; }
::selection { background: var(--c_black); color: var(--c_bg); }
::-moz-selection { background: var(--c_black); }

/* fadein */
.fadein { opacity : 0; transform: translateY(0); transition: all 0.6s; }
@keyframes fadeIn { 0% { opacity: 0 } 100% { opacity: 1 } }
@-webkit-keyframes fadeIn { 0% { opacity: 0 } 100% { opacity: 1 } }

/* link */
.cWrap a { transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out, border-color 0.15s ease-in-out; text-decoration: none; }
.cWrap a:link,.cWrap a:hover,.cWrap a:active,.cWrap a:visited { color:var(--c_black);  }
.cWrap a[href^="tel:"] { pointer-events: none; }

/* options */
.pc { display:inline; }
.sp { display:none; }
.br__pc { display:block; }
.br__sp { display:none; }
.rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-feature-settings : "pkna"; }

/* wp_admin */
body.logged-in { margin-top: 32px; }
@media screen and (max-width: 600px) {
body.logged-in { margin-top: 46px; }
#wpadminbar { position: fixed !important; }
}

/* flex */
.flex { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.fill { object-fit: cover; font-family: 'object-fit: cover;'; }

/* styles */
.cWrap { position: relative; min-width: 1024px; max-width: 1440px; margin:auto; }

.cHeader { display:flex; justify-content: space-between; align-items: center; padding:2rem 3rem 2.5rem 3rem; }
.cHeader .cHeader__logo { width:48%; }
.cHeader .cHeader__nav { width:50%; }
.cHeader .cHeader__nav ul { display:flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap:1.25rem 0; }
.cHeader .cHeader__nav ul li { font-size: 1.25rem; line-height: 1em; white-space: nowrap; }
.cHeader .cHeader__nav ul li:nth-child(1),
.cHeader .cHeader__nav ul li:nth-child(4) { width:12.5rem; }
.cHeader .cHeader__nav ul li:nth-child(2),
.cHeader .cHeader__nav ul li:nth-child(5) { width:13.5rem; }
.cHeader .cHeader__nav ul li:nth-child(3),
.cHeader .cHeader__nav ul li:nth-child(6) { width:13rem; }
.cHeader .cHeader__nav ul li a { display: inline-flex; align-items: center; }
.cHeader .cHeader__nav ul li a i { display: flex; align-items: center; width:1rem; margin-right:0.5em; }
.cHeader .cHeader__nav ul li a:hover { color: var(--c_dkbeige); }
.cHeader .cHeader__nav ul li.current a { color: var(--c_dkbeige); }

.cFooter { padding:3.5rem 3rem 3.5rem 3rem; }
.cFooter .cFooter--head { display:flex; justify-content: space-between; align-items: center; margin:0 0 3rem 0; }
.cFooter .cFooter__logo { width:48%; }
.cFooter .cFooter__nav { width:50%; }
.cFooter .cFooter__nav ul { display:flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap:1.25rem 0; }
.cFooter .cFooter__nav ul li { font-size: 1.25rem; line-height: 1em; white-space: nowrap; }
.cFooter .cFooter__nav ul li:nth-child(1),
.cFooter .cFooter__nav ul li:nth-child(4) { width:12.5rem; }
.cFooter .cFooter__nav ul li:nth-child(2),
.cFooter .cFooter__nav ul li:nth-child(5) { width:13.5rem; }
.cFooter .cFooter__nav ul li:nth-child(3),
.cFooter .cFooter__nav ul li:nth-child(6) { width:13rem; }
.cFooter .cFooter__nav ul li a { display: inline-flex; align-items: center; }
.cFooter .cFooter__nav ul li a i { display: flex; align-items: center; width:1rem; margin-right:0.5em; }
.cFooter .cFooter__nav ul li a:hover { color: var(--c_dkbeige); }
.cFooter .cFooter__nav ul li.current a { color: var(--c_dkbeige); }
.cFooter .cFooter--mid { display:flex; justify-content: space-between; align-items: flex-start; margin:0 0 2rem 0; }
.cFooter .cFooter--mid address { font-size: 0.95rem; line-height: 1.6em; }
.cFooter .cFooter--mid .cFooter__nav--sub { display: flex; flex-direction: column; }
.cFooter .cFooter--mid .cFooter__nav--sub li { font-size: 0.9rem; line-height: 1em; margin:0 0 1.25em 0; }
.cFooter .cFooter--mid .cFooter__nav--sub li a:hover { color:var(--c_dkbeige); }
.cFooter .cFooter--mid .cFooter__links { display: flex; align-items: center; justify-content: flex-start; gap:0 1rem; }
.cFooter .cFooter--mid .cFooter__sns { display: flex; align-items: center; justify-content: flex-start; gap:0 1.5rem; background-color: var(--c_white); padding:0.75em 2em; border-radius: 2em; }
.cFooter .cFooter--mid .cFooter__sns ul { display: flex; align-items: center; justify-content: flex-start; gap:0 1.25rem; }
.cFooter .cFooter--mid .cFooter__sns li {  }
.cFooter .cFooter--mid .cFooter__sns li a { display:block; width:1.8rem; }
.cFooter .cFooter--mid .cFooter__btn { font-size: 1.1rem; line-height: 1em; }
.cFooter .cFooter--mid .cFooter__btn a { display: flex; align-items: center; background-color: var(--c_white); padding:1em 1.75em; border-radius: 2em; }
.cFooter .cFooter--mid .cFooter__btn a:hover { background-color: var(--c_beige); }
.cFooter .cFooter--mid .cFooter__btn a i { display: flex; align-items: center; width:1rem; margin-left:1em; }
.cFooter .cFooter__copyright { font-size: 0.7rem; line-height: 1em; margin-top:1rem; }

.cMain { padding: 0 3rem; display: flex; flex-direction: row-reverse; flex-wrap: wrap; justify-content: space-between; }
.home .cMain { display: block; }

.cMain__hero { position: relative; display:flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; margin:0 0 1rem 0; }
.cMain__hero .cMain__hero--main { width:100%; padding:0 15rem 5rem 0; }
.cMain__hero .cMain__hero__catch { width:28rem; position: absolute; background-color: var(--c_bg); padding:4rem 4rem 4rem 4rem; top:7.5rem; right:0; }
.cMain__hero .cMain__hero__catch .cMain__hero__catch--lead { font-size: 1.8rem; line-height: 1.8em; white-space: nowrap; letter-spacing: 0.1em; color:var(--c_mdblue); }
.cMain__hero .cMain__hero__catch .cMain__hero__catch--ex { font-size: 1.1rem; line-height: 1.8em; margin:1.75rem 0 2.5rem 0; text-align: justify; }
.cMain__hero .cMain__hero__catch .cMain__btn { font-size: 1.3rem; line-height: 1em; }
.cMain__hero .cMain__hero__catch .cMain__btn a { display: flex; align-items: center; justify-content: center; background-color: var(--c_white); padding:1em 2em; border-radius: 2em; }
.cMain__hero .cMain__hero__catch .cMain__btn a:hover { background-color: var(--c_beige); }
.cMain__hero .cMain__hero__catch .cMain__btn a i { display: flex; align-items: center; width:1rem; margin-left:1em; }
.cMain__hero .cMain__hero--mid { width: 55%; }
.cMain__hero .cMain__hero--sub { width: 38%; }

.cMain__home { padding:3rem 8rem; }

.cMain__home .cMain__info { display:flex;justify-content: space-between; }
.cMain__home .cMain__info .cMain__info--news { width:60%; }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head { display:flex; justify-content: space-between; align-items: center; margin:0.75em 0 2em 0; }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head .cMain__info--news__head--title { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-size: 1.6rem; line-height: 1em; font-weight: 600; color:var(--c_blue); }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head .cMain__info--news__head--link { display:flex; align-items: center; }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head .cMain__info--news__head--link a { display:flex; justify-content: space-between; align-items: center; font-size: 1rem; line-height: 1em; letter-spacing: 0.05em; padding:1rem 0; }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head .cMain__info--news__head--link a i { width:1em; margin:0 0 0 0.5em; }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head .cMain__info--news__head--link a:hover { color:var(--c_orange); }
.cMain__home .cMain__info .cMain__info--news ul { border-top:solid 1px var(--c_black); }
.cMain__home .cMain__info .cMain__info--news ul li { border-bottom:solid 1px var(--c_black); padding:1rem 0; }
.cMain__home .cMain__info .cMain__info--news ul li {}
.cMain__home .cMain__info .cMain__info--news ul li .news--data { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; display:flex; align-items: center; gap:0 0.5rem; }
.cMain__home .cMain__info .cMain__info--news ul li .news--data .news--date { font-size: 1rem; line-height: 1em; padding-left:0.25em; }
.cMain__home .cMain__info .cMain__info--news ul li .news--data .news--cat { font-size: 0.8rem; line-height: 1em; background-color: var(--c_ltorange); padding:0.35em 1em; border-radius: 2em; }
.cMain__home .cMain__info .cMain__info--news ul li .news--title { font-size: 1.1rem; line-height: 1.7em; margin-top:0.5em; }
.cMain__home .cMain__info .cMain__info--news ul li .news--title a { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; color:var(--c_mdblue); }
.cMain__home .cMain__info .cMain__info--news ul li .news--title a:hover { color:var(--c_orange); }
.cMain__home .cMain__info .cMain__info--news ul li a:hover .news--title { color:var(--c_dkbeige); }
.cMain__home .cMain__info .cMain__info--whatsnew li { display: flex; gap:1rem; align-items: center; }
.cMain__home .cMain__info .cMain__info--whatsnew li .news--date { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; font-size: 1rem; line-height: 1.2em; padding-left: 0.25em; }
.cMain__home .cMain__info .cMain__info--whatsnew li .news--title { font-size: 1rem !important; line-height: 1.2em; }
.cMain__home .cMain__info .cMain__info--whatsnew li .news--title { display: flex; align-items: center; margin:0 !important; }
.cMain__home .cMain__info .cMain__info--sns { width:35%; overflow: hidden; text-align: center; }

.cMain__home .cMain__contents { margin:4rem 0; display:flex; flex-direction: row-reverse; justify-content: space-between; align-items: flex-end; }
.cMain__home .cMain__contents.cMain__contents--reverse { flex-direction: row; }
.cMain__home .cMain__contents .cMain__contents--thumb { width:65%; }
.cMain__home .cMain__contents .cMain__contents__nav { width: 30%; }
.cMain__home .cMain__contents .cMain__contents__nav .cMain__contents__title { font-size: 1.8rem; line-height: 1em; font-weight: 400; letter-spacing: 0.05em; margin-bottom:1.5em; }
.cMain__home .cMain__contents .cMain__contents__nav ul { border-bottom: solid 1px var(--c_black); }
.cMain__home .cMain__contents .cMain__contents__nav ul li { border-top:solid 1px var(--c_black); }
.cMain__home .cMain__contents .cMain__contents__nav ul li a { display:flex; justify-content: space-between; align-items: center; font-size: 1.2rem; line-height: 1em; letter-spacing: 0.05em; padding:1em; }
.cMain__home .cMain__contents .cMain__contents__nav ul li a i { width:1em; }
.cMain__home .cMain__contents .cMain__contents__nav ul li a:hover { background-color: var(--c_beige); }

.cMain__home .cMain__users { margin:4rem 0; }
.cMain__home .cMain__users ul { display:flex; justify-content: space-between; }
.cMain__home .cMain__users ul li { width:30%; }
.cMain__home .cMain__users ul li .cMain_user--thumb { margin:0 0 1.25rem 0; }
.cMain__home .cMain__users ul li .cMain_user--link { font-size: 1.4rem; line-height: 1em; display:flex; justify-content: space-between; align-items: center;}
.cMain__home .cMain__users ul li .cMain_user--link i { display: flex; align-items: center; width:1.5rem; margin-left:1em; }
.cMain__home .cMain__users ul li a:hover .cMain_user--link { color:var(--c_dkbeige); }

.cMain__home .cMain_request { display:flex; justify-content: space-between; align-items: flex-start; border:solid 1px var(--c_black); padding:3rem; margin:3rem 0; }
.cMain__home .cMain_request .cMain_reques--left { width:35%; }
.cMain__home .cMain_request .cMain_reques--left h3 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-size: 1.5rem; line-height: 1.5em; font-weight: 600; letter-spacing: 0.05em; color: var(--c_blue); margin-bottom:2rem; }
.cMain__home .cMain_request .cMain_reques--right { width:60%; font-size: 1.15rem; line-height: 1.8em; text-align: justify; }

.cMain__home .cMain__btn { font-size: 1.3rem; line-height: 1em; margin:2rem 0 0 0; }
.cMain__home .cMain__btn a { display: inline-flex; align-items: center; background-color: var(--c_white); padding:1em 2em; border-radius: 2em; }
.cMain__home .cMain__btn a:hover { background-color: var(--c_beige); }
.cMain__home .cMain__btn a i { display: flex; align-items: center; width:1rem; margin-left:1em; }

.cMain__nav { width: 20%; position: sticky; padding:2.5rem 0 0 0; right:0; top: 0; align-self: flex-start; max-height: 100vh; overflow-y: auto; }
.cMain__nav .cMain__nav__title { font-size: 1.9rem; white-space: nowrap; line-height: 1em;font-weight: 400; letter-spacing: 0.05em; margin-bottom:1.5em; }
.cMain__nav ul { border-bottom: solid 1px var(--c_black); }
.cMain__nav ul li { border-top:solid 1px var(--c_black); }
.cMain__nav ul li a { display:flex; justify-content: space-between; align-items: center; font-size: 1.1rem; line-height: 1em; letter-spacing: 0.05em; padding:1em 0.75em; }
.cMain__nav ul li a i { width:1em; }
.cMain__nav ul li.current a { background-color: var(--c_ltblue); }
.cMain__nav ul li a:hover { background-color: var(--c_beige);  }
.cMain__nav ul li.current a:hover { background-color: var(--c_ltblue); color:var(--c_black); }

.cMain__body { width: 77%; padding-left:8.5rem; margin-bottom:3rem; }
.cMain__body .cMain__cover { margin-left:-8.5rem; margin-bottom:3rem; }
.cMain__body h2 { font-size: 1.9rem; line-height: 1.5em; letter-spacing: 0.05em; margin:2em 0 1.5em -1.25rem; position: relative; display: inline-block; }
.cMain__body h2::after { content: ""; position: absolute; left: 1.25rem; bottom: -0.5rem; width: 100%; height: 1em; background-color: var(--c_ltblue); z-index: -1; }
.cMain__body h2:first-child { margin-top:1em; }
.cMain__body a.anker { padding-top:4rem; }
.cMain__body h3 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; color: var(--c_blue); font-size: 1.5rem; line-height: 1.5em; font-weight: 600; letter-spacing: 0.05em; margin:3em 0 1em 0; }
.cMain__body h2+h3 { margin:1em 0 1em 0; }
.cMain__body h3:first-child { margin:0 0 1em 0; }
.cMain__body h2+.cMain__figure { margin-top:1.5rem; }
.cMain__body h4 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; color: var(--c_blue); font-size: 1.3rem; line-height: 1.5em; font-weight: 600; letter-spacing: 0.05em; margin:2em 0 1em 0; }
.cMain__body h5 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-size: 1.25rem; line-height: 1.5em; font-weight: 600; letter-spacing: 0.05em; margin:2em 0 1em 0; }
.cMain__body p { font-size: 1.25rem; line-height: 1.8em; margin:0 0 1em 0; text-align: justify; }
.cMain__body p:last-child { margin:0 0 0 0; }
.cMain__body p a { color: var(--c_blue) !important; text-decoration: underline; }
.cMain__body p a:hover { text-decoration: none; }
.cMain__body p.alignleft { text-align: left; }
.cMain__body .poster { width:70%; margin:5rem 0; }
.cMain__body strong { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; color: var(--c_mdblue); }
.cMain__body .cMain__figure { margin:5rem 0 5rem -8.5rem; }
.cMain__body .cMain__btn { font-size: 1.3rem; line-height: 1em; margin:2rem 0; }
.cMain__body .cMain__btn a { display: inline-flex; align-items: center; background-color: var(--c_white); padding:1em 2em; border-radius: 2em; }
.cMain__body .cMain__btn a:hover { background-color: var(--c_beige); }
.cMain__body .cMain__btn a i { display: flex; align-items: center; width:1rem; margin-left:1em; }
.cMain__body .cMain__btn.cMain__btn--done { font-size: 1.3rem; line-height: 1em; margin:2rem 0; }
.cMain__body .cMain__btn.cMain__btn--done div { display: inline-flex; align-items: center; background-color: var(--c_beige); padding:1em 2em; border-radius: 2em; }
.cMain__body .cMain__btn.cMain__btn--done div i { display: none; }

.cMain__body .cMain__body__entrybody { border-bottom:solid 1px var(--c_black); padding-bottom:3rem; margin-bottom:3rem; }
.cMain__body .cMain__body__entrybody:last-child { border-bottom:none; padding-bottom:0; margin-bottom:0; }
.cMain__body .cMain__body__entrybody img.alignleft { width:70%; margin:3rem 0; }
.cMain__body .cMain__body__entrybody strong a { font-size: 1.3rem; line-height: 1em; margin:2rem 0; display: inline-flex; align-items: center; background-color: var(--c_white); padding:1em 2em; border-radius: 2em; text-decoration: none; }
.cMain__body .cMain__body__entrybody strong a::after { content: ""; display: inline-block; width: 1em; height: 1em; background-image: url("/_assets/img/svgs/arrow.svg"); background-repeat: no-repeat; background-position: center right; background-size: contain; margin-left: 0.5em; vertical-align: middle; }
.cMain__body .cMain__body__entrybody strong a:hover { background-color: var(--c_beige); }
.cMain__body .cMain__body__entrybody strong a[href="#"] { display: inline-flex; align-items: center; background-color: var(--c_beige); padding:1em 2em; border-radius: 2em; pointer-events: none; cursor: default;  }
.cMain__body .cMain__body__entrybody strong a[href="#"]::after { display:none; }

.cMain__body .cMain__rows { display:flex; flex-wrap: nowrap; gap:0 1rem; }

.cMain__body .cMain__lead { display:flex; justify-content: center; border-left:solid 1px var(--c_blue); border-right: solid 1px var(--c_blue); padding:0 0 0 0; }
.cMain__body .cMain__lead p { font-size: 1.8rem; line-height: 1.8em; letter-spacing: 0.15em; color: var(--c_blue); }

.cMain__body .cMain__role { margin:3rem 0; }
.cMain__body .cMain__role ul { border-top:solid 1px var(--c_blue); }
.cMain__body .cMain__role ul li { border-bottom: solid 1px var(--c_blue); display:flex; align-items: center; padding:1rem 3rem; color:var(--c_blue); }
.cMain__body .cMain__role ul li .cMain__role--number { font-size: 2.5rem; line-height: 1em; font-weight: 300; width:6rem; }
.cMain__body .cMain__role ul li .cMain__role--txt { font-size: 1.5rem; line-height: 1.5em; }

.cMain__body .cMain__guideline { margin:2rem 0; }
.cMain__body .cMain__guideline dl { display:flex; align-items: stretch; flex-wrap: wrap; border-top:solid 1px var(--c_blue); color: var(--c_blue); }
.cMain__body .cMain__guideline dl dt { display:flex; align-items: center; width: 40%; border-bottom: solid 1px var(--c_blue); font-size: 1.5rem; line-height: 1.5em; font-weight: 500; padding:1rem 0; }
.cMain__body .cMain__guideline dl dd { display:flex; align-items: center;  width: 60%; border-bottom: solid 1px var(--c_blue); font-size: 1.3rem; line-height: 1.5em; padding: 1rem 0; }

.cMain__body .cMain__feature { margin: 2rem 0; }
.cMain__body .cMain__feature ul { border-top: solid 1px var(--c_blue); }
.cMain__body .cMain__feature ul li { display: flex; align-items: center; border-bottom: solid 1px var(--c_blue); padding:1rem 0; }
.cMain__body .cMain__feature ul li .cMain__feature--title { width: 20%; font-size: 2rem; line-height: 1em; text-align: center; font-weight: 400; color:var(--c_blue); }
.cMain__body .cMain__feature ul li .cMain__feature--ex { width: 80%; font-size: 1.2rem; line-height: 1.8em; }

.cMain__body .cMain__point { padding:1rem 2rem; }
.cMain__body .cMain__point p { font-size: 1.6rem; line-height: 2em; margin:0 0 1em 0; letter-spacing: 0.05em; text-align: left; color:var(--c_mdblue); }

.cMain__body .cMain__profile { margin:5rem 0 0 -8.5rem; display:flex; justify-content: space-between; align-items: flex-start; }
.cMain__body .cMain__profile .cMain__profile--photo { width:65%; }
.cMain__body .cMain__profile .cMain__profile--txt { width: 30%; }
.cMain__body .cMain__profile .cMain__profile--txt p { font-size: 1.1rem; line-height: 1.8em; text-align: left; }
.cMain__body .cMain__profile .cMain__profile--txt p.sign { margin:2rem 5rem 3rem 0; }

.cMain__body .cMain__history dl { display:flex; justify-content: space-between; flex-wrap: wrap; border-bottom:solid 1px var(--c_blue); }
.cMain__body .cMain__history dl dt { width:18%; font-size: 1.2rem; line-height: 1.5em; padding: 0.5rem 0; font-weight: 500; color: var(--c_blue); border-top:solid 1px var(--c_blue); }
.cMain__body .cMain__history dl dd { width:82%; font-size: 1.1rem; line-height: 1.5em; padding: 0.5rem 0; border-top: solid 1px var(--c_blue); }

.cMain__body .cMain__status table { width:100%; border-top:solid 1px var(--c_black); }
.cMain__body .cMain__status table th { font-size: 1.2rem; line-height: 1em; font-weight: 500; border-bottom: solid 1px var(--c_black); border-right: solid 1px var(--c_black); text-align: center; padding: 0.75rem; background-color: var(--c_ltblue); }
.cMain__body .cMain__status table td { font-size: 1.2rem; line-height: 1em; border-bottom: solid 1px var(--c_black); border-right: solid 1px var(--c_black); text-align: center; padding: 0.75rem; background-color: var(--c_ltblue); }
.cMain__body .cMain__status table th.year-cell,
.cMain__body .cMain__status table td.year-cell { border-right: none; background-color: transparent; }
.cMain__body .cMain__status table th:last-child,
.cMain__body .cMain__status table td:last-child { border-right:none; }

.cMain__body .cMain__experience { border-top: solid 1px var(--c_blue); border-bottom: solid 1px var(--c_blue); padding: 1.5rem 2rem; margin:2rem 0; }
.cMain__body .cMain__experience ul li { display:flex; font-size: 1.3rem; line-height: 1.5em; margin:0.25em 0; color:var(--c_blue); }
.cMain__body .cMain__experience ul li::before { content:"◯"; margin:0 0.5em 0 0; }

.cMain__body .cMain__skill { margin:3rem 0; }
.cMain__body .cMain__skill ul { border-top:solid 1px var(--c_blue); }
.cMain__body .cMain__skill ul li { border-bottom: solid 1px var(--c_blue); display:flex; align-items: center; justify-content: space-between; padding:1rem; color:var(--c_blue); }
.cMain__body .cMain__skill ul li .cMain__skill--number { font-size: 2.5rem; line-height: 1em; font-weight: 300; width:5%; }
.cMain__body .cMain__skill ul li .cMain__skill--title { width: 40%; font-size: 1.4rem; line-height: 1.5em; }
.cMain__body .cMain__skill ul li .cMain__skill--ex { width: 50%; font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-size: 1.1rem; line-height: 1.8em; color:var(--c_mdblue); }

.cMain__body .cMain__lisence { background-color: var(--c_beige); padding:2rem 3.5rem; margin:3rem 0; border-radius: 1rem; }
.cMain__body .cMain__lisence h4 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-size: 1.2rem; line-height: 1.5em; font-weight: 600; margin:0 0 0.75em 0; color:var(--c_blue); }
.cMain__body .cMain__lisence ul li { display:flex; font-size: 1.1rem; line-height: 1.5em; margin:0.5em 0; color:var(--c_blue); }
.cMain__body .cMain__lisence ul li::before { content:"◯"; margin:0 0.5em 0 0; }

.cMain__body .cMain__schedule { display:flex; justify-content: space-between; align-items: flex-start; border-top:solid 1px var(--c_blue); padding:3rem 0; }
.cMain__body .cMain__schedule.cMain__schedule--end { border-bottom:solid 1px var(--c_blue); padding:3rem 0; margin-bottom:8rem; }
.cMain__body .cMain__schedule .cMain__schedule--left { width:30%; font-size: 1.5rem; line-height: 1.5em; letter-spacing: 0.1em; color:var(--c_blue); font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; }
.cMain__body .cMain__schedule .cMain__schedule--left .cMain__schedule--year { display:flex; align-items: center; margin:0 0 0.5em 0; }
.cMain__body .cMain__schedule .cMain__schedule--left .cMain__schedule--year span { background-color: var(--c_ltblue); width:2em; height:2em; line-height: 2em; text-align: center; margin:0 0.25em; border-radius: 50%; }
.cMain__body .cMain__schedule .cMain__schedule--left .cMain__schedule--year span:first-child { margin:0 0.25em 0 0; }
.cMain__body .cMain__schedule .cMain__schedule--left .cMain__schedule--title {}
.cMain__body .cMain__schedule .cMain__schedule--right { width:60%; }
.cMain__body .cMain__schedule .cMain__schedule--right .cMain__schedule__point {}
.cMain__body .cMain__schedule .cMain__schedule--right .cMain__schedule__point ul {}
.cMain__body .cMain__schedule .cMain__schedule--right .cMain__schedule__point ul li { font-size: 1.2rem; line-height: 1.6em; margin:0 0 0.25em 0; }
.cMain__body .cMain__schedule .cMain__schedule--right .cMain__schedule__point ul li::before { content:"●"; margin:0 0.25em 0 0; color:var(--c_mdblue); }
.cMain__body .cMain__schedule .cMain__lisence { margin:3rem 0 0 0; padding: 1.5rem 2.5rem; }

.cMain__body .cMain__target { margin:4rem 0; }

.cMain__body .cMain__hospitals {}
.cMain__body .cMain__hospitals ul { border-bottom: solid 1px var(--c_blue); }
.cMain__body .cMain__hospitals ul li { font-size: 1.25rem; line-height: 1.5em; border-top:solid 1px var(--c_blue); }
.cMain__body .cMain__hospitals ul li a { display:flex; align-items: center; padding:0.75em; }
.cMain__body .cMain__hospitals ul li a i { display:flex; align-items: center; width:1em; margin-right:0.75em; }
.cMain__body .cMain__hospitals ul li a:hover { background-color: var(--c_beige); }

.cMain__body .cMain__tel a { display: inline-flex; align-items: center; padding:1em 3em; border-radius: 2em; margin:0.75em 0; }
.cMain__body .cMain__tel .cMain__tel--title { font-size: 1.2rem; line-height: 1em; margin-right:1.5em; }
.cMain__body .cMain__tel .cMain__tel--number { font-size: 1.6rem; line-height: 1em; }
.cMain__body .cMain__tel--outpatient a { background-color: var(--c_ltorange); }
.cMain__body .cMain__tel--medicaloffice a { background-color: var(--c_ltblue); }

.cMain__body .cMain__doctors table { width:100%; border-bottom:solid 1px var(--c_black); }
.cMain__body .cMain__doctors table th { vertical-align: middle; font-size: 1.2rem; line-height: 1em; font-weight: 500; text-align: center; padding:0.75em; border-top: solid 1px var(--c_black); border-left: solid 1px var(--c_black); }
.cMain__body .cMain__doctors table td { vertical-align: middle; font-size: 1.3rem; line-height: 1em; font-weight: 500; text-align: center;  padding:0.75em; border-top: solid 1px var(--c_black); border-left: solid 1px var(--c_black); }
.cMain__body .cMain__doctors table .none { border-left:none; }

.cMain__body .cMain__access { margin: 5rem 0; }
.cMain__body .cMain__access .cMain__access__head { display:flex; align-items: center; margin: 3rem 0; }
.cMain__body .cMain__access .cMain__access__head h3 { margin:0 2em 0 0; }
.cMain__body .cMain__access .cMain__access__head .location { font-size: 1.4rem; line-height: 1em; padding:0.5em 2em; border-radius: 2em; background-color: var(--c_ltorange); }
.cMain__body .cMain__access .cMain__access__info { display:flex; border-top:solid 1px var(--c_black); border-bottom: solid 1px var(--c_black); }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--item { display:flex; align-items: center; width:50%; padding:2em 0 2em 2em; border-right: solid 1px var(--c_black); }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--item:last-child { border-right: none; }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--title { width:50%; }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--title h2 { margin:0 2em 1em 0; }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--title .reservation-badge { display:inline-block; font-size: 1.5rem; line-height: 1em; background-color: var(--c_ltorange); }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--schedule { font-size: 1.4rem; line-height: 1.8em; white-space: nowrap; }

.cMain__body .cMain__hospital { margin:0 0 5rem 0; }
.cMain__body .cMain__hospital .cMain__hospital--head { display: flex; justify-content: space-between; align-items: center; padding: 0.5rem 0; border-top: 1px solid var(--c_blue); border-bottom: 1px solid var(--c_blue); }
.cMain__body .cMain__hospital .cMain__hospital--head .cMain__hospital__name { font-size: 1.6rem; line-height: 1.5em; }
.cMain__body .cMain__hospital .cMain__hospital--head .website { font-size: 0.8rem; line-height: 1.5em; color: var(--c_blue); }
.cMain__body .cMain__hospital .cMain__hospital--table { display: flex; align-items: stretch; width: 100%; }
.cMain__body .cMain__hospital .cMain__hospital--table .left-column { width: 60%; display: flex; flex-direction: column; }
.cMain__body .cMain__hospital .cMain__hospital--table .right-column { width: 40%; font-size: 1.1rem; line-height: 1.6em; text-align: justify; padding:1rem 0 1rem 2rem; border-left: 1px solid var(--c_blue); border-bottom: 1px solid var(--c_blue); display: flex; align-items: flex-start; }
.cMain__body .cMain__hospital .cMain__hospital--table .row { display: flex; border-bottom: 1px solid var(--c_blue); }
.cMain__body .cMain__hospital .cMain__hospital--table .category { width: 30%; font-size: 1.1rem; line-height: 1.5em; padding: 0.75rem 2rem 0.75rem 0; font-weight: normal; color: var(--c_blue); display: flex; align-items: center; }
.cMain__body .cMain__hospital .cMain__hospital--table .details { width: 70%; font-size: 1.1rem; line-height: 1.5em; text-align: justify; padding: 0.75rem 2rem; background-color: var(--c_ltblue); }

.cMain__body .cMain__director { border:solid 1px var(--c_blue); padding:2rem 3rem; margin-top:3rem; }
.cMain__body .cMain__director p { font-size: 1.2rem; line-height: 1.8em; }

.cMain__body .cMain__seminar { border-top: solid 1px var(--c_blue); margin:3rem 0; }
.cMain__body .cMain__seminar dl { display:flex; align-items: stretch; justify-content: space-between; flex-wrap: wrap; }
.cMain__body .cMain__seminar dl dt { display:flex; align-items: center; border-bottom: solid 1px var(--c_blue); width: 20%; font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-size: 1.2rem; line-height: 1em; color:var(--c_blue); padding:0.75rem; }
.cMain__body .cMain__seminar dl dd { border-bottom: solid 1px var(--c_blue); width: 80%; font-size: 1.5rem; line-height: 1.5em; color: var(--c_blue); padding: 0.75rem; }

.cMain__body .cMain__class { display: flex; align-items: flex-start; margin:0 0 6rem 0; }
.cMain__body .cMain__class .cMain__class--title { width:30%; border:solid 1px var(--c_blue); border-right: none; text-align: center; border-radius: 0.5rem 0 0 0.5rem; }
.cMain__body .cMain__class .cMain__class--title h3 { font-size: 1.5rem; margin:0; padding:2rem 0; }
.cMain__body .cMain__class .cMain__class--ex { width: 70%; border-left: solid 1px var(--c_blue); border-bottom: solid 1px var(--c_blue); padding:0 0 4rem 4rem; border-radius:0 0 0 1rem; }
.cMain__body .cMain__class .cMain__class--ex h4 { margin:2em 0 1em 0; padding:0; font-size: 1.2rem; line-height: 1.5em; color: var(--c_mdblue); font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; }
.cMain__body .cMain__class .cMain__class--ex h4:first-child { margin:0 0 1em 0; }
.cMain__body .pagenavi { margin: 1rem 0 1rem 0; }
.cMain__body .pagenavi ul { display:flex; justify-content: center; }
.cMain__body .pagenavi ul li { border-left:solid 1px var(--c_black); }
.cMain__body .pagenavi ul li:last-child { border-right:solid 1px var(--c_black); }
.cMain__body .pagenavi ul li a { font-size: 1.2rem; line-height: 1em; padding:0 3em; font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; color:var(--c_mdblue); }

.cMain__body .cMain__study {}
.cMain__body .cMain__study h3 { margin:2em auto 1em auto; }
.cMain__body .cMain__study table { border-top:solid 1px var(--c_black); width:100%; }
.cMain__body .cMain__study table th { vertical-align: middle; font-size: 0.9rem; line-height: 1.4em; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; color:var(--c_blue); border-top:solid 1px var(--c_black); padding:0.75em; }
.cMain__body .cMain__study table th:first-child,
.cMain__body .cMain__study table td:first-child { padding-left:0; vertical-align: middle; }
.cMain__body .cMain__study table th:last-child,
.cMain__body .cMain__study table td:last-child { padding-right:0; vertical-align: middle; }
.cMain__body .cMain__study table td { vertical-align: middle; font-size: 0.9rem; line-height: 1.4em; border-top:solid 1px var(--c_black); padding:0.5em 0.5em; }
.cMain__body .cMain__study .toggle-button { cursor:pointer; display:block; background-color: var(--c_ltblue); color:var(--c_blue); padding:0.5em 0.2em; font-size: 0.9rem; line-height: 1; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; font-weight: 600; text-align: center; }
.cMain__body .cMain__study .toggle-button:hover { background-color: var(--c_blue); color:var(--c_white); }
.cMain__body .cMain__study table td:first-child .toggle-button { font-size: 1.1rem; padding:0.25em 1em; }

.cMain__body .cMain__study table td.cMain__studyEx { padding:0; border-top: none; }
.cMain__body .cMain__study table td.cMain__studyEx .cMain__studyExInner {}
.cMain__body .cMain__study table tr:last-child td.cMain__studyEx .cMain__studyExInner { border-bottom: solid 1px var(--c_black); }
.cMain__body .cMain__study table td.cMain__studyEx .cMain__studyExInner .cMain__studyExInnerBg { background-color: var(--c_beige); padding:3rem; }
.cMain__body .cMain__study table td.cMain__studyEx .cMain__studyExInner h4 { font-size: 1rem; line-height: 1.5em; margin:1em 0 0.5em 0; }
.cMain__body .cMain__study table td.cMain__studyEx .cMain__studyExInner h4:first-child { margin-top:0; }
.cMain__body .cMain__study table td.cMain__studyEx .cMain__studyExInner p { font-size: 1rem; line-height: 1.8em; }

.cMain__studyEx { display: table-cell; padding: 0; vertical-align: top; }
.cMain__studyExInner { overflow: hidden; height: 0; transition: height 300ms ease; }
.cMain__studyExInner.open { height: auto; }

.cMain__body h3.h3_life--title { border-top:solid 1px var(--c_black); border-bottom: solid 1px var(--c_black); padding:0.5em 0; text-align: center; }
.cMain__body h4.h4_life--weekly,
.cMain__body h4.h4_life--dayly { border-radius: 2em; background-color: var(--c_beige);padding:0.5em; text-align: center; margin:2em 0 1.5em 0; }
.cMain__body .table_life--weekly { border-top:solid 1px var(--c_black); width:100%; border-bottom:solid 1px var(--c_black); }
.cMain__body .table_life--weekly th { background-color: var(--c_ltblue); padding: 0.35em 2em;vertical-align: middle; text-align: center; font-size: 1rem; line-height: 1.2em; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; color:var(--c_blue); border-top:solid 1px var(--c_black); }
.cMain__body .table_life--weekly td { white-space: nowrap; padding: 0.35em 1em; vertical-align: middle; text-align: center; font-size: 1rem; line-height: 1.2em; border-top:solid 1px var(--c_black); }
.cMain__body .table_life--weekly colgroup col:nth-child(even) { background-color: var(--c_beige); }
.cMain__body .table_life--weekly th:first-child { position: sticky; left: 0; z-index: 777; background-color: var(--c_ltblue); border-top: solid 1px var(--c_black); }

.table-scroll-wrapper { overflow-x: auto; display: block; max-width: 100%; padding:0 0 1.5em 0; margin:0 0 3rem 0; }
.table-scroll-wrapper::-webkit-scrollbar { height: 0.75rem; background: var(--c_beige); border-radius: 2em; }
.table-scroll-wrapper::-webkit-scrollbar-thumb { background: var(--c_ltblue); border-radius: 2em; cursor: pointer; }

.cMain__body .table_life--dayly { border-top:solid 1px var(--c_black); width:100%; border-bottom:solid 1px var(--c_black); }
.cMain__body .table_life--dayly th { width:6.5rem; background-color: var(--c_ltblue); padding: 0.5em 0.5em;vertical-align: middle; text-align: center; font-size: 1rem; line-height: 1.2em; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; color:var(--c_blue); border-top:solid 1px var(--c_black); }
.cMain__body .table_life--dayly td { padding: 0.75em 1em; vertical-align: middle; text-align: left; border-top:solid 1px var(--c_black); }
.cMain__body .table_life--dayly td:nth-child(2) { white-space: nowrap; font-size: 1.1rem; line-height: 1.6em; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; color:var(--c_blue); font-weight: 600; }
.cMain__body .table_life--dayly td:nth-child(3) p { font-size: 1rem; line-height: 1.6em; }
.cMain__body .table_life--dayly td:last-child { padding: 0.75em 0 0.75em 1em; }
.cMain__body .table_life--dayly td img { width:50%;}

.cMain .cMain__members { margin:3rem 0 3rem -8.5rem; display:flex; flex-wrap: wrap; align-items: stretch; gap:3rem; }
.cMain .cMain__members .cMain__members__item { width:calc((100% - 6rem) / 3); }
.cMain .cMain__members .cMain__members__item a { cursor:pointer; height:100%; display:flex; flex-direction: column; justify-content: space-between; padding:1.5rem; background-color: var(--c_ltblue); }
.cMain .cMain__members .cMain__members__item a .cMain__members--name { font-size: 1.4rem; line-height: 1.5em; letter-spacing: 0.05em; }
.cMain .cMain__members .cMain__members__item a .cMain__members--ex { font-size: 0.8rem; line-height: 1.5em; margin:0.5rem 0 1rem 0; }
.cMain .cMain__members .cMain__members__item a:hover { background-color: var(--c_beige); }
.cMain .cMain__members .cMain__members__item a.none { cursor:default; }
.cMain .cMain__members .cMain__members__item a.none:hover { background-color: var(--c_ltblue); }

.cMain .cMain__members__etc {}
.cMain .cMain__members__etc table { width:100%; border-bottom:solid 1px var(--c_blue); }
.cMain .cMain__members__etc table .name { font-size: 1.4rem; line-height: 1.5em; vertical-align: middle; border-top: solid 1px var(--c_blue); padding:0.5rem 0; }
.cMain .cMain__members__etc table .destination { font-size: 1.1rem; line-height: 1.5em; vertical-align: middle; border-top: solid 1px var(--c_blue); padding: 0.5rem 0; }

.cMain .cMain__members__change {}
.cMain .cMain__members__change h4 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; font-size: 1.5rem; line-height: 1.5em; margin:2em 0 1em 0; background-color: var(--c_ltblue); padding:0.25rem 1.25rem; color: var(--c_blue); }
.cMain .cMain__members__change h4:first-child { margin: 0 0 1em 0; }
.cMain .cMain__members__change h5 { font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; font-size: 1.1rem; line-height: 1.5em; margin:0.5em 0; padding: 0 1.25rem; color:var(--c_gray); }
.cMain .cMain__members__change table { width:100%; border-bottom:solid 1px var(--c_blue); }
.cMain .cMain__members__change table .category { width: 15% !important; font-family: YakuHanJP,"Zen Kaku Gothic Antique", sans-serif; font-weight: 600; font-size: 1.1rem; line-height: 1.5em; vertical-align: middle; border-top: solid 1px var(--c_blue); padding:0.25rem 1.25rem; color: var(--c_blue); }
.cMain .cMain__members__change table .name { width: 18% !important; font-size: 1.4rem; line-height: 1.5em; vertical-align: middle; border-top: solid 1px var(--c_blue); padding:0.25rem 0; }
.cMain .cMain__members__change table .destination { font-size: 1rem; line-height: 1.5em; vertical-align: middle; border-top: solid 1px var(--c_blue); padding: 0.25rem 0; }

.cMain .cMain__wako { margin:3rem 0 3rem -8.5rem; display:flex; justify-content: space-between; flex-wrap: wrap; align-items: stretch; }
.cMain .cMain__wako__item { width:31.5%; margin:0 0 2rem 0; }
.cMain .cMain__wako__item a { cursor: pointer; height: 100%; display: block; padding: 1rem; background-color: var(--c_white); text-align: center; }
.cMain .cMain__wako__item a .cMain__wako__item--thumb { margin:0 0 1rem 0; }
.cMain .cMain__wako__item a .cMain__wako__item--num { font-size: 1.2rem; line-height: 1.5em; margin:0 0 0.25rem 0; }
.cMain .cMain__wako__item a .cMain__wako__item--ex {}
.cMain .cMain__wako__item a:hover { background-color: var(--c_beige); }
.cMain .cMain__wako__item a.none { cursor:default; }
.cMain .cMain__wako__item a.none:hover { background-color: var(--c_ltblue); }

.cMain .cMain__achives__list {  }
.cMain .cMain__achives__list ul { display:flex; flex-wrap: wrap; border-top: solid 1px var(--c_black); border-bottom: solid 1px var(--c_black); }
.cMain .cMain__achives__list ul li { width:25%; border-bottom:solid 1px var(--c_black); margin-bottom: -1px; }
.cMain .cMain__achives__list ul li a { display: block; padding:0.5em 0; font-size: 1.2rem; line-height: 1.5em; }
.cMain .cMain__achives__list ul li a::before { content:"→"; color:var(--c_blue); margin:0 0.5em 0 0; }
.cMain .cMain__achives__list ul li a:hover { color:var(--c_dkbeige); }

.cMain .cMain__archives__ex {  }
.cMain .cMain__archives__ex ol { border-bottom: solid 1px var(--c_black); list-style: decimal; list-style-position: inside; padding: 0; }
.cMain .cMain__archives__ex ol li { border-top: solid 1px var(--c_black); padding: 1em 0; font-size: 1.1rem; line-height: 1.5em; letter-spacing: 0; }

.modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; text-align: center; background: var(--c_bg); padding: 0 0; overflow: auto; opacity: 0; visibility: hidden; transition: .3s; box-sizing: border-box; }
.modal:before { content: ""; display: inline-block; vertical-align: middle; height: 100%; margin-left: -0.2em; }
.modal.is-active { opacity: 1; visibility: visible; }
.modal-container { position: relative; display: inline-block; vertical-align: middle; width: 60%; }
.modal-close { position: absolute; display: flex; align-items: center; justify-content: center; font-size: 2rem; line-height: 1em; top: 0; right: 0; width: 4rem; height: 4rem; color: var(--c_black); background: var(--c_bg); cursor: pointer; }
.modal-content { display:flex; flex-wrap: wrap; justify-content: space-between; padding:4rem; text-align: left; background: var(--c_ltblue); }
.modal-content .cMain__membersEx--txt { width: 55%; }
.modal-content .cMain__membersEx--name { font-size: 1.8rem; line-height: 1.6em; font-weight: 400; letter-spacing: 0.15em; margin:0 0 0 0; }
.modal-content .cMain__membersEx--ex { font-size: 1.1rem; line-height: 1.6em; margin:1.25em 0; }
.modal-content .cMain__membersEx--lisence { font-size: 1rem; line-height: 1.7em; }
.modal-content .cMain__membersEx--photo { width: 38%; }
.modal-content .cMain__membersEx--comment { border-left:solid 1px var(--c_black); border-right: solid 1px var(--c_black); padding:0 3rem; margin: 2rem 0 0 0; font-size: 1.1rem; line-height: 1.8em; width:100%; }
.cMain__wako .modal-content { padding:6rem; background: var(--c_white); }

@media screen and (max-width: 600px) {

/* options */
.pc { display:none; }
.sp { display:inline; }
.br__pc { display:none; }
.br__sp { display:block; }

/* styles */
.cWrap { min-width: 0; }

.cHeader { padding:1.5rem 1rem 2rem 1rem; }
.cHeader .cHeader__logo { width:100%; }
.cHeader .cHeader__nav { display:none; }

.cFooter { flex-direction: column; padding:3rem 1.5rem 6rem 1.5rem; }
.cFooter .cFooter--head { flex-direction: column-reverse; margin:0 0 2rem 0; }
.cFooter .cFooter__logo { width:100%; }
.cFooter .cFooter__nav { width:100%; padding:6rem 0; }
.cFooter .cFooter__nav ul li:nth-child(1),
.cFooter .cFooter__nav ul li:nth-child(4) { width:50%; }
.cFooter .cFooter__nav ul li:nth-child(2),
.cFooter .cFooter__nav ul li:nth-child(5) { width:50%; }
.cFooter .cFooter__nav ul li:nth-child(3),
.cFooter .cFooter__nav ul li:nth-child(6) { width:50%; }
.cFooter .cFooter--mid { flex-direction: column; flex-wrap: wrap; }
.cFooter .cFooter--mid address { font-size: 1rem; line-height: 1.8em; }
.cFooter .cFooter--mid .cFooter__nav--sub { margin: 2rem 0 2rem 0; }
.cFooter .cFooter--mid .cFooter__nav--sub li { font-size: 1rem; }
.cFooter .cFooter--mid .cFooter__links { width: 100%; flex-direction: column; justify-content: center; }
.cFooter .cFooter--mid .cFooter__sns { width: 100%; justify-content: center; padding:1em 2.5em; }
.cFooter .cFooter--mid .cFooter__sns ul { justify-content: center; gap:0 1.5rem; }
.cFooter .cFooter--mid .cFooter__btn { width:100%; font-size: 1.3rem; margin-top: 1rem; }
.cFooter .cFooter--mid .cFooter__btn a { width: 100%; justify-content: center; }
.cFooter .cFooter__copyright { font-size: 0.5rem; white-space: nowrap; }

.cMain { padding: 0 1.5rem; flex-direction: column-reverse; }

.cMain__hero { align-items: flex-end; }
.cMain__hero .cMain__hero--main { width:calc(100% + 3rem); padding:0 0 0 0; margin:0 -1.5rem; height:20rem; }
.cMain__hero .cMain__hero--main img { object-fit: cover; width:100%; height:100%; }
.cMain__hero .cMain__hero__catch { width:100%; position: static; padding:3rem 2rem 2rem 2rem; }
.cMain__hero .cMain__hero__catch .cMain__hero__catch--lead { font-size: 1.6rem; line-height: 1.7em; }
.cMain__hero .cMain__hero__catch .cMain__hero__catch--ex { line-height: 1.7em; margin:1.5rem 0; }
.cMain__hero .cMain__hero__catch .cMain__btn { margin:2rem 0; }
.cMain__hero .cMain__hero--mid { width:calc(100% + 3rem); padding:0 10% 0 0; margin:0 -1.5rem 3rem -1.5rem; }
.cMain__hero .cMain__hero--sub { width:calc(100% + 3rem); padding:0 0 0 30%; margin:0 -1.5rem; }

.cMain__home { padding:3rem 0 0 0; }

.cMain__home .cMain__info { flex-direction: column; }
.cMain__home .cMain__info .cMain__info--news { width:100%; margin:0 0 2rem 0; }
.cMain__home .cMain__info .cMain__info--news .cMain__info--news__head .cMain__info--news__head--title { font-size: 1.4rem; }
.cMain__home .cMain__info .cMain__info--whatsnew li .news--title { display: flex; align-items: center; margin:0 !important; }
.cMain__home .cMain__info .cMain__info--sns { width:100%; }

.cMain__home .cMain__contents { flex-direction: column; }
.cMain__home .cMain__contents.cMain__contents--reverse { flex-direction: column; }
.cMain__home .cMain__contents .cMain__contents--thumb { width: calc(100% + 3rem); margin:0 -1.5rem 3.5rem -1.5rem; }
.cMain__home .cMain__contents .cMain__contents__nav { width: 86%; margin:auto; }
.cMain__home .cMain__contents .cMain__contents__nav .cMain__contents__title { font-size: 1.6rem; margin-bottom:1em; }

.cMain__home .cMain__users { margin:4rem 0 2rem 0; }
.cMain__home .cMain__users ul { flex-direction: column; }
.cMain__home .cMain__users ul li { width:85%; margin:0 auto 3.5rem auto; }

.cMain__home .cMain_request { flex-direction: column; padding:2.5rem 2rem 2rem 2rem; margin:0 0 5rem 0; }
.cMain__home .cMain_request .cMain_reques--left { width:100%; margin:0 0 2rem 0; text-align: center; }
.cMain__home .cMain_request .cMain_reques--left h3 { line-height: 1em; margin:0.75em 0; }
.cMain__home .cMain_request .cMain_reques--right { width:100%; font-size: 1.1rem; }

.cMain__home .cMain__btn { width:100%; }
.cMain__home .cMain__btn a { width:100%; display: flex; justify-content: center; }
.cMain__figure--home { width: calc(100% + 3rem); margin:0 -1.5rem 0 -1.5rem; }

.cMain__nav { width: 100%; position: static; padding:2rem 0; }
.cMain__nav .cMain__nav__title { font-size: 1.8rem; margin-bottom:1.25em; }
.cMain__nav ul li a { font-size: 1.3rem; }

.cMain__body { width: 100%; padding-left:0; }
.cMain__body .cMain__cover { width: calc(100% + 3rem); margin:0 -1.5rem 2rem -1.5rem; height:17rem; }
.cMain__body .cMain__cover img { object-fit: cover; width:100%; height:100%; }
.cMain__body h2 { font-size: 1.6rem; margin:2cqw 0 1.5em 0; }
.cMain__body h3 { font-size: 1.4rem; }
.cMain__body h5 { font-size: 1.2rem; }
.cMain__body p { font-size: 1.2rem; }
.cMain__body .poster { width:100%; }
.cMain__body .cMain__body__entrybody img.alignleft { width: 100%; }
.cMain__body .cMain__body__entrybody strong a { font-size: 1.2rem; line-height: 1em; padding:1em 1.5em; }

.cMain__body .cMain__figure { width: calc(100% + 3rem); margin:5rem -1.5rem 5rem -1.5rem; height:18rem; }
.cMain__body .cMain__figure img { object-fit: cover; width:100%; height:100%; }
.cMain__body .cMain__btn { width:100%; line-height: 1.4em; }
.cMain__body .cMain__btn a { display: flex; justify-content: center; border-radius: 2.5em; }
.cMain__body .cMain__rows { flex-direction: column; flex-wrap: wrap; gap:0 0; }
.cMain__body .cMain__rows .cMain__btn { margin:0.75rem 0; }

.cMain__body .cMain__lead { border-left:none; border-right: none; border-top: solid 1px var(--c_blue); border-bottom: solid 1px var(--c_blue); padding:2.5rem 2rem; }
.cMain__body .cMain__lead p { font-size: 1.4rem; line-height: 1.7em; letter-spacing: 0.05em; }
.cMain__body .cMain__role ul li { padding:1rem 0rem; }
.cMain__body .cMain__role ul li .cMain__role--number { width:20%; text-align: center; }
.cMain__body .cMain__role ul li .cMain__role--txt { font-size: 1.3rem; width: 80%; }
.cMain__body .cMain__guideline dl dt { width: 45%; font-size: 1.25rem; }
.cMain__body .cMain__guideline dl dd { width: 55%; font-size: 1.2rem; }
.cMain__body .cMain__guideline dl dt:nth-child(1) { width: 35%; }
.cMain__body .cMain__guideline dl dd:nth-child(2) { width: 65%; }
.cMain__body .cMain__guideline dl dt.none { width: 100%; }
.cMain__body .cMain__guideline dl dd.none { display: none; }
.cMain__body .cMain__feature ul li .cMain__feature--title { width: 25%; text-align: left; }
.cMain__body .cMain__feature ul li .cMain__feature--ex { width: 75%; font-size: 1.1rem; }

.cMain__body .cMain__point { padding:1rem 0; }
.cMain__body .cMain__point p { font-size: 1.4rem; line-height: 1.8em; text-align: center; }

.cMain__body .cMain__profile { margin:5rem 0; flex-direction: column; }
.cMain__body .cMain__profile .cMain__profile--photo { width:100%; margin:0 0 2rem 0; }
.cMain__body .cMain__profile .cMain__profile--txt { width: 100%; }
.cMain__body .cMain__profile .cMain__profile--txt p { font-size: 1.2rem; }
.cMain__body .cMain__profile .cMain__profile--txt p.sign { width:60%; margin:2rem 1rem 3rem auto; }
.cMain__body .cMain__history dl dt { width:40%; font-size: 1.1rem; }
.cMain__body .cMain__history dl dd { width:60%; }
.cMain__body .cMain__status table th { padding: 0.5rem; }
.cMain__body .cMain__status table td { padding: 0.5rem; }
.cMain__body .cMain__skill ul li { flex-wrap: wrap; padding:1.5rem 0 1.5rem 1rem; }
.cMain__body .cMain__skill ul li .cMain__skill--title { width: 85%; }
.cMain__body .cMain__skill ul li .cMain__skill--ex { width: 100%; font-size: 1.2rem; margin: 1rem 0 0 0; }

.cMain__body .cMain__lisence { padding:2rem 2rem; }
.cMain__body .cMain__lisence h4 { font-size: 1.3rem; }
.cMain__body .cMain__lisence ul li { font-size: 1.2rem; }

.cMain__body .cMain__schedule { flex-direction: column; }
.cMain__body .cMain__schedule .cMain__schedule--left { width:100%; font-size: 1.6rem; margin:0 0 2rem 0; display:flex; flex-direction: column; justify-content: center; align-items: center; }
.cMain__body .cMain__schedule .cMain__schedule--right { width:100%; }
.cMain__body .cMain__schedule .cMain__schedule--right .cMain__schedule__point ul li { line-height: 1.8em; }
.cMain__body .cMain__schedule .cMain__lisence { padding: 2rem 2rem; }

.cMain__body .cMain__tel a { flex-direction: column; display: flex; margin:1.5rem 0; }
.cMain__body .cMain__tel .cMain__tel--title { margin:0 0 0.5em 0; }
.cMain__body .cMain__tel .cMain__tel--number { font-size: 1.8rem; }
.cMain__body .cMain__access .cMain__access__head { width:100%; flex-direction: column; align-items: flex-start; }
.cMain__body .cMain__access .cMain__access__head h3 { margin:0 0 1em 0; }
.cMain__body .cMain__access .cMain__access__info { flex-direction: column; }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--item { width:100%; border-right: none; border-bottom: solid 1px var(--c_black); }
.cMain__body .cMain__access .cMain__access__info .cMain__access__info--item:last-child { border-bottom: none; }
.cMain__body .cMain__hospital .cMain__hospital--head { flex-direction: column; align-items: flex-start; padding: 1.5rem 0; }
.cMain__body .cMain__hospital .cMain__hospital--head .cMain__hospital__name { margin:0 0 0.5em 0; }
.cMain__body .cMain__hospital .cMain__hospital--table .left-column { width: 55%; }
.cMain__body .cMain__hospital .cMain__hospital--table .right-column { width: 45%; padding:1rem 0 1rem 1rem; }
.cMain__body .cMain__hospital .cMain__hospital--table .category { width: 25%; padding: 0.75rem 1rem 0.75rem 0; }
.cMain__body .cMain__hospital .cMain__hospital--table .details { width: 75%; padding: 0.75rem 1rem; }

.cMain__body .cMain__director { padding:1.5rem 1.5rem; }
.cMain__body .cMain__director p { font-size: 1.1rem; }
.cMain__body .cMain__seminar dl dd { font-size: 1.3rem; }

.cMain__body .cMain__class { flex-direction: column; }
.cMain__body .cMain__class .cMain__class--title { width:100%; border-radius: 0.5rem 0 0 0; }
.cMain__body .cMain__class .cMain__class--title h3 { font-size: 1.3rem; padding:1rem 0; }
.cMain__body .cMain__class .cMain__class--ex { width: 100%; padding:2rem 0 2rem 2rem; }
.cMain__body .pagenavi { margin: 1rem 0 0 0; }
.cMain__body .pagenavi ul li a { font-size: 1rem; padding:0 1em;  }

.cMain__body .cMain__study { overflow-x: auto; }
.cMain__body .cMain__study table th { font-size: 1rem; }
.cMain__body .cMain__study table td { font-size: 1rem; }
.cMain__body .cMain__study table td:first-child .toggle-button { padding:0.25em 1.5em; }
.cMain__body .cMain__studyEx { padding:2rem; }

.cMain__body .table_life--dayly { display:block; border-top:none; width:100%; border-bottom:solid 1px var(--c_black); }
.cMain__body .table_life--dayly tr { display:flex; flex-wrap: wrap; }
.cMain__body .table_life--dayly th { width:100%; border-right:none; background-color: var(--c_ltblue); padding: 0.5em 0.5em; vertical-align: middle; text-align: center; font-size: 1.1rem; line-height: 1.2em; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; color:var(--c_blue); border-top:solid 1px var(--c_black); }
.cMain__body .table_life--dayly td { width:100%; vertical-align: middle; text-align: left; border-top:none; }
.cMain__body .table_life--dayly td:nth-child(2) { text-align: center; padding: 0.75em 0 0 0; white-space: nowrap; font-size: 1.2rem; line-height: 1.6em; font-family: YakuHanJP, "Zen Kaku Gothic Antique", sans-serif; color:var(--c_blue); font-weight: 600; }
.cMain__body .table_life--dayly td:nth-child(3) { padding: 0 0 0.75em 0; }
.cMain__body .table_life--dayly td:nth-child(3) p { font-size: 1rem; line-height: 1.6em; }
.cMain__body .table_life--dayly td:last-child { padding: 0.75em 0 0.75em 0; }
.cMain__body .table_life--dayly td img { width:100%;}

.scrollable-wrapper { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 1em 0; }
.scrollable-wrapper table { min-width: 100%; border-collapse: collapse; white-space: nowrap; }

.cMain .cMain__members { margin:3rem 0 3rem 0; gap:1rem; }
.cMain .cMain__members .cMain__members__item { width:calc((100% - 1rem) / 2); }
.cMain .cMain__members .cMain__members__item a { padding:1rem; }
.cMain .cMain__members .cMain__members__item a .cMain__members--name { font-size: 1.2rem; }
.cMain .cMain__members__etc table .name { width:30% !important; font-size: 1.25rem; }
.cMain .cMain__members__etc table .destination { font-size: 0.9rem; }
.cMain .cMain__members__change h5 { padding: 0 0; }
.cMain .cMain__members__change table .category { font-size: 1rem; padding:0.25rem 0; }
.cMain .cMain__members__change table .name { width: 33% !important; font-size: 1.25rem;}
.cMain .cMain__members__change table .destination { font-size: 0.9rem; width: 47%; }

.cMain .cMain__wako { margin:3rem 0 3rem 0; }
.cMain .cMain__wako__item { width: calc((100% - 1rem) / 2); margin:0 0 1rem 0; }
.cMain .cMain__wako__item a .cMain__wako__item--num { font-size: 1rem; }
.cMain .cMain__achives__list ul li { width:50%; }
.cMain .cMain__achives__list ul li.none { display:none; }
.cMain .cMain__archives__ex ol li { font-size: 1rem; }

.modal { padding: 1.5rem 0; }
.modal-container { width: 90%; }
.modal-content { flex-direction: column; padding:2rem; }
.modal-content .cMain__membersEx--txt { width: 100%; }
.modal-content .cMain__membersEx--name { font-size: 1.6rem; }
.modal-content .cMain__membersEx--ex { font-size: 1rem; }
.modal-content .cMain__membersEx--photo { width: 100%; margin:0 0 2rem 0; }
.modal-content .cMain__membersEx--comment { border-left:none; border-right: none; border-top: solid 1px var(--c_black); border-bottom: solid 1px var(--c_black); padding:1.5rem; }
.cMain__wako .modal-content { padding:8rem 1rem; }

}

/* size */
html {
  font-size: clamp(0px, 1.1vw, 15.8px);
}

@media screen and (max-width: 600px) {
  html {
    font-size: clamp(0px, 3.6vw, 100px);
  }
}
