body{
font-family: "M PLUS 1", sans-serif;
overflow-x: hidden; 
-webkit-font-smoothing: antialiased;
line-height: 1.5; 
font-optical-sizing: auto;
font-weight: 400;
font-style: normal;
}
a{
text-decoration: none;
word-break: break-all;
}
i{
margin-right: 8px;
}
strong{
font-weight: bold;
}
/*＝＝＝＝＝　header　＝＝＝＝＝*/
header{
	display: flex;
justify-content: space-between;
margin: 20px auto;
	align-items: center;
	max-width: 1400px;
}
header p.top_add{
padding: 5px 10px;
color: #6e9dd3;
text-align: right;
}
.top_logo_img{
width: 15%;

}
.top_logo_img img{
width: 100%;
}
.top_cont{
position: relative;
width: 100%;
height: 500px;
margin: 0 auto;
background-image: url("../img/top/top_img01.jpg");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
.top_info{
position: absolute;
top: 20%;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
.top_flex{
display: flex;
max-width: 1600px;
width: 100%;
margin: 0 auto;
justify-content: center;
align-items: center;
}
/*＝＝＝＝＝　見出し　＝＝＝＝＝*/
.top_title{
font-weight: bold;
padding: 20px;
text-align: center;
width: 50%;
}
h1{
font-size:300%;
font-weight: 900;
background: #801780;
background-clip: text;
-webkit-background-clip: text;
text-align: center;
animation: fadeIn 1.5s cubic-bezier(0.33, 1, 0.68, 1) forwards;
font-style: normal;
color: #ffffff;
}
h1 span{
text-shadow:  0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 10px #6E9DD3,0 0 10px #6E9DD3, 0 0 10px #6E9DD3, 0 0 10px #6E9DD3, 0 0 10px #6E9DD3;
}
.glowAnime span{opacity: 0;}
/*アニメーションで透過を0から1に変化させtext-shadowをつける*/
.glowAnime.glow span{ animation:glow_anime_on 1s ease-out forwards; }
@keyframes glow_anime_on{
0% { opacity:0; text-shadow: 0 0 0 #fff,0 0 0 #fff;}
40% { opacity:1;text-shadow: 0 0 10px #fff,0 0 15px #fff; }
90% { opacity:1; text-shadow: 0 0 0 #fff,0 0 0 #fff;}
100% { opacity:1; text-shadow: 0 0 10 #fff,0 0 15 #fff;}
}
h2{
font-size: 200%;
font-weight: 900;
color: #6e9dd3;
position: relative;
text-align: center;
margin: 80px auto 50px;
}
h2 img{
position: absolute;
top: -150px;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
h2 p{
font-size: 90%;
}
h3{
color: #525252;
background:#ffffff;
font-size: 140%;
font-weight: bold;
line-height: 2;
margin-bottom: 10px;
margin-top: 5px;
border-left: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ左*/
border-right: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ右*/
padding:5px 20px;/*タイトルの余白*/
box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.1);
}
.h3_blue {
color: #6e9dd3;
background: repeating-linear-gradient(-45deg, #e8f3f9, #e8f3f9 5px, #fff 0, #fff 10px);
line-height: 2;
margin-bottom: 10px;
box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.1);	
}
.h3_check {
 background-image: linear-gradient(45deg, #e8f3f9 25%, transparent 25%, transparent 50%, #e8f3f9 50%, #e8f3f9 75%, transparent 75%, transparent), linear-gradient(-45deg, #e8f3f9 25%, transparent 25%, transparent 50%, #e8f3f9 50%, #e8f3f9 75%, transparent 75%, transparent);
 background-color: #ffffff;
 background-size: 20px 20px;
 color: #5ba9f7;
}
h4{
display: inline-block;
position: relative;
padding: 10px 20px 10px 10px;
border-left: 15px solid #2589d0;
background-color: #f5f5f5;
box-shadow: 0px 1px 2px 2px rgba(110,157,211,0.30);
margin-bottom: 10px;
color: #2589d0;
font-weight: bold;
font-size: 115%;
}

h5{
position: relative;
padding: .3em 0 .2em 1em;
border-bottom: 3px dashed #2589d0;
color: #2589d0;
font-weight: bold;
font-size: 115%;
}
h5::before {
position: absolute;
top: 0;
left: .3em;
transform: rotate(55deg);
height: 11px;
width: 12px;
background: #2589d0;
content: '';
}
h5::after{
position: absolute;
transform: rotate(15deg);
top: .6em;
left: 0;
height: 8px;
width: 8px;
background: #2589d0;
content: '';
}
h6 {
background-color: #fff;
padding: 0.5em;
position: relative;
font-size: 120%;
font-weight: bold;
background: #DDF1F0;
color: #85CDC7;
margin-bottom: 20px;
}
h6::before {
content: '';
width: 100%;
height: 30%;
background-image: radial-gradient(#ABDCD8 8%, transparent 16%), radial-gradient(#ABDCD8 8%, transparent 16%);
background-position: 0 0, 7px 7px;
background-size: 12px 12px;
position: absolute;
bottom: -10px;left: 0px;
}
.midashi01{
font-size: 110%;
font-weight: bold;
color: #c63c5d;
}
.list01{
position: relative;
padding: 5px 0 5px 25px;
text-align: left;
font-size: 105%;
font-weight: bold;
}
.list01::after { 
position: absolute;
top: 2px;
left: 5px;
color: #efdb17;
content: "★";
font-size: 110%;
}
.list02{
position: relative;
padding: 5px 0 5px 25px;
text-align: left;
font-size: 105%;
font-weight: bold;
}
.list02::after { 
position: absolute;
top: 10px;
left: 5px;
content: '';
width: 12px;
height: 12px;
background-color: #efdb17;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
/* ＝＝＝＝＝＝　news　＝＝＝＝＝＝ */
.futoji01{
font-weight: bold;
color: #0AC154;
}
.cal_sent{
font-size: 90%;
}
.news_cont{
width: 100%;
margin: 0px auto;
padding: 0 0 30px 0;
}
.news_box{
width: 80%;
margin: 0 auto;
padding: 20px 0;
background-color: #ffffff;

}
.news_box::-webkit-scrollbar {
width: 16px;
}
.news_box::-webkit-scrollbar-track {
background-color: #e4e4e4;
border-radius: 100px;
}
.news_box::-webkit-scrollbar-thumb {
background-image: linear-gradient( 135deg, #FCBDD6 10%, #E4615D 100%);
box-shadow: inset 2px 2px 5px 0 rgba(#fff, 0.5);
border-radius: 100px;
}
.schedule_img{
position: absolute;
width: 10%;
right: -60px;
bottom: -10px;   
}
.schedule_img img{
width: 100%;
}
.tape_title {
background: rgba(255,255,255,0.54);
border-left: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ左*/
border-right: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ右*/
transform: rotate(-3deg);/*テープの傾き*/
padding: 15px 40px;/*タイトルの余白*/
line-height: 1;/*タイトルの行の高さ*/
position:absolute;	/*配置(ここを動かす)*/
top: -15px; /*上から（-10px）移動*/
left: 10px; /*左から(20px)移動*/
font-size: 120%;
font-weight: bold;
color: #28A000;
}
/* ＝＝＝＝＝＝　診療予定表　＝＝＝＝＝＝ */
/* -- SVG CSS -- */
.clinic_guide_whole{
padding: 40px 0;
background: #fcf7de;
}
.clinic_guide{
width: 85%;
margin: 0 auto;
}
.sch_box{
position: relative;
}
.bg001{
background-image:url("../img/bg001.png");
background-size: contain;
background-repeat: no-repeat;
}
.bg002{
background-image:url("../img/bg002.png");
background-size: contain;
background-repeat: no-repeat;
}
.sep3 {
transform: translateY(10%) translateY(2px) scale(1,1);
transform-origin: top;
}
/* ＝＝＝＝＝＝　予約について　＝＝＝＝＝＝ */
.yoyaku_cont_whole{
margin: 0 auto;
width: 100%;
background: #e8f3f9; 
padding: 60px 0;
position: relative;
}
.yoyaku_cont_whole::before {
content: '';
width: 100%;
height:60px;
background-image: radial-gradient(#6e9dd3 8%, transparent 16%), radial-gradient(#6e9dd3 8%, transparent 16%);
background-position: 0 0, 7px 7px;
background-size: 12px 12px;
position: absolute;
top: -10px;left: 0px;
}
.yoyaku_cont_whole::after {
content: '';
right: 0;
z-index: 10;
display: block;
height: 40px;
background-image: radial-gradient(#6e9dd3 8%, transparent 16%), radial-gradient(#6e9dd3 8%, transparent 16%);
background-position: 0 0, 7px 7px;
background-size: 12px 12px;
position: absolute;
bottom: -30px;left: 0px;
}
.yoyaku_cont{
margin: 0 auto;
width: 90%;
max-width: 1500px;
}

/* ＝＝＝＝＝＝　アクセス　＝＝＝＝＝＝ */
.access_cont_whole{
margin: 0px auto;
width: 100%;
background: #ffffff;
padding: 60px 0;
}
.access_cont{
width: 90%;
margin: 0 auto;  
max-width: 1500px;
position: relative;
}
.emmy_cont_whole{
position: relative;
padding: 60px 0;
background-color: #ffffff;
margin: 0 auto;
}
.emmy_cont_whole::before {
content: '';
width: 100%;
height: 30%;
background-image: radial-gradient(#ABDCD8 8%, transparent 16%), radial-gradient(#ABDCD8 8%, transparent 16%);
background-position: 0 0, 7px 7px;
background-size: 12px 12px;
position: absolute;
top: -10px;left: 0px;
}
.emmy_cont{
width: 90%;
margin: 0 auto;  
max-width: 1500px;
background: #ffffff;
}
.clinic_info{
width: 90%;
margin: 0 auto;
padding: 15px;    
}
.clinic_info p{
width: 90%;
margin: 5px auto 30px;
font-size: 95%;
}
/* ＝＝＝＝＝＝　ノーマル　＝＝＝＝＝＝ */
.normal_cont{
margin: 0px auto;
max-width: 1500px;
width: 90%;
padding: 60px 0;
}

/*＝＝＝＝＝　QRコード ＝＝＝＝＝*/
.qr_cont{
margin:0px auto 60px;
background: #ffffff;
padding: 50px 0;
}
.qr{
max-width: 1400px;
width: 90%;
margin: 5px auto;
}
.qrbox{
display: flex;
flex-direction: row;
justify-content: center;
align-items: flex-start;
flex-wrap: wrap;
}	
.qrbox section{
padding: 15px 30px;
width: 24%;
margin: 40px 10px 10px;
}
.qrbox img{
width: 100%;
}
.qrbox p{
font-size: 85%;
padding-top: 5px;
text-align: left;
}
/*＝＝＝＝＝　common ＝＝＝＝＝*/
.common_title{
width: 65%;
text-align: center;
-webkit-animation:zoomIn 1.5s forwards;
animation:zoomIn 1.5s forwards;
}



/*＝＝＝＝＝ footer ＝＝＝＝＝*/
footer{
position: relative;
font-weight: bold;
text-align: center;
border-bottom: 30px solid #6A8DC3;
padding-top: 50px;
margin: 0 auto;
}

.footer_btn{
margin: 20px auto;
text-align: center;
}
.footer_btn a{
display: flex;
width: 90%;
padding: 10px 30px;
margin: 0 auto;
font-size: 130%;
font-weight: bold;
border-radius: 20px;
background: #E6CAFF;
color: #BF76FF;
text-align: center;
box-shadow: 0px 2px 2px 0px rgba(247,11,218,0.30), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.1);
justify-content: center;
}
.footer_btn a:hover{
opacity: 0.7;
}
.footer_info02{
display: flex;
justify-content: center;
width: 80%;
margin: 0 auto;
max-width: 1600px;
}
.footer_info02 a{
width: 45%;
padding: 10px 30px;
margin: 0 5px;
font-size: 110%;
font-weight: bold;
border-radius: 20px;
text-align: center;
}
.footer_info02 a:hover{
opacity: 0.7;
}
.footer_img{
width: 17%;
margin: 10px auto;
}
.footer_img img{
width: 100%;
}
.footerbox{
width: 90%;
margin: 10px auto;
font-weight: bold;
}
/*＝＝＝＝＝ footerマップ ＝＝＝＝＝*/
.sitemap{
width: 95%;
margin: 20px auto;
max-width: 1600px;
}
.sitemap nav ul {
display: flex;
flex-flow: row;
justify-content: center;  
padding: 6px 0;
align-items: stretch;
flex-wrap: wrap;
white-space: wrap;
}
.sitemap nav ul li{
border-radius: 30px;
font-size: 100%;
font-weight: 500;
border: 1px solid #6e9dd3;
margin: 5px;
background: #FFFFFF;
cursor: pointer;
position: relative;
transition: 0.5s;
box-shadow: 1px 1px 0 rgba(110,157,211,0.50), 0 0 2px 2px rgba(110,157,211,0.20), inset 2px 2px 0 rgba(248,231,116,0.20);
}
.sitemap nav ul li a{
color: #6e9dd3; 
padding: 12px 50px 12px 20px;
display: inline-block;
}
.sitemap nav ul li a::before {
border-right: 3px solid #6e9dd3;
border-top: 3px solid #6e9dd3;
bottom: 0;
content: "";
height: 10px;
margin: auto;
position: absolute;
right: 20px;
top: 0;
transform: rotate(45deg);
transition: right .5s; 
width: 10px;
}
.sitemap nav ul li a:hover{
color: #ffffff;
}
.sitemap nav ul li:hover{
opacity: 0.9;
background: #6e9dd3;
}
.sitemap nav ul li a:hover::before {
right: 10px;
border-right: 3px solid #ffffff;
border-top: 3px solid #ffffff;
}

.copy{
font-size: 80%;
}
@media screen and (max-width: 960px){
/*アクセス*/
.qrbox section{
padding: 15px;
width: 30%;
margin: 5px;
}
}
@media screen and (max-width: 789px){
header p.top_add{
padding: 5px;
text-align: left;
font-size: 80%;
}
.top_logo_img{
width: 45%;
left: 3%;
top: 10%;
}
.top_info{
top: 60%;
right: 0;
bottom: 0;
left: 0;
}
.top_title{
padding: 20px 0;
width: 95%;
}
h1{
font-size:150%;
}
h2{
font-size: 160%;
margin: 60px auto 30px;
}
h2 img{
top: -125px;
}
h2 p{
font-size: 90%;
}
h3 {
font-size: 115%;
line-height: 2;
margin-bottom: 10px;
margin-top: 25px;
}
h4{
font-size: 115%;
}
h6{
font-size: 110%;
padding: 8px 20px;
}
/*＝＝＝＝＝　header　＝＝＝＝＝*/
header{
}
header p{
padding: 5px;
color: #6e9dd3;
text-align: right;
}
.tape_title {
top: -30px; /*上から（-10px）移動*/
left:-5px; /*左から(20px)移動*/
transform: rotate(-1deg);/*テープの傾き*/
padding: 10px 40px 10px 10px;/*タイトルの余白*/
}
.schedule_img{
position: absolute;
width: 20%;
right: -10px;
bottom: -40px;   
}
.news_title{
width: 99%;
margin: 0 auto;
transform: translateY(10px)translateX(0px);
}
/* ＝＝＝＝＝＝　news　＝＝＝＝＝＝ */
.news_cont{
width: 100%;
padding: 20px 0;
}
.news_box{
width: 98%;
border-radius: 0px;
background: #ffffff;
padding-bottom: 20px;
border: none;
box-shadow: none;
}
.clinic_guide_whole{
padding: 20px 0;
}
/* ＝＝＝＝＝＝　診療予定表　＝＝＝＝＝＝ */

.clinic_guide{
width: 96%;
margin: 0 auto;
}
/*当院案内*/
.access_cont_whole{
margin: 0px auto;
width: 100%;
}
.access_cont{
width: 98%;
}
.clinic_info{
width: 98%;
margin: 0 auto;
padding: 5px;    
}
.clinic_info p{
width: 90%;
margin: 5px auto 10px;
font-size: 95%;
}
.yoyaku_cont_whole{
padding: 30px 0;
}
.yoyaku_cont{
width: 95%;
}
.normal_cont{
margin: 0px auto;
max-width: 1500px;
width: 100%;
padding: 30px 0;
}
.emmy_cont{
width: 100%;
margin: 0 auto;  
background: #ffffff;
}
/*＝＝＝＝＝　QRコード ＝＝＝＝＝*/
.qr{
width: 95%;
}
.qrbox{
display: flex;
flex-direction: column;
justify-content: center;
align-items:center;
flex-wrap: wrap;
}	
.qrbox section{
padding: 15px;
width: 80%;
margin: 10px;
}
.qrbox p{
font-size: 95%;
}
/*フッター*/
footer{
border-bottom: 60px solid #6A8DC3;
}
footer p{
font-size: 90%;
}
.footerbox{
width: 95%;
margin: 0 auto;
}
/* サイトマップ*/
.sitemap{
width: 98%;
margin: 5px auto;
}
.sitemap nav ul {
justify-content: center;  
align-items: stretch;
flex-wrap: wrap;
white-space: wrap;
}
.sitemap nav ul li{
border-radius: 30px;
font-size: 85%;
font-weight: 500;
width: 46%;
}
.sitemap nav ul li a{
padding: 10px 30px 10px 15px;
display: inherit;
}
.sitemap nav ul li a::before {
border-right: 3px solid #6e9dd3;
border-top: 3px solid #6e9dd3;
height: 5px;
right: 20px;
width: 5px;
}
.sitemap nav ul li:hover{
opacity: 0.9;

}
.sitemap nav ul li a:hover::before {
right: 10px;
border-right: 3px solid #6e9dd3;
border-top: 3px solid #6e9dd3;
}
.copy{
font-size: 60%;
}
.footer_info02{
flex-direction: column;
align-items:center;
justify-content: center;
flex-wrap: wrap;
width: 98%;
margin: 10px auto;
}
.footer_info02 a{
width: 90%;
padding: 10px 0px;
margin: 10px auto;
font-size: 90%;
border-radius: 10px;
}
.footer_img{
width: 60%;
margin: 10px auto;
}
}
@media only screen and (max-width:520px){
	
header{
justify-content: center;
flex-direction: column;
}
.top_logo_img{
	padding-bottom: 10px;
}
.top_info{
top: 35%;
right: 0;
bottom: 0;
left: 0;
}
/*qr*/
.qr_cont{
display: none;
} 
}
@media only screen and (max-width:400px){

}
