@charset "UTF-8";
/* CSS Document */

@import url(reset.css);
img { vertical-align: bottom;
text-decoration: none; }


/* SP用 */
html {
    scroll-behavior: smooth;
}
body{

background-color:#fffef1;
font-family: 'Kiwi Maru', serif;
color: #4C4A37;
/*font-family: 'Montserrat', sans-serif;*/
}


/*------------------------------ヘッダ----------------------------*/


.wrapper{
width:100%;
margin: 0 auto;
}

header{
 position: relative;
	background-image: url("../images/top1.jpg");
 background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 80vh;
}

#pc_nav{
display: none;
}
/*ハンバーガーメニュー*/
.menu-btn {
    position: fixed;
    top: 10px;
    right: 10px;
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 90;
    background-color: #fffef1;
 border-radius: 20px;
 border: solid 1px #32a1ce;

 
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    position: absolute;
  background-color: #01B3ED;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
}

#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);
/* メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}

#menu-btn-check {
    display: none;
}

/*メニューの動き*/

.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;
/*leftの値を変更してメニューを画面外へ*/
    z-index: 80;
    background-color: rgba(255,254,241,.9);
    transition: all 0.5s;}
/*アニメーション設定*/


#menu-btn-check:checked ~ .menu-content {
    left: 0;}メニューを画面内へ

/*メニューコンテンツ*/
.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 80;
    background-color: #fffef1;
}
.menu-content img{
    width: 110px;
}
.menu-content ul {
    padding: 20px 10px 0;
}
.menu-content ul li {
    list-style: none;
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 20px;
    font-weight: 300;
    box-sizing: border-box;
    color: #66634A;
    text-decoration: none;
    /* padding: 9px 15px 10px 0; */
    /* position: relative; */
    text-align: center;
margin-top: 26px;
    margin-bottom: 30px;
}

.emergency_hmbg{
   width: 300px;
 height: 30px;
 background-color: #F56856;
 color: white;
 border-radius: 20px;
padding: 14px 20px 30px;
 background-image: url("../images/icon_attention.png");
 background-repeat: no-repeat;
 background-position: 12px;
  margin-top: 20px;
 margin-bottom: 20px;
 margin: auto
}


.head_view{
 background-image:url("../images/title.svg");
 background-position: center 500px;
  background-repeat: no-repeat;
  background-size: contain;
  height: 100vh;
}
.ttl_area img{
 display: block;
 width: 20%;
 margin: 0 auto 14px;
}



.ttl{
text-align: center;
font-size: 24px;
display: block;
margin: 0 auto;
 z-index: 50;
}

.ttl_address{
text-align: center;
font-size: 12px;
display: block;
margin: 0 auto;
font-weight: 100;
}


.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #ccc;
    /* border: solid 2px #ccc; */
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: translateY(20%) rotate(-45deg);
}
/*---------------------フッター--------------------------*/
.foot_view{
 text-align: center;
 margin-top: 100px;
}
.foot_view img{
 display: block;
margin: 0 auto;
 width: 30%;
}
.foot_ttl{
 margin-top: 20px;
 font-size: 20px;

}
.address{
 margin-top: 10px;
 font-weight: 100;
 font-size: 12px;
}
.comment{
 font-size: 18px;
 margin-top: 10px;
 font-weight: 100;
}

.web_yoyaku{
 text-align: center;
 margin: 40px 0 10px;
 font-size: 20px;
}

.booking_btn{
width: 296px;
 height: 20px;
 background-color: #99E1F8;
 margin: auto;
 margin-bottom: 20px;
 border-radius: 10px;
 padding: 20px;
 text-align: center;
 font-size: 20px;
 color: #fff;
}
.booking_btn a{
text-decoration: none;
    color: #fff;
}

/*Googleマップ*/
.ft_gmap{
width: 300px;
 height: 300px;
 margin: auto;
 margin-top: 70px;
}
.ft_link_box{
 width: 95%;
 margin: auto;
 margin-top: 100px;
}
/*フッターリンク*/
.ft_link_box .ft_link li{
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
/* width: 100%;*/
 margin: auto;
}

