@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

html{
    }

body{
    width: 1000px;
    min-width: 1100px;
    font-family: 'Noto Sans JP', sans-serif,'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
    margin: 0 auto;
    background-color: #AFECFE;
    background-image: url("../img/bg_sky.jpg");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top;
    background-attachment: fixed;
    
    }

body *{
    box-sizing: border-box;
    }

a{
	display: block;
	color: #333;
	overflow:hidden!important;
	outline:none!important;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)!important;
	text-decoration:none;
	transition-duration: .3s;
	}
a:hover{
	outline:none!important;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)!important;
	transition-duration: .3s;
	}
a:focus{
	outline:none!important;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)!important
	}

address{
    font-size: 18px;
    font-style: normal;
	line-height: 1.4;
	}

p{
    color: #333;
    font-size: 18px;
    line-height: 1.8;
	word-break: break-word;
    margin: 0;
	}

h1,
h2{
    font-weight: normal;
    margin: 0;
    }
.title01{
    color: #00479D;
    font-size: 22px;
    font-weight: bold;
    border-bottom: #00479D 2px dotted;
    padding-bottom: 10px;
    margin-bottom: 30px;
    }
.title01::before{
    display: inline-block;
    content: "";
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-image: url("../img/icon_plane.png");
    width: 1.4em;
    height: 1.4em;
    margin: -0.2em 0.5em 0 0;
    }

.title02{
    color: #072D86;
    font-size: 20px;
    background-color: #D6E2FC;
    margin: 0 0 20px 0;
    padding: 4px 10px;
    }

.title03{
    display: flex;
    align-items: center;
    color: #4A80FD;
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 10px 0;
    }
.title03::before{
    content: "■";
    margin-right: 0.5em;
    }
.title03::after{
    content: "";
    flex-grow: 1;
    border-bottom: #4A80FD 1px dashed;
    margin-left: 20px;    
    }


ul{
	padding: 0;
    margin: 0;
	}
ul li,
ol li{
	list-style-position: inside;
	list-style-type: none;
	font-size: 18px;
	line-height: 1.4;
	color: #333;
    }

ul li a,
ol li a{
    display: inline;
    }

ul.disc li{
    list-style-type: disc;
    text-indent: -1em;
    padding-left: 1em;
    }


ul.mokuji{
    }

ul.mokuji > li:not(:last-child){
    margin-bottom: 20px;
    }

ul.mokuji > li > a{
    color: #00479D;
    font-size: 20px;
    font-weight: bold;
    }
ul.mokuji > li > a::before{
    content: "■";
    }
ul.mokuji ul{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 40px;
    }
ul.mokuji ul li:not(:last-child){
    margin-right: 20px;
    }
ul.mokuji ul li a{
    position: relative;
    padding-left: 15px;
    text-decoration: underline;
    }
ul.mokuji ul li a:hover{
    text-decoration: none;
    }
ul.mokuji ul li a::before{
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    display: block;
    content: "";
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-image: url("../img/arrow01.png");
    width: 0.6em;
    height: 0.6em;
    }


ul.memo li::before{
    content: "※";
    }
ul.memo li{
    text-indent: -1em;
    padding-left: 1em;
    }

ol.num{
    margin: 0 0 40px 25px;
    padding: 0;
    }
ol.num > li{
    list-style: decimal;
    margin-bottom: 10px;
    }
ol.num > li a{
    color: #333;
    text-decoration: underline;
    }
ol.num > li a:hover{
    text-decoration: none;
    }

dl.list{}
dl.list > dt{}
dl.list > dd:not(:last-child){
    margin-bottom: 50px;
    }
dl.list > dd > img{
    display: block;
    width: 100%;
    margin-bottom: 30px;
    }

dl.faq{}
dl.faq > dt,
dl.faq > dd{
    font-size: 18px;
    line-height: 1.8;
    color: #333;
    }
dl.faq > dt{
    font-weight: bold;
    padding: 10px 10px;
    background-color: #E6F2F1;
    }
dl.faq > dd{
    padding: 20px 0 20px 40px;
    margin: 0;
    text-indent: -2.5em;
    padding-left: 5em;
    }

dl.faq > *::before{
    display: inline-block;
    content: "";
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;
    width: 2em;
    height: 2em;
    margin: -0.2em 0.5em 0 0;

    }
dl.faq > dt::before{
    background-image: url("../img/icon_q.png");
    }
dl.faq > dd::before{
    background-image: url("../img/icon_a.png");
    }


main{
    background-color: #769FD3;
    padding: 60px 0;
    }
section:not(:last-child){
    margin-bottom: 60px;
    }
.wrap{
    width: 1000px;
    background-color: #FFF;
    border-width: 3px;
    border-color: #333;
    margin: 0 auto;
    padding: 50px 80px;
    border-radius: 5px;
    }


