@charset "utf-8";
/* CSS Document */
#navArea{ display:none;}
.pcno{ display:none;}
img{ max-width:100%;}

/*▼ 初期化 ▼*/
body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, ul, li, blockquote, th, td, tr, img{ padding:0px; margin:0px; font-size:16px; line-height:1.5em; letter-spacing:1px; color:#604a3f; -webkit-text-size-adjust:100%; font-weight:400; font-family:'Noto Sans JP',"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;}
table{ border-collapse:collapse;}
ul,li{ list-style:none;}
h1,h2,h3,h4,h5,h6,.more{ padding:0px; margin:0px; font-size:100%; font-weight:normal; font-family:"Zen Maru Gothic", sans-serif;}
a{ overflow:hidden; outline:none; transition:.35s;}
img{ border:none; vertical-align:bottom;}
table td{ border:none; vertical-align:middle;}
.text99{ text-indent:-9999px;}
a:hover{ text-decoration:none;}
a:hover{opacity:0.5; filter:alpha(opacity=50);-webkit-transition:0.5s; -moz-transition:0.5s; -ms-transition:0.5s; transition:0.5s; }
.kadomaru{ border-radius:5px;}
/*▲ 初期化 ▲*/

body{ min-width:1300px;}
h1{ text-indent:-9999px; height:0px;}

#body-top{ background:url(../images/common/bk-top-kasou.png)center top no-repeat;}
#home #body-top{ background:url(../images/common/bk-top.png)center top no-repeat;}

/*----------  ヘッダー  ----------*/
/*----------  ヘッダー  ----------*/
/*----------  ヘッダー  ----------*/
#header #hmid{ max-width:1500px; height:170px; margin:auto; position:relative;}
#header .left{ position:absolute; left:20px; top:30px;}
#header .left a{ display:flex; align-items:center; text-decoration:none;}
#header .left img{ width:77px; margin-right:16px;}
#header .left p{ color:#604a3f; font-size:28px; font-weight:600; line-height:1.2em; font-family:"Zen Maru Gothic",sans-serif;}
#header .left p span{ display:block; font-size:15px; margin-bottom:0px;}

#header .right{ position:absolute; text-align:center; right:170px; top:30px; width:250px;}
#header .right p{ font-size:16px; text-align:left; display:inline-block; letter-spacing:normal; margin-bottom:5px;}
#header .right .tel span{ background:#604a3f; color:#fff; display:block; font-size:16px; text-align:center; padding:5px 0; margin-bottom:5px;}
#header .right .tel a{ background:url(../images/common/ico-tel.png)left 6px no-repeat; background-size:auto 17px; color:#604a3f; display:inline-block; font-size:28px; font-weight:600; text-decoration:none; padding-left:20px;  font-family:"Zen Maru Gothic", sans-serif;}

#header .web{ position:absolute; right:20px; top:22px;}
#header .web a{ background:#abde4b; width:128px; height:128px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-direction:column; text-decoration:none; border:2px solid #abde4b;}
#header .web img{ width:30px; margin-bottom:10px;}
#header .web span{ color:#fff; font-size:20px; font-weight:bold; font-family:"Zen Maru Gothic", sans-serif; transition:.5s;text-align: center;}
#header .web a:hover{ background:#fff; opacity:1; transform:scale(1.03);}
#header .web a:hover span{color:#abde4b;}


/*----------  ナビ navi  ----------*/
/*----------  ナビ navi  ----------*/
/*----------  ナビ navi  ----------*/
#navi{ position:absolute; left:450px; top:30px;}
#navi ul{ display:flex; align-items:flex-start; gap:42px;}
#navi li a{ font-weight:bold; color:#604a3f; display:block; text-align:center; text-decoration:none; padding-top:5px; font-family:"Zen Maru Gothic", sans-serif;}
#navi li a img{ height:40px; width:auto; display:block; margin:0 auto 8px; transition:.3s;}
#navi li a span{ font-size:16px; transition:.3s;}
#navi li a:hover{ opacity:1;}
#navi li a:hover img{ transform:translateY(-5px); filter:saturate(1.5);}
#navi li a:hover span{ color:#ef86a8;}


/*----------  メインビジュアル  ----------*/
/*----------  メインビジュアル  ----------*/
/*----------  メインビジュアル  ----------*/

#hmp{ max-width:1920px; height:820px; margin:auto; position:relative; overflow:hidden;}
#hmp .photo{ position:absolute; overflow:hidden;}
#hmp .photo img{ width:100%; height:100%; object-fit:cover;}
#hmp .photo.left{ width:25%; height:630px; left:0; top:170px; border-radius:0 60px 60px 0;}
#hmp .photo.right{ width:55%; height:700px; right:0; top:20px; border-radius:60px 0 0 60px;}
#hmp .photo.right img{ object-position:center 46%;}
#hmp .copy{ position:absolute; left:30%; top:100px; z-index:3; writing-mode:vertical-rl;}
#hmp .copy p{ color:#604a3f; font-size:38px; font-weight:600; line-height:2em; letter-spacing:5px; font-family:"Zen Maru Gothic", sans-serif;}
#hmp .copy p span{ color:#85ad39;}
#hmp .deco{ width:320px; position:absolute; left:38%; top:550px; z-index:4;}


#about #mp{ background:url(../images/about/mp.png)center top no-repeat;}
#guide #mp{ background:url(../images/about/mp.png)center top no-repeat;}
#medical #mp{ background:url(../images/about/mp.png)center top no-repeat;}
#reservation #mp{ background:url(../images/reservationt/mp.png)center top no-repeat;}
#mp .area-01{ width:1280px; height:450px; margin:auto;}
#mp .area-01 p{ font-size:42px; font-weight:bold; color:#604a3f; text-shadow:0 2px 0 #fff,2px 0 0 #fff,-2px 0 0 #fff,0 -2px 0 #fff; font-family:"Zen Maru Gothic", sans-serif; padding-top:180px;}
#mp .area-01 p span{ font-size:24px; color:#85ad39; display:block; line-height:1.8em;}





/*----------  フッター footer  ----------*/
/*----------  フッター footer  ----------*/
/*----------  フッター footer  ----------*/
#footer{ background:#f6f7f5; padding:80px 0 25px;}
#footer #fmid{ width:1280px; margin:auto;}
#footer #fnavi{ text-align:center; margin-bottom:55px;}
#footer #fnavi li{ display:inline-block; margin:0 25px; font-family:"Zen Maru Gothic", sans-serif;}
#footer #fnavi li a{ font-size:18px; font-weight:bold; color:#584d42; text-decoration:none;}
#footer #fnavi li a:hover{ color:#85ad39; opacity:1;}

#footer .area-01{ border-bottom:1px solid #979090; overflow:hidden; padding:0 50px 50px;}
#footer .left{ float:left;}
#footer .left a{ display:block; text-decoration:none;}
#footer .left img{ width:77px; margin-right:16px;}
#footer .left p{ font-size:28px; font-weight:600; color:#604a3f; line-height:1.2em; display:inline-block; font-family:"Zen Maru Gothic", sans-serif;}
#footer .left p span{ display:block; font-size:15px; margin-bottom:0px;}

#footer .right{ float:right; overflow:hidden;}
#footer .right .inner{ float:left; margin-right:40px;}
#footer .right p{ font-size:15px; letter-spacing:normal; display:inline-block; margin-bottom:10px;}
#footer .tel span{ background:#604a3f; color:#fff; display:block; font-size:16px; text-align:center; padding:5px 0; margin-bottom:5px;}
#footer .tel a{ background:url(../images/common/ico-tel.png)left 6px no-repeat; background-size:auto 17px; color:#604a3f; color:#604a3f; display:block; font-size:28px; font-weight:600; text-decoration:none; padding-left:20px; font-family:"Zen Maru Gothic", sans-serif;}

#footer .web{ float:right;}
#footer .web a{ background:#a7d943; color:#fff; width:128px; height:128px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-direction:column; text-decoration:none; font-size:20px; font-weight:bold; font-family:"Zen Maru Gothic", sans-serif; border:2px solid #a7d943;text-align:center;}
#footer .web a:hover{ background:#78b728;}
#footer .web img{ width:30px; margin-bottom:8px;}
#footer .web a:hover{ background:#fff; color:#abde4b; opacity:1;}

#footer #tamonten{ text-align:center; padding-top:35px;}
#footer #tamonten a{ color:#aaa; font-size:10px; text-decoration:none; cursor:default;}
#footer #tamonten a:hover{ opacity:1;}

.page-top{ background:#a7d943; width:55px; height:55px; border-radius:50%; position:fixed; right:35px; bottom:35px; z-index:30;}
.page-top a{ display:block; color:#fff; font-size:0; text-decoration:none; width:100%; height:100%;}
.page-top a:before{content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:12px;
  border-top:3px solid #fff;
  border-right:3px solid #fff;
  transform:translate(-50%,-30%) rotate(-45deg);}





/*----------  エリア・共通設定  ----------*/
/*----------  エリア・共通設定  ----------*/
/*----------  エリア・共通設定  ----------*/
.box{ width:1280px; margin:auto;}
.green-area{ background:#e9f2d8; border-radius:20px;}
.box-white{ background:#fff; border-radius:0 0 60px 60px; padding:105px 0 120px;}
.box-white.top{ background:url(../images/common/bk-top.png) center top repeat-x #fff;}
.box-gray{ background:#f6f7f5; padding:105px 0 120px;}
.area-1280{ width:1280px; margin:auto;}


.h2{ text-align:center; margin-bottom:70px;}
.h2 span{ color:#f58db1; display:block; font-size:30px; line-height:1em; margin-bottom:15px;}
.h2 h2{ font-size:30px; font-weight:600; letter-spacing:3px; position:relative; padding-bottom:25px;}
.h2 h2:after{ content:""; background:#abde4b; width:100px; height:3px; position:absolute; left:50%; bottom:0; transform:translateX(-50%);}

.h2-01{ font-size:36px; font-weight:bold; text-align:center; margin-bottom:50px; position:relative; padding:50px 0 20px; background:url(../images/common/h2-01.png)center top no-repeat;}
.h2-01 img{ display:block; margin:0 auto 15px;}
.h2-01:after{ content:""; background:#abde4b; width:100px; height:3px; position:absolute; left:50%; bottom:0; transform:translateX(-50%);}

.h2-02{ text-align:center; margin-bottom:75px;}
.h2-02 img{ width:39px; display:block; margin:0 auto 12px;}
.h2-02 h2{ font-size:28px; font-weight:600; letter-spacing:2px; position:relative; padding-bottom:18px;}
.h2-02 h2:after{ content:""; background:#a7d943; width:98px; height:4px; position:absolute; left:50%; bottom:0; transform:translateX(-50%);}


.sub{ min-width:1280px; background:#f6f7f5;}

.lead{ font-size:16px; line-height:2em;}
.sub h3{ font-size:22px; font-weight:600;}
.round{ border-radius:35px; overflow:hidden;}
.round img{ width:100%; height:100%; object-fit:cover;}

.more{ width:302px; margin:40px auto 0;}
.more a{ background:#abde4b; color:#fff; display:block; border-radius:32px; padding:20px 30px; text-align:center; text-decoration:none; font-size:18px; font-weight:600; position:relative; border:2px solid #abde4b;}
.more a:hover{ background:#fff; color:#89b042; opacity:1;}




/*----------  ホーム home  ----------*/
/*----------  ホーム home  ----------*/
/*----------  ホーム home  ----------*/
#home{background:#f6f7f5;}

#home #box-news{ padding:130px 0 50px; border-radius:0 0 100px 100px; position:relative; z-index:5;}
#home #box-news .area-01{ width:1280px; background:#f1fff1 url(../images/home/bk-news.png)center/cover no-repeat; margin:auto; border-radius:50px; box-shadow:0 0px 30px rgba(133,173,57,.3); border:4px solid #fff; padding:85px 130px 70px; box-sizing:border-box; position:relative;}
#home #box-news .title{ text-align:center; margin-bottom:65px;}
#home #box-news .title img{ width:183px; height:97px; object-fit:contain; margin-right:-30px; vertical-align:middle;}
#home #box-news .title h2{ display:inline-block; font-size:28px; font-weight:600; vertical-align:middle;}
#home #box-news dl { border-top: 1px solid #979090; }
#home #box-news dl:last-of-type { border-bottom: 1px solid #979090; }
#home #box-news dl.clickable { display: flex; padding: 30px 45px; cursor: pointer; transition: background .3s; }
#home #box-news dl.clickable:hover, #home #box-news dl.clickable:focus-visible {
 background: #effbda;
}
#home #box-news dt { width: 280px; flex-shrink: 0; font-size: 16px; position: relative; }
#home #box-news dt span { background: #fff; border: 1px solid #85ad39; color: #85ad39; border-radius: 15px; display: inline-block; font-size: 13px; width: 100px; text-align: center; position: absolute; left: 150px; top: 0; }
#home #box-news dd span { font-size: 17px; font-weight: 600; display: block; margin-bottom: 12px; font-family: "Zen Maru Gothic", sans-serif; transition: .5s; }
#home #box-news dd p { font-size: 15px; }
#home #box-news dl.clickable:hover dd span { color: #85ad39; }
/* モーダル */
#home #box-news .modal { display: none; position: fixed; z-index: 9999; inset: 0; overflow-y: auto; background: rgba(0, 0, 0, .6); }
#home #box-news .modal-content { background: #fff; margin: 8vh auto; padding: 40px 30px; width: 90%; max-width: 700px; border-radius: 8px; position: relative; box-sizing: border-box; }
#home #box-news .modal-content h3{ font-size:20px; font-weight:bold; color:#85AE72;}
#home #box-news .modal-date { margin: 0 0 10px; color: #666; font-size: 14px; }
#home #box-news .close { position: absolute; top: 10px; right: 15px; border: 0; background: none; font-size: 28px; line-height: 1; cursor: pointer; }
#home #box-news .honbun { margin-top: 10px; }

#home #box-news .deco{ position:absolute; width:230px; right:30px; bottom:20px;}
#home #box-news .deco-mother{ position:absolute; width:150px; right:60px; top:-40px;}

#home #box-gallery{ display:flex; width:100%; padding:80px 0 45px;}
#home #box-gallery .entry{ width:25%; height:360px; overflow:hidden;}
#home #box-gallery .entry img{ width:100%; height:100%; object-fit:cover;}

#home #box-01{ width:1340px; padding:80px 0 30px; position:relative; overflow:hidden;}
#home #box-01:before{ content:""; width:280px; height:280px; position:absolute; left:80px; top:60px; border-radius:50%; background:radial-gradient(#aee66b 3px,transparent 4px); background-size:20px 20px; opacity:.6;}
#home #box-01:after{ content:""; width:120px; height:120px; position:absolute; left:335px; top:70px; border-radius:50%; background:#ddf0a8; opacity:.6;}

#home #box-01 .h2{ position:relative; z-index:2;}
#home #box-01 .h2 .deco-medical{ position:absolute; width:150px; right:0; top:-40px;}
#home #box-01 .area-01{ overflow:hidden; position:relative; z-index:2; padding:30px;}
#home #box-01 .area-01 .entry{ background:#fff; width:385px; float:left; margin-right:60px; padding-bottom:50px; transition:.5s;}
#home #box-01 .area-01 .entry:last-child{ margin-right:0;}
#home #box-01 .area-01 .entry img{ width:100%; height:300px; object-fit:cover;}
#home #box-01 .area-01 h3{ text-align:center; font-size:28px; font-weight:600; margin:35px 0 20px;}
#home #box-01 .area-01 p{ padding:0 45px; font-size:16px; line-height:1.8em;}
#home #box-01 .area-01 .more{ width:348px; margin-top:18px;}

#home #box-01 .area-01 .entry:has(.more a:hover){box-shadow:0 0px 30px rgba(133,173,57,.5);}


#home #box-01 .area-02{ display:flex; gap:43px; margin-top:20px; position:relative; z-index:2;}
#home #box-01 .area-02 .entry{ width:calc((100% - 86px)/3);}

#home #box-01 .area-02 a{ background:#ffffff; border:5px solid #f4b2c6; border-radius:10px; display:flex; align-items:center; padding:10px 25px; box-sizing:border-box; text-decoration:none;}
#home #box-01 .area-02 .entry:nth-child(2) a{ border-color:#9edab0;}
#home #box-01 .area-02 .entry:nth-child(3) a{ border-color:#9fc8ef;}
#home #box-01 .area-02 img{ width:85px; height:85px; object-fit:contain; margin-right:28px;}
#home #box-01 .area-02 span{ font-size:20px; font-weight:600; color:#604a3f; font-family:"Zen Maru Gothic", sans-serif; transition:.5s;}
#home #box-01 .area-02 i{ font-style:normal; color:#604a3f; margin-left:auto; font-size:25px; transition:.5s;}
#home #box-01 .area-02 a:hover{ transform:translateY(-4px); box-shadow:0 8px 18px rgba(0,0,0,.1); opacity:1;}
#home #box-01 .area-02 a:hover span{ color:#85ad39;}
#home #box-01 .area-02 a:hover i{ color:#85ad39;}


#home #box-02{ padding:80px 0 70px; overflow:hidden; position:relative;}
#home #box-02 .deco-feature-01{ position:absolute; width:260px; left:60px; top:710px;}
#home #box-02 .area-02{ position:relative;}
#home #box-02 .deco-feature-03{ position:absolute; width:190px; right:190px; bottom:-70px;}
#home #box-02 .area-01,#home #box-02 .area-02,#home #box-02 .area-03{ width:1280px; min-height:630px; margin:auto; display:flex; align-items:center; position:relative;}

#home #box-02 .area-02{ flex-direction:row;}
#home #box-02 .tb{ width:58%; padding:0 50px 0 140px; box-sizing:border-box; position:relative;}
#home #box-02 .area-02 .tb{ padding:0 50px 0 140px;}
#home #box-02 .photo{ width:45vw; height:530px; flex:none; overflow:hidden; border-radius:55px 0 0 55px; margin-right:calc((1280px - 100vw)/2); box-shadow:0 0px 30px rgba(133,173,57,.3);}
#home #box-02 .area-02 .photo{ width:44vw; height:560px; margin-right:0; margin-left:calc((1280px - 100vw)/2); border-radius:0 55px 55px 0;}
#home #box-02 .area-03 .photo{ width:45vw; height:530px;}
#home #box-02 .photo img{ width:100%; height:100%; object-fit:cover;}
#home #box-02 .no{ width:120px; position:absolute; left:0px; top:0; display:flex; align-items:center; justify-content:center;}
#home #box-02 .num b{ color:#fff; font-size:50px;}
#home #box-02 h3{ font-size:32px; color:#604a3f; font-weight:600; line-height:1.8em; margin-bottom:35px;}
#home #box-02 h3 span{ color:#85ad39;}
#home #box-02 p{ font-size:16px; line-height:2.3em;}

#home #box-02 .area-01{ background:url(../images/home/bk-ico.png)400px 300px no-repeat;}


#home #box-access{ background:#fff; border-radius:100px 100px 0 0; padding:80px 0 80px;}
#home #box-access .area-01{ display:flex; gap:45px; margin-bottom:45px;}
#home #box-access .entry{ width:calc((100% - 45px)/2);}
#home #box-access .entry h3{ font-size:20px; font-weight:600; color:#604a3f; margin-bottom:22px;}
#home #box-access .entry h3 span{ font-size:15px; color:#85ad39; margin-left:12px;}
#home #box-access .entry:last-of-type tr:nth-of-type(2){border-bottom:1px solid #a49e9d;}
#home #box-access table{ width:100%; background:#f5f9f1; border-radius:10px; overflow:hidden;}
#home #box-access th{ background:#c5e48b; padding:15px 8px; font-size:18px;}
#home #box-access td{ text-align:center; padding:18px 8px; font-size:15px; letter-spacing:normal;}
#home #box-access td:first-child{ text-align:left; padding-left:25px; width:130px;}
#home #box-access td:first-child span{ display:block; font-size:18px; color:#85ad39;}
#home #box-access .note{ font-size:13px; letter-spacing:normal;}
#home #box-access .note span.pink{color:#fe77a1;font-size:13px;font-weight:bold;display:inline;}
#home #box-access td span{color: #85ad39;}
#home #box-access .entry:first-of-type tr:nth-of-type(2),
#home #box-access .entry:first-of-type tr:nth-of-type(3){border-bottom:1px solid #a49e9d;}
#home #box-access .map{ height:500px;}
#home #box-access .info{ display:flex; align-items:center; padding-top:35px;}
#home #box-access .info div:first-child{ display:grid; grid-template-columns:90px 420px; gap:10px;}
#home #box-access .info strong{ background:#604a3f; color:#fff; font-size:14px; text-align:center; padding:4px;}
#home #box-access .info span{ font-size:16px; padding:3px 10px;}
#home #box-access .info .tel{ margin-left:auto; width:250px; text-align:center;}
#home #box-access .info .tel span{ background:#604a3f; color:#fff; display:block; font-size:14px; text-align:center; margin-bottom:10px;}
#home #box-access .info .tel a{ background:url(../images/common/ico-tel.png)left 6px no-repeat; background-size:auto 17px; color:#604a3f; color:#604a3f; display:inline-block; font-size:28px; font-weight:600; text-decoration:none; padding-left:20px; font-family:"Zen Maru Gothic", sans-serif;}

#home #box-access .info .web{ margin-left:35px;}
#home #box-access .info .web a{ background:#a7d943; color:#fff; border-radius:30px; display:flex; align-items:center; padding:15px 38px; text-decoration:none; font-size:16px; font-weight:bold; font-family:"Zen Maru Gothic", sans-serif;}
#home #box-access .info .web img{ width:25px; margin-right:12px;}






/*----------  当院のご紹介 about  ----------*/
/*----------  当院のご紹介 about  ----------*/
/*----------  当院のご紹介 about  ----------*/

#about #box-01{ position:relative;}
#about #box-01 .area-01{ width:1280px; margin:0 auto 120px; display:flex; align-items:center;}
#about #box-01 .tb{ width:720px; padding-right:60px; box-sizing:border-box; position:relative; z-index:2; flex:none;}
#about #box-01 .tb p{ font-size:16px; line-height:2em; margin-bottom:30px;}
#about #box-01 .photo{ width:calc(50vw - 80px); height:500px; flex:none; margin-right:calc((1280px - 100vw)/2); border-radius:50px 0 0 50px; overflow:hidden; box-shadow:0 0px 30px rgba(133,173,57,.3);}
#about #box-01 .photo img{ width:100%; height:100%; object-fit:cover;}

#about #box-01 .area-02{ width:1280px; margin:auto; padding:50px 60px; box-sizing:border-box; display:flex; align-items:center; position:relative;}
#about #box-01 .area-02 .tb{ width:850px;}
#about #box-01 .area-02 h3{ font-size:30px; margin-bottom:30px;}
#about #box-01 .area-02 .p-01{ font-size:22px; font-weight:bold; margin-bottom:10px; font-family:"Zen Maru Gothic",sans-serif;}
#about #box-01 .area-02 .p-01 span{ color:#85ad39;}
#about #box-01 .area-02 p{ font-size:16px; line-height:2em;}
#about #box-01 .area-02 img{ position:absolute; right:60px; top:50px;}

#about #box-02{ padding:100px 0;}
#about #box-02 .doctor{ width:1280px; margin:0 auto 120px; background:url(../images/about/bk-ico-01.png)right 100px top 0 no-repeat;}
#about #box-02 .doctor:last-child{ margin-bottom:0; background:url(../images/about/bk-ico-02.png) 500px 200px no-repeat;}
#about #box-02 .doctor .top{ overflow:hidden; margin-bottom:50px;}
#about #box-02 .doctor h3{ font-size:28px; font-weight:bold; margin-bottom:25px;}
#about #box-02 .doctor h3 span{ color:#85ad39;}
#about #box-02 .doctor img{ float:left;}
#about #box-02 .doctor .tb{ width:875px; float:right; padding-top:15px;}
#about #box-02 .doctor .tb p{ font-size:16px; line-height:2em;}
#about #box-02 .doctor .tb .p-01{ font-size:16px; font-weight:bold; text-align:right; margin-top:40px; font-family:"Zen Maru Gothic",sans-serif;}
#about #box-02 .doctor .tb .p-01 span{ font-size:22px; display:inline-block; margin-left:10px;}

#about #box-02 .career{ background:#fff; border-radius:20px; margin-bottom:30px; padding:50px 60px;}
#about #box-02 .career h4{ font-size:22px; font-weight:600; margin-bottom:15px;}
#about #box-02 .career li{ font-size:16px; line-height:2em; display:block; margin-right:50px;}


#about #box-03{ background:#fff; border-radius:60px; padding:100px 0;}
#about #box-03 h3{ width:1260px; margin:0 auto 30px; font-size:28px; font-weight:bold; display:flex; align-items:center; gap:30px;}
#about #box-03 h3:after{ content:""; height:5px; flex:1; background:radial-gradient(circle,#604a3f 2px,transparent 2.5px) left center/12px 5px repeat-x;}
#about #box-03 .area-01{ width:1280px; margin:0 auto 70px; overflow:hidden;}
#about #box-03 .area-01 .entry{ width:390px; float:left; margin:0 55px 50px 0;}
#about #box-03 .area-01 .entry:nth-of-type(3n){ margin-right:0;}
#about #box-03 .area-01 .entry a{ position:relative;}
#about #box-03 .area-01 .entry a:after{ content:url(../images/about/ico-look.png); width:30px; height:30px; background:#fff; display:inline-block; position:absolute; right:0; bottom:-1px;}
#about #box-03 .area-01 .entry p{ font-size:18px; font-weight:bold; margin-top:20px; text-align:center; font-family:"Zen Maru Gothic",sans-serif;}

#about #box-03 .area-02{ width:1280px; margin:auto;}
#about #box-03 .area-02 p{ font-size:16px; margin-bottom:30px;}
#about #box-03 .area-02 .green-area{ padding:50px 60px;}
#about #box-03 .area-02 .green-area li{ font-size:16px; line-height:2em; display:inline-block; margin-right:50px;}


#about #box-04{ background:#f6f7f5; border-radius:60px 60px 0 0;}
#about #box-04 table{ width:1280px; margin:auto;}
#about #box-04 th{ background:#e9f2d8; width:220px; border:1px solid #85ad39; padding:30px 40px; text-align:left; font-size:18px; font-weight:bold; font-family:"Zen Maru Gothic",sans-serif;}
#about #box-04 td{ background:#fff; border:1px solid #85ad39; padding:30px 40px; font-size:18px;}





/*----------  診療内容 medical  ----------*/
/*----------  診療内容 medical  ----------*/
/*----------  診療内容 medical  ----------*/
#medical #mp{ background:url(../images/medical/mv.jpg)center center/cover no-repeat;}
#medical #box-01{ position:relative; overflow:hidden;}

/* area-01 */
#medical #box-01 .area-01{ width:1280px; margin:0 auto 120px; display:flex; align-items:center; position:relative;}
#medical #box-01 .area-01 .tb{ width:720px; padding-right:60px; box-sizing:border-box; position:relative; z-index:2; flex:none;}
#medical #box-01 .area-01 .photo{ width:calc(50vw - 80px); height:500px; flex:none; margin-right:calc((1280px - 100vw)/2); border-radius:50px 0 0 50px; overflow:hidden; box-shadow:0 0 50px rgba(133,173,57,.3);}

/* area-02 */
#medical #box-01 .area-02{ width:1280px; margin:0 auto 120px; display:flex; align-items:center; position:relative;}
#medical #box-01 .area-02 .photo{ width:calc(50vw - 80px); height:500px; flex:none; margin-left:calc((1280px - 100vw)/2); border-radius:0 50px 50px 0; overflow:hidden; box-shadow:0 0 30px rgba(133,173,57,.3);}
#medical #box-01 .area-02 .tb{ width:720px; padding-left:60px; box-sizing:border-box; position:relative; z-index:2; flex:none;}

/* area-03 */
#medical #box-01 .area-03{ width:1280px; margin:auto; position:relative;}
#medical #box-01 .area-03 .tb.top{ width:720px; padding:10px 60px 0 0; box-sizing:border-box; float:left; position:relative; z-index:2;}
#medical #box-01 .area-03 .photo{ width:calc(50vw - 80px); height:530px; float:right; margin-right:calc((1280px - 100vw)/2); border-radius:50px 0 0 50px; overflow:hidden; box-shadow:0 0 30px rgba(133,173,57,.3);}
#medical #box-01 .photo img{ width:100%; height:100%; object-fit:cover;}

#medical #box-01 .tb p{ font-size:16px; line-height:2em; margin-bottom:40px;}
#medical #box-01 .tb h3,#medical #box-01 .area-inner h3,#medical #box-01 .green-area h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#medical #box-01 .tb ul{ margin-bottom:35px;}
#medical #box-01 .tb li{ font-size:16px; margin-bottom:15px; padding-left:1em; text-indent:-1em;}
#medical #box-01 .tb .pink{ font-size:16px; font-weight:bold; color:#fe77a1; text-align:center; border:2px solid #fe77a1; padding:15px 0; font-family:"Zen Maru Gothic",sans-serif;}
#medical #box-01 .tb .p-01{ font-size:16px; font-weight:bold; color:#fe77a1; margin-bottom:10px; line-height:1.7em;}
#medical #box-01 .deco{ position:absolute; z-index:3;}

#medical #box-01 .area-01 .deco{ width:230px; right:350px; bottom:10px;}
#medical #box-01 .area-02 .deco{ width:210px; left:380px; bottom:0;}
#medical #box-01 .area-03 .deco{ width:220px; right:480px; top:290px;}
#medical #box-01 .area-inner{ clear:both; display:flex; gap:80px; padding-top:70px;}
#medical #box-01 .area-inner .entry{ width:600px;}
#medical #box-01 .area-inner p{ font-size:16px; line-height:2em;}

#medical #box-01 .green-area{ clear:both; margin-top:50px; padding:50px 60px;}
#medical #box-01 .green-area h3{ margin-bottom:30px;}
#medical #box-01 .green-area ul{ overflow:hidden; padding:0 20px;}
#medical #box-01 .green-area li{ font-size:20px; font-weight:500; line-height:1.8em; width:46%; float:left; margin-bottom:15px;}
#medical #box-01 .green-area li:nth-of-type(2n){ float:right;}
#medical #box-01 .green-area li img{ margin-right:10px;}



#medical #box-02{ border-radius:60px 60px 0 0;}

#medical #box-02 .area-01,#medical #box-02 .area-02,#medical #box-02 .area-03{ width:1280px; margin:auto;}
#medical #box-02 .area-01{ margin-bottom:100px;}
#medical #box-02 .area-01 p{ font-size:16px; line-height:2em; margin-bottom:30px;}
#medical #box-02 .area-01 .entry{ background:#fff; border-radius:20px; padding:40px 50px; position:relative; min-height:150px; box-sizing:border-box;}
#medical #box-02 ul{  width:360px; overflow:hidden; padding:0 20px;}
#medical #box-02 li{ font-size:16px; font-weight:500; line-height:1.8em; margin-bottom:10px; padding-left:1em; text-indent:-1em;}
#medical #box-02 .area-01 .entry img{ position:absolute; right:55px; bottom:10px;}

#medical #box-02 .area-02{ overflow:hidden; margin-bottom:50px;}
#medical #box-02 .area-02 .entry{ width:600px; padding:45px 50px; float:left; position:relative; box-sizing:border-box;}
#medical #box-02 .area-02 .entry:last-child{ float:right;}
#medical #box-02 .area-02 h3{ font-size:25px; font-weight:600; margin-bottom:20px;}
#medical #box-02 .area-02 p{ font-size:16px; line-height:2em;}
#medical #box-02 .area-02 img{ position:absolute; right:35px; bottom:30px; width:145px;}


#medical #box-02 .pink{ width:1000px; margin:0 auto 100px; border:2px solid #f4a0bb; color:#ef86a8; background:#fff; text-align:center; padding:20px 20px; box-sizing:border-box; font-size:18px; font-weight:bold; font-family:"Zen Maru Gothic",sans-serif;}


#medical #box-02 .area-03{ padding:50px 55px 50px; position:relative; box-sizing:border-box;}
#medical #box-02 .area-03 .inner{ overflow:hidden; margin-bottom:50px;}
#medical #box-02 .area-03 .entry{ width:33.333%; padding:0 45px; float:left; border-right:1px solid #aaa; box-sizing:border-box;}
#medical #box-02 .area-03 .entry:last-of-type{ border-right:none;}
#medical #box-02 .area-03 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#medical #box-02 .area-03 p{ font-size:16px;}
#medical #box-02 .area-03 .btn a{ background:#abde4b; color:#fff; border-radius:25px; display:inline-block; padding:10px 30px; text-decoration:none; font-size:18px; font-weight:bold;}
#medical #box-02 .area-03 .btn a img{ margin-right:10px; vertical-align:middle;}
#medical #box-02 .area-03 .tel a{ color:#85ad39; font-size:36px; font-weight:600; text-decoration:none; font-family:"Zen Maru Gothic",sans-serif; background:url(../images/medical/ico-tel.png)left 15px no-repeat; background-size:auto 24px; padding-left:30px;}

#medical #box-02 .area-03 .pink{ width:1000px; margin:auto; border:2px solid #f4a0bb; color:#ef86a8; background:#fff; text-align:center; padding:20px 20px; box-sizing:border-box; font-size:18px; font-weight:bold; font-family:"Zen Maru Gothic",sans-serif;}


#medical #box-02 .area-04{max-width:1300px;margin:50px auto 100px;padding:50px 55px 50px;box-sizing:border-box;background-color:#e9f0da !important;border-radius:16px !important;overflow:hidden;}
#medical #box-02 .area-04 .inner{overflow:hidden; width:100%;margin-left:80px;}
#medical #box-02 .area-04 ul{width:100%;overflow:hidden;padding:0;margin:0;list-style:none;}
#medical #box-02 .area-04 li{font-size:20px;font-weight:500;line-height:1.8em;width:46%;float:left;margin-bottom:15px;}
#medical #box-02 .area-04 li img{width:32px;height:32px;vertical-align:middle;margin-right:10px;}
#medical #box-02 .area-04 li.cat-label{width:100%;clear:both;font-size:16px;font-weight:700;color:#85ad39;margin-bottom:10px;margin-top:20px;padding-bottom:6px; border-bottom:1px solid #c5e48b;}
#medical #box-02 .area-04 li.cat-label:first-child{margin-top:0;}
#medical #box-02 .area-04 li.full{width:100%;float:none;clear:both;}


/*----------  診療時間・アクセス guide  ----------*/
/*----------  診療時間・アクセス guide  ----------*/
/*----------  診療時間・アクセス guide  ----------*/
#guide #mp{ background:url(../images/guide/mv.jpg)center center/cover no-repeat;}

#guide #box-01{ position:relative;}
#guide #box-01 .area-01{ width:1280px; margin:auto; padding:30px; position:relative; overflow:hidden;}
#guide #box-01 .entry{ width:800px; margin-bottom:30px; float:left; position:relative; z-index:2;}
#guide #box-01 .entry.right{ margin-left:auto;}
#guide #box-01 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#guide #box-01 table{ width:100%; background:#f4f8ef; border-radius:10px; overflow:hidden; margin-bottom:20px;}
#guide #box-01 th{ background:#c5e48b; padding:20px 10px; font-size:20px; font-weight:bold; text-align:center; font-family:"Zen Maru Gothic",sans-serif;}
#guide #box-01 td{ text-align:center; padding:15px 10px; font-size:20px; font-weight:bold; font-family:"Zen Maru Gothic",sans-serif;}
#guide #box-01 td span{ color:#85ad39;}
#guide #box-01 td:first-child{ width:170px; text-align:left; font-size:16px; padding-left:25px;}
#guide #box-01 td:first-child span{ display:block; color:#85ad39; font-size:20px;}
#guide #box-01 tr:nth-of-type(2){ border-bottom:1px solid #d9dfd2;}

#guide #box-01 ul li{ font-size:15px; line-height:1.8em; margin-bottom:5px; padding-left:1em; text-indent:-1em;}
#guide #box-01 ul li span{ font-weight:bold; color:#85ad39;}
#guide #box-01 ul li .pink{ color:#fe77a1;}

#guide #box-01 .img{ background:#fff; float:right; width:350px; height:350px; border-radius:50%; box-shadow:0 0 30px rgba(133,173,57,.3); position:relative;}
#guide #box-01 .img img{ width:250px; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto;}

#guide #box-01 .area-02{ margin-bottom:50px;}
#guide #box-01 .area-02 .entry{ float:right;}
#guide #box-01 .area-02 .entry table tr{ border:none;}
#guide #box-01 .area-02 .entry ul li:last-child{ padding-left:5em; text-indent:-5em;}
#guide #box-01 .area-02 .img{ float:left;}

#guide #box-01 .area-03{ width:1280px; margin:auto; overflow:hidden; padding-bottom:10px;}
#guide #box-01 .doctor{ width:49%; float:left; display:flex; align-items:center;}
#guide #box-01 .doctor img{ margin-right:30px;}
#guide #box-01 .doctor p{ font-size:24px; font-weight:600;font-family:"Zen Maru Gothic",sans-serif;}
#guide #box-01 .doctor p span{ background:#8dbb45; color:#fff; font-size:17px; display:block; padding:5px 20px; margin-bottom:10px; line-height:1.5em;}
#guide #box-01 .doctor small{ display:block; font-size:15px; margin-top:5px;}


#guide #box-02{ position:relative; overflow:hidden;}
#guide #box-02 .area-01{width:1280px; margin:0 auto 120px; display:flex; align-items:center; position:relative;}
#guide #box-02 .area-01 .photo{ width:calc(50vw - 80px); height:500px; flex:none; margin-right:calc((1280px - 100vw)/2); border-radius:50px 0 0 50px; overflow:hidden; box-shadow:0 0 50px rgba(133,173,57,.3);}
#guide #box-02 .area-01 .tb{ width:720px; padding-right:60px; box-sizing:border-box; position:relative; z-index:2; flex:none;}

#guide #box-02 .area-02{ width:1280px; margin:0 auto 120px; display:flex; align-items:center; position:relative;}
#guide #box-02 .area-02 .photo{ width:calc(50vw - 80px); height:500px; flex:none; margin-left:calc((1280px - 100vw)/2); border-radius:0 50px 50px 0; overflow:hidden; box-shadow:0 0 30px rgba(133,173,57,.3);}
#guide #box-02 .area-02 .tb{ width:720px; padding-left:60px; box-sizing:border-box; position:relative; z-index:2; flex:none;}



#guide #box-02 .photo img{ width:100%; height:100%; object-fit:cover;}

#guide #box-02 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#guide #box-02 .tb p{ font-size:16px; line-height:2em;}
#guide #box-02 .tb li{ font-size:16px; line-height:2em; padding-left:1em; text-indent:-1em;}
#guide #box-02 .tb ul{ margin-bottom:35px;}
#guide #box-02 p a{ font-size:24px; color:#85ad39; font-weight:bold; text-decoration:none; font-family:"Zen Maru Gothic",sans-serif;}
#guide #box-02 .pink{ border:2px solid #fe77a1; color:#fe77a1; background:#fff; text-align:center; padding:15px 0px; margin:20px 0 35px; font-family:"Zen Maru Gothic", sans-serif; font-weight:bold;}
#guide #box-02 .deco{ position:absolute; width:200px; right:20px; bottom:-40px;}
#guide #box-02 .gallery{ display:grid; grid-template-columns:repeat(4,1fr); width:100%; margin-top:20px;}
#guide #box-02 .gallery img{ width:100%; height:280px; object-fit:cover;}


#guide #box-03{ border-radius:60px 60px 0 0;}
#guide #box-03 .area-01{ width:1280px; margin:0 auto 70px;}
#guide #box-03 .area-01{ padding:50px 55px 50px; position:relative; box-sizing:border-box;}
#guide #box-03 .area-01 .inner{ overflow:hidden; margin-bottom:50px;}
#guide #box-03 .area-01 .entry{ width:33.333%; padding:0 45px; float:left; border-right:1px solid #aaa; box-sizing:border-box;}
#guide #box-03 .area-01 .entry:last-of-type{ border-right:none;}
#guide #box-03 .area-01 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#guide #box-03 .area-01 p{ font-size:16px;}
#guide #box-03 .area-01 .btn a{ background:#abde4b; color:#fff; border-radius:25px; display:inline-block; padding:10px 30px; text-decoration:none; font-size:18px; font-weight:bold;}
#guide #box-03 .area-01 .btn a img{ margin-right:10px; vertical-align:middle;}
#guide #box-03 .area-01 .tel a{ color:#85ad39; font-size:36px; font-weight:600; text-decoration:none; font-family:"Zen Maru Gothic",sans-serif; background:url(../images/medical/ico-tel.png)left 15px no-repeat; background-size:auto 24px; padding-left:30px;}

#guide #box-03 .area-01 .pink{ width:1000px; margin:auto; border:2px solid #f4a0bb; color:#ef86a8; background:#fff; text-align:center; padding:20px 20px; box-sizing:border-box; font-size:18px; font-weight:bold; font-family:"Zen Maru Gothic",sans-serif;}

#guide #box-03 .area-02{ width:1280px; margin:auto;}
#guide #box-03 .area-02 .map{ height:500px; margin-bottom:30px;}

#guide #box-03 .info{ display:flex; justify-content:space-between; align-items:flex-start;}
#guide #box-03 .info .left{ width:600px;}
#guide #box-03 .info .right{ width:580px;}
#guide #box-03 .info dl{ display:flex; align-items:center; margin-bottom:10px;}
#guide #box-03 .info dt{ border:1px solid #604a3f; width:105px; flex:none; text-align:center; font-size:14px; padding:5px 5px; box-sizing:border-box;}
#guide #box-03 .info dd{ font-size:16px; padding-left:25px;}
#guide #box-03 .info dd.tel a{ color:#85ad39; font-size:36px; font-weight:600; text-decoration:none; font-family:"Zen Maru Gothic",sans-serif; background:url(../images/medical/ico-tel.png)left 18px no-repeat; background-size:auto 24px; padding-left:30px;}
#guide #box-03 .info .right h3{ border:1px solid #604a3f; display:inline-block; font-size:14px; font-weight:400; padding:5px 12px; margin-bottom:12px;}
#guide #box-03 .info .right p{ font-size:16px; line-height:2em;}






/*----------  ご予約方法 reservation  ----------*/
/*----------  ご予約方法 reservation  ----------*/
/*----------  ご予約方法 reservation  ----------*/
#reservation #mp{ background:url(../images/guide/mv.jpg)center center/cover no-repeat;}

#reservation #box-01{ position:relative;}
#reservation #box-01 .area-01{ width:1280px; margin:auto; padding:30px; position:relative; overflow:hidden;}
#reservation #box-01 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#reservation #box-01 ul{background-color:rgba(255,255,255,0.5);;border-radius:50px;padding:50px;}
#reservation #box-01 ul li{font-size:18px;line-height:2em; margin-bottom:5px; padding-left:1em; text-indent:-1em;}
#reservation #box-01 ul li span{ font-weight:bold; color:#85ad39;}
#reservation #box-01 ul li .pink{ color:#fe77a1;}
#reservation #box-01 .img{ background:#fff; float:right; width:350px; height:350px; border-radius:50%; box-shadow:0 0 30px rgba(133,173,57,.3); position:relative;}
#reservation #box-01 .img img{ width:250px; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto;}

#reservation #box-02{ position:relative; overflow:hidden;}
#reservation #box-02 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#reservation #box-02 p{margin-bottom:15px;padding-left:1em;text-indent:-1em;}
#reservation #box-02 .p-01{font-size:20px;text-align:center;}
#reservation #box-02 .mail{text-align:left;max-width:960px; margin:50px auto;}
#reservation #box-02 .point{font-weight:bold;font-size:22px;}
#reservation #box-02 .mail .chui{color:#85ad39;font-weight:bold;}

#reservation #box-03{ border-radius:60px 60px 0 0;}
#reservation #box-03{ position:relative;}
#reservation #box-03 .area-01{ width:1280px; margin:auto; padding:30px; position:relative; overflow:hidden;}
#reservation #box-03 h3{ font-size:24px; font-weight:600; margin-bottom:20px;}
#reservation #box-03 ul{background-color:rgba(255,255,255,0.5);;border-radius:50px;padding:50px;}
#reservation #box-03 ul li{font-size:18px;line-height:2em; margin-bottom:5px; padding-left:1em; text-indent:-1em;}
#reservation #box-03 ul li span{ font-weight:bold; color:#85ad39;}
#reservation #box-03 ul li .pink{ color:#fe77a1;}
#reservation #box-03 .img{ background:#fff; float:right; width:350px; height:350px; border-radius:50%; box-shadow:0 0 30px rgba(133,173,57,.3); position:relative;}
#reservation #box-03 .img img{ width:250px; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto;}
#reservation #box-03 .chui{color: #85ad39;font-weight:bold;}



/*▼▼▼スクロールでふわっと表示▼▼▼*/

/*----------------------------
scroll_up ｜下から上へ出現
----------------------------*/
.scroll_up{transition-timing-function:cubic-bezier(.64,.04,.35,1);
  transition:0.9s ease-in-out;
  transform:translateY(30px);
  opacity:0;
}

.scroll_up.on{transform:translateY(0);
  transition:0.9s ease-in-out;
  opacity:1.0;
}
.scroll_on{transition-timing-function:cubic-bezier(.64,.04,.35,1);
  transition:0.9s ease-in-out;
  transform:translateY(0px);
  opacity:0;
}

.scroll_on.on{transform:translateY(0);
  opacity:1.0;
}

.scroll_right.on{opacity:1.0;
    filter:alpha(opacity=100);
    -moz-opacity:1.0;
    transform:translateX(0);
}


/*モーダルウィンドウ*/

.yoyaku-modal-overlay{ display:none;position:fixed;top:0; left:0;width:100%;height:100%;background:rgba(0,0,0,0.5); z-index:9999;justify-content:center;align-items:center;}
.yoyaku-modal-overlay.is-open{ display:flex;}
.yoyaku-modal-inner{background:#fff;width:90%;max-width:600px;max-height:85vh;overflow-y:auto;position:relative;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,0.3);padding:2.5rem 2rem 2rem;}
.yoyaku-modal-close{position:absolute;top:10px;right:12px;background:#a7d943; border:none; border-radius:50%;width:32px; height:32px; font-size:18px;line-height:1;ursor:pointer;color:#fff;z-index:1;}
.yoyaku-modal-close:hover{background:#85ad39;}

/* タイトル部分 */
#yoyaku-modal .title{font-size:24px;font-weight:bold;color:#85ad39;margin:0 0 0.8rem;padding:0;background:none;border-left:none;text-align:center;}

/* 本文部分 */
#yoyaku-modal .text{font-size:18px; color:#444;line-height:2; margin:0;padding:1.5rem;background:#ebf6de;border-left:4px solid #a7d943; border-radius:4px;text-align:center;}
#yoyaku-modal .text .inner{display:inline-block;text-align:left;}
#yoyaku-modal .text a{color:#f77922;font-weight:bold;text-decoration:underline;}
#yoyaku-modal .text a:hover{text-decoration:none;}
#yoyaku-modal .text .orange{color:#f77922;font-weight:bold;}
#yoyaku-modal .kanri{color:#85ad39;font-weight:bold;font-size:20px;}