@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;700&display=swap');

/* ----

color
#0D9B86
13,155,134


----- */

#CONTAINER {
    width: 100%;
    min-width: 960px;
}

@media(max-width:840px) {
    #CONTAINER {
        min-width: 1px;
    } 
}


body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
    color: #333;
    background-color: #EEE;
}
@media (max-width:840px) {
    body {
        font-size: 14px;
    }
}

a {
    color: #0D9B86;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

/* --------------- header ---------------- */

#gHeader {
    width: 100%;
    height: 80px;
    box-sizing: border-box;
    border-top: 5px solid #0D9B86;
    box-shadow: 0 0 0 rgba(0,0,0,0.3);
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    background-color: #FFF;
    transition: all 0.3s;
}
#gHeader.conpact {
    height: 50px;
}
@media (max-width:840px) {
    #gHeader,
    #gHeader.conpact {
        height: 64px;
        width: 100vw;
        box-shadow: 0 0 15px rgba(0,0,0,0.1);
    }
}

#gHeader .hdrWrap {
    margin: 0 auto;
    padding: 0 15px;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    max-width: 1280px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}


#gHeader .hdrWrap .logo {
    width: 252px;
    transition: all 0.3s;
}

#gHeader .hdrWrap .logo img {
    width: 100%;
    height: auto;
}
#gHeader.conpact .logo {
    width: 120px;
}
@media (max-width:840px) {
    #gHeader .hdrWrap .logo,
    #gHeader.conpact .logo {
        width: 160px;
    }
}



#gHeader .hdrWrap .hdrInfo {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    align-items: center;
}

#gHeader .hdrWrap .hdrInfo h1,
#gHeader .hdrWrap .hdrInfo p {
    width: 100%;
    text-align: right;
}

#gHeader .hdrWrap .hdrInfo h1 {
    font-size: 13px;
    margin-bottom: 5px;
}
#gHeader.conpact .hdrWrap .hdrInfo h1 {
    display: none;
}

@media (max-width:840px) {
    #gHeader .hdrWrap .hdrInfo h1,
    #gHeader.conpact .hdrWrap .hdrInfo h1 {
        display: none;
    }
}

#gHeader .hdrWrap .hdrInfo p.tel {
    width: 240px;
}

#gHeader .hdrWrap .hdrInfo p.tel a {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    width: 100%;
    height: 32px;
    background-color: rgba(13,155,134,1);
    text-shadow: 1px 1px 5px rgba(0,0,0,0.3);
    color: #FFF;
    font-weight: 700;
    font-size: 21px;
    transition: all 0.3s;
}

#gHeader .hdrWrap .hdrInfo p.tel a svg {
    display: none;
}

#gHeader .hdrWrap .hdrInfo p.tel a:hover {
    background-color: rgba(13,155,134,0.7);
    text-decoration: none;
}

@media (max-width:840px) {
    #gHeader .hdrWrap .hdrInfo p.tel {
        width: auto;
        display: inline-block;
        margin-right: 10px;
    }
    #gHeader .hdrWrap .hdrInfo p.tel a {
        background-color: transparent;
        fill: #0D9B86;
    }
    #gHeader .hdrWrap .hdrInfo p.tel a:hover {
        background-color: transparent;
    }
    #gHeader .hdrWrap .hdrInfo p.tel a span {
        display: none;
    }
    #gHeader .hdrWrap .hdrInfo p.tel a svg {
        display: block;
        width: 42px;
        height: 42px;
    }
}




/* -- spmenu -- */

#SPMENU {
    width: 42px;
    height: 42px;
    display: none;
    position: relative;
    z-index: 15000;
}
@media (max-width:840px) {
    #SPMENU {
        display: block;
        perspective: 80px;
        background-color: #FFF;
        border-radius: 3px;
        transition: all 0.5s;
    }
    #SPMENU.open {
        background-color: #0D9B86;
    }
    #SPMENU span {
        display: inline-block;
        width: calc(100% - 6px);
        height: 5px;
        background-color: #0D9B86;
        position: absolute;
        left: 3px;
        border-radius: 2px;
        transition: all 0.5s;
        transform-origin: center;
    }
    #SPMENU span:first-child {
        top: 6px;
        transform: rotate(0);
    }
    #SPMENU span:nth-child(2) {
        top: 18px;
        transform: rotate(0);
    }
    #SPMENU span:nth-child(3) {
        top: 30px;
    }
    #SPMENU.open span {
        background-color: #FFF;
    }
    #SPMENU.open span:first-child {
        transform: rotateZ(45deg) rotateY(180deg);
        top: 18px;
    }
    #SPMENU.open span:nth-child(2) {
        transform: rotateY(90deg);
    }
    #SPMENU.open span:nth-child(3) {
        transform: rotateZ(-45deg) rotateY(-180deg);
        top: 18px;
    }
}