table{
    border-collapse: collapse;
    }
table th,
table td{
    font-size: 18px;
    }

table.tb01{
     border: #769FD3 3px solid;
    }
table.tb01 th,
table.tb01 td{
    border: #769FD3 1px solid;
    padding: 10px 30px;
    }
table.tb01 th{
    background-color: #DEE8F4;
    }

table.tb02{
    width: 100%;
    }
table.tb02 th,
table.tb02 td{
    padding: 5px 10px;
    }
table.tb02 th{
    color: #FFF;
    text-align: left;
    background-color: #7C7C7C;
    border: #D3D3D3 1px solid;
    }
table.tb02 td{
    border: #7C7C7C 1px solid;
    padding: 5px 10px;
    }
table.tb02 tr:nth-child(odd) td{
    background-color: #F2F3F4
    }

table.time{
    width: 100%;
    background-color: #FFF;
    table-layout: fixed;
    margin: 0;
     border: #19609E 3px solid;
	}
table.time th,
table.time td{
    color: #19609E;
    text-align: center;
	line-height: 1;
	vertical-align: middle;
    padding: 10px 0;
    border: #19609E 1px solid;
	}
table.time th{
    }
table.time th:first-child{
	width: 190px;
    font-size: 16px;
	}

table.time td:not(:first-child){
    color: #81B9EB;
    }



.alignRight{
    text-align: right;
    }
.close{
    color: #C54547;
    font-weight: bold;
    }
.hide{
    visibility: hidden;
    }
.fcRed{
    color: #CD3E41;
    }
.fcBlue{
    color: #153BEF;
    }

.mk{
    background: linear-gradient(transparent 60%, #FFDF78 40%);
    }

.textLink{
    text-decoration: underline;
    }
.textLink:hover{
    text-decoration: none;
    }

.notice{
    background-color: #F8F6E0;
    padding: 20px 40px;
    margin-top: 20px;
    }



/* ---------------------------------------------------
HEADER 
--------------------------------------------------- */
header .wrap{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 1000px;
    padding: 20px 0;
    border-radius: 0;
    background-color: transparent;
    }
header .name{
    width: 500px;
    position: relative;
    padding-left: 130px;
    }
header .name img{
    position: absolute;
    left: 0%;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
     -ms-transform: translateY(-50%);
    width: 100px;
    }
header .name p,
header .name h1{
    color: #00479D;
    font-size: 40px;
    font-weight: bold;
    line-height: 1.4;
    }
header .name a p:nth-child(1){
    font-size: 20px;
    font-weight: normal;
    }

header .right{
    width: 600px;
    text-align: right;
    }
header .right address{
    font-size: 16px;
    margin-bottom: 10px;
    }

header .right .tel{
    display: inline-block;
    color: #FFF;
    font-size: 30px;
    font-weight: bold;
    background-color: #00479D;
    padding: 5px 30px;
    border-radius: 40px;
    }

nav{
    padding: 5px 0; 
    }
nav ul{
    display: flex;
    }
nav > ul > li{
    width: calc(100%/6);
    text-align: center;
    border-left: #5591C5 2px dotted;
    padding: 10px 0;
    }
nav > ul > li:first-child{
    border-left: none;
    }
nav > ul > li > a{
    color: #19609E;
    font-size: 20px;
    font-weight: bold;
    }
nav > ul > li > :hover{
    color: #78B4E9;
    }

.drop-menu{
    position: relative;
    }
ul.submenu{
    display: flex;
    flex-direction: column;
    }
ul.submenu li{
    font-size: 16px;
    }

.drop-menu {
    position: relative;
    z-index: 2000;
    }
.drop-menu ul.submenu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: #ddd 1px solid;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s ease, visibility .2s ease;
    z-index: 1000;
    }
.drop-menu ul.submenu li:not(:last-child){
    border-bottom: #ddd 1px solid;
    }
.drop-menu ul.submenu li a {
    display: block;
    font-size: 18px;
    line-height: 1.4;
    white-space: nowrap;
    padding: 10px 33px;
    }

.drop-menu:hover ul.submenu {
    opacity: 1;
    visibility: visible;
    }


.menu-btn{
    display: none;
    }


/* ---------------------------------------------------
FOOTER 
--------------------------------------------------- */
footer {
    background-color: #00479D;
    padding: 0 0 50px
    }
footer .wrap{
    display: flex;
    justify-content: space-between;
    background-color: transparent;
    width: 900px;
    padding: 50px 0 0;
    margin-bottom: 40px;
    }

footer .wrap .left{
    width: 320px;
    }
footer .name,
footer address,
footer ul li,
footer ul li a{
    color: #FFF;
    }

