@charset "UTF-8";


/* contents
------------------------------------------------- */
@media only screen and (max-width:750px){
#contents {
    padding-top: 15vw;
}
}


/* mainvisual
------------------------------------------------- */
.mainvisual {
    width: 100%;
    height: 36.5625em;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}
.mainvisual h1 {
    font-weight: 500;
    color: #fff;
    text-align: center;
}
.mainvisual h1 span {
    display: block;
    font-weight: 400;
    line-height: 1.75;
    padding-top: 1em;
}
@media only screen and (max-width:750px){
.mainvisual {
    height: 74.66vw;
}
.mainvisual h1 {
    font-size: 2.88vw;
}
.mainvisual h1 span {
    font-size: 8.377vw;
    line-height: 1.5;
    padding-top: 0.1em;
}
}


/* introduction
------------------------------------------------- */
/* .mainvisual */
.introduction .mainvisual {
    background-image: url("../img/introduction/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.introduction .mainvisual {
    background-image: url("../img/introduction/mainvisual_sp.jpg");
}
}

/* .cont1 */
.introduction .cont1 {
    background-color: #e6e2d6;
    padding: 5.125em 0 3.75em;
}
.introduction .cont1 .con {
    width: 51.38%;
    margin-left: 1.25em;
}
.introduction .cont1 .con p,
.introduction .cont1 .con ul {
    letter-spacing: 0.01em;
    padding-bottom: 1.5em;
}
.introduction .cont1 .con ul li {
    padding-left: 1em;
    text-indent: -1em;
}
.introduction .cont1 .con ul li::before {
    content: '・';
}
.introduction .cont1 .photo {
    width: 28.75em;
}
@media only screen and (max-width:750px){
.introduction .cont1 {
    padding: 10vw 0 12vw;
}
.introduction .cont1 .con {
    width: 100%;
    margin: 0 0 4vw;
}
.introduction .cont1 .photo {
    width: 80%;
    margin: 0 auto;
}
}

/* .cont2 */
.introduction .cont2 .inner {
    padding: 0 4em;
}
.introduction .cont2 .photo {
    width: 50vw;
    margin-left: calc(38.6875em - 50cqw);
}
.introduction .cont2 .f-rev .photo {
    width: 50vw;
    margin: 0 calc(38.6875em - 50cqw) 0 0;
}
.introduction .cont2 .con {
    width: 43.15%;
}
.introduction .cont2 .con p,
.introduction .cont2 .con ul {
    letter-spacing: 0.05em;
    padding-bottom: 1.5em;
}
.introduction .cont2 .con ul li {
    padding-left: 1em;
    text-indent: -1em;
}
.introduction .cont2 .con ul li::before {
    content: '・';
}
@media only screen and (max-width:750px){
.introduction .cont2 .inner {
    padding: 0;
}
.introduction .cont2 .photo {
    width: 100vw;
    margin-left: -6vw;
}
.introduction .cont2 .f-rev .photo {
    width: 100vw;
    margin: 0 0 0 -6vw;
}
.introduction .cont2 .con {
    width: 100%;
    padding: 10vw 0 7vw;
}
.introduction .cont2 .con .headline1 {
    margin-bottom: 1em;
}
.introduction .cont2 .con h3 span {
    font-size: 6.588vw;
    padding-bottom: 0.4em;
}
.introduction .cont2 .con p,
.introduction .cont2 .con ul {
    font-size: 2.877vw;
}
.introduction .cont2 .con .btnst2 {
    margin: 0;
}
}

/* programs */
.introduction .programs {
    background-color: #e6e2d6;
    padding: 4.25em 0 2em;
}
.introduction .programs .headline2 {
    margin-bottom: 3.75em;
}
.introduction .programs ul li:nth-child(4),
.introduction .programs ul li:nth-child(5) {
    margin-bottom: 3.125em;
}
@media only screen and (max-width:750px){
.introduction .programs {
    padding: 12.5vw 0 10vw;
}
.introduction .programs .headline2 {
    margin-bottom: 0;
}
.introduction .programs ul li:nth-child(4),
.introduction .programs ul li:nth-child(5) {
    margin-bottom: 0;
}
}