/* ------------ footer ----------- */

#gFooter {
    background-color: #0D9B86;
    padding: 15px;
}

#gFooter .ftrWrap {
    width: 960px;
    margin: 0 auto;
}

#fNav {
    padding-bottom: 5px;
    margin-bottom: 35px;
    border-bottom: 1px solid rgba(255,255,255,0.35);
}

#fNav ul {
    display: flex;
    justify-content: center;
}

#fNav ul li {
    width: 12.5%;
    box-sizing: border-box;
    padding: 0 5px;
}

#fNav ul li a {
    color: #FFF;
    font-size: 14px;
    display: block;
    width: 100%;
    text-align: center;
}

@media (max-width:840px) {
    #fNav {
        display: none;
    }
    #gFooter .ftrWrap {
        width: 100%;
    }
}

#gFooter .fInfo {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    box-sizing: border-box;
    width: 100%;
    padding: 15px;
    background-color: rgba(255,255,255,0.8);
    border-radius: 5px;
}

#gFooter .fInfo > div {
    width: 50%;
    font-size: 14px;
}
#gFooter .fInfo > div h4 {
    font-weight: 700;
}

#gFooter .fInfo > div:nth-child(odd) {
    padding-right: 10px;
}

#gFooter .fInfo > div:nth-child(even) {
    padding-left: 10px;
}

#gFooter .fInfo table {
}
#gFooter .fInfo table th,
#gFooter .fInfo table td {
    font-size: 14px;
    padding: 5px;
}

#gFooter .fInfo > div .logo {
    width: 200px;
    margin-bottom: 25px;
}

#gFooter .fInfo > div .logo img {
    max-width: 100%;
    height: auto;
}

@media (max-width:640px) {
    #gFooter .fInfo {
        
    }
    #gFooter .fInfo > div:nth-child(odd),
    #gFooter .fInfo > div:nth-child(even) {
        padding: 0;
    }
    #gFooter .fInfo > div {
        width: 100%;
    }
    #gFooter .fInfo > div:nth-child(1) {
        order: 2;
    }
    #gFooter .fInfo > div:nth-child(2) {
        order: 1;
        margin-bottom: 20px;
    }
    #gFooter .fInfo table th,
    #gFooter .fInfo table td {
        font-size: 12px;
        line-height: 1.2;
        padding: 6px 0;
    }
    #gFooter .fInfo table td {
        padding-left: 5px;
    }

}


#gFooter .fCopy {
    color: #FFF;
    font-size: 12px;
    text-align: center;
    padding-top: 15px;
}


/* --- pagetop --- */

#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
    width: 40px;
    height: 40px;
    opacity: 0;
    transition: opacity 0.3s;
}
#pagetop.active {
    opacity: 1;
}
#pagetop img {
    width: 100%;
    height: auto;
}

/* ----- gNav --------- */

#gNav {
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
    height: 48px;
    background-color: #0D9B86;
    box-shadow: 0 0 5px rgba(0,0,0,0);
    transition: all 0.3s;
}

#gNav.conpact {
    position: fixed;
    z-index: 9999;
    top: 50px;
    left: 0;
    height: 30px;
    box-shadow: 0 0 5px rgba(0,0,0,0.3);
}

#gNav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 100%;
    height: 100%;
    max-width: 1280px;
    margin: 0 auto;
}

#gNav ul li {
    width: 12.5%;
    height: 100%;
    position: relative;
}
#gNav ul li::after {
    position: absolute;
    display: block;
    right: 0;
    top: 25%;
    content: "";
    height: 50%;
    width: 1px;
    border-right: 1px dashed rgba(255,255,255,0.5);
}
#gNav ul li:last-child::after {
    display: none;
}

#gNav ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #FFF;
    font-size: 20px;
    background-color: rgba(255,255,255,0);
    text-shadow: 1px 1px 5px rgba(0,0,0,0.3);
    transition: all 0.3s;
}
#gNav ul li.thin a {
    letter-spacing: -0.1em;
}
#gNav.conpact ul li a {
    font-size: 16px;
}

