@charset "utf-8";

/* -------------------------------------------------- */
/*  common
/* -------------------------------------------------- */
html {
    width: 100%;
    height: 100%;
    scroll-behavior: smooth;
}
body {
    width: 100%;
    font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #555;
    background: #fcfcfc;
    line-height: 1.6;
/*    border-top: 5px solid #38ce9c;*/
}
.min {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}
.got {
    font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
a {
    color: #019c74;
/*    color: #38ce9c;*/
    word-break: break-all;
    transition: opacity 0.5s;
}
a:hover {
    opacity: 0.7;
}
a.noUnder {
    text-decoration: none;
}
.material-icons {
    display: inline-flex !important;
    vertical-align: middle;
    font-size: 20px !important;
}
img {
    vertical-align: bottom;
}
li.noMark {
    list-style: none;
}
@media screen and (min-width:821px){
    .spOnly {
        display: none !important;
    }
    .cmnWrap {
        min-width: 970px;
        max-width: 1300px;
        margin: 0 auto;
    }
    .cmnWrapIn {
        width: 85%;
        margin: 0 auto;
    }
    .cmnWrapIn2 {
        width: 70%;
        margin: 0 auto;
    }
}
@media screen and (max-width:820px){
    .pcOnly {
        display: none !important;
    }
    img {
        width: 100%;
    }
    .cmnWrap {
        width: 100%;
        margin: 0 auto;
    }
    .cmnWrapIn {
        width: 94%;
        margin: 0 auto;
    }
    .cmnWrapIn2 {
        width: 94%;
        margin: 0 auto;
    }
}
@media screen and (max-width:320px){
    .seCut {
        display: none;
    }
}
@keyframes menuIn {
    0% {
        opacity: 0;
        margin-left: 100%;
    }
    100% {
        opacity: 1;
        margin-left: 0;
    }
}
@keyframes delay {
    0% {
        opacity: 0;
        margin-top: 1em;
    }
    100% {
        opacity: 1;
        margin-top: 0;
    }
}
@keyframes delay095 {
    0% {
        opacity: 0;
        bottom: -1em;
    }
    100% {
        opacity: 0.95;
        bottom: -3.75em;
    }
}
.bold {
    font-weight: bold !important;
}
.weightNormal {
    font-weight: 500 !important;
}
.small {
    font-size: 14px !important;
}
.normal {
    font-size: 18px !important;
}
.large {
    font-size: 22px !important;
}
.flexAround {
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.flexBetween {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.flexStart {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.flexEnd {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.addShadow {
    box-shadow: 0 0 4px 4px rgba(0,0,0,0.1);
}
.addRadius {
    border-radius: 4px;
}
.txtCenter {
    text-align: center;
}
.txtRight {
    text-align: right;
}
.valignCenter {
    vertical-align: middle;
}
.coGreen {
    color: #019c74;
}
.coLightGreen {
    color: #38ce9c;
}
.coPink {
    color: #f9b2e2;
}
.coGray {
    color: #ccc;
}
.coRed {
    color: #c00;
}
.bgGreen {
    background: #38ce9c;
    color: #fff;
}
.bgPink {
    background: #f9b2e2;
    color: #fff;
}
.bgGray {
    background: #f5f5f5;
}

/* -------------------------------------------------- */
/*  header
/* -------------------------------------------------- */
header {
    width: 100%;
}
header #head {
    padding: 1.25em 1.5em;
}
@media screen and (max-width: 820px){
    header #head {
        padding: 0;
    }
}
/* head logo */
header #head h1 {
    width: 160px;
    padding: 0 2em 0 0.75em;
}
header #head h1 img {
    width: 100%;
}
@media screen and (max-width: 820px){
    header #head h1 {
        width: 100px;
        padding: 0.5em;
    }
    header #head h1 img {
        width: 100px;
    }
}
/* pc head menu */
header #head nav {
    flex-grow: 2;
}
header #head nav ul.pcOnly li a {
    display: inline-block;
	position: relative;
	line-height: 1.5em;
	padding-left: 2em;
    text-decoration: none;
    color: #555;
    font-size: 16px;
}
header #head nav ul.pcOnly li:not(:nth-child(1)) a {
    margin-left: 1.5em;
}
header #head nav ul.pcOnly li a:before {
	position: absolute;
	left: 0;
	content: "";
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
}
header #head nav ul.pcOnly li:nth-child(1) a:before {
	background: url(../image/menu01.png) no-repeat;
	background-size: contain;
}
header #head nav ul.pcOnly li:nth-child(2) a:before {
	background: url(../image/menu05.png) no-repeat;
	background-size: contain;
}
header #head nav ul.pcOnly li:nth-child(3) a:before {
	background: url(../image/menu02.png) no-repeat;
	background-size: contain;
}
header #head nav ul.pcOnly li:nth-child(4) a:before {
	background: url(../image/menu03.png) no-repeat;
	background-size: contain;
}
header #head nav ul.pcOnly li:nth-child(5) a:before {
	background: url(../image/menu04.png) no-repeat;
	background-size: contain;
}
header #head nav ul.pcOnly li:nth-child(6) a:before {
	background: url(../image/menu06.png) no-repeat;
	background-size: contain;
}
@media screen and (max-width: 1200px){
    header #head nav ul.pcOnly li a {
        font-size: 14.5px;
    }
    header #head h1 {
        width: 130px;
    }
    @media screen and (min-width: 821px){
        header #head h1 {
            padding: 0 3em 0 1.5em;
        }
    }
}
@media screen and (max-width: 1170px){
    header #head nav ul.pcOnly li a {
        font-size: 13px;
    }
    header #head nav ul.pcOnly li:not(:nth-child(1)) a {
        margin-left: 1.25em;
    }
}
/* pc head tel */
header #head .tel {
    font-size: 18px;
    width: 115px;
    display: inline-block;
	position: relative;
	line-height: 1.5em;
	padding-left: 1.75em;
    text-decoration: none;
}
header #head .tel:before {
	position: absolute;
	left: 0;
	content: "";
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	background: url(../image/tel01.png) no-repeat;
	background-size: contain;
}
header #head .tel p {
    font-size: 14px;
	line-height: 1em;
}
@media screen and (max-width: 820px){
    header #head nav {
        width: 100%;
    }
    header #head .tel {
        font-size: 16px;
        padding-left: 2em;
        line-height: 1.5em;
        margin-right: 4em;
        white-space: nowrap;
    }
    header #head .tel:before {
        width: 1.5em;
        height: 1.5em;
    }
}
/* sp head menu */
@media screen and (max-width: 820px){
    header #head .menu.spOnly .button {
        position: fixed;
        top: 0.6em;
        right: 0.5em;
        line-height: 0.5;
        border: 1px solid #ccc;
        padding: 0.3em 0.35em 0.45em 0.35em;
        background: #fff;
        z-index: 9999;
    }
    header #head .menu.spOnly .button span.text {
        font-size: 10px;
        display: inline-block;
        padding-right: 0.1em;
    }
    header #head .menu.spOnly #spMenuChk + label + nav {
        display: none;
        opacity: 0;
    }
    header #head .menu.spOnly #spMenuChk:checked + label + nav {
        animation: 1s menuIn;
        display: block;
        width: 68%;
        height: 100%;
        opacity: 1;
        position: fixed;
        top: 0;
        left: 32%;
        background: #fff;
        box-shadow: -3px -3px 3px rgba(0,0,0,0.1);
        z-index: 999;
    }
    header #head .menu.spOnly #spMenuChk:checked + label + nav ul {
        justify-content: flex-start;
        flex-wrap: wrap;
        margin: 3.75em 0 0;
    }
    header #head .menu.spOnly #spMenuChk:checked + label + nav ul li {
        width: calc(100% - 1em);
        border-top: 1px solid #ccc;
        padding: 0.5em;
    }
    header #head .menu.spOnly #spMenuChk:checked + label + nav ul li:last-child {
        border-bottom: 1px solid #ccc;
    }
    header #head .menu.spOnly #spMenuChk:checked + label + nav ul li a {
        width: 100%;
        display: block;
    }
}