/* information */
.introduction .information {
  padding-top: 5em;
}
@media only screen and (max-width:750px){
.introduction .information {
    padding-top: 13.5vw;
}
}


/* doctor
------------------------------------------------- */
/* .mainvisual */
.doctor .mainvisual {
    background-image: url("../img/doctor/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.doctor .mainvisual {
    background-image: url("../img/doctor/mainvisual_sp.jpg");
}
}

/* .cont1 */
.doctor .cont1 {
    padding: 5.25em 0 6em;
}
.doctor .cont1 .con {
    width: 51%;
    margin-left: 1.5em;
}
.doctor .cont1 .con h2 {
    font-weight: 400;
    line-height: 1.25;
    margin-bottom: 0.5em;
}
.doctor .cont1 .con h2 b {
    display: block;
    font-weight: 400;
    margin-bottom: 0.25em;
}
.doctor .cont1 .con p {
    letter-spacing: 0.01em;
    padding-bottom: 2em;
}
.doctor .cont1 .con .box {
    width: 96%;
    margin: 0 auto;
    border: 1px solid #2c2c2c;
    padding: 1.1em 1.75em;
    box-sizing: border-box;
}
.doctor .cont1 .con .box p {
    padding-bottom: 0.5em;
}
.doctor .cont1 .con .box table th,
.doctor .cont1 .con .box table td {
    font-weight: 400;
    text-align: left;
    letter-spacing: 0.01em;
}
.doctor .cont1 .con .box table th {
    width: 16.5%;
}
.doctor .cont1 .con .box .txt {
    padding: 0.5em 0 0;
    font-weight: 400;
    letter-spacing: 0.01em;
}
.doctor .cont1 .photo {
    width: 35.25%;
    margin-right: 4.375em;
}
@media only screen and (max-width:750px){
.doctor .cont1 {
    padding-bottom: 11.5vw;
}
.doctor .cont1 .inner {
    padding: 0;
}
.doctor .cont1 .con {
    width: 100%;
    margin: 0;
}
.doctor .cont1 .con h2 {
    font-size: 5.85vw;
    margin-bottom: 1em;
}
.doctor .cont1 .con h2 b {
    font-size: 3.862vw;
    margin-bottom: 0.25em;
}
.doctor .cont1 .con p {
    padding-bottom: 2.5em;
}
.doctor .cont1 .con .box {
    width: 100%;
    padding: 1.1em 1em;
}
.doctor .cont1 .photo {
    width: 80%;
    margin: 0 auto 6vw;
}
}


/* facility
------------------------------------------------- */
/* .mainvisual */
.facility .mainvisual {
    background-image: url("../img/facility/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.facility .mainvisual {
    background-image: url("../img/facility/mainvisual_sp.jpg");
}
}

/* .cont1 */
.facility .cont1 {
    padding-top: 5em;
}
.facility .cont1 ul li {
    width: 48.35%;
    margin-bottom: 2.1em;
}
.facility .cont1 ul li h2 {
    letter-spacing: 0.05em;
    padding-top: 0.5em;
}
@media only screen and (max-width:750px){
.facility .cont1 {
    padding: 8vw 0;
}
.facility .cont1 ul li {
    width: 100%;
    margin-bottom: 8vw;
}
.facility .cont1 ul li h2 {
    font-size: 2.8vw;
}
}

/* information */
.facility .information {
  padding-top: 3.5em;
}
@media only screen and (max-width:750px){
.facility .information {
    padding-top: 5vw;
}
}


/* privacy
------------------------------------------------- */
/* .mainvisual */
.privacy .mainvisual {
    background-image: url("../img/privacy/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.privacy .mainvisual {
    background-image: url("../img/privacy/mainvisual_sp.jpg");
}
}