#gNav ul li a:hover {
    background-color: rgba(255,255,255,0.3);
    text-decoration: none;
}

#gNavDMY {
    display: none;
}
#gNavDMY.active {
    display: block;
    width: 100%;
    height: 48px;
}


@media (max-width:840px) {
    #gNavDMY,
    #gNavDMY.active {
        display: none;
    }
    #gNav,
    #gNav.conpact {
        position: fixed;
        top: 64px;
        left: auto;
        right: -100%;
        width: 50%;
        min-width: 300px;
        height: 100vh;
        z-index: 1000;
        box-shadow: 0 0 5px rgba(0,0,0,0.3);
        box-sizing: border-box;
        padding: 35px 15px;
        transition: all 0.5s;
    }
    #gNav.open {
        right: 0;
    }
    #gNav ul {
        display: block;
        
    }
    #gNav ul li {
        width: 100%;
        height: auto;
        border-bottom: 1px dashed rgba(255,255,255,0.6);
        margin-bottom: 10px;
    }
    #gNav ul li a,
    #gNav ul li.thin a,
    #gNav.conpact ul li a {
        display: block;
        font-size: 18px;
        letter-spacing: 0.05em;
        padding: 5px 10px;
        text-align: left;
    }
}


/* ------------------ MV --------------- */

main {
    padding-top: 80px;
}
@media (max-width:840px) {
    main {
        padding-top: 64px;
    }
}

#MV {
    margin: 0;
    padding: 0;
    position: relative;
}

#MV .scene1,
#MV .scene2,
#MV .scene3 {
    width: 100%;
    height: 100%;
    background-color: #FFF;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0;
}

#MV .scene1 p {
    opacity: 0;
    transition: all 1s;
    position: relative;
}

#MV .scene1.active p {
    opacity: 1;
}

#MV .scene2 {
    overflow: hidden;
    opacity: 0;
    transition: all 0.5s;
}
#MV .scene2.active {
    opacity: 1;
}

#MV .scene2 p {
    position: relative;
    opacity: 0;
    transition: all 3s;
}

#MV .scene2 p.active {
    opacity: 1;
}

#MV .scene2 div {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    opacity: 0;
    transition: all 3s;
}

#MV .scene2 div.active {
    opacity: 1;
}

#MV .scene2 div img {
    transition: all 5s;
    transform: scale(1);
}
#MV .scene2 div.active img {
    transform: scale(1.05);
}

#MV .scene3 {
    position: absolute;
    overflow: hidden;
    opacity: 0;
    transition: all 0.5s;
}
#MV .scene3.active {
    opacity: 1;
}

#MV .scene3 p {
    position: relative;
    opacity: 0;
    transition: all 3s;
}

#MV .scene3 p.active {
    opacity: 1;
}

#MV .scene3 div {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    opacity: 0;
    transition: all 3s;
}

#MV .scene3 div.active {
    opacity: 1;
}

#MV .scene3 div img {
    transition: all 5s;
    transform: scale(1);
}
#MV .scene3 div.active img {
    transform: scale(1.05);
}


#MV img {
    display: block;
    width: 100%;
    height: auto;
}

#MV .base {
    position: relative;
    background-color: #FFF;
    opacity: 0;
}

#MV .mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #FFF;
    display: none;
}


/* ----------------- contents ----------------- */

section {
    width: 100%;
    height: auto;
    max-width: 1280px;
    margin: 0 auto;
}


section img {
    display: block;
    max-width: 100%;
}


section .wrap {
    width: 100%;
    width: 960px;
    margin: 0 auto;
    padding: 0 15px;
}
@media (max-width:840px) {
    section .wrap {
        width: 100%;
    }
}


section h2.ttl {
    font-size: 21px;
    font-weight: 700;
    color: #0D9B86;
    border-bottom: 1px solid #0D9B86;
    padding: 0 0.1em 0.2em 0.1em;
}
@media (max-width:840px) {
    section h2.ttl {
        font-size: 18px;
    }
}

section h3.ttl {
    font-size: 18px;
    font-weight: 700;
    color: #0D9B86;
}
@media (max-width:840px) {
    section h3.ttl {
        font-size: 16px;
    }
}