/* -------------------------------------------------- */
/*  footer
/* -------------------------------------------------- */
footer {
    padding: 2em 0 1em;
}
footer .cmnWrapIn2 {
    min-width: 1000px;
}
footer .flexAround {
    align-items: flex-start;
}
footer .flexAround div {
    width: 47%;
}
footer .flexAround div.hospital img {
    width: 400px;
}
footer .flexAround div.hospital p.address {
    margin: 2em 0 2.5em;
}
footer .flexAround div.hospital p a > span {
    padding: 1em;
    border-radius: 5px;
}
footer .flexAround div.map {
    width: 53%;
}
footer .flexAround div.map img {
    width: 100%;
}
footer nav ul {
    margin: 0 0 2em;
}
footer nav ul li {
    border-left: 1px solid #ccc;
    text-align: center;
    width: calc(100% / 7 - 1px);
    font-size: 90%;
}
footer nav ul li:first-child {
    width: calc(100% / 7 - 2px);
}
footer nav ul li:last-child {
    border-right: 1px solid #ccc;
}
footer p.copy {
    margin-top: 2em;
}
/* sp footer */
@media screen and (max-width: 820px){
    footer {
        padding: 1.25em 0 1em;
    }
    footer .cmnWrapIn2 {
        min-width: auto;
        display: flex;
        flex-wrap: wrap;
    }
    footer .cmnWrapIn2 .flexAround {
        order: 1;
        flex-direction: column;
    }
    footer .cmnWrapIn2 .flexAround .hospital {
        width: 100%;
    }
    footer .cmnWrapIn2 .flexAround .hospital p:nth-child(1) {
        text-align: center;
    }
    footer .cmnWrapIn2 .flexAround .hospital img {
        width: 90%;
    }
    footer .cmnWrapIn2 .flexAround p.spMap {
        width: 100%;
        margin-top: 1.5em;
    }
    footer .cmnWrapIn2 .flexAround p.spMap img {
        width: 100% !important;
    }
    footer .flexAround div.hospital p.address {
        margin: 1.5em 0 1.75em;
        font-size: 16px;
    }
    footer .cmnWrapIn2 .flexAround p.address + p {
        text-align: center;
    }
    footer .flexAround div.hospital p a > span {
        padding: 1em 1.25em;
        border-radius: 5px;
        font-size: 14px;
    }
    footer nav {
        order: 2;
    }
    footer nav ul.flexBetween {
        justify-content: flex-start;
        flex-wrap: wrap;
        margin: 2.25em 0 0;
    }
    footer nav ul.flexBetween li {
        width: calc(50% - 2px - 1em);
        border-bottom: 1px solid #ccc;
        border-right: 1px solid #ccc;
        border-left: 1px solid #ccc;
        padding: 0.5em;
        text-align: left;
    }
    footer nav ul.flexBetween li:nth-child(2n+1) {
        width: calc(50% - 1px - 1em);
        border-left: 0;
    }
    footer nav ul.flexBetween li:nth-child(2),
    footer nav ul.flexBetween li:nth-child(3) {
        border-top: 1px solid #ccc;
    }
    footer nav ul.flexBetween li a {
        width: 100%;
        display: block;
    }
    footer p.copy {
        order: 3;
        margin-top: 1.5em;
        width: 100%;
    }
}