/* .cont1 */
.privacy .cont1 {
    padding: 4em 0 2em;
}
.privacy .cont1 .inner {
    padding: 0 13.3125em;
}
.privacy .cont1 .con {
    padding-bottom: 2em;
}
.privacy .cont1 h2 {
    font-weight: 500;
    letter-spacing: 0.05em;
}
.privacy .cont1 p {
    letter-spacing: 0.05em;
}
.privacy .cont1 p.name {
    padding-top: 2em;
}
.privacy .cont1 ul li {
    letter-spacing: 0.05em;
    padding-left: 1em;
    text-indent: -1em;
}
.privacy .cont1 ul li::before {
    content: '・';
}
@media only screen and (max-width:750px){
.privacy .cont1 {
    padding: 10vw 0 5vw;
}
.privacy .cont1 .inner {
    padding: 0;
}
}


/* contact, thanks
------------------------------------------------- */
/* .mainvisual */
.contact .mainvisual,
.thanks .mainvisual {
    background-image: url("../img/contact/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.contact .mainvisual,
.thanks .mainvisual {
    background-image: url("../img/contact/mainvisual_sp.jpg");
}
}

/* .cont1 */
.contact .cont1,
.thanks .cont1 {
    padding: 3.5em 0 5.5em;
}
.contact .cont1 h2,
.thanks .cont1 h2 {
    letter-spacing: 0.05em;
    text-align: center;
    padding-bottom: 3.5em;
}
.contact .cont1 table {
    width: 42.5em;
    margin: 0 auto;
}
.contact .cont1 table td {
    padding-bottom: 1em;
}
.contact .cont1 table td.spacer {
    width: 1em;
}
.contact .cont1 .btn li {
    width: 42.5em;
    margin: 0 auto;
    text-align: center;
}
.contact .cont1 .wpcf7-not-valid-tip {
    font-size: 14px;
}
.contact .cont1 .wpcf7-spinner {
    margin-top: 0.5em;
}
.contact .cont1 .wpcf7 form .wpcf7-response-output {
    width: 48.57em;
    margin: 0 auto;
    font-size: 14px;
    text-align: center;
    box-sizing: border-box;
}
.thanks .cont1 p {
    text-align: center;
    line-height: 2;
    padding-bottom: 3em;
}
@media only screen and (min-width:751px) and (max-width:1366px){
.contact .cont1 .wpcf7-not-valid-tip,
.contact .cont1 .wpcf7 form .wpcf7-response-output {
    font-size: 1.02489vw;
}
}
@media only screen and (max-width:750px){
.contact .cont1,
.thanks .cont1 {
    padding-bottom: 15.33vw;
}
.contact .cont1 h2,
.thanks .cont1 h2 {
    padding-bottom: 1.5em;
}
.contact .cont1 table {
    width: 100%;
}
.contact .cont1 table td {
    padding-bottom: 1em;
}
.contact .cont1 table td.spacer {
    width: 1em;
}
.contact .cont1 .btn li {
    width: 100%;
}
.contact .cont1 .wpcf7-not-valid-tip {
    font-size: 2.8vw;
}
.contact .cont1 .wpcf7 form .wpcf7-response-output {
    width: 100%;
    font-size: 2.8vw;
    line-height: 1.85;
}
.thanks .cont1 p {
    font-size: 2.9vw;
    text-align: left;
    line-height: 1.85;
}
.thanks .cont1 .btnst2 a {
    font-size: 2.733vw;
    width: 13em;
    height: 3em;
}
.contact #snav,
.thanks #snav {
    display: none !important;
}
}


/* news
------------------------------------------------- */
/* .mainvisual */
.blog .mainvisual {
    background-image: url("../img/news/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.blog .mainvisual {
    background-image: url("../img/news/mainvisual_sp.jpg");
}
}

/* .newslist */
.blog .newslist {
    padding-top: 4.5em;
}
.blog .newslist ul li {
    margin-bottom: 3.5em;
}
@media only screen and (max-width:750px){
.blog .newslist {
    padding-top: 10.5vw;
}
.blog .newslist ul li {
    margin-bottom: 11vw;
}
}