section .sectionBody {
    padding: 1em 1em 50px 1em;
    transition: all 1s;
    opacity: 0;
    transform: translateY(50px);
}

section .sectionBody.active {
    opacity: 1;
    transform: translateY(0);
}

section .sectionBody:last-child {
    padding-bottom: 0;
}

section .sectionBody p {
    line-height: 1.6;
    text-align: justify;
}

section .withCapPhoto {
    position: relative;
}
section .withCapPhoto span {
    font-size: 12px;
    position: absolute;
    right: 10px;
    bottom: 5px;
}
section .withCapPhoto.whiteCap span {
    color: #FFF;
    text-shadow: 0 0 2px rgba(0,0,0,1),0 0 3px rgba(0,0,0,1),0 0 4px rgba(0,0,0,1);
}
section .withCapPhoto.blackCap span {
    color: #111;
    text-shadow: 0 0 2px rgba(255,255,255,1),0 0 3px rgba(255,255,255,1),0 0 4px rgba(255,255,255,1);
}

/* -- common content -- */

section.graySection {
    padding-top: 140px;
    background-image: url("/wp-content/uploads/prg_gray1.jpg"),url("/wp-content/uploads/prg_gray2.jpg");
    background-position: right top, center top;
    background-repeat: no-repeat, repeat-x;
}
section.graySection > div {
    background-color: #f6f6f6;
    padding-top: 30px;
}
@media (max-width:840px) {
    section.graySection {
        padding-top: 80px;
        background-size: auto 80px;
    }
}


section.whiteSection {
    padding-top: 140px;
    background-image: url("/wp-content/uploads/prg_white1.jpg"),url("/wp-content/uploads/prg_white2.jpg"),url("/wp-content/uploads/prg_white3.jpg");
    background-position: left top, right top, center top;
    background-repeat: no-repeat,no-repeat,repeat-x;
}
section.whiteSection > div {
    background-color: #FFF;
    padding-top: 30px;
}
@media (max-width:840px) {
    section.whiteSection {
        padding-top: 80px;
        background-size: auto 80px;
    }
}



section:last-child > div {
    padding-bottom: 100px;
}

/* -- topic -- */

section#TOPIC {
    background-color: #FFF;
    padding-top: 80px;
}
@media (max-width:640px) {
    section#TOPIC {
        padding-top: 35px;
    }
}

section#TOPIC .topicWrap {
    padding: 15px 1em;
}
section#TOPIC .topicWrap .topic {
    border-bottom: 1px dotted #0D9B86;
    padding: 10px;
    background-color: rgba(13,155,134,0);
    transition: background-color 0.3s;
}
section#TOPIC .topicWrap .topic:hover {
    background-color: rgba(13,155,134,0.1);
}
section#TOPIC .topicWrap .topic .topicLead {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    cursor: pointer;
}

section#TOPIC .topicWrap .topic .topicLead time,
section#TOPIC .topicWrap .topic .topicLead h4 {
    display: block;
}
section#TOPIC .topicWrap .topic .topicLead time {
    color: #0D9B86;
    width: 6em;
    font-size: 14px;
}
section#TOPIC .topicWrap .topic .topicLead h4 {
    font-size: 16px;
    width: calc(100% - 6em);
}
section#TOPIC .topicWrap .topicContent {
    padding: 1em;
    font-size: 14px;
    line-height: 1.6;
    text-align: justify;
    display: none;
}




/* -- CLINIC -- */

section#CLINIC .flexWrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}


section#CLINIC .flexWrap .clinicInfo {
    box-sizing: border-box;
    padding-right: 10px;
    width: 60%;
}

section#CLINIC .flexWrap .clinicInfo dl {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}

section#CLINIC .flexWrap .clinicInfo dl dt {
    width: 6em;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 700;
    color: #FFF;
    background-color: #0D9B86;
    text-align: center;
    box-sizing: border-box;
    padding: 3px 5px;
    margin-bottom: 20px;
}

section#CLINIC .flexWrap .clinicInfo dl dd {
    width: calc(100% - 6em);
    box-sizing: border-box;
    padding-left: 10px;
    margin-bottom: 20px;
}


section#CLINIC .flexWrap .clinicPht {
    box-sizing: border-box;
    padding-left: 10px;
    width: 40%;
}
section#CLINIC .flexWrap .clinicPht p {
    box-shadow: 0 0 10px rgba(0,0,0,0.15);
}