.ft_link_box .ft_link li a{
 width: 50%;
 margin-bottom: 50px;
 font-size: 18px;
 font-weight: 100;
 color: #4C4A37;
 text-decoration: none;
 text-align: center;
}
.copy{
 font-size: 12px;
 margin: 20px 0 40px;
 text-align: center;
}

.ft_emergency{
  width: 300px;
 height: 30px;
 background-color: #F56856;
 color: white;
 border-radius: 20px;
 padding: 20px;
 margin: auto;
 background-image: url("../images/icon_attention.png");
 background-repeat: no-repeat;
 background-position: 12px;
 margin-top: 20px;
 margin-bottom: 20px;
}

.ft_emergency a {
  text-decoration: none;
  color: #fff;
}

.ft_attention{
    font-size: 14px;
 margin-left: 80px;
}
.ft_tel{
    font-size: 24px;
 font-family: 'Montserrat', sans-serif;
  margin-left: 80px;
}
.ft_tel a{
 text-decoration: none;
 color: #fff;
}
/*----------------------------日程＆お知らせコンテンツ-*/
.important{
 position: relative;
}
.emergency{
  width: 300px;
 height: 30px;
 background-color: #F56856;
 color: white;
 border-radius: 20px;
padding: 14px 20px 30px;
 margin: auto;
 background-image: url("../images/icon_attention.png");
 background-repeat: no-repeat;
 background-position: 12px;
 margin-top: 20px;
 margin-bottom: 20px;
}
.emergency a{
  text-decoration: none;
  color: #fff;
}
.attention{
font-size: 14px;
margin-left: 80px;
margin-bottom: 9px;
}

.tel{
    font-size: 24px;
 font-family: 'Montserrat', sans-serif;
  margin-left: 80px;
}
.tel a{
 text-decoration: none;
 color: #fff;
}

.btn{
 display: flex;
 margin: 34px;
 justify-content: space-between;
}

.btn a{
  text-decoration: none;
}

.web_btn{
 width: 130px;
 height: 120px;
 color: #01B3ED;
 font-size: 22px;
 text-align: center;
 padding-top: 10px;
 font-weight: 700;
 background-color: white;
 background-image: url("../images/Timesheet.svg");
 background-position-x: center;
  background-position-y: 70%;
 background-size: 60%;
 background-repeat: no-repeat;
 border: solid 6px #01B3ED;
 border-radius: 20px;
} 



.emergency_btn{
 width: 130px;
 height: 120px;
 color: #E74D95;
 font-size: 22px;
 text-align: center;
 padding-top: 10px;
 font-weight: 700;
 background-color: white;
background-image: url("../images/Bandage.svg");
 background-position-x: center;
  background-position-y: 70%;
 background-size: 60%;
 background-repeat: no-repeat;
 border: solid 6px #E74D95;
 border-radius: 20px;
}



dd a{
 text-decoration: none;
 color: #333;
}

table{
 margin: 50px auto 20px;
}
table th h4 {
 font-size: 14px;
		font-weight: 100;

 color: #fff;
}
/*診療曜日*/
table th p {
 font-size: 13px;
 font-weight: 100;
 color: #ffffff;
 margin-bottom: 5px;
}

table th {
 text-align: center;
 vertical-align: middle;
 background: #67D1F4;
 height: 40px;
 padding: 0 9px;
}

/*診療時間*/
table td h5 {
    font-size: 12px;
    color: #643e2f;
    font-weight: 600;
 font-family: 'Montserrat', sans-serif;
}
/*診療●×*/
table td {
height: 45px;
    text-align: center;
    vertical-align: middle;
    background-color: #fff;
}

table td p {
    font-size: 14px;
    color: brown;
    	font-weight: 100;

}

.schedule{
 font-size: 14px;
		font-weight: 100;

 margin: 20px;
 text-align: center;
}