.note{
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
    }

footer .name span{
    display: block;
    font-size: 16px;
    font-weight: normal;
    }
footer .name{
    font-size: 32px;
    line-height: 1.4;
    border-width: 1px 0;
    border-color: #FFF;
    border-style: solid;
    padding: 10px 0;
    margin: 10px 0 0;
    }
footer .wrap .timeArea{
    width: 550px;
    }
footer address{
    margin: 10px 0;
    }
footer ul {
    display: flex;
    justify-content: space-between;
    }
footer ul li a{
    font-weight: bold;
    }
footer .copy{
    color: #FFF;
    font-size: 16px;
    text-align: center;
    }

.pagetop{
    position: fixed;
    right: 10px;
    bottom: 10px;
    width: 80px;
    }
.pagetop img{
    width: 100%;
    }

.fixBtn{
    display: none;
    }


/* index.html --------------------------------------------------- */

/* slick */
.slider{	
	display: block;
	width: 1000px;
    margin: 0 auto 50px;
	}

.main-slider figure{
	margin:0!important;
	}
.main-slider .ytPlayer{
	pointer-events: none!important;
	}
.ytp-pause-overlay{
	display:none!important;
	}
.slick-dots{
    bottom:25px!important;
	}
.slick-dots li {
	width: 20px!important;
	height: 30px!important;
	}
.slick-dots li button::before{
	font-size:45px!important;
	color:#FFF!important;
	}
.slick-dotted.slick-sliderã€€{
	margin-bottom:0!important;
	}

dl#view,
.edit{
    margin: 0;
    }

dl#view dt:not(:first-child){
    margin-top: 20px;
    padding-top: 20px;
    border-top: #769FD3 1px solid;
    }
dl#view dt::before{
    content: "◆";
    }
dl#view dt{
    color: #769FD3;
    font-size: 20px;
    font-weight: bold;
    }
dl#view dd{
    display: none;
    margin: 10px 0 0 20px;
    }
dl#view dd a,
.edit a{
    display: inline;
    text-decoration: underline;
    }
dl#view dd a:hover,
.edit a:hover{
    text-decoration: none;
    }

.sns{
    display: flex;
    align-items: center;
    }
.sns img{
    width: 200px;
    margin-right: 40px;
    }
.sns p{
    font-size: 22px;
    }
.sns a{
    display: inline;
    text-decoration: underline;
    font-weight: bold;
    }
.sns a:hover{
    text-decoration: none;
    }

.imgArea {
    margin-top: 60px;
    }
.imgArea ul{
    display: flex;
    justify-content: center;
    }
.imgArea ul li{
    width: 260px;
    text-align: center;
    }
.imgArea ul li img{
    width: 230px;
    }
.imgArea ul li p{
    color: #00326E;
    font-size: 16px;
    font-weight: bold;
    }

dl.standard{}
dl.standard dt{
    display: inline-block;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
    border-bottom: #DBDBDB 3px solid;
    }
dl.standard dt span{
    color: #DBDBDB;
    font-size: 18px;
    margin-right: 5px;
    }
dl.standard dd{
    margin-bottom: 40px;
    }


/* greeting --------------------------------------------------- */
.doctor{
    text-align: right;
    margin-top: 30px;
    }
.doctor span{
    font-size: 16px;
    }

ul.note li{
    border-bottom: #DCDCDC 1px solid;
    padding: 4px 0;
    }
ul.prof li{
    display: flex;
    }
ul.prof li p:nth-child(1){
    width: 160px;
    }



/* clinic --------------------------------------------------- */
#guide .close{
    margin: 20px 0;
    }

.googleLink{
    text-align: right;
    }
.googleLink a{
    display: inline;
    }
.accessArea iframe{
    margin: 20px 0;
    }
.accessArea img{
    width: 100%;
    }


/* medical --------------------------------------------------- */
.soudan .title{
    color: #00479D;
    font-size: 22px;
    font-weight: bold;
    }
.soudan a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 450px;
    color: #FFF;
    font-weight: bold;
    background-color: #00479D;
    padding: 10px 0;
    margin: 15px 0 0 auto;
    }
.soudan a span:nth-child(1){
    font-size: 18px;
    margin-right: 15px;
    }
.soudan a span:nth-child(2){
    font-size: 26px;
    }


/* link --------------------------------------------------- */
ul.link{
    }
ul.link li{
    margin-bottom: 5px;
    }    
ul.link li a{
    color: #00479d;
    text-decoration: underline;
    }
ul.link li a:hover{
    text-decoration: none;
    }

ul.link li::before{
    display: inline-block;
    content: "";
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-image: url("../img/icon_link.png");
    width: 0.8em;
    height: 0.8em;
    margin: -0.2em 0.5em 0 0;
    }

