@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap');
html {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    font-size: 62.5%;
}
body {
    width: 100%;
    color: #222;
    font-family: 'Zen Old Mincho', serif;
    font-weight: 400;
    background:#fff;
    margin:0;
    padding:0;
}
h1,h2,h3,h4,p,li,dl,dt,dd,span,a {
    font-weight: bold;       
}
img {
    max-width:100%;
    height: auto;/*高さ自動*/
}
a {
    display:inline-block;
    color: #222;
    text-decoration-line: none;
    transition : 1s;
}
a:hover { 
    color: #222;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
h2 img {
    width: 100%;
}
figure img {
    max-width: 100%;    
    vertical-align: bottom;
    line-height: 1.0em;
}
p {
    font-size: 1.4rem;
    line-height: 2;
    margin-bottom: 1.5rem;
}
ul li {
    list-style: none;
}
.ff-os {
    font-family: 'Oswald', sans-serif;
}
/*ヘッダー
-------------------------------------*/
header {
    width: 100%;
    padding: 0;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
}
/*.header {
    flex-direction: column;
}
.header h1 {
    text-align: center;
    padding: 4rem 0 2rem;
}
.header h1 img {
    width: 220px;
}*/
/*メイン画像
-------------------------------------*/
.mainimg {
    line-height: 0;
    position: relative;
}
.mainimg img {
    width: 100vw;
}
/*メインコンテンツ
-------------------------------------*/
/*main {
    margin: 9rem 0 0 0;
}*/
.gray-back {
    background-color: #f3f0ef;
}
.content-inner {
    padding: 3rem 2rem;   
}
p.sns {
    margin-bottom: 0;
}
.sns a {
    position: absolute;
    bottom: 20px;
    right: 20px;
    color: #fff;
    font-size: 18px;
    display: flex;
    align-items: center;
}
.mainimg img.insta-icon {
    width: 30px;
    margin-right: 10px;
}
/*message
-------------------------------------*/
.message-wrap .text {
    line-height: 2.4;
    margin-bottom: 1.4rem;
}

/*doctors
-------------------------------------*/
#doctors .doctors-wrap:not(:last-child) {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e0dcdb;
}
#doctors .doctors-wrap:last-child {
    margin-bottom: 4rem;
}
.doctors-wrap .item {
    font-size: 1.3rem;
    background: #f3f0ef;
    display: inline-block;
    line-height: 1.5;
    padding: 0 10px;
    margin-bottom: 1rem;
}
.doctors-wrap .career-wrap {
    margin-bottom: 2.5rem;
}
.doctors-wrap .career-list li {
    position: relative;
    font-size: 1.2rem;
    padding-left: 15px;
    margin-bottom: .5rem;
}
.doctors-wrap .career-list li::before {
    position: absolute;
    content: '・';
    font-size: 1.2rem;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.doctors-wrap .message p {
    margin-bottom: .8rem;
}

.prof-content {
    width: 62%;
}
.prof-content .name {
    margin-bottom: .6rem;
}
.prof-ph {
    width: 35%;
}

/*access
-------------------------------------*/
.access-wrap {
    padding: 2rem 0 10rem;
}
.access-wrap p.name {
    margin-bottom: 0;
    font-size: 1.6rem;
} 
.access-inner {
    padding: 0 2rem;  
}
.access-wrap .map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 62%;
}
.access-wrap .map iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

/*フッター
-------------------------------------*/
.wrapper{
      display: flex;
      flex-direction: column;
}
footer{
    width: 100%;
    background-color: #fff;
    color: #fff;
    text-align: center;
    padding: 30px 0;
      margin-top: auto;
}
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   opacity: 1;
   z-index: 99;
}
#sp-fixed-menu ul{
   display: flex;
   justify-content: space-between;
   list-style: none;
   width:100%;
   background: #fff;
}
#sp-fixed-menu li{
    width: 50%;
    padding: 0;
    margin: .5rem .2rem .7rem;
    font-size: 1.6rem;
}

#sp-fixed-menu li a{
   background: #f3f0ef;
   letter-spacing: .15rem;
   text-align: center;
   display:block;
   width: 100%;
   padding: 1.2rem 0;
   transition : 1s;
   box-shadow: 1px 1px 4px 0px rgba(0, 0, 0, 0.5);
}
#sp-fixed-menu li a:hover {
    opacity: .3;
}
@media screen and (min-width: 768px) {
    .content-inner {
        max-width: 720px;
        margin: 0 auto;
        padding: 3rem;
    }
    .access-inner {
        padding: 0;
    }
    .access-wrap {
        padding: 2rem 0 10rem;
    }
}

@media screen and (min-width: 1025px) {
    .header h1 img {
        width: 260px;
    }
    .header h1 {
        padding: 6rem 0 3rem;
    }
    .content-inner,
    .mainimg{
        max-width: 980px;
        margin: 0 auto;
    }
    p {
        font-size: 1.6rem;
        line-height: 2;
        margin-bottom: 1.6rem;
    }
    .prof-ph {
        width: 28%;
    }
    .sns a {
        bottom: 30px;
        right: 40px;
    }
    .doctors-wrap .item {
        font-size: 1.4rem;
    }
    .doctors-wrap .career-list li {
        font-size: 1.4rem;
    }
}

/*grid
-------------------------------------*/
.grid {
    display: flex;
}
.space-between {
    justify-content: space-between;
}
/*common
-------------------------------------*/
.center {
    text-align: center;
}
.alignright {
    text-align: right;
}
.aligncenter {
    text-align: center;
}
.fs-small {
    font-size: 1.2rem;
}
.ls {letter-spacing: -.03rem;}
/* PC表示 */
@media screen and (min-width: 1025px) {
    .pc-none {
        display: none;
    }
    .fs-small {
        font-size: 1.4rem;
    }
}
/* タブレット以下 */
@media screen and (max-width: 1024px) {
    .sp-none {
        display: none;
    }
}