/*タイトル装飾*/
.text_round{
text-align: center;
font-size: 22px;
margin: 60px 0;
}
.out1,.out2,.out3{
color: #fff;
padding: 14px 22px;
  width: 90px;
  height: 60px;
  margin: 0 -15px;
}
.out1{
background-color: rgba(153,225,248,.9);
  border-radius: 50% 50% 50% 70%/50% 50% 70% 60%;
}
.out2{
 background-color: rgba(128,217,246,.7);
 border-radius: 80% 30% 50% 50%/50%;
}
.out3{
  background-color: rgba(77,202,242,.8);
  border-radius: 40% 40% 50% 40%/30% 50% 50% 50%;
}


/*お知らせ*/
.info{
background-image: url("../images/infomation.svg");
background-size: 15%;
background-repeat: no-repeat;
background-position: 20px;
 width: 300px;
 background-color: #fff;
 margin: auto;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
 padding-left: 80px;
 padding-top: 10px;
 padding-bottom: 40px;
  box-sizing: border-box;
}

dt{
 font-size: 12px;
 margin-bottom: 10px;
 border-top: dashed #eee 1px;
 margin-top: 10px;
 padding-top:10px;
}

dt:first-child {
 border-top: hidden;
}
dd{
 font-size: 14px;
 letter-spacing: 1.8px;
 margin-right: 10px;
}
.dd a{
 text-decoration: none;
 color: #4C4A37;
 letter-spacing: 0.5px;
 margin-top: 40px;
}


/*------------------------------------------トップページコンテンツ*/

/*メッセージ*/

.message{
background-image: url("../images/toppage_2.jpg");
background-size: contain;
background-repeat: no-repeat;
 background-color: #fff;
 width: 300px;
 height: 720px;
 text-align: center;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}


.main_ttl{
 text-align: center;
 font-size: 22px;
 margin-top: 20px;
 padding: 240px 10px 20px;
}

.main_cont{
 line-height: 1.8;
 letter-spacing: 0.8;
 padding: 0 10px;
}

/*初診の方はこちら*/
.first{
 background-color: #fff;
 width: 300px;
 height: 400px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
}
.first img{
border-radius: 20px;
}
.ttl_head{
display: flex;
}
.first_ttl{
 writing-mode: vertical-rl;
 text-align: right;
 padding: 30px 30px 30px 39px;
 font-size: 20px;
}
.first_cont{
 line-height: 1.8;
 padding: 30px 10px;
}
.first_btn{
 width: 240px;
 height: 20px;
 background-color: #99E1F8;
 margin: auto;
 border-radius: 50px;
 padding: 20px 5px;
 text-align: center;
 margin-top: 20px;
}
.first_btn a{
 text-decoration: none;
 color: #fff;
}


/*診療メニュー*/
.mdcl{
 background-color: #fff;
 width: 300px;
 height: 400px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
}
.mdcl img{
border-radius: 20px;
}
.mdcl_ttl{
 writing-mode: vertical-rl;
 text-align: right;
 padding: 30px 30px 30px 39px;
 font-size: 20px;
}
.mdcl_cont{
 line-height: 1.8;
 padding: 30px 10px;
}
.mdcl_btn{width: 240px;
    height: 20px;
    background-color: #99E1F8;
    margin: auto;
    border-radius: 50px;
    padding: 20px 5px;
    text-align: center;
 }
.mdcl_btn a{
 text-decoration: none;
    color: #fff;
}

/*------------------------------------------当院についてページ,about.html*/

/*当院についてのメッセージ*/
.hptr_message{
background-image: url("../images/hptr_message.jpg");
background-size: contain;
background-repeat: no-repeat;
	background-position-y:-1px;
 background-color: #fff;
 width: 300px;
 height: 890px;
 text-align: center;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}


.main_ttl{
 text-align: center;
 font-size: 22px;
 margin-top: 20px;
 padding: 240px 10px 20px;
}

.main_cont{
 line-height: 1.8;
 letter-spacing: 0.8;
 padding: 0 10px;
}


/*医師の紹介*/
.docter{
background-image: url("../images/docter.jpg");

background-size: contain;
background-repeat: no-repeat;

 background-color: #fff;
 width: 300px;
 height: 815px;
 text-align: center;
 margin: auto;
 border-radius: 20px;
}
/*院長・柏千夏*/