/* news - detail
------------------------------------------------- */
/* cont1 */
.single-post .cont1 {
    padding: 11.25em 0 4.5em;
}
.single-post .cont1 .inner {
    padding: 0 13em;
}
.single-post .cont1 h1 {
    line-height: 1.35;
    letter-spacing: 0.05em;
    padding-bottom: 0.75em;
    text-align: center;
    position: relative;
}
.single-post .cont1 h1::after {
    content: '';
    width: 2.5em;
    height: 1px;
    background-color: #3d3d3d;
    position: absolute;
    left: 50%;
    bottom: 0.25em;
    margin-left: -1.25em;
}
.single-post .cont1 .date {
    text-align: center;
}
.single-post .cont1 .btnst1 {
    width: 14.285em;
    margin: 3.75em auto 0;
}
.single-post .cont1 .btnst1 a {
    background-color: #f8f6f0;
    border: 1px solid #121212;
    color: #121212;
}
.single-post .cont1 .btnst1 a::after {
    background-color: #25282e;
}
.single-post .cont1 .con {
    padding-top: 3.5em;
}
@media only screen and (min-width:751px){
.single-post .cont1 .btnst1 a:hover {
    color: #fff;
}
}
@media only screen and (max-width:750px){
.single-post .cont1 {
    padding: 28vw 0 5em;
}
.single-post .cont1 .inner {
    padding: 0;
}
.single-post .cont1 h1 {
    font-size: 5.6vw;
    padding-bottom: 0.75em;
}
.single-post .cont1 h1::after {
    width: 13.4vw;
    bottom: 0.25em;
    margin-left: -6.7vw;
}
.single-post .cont1 .date {
    font-size: 2.876vw;
    text-align: center;
}
.single-post .cont1 .btnst1 {
    width: 12em;
    margin: 2.5em auto 0;
}
.single-post .cont1 .con {
    padding-top: 10vw;
}
}


/* programs
------------------------------------------------- */
/* .mainvisual */
.post-type-archive-programs .mainvisual {
    background-image: url("../img/programs/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.post-type-archive-programs .mainvisual {
    background-image: url("../img/programs/mainvisual_sp.jpg");
}
}

/* .programs */
.post-type-archive-programs .programs {
    padding-top: 4em; 
}
.post-type-archive-programs .programs .headline1 {
    text-align: center;
}
.post-type-archive-programs .programs .txt {
    letter-spacing: 0.05em;
    text-align: center;
    padding-bottom: 3.75em;
}
@media only screen and (max-width:750px){
.post-type-archive-programs .programs {
    padding-top: 10vw; 
}
.post-type-archive-programs .programs .headline1 {
    margin-bottom: 0.75em;
}
.post-type-archive-programs .programs .txt {
    padding: 0.5em 0 1em;
}
}


/* programs - detail
------------------------------------------------- */
/* .mainvisual */
@media only screen and (max-width:750px){
.single-programs .mainvisual {
    height: 65.33vw;
}
}

/* cont1 */
.single-programs .cont1 {
    padding: 3.75em 0 5em;
}
.single-programs .cont1 .inner {
    padding: 0 14em;
}
.single-programs .cont1 .btnst1 {
    width: 18em;
    margin: 3.75em auto 0;
}
.single-programs.translatepress-en_US .cont1 .btnst1 {
    width: 21em;
}
.single-programs .cont1 .btnst1 a {
    background-color: #f8f6f0;
    border: 1px solid #121212;
    color: #121212;
}
.single-programs .cont1 .btnst1 a::after {
    background-color: #25282e;
}
@media only screen and (min-width:751px){
.single-programs .cont1 .btnst1 a:hover {
    color: #fff;
}
}
@media only screen and (max-width:750px){
.single-programs .cont1 {
    padding: 10.5vw 0 5em;
}
.single-programs .cont1 .inner {
    padding: 0;
}
.single-programs .cont1 .btnst1 {
    width: 16em;
    margin: 2.5em auto 0;
}
}