/* -------------------------------------------------- */
/*  error
/* -------------------------------------------------- */
#error {
    padding: 1.5em 0 5em;
}
#error h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#error h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.22em auto 0;
    border-bottom: 3px solid #019c74;
}
#error h2 .material-icons {
    font-size: 100px !important;
}
/* sp common */
@media screen and (max-width: 820px){
    #error {
        padding: 1.75em 0 2.5em;
    }
    #error h2 {
        margin-bottom: 2em;
    }
    #error h2 .material-icons {
        font-size: 90px !important;
    }
}

/* -------------------------------------------------- */
/*  index
/* -------------------------------------------------- */
main {
    width: 100%;
}
#eyecatch {
    padding: 0 1.5em;
}
/* pc eyectach menu */
#eyecatch .menu {
    width: 185px;
    flex-direction: column;
    margin-right: 25px;
}
#eyecatch .menu p {
    padding: 2em 0 1.25em;
    line-height: 2;
}
#eyecatch .menu p:nth-child(1) {
    animation: 1.5s delay;
}
#eyecatch .menu p:nth-child(2) {
    animation: 2s delay;
}
#eyecatch .menu p:nth-child(3) {
    animation: 2.5s delay;
}
#eyecatch .menu p a {
    text-decoration: none;
    color: #555;
}
#eyecatch .menu p a img {
    width: 45%;
}
/* pc eyectach image */
#eyecatch .image {
    position: relative;
    width: calc(100% - 210px);
    border-radius: 10px;
    animation: 1s delay;
}
#eyecatch .swiper-container {
    border-radius: 0 40px 0 40px;
    max-height: 580px;
}
#eyecatch .image ul.info {
    position: absolute;
    bottom: -3.75em;
    right: 3em;
    background: #fff;
    opacity: 0.95;
    width: 450px;
    padding: 1.5em 2em 1em;
    list-style: none;
    border-radius: 3px;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.2);
    line-height: 2;
    animation: 2s delay095;
    z-index: 1;
}
#eyecatch .image ul.info:before {
	position: absolute;
	top: -1.5em;
	left: -1.5em;
	content: "";
	display: inline-block;
	width: 3em;
	height: 3em;
	background: url(../image/info.png) no-repeat;
	background-size: contain;
}
#eyecatch .image ul.info li:not(:last-child) {
    border-bottom: 1px dashed #bbb;
    margin-bottom: 5px;
    padding-bottom: 5px;
}
#eyecatch .image ul.info li span {
    display: inline-block;
    margin-right: 1em;
}
#eyecatch .image ul.info li span.material-icons {
    margin-right: 0.25em;
}
/* 1280ｘ720 以下の場合調整 */
/*
@media screen and (max-width: 1280px){
    @media screen and (min-width: 821px){
        #eyecatch .menu p {
            padding: 1em 0 1.25em;
        }
        #eyecatch .swiper-container {
            max-height: 485px;
        }
    }
}
*/
/* sp eyectach menu & image */
@media screen and (max-width: 820px){
    #eyecatch {
        padding: 0;
        flex-wrap: wrap;
    }
    #eyecatch .menu {
        order: 2;
        width: 100%;
        margin: 1.25em 0 1em;
    }
    #eyecatch .menu.flexBetween {
        flex-direction: row;
    }
    #eyecatch .menu p {
        padding: 0;
        width: 31%;
        font-size: 15px;
    }
    #eyecatch .menu p a img {
        width: 42%;
    }
    #eyecatch .image {
        order: 1;
        width: 100%;
    }
    #eyecatch .swiper-container {
        border-radius: 0;
    }
    #eyecatch .info.spOnly {
        order: 3;
    }
    #eyecatch .info.spOnly ul {
        margin-top: 0.5em;
        padding: 0.75em 0.75em 0.5em 0.75em;
        width: calc(100% - 1.5em);
    }
    #eyecatch .info.spOnly ul li {
        list-style: none;
        margin-bottom: 0.5em;
    }
    #eyecatch .info.spOnly ul li span {
        display: block;
    }
}
/* bnrArea */
#bnrArea {
    padding: 0 1.5em;
}
#bnrArea p {
    margin: 8em 0 5em;
    border: 1px solid #ccc;
    padding: 1.5em;
    width: calc(100% - 3em - 2em);
    margin-right: 2em;
}
#bnrArea p:last-child {
    margin-right: 0;
}
#bnrArea p img {
    width: 100%;
}
/* sp bnrArea */
@media screen and (max-width: 820px){
    #bnrArea {
        padding: 0;
        margin-bottom: 2.5em;
    }
    #bnrArea .flexAround {
        flex-direction: column;
    }
    #bnrArea .flexAround p {
        margin: 1.5em 0 0 0;
        padding: 0;
        width: 100%;
        border: 0;
    }
}
/* gairai */
#gairai {
    padding: 5em 0;
}
#gairai .cmnWrapIn2 {
    min-width: 1000px;
}
#gairai h2 {
    font-size: 28px;
    line-height: 2.2;
}
#gairai h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0 auto;
    border-bottom: 3px solid #019c74;
    line-height: 2;
}
#gairai h2 img {
    width: 100px;
}
#gairai h2 + .flexAround {
    align-items: flex-start;
}
#gairai h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin: 4em 0 1.5em;
}
#gairai h3 + ul {
    padding-left: 1em;
    margin-bottom: 1.5em;
}
#gairai .flexBetween div {
    width: 45%;
}
#gairai table.tantou {
    width: 100%;
}
#gairai table.tantou th {
    background: #38ce9c;
    color: #fff;
    font-weight: 500;
}
#gairai table.tantou td {
    background: #fff;
    min-width: 2em;
}
#gairai table.tantou th,
#gairai table.tantou td {
    padding: 0.25em 0.75em;
    border: 1px solid #eee;
    font-size: 16px;
    vertical-align: middle;
}
#gairai .text {
    width: calc(100% - 2em - 2px);
    padding: 1em;
    border: 1px solid #38ce9c;
    margin: 3em auto 0;
}
/* sp gairai */
@media screen and (max-width: 820px){
    #gairai {
        padding: 2em 0;
    }
    #gairai .cmnWrapIn2 {
        min-width: auto;
    }
    #gairai h2 {
        font-size: 20px;
    }
    #gairai h2 img {
        width: 80px;
    }
    #gairai h2 + .flexBetween {
        flex-direction: column;
    }
    #gairai h2 + .flexBetween div {
        width: 100%;
    }
    #gairai h2 + .flexBetween div h3 {
        margin: 2.25em 0 1.25em;
        padding-left: 0.5em;
    }
    #gairai h3 + ul {
        margin-bottom: 1.25em;
    }
    #gairai table.tantou {
        width: 100%;
    }
    #gairai table.tantou th,
    #gairai table.tantou td {
        font-size: 13px !important;
    }
    #gairai table.tantou .small {
        font-size: 11px !important;
    }
    #gairai .text {
        margin: 2.25em auto 0.75em;
    }
}
/* dialysis */
#dialysis {
    padding: 5em 0;
}
#dialysis .cmnWrapIn {
    min-width: 1000px;
}
#dialysis h2 {
    font-size: 28px;
    line-height: 2.2;
}
#dialysis h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0 auto;
    border-bottom: 3px solid #f9b2e2;
    line-height: 2;
}
#dialysis h2 img {
    width: 100px;
}
#dialysis h2 + .flexAround {
    align-items: flex-start;
    margin-top: 4em;
}
#dialysis .flexAround div:nth-child(1) {
    border: 1px solid #ccc;
    padding: 1.5em;
    width: calc(48% - 3em);
}
#dialysis .flexAround div:nth-child(2) {
    margin-left: 2.5em;
    width: calc(52% - 2.5em);
}
#dialysis .flexAround div img {
    width: 100%;
}
#dialysis .flexAround div h3 {
    border-left: 7px solid #f9b2e2;
    padding: 0.1em 0 0.1em 0.75em;
    margin-bottom: 1.5em;
}
#dialysis .flexAround div h3 + p {
    text-indent: 1.25em;
    margin-bottom: 2em;
}
#dialysis .flexAround div p.contact {
    position: relative;
    display: inline-block;
    margin: 1.5em 0;
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #fff;
    font-size: 16px;
    background: #f9b2e2;
    border: solid 3px #f9b2e2;
    border-radius: 10px;
    box-sizing: border-box;
}
#dialysis .flexAround div p.contact:before {
    content: "";
    position: absolute;
    top: -24px;
    left: 50%;
    margin-left: -15px;
    border: 12px solid transparent;
    border-bottom: 12px solid #f9b2e2;
    z-index: 2;
}
#dialysis .flexAround div p.contact:after {
    content: "";
    position: absolute;
    top: -28px;
    left: 50%;
    margin-left: -17px;
    border: 14px solid transparent;
    border-bottom: 14px solid #f9b2e2;
    z-index: 1;
}
#dialysis .flexAround div p span {
    display: inline-block;
    margin: 0;
    padding: 0 1em;
    font-size: 30px;
}
#dialysis .flexAround div p span img {
    width: 1.75em;
    margin-right: 0.75em;
}
/* sp dialysis */
@media screen and (max-width: 820px){
    #dialysis {
        padding: 2em 0;
    }
    #dialysis .cmnWrapIn {
        min-width: auto;
    }
    #dialysis h2 {
        font-size: 20px;
    }
    #dialysis h2 img {
        width: 80px;
    }
    #dialysis h2 + .flexAround {
        flex-direction: column;
        margin-top: 2em;
    }
    #dialysis h2 + .flexAround div:nth-child(1) {
        width: 100%;
        border: 0;
        padding: 0;
    }
    #dialysis .flexAround div img {
        border-radius: 0;
    }
    #dialysis .flexAround div:nth-child(2) {
        margin-left: 0;
        width: 100%;
    }
    #dialysis .flexAround div h3 {
        border-left: 7px solid #f9b2e2;
        margin: 1.5em 0 0.5em;
        padding-left: 0.5em;
    }
    #dialysis .flexAround div h3 + p {
        text-indent: 1.25em;
        margin-bottom: 1.5em;
    }
    #dialysis .flexAround div p.contact {
        width: 100%;
        text-align: center;
    }
    #dialysis .flexAround div p.contact span {
        padding: 0;
        font-size: 20px;
    }
}