.dct{
font-size: 16px;
 padding: 240px 0 10px;
}
.dct_name{
font-size: 22px;
}
/*院長からのコメント*/
.dct_cmnt{
line-height: 1.8;
padding: 20px 10px;
}

.hty{
 margin: 20px 0 10px;
}
 .box ul{
  margin: 10px 14px 10px ;
 }

.box li{
font-size: 14px;
    line-height: 8px;
    padding: 14px 9px 13px;
    display: block;
    width: 100%;
    box-sizing: border-box;
    border-bottom: 1px solid #99E1F8;
   text-align: left;

}

.box li:last-child{
border-bottom: none;
}




/*院内の様子*/
.place_pic{
 margin-top: 30px;
 border-radius: 20px;
 display: block;
margin: 50px auto 0;
}

.entrance,.waiting,.ope,.bruth,.play{
text-align: center;
padding: 20px;
}


/*------------------------------------------診断メニュー,怪我の場合,menu.html*/

.menu_box{
 width: 260px;
margin: 2em auto;
padding:2em;/*内側の余白*/
background: none;/*元のボックス背景色なし*/
border:1px solid #99E1F8 ;/*線の太さ・種類・色*/
position: relative;/*配置（基準）*/
}
.menu_box:after{
background-color:#eee;/*ずらしたボックスの背景色*/
border:none;
content: '';
position: absolute;/*配置（ここを動かす）*/
top: 7px;/*上から7pxずらす*/
left: 7px;/*左から7pxずらす*/
width: 100%;
height: 100%;
z-index: -1;
}


.menu_ttl{
    position: relative;
    padding: 1.4rem 0;
    margin-bottom: 2.2rem;
    border-bottom: 5px solid;
    color: black;
    font-weight: bold;
    font-size: 20px;
 text-align: center
}

.menu_ttl:before,
.menu_ttl:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}

.menu_ttl:before {
    border: 16px solid;
    border-color: transparent;
    border-top-color: black;
    margin-left: -16px;
}

.menu_ttl:after {
    border: 10px solid;
    border-color: transparent;
    border-top-color: #eee;
    margin-left: -10px;
}

.menu_cont{
 line-height: 2;
}

/*怪我をした場合*/
.atn_area{
 background-color: #F56856;
 background-image: url("../images/attention.svg");
 background-size: 60px;
 background-repeat: no-repeat;
 background-position-x: 50%;
 background-position-y: 30px;
 height: 630px;
 margin-top: 90px;
 width: 90%;
display: block;
margin: auto;
 border-radius: 30px;
}
.atn_box{
 text-align: center;
 font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
 color: #fff;
}
.atn_ttl{
 text-align: center;
 font-size: 30px;
 font-family: 'Montserrat';
 color: #fff;
 padding: 100px 0 20px;
}

.atn_box_ttl{
 font-size: 18px;
 padding: 20px 0;
}
.mazu{
 font-size: 22px;
 padding: 20px 0;
}
.atn_cont{
 padding: 0 20px;
 text-align: left;
 line-height: 2;
}
.atn_info{
 font-size: 18px;
 padding: 30px 20px;
}
.atn_tel{
 font-size: 36px;
 font-family: 'Montserrat', sans-serif;
 text-decoration: none;
}

.atn_tel a{
  text-decoration: none;
  color: #fff;
}


.kega_tap {
 position: relative;
 display: block;
 margin: 1.5em 70px;
 padding: 20px 6px;
/*
 min-width: 120px;
 max-width: 100%;
*/
 color: #555;
 font-size: 16px;
 background: #FFF;
 border: solid 3px #555;
 box-sizing: border-box;
 text-align: center;
	line-height: 20px;
 border-radius: 20px;
}

.kega_tap:before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 12px solid #FFF;
  z-index: 2;
}

.kega_tap:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-top: 14px solid #555;
  z-index: 1;
}





.tbtn,
a.tbtn,
button.tbtn 
{
  font-size: 20px;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  cursor: pointer;
  user-select: none;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}

