@charset "UTF-8";

*{
    margin: 0;
    padding: 0;
}

/* ------------.header---------------------- */
header {
    background-color: #FAEBAE;
}
.header-photo {
    height: 45vh;
    background-image:url(../images/main.jpg) ;
    background-repeat: no-repeat;
    background-size: contain;
}
.header-flex {
    display: flex;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 2vw;    
}
h1 {
    width: 30%;
}
h1 a {

}
h1 a img {
    display: block;
    width: 100%;
}
.header-adoress {
    width: 25%;
    margin-left: 15%;
    font-style: normal;
    font-size: 1.0vw;
}
.header-adoress p:nth-of-type(1) {
    font-size: 1.0vw;
    white-space: pre-wrap;
    color: #505050;
}
.header-adoress p:nth-of-type(2) {
    font-size: 2.0vw;
    white-space: pre-wrap;
    color: #505050;
}
/* --------Webボタン----------------------------- */
/* --------box1------------------------- */
.header-box1 { 
    width: 13%;
    height: 3vw;
    margin-left: 3%;
    padding: 1vw 0;
    background-color: #EA7683;
    border-radius: 10px;
    align-items: baseline;
}
.header-box1:hover {
    background-color: #fff;
    border: 3px solid #EA7683;
    transition: 1s;
}
.header-box1 a {
    display: block;
    line-height: 2;
    text-decoration: none;      
}
.box1 {
    display: flex;  
}
.box1 img {
    display: block;
    width: 20%;
    height: 3vw;
    margin-left: 0.5vw;
}
.box1 p {
    width: 78%;    
    margin-left: 2%;
    font-size: 1.7vw;
    font-weight: 600;
    color: #fff; 
    transition: 1s;
}
.box1 p:hover {
    color: #EA7683; 
    transition: 1s;
}
/* ------box2---------- */
.header-box2 {   
    width: 13%;
    height: 3vw;
    margin-left: 1%;
    padding: 1vw 0;
    background-color: #EFA724;
    border-radius: 10px;
    align-items: baseline;
}
.header-box2:hover {
    background-color: #fff;
    border: 3px solid #EFA724;
    transition: 1s;
}
.header-box2 a {
    display: block;
    line-height: 2;
    text-decoration: none;      
}
.box2 {
    display: flex;
}
.box2 img {
    display: block;
    width: 20%;
    height: 3vw;
    margin-left: 0.5vw;     
}
.box2 p {
    width: 78%;
    margin-left: 2%;
    font-size: 1.7vw;
    font-weight: 600;
    color: #fff;
    transition: 1s;
}
.box2 p:hover {
    color: #EFA724;
    transition: 1s;
}

/* --------.header nav----------------- */
nav {
    height: 15vh;
    background-color: #FAEBAE;
}
nav ul {  
    display: flex;
    width: 77%;
    margin-top: 24vh;
    margin-left: auto;
    margin-right: auto;  
}
nav ul li {   
    width: calc(100%/7);
    height: 9.5vh;
    margin-top: 1vw;
    padding-top: 1vw;
    border-left: 1px solid #909090;
    list-style: none;
    text-decoration: none;
    text-align: center;
    background-color: #FAEBAE;
}
nav ul li:hover {
    background-color: #fff;
}
nav ul li:nth-of-type(7) {
    border-right: 1px solid #909090;
}
.nav-child {
    width: 100%; 
}
.nav-child a {
    display: block;
    width: 100%;
    height: 6vw;
    text-decoration: none;
}
nav ul li p {
    font-size: 1.7vw;
}
.nav-child a img:nth-of-type(2) {
    display: block;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    opacity: 0; 
}
.nav-child a img:nth-of-type(2):hover {
    display: block;
    opacity: 1;
    transition: 0.1;
}