/* -------------------------------------------------- */
/*  hospital
/* -------------------------------------------------- */
#hospital {
    padding: 1.95em 0 5em;
}
#hospital h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#hospital h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#hospital h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#hospital h2 + .flexAround {
    align-items: flex-start;
    margin-top: 4em;
}
#hospital .flexAround div:nth-child(1) {
    border: 1px solid #ccc;
    padding: 1.5em;
    width: calc(48% - 3em);
}
#hospital .flexAround div:nth-child(2) {
    margin-left: 2.5em;
    width: calc(52% - 2.5em);
}
#hospital .flexAround div img {
    width: 100%;
}
#hospital .flexAround div:nth-child(2) p span.bgGreen {
    display: inline-block;
    padding: 0.75em 1em;
    border-radius: 5px;
    margin-top: 1.5em;
}
#hospital .flexAround div:nth-child(2) p:not(:nth-child(4)) {
    margin-bottom: 0.5em;
}
/* sp common */
@media screen and (max-width: 820px){
    #hospital {
        padding: 2em 0 2.5em;
    }
    #hospital h2 {
        margin-bottom: 2em;
    }
    #hospital h2 img {
        width: 78.5px;
    }
    #hospital h2 + .flexAround {
        flex-direction: column;
        margin-top: 2em;
    }
    #hospital h2 + .flexAround div:nth-child(1) {
        width: 100%;
        border: 0;
        padding: 0;
    }
    #hospital .flexAround div img {
        border-radius: 0;
    }
    #hospital .flexAround div:nth-child(2) {
        margin-left: 0;
        width: 100%;
    }
    #hospital .flexAround div p:nth-child(1) {
        margin-top: 1.5em;
    }
}