a.btn-border.tbtn{
margin: 40px;
}
a.btn-border {
  margin-bottom: 12px;
  padding: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-radius: 0;
  display: block;
}

a.btn-border span {
  position: relative;
  display: block;
  padding: 1.25rem 0.8rem;

/*  color: #000;*/
  border: 2px solid #000;
  border-radius: 0.5rem;
  background: #fff;
}

.type1 span {
color: red;}

.type2 span {
color: blue;}

.type3 span {
color: green;}

a.btn-border:before {
  position: absolute;
  bottom: -8px;
  left: 0;
  display: block;
   width: 98.2%;
  height: 14px;
  content: "";
  transition: all 0.3s;
  border: 2px solid #000;
  border-top: 1px solid #000;
  border-radius: 0 0 0.5rem 0.5rem;
  background-image: repeating-linear-gradient(
    -45deg,
    #000,
    #000 1px,
    transparent 2px,
    transparent 5px
  );
  background-size: 7px 7px;
  backface-visibility: hidden;
}


.type1_ans{
padding: 2em 0.5em;
    margin: 36px;
    color: #ff7d6e;
    background: #ffebe9;
    border-top: solid 10px #ff7d6e;
    text-align: center;
    line-height: 24px;
}
.type_ttl{
 font-size: 18px;
 padding: 20px 5px;
}
.type_cont{
font-size: 14px;
color: #4C4A37;
}
.type_cont span{
border-bottom: solid 1px black;
}

.type2_ans{
padding: 2em 0.5em;
    margin: 36px;
    color: #2164CE;
    background: #B6CFF2;
    border-top: solid 10px #2164CE;
    text-align: center;
    line-height: 24px;
}
.type3_ans{
padding: 2em 0.5em;
    margin: 36px;
    color: #28A750;
    background: #B7F4BD;
    border-top: solid 10px #28A750;
    text-align: center;
    line-height: 24px;
}

/*------------------------------------------初診の方へページ,first.html*/

.first_message{
background-image: url("../images/hptr_message.jpg");
background-size: contain;
background-repeat: no-repeat;
background-position-y:-2px;
 background-color: #fff;
 width: 300px;
 height: 570px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}

.first_mdcl_ttl{
 text-align: center;
 font-size: 22px;
 margin-top: 20px;
 padding: 240px 10px 20px;
}

.main_cont{
 line-height: 1.8;
 letter-spacing: 0.8;
 padding: 0 10px;
}

.first_flow1{
background-image: url("../images/place1.png");
background-size: 200px;
 background-repeat: no-repeat;
background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 380px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}

.first_flow2{
background-image: url("../images/flow_2.jpg");
background-size: 200px;
 background-repeat: no-repeat;
		background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 320px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}
.first_flow3{
background-image: url("../images/flow_3.jpg");
background-size: 200px;
 background-repeat: no-repeat;
		background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 310px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}
.first_flow4{
background-image: url("../images/flow_4.jpg");
background-size: 200px;
 background-repeat: no-repeat;
		background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 300px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}
.first_flow5{
background-image: url("../images/flow_5.jpg");
background-size: 200px;
 background-repeat: no-repeat;
		background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 330px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}

.first_flow6{
background-image: url("../images/flow_6.jpg");
background-size: 200px;
 background-repeat: no-repeat;
		background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 480px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}

.first_flow7{
background-image: url("../images/flow_7.jpg");
background-size: 200px;
 background-repeat: no-repeat;
	background-position-y: -1px;
 background-color: #fff;
 width: 300px;
 height: 300px;
 margin: auto;
 margin-top: 30px;
 border-radius: 20px;
}

.first_ttl_head{
	position: relative;
}

.step{
	writing-mode: vertical-rl;
position: absolute;
 top: 30px;
 right: 40px;
}
.stp_ttl{
padding: 150px 0 20px;
font-size: 18px;
	 text-align: center;
}

.stp_cont{
 line-height: 1.8;
 letter-spacing: 0.8;
 padding: 0 10px;
}