/* 自由入力欄
------------------------------------------------- */
.single-post .cont1 .con h1,
.single-post .cont1 .con h2,
.single-programs .cont1 .con h1,
.single-programs .cont1 .con h2 {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.75;
    padding-bottom: 0.75em;
}
.single-post .cont1 .con h3,
.single-programs .cont1 .con h3 {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.75;
    padding-bottom: 0.75em;
}
.single-post .cont1 .con h4,
.single-programs .cont1 .con h4 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    padding-bottom: 0.25em;
}
.single-post .cont1 .con h5,
.single-programs .cont1 .con h5 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    border-bottom: 1px solid #404040; 
    padding-bottom: 0.5em;
    margin-bottom: 0.75em;
}
.single-post .cont1 .con h6,
.single-programs .cont1 .con h6 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    padding-bottom: 0.25em;
}
.single-post .cont1 .con p,
.single-programs .cont1 .con p {
    padding-bottom: 2.5em;
}
.single-post .cont1 .con strong,
.single-programs .cont1 .con strong {
    font-weight: 700;
}
.single-post .cont1 .con em,
.single-programs .cont1 .con em {
    font-style: italic;
}
.single-post .cont1 .con p a,
.single-programs .cont1 .con p a {
	text-decoration: underline;
}
.single-post .cont1 .con img,
.single-programs .cont1 .con img {
    width: auto;
    padding-bottom: 1.5em;
}
.single-post .cont1 .con ul,
.single-programs .cont1 .con ul {
	padding-bottom: 2.5em;
}
.single-post .cont1 .con ul li,
.single-programs .cont1 .con ul li {
	padding-left: 1em;
    text-indent: -1em;
}
.single-post .cont1 .con ul li::before,
.single-programs .cont1 .con ul li::before {
	content: '・';
}
.single-post .cont1 .con ol,
.single-programs .cont1 .con ol {
    padding: 0 0 2.5em 1.5em;
}
.single-post .cont1 .con .ybox,
.single-programs .cont1 .con .ybox {
    background-color: #e6e2d6;
    padding: 2em;
    margin-bottom: 2.5em;
}
.single-post .cont1 .con .ybox p,
.single-programs .cont1 .con .ybox p,
.single-post .cont1 .con .ybox ul,
.single-programs .cont1 .con .ybox ul,
.single-post .cont1 .con .ybox ol,
.single-programs .cont1 .con .ybox ol {
    padding-bottom: 0;
}
.single-post .cont1 .con ul.d-flex2,
.single-post .cont1 .con ul.d-flex3 {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding-bottom: 2.5em;
}
.single-post .cont1 .con ul.d-flex2 li {
    width: 48%;
    padding: 0;
    text-indent: 0;
}
.single-post .cont1 .con ul.d-flex3 li {
    width: 31%;
    padding: 0;
    text-indent: 0;
}
.single-post .cont1 .con ul.d-flex2 li::before,
.single-post .cont1 .con ul.d-flex3 li::before {
    display: none;
}
@media only screen and (min-width:751px) and (max-width:1366px){
.single-post .cont1 .con h1,
.single-post .cont1 .con h2,
.single-programs .cont1 .con h1,
.single-programs .cont1 .con h2 {
    font-size: 1.61054vw;
}
.single-post .cont1 .con h3,
.single-programs .cont1 .con h3 {
    font-size: 1.61054vw;
}
.single-post .cont1 .con h4,
.single-programs .cont1 .con h4 {
    font-size: 1.31771vw;
}
.single-post .cont1 .con h5,
.single-programs .cont1 .con h5 {
    font-size: 1.31771vw;
}
.single-post .cont1 .con h6,
.single-programs .cont1 .con h6 {
    font-size: 1.31771vw;
}
}
@media only screen and (min-width:751px){
.single-post .cont1 .con p a:hover,
.single-programs .cont1 .con p a:hover {
	text-decoration: none;
}
}
@media only screen and (max-width:750px){
.single-post .cont1 .con h1,
.single-post .cont1 .con h2,
.single-programs .cont1 .con h1,
.single-programs .cont1 .con h2 {
    font-size: 4.4vw;
}
.single-post .cont1 .con h3,
.single-programs .cont1 .con h3 {
    font-size: 4.4vw;
}
.single-post .cont1 .con h4,
.single-programs .cont1 .con h4 {
    font-size: 3.733vw;
}
.single-post .cont1 .con h5,
.single-programs .cont1 .con h5 {
    font-size: 3.733vw;
}
.single-post .cont1 .con h6,
.single-programs .cont1 .con h6 {
    font-size: 3.733vw;
}
.single-post .cont1 .con ul.d-flex2,
.single-post .cont1 .con ul.d-flex3 {
    display: block;
    padding-bottom: 1.5em;
}
.single-post .cont1 .con ul.d-flex2 li,
.single-post .cont1 .con ul.d-flex3 li {
    width: 100%;
    margin-bottom: 2vw;
}
}