/* -------------------------------------------------- */
/*  recruit
/* -------------------------------------------------- */
#recruit {
    padding: 1.95em 0 5em;
}
#recruit h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#recruit h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#recruit h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#recruit h2 + .flexAround {
    align-items: flex-start;
}
#recruit .left {
    width: 48.5%;
}
#recruit .left img {
    display: block;
    padding: 1.5em;
    width: calc(100% - 3em - 2px);
    border: 1px solid #ccc;
}
#recruit .flexAround > div:nth-child(2) {
    margin-left: 2.5em;
    width: calc(51.5% - 2.5em);
}
#recruit h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
}
#recruit table {
    width: 100%;
    margin-top: 1em;
}
#recruit table th, #recruit table td {
    padding: 0.75em 0.5em;
    border: 1px solid #ccc;
    vertical-align: middle;
}
#recruit table th {
    white-space: nowrap;
    background: #38ce9c;
    color: #fff;
}
/* sp common */
@media screen and (max-width: 820px){
    #recruit {
        padding: 2em 0 2.5em;
    }
    #recruit h2 {
        margin-bottom: 2em;
    }
    #recruit h2 img {
        width: 78.5px;
    }
    #recruit h2 + .flexAround {
        flex-wrap: wrap;
    }
    #recruit .left {
        width: 100%;
    }
    #recruit .left img {
        padding: 0;
        width: 100%;
        border: 0;
    }
    #recruit .flexAround > div:nth-child(2) {
        margin-left: 0;
        width: 100%;
    }
    #recruit h3 {
        margin-top: 2em;
    }
    #recruit table {
        font-size: 14px;
    }
}

/* -------------------------------------------------- */
/*  access
/* -------------------------------------------------- */
#access {
    padding: 1.95em 0 5em;
}
#access h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#access h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#access h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#access h2 + .flexAround,
#access h2 + .flexAround + .flexAround {
    align-items: flex-start;
    margin-top: 4em;
}
#access h2 + .flexAround + .flexAround {
    margin-top: 2.5em;
}
#access .flexAround > div:nth-child(1) {
    border: 1px solid #ccc;
    padding: 1.5em;
    width: calc(48% - 3em);
}
#access .flexAround > div:nth-child(2) {
    margin-left: 2.5em;
    width: calc(52% - 2.5em);
}
#access .flexAround > div img {
    width: 100%;
}
#access .flexAround > div:nth-child(2) p span.bgGreen {
    display: inline-block;
    padding: 0.75em 1em;
    border-radius: 5px;
    margin-top: 1.5em;
}
#access h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin-bottom: 1.5em;
}
#access .flexAround .text div:nth-child(1) p {
    margin-bottom: 1.5em;
}
#access .flexAround:nth-child(2) {
    margin-top: 1.5em !important;
}
#access h2 + .flexAround + .flexAround + iframe {
    width: 100%;
    height: 500px;
    margin-top: 3em;
}
/* sp common */
@media screen and (max-width: 820px){
    #access {
        padding: 2em 0 2.5em;
    }
    #access h2 {
        margin-bottom: 2em;
    }
    #access h2 img {
        width: 78.5px;
    }
    #access h2 + .flexAround,
    #access h2 + .flexAround + .flexAround {
        flex-direction: column;
        margin-top: 2em;
    }
    #access h2 + .flexAround > div:nth-child(1),
    #access h2 + .flexAround + .flexAround > div:nth-child(1) {
        width: 100%;
        border: 0;
        padding: 0;
    }
    #access .flexAround > div img {
        border-radius: 0;
    }
    #access .flexAround > div:nth-child(2) {
        margin-left: 0;
        width: 100%;
    }
    #access .flexAround > div p:nth-child(1) {
        margin-top: 1.5em;
    }
    #access h3 {
        margin-top: 1.5em;
    }
    #access h2 + .flexAround + .flexAround + iframe {
        height: 350px;
        margin-top: 0.25em;
    }
}

