@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}

body {
    color: #222;
    font-family: 'Zen Maru Gothic', serif;
}

/*ヘッダー*/
header {
    display: flex;
    position: fixed;
    top: 0;
    width: 100%;
    height: 10.5vw;
    background-color: rgba(242, 251, 255, 0.8);
}

h1 img {
    display: block;
    width: 15vw;
    height: 9vw;
    margin-left: 2vw;
}

/*グローバルナビゲーション*/
nav {
    height: 3vw;
    margin-left: auto;
    margin-right: 2vw;
}

nav ul {
    display: flex;
}

nav ul li a {
    display: block;
    width: 10vw;
    font-size: 1.5vw;
    color:#2e8dc1;
    text-align: center;
    text-decoration: none;
}

nav ul li a img {
    width: 4vw;
    height: 3.5vw;
}

span {
    display: block;
    margin-bottom: 3vw;
    font-size: 1vw;
}

.nav-box2 {
    display: flex;
    list-style-type: none;
}

.nav-box2 li a {
    margin-top: 1vw;
    margin-bottom: 0.5vw;
}

.nav-box2 a:hover::before {
    display:block;
    height: 9px;
    content: "";
}

.nav-box3 {
    list-style: none;
}

.nav-box3 li {
    width: 10.2vw;
    height: 2.5vw;
    margin-top: 1.5vw;
    background-color: #fffa65;
    border: dashed 0.4vw #fff;
    border-radius: 2vw;
    transition: 0.5s;
}

.nav-box3 li:hover {
    color: #fffa65;
    background-color: #fff;
    transition: 0.5s;
}

/*top画像*/
.top-image {
    width: 100%;
    height: 20vw;
}

/*セクション*/
.img {
    display: flex;
    width: 29.2vw;
    margin-left: auto;
    margin-right: auto;
}

.img img {
    width: 5vw;
    height: 4vw;
    margin-right: 1vw;
}

main section h2 {
    margin-bottom: 3vw;
    font-size: 2.8vw;
    text-align: center;
    letter-spacing: 1vw;
}

.access-box {
    display: flex;
    width: 84vw;
    margin-left: 7vw;
    margin-right: 7vw;
    margin-bottom: 10vw;
    font-size: 1.5vw;
}

.accesschild-box {
    width: 28vw;
    font-size: 1.5vw;
    text-align: center;
    white-space: pre-wrap;
    line-height: 1.8vw;
    border-radius: 2vw;
    background-color: #e4f8ff;
}

iframe {
    display: block;
    width: 50vw;
    height: 20vw;
    padding: 2vw;
    margin-left: auto;
    border-radius: 2vw;
    background-color: #e4f8ff;
}

/*診察時間*/
table {
    width: 84vw;
    margin-left: 7vw;
    margin-right: 7vw;
    margin-bottom: 8vw;
    font-size: 1.5vw;
    background-color: #e4f8ff;
}

table,th,td {
    border-collapse: collapse;
    border: 5px solid #fff;
    text-align: center;
}

th {
    padding: 1vw;
}

.table-box {
    background-color: #2e8dc1;
}

/*フッター*/
footer {
    height: 30vw;
    padding: 2vw;
    background-image: url(../images/wave.png);
    background-size: 100% 100%;
    font-size: 1.4vw;
}

.footer-box {
    display: flex;
    margin-top: 7vw;
    margin-left: 10vw;
    margin-right: 6vw;
}

footer ul li {
    list-style-type: none;
}

footer ul li a {
    color: #222;
    transition: 1s;
    line-height: 2.5vw;
    text-decoration: none;
}

.footer-box ul li a:hover{
    color: #fff;
    transition: 1s;
} 

.banner img {
    width: 15vw;
    height: 5vw;
    margin: 0.1vw;
    margin-left: 10vw;
    transition: 0.5s;
}

.banner img:hover {
    transform: scale(1.2,1.2);
    transition: 0.5s;
}
address {
    line-height: 3vw;
}

.address-box { 
    margin-left: auto;
}

.address-box p a {
    display: block;
    width: 17vw;
    margin-top: 3vw;
    margin-left: 5vw;
    line-height: 4vw;
    text-decoration: none;
    border-radius: 5px;
    color: #fff;
    background-color: rgb(31, 104, 143);
    transition: 0.5s;
}

.address-box p a:hover {
    color: rgb(31, 104, 143);
    background-color: #fff;
    transition: 0.5s;
}

.fontawesome {
    width: 15vw;
    height: 3vw;
    margin-left: auto;
    margin-top: 1vw;
    color: #222;
    letter-spacing: 0.3vw;
    font-size: 1.5vw;
}
.fontawesome i:nth-child(1) {
    font-size: 2.7vw;
}

footer p {
    text-align: center;
    color: #fff;
}