/* -------main--------------------- */
/* ------トップ戻るボタン----------------- */
.top-pagebutton {
    position: fixed;
    top: 35.5vw; 
    left: 90%;
    transition: 1s;  
    z-index: 100;   
}
.top-pagebutton:hover {
    transform: scale(1.2,1.2);
    transition: 1s;
}
.top-pagebutton img {
    width: 80%;  
}
/* -------セクション部分全体---------- */
section h2 {
    font-family: "Kiwi Maru", serif;;
    font-weight: 300;
    font-size: 4vw;
    text-align: center;
    padding-top: 4vw;
    margin-bottom: 2vw;
    color: blue;   
}
h3 {
    margin-top: 2vw;
    margin-bottom: 1vw;
    font-size: 3vw;
    font-family: "Kiwi Maru", serif;
    font-weight: 300;
    border-bottom: 2px dotted #909090;
    color: blue; 
}
/* -------section1 main news----------------------- */
section:nth-of-type(1) {
    height: 50vh;
    color: #505050;
}
.news {
    display: flex;
    justify-content: center;
    width: 77%;
    height: 2vw; 
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2vw;
    padding: 1vw 0;
    border-radius: 10px;
    background-color: #FAEBAE;
}
.news img {
    display: block;
    width: 2.5%;
    height: 1.5vh; 
    margin-left: 1.5%;    
}
.news p:nth-of-type(1) {
    width: 15%;
    font-size: 1.5vw;
    margin-right: 1%;
    margin-left: 1%;
    color: red;  
    border-right: 1px solid #909090;
}
.news p:nth-of-type(2) {
    width: 77%;
    margin-left: 2%;
    font-size: 1.7vw;
    color: red;  
}
.news p:nth-of-type(2) a{
    text-decoration: none;
}
/* -------news-box--------------------- */
.news-box {
    display: flex;
    width: 77%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 2vw;
}
/* ------.news-left--------------------- */
.news-left {
    width: 20%;
    margin-left: 2%;
    margin-right: 2%;
}
.news-left img {
    display: block;
    width: 100%;
}
.news-left p:nth-of-type(1) {
    font-size: 1.7vw;
    text-align: center;
    margin-top: 1vw;
}
.news-button {
    width: 90%;
    height: 4vw;
    margin-left: auto;
    margin-right: auto;
    padding-top: 0.5vw;
    padding-bottom: 0.5vw;
    background-color: #0E7FC4;
    border-radius: 20px;
    transition: 1s;
}
.news-button:hover {
    background-color: #fff;
    border: 3px solid #0E7FC4;
    transition: 1s;
}
.news-button a {
    display: block;
    text-decoration: none; 
     
}
.news-button a p:nth-of-type(1) {
    font-size: 1.3vw;
    text-align: center;
    color: #fff;
    transition: 1s;
    
}
.news-button a p:nth-of-type(1):hover {
    color: #0E7FC4;
    transition: 1s;
}
/* ------.news-right------------------ */
.news-right {
    width: 100%;
}
.news-right p {
    line-height: 1.5;
    color: #505050;
    border-top: 1px solid #909090;
}
.news-right p:nth-of-type(5) {
    border-bottom: 1px solid #909090;
}
time {
    width: 15%;
    text-align: center;
    margin-right: 2%;
    font-size: 2.0vw;
}
.news-right p a {
    display: block;
    width: 100%;
    text-decoration: none;
    font-size: 2.0vw;
}
/* ------section2-診療のご案内------------------------ */
section:nth-of-type(2) {
    background-color:#F8F7F7;
    height: 100vh;
    color: #505050;
}
/* -------------------------- */
.sinnsatu-flexbox {
    width: 77%;
    margin-left: auto;
    margin-right: auto;
}
.info {
    width: 100%;
    margin-top: 3vw;
}
tr td:nth-of-type(1) {
    width: 40%;
    text-align: center;
}
table thead tr th {
    width: 10%;
    padding-top: 1vw;
    padding-bottom: 1vw;
}
table {
    width: 100%; 
    border-collapse: collapse;
    border: 1px solid #909090;
    text-align: center;
}
thead {
    background-color:#E0DCDA ; 
}
thead  tr th {   
    border: 1px solid #909090;
}
tbody tr td {
     border: 1px solid #909090;
}
tbody tr td img {
    display: block;
    text-align: center;
}
/* ------------------ */
.mark-p {
    margin-top: 1vw;
    margin-left: 1vw;
    color: red;
}
.mark {
    display: flex;
    margin-left: 1vw; 
}
.mark img {
    display: block;
    width: 10%;
    height: 6vh;
}
.mark p {
     line-height: 3;
     font-size: 2.4vw; 
} 
/* --------アクセスマップ----------------- */
.access {
    width: 100%;
    margin-top: 3vw;
}
.map {
}
.map iframe {
    display: block;
    width: 100%;
}
.access-address {
    margin-top: 2vw;
    margin-left: 1vw;
}
.access-address p {
    font-style: normal;
    white-space: pre-wrap;
    margin-left: 1vw;
    font-size: 2.0vw;
}
.access-address p strong {
    margin-right: 2%;
}
.root {
    width: 30%;
    line-height: 3;
    padding-top: 0.5vw;
    padding-bottom: 0.5vw;
    border-radius: 10px;
    margin-left: auto;
    margin-top: 2vw;
    background-color: #0E7FC4;
    transition: 1s;
}
.root:hover {
    border: 3px solid #0E7FC4;
    background-color: #fff;
    transition: 1s;
}
.root p {
    text-align: center;
    font-size: 1.7vw;
}
.root p a {
    display: block;
    text-decoration: none;
    color: #fff;
    transition: 1s;
}
.root p a:hover {
    display: block;
    color: #0E7FC4;
    transition: 1s;
}
/* ---------------------------------------------------------------- */
.dotted-1 {
    width: 77%;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 5px dotted #F3C223;
}
.dotted-2 {
    width: 78%;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 5px dotted #3488DF;
}
.dotted-3 {
    width: 77%;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 5px dotted #FC5B72;
}
/* ------section3-当クリニックの診療科目診---------- */
section:nth-of-type(3) {
    height: 40vh;
    background-image: url(../images/bg_medical.jpg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    color: #505050;
    position: relative;
}
/* -------イラスト------------------------ */
.rabbit {
    position: absolute;
    width: 10%;
    top: 150px;
    left: 200px;
    animation: anime-rabbit 3s infinite;
}
.rabbit img {
    display: block;
    width: 100%;
}
@keyframes anime-rabbit{
    50%{
        transform: translateY(4vw);
    }
}
/* ----------------------- */
.bear {
    position: absolute;
    width: 10%;
    top: 200px;
    left: 400px;
    animation: anime-bear 3s infinite;
    animation-delay: 1s;
}
.bear img {
    display: block;
    width: 100%;
}
@keyframes anime-bear {
    50% {
         transform: translate(4vw,4vw);
    }
}
/* --------------------- */
.harinezumi {
    position: absolute;
    width: 10%;
    top: 50px;
    left: 50px;
    animation: anime-harinezumi 3s infinite;
    animation-delay: 0.5s;
}
.harinezumi img {
    display: block;
    width: 100%;
}
@keyframes anime-harinezumi{
    50% {
        transform: rotate(360deg);
    }
}
/* -------------当クリニックの診療科目診--------------------------- */
.kamoku {
    display: flex;
    width: 77%; 
    margin-left: auto; 
    margin-right: auto;
}
.kamoku a {
    display: block;
    text-decoration: none;
    margin-left: 5%;
    margin-right: 5%;
}
.circle {
    width: 8.5vw;
    height: 8.5vw;
    padding: 4.25vw 4.25vw;
    border-radius: 17vw;
}
.circle:nth-of-type(1) {
    background-color: #FEFAEE;
    border: 3px solid #F3C223;
}
/* ---------????色変わらない？？？------------- */
.circle:nth-of-type(2) {
    background-color: #EBF4FA;
    border: 3px solid #3393CC;  
}
.circle:nth-of-type(3) {
    background-color: #FFF3F4;
    border: 3px solid #FC8092;
}
.circle h3 {
    font-size: 1.5vw;
    text-align: center;
    font-family: "Kiwi Maru", serif;
    font-weight: 300;
}
.circle p {
    font-size: 1.2vw;
    white-space: pre-wrap;
}

/* -----footer--------------------- */
.footer {
    width: 100%;
    height: 15vh; 
    color: #505050;
}
.footer img {
    display: block;
    width: 100%;
    height: 15vh; 
}
/* -------------------- */
.footer-logo {
    width: 100%;
    height: 4vh;
    background-color: #FFAD1D;
}
.footer-logo img {
    display: block;
    height: 2.4vw;
    margin-left: auto;
    margin-right: auto;
}
/* ----------------------------------------- */
.footer-color {
    background-color: #FBEBAE;
}
.footer-flex {
    display: flex;
    width: 77%;
    height: 13vh;
    margin-left: auto;
    margin-right: auto;
}
.footer-address{
    width: 25%;
    margin-top: 1vw;
    margin-left: 5%;
    margin-right: 5%;
    border-right: 1px solid #909090;
}
.footer-address p {
    font-size: 0.8vw;
    font-style: normal;
    white-space: pre-wrap;
    color: #505050;
}
.footer-address p:nth-of-type(1) {
    white-space: pre-wrap;
}
.footer-address p:nth-of-type(2) {
    font-size: 1.9vw;
    white-space: pre-wrap;
    color: #505050;
}

.footer-ul {
    display: flex;
    width: 65%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1vw;
   
}
.footer-ul ul {
    margin-left: 3%;
    width: calc(100%/3);
   
}
.footer-ul ul li p a{
    display: block;
    text-decoration: none;
    font-size: 1.3vw;
}


/* ------------------------- */
.footer-copy p {
    width: 100%;
    text-align: center;
    padding-top: 1vw;
    padding-bottom: 1vw;
    color: #505050;
    background-color: #FBEBAE;
    font-size: 2.5vw;
}