/* -------------------------------------------------- */
/*  admission
/* -------------------------------------------------- */
#admission {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#admission h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#admission h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#admission h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#admission h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
}
#admission table {
    width: 100%;
    margin-top: 1em;
}
#admission table th, #admission table td {
    padding: 0.75em 0.5em;
    border: 1px solid #ccc;
    vertical-align: middle;
}
#admission table th {
    white-space: nowrap;
    background: #38ce9c;
    color: #fff;
    max-width: 3.5em;
}
#admission .bx-wrapper {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}
#admission .remote h3 {
    margin: 3em 0 1em;
}
#admission .remote p img {
    display: inline-block;
    border: 1px solid #ccc;
    padding: 1.5em;
    margin-top: 1.5em;
    width: 300px;
}
#admission .remote ul {
    padding-left: 1em;
    font-size: 17px;
}
#admission .remote ul.item {
    margin: 0.5em 0;
    padding-left: 2em;
}
/* sp common */
@media screen and (max-width: 820px){
    #admission {
        padding: 2em 0 2.5em;
    }
    #admission h2 {
        margin-bottom: 2em;
    }
    #admission h2 img {
        width: 78.5px;
    }
    #admission h3 {
        margin-top: 2em !important;
    }
    #admission table th {
        max-width: 3.5em;
    }
    #admission .remote p img {
        padding: 0;
        border: 0;
        width: auto;
        max-width: 100%;
    }
}

/* -------------------------------------------------- */
/*  firstVisit
/* -------------------------------------------------- */
#firstVisit {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#firstVisit h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#firstVisit h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#firstVisit h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#firstVisit h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
}
#firstVisit .item ul li {
    list-style: none;
    padding: 0.5em 0.75em;
    border-radius: 3px;
    margin: 1.5em 0.75em 0 0;
    font-size: 16px;
}
#firstVisit .item ul li span {
    margin-right: 0.25em;
}
#firstVisit .privacypolicy h3 {
    margin: 3em 0 1em;
}
#firstVisit ul.mynumber {
    padding-left: 1.25em;
}
#firstVisit ul.mynumber li,
#firstVisit ul.mynumber + p {
    margin-top: 1em;
}
/* sp common */
@media screen and (max-width: 820px){
    #firstVisit {
        padding: 2em 0 2.5em;
    }
    #firstVisit h2 {
        margin-bottom: 2em;
    }
    #firstVisit h2 img {
        width: 78.5px;
    }
    #firstVisit h3 {
        margin-top: 2em !important;
    }
    #firstVisit .item ul {
        flex-direction: column;
        align-items: flex-start;
    }
    #firstVisit .item ul li {
        margin: 1.25em 0 0 0;
    }
}

/* -------------------------------------------------- */
/*  ct
/* -------------------------------------------------- */
#ct {
    padding: 1.95em 0 5em;
}
#ct h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#ct h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#ct h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#ct .flexAround {
    align-items: flex-start;
}
#ct .poster {
    border: 1px solid #ccc;
    padding: 1.5em;
    width: calc(55% - 3em);
    margin-right: 2.5em;
}
#ct .poster img {
    max-width: 100%;
}
#ct h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
}
#ct .about p {
    margin-top: 0.5em;
}
#ct .about h3 + p {
    margin-top: 1.5em;
}
#ct .about p span.bgGreen {
    display: inline-block;
    padding: 0.75em 1em;
    border-radius: 5px;
    margin: 0.55em 0 1em;
}
#ct .about p.image img {
    width: 100%;
    margin-top: 2.5em;
}
/* sp common */
@media screen and (max-width: 820px){
    #ct {
        padding: 2em 0 2.5em;
    }
    #ct h2 {
        margin-bottom: 2em;
    }
    #ct h2 img {
        width: 78.5px;
    }
    #ct .flexAround {
        flex-wrap: wrap;
    }
    #ct .poster {
        border: 0;
        padding: 0;
        width: 100%;
        margin-right: 0;
    }
    #ct h3 {
        margin-top: 2em !important;
    }
    #ct .about p.image img {
        margin-top: 1em;
    }
}

/* -------------------------------------------------- */
/*  treatment
/* -------------------------------------------------- */
#treatment {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#treatment h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#treatment h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#treatment h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#treatment ul {
    flex-wrap: wrap;
}
#treatment ul li {
    width: 45%;
    list-style: none;
}
#treatment ul li a {
    display: block;
    border: 1px solid #38ce9c;
    text-decoration: none;
    padding: 0.75em 0.5em;
    margin-top: 2em;
}
#treatment ul li:nth-child(1) a, #treatment ul li:nth-child(2) a {
    margin-top: 0;
}
/* sp common */
@media screen and (max-width: 820px){
    #treatment {
        padding: 2em 0 2.5em;
    }
    #treatment h2 {
        margin-bottom: 2em;
    }
    #treatment h2 img {
        width: 78.5px;
    }
    #treatment ul li {
        width: 100%;
    }
    #treatment ul li a {
        margin-top: 1em;
    }
    #treatment ul li:nth-child(1) a {
        margin-top: 0;
    }
    #treatment ul li:nth-child(2) a {
        margin-top: 1em;
    }
}

/* -------------------------------------------------- */
/*  respiratory
/* -------------------------------------------------- */
#respiratory {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#respiratory h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#respiratory h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#respiratory h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#respiratory h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin: 3em 0 1em;
}
#respiratory .gairai ul {
    width: calc(100% - 1em);
    margin-top: 1em;
    padding-left: 1em;
}
#respiratory .yotei table {
    width: 100%;
    margin-top: 1em;
}
#respiratory .yotei table th, #respiratory .yotei table td {
    padding: 0.75em 0.5em;
    border: 1px solid #ccc;
    vertical-align: middle;
}
#respiratory .yotei table th {
    background: #38ce9c;
    color: #fff;
}
#respiratory .yotei table td {
    white-space: nowrap;
}
#respiratory .text {
    width: calc(100% - 2em - 2px);
    padding: 1em;
    border: 1px solid #38ce9c;
    margin: 3em auto 0;
}
/* sp common */
@media screen and (max-width: 820px){
    #respiratory {
        padding: 2em 0 2.5em;
    }
    #respiratory h2 {
        margin-bottom: 2em;
    }
    #respiratory h2 img {
        width: 78.5px;
    }
    #respiratory h3 {
        margin-top: 2em !important;
    }
    #respiratory table {
        font-size: 14px;
    }
    #respiratory .text {
        margin: 1.75em auto 0;
    }
}