/*-----------------------------お知らせページ,info.html---------------------*/

 .main_info{
 width: 325px;
 background-color: #fff;
 margin: auto;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
  padding: 10px 20px 40px;
  border-radius: 20px;
  box-sizing: border-box;
}

/*-----------------------------個別記事ページ,news.html---------------------*/

 article{
 width: 325px;
 background-color: #fff;
 margin: auto;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
  padding: 10px 20px 40px;
  border-radius: 20px;
  box-sizing: border-box;
}
.art_ttl{
 font-size: 18px;
 padding: 20px;
 line-height: 1.2em;
}

.sections{
 line-height: 2em;
 font-weight: 100;
}
/*--------------------よくある質問＆よくある質問ページ,question.html------------------------*/
/*ベース*/
.toggle {
	display: none;
}
.Label {		/*タイトル*/
	padding: 1em;
	display: block;
	color: #fff;
	background-color:#80D9F6;
	border-radius: 50px;
 margin: 0 20px;
}
.Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;
	transform: rotate(135deg);
}
.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
 font-size: 14px;
 font-weight: 100;
 padding: 20px;
 line-height: 26px;
}
.content {		/*本文*/
	height: 0;
	margin-bottom:10px;
	padding:0 20px;
	overflow: hidden;
}
.toggle:checked + .Label + .content {	/*開閉時*/
	height: auto;
	padding:20px ;
	transition: all .3s;
	background-color: #fff;
 margin: 0 24px 20px;
 border-radius: 0 0 20px 20px;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}

/*--------------------アクセス,access.html------------------------*/
.gmap{
 width: 300px;
 height: 300px;
 margin: auto;
 margin-top: 30px;
}