section#CLINIC .flexWrap .clinicPht p img {
    border-radius: 5px;
    border: 5px solid #FFF;
}


section#CLINIC .flexWrap.doctor {
    background-color: rgba(13,155,134,0.3);
    padding: 10px 20px 10px 10px;
    border-radius: 5px;
}

section#CLINIC .flexWrap .doctorPht {
    box-sizing: border-box;
    padding-right: 10px;
    width: 30%;
}

section#CLINIC .flexWrap .doctorPht p {
    box-shadow: 0 0 10px rgba(0,0,0,0.15);
}

section#CLINIC .flexWrap .doctorPht p img {
    border-radius: 5px;
    border: 5px solid #0D9B86;
}

section#CLINIC .flexWrap .doctorText {
    box-sizing: border-box;
    width: 70%;
    padding-left: 10px;
    display: flex;
    align-items: center;
}
section#CLINIC .flexWrap .doctorText p {
}

@media (max-width:640px) {
    section#CLINIC .flexWrap .clinicInfo,
    section#CLINIC .flexWrap .clinicPht {
        width: 100%;
        padding: 0;
    }
    section#CLINIC .flexWrap.doctor {
        padding: 10px;
    }
    section#CLINIC .flexWrap .doctorPht,
    section#CLINIC .flexWrap .doctorText {
        width: 100%;
        padding: 0;
    }
    section#CLINIC .flexWrap .doctorPht {
        margin-bottom: 15px;
    }
}


/* -- MEDICAL -- */

section#MEDICAL ul.flexWrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 45px;
}

section#MEDICAL ul.flexWrap > li {
    width: calc(50% - 20px);
    box-sizing: border-box;
    padding: 15px;
    background-color: rgba(13,155,134,0.1);
    margin-bottom: 40px;
    border-radius: 5px;
}
section#MEDICAL ul.flexWrap > li:nth-child(odd) {
    margin-right: 20px;
}
section#MEDICAL ul.flexWrap > li:nth-child(even) {
    margin-left: 20px;
}

section#MEDICAL ul.flexWrap > li h4 {
    font-size: 16px;
    font-weight: 700;
    color: #0D9B86;
    margin: 5px 0;
}

section#MEDICAL ul.flexWrap > li p:first-child {
    box-sizing: border-box;
    border: 5px solid #FFF;
    border-radius: 5px;
    box-shadow: 0 0 5px rgba(0,0,0,0.1);
}

section#MEDICAL ul.flexWrap > li .txt {
    line-height: 1.4;
}


section#MEDICAL table {
    border-collapse: collapse;
    width: 100%;
}
section#MEDICAL table thead {
    color: #FFF;
    background-color: rgba(13,155,134,0.8);
}
section#MEDICAL table th,
section#MEDICAL table td {
    box-sizing: border-box;
    border: 1px solid #0D9B86;
    font-size: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 5px;
    font-weight: 700;
}
section#MEDICAL table th:first-child {
    width: 12em;
}
section#MEDICAL table tbody th {
    color: #FFF;
    background-color: rgba(13,155,134,0.6);
}
section#MEDICAL table tbody tr:nth-child(odd) {
    background-color: #FFF;
}
section#MEDICAL table tbody tr:nth-child(even) {
    background-color: #FAFAFA;
}
section#MEDICAL table td.close {
    color: #B41316;
}
section#MEDICAL .closeDay {
    margin-top: 5px;
}
section#MEDICAL .closeDay span {
    display: inline-block;
    border-radius: 3px;
    margin-right: 5px;
    color: #FFF;
    background-color: #B41316;
    padding: 3px 5px;
}

@media (max-width:640px) {
    section#MEDICAL ul.flexWrap > li h4 {
        font-size: 14px;
    }
    section#MEDICAL ul.flexWrap {
        margin-top: 25px;
    }
    section#MEDICAL ul.flexWrap > li {
        width: 100%;
        padding: 10px;
        margin: 0 0 15px 0 !important;
    }
    section#MEDICAL table th,
    section#MEDICAL table td {
        font-size: 14px;
    }
}

/* ---- TRIM ----------------------------- */

section#TRIM table {
    border-collapse: collapse;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #0D9B86;
}
section#TRIM table thead {
    color: #FFF;
    background-color: rgba(13,155,134,0.8);
}
section#TRIM table th,
section#TRIM table td {
    box-sizing: border-box;
    font-size: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 5px;
}