/* -------------------------------------------------- */
/*  kidney
/* -------------------------------------------------- */
#kidney {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#kidney h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#kidney h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#kidney h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#kidney h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin: 3em 0 1em;
}
#kidney .gairai ul {
    width: calc(100% - 1em);
    margin-top: 1em;
    padding-left: 1em;
}
#kidney .yotei table {
    width: 100%;
    margin-top: 1em;
}
#kidney .yotei table th, #kidney .yotei table td {
    padding: 0.75em 0.5em;
    border: 1px solid #ccc;
    vertical-align: middle;
}
#kidney .yotei table th {
    background: #38ce9c;
    color: #fff;
}
#kidney .yotei table td {
    white-space: nowrap;
}
#kidney .text {
    width: calc(100% - 2em - 2px);
    padding: 1em;
    border: 1px solid #38ce9c;
    margin: 3em auto 0;
}
/* sp common */
@media screen and (max-width: 820px){
    #kidney {
        padding: 2em 0 2.5em;
    }
    #kidney h2 {
        margin-bottom: 2em;
    }
    #kidney h2 img {
        width: 78.5px;
    }
    #kidney h3 {
        margin-top: 2em !important;
    }
    #kidney table {
        font-size: 14px;
    }
    #kidney .text {
        margin: 1.75em auto 0;
    }
}

/* -------------------------------------------------- */
/*  childDialysis
/* -------------------------------------------------- */
#childDialysis {
    padding: 1.95em 0 5em;
}
#childDialysis h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#childDialysis h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#childDialysis h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#childDialysis h2 + .flexAround {
    align-items: flex-start;
    margin-top: 4em;
}
#childDialysis .left {
    width: 49%;
}
#childDialysis .bx-wrapper {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}
#childDialysis .flexAround > div:nth-child(2) {
    margin-left: 2.5em;
    width: calc(52% - 2.5em);
}
#childDialysis .flexAround > div img {
    width: 100%;
}
#childDialysis h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin-bottom: 1em;
}
#childDialysis h3:not(:nth-child(1)) {
    margin-top: 1.5em;
}
#childDialysis .banner {
    margin-top: 4em;
}
#childDialysis .banner .image {
    border: 1px solid #ccc;
    padding: 1.5em;
    width: 300px !important;
}
/* sp common */
@media screen and (max-width: 820px){
    #childDialysis {
        padding: 2em 0 2.5em;
    }
    #childDialysis h2 {
        margin-bottom: 2em;
    }
    #childDialysis h2 img {
        width: 78.5px;
    }
    #childDialysis h2 + .flexAround {
        flex-direction: column;
        margin-top: 2em;
    }
    #childDialysis .flexAround > div:nth-child(1) {
        border: 0;
        padding: 0;
        width: 100%;
    }
    #childDialysis .flexAround > div:nth-child(2) {
        margin-left: 0;
        width: 100%;
    }
    #childDialysis .flexAround > div img {
        border-radius: 0;
    }
    #childDialysis .banner {
        margin: 2.5em 0 1em;
    }
    #childDialysis .banner .image {
        width: auto !important;
        max-width: 100%;
    }
}

/* -------------------------------------------------- */
/*  chiebukuro
/* -------------------------------------------------- */
#chiebukuro {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#chiebukuro h2 {
    margin-bottom: 3.64em;
    line-height: 35.5px;
}
#chiebukuro h2:after {
    content: "";
    display: block;
    width: 1.75em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#chiebukuro h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#chiebukuro ul {
    list-style: none;
}
#chiebukuro ul li {
    width: 100%;
}
#chiebukuro ul li:not(:last-child) {
    margin-bottom: 1.5em;
}
#chiebukuro ul li:before {
    content: "";
    display: inline-block;
    width: 75px;
    height: 75px;
    background-image: url(../image/chiebukuro_woman.png?0411);
    background-size: cover;
    vertical-align: middle;
}
#chiebukuro ul.footna li:before {
    background-image: url(../image/foot_info.png?0325);
}
#chiebukuro ul li a {
    display: inline-block;
    margin-left: 1em;
    background: #eee;
    padding: 0.35em 1em;
    width: calc(100% - 3em - 75px);
    color: #555;
    border-radius: 8px;
}
#chiebukuro h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
}
#chiebukuro .text p {
    margin: 1em 0 2em;
}
.fas_box_topleft{
    position: relative;
    padding: 15px 15px 15px 20px;
    background: #fff;
    border: 2px solid #f9b2e2;
    line-height: 1.4;
    border-radius: 5px;
    margin-bottom: 2em;
}
.fas_box_topleft p{
    font-size: 88%;
}
.fas_box_topleft:before{
    position: absolute;
    top: -1em;
    left: -2.5%;
    display: inline-block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: #f9b2e2;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free"; 
    font-weight: 900;
    content: '\f0eb';
    font-size: 20px;
}
/* sp common */
@media screen and (max-width: 820px){
    #chiebukuro {
        padding: 2em 0 2.5em;
    }
    #chiebukuro h2 {
        margin-bottom: 2.42em;
    }
    #chiebukuro h2 img {
        width: 78.5px;
    }
    #chiebukuro ul li {
        display: flex;
        align-items: center;
    }
    #chiebukuro ul li:before {
        display: block;
    }
    #chiebukuro ul li a {
        display: block;
        padding: 0.60em 1em;
    }
}