.access_info{
    text-align: center;
    width: 260px;
    padding: 0.6em 0.6em;
    margin: 2em 0;
    margin: auto;
    margin-top: 30px;
    color: #565656;
    background: #CCF0FB;
    box-shadow: 0px 0px 0px 10px #CCF0FB;
    border: dashed 2px #80D9F6;
    border-radius: 8px;
}
.gmap_address{
     font-size: 20px;
    text-align: center;
    padding: 20px 10px;
}
.station{
     line-height: 1.8;
    padding-bottom: 20px;
 font-size: 14px;
}
.gmap_cont{
 text-align: left;
 line-height: 1.2;
 font-size: 12px;
 font-weight: 100;
}
/* PC用 */
@media only screen and (min-width:960px) {


body{
/*margin: 0 auto;*/
background-color:#fffef1;
font-family: 'Kiwi Maru', serif;
color: #4C4A37;
/*font-family: 'Montserrat', sans-serif;*/
}
/*------------------------------ヘッダ----------------------------*/
.wrapper{
width:100%;
margin: 0 auto;
}
header{
	background-image: url("../images/top1.jpg");
	 background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 60vh;
}

 .ttl_area{
 display: flex;
 margin: 30px auto;
 justify-content: center;
 }
.ttl_area img {
 width: 90px;
 margin: 0 10px;
}
 .ttl_moji{
  display: inline-block;
 }
 
h1.ttl {
    font-size: 34px;
}

.ttl_address {
 font-size: 20px;
 margin-top: 14px;
}

/* ------------------------ナビゲーションメニュー-----------------------*/
label.menu-btn{
display: none;
}

	.menu-content img{
display: block;
  margin: 0 auto;
  width: 170px;
  
	}
ul.pc{
padding: 40px 20px;
	height: 100vh;
}
.pc {
 list-style: none;
 position: fixed;
 top: 0;
right: 0;
 display: block;
padding:50px;
background-color: #fffef1;
/*
 border-radius: 50px;
 border: solid 1px;
*/
  }

 .pc a {
    text-decoration: none;
    color: #333;
    transition: all 0.3s;
  }

  .pc a:hover {
    color: #01B3ED;
  }
	
	.emergency_hmbg{width: 200px;
    height: 100px;
    background-size: 50px;
    background-position: center 10px;
	}

	.attention{
		margin: auto;
		margin-top: 50px;
	}
	
	.tel{
		margin: auto;
		margin-top: 10px;
  font-size: 25px;
	}
 
/* ------------------------------お知らせ-----------------------------*/
 .info{
width: 65%;
 display: block;
 margin: auto;
 padding-left: 170px;
 padding-top: 10px;
 padding-bottom: 40px;
 box-sizing: border-box;
background-size: 12%;
 background-position: 8% center;
 }
 
 dt {
 margin-top: 30px;
}

.important{
display: none;
}
	.head_view{
		display: none;
	}
/*-------------------------------フッタ--------------------------*/
 footer{
  margin-right: 280px;
 }

.ft_contents{
margin-left: auto;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 100px;
	}
	
	.ft_btn_area{
		display: inline-block;
		margin: 0 25px;
	}
	.foot_view{
		margin:0;
	}
	.booking_btn {
    padding: 20px 30px;
}
	
 .schedule{
  margin: 0 auto;
 }
 
 .gmap{
  width: 60%;
 }	
 
 
 .schd_area{
margin-left: 30px;
 }
	.gmap_area{
margin: auto;}

	ul.ft_link{
		display: flex;
	}
	
/*
	.ft_sche_gmap{
 display: flex;
 flex: center;
 margin-left: 170px;
 align-items: center;
	}
*/

.ft_link_box .ft_link li a {
display: flex;
justify-content: center;
}
 
.ft_link_box .ft_link li a {
  margin: 20px;
 }
 
/* --------------------------トップページ-------------------------*/
 main{
  padding-right: 280px;
 }
.message{
background-image: url("../images/toppage_2.jpg");
background-size: 280px;
background-repeat: no-repeat;
background-position-y:220px; 
 background-color: #fff;
 width: 80%;
 height: 640px;
 text-align: center;
margin: 40px auto;
 border-radius: 20px;
}
.main_ttl{
padding: 100px 0 30px;
 font-size: 32px;
}

.main_cont{
padding: 50px 40px 30px 365px;
text-align: left;
font-weight: 100;
}

 .two_clm_pc{
  display: flex;
justify-content: center;
 }
.first{
width: 450px;
 height: 380px;
 margin: 80px 40px;
 padding: 10px;
}

.first_ttl{
padding: 30px 30px 30px 50px;
 font-size: 25px;
 margin: 0 auto;
 }
 .first_btn {
  margin: 0 auto
}
 .mdcl{
 width: 450px;
 height: 380px;
 margin: 80px 40px;
 padding: 10px;
 }
 .mdcl_ttl{
 padding: 30px 30px 4px 50px;
 font-size: 25px;
 margin: 0 auto;
 }
 .mdcl_btn{
margin: 0 auto
 }
 
/* ------------------------------当院について--------------------------*/
 
 .emergency {
    display: none;
}
 
/*
 .text_round{
  margin: 140px 0 50px;
 }
*/
.hptr_message {
 width: 800px;
 height: 640px;
 background-size: 280px;
 background-position-y: 220px;
 margin-bottom: 100px;
}
 .syokai_area{
    padding-top: 100px;
 }
 .docter{
 width: 800px;
 height: 520px;
 background-size: 280px;
 background-position-x: 60px;
 background-position-y: 42px;
 margin-bottom: 100px;

 }
 .profile{
  display: flex;
 }
 .name_history{
  width: 50%;
 }
 .dct_name{
  padding-bottom: 20px;
 }
 .hty{
  text-align: center;
 }
.dct_cmnt{
 text-align: left;
 font-weight: 100;
 width: 50%;
 padding: 100px 20px;
 box-sizing: border-box;
 }
 .box ul{
  margin: 10px 60px 10px 60px;
 }
 .box li{
  text-align: left;
 }
 
  .yousu_area{
    padding-top: 100px;
 }
 .place{
 display: grid;
 grid-template-columns: repeat(2,minmax(240px, 300px));
 gap:20px;
 justify-content: space-evenly;
  margin-bottom: 100px;
}
 
/*-------------------------------診察メニューページ---------------------*/
 
 .box_family{
		display: grid;
		grid-template-columns: repeat(2,minmax(240px, 300px));
		gap:20px;
justify-content: space-evenly;
	}

 .menu_box{
  margin: 40px auto;
 }
 
 
 
.atn_area{
  display: block;
  margin: auto;
  width: 80%;
  border-radius: 50px;
 background-position: center 50px;
 
 }
 
.atn_ttl{
 padding: 130px 0 30px;
 font-size: 40px;
 }
 
 .mazu{
  font-size: 30px;
 }
 .atn_tel a{
 color: #FFFFFF;
 text-decoration: none;
 }
 .atn_cont{
  padding: 20px 200px;
 }
 .kega_tap{
 width: 60%;
 margin: 100px auto 70px;
 }
 .select_btn{
  display: flex;
  justify-content: center;
 }
 .type_ttl{
font-size: 22px;
 }
 
 
 
 .type1 span{
   height:80px;
 }
a.btn-border.type1::before {
    position: absolute;
    bottom: -12px;
}
 .type2 span{
  height: 62px;
 }
 a.btn-border.type2::before {
    position: absolute;
    bottom: 8px;
}
 
 .type3 span{
  height: 42px;
 }
 a.btn-border.type3::before {
    position: absolute;
    bottom: 28px;
}
 .type_cont{
  padding: 30px;
 }
 
 .type1_ans,.type2_ans,.type3_ans{
 width: 500px;
 margin: 50px auto;
 }

/* ----------------------------初診の方へページ-----------------------*/
 
.first_message{
background-size: 280px;
 background-repeat: no-repeat;
background-position-y: 220px;
/* background-color: #fff;*/
 width: 80%;
 height: 520px;
 text-align: center;
 margin: 40px auto;
 border-radius: 20px;
 }

.first_mdcl_ttl{
 padding: 100px 0 30px;
 font-size: 32px;
 }
 
 .step{
 writing-mode: horizontal-tb;
 font-size: 26px;
 position: absolute;
  top: 70px;
 right: 100px;
}
 .stp_ttl{
 padding: 226px 0 20px;
 font-size: 25px;
 text-align: center;
}
 
 .stp_cont{
  padding: 24px 38px;
  text-align: left;
 }
 
 .first_flow1{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 437px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
 
 
 
 .first_flow2{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 437px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
 
 
 .first_flow3{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 437px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
 
 
 .first_flow4{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 437px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
 
 
 .first_flow5{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 437px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
 
 
 .first_flow6{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 510px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
 
 
 .first_flow7{
 background-size: 310px;
 background-repeat: no-repeat;
 width: 600px;
 height: 437px;
 text-align: center;
 margin: 40px auto 100px;
 border-radius: 20px;
 }
  
 .accordion{
margin-bottom: 130px;
 }
  
.Label {
  width: 70%;
  display: block;
  margin: auto;
  padding: 14px;
  font-size: 1rem;
}
 
.toggle:checked + .Label + .content{
  display: block;
  margin: auto;
  width: 66%;
  margin-bottom: 10px;
}
/*------------------------アクセスページ---------------------*/
 
 .access_info {
 width: 604px;
 padding: 2.6em;
 margin: 50px auto 80px;
}
 
 .gmap_address{
  font-size: 24px;
 }
 
 .station{
  font-size: 18px;
 }
 .gmap_cont{
  font-size: 14px;
 }
/* -----------------------お知らせページ----------------------*/
 
 .main_info{
 width: 70%;
 background-color: #fff;
 margin: auto;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
  padding: 10px 20px 40px;
  box-sizing: border-box;
}
 dt{
 font-size: 12px;
 margin-bottom: 10px;
 border-top: dashed #eee 1px;
 margin-top: 10px;
 padding-top:10px;
  font-weight: 100;
}

dt:first-child {
 border-top: hidden;
}
dd{
 font-size: 16px;
 letter-spacing: 1.8px;
 margin-right: 10px;
}
.dd a{
 text-decoration: none;
 color: #4C4A37;
 letter-spacing: 0.5px;
 margin-top: 40px;
}
 
/* ----------------------------------個別記事ページ---------------------*/
 article{
 width: 60%;
 margin: 60px auto 100px;
 }
 .art_ttl{
  text-align: center;
 }
}