section#TRIM table th {
    width: 30%;
    color: #FFF;
}

section#TRIM table th:first-child {
    width: 40%;
    text-align: left;
    padding-left: 15px;
}

section#TRIM table.wide th {
    width: 50%;
}


section#TRIM table tbody tr td:first-child {
    background-color: rgba(13,155,134,0.1);
    text-align: left;
    padding-left: 15px;
}
section#TRIM table tbody tr:nth-child(odd) {
    background-color: #FFF;
}
section#TRIM table tbody tr:nth-child(even) {
    background-color: #F3F3F3;
}

section#TRIM .tableCap {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}

@media (max-width:640px) {
    section#TRIM table th,
    section#TRIM table td {
        font-size: 13px;
    }
    section#TRIM table th:first-child,
    section#TRIM table tbody tr td:first-child {
        padding-left: 10px;
    }
}

/* -------- HOTEL ------- */

section#HOTEL .reserve {
    margin-top: 15px;
}

section#HOTEL .reserve a {
    display: inline-block;
    box-sizing: border-box;
    border-radius: 5px;
    height: 32px;
    background-color: rgba(13,155,134,1);
    text-shadow: 1px 1px 5px rgba(0,0,0,0.3);
    color: #FFF;
    font-weight: 700;
    line-height: 32px;
    padding: 0 10px;
    transition: all 0.3s;
}
section#HOTEL .reserve a:hover {
    background-color: rgba(13,155,134,0.7);
    text-decoration: none;
}

section#HOTEL table {
    border-collapse: collapse;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #0D9B86;
}
section#HOTEL table thead {
    color: #FFF;
    background-color: rgba(13,155,134,0.8);
}
section#HOTEL table th,
section#HOTEL table td {
    box-sizing: border-box;
    font-size: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 5px;
}

section#HOTEL table th {
    width: 30%;
    color: #FFF;
}

section#HOTEL table th:first-child {
    width: 40%;
    text-align: left;
    padding-left: 15px;
}


section#HOTEL table tbody tr td:first-child {
    background-color: rgba(13,155,134,0.1);
    text-align: left;
    padding-left: 15px;
}
section#HOTEL table tbody tr:nth-child(odd) {
    background-color: #FFF;
}
section#HOTEL table tbody tr:nth-child(even) {
    background-color: #F3F3F3;
}

section#HOTEL .tableCap {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}

@media (max-width:640px) {
    section#HOTEL table th,
    section#HOTEL table td {
        font-size: 13px;
    }
    section#HOTEL table th:first-child,
    section#HOTEL table tbody tr td:first-child {
        padding-left: 10px;
    }
}


/* ----- ACCESS  ----------------------- */

section#ACCESS .mapWrap {
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
    border-radius: 5px;
    border: 3px solid #0D9B86;
}

section#ACCESS dl {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    margin-top: 35px;
}

section#ACCESS dl dt {
    width: 10em;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 700;
    color: #FFF;
    background-color: #0D9B86;
    text-align: center;
    box-sizing: border-box;
    padding: 3px 5px;
    margin-bottom: 20px;
}

section#ACCESS dl dd {
    width: calc(50% - 10em);
    box-sizing: border-box;
    padding: 0 20px 0 15px;
    margin-bottom: 20px;
}

@media (max-width:640px) {
    section#ACCESS dl dt {
        margin-bottom: 3px;
    }
    section#ACCESS dl dd {
        width: 100%;
        padding: 0 0 0 10px;
    }
}


/* -------------- INQUIRY ---------------------- */

section#INQUIRY .reserve a {
    display: block;
    box-sizing: border-box;
    border-radius: 5px;
    height: 48px;
    background-color: rgba(13,155,134,1);
    text-shadow: 1px 1px 5px rgba(0,0,0,0.3);
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    line-height: 48px;
    padding: 0 10px;
    margin-top: 25px;
    transition: all 0.3s;
}
section#INQUIRY .reserve a:hover {
    background-color: rgba(13,155,134,0.7);
    text-decoration: none;
}
@media (max-width:640px) {
    section#INQUIRY .reserve a {
        line-height: 1.4;
        height: auto;
        padding: 10px;
    }
}


#CONTAINER {
    transition: all 0.5s;
    position: relative;
    left: 0
}
#CONTAINER.open {
    left: -100%;
}