/* -------------------------------------------------- */
/*  infoDetail
/* -------------------------------------------------- */
#infoDetail {
    padding: 1.95em 0 5em;
    max-width: 800px;
}
#infoDetail h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#infoDetail h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#infoDetail h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#infoDetail h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin: 3em 0 1em;
}
#infoDetail .pager {
    margin-top: 2em;
}
/* sp common */
@media screen and (max-width: 820px){
    #infoDetail {
        padding: 2em 0 2.5em;
    }
    #infoDetail h2 {
        margin-bottom: 2em;
    }
    #infoDetail h2 img {
        width: 78.5px;
    }
    #infoDetail h3 {
        margin-top: 2em !important;
    }
}

/* -------------------------------------------------- */
/*  infoList
/* -------------------------------------------------- */
#infoList {
    padding: 1.95em 0 5em;
    max-width: 800px;
}
#infoList h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#infoList h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#infoList h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#infoList ul {
    line-height: 1.8;
}
#infoList ul li {
    border-bottom: 1px dashed #ccc;
    margin-bottom: 5px;
    padding-bottom: 5px;
}
#infoList ul span {
    margin-right: 1.5em;
    color: #777;
}
/* sp common */
@media screen and (max-width: 820px){
    #infoList {
        padding: 2em 0 2.5em;
    }
    #infoList h2 {
        margin-bottom: 2em;
    }
    #infoList h2 img {
        width: 78.5px;
    }
    #infoList ul li {
        margin-bottom: 0.5em;
    }
    #infoList ul span {
        display: block;
    }
}

/* -------------------------------------------------- */
/*  covid
/* -------------------------------------------------- */
#covid {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#covid h2 {
    margin-bottom: 3.64em;
    line-height: 35.5px;
}
#covid h2:after {
    content: "";
    display: block;
    width: 1.75em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#covid h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#covid h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
}
#covid p {
    margin-top: 1em;
}
/* sp common */
@media screen and (max-width: 820px){
    #covid {
        padding: 2em 0 2.5em;
    }
    #covid h2 {
        margin-bottom: 2.42em;
    }
    #covid h2 img {
        width: 78.5px;
    }
}

/* -------------------------------------------------- */
/*  terms
/* -------------------------------------------------- */
#terms {
    padding: 1.95em 0 5em;
    max-width: 1000px;
}
#terms h2 {
    margin-bottom: 3em;
    line-height: 1.5;
}
#terms h2:after {
    content: "";
    display: block;
    width: 1.5em;
    margin: 0.18em auto 0;
    border-bottom: 3px solid #019c74;
}
#terms h2 img {
    width: 85px;
    margin-bottom: 0.35em;
}
#terms .indent {
    text-indent: 1em;
}
#terms h3 {
    border-left: 7px solid #38ce9c;
    padding: 0.1em 0 0.1em 0.75em;
    margin: 3em 0 1em;
}
/* sp common */
@media screen and (max-width: 820px){
    #terms {
        padding: 2em 0 2.5em;
    }
    #terms h2 {
        margin-bottom: 2.42em;
    }
    #terms h2 img {
        width: 78.5px;
    }
}

/* -------------------------------------------------- */
/*  Swiperの追加設定
/* -------------------------------------------------- */
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.11);
  }
}

.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img{
  animation: zoomUp 10s linear 0s 1 normal both;  
}

.slide-img img{
  display: block;
}

/* -------------------------------------------------- */
/*  2023/04/03 肺がん早期発見チャレンジ モニター募集
/* -------------------------------------------------- */
.jecs br.sp { display: none; }
.jecs > div > h3:not(:nth-child(1)){
    margin: 3em 0 1em;
}
.jecs .detail {
    width: 100%;
    flex-wrap: wrap;
    align-items: center;
}
.jecs .detail > div {
    width: 48%;
}
.jecs .detail > div:nth-child(3),
.jecs .detail > div:nth-child(4) {
    margin-top: 1.5em;
}
.jecs .detail > div.site {
    border: 1px solid #ccc;
    padding: 1em 0;
}
.jecs .detail > div.site img {
    width: auto;
    height: calc(310.78px - 4em);
}
.jecs .detail > div.movie iframe {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: 100%;
}
.jecs .tel {
    background: #f9b2e2;
    color: #fff;
    padding: 1em;
    text-align: center;
    margin: 2em 0;
    border: 1px solid #ccc;
    border-radius: 8px;
}
.jecs .tel .title {
    margin: 0 !important;
}
.jecs .tel .number {
    background: #f5f5f5;
    padding: 0.5em 0.25em;
    font-size: 36px;
}
.jecs .tel .number a {
    color: #333;
    text-decoration: none;
}
.jecs .pdfImage {
    flex-wrap: wrap;
    align-items: center;
}
.jecs .pdfImage > div {
    width: 48%;
    margin-top: 2.5em;
}
.jecs .pdfImage > div > img {
    width: 100%;
}
@media screen and (max-width: 820px){
    @media screen and (max-width: 767px){
        .jecs br.sp { display: block; }
        .jecs h2.large { font-size: 18px !important; }
        .jecs .detail > div,
        .jecs .pdfImage > div {
            width: 100%;
        }
        .jecs .detail > div.site { padding: 1em 0.5em; }
        .jecs .detail > div:nth-child(2),
        .jecs .detail > div:nth-child(3),
        .jecs .detail > div:nth-child(4) {
            margin-top: 1em;
        }
    }
}