/* fresh
------------------------------------------------- */
/* .mainvisual */
.fresh .mainvisual {
    background-image: url("../img/fresh/mainvisual.jpg");
}
.fresh .mainvisual h1 {
    color: #000;
}
@media only screen and (max-width:750px){
.fresh .mainvisual {
    background-image: url("../img/fresh/mainvisual_sp.jpg");
}
}

/* .cont1 */
.fresh .cont1 {
    padding-bottom: 4.25em;
}
.fresh .cont1.fi {
    padding-top: 3.5em;
}
.fresh .cont1 .inner {
    padding: 0 13em;
}
.fresh .cont1 .ttl1 {
    font-weight: 500;
    line-height: 1.75;
    color: #a5946f;
    padding-bottom: 0.5em;
}
.fresh .cont1 .ttl2 {
    background-color: #a5946f;
    font-weight: 500;
    line-height: 1.75;
    color: #fff;
    padding: 0.5em 1em;
}
.fresh .cont1 p {
    letter-spacing: 0.05em;
    padding-bottom: 2em;
}
.fresh .cont1 ol {
    padding: 0 0 2em 1.5em;
}
.fresh .cont1 .fig {
    width: 33em;
    margin: 1em auto;
}
.fresh .cont1 table {
    width: 100%;
}
.fresh .cont1 .table1 th,
.fresh .cont1 .table1 td {
    background-color: #f7f5f1;
    border: 1px solid #fff;
    line-height: 1.75;
    color: #615840;
    padding: 1em;
    text-align: left;
    font-weight: 500;
    vertical-align: middle;
    box-sizing: border-box;
}
.fresh .cont1 .table1 th {
    width: 15.5em;
    background-color: #d3c3a3;
    color: #fff;
    padding: 1em 1.25em;
}
.fresh .cont1 .table2 th,
.fresh .cont1 .table2 td {
    background-color: #fefdfa;
    border: 1px solid #ebe5da;
    line-height: 1.75;
    padding: 1em 1.25em;
    text-align: left;
    font-weight: 500;
    vertical-align: middle;
    box-sizing: border-box;
}
.fresh .cont1 .table2 th {
    color: #917f44;
}
.fresh .cont1 .table2 tr:first-child th {
    background-color: #dfd1b5;
}
@media only screen and (max-width:750px){
.fresh .cont1 {
    padding-bottom: 12.5vw;
}
.fresh .cont1.fi {
    padding-top: 10vw;
}
.fresh .cont1 .inner {
    padding: 0;
}
.fresh .cont1 .ttl1 {
    font-size: 4.4vw;
    padding-bottom: 0.75em;
}
.fresh .cont1 .ttl2 {
    font-size: 4vw;
    padding: 0.65em 1.15em;
}
.fresh .cont1 .fig {
    width: 100%;
    margin: 0 auto 2em;
}
.fresh .cont1 .table1 th,
.fresh .cont1 .table1 td {
    display: block;
    border-left: none;
    border-right: none;
    line-height: 2.1875;
    padding: 1em 1.5em;
}
.fresh .cont1 .table1 th {
    font-size: 3.733vw;
    width: 100%;
    padding: 0.5em 1.25em;
}
.fresh .cont1 .table2 th,
.fresh .cont1 .table2 td {
    font-size: 3vw;
    line-height: 1.5;
    padding: 0.75em 0.5em;
    vertical-align: top;
}
.fresh .cont1 .table2 th {
    white-space: nowrap;
}
}