@charset "utf-8";

/*
Theme Name: えのもと小児科
Description: えのもと小児科 Original theme.
Theme URI: https://saitasaita.co.jp/
Author: Saita Corp.
Author URI: https://saitasaita.co.jp/
Description: Original Wordpress theme for えのもと小児科.
Version: 1.0.0
*/

@import url('https://fonts.googleapis.com/css2?family=Damion&family=Figtree:ital,wght@0,300..900;1,300..900&family=Kaisei+Decol:wght@400;500;700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');


/*

font-family: "Kaisei Decol", serif;

font-family: "Figtree", sans-serif;
	
font-family: "Zen Kaku Gothic New", sans-serif;
	
font-family: "Zen Maru Gothic", serif;

font-family: "Damion", cursive;
font-weight: 400;
*/

@import url(style_contents.css);

li {
  list-style: none;
}
img {
  border: 0;
  -webkit-backface-visibility: hidden;
  width: 100%;
}
a {
color: #000;
  outline: none;
  text-decoration: none;
}
a.tel{pointer-events: none;}
@media screen and (max-width: 767px) {
a.tel{pointer-events: all;}
}
h1, h2, h3, h4, h5, h6, p, figure ,ul {
  margin: 0;
  padding: 0;
}
html {
 height:100%;
	overflow-y: scroll;
}

.orik {
  display: inline-block;
}
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}
img {
  max-width: 100%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
}



body {
  margin: 0;
  padding: 0;
  color: #000;
  line-height: 160%;
  font-family: 'Figtree', 'Zen Maru Gothic', "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS UI Gothic, Osaka, sans-serif;
  font-size: 15px;
  overflow-x: hidden;
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  font-weight: 500;
	position: relative;
}

/*----------------loading------------------*/
/*--最初に出すカバー---*/


#white {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 1000000;
  position: fixed;
  left: 0;
  top: 0;
}
#white figure{
height: 100vh;
min-height: 557px;
}

#white figure img{
height: 100%;
width: 100%;
object-fit: cover;
}
#cover {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 100000;
  position: fixed;
  left: 0;
  top: 0;
  background-size: cover;
  display: grid;
  place-items: center;
}
#cover .logo{
width: auto;
max-width: 270px;
margin: auto;
height: auto;
padding: 0 20px 55px;
}
#cover .logo .mark{
width: 70%;
margin: 0 auto 12px;
}
#cover .logo .txt2{
padding-bottom: 3px;
}
@media screen and (max-width: 870px) {
#white figure{
/*height: 80vw;*/
}
}

@media screen and (max-width: 400px) {

}
#cover.is-active {
  display: none;
}


/*----LUXYプリンタ対応----*/
#luxy {position: fixed !important;}	
@media print {
#luxy {position: static !important;}	
}


/*----Ios初期化-----*/
input, textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  max-width: 100%;
}
textarea {
height: 235px;
}


/*------------------------------------------------------------------

ヘッダー

-------------------------------------------------------------------*/

#header {
width: 100%;
position: relative;
z-index: 50;
font-family: "Zen Kaku Gothic New", sans-serif;
font-weight: 400;
}
#header.topp #g_menu .logo{
background-color: #fff;
}
#header.topp #g_menu .logo img.corner{
width: 29px;
position: absolute;
left: 0;
top: 100%;
}



#header.chead #g_menu .logo img.corner{
display: none;
}
#header.chead {
height: auto;
}

/*-----------------------
ヘッダー
--------------------------*/
#g_menu{
position: relative;
width: auto;
max-width: 1500px;
margin: auto;
letter-spacing: -0.4rem;
box-sizing: border-box;
padding: 0 309px 0 60px;
}
#g_menu .logo{
display: inline-block;
width: 326px;
border-radius: 0 0 29px 0;
letter-spacing: normal;
padding: 54px 40px 36px 0;
position: relative;
box-sizing: border-box;
}

#g_menu .logo a{
display: block;
max-width: 280px;
}
#g_menu .logo figure{
margin: auto;
display: grid;
place-items: center;
}
#g_menu .logo .mark{
width: 146px;
}
#g_menu .logo .txt2{
width: 100%;
padding: 27px 0 13px 0;
margin: auto;
}

#g_menu .logo .txt{
width: 100%;
max-width: 277px;
margin: auto;
}
#g_menu .logo .txt img,
#g_menu .logo .txt2 img{
display: block;
width: 100%;
object-fit: contain;
}

#g_menu .res{
letter-spacing: normal;
position: absolute;
top: 0;
right: -10px;
width: 317px;
border-radius: 0px 0px 0px 45px;
background-color: #f5e9d3;
box-sizing: border-box;
padding: 0 10px 10px 10px;
font-family: "Zen Maru Gothic", serif;
font-size: 14px;
font-weight: 500;
line-height: 24px;
text-align: center;
}
#g_menu .res .bd{
border-radius: 0px 0px 0px 45px;
border-left: dashed 2px #fff;
border-bottom: dashed 2px #fff;
padding: 50px 33px 38px 33px;
}
#g_menu .res a.res_link{
margin: 9px 0 5px 0;
}
@media screen and (min-width: 1510px) {
#g_menu .res{
border-radius: 0px 0px 45px 45px;
}
#g_menu .res .bd{
border-radius: 0px 0px 45px 45px;
border-right: dashed 2px #fff;
}
}
/*ご予約はこちら*/
a.res_link{
display: grid;
place-content: center start;
border-radius: 100px;
position: relative;
font-family: "Kaisei Decol", serif;
color: #fff;
background-color: #e84051;
font-size: 17px;
line-height: 120%;
font-weight: 500;
text-align: left;
padding: 3px 5px 5px 47px;
min-height: 45px;
max-width: 225px;
box-sizing: border-box;
transition: 0.5s;
}
a.res_link img{
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 15px;
width: 24px;
transition: 0.2s;
}
a.res_link:hover{
background-color: #ee7b89;
}
a.res_link:hover img{
transform: translateY(-50%) rotate(-15deg);
}

/*ご予約の前にチェック！*/
a.chk_link{
display: grid;
place-content: center start;
border-radius: 100px;
position: relative;
font-family: "Kaisei Decol", serif;
background-color: #f6cdd2;
font-size: 14.7px;
line-height: 120%;
font-weight: 500;
text-align: left;
padding: 3px 5px 5px 47px;
min-height: 45px;
max-width: 225px;
box-sizing: border-box;
transition: 0.5s;
}
a.chk_link img{
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 16px;
width: 21px;
transition: 0.2s;
}
a.chk_link:hover{
background-color: #f9aeb7;
}
a.chk_link:hover img{
transform: translateY(-50%) rotate(-15deg);
}

#g_menu .links{
letter-spacing: normal;
display: inline-block;
width: calc(100% - 326px);
box-sizing: border-box;
vertical-align: top;
/*padding: 40px 25px 35px 0;*/
padding: 30px 25px 35px 0;
}
#g_menu .links ul{
display: flex;
justify-content: flex-end;
	align-items: center;
}


#g_menu .links ul.pl li{
padding: 0 5px;
}

#g_menu .links ul.pl li a{
display: block;
text-align: center;
font-weight: 500;
font-family: "Figtree", sans-serif;
font-size: 10px;
color: #e7858f;
line-height: 100%;
}
#g_menu .links ul.pl li a span.jp{
display: block;
font-size: 19px;
text-align: center;
font-weight: 500;
line-height: 120%;
color: #000;
font-family: "Kaisei Decol", serif;
padding: 0 8px 11px;
transition: 0.3s;
position: relative;
}
#g_menu .links ul.pl li a span.jp figure{
display: block;
content: "";
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 88%;
width: 20px;
height: 20px;
transition: 0.3s;
z-index: -1;
overflow: hidden;
padding-bottom: 10px;
}
#g_menu .links ul.pl li a span.jp figure img{
transform: translateY(calc(100% + 10px));
transition: 0.3s;
opacity: 0;
}
#g_menu .links ul.pl li.slc a span.jp figure img{
transform: translateY(0);
opacity: 1;
}
#g_menu .links ul.pl li a:hover span figure img{
transform: translateY(0);
opacity: 1;
}
#g_menu .links ul.ac{
/*padding-bottom: 53px;*/

flex-direction: column;
  justify-content: end;
  align-items: end;
  padding-bottom: 35px;

}
#g_menu .links ul.ac li{
padding: 0 18px;
}
#g_menu .links ul.ac li:first-child{
padding-right: 20px;
  padding-bottom: 10px;
}

#g_menu .links ul.pl li a span.jp br {display: none;}
a.tel_link{
display: block;
position: relative;
font-family: "Damion", cursive;
font-size: 27px;
line-height: 100%;
font-weight: 400;
letter-spacing: 0.03rem;
padding: 0 0 0 37px;
box-sizing: border-box;
}
a.tel_link img{
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 0;
width: 27px;
transition: 0.2s;
}

a.acc_link{
display: block;
position: relative;
font-family: "Kaisei Decol", serif;
font-size: 17.6px;
line-height: 120%;
font-weight: 400;
padding: 4px 0 4px 32px;
box-sizing: border-box;
pointer-events: none;
font-size: 16px;
}
a.acc_link img{
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 0;
width: 20px;
transition: 0.2s;
display: none;
}
a.tel_link:hover img,
a.acc_link:hover img{
transform: translateY(-50%) rotate(-15deg);
}

@media screen and (max-width: 1470px) {
#g_menu .links{
width: calc(100% - 22vw);
padding-right: max(1.5vw,10px);
}
#g_menu .links ul.ac{
padding-bottom: 2.5vw;
}
#g_menu .links ul.ac li:first-child{
padding-right: max(0.75vw,5px);
}
#g_menu .links ul.ac li{
padding: 0 max(0.75vw,5px);
}
#g_menu .links ul.pl li{
padding: 0 max(0.55vw,5px);
}
#g_menu .links ul.pl li a span.jp{
padding: 0 max(0.2vw,0px) 11px;
}
#g_menu{
padding-right: max(20vw,280px);
padding-left: max(3vw,30px);
}
#g_menu .res{
width: max(19.8vw,280px);
right: 0;
padding: 0 0 9px 9px;
}
#g_menu .res .bd{
padding: 2.9vw 22px 2.6vw 22px;
}
#g_menu .logo{width: 22vw;}
#g_menu .logo .mark{width: 10vw;}
}

@media screen and (max-width: 1380px) {
#g_menu .links ul.pl li a span.jp br {display: block;}
}
@media screen and (max-width: 1315px) {
#g_menu a.acc_link{font-size: 16px;}
#g_menu a.tel_link{font-size: 26px;}
#g_menu .links ul.pl li a{font-size: 10.5px;}
#g_menu .links ul.pl li a span.jp{font-size: 17px;}
#g_menu .links ul.ac li{padding: 0 max(0.55vw,5px);}
#g_menu .links ul.pl li a span.jp{padding: 0 0 11px;}
}
@media screen and (max-width: 1230px) {
#g_menu{padding: 0 260px 0 30px;}
#g_menu .res{width: 260px;}
#g_menu .res .bd{padding: 25px 22px 30px 22px;}
#g_menu a.chk_link{font-size: 14.3px;}
#g_menu .links{
padding: 15px 18px 35px 0;
width: calc(100% - 250px);
}
#g_menu .logo{
width: 250px;
padding: 45px 32px 36px 0;
}
#g_menu .logo .mark{width: 115px;}
#g_menu .logo .txt2{padding: 22px 0 13px 0;}
#g_menu .links ul.ac{
padding-bottom: 35px;
}
#g_menu a.chk_link{
font-size: 14px;
padding: 3px 5px 5px 40px;
}
#g_menu a.chk_link img{
top: 48%;
left: 13px;
width: 20px;
}
#g_menu .res a.res_link{padding: 3px 5px 5px 40px;}
#g_menu .res a.res_link img{
top: 49%;
left: 13px;
width: 22px;
}
}
@media screen and (max-width: 1180px) {
#g_menu{
padding: 0 40px;
}
#g_menu .logo{
width: max(24vw,270px);
padding: 37px 30px 36px 15px;
}
#g_menu .logo .mark{
width: max(10vw,105px);
}
#header.topp #g_menu .logo img.corner{
display: none;
}
#g_menu .res{
width: 500px;
}
#g_menu .res .bd{
padding: 18px 20px 16px 20px;
}
#g_menu .res a.res_link{
display: inline-grid;
padding: 3px 20px 5px 40px;
margin-right: 5px;
}
#g_menu a.chk_link{
display: inline-grid;
padding: 3px 10px 5px 40px;
}
#g_menu .links{
padding: 170px 0px 35px 0;
width: calc(100% - max(24vw,270px));
}
#g_menu .links ul.ac{
display: none;
}
#g_menu .links ul.pl li{
padding: 0 max(0.85vw,5px);
}
#g_menu .links ul.pl li a span.jp{
font-size: max(1.61vw,17px);
}

#g_menu .links ul.pl {margin-top: 0px;}
#g_menu .links ul.pl li a span.jp br {display: none;}
}

@media screen and (max-width: 1038px) {
#g_menu .links ul.pl li a span.jp br {display: block;}	
}

@media screen and (max-width: 1000px) {
#g_menu{
padding: 0 30px;
}
#g_menu .res{
width: 460px;
}
#g_menu .links ul.pl li{
padding: 0 max(1vw,7px);
}
#g_menu .links ul.pl li a span.jp{
font-size: max(1.8vw,16px);
border-bottom: dashed 2px #ea959e;
}
#g_menu .links ul.pl li a span.en{
display: none;
}
}

@media screen and (max-width: 850px) {
#g_menu{padding: 0 30px;}
#g_menu .logo{
display: block;
width: auto;
padding: 41px 0 32px 0;
}
#g_menu .logo a{margin: auto;}
#g_menu .logo .mark{
width: 100%;
max-width: 105px;
}
#g_menu .logo .txt2{padding: 14px 0 10px 0;}
#g_menu .logo .txt{max-width: 200px;}
#g_menu .links{display: none;}
#g_menu .res{
position: relative;
width: auto;
background-color: #fff;
padding: 0 0 23px 0;
}
#g_menu .res .bd{
padding: 0;
max-width: 440px;
margin: auto;
display: flex;
justify-content: center;
gap:16px;
}
#g_menu .res .bd a{flex: 1;}
#g_menu .res .bd p{display: none;}
#g_menu .res a.res_link{margin: 0;}
#g_menu .res a.chk_link{
font-size: 14px;
min-height: 43px;
min-width: 205px;
}
#g_menu .res a.res_link{
font-size: 16px;
min-height: 43px;
padding: 3px 10px 5px 40px;
}
/*
#g_menu .links{
padding: 38px 0 30px 0;
width: 100%;
display: flex;
flex-direction: column-reverse;
}
#g_menu .links ul{
display: flex;
justify-content: center;
}
#g_menu .links ul.ac{
padding: 25px 0 0;
}
#g_menu .links ul.pl li{
padding: 0 13px;
}
#g_menu .links ul.pl li a{font-size: 10.8px;}
#g_menu .links ul.pl li a span.jp{font-size: 19px;}
*/
}
@media screen and (max-width: 480px) {
#g_menu .res .bd{
gap:max(2vw,5px);
}
#g_menu .res a.res_link{
font-size: max(3.2vw,14px);
min-width: 152px;
}
}
@media screen and (max-width: 430px) {
#g_menu {
padding:0 20px;
}
#g_menu .res a.res_link{
padding: 5px 5px 7px 35px;
display: grid;
border-radius: 10px;
min-width: 135px;
font-size: 13px;
}
#g_menu .res a.res_link span{
display: inline-block;
}
#g_menu .res a.res_link img {
left: 10px;
width: 19px;
}
#g_menu .res a.chk_link{
padding: 5px 5px 7px 35px;
display: grid;
border-radius: 10px;
min-width: 185px;
font-size: 13px;
}
#g_menu .res a.chk_link span{
display: inline-block;
}
#g_menu .res a.chk_link img {
left: 9px;
width: 19px;
}
}
@media screen and (max-width: 370px) {
#g_menu .res a.res_link,
#g_menu .res a.chk_link{
min-width: 0px;
}
}








/*---------------------------------------------------------------------
ハンバーガーメニュー

-----------------------------------------------------------------------*/
/* ハンバーガーメニュー */
#nav-drawer {
  display: none;
  z-index: 9999;
}

/* チェックボックス等は非表示に */
#nav-drawer .nav-unshown {
  display: none;
}

/* ハンバーガーアイコン */
#nav-open {
  display: inline-block;
  width: 31px;
  height: 30px;
  box-sizing: border-box;
  line-height: 40px;
  position: fixed;
  text-align: left;
  padding: 0;
  right: 30px;
  top: 28px;
  cursor: pointer;
  z-index: 999999;
  transition: background-color 0.5s;
}


/* ハンバーガーアイコンのバーアイコンスタイル */
#nav-open span {
  display: block;
  transition: all 0.2s;
  box-sizing: border-box;
  position: absolute;
  width: 31px;
  height: 1px;
  background-color: transparent;
  left: 0;
  border-bottom: solid 5px #373737;
}
#nav-open span:nth-of-type(1) {
top: 0;
}
#nav-open span:nth-of-type(2) {
top: 50%;
/*transform: translateY(-50%);*/
}
#nav-open span:nth-of-type(3) {
top: 100%;
}
@media screen and (max-width: 850px) {
#nav-drawer {
  display: block;
}
}

/* ハンバーガーアイコンがクリックされた時のアニメーション */
#nav-input:checked ~ #nav-open span:nth-of-type(1) {
  transform: translateX(0px) translateY(15px) rotate(-45deg);
  border-bottom: 3px solid #373737;
}
#nav-input:checked ~ #nav-open span:nth-of-type(2) {
opacity: 0;
}
#nav-input:checked ~ #nav-open span:nth-of-type(3) {
  transform: translateX(0px) translateY(-15px) rotate(45deg);
  border-bottom: 3px solid #373737;
}
#nav-input:checked ~ #nav-open{
/*background: #000;*/
}
/*閉じる用の薄黒カバー*/
#nav-close {
  display: none; /*はじめは隠しておく*/
  position: fixed;
  z-index: 998;
  top: 0; /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  /*background-color: rgba(0,0,0,0.3);*/
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 999998; /*最前面に*/
  width: 100%; /*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 350px; /*最大幅（調整してください）*/
  height: 100%;
  transition: 0.3s ease-in-out; /*滑らかに表示*/
  -webkit-transform: translateX(105vw);
  transform: translateX(105vw); /*左に隠しておく*/
  box-sizing: border-box;
  text-align: left;
  background-image: url("images/wave3.png");
  background-repeat: no-repeat;
  background-size: 30px 100%;
  background-position: left;
  padding-left: 30px;
}

@media screen and (max-width: 380px) {
#nav-content {
width: 97%;
}
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block; /*カバーを表示*/
}
#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(calc(100vw - 100vw));
  transform: translateX(calc(100vw - 100vw));
}

/*------PC版・スマホ版共通　ハンバーガーの中身----------*/
#nav-content {
  text-align: left;
  box-sizing: border-box;
}



/*-------------------------------
ハンバーガ中身
---------------------------------*/

#nav-content .con_inside{
padding: 100px 30px 0 18px;
background-color: #eaeaea;
height: 100%;
box-sizing: border-box;
}

#nav-content .con_inside .whole {
width: auto;
position: relative;
padding-bottom: 75px;
}
#nav-content .con_inside .whole figure.hitode{
position: absolute;
bottom: 0;
right: 0;
width: 100px;
}
#nav-content .whole ul.pl p{
padding: 0 0 11px 8px;
font-size: 18px;
color: #e7858f;
}
#nav-content .whole ul.pl li:last-child{
border-bottom: dashed 2px #b5b5b5;
}
#nav-content .whole ul.pl li a{
display: block;
padding: 16px 8px 14px 8px;
border-top: dashed 2px #b5b5b5;
position: relative;
transition: 0.5s;
}
#nav-content .whole ul.pl li a img{
width: 0px;
position: absolute;
left: 5px;
top: 50%;
transform: translateY(-50%);
opacity: 0;
transition: 0.5s;
}
#nav-content .whole ul.pl li.slc a{
padding-left: 30px;
}
#nav-content .whole ul.pl li.slc a img{
width: 20px;
opacity: 1;
}
#nav-content .whole ul.pl li a:hover{
padding-left: 30px;
}
#nav-content .whole ul.pl li a:hover img{
width: 20px;
opacity: 1;
}
#nav-content .whole ul.ac{
padding: 15px 5px;
}
#nav-content .whole ul.ac li a{
margin-top: 20px;
width: fit-content;
}
#nav-content a.acc_link{
padding: 4px 0 4px 0;
font-size: 16px;
line-height: 150%;
}
#nav-content a.acc_link img{
left: 4px;
display: none;
}

/*------------------------------------------------------*/



/*------------------------------------------------------------------

フッタ- 

------------------------------------------------------------------*/
#footer{
width: auto;
position: relative;
padding-top: 60px;
}
#footer .ft_wave{
width: 100%;
height: 21vw;
max-height: 200px;
position: absolute;
top: 0;
right: 0;
background-color: #fffbf3;
}
#footer .ft_wave.bcy{
background-color: #fffbf3;
}
#footer .ft_wave img{
width: 100%;
height: 100%;
object-position: top;
object-fit: fill;
}
#footer .ft_fish{
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 100%;
max-width: 1500px;
height: auto;
}
@media screen and (min-width: 1550px) {
#footer .ft_fish{
top: calc(0.7vw*2);
}
}
#footer .ft_fish figure{
width: 100%;
height: 200px;
position: relative;
}
#footer .ft_fish img.ft1{
width: 176px;
position: absolute;
bottom: 95px;
left: 68px;
transition: 0.5s;
}
#footer .ft_fish img.ft1:hover{
transform: rotate(-5deg);
}
#footer .ft_fish img.ft2{
width: 214px;
position: absolute;
bottom: 127px;
right: 103px;
transition: 0.5s;
}
#footer .ft_fish img.ft2:hover{
transform: rotate(5deg);
}

@media screen and (max-width: 1400px) {
#footer{
width: auto;
position: relative;
padding-top: calc(100px - 2.8vw);
}
#footer .ft_fish img.ft1{
width: 176px;
position: absolute;
bottom: 95px;
left: 68px;
}
#footer .ft_fish img.ft1{
width: max(12.5vw,140px);
position: absolute;
bottom: 95px;
left: max(4vw,20px);
}
#footer .ft_fish img.ft2{
width: max(15vw,180px);
right: max(4vw,20px);
}
}
@media screen and (max-width: 700px){
#footer{
padding-top: 134px;
}
#footer .ft_wave{
width: 800px;
height: 180px;
}
#footer .ft_fish img.ft1{
bottom: max(13.5vw,80px);
}
#footer .ft_fish img.ft2{
bottom: 110px;
}
}
@media screen and (max-width: 500px){
#footer .ft_wave{
width: 160vw;
}
#footer .ft_fish img.ft1{
width: 28vw;
}
#footer .ft_fish img.ft2{
width: 36vw;
}
}
#footer .foot{
padding: 0 30px;
}
#footer .logo{
display: block;
width: auto;
padding: 0 0 25px 0;
border-radius: 0 0 29px 0;
letter-spacing: normal;
position: relative;
box-sizing: border-box;
}

#footer .logo a{
display: block;
max-width: 280px;
margin: auto;
position: relative;
z-index: 10;
}
#footer .logo figure{
margin: auto;
display: grid;
place-items: center;
}
#footer .logo .mark{
width: 100%;
max-width: 108px;
}
#footer .logo .txt2{
width: 100%;
padding: 14px 0 10px 0;
margin: auto;
}

#footer .logo .txt{
width: 100%;
max-width: 207px;
margin: auto;
}
#footer .logo .txt img,
#footer .logo .txt2 img{
display: block;
width: 100%;
object-fit: contain;
}
#footer .res{
padding:0;
max-width: 470px;
margin: auto;
display: flex;
justify-content: center;
gap: 16px;
}
#footer .res a{
flex: 1;
}


#footer .links ul{
display: flex;
justify-content: center;
}

#footer .links ul.pl li{
padding: 0 10px;
}
#footer .links ul.pl{
padding: 40px 0 37px 0;
}
#footer .links ul.pl li a{
display: block;
text-align: center;
font-weight: 500;
font-family: "Figtree", sans-serif;
font-size: 10.8px;
color: #e7858f;
line-height: 100%;
}
#footer .links ul.pl li a span.jp{
display: block;
font-size: 19px;
text-align: center;
font-weight: 500;
line-height: 120%;
color: #000;
font-family: "Kaisei Decol", serif;
padding: 0 8px 11px;
transition: 0.3s;
position: relative;
}
#footer .links ul.pl li a span.jp figure{
display: block;
content: "";
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: 88%;
width: 20px;
height: 20px;
transition: 0.3s;
z-index: -1;
overflow: hidden;
padding-bottom: 10px;
}
#footer .links ul.pl li a span.jp figure img{
transform: translateY(calc(100% + 10px));
transition: 0.3s;
opacity: 0;
}
#footer .links ul.pl li.slc a span.jp figure img{
transform: translateY(0);
opacity: 1;
}
#footer .links ul.pl li a:hover span figure img{
transform: translateY(0);
opacity: 1;
}
#footer .ifr_map{
width: 100%;
text-align: center;
font-family: "Kaisei Decol", serif;
font-size: 16px;
}
#footer .ifr_map span{
display: inline-block;
}
#footer .ifr_map figure{
max-width: 900px;
margin: auto;
padding-bottom: 20px;
}

#footer .links ul.ac{
padding: 29px 0 71px;
gap: 35px;
}
/*
#footer .links ul.ac li:first-child {
  padding-right: 35px;
}
*/

#footer .links ul.lg{
gap: 25px;
}
#footer .links ul.lg a{
display: block;
color: #373737;
font-size: 13px;
padding-bottom: 5px;
line-height: 120%;
border-bottom: dashed 2px #d5d5d5;
transition: 0.3s;
}
#footer .links ul.lg a:hover{
border-bottom: dashed 2px #e7858f;
}

#footer p.copy{
font-size: 12px;
line-height: 130%;
color: #373737;
letter-spacing: 0.05rem;
text-align: center;
font-family: "Figtree", sans-serif;
padding: 32px 0; 
}
#footer p.copy span{
display: inline-block;
}
@media screen and (max-width: 1230px) {
#footer a.chk_link img {
top: 48%;
left: 13px;
width: 20px;
}
#footer .res a.res_link img {
top: 49%;
left: 13px;
width: 22px;
}
}
@media screen and (max-width: 910px) {
#footer .res a.chk_link{
font-size: 14px;
min-height: 43px;
min-width: 205px;
padding: 3px 10px 5px 40px;
}
#footer .res a.res_link{
font-size: 16px;
min-height: 43px;
padding: 3px 10px 5px 40px;
margin: 0;
}
#footer .links ul.pl li{padding: 0 1vw;}
#footer .links ul.pl li a{font-size: 10px;}
#footer .links ul.pl li a span.jp{
padding: 0 2px 11px;
font-size: 17px;
}
}
@media screen and (max-width: 700px) {
#footer .res{
padding-bottom: 40px;
}
#footer .links ul.pl{
display:  none;
}
#footer .links ul.ac{
gap: max(5vw,15px);
flex-wrap: wrap;
}
}
@media screen and (max-width: 480px) {
#footer .res {
gap: max(2vw,5px);
}
#footer .res a.res_link{
font-size: max(3.2vw,14px);
min-width: 152px;
}

}
@media screen and (max-width: 430px) {
#footer .foot{
padding: 0 20px;
}
#footer .res a.res_link{
padding: 5px 5px 7px 35px;
display: grid;
border-radius: 10px;
min-width: 135px;
font-size: 13px;
}
#footer .res a.res_link span{
display: inline-block;
}
#footer .res a.res_link img {
left: 10px;
width: 19px;
}
#footer .res a.chk_link{
padding: 5px 5px 7px 35px;
display: grid;
border-radius: 10px;
min-width: 185px;
font-size: 13px;
}
#footer .res a.chk_link span{
display: inline-block;
}
#footer .res a.chk_link img {
left: 9px;
width: 19px;
}
#footer .links ul.lg{
gap: max(4vw,13px);
flex-wrap: wrap;
}
}
@media screen and (max-width: 370px) {
#footer .res a.res_link,
#footer .res a.chk_link{
min-width: 0px;
}
#footer a.tel_link{
letter-spacing: normal;
padding: 0 0 0 27px;
font-size: 25px;
}
#footer a.tel_link img{
width: 24px;
}
#footer a.acc_link{
font-size: 15px;
padding: 4px 0 4px 23px;
}
#footer a.acc_link img{
width: 17px;
}
}





/*---------------------------------------------------------------------------
ページングのスタイル
---------------------------------------------------------------------------*/
.newer-older {
	margin: 15px auto 70px auto;
	letter-spacing: -0.4em;
	display:flex;
	-js-display: flex;
	flex-direction:row;
	flex-wrap:wrap;
	width: 100%;
	max-width: 973px;
	font-size: 14px;
	font-weight: 500;
}
.newer-older p {margin: 0; padding: 0;}

.newer-older p.newer {margin: 0;text-align: right; background: url("images/yajir.png") no-repeat right;}
.newer-older p.older {margin: 0;text-align: left; background: url("images/yajil.png") no-repeat left;}
.newer-older p.blog {
	text-align: center; 
}

.newer-older p.older,
.newer-older p.newer {
	letter-spacing: normal;
	box-sizing: border-box;
	vertical-align: middle;
	padding: 0;
}

.newer-older p.older{width: calc(50%)}
.newer-older p.newer{width: calc(50%)}


.newer-older p.older a,
.newer-older p.newer a {
	height: 100%;
	display: block;
	text-decoration: none;
	transition: 0.5s;
	box-sizing: border-box;
	color: #454544;
}

.newer-older p.older a {padding: 10px 20px 10px 45px;}
.newer-older p.newer a {padding: 10px 45px 10px 20px;}


@media screen and (max-width: 550px) {
.newer-older p.older{width: 50%}
.newer-older p.newer{width: 50%; }
.newer-older p.blog { display: none;}
.newer-older p.older a {padding: 10px 10px 10px 30px;}
.newer-older p.newer a {padding: 10px 30px 10px 10px;}
}

.bgred{
    background-color: #e60012;
    color: white;
    text-align: center;
    margin: 0 0% 10px 0%;
    padding: 2px 15px;
    display: inline-block;
}

/*------------------------------------**/




/*----------------------------------------------------------------------------
ページングカスタマイズ
-----------------------------------------------------------------------------*/

nav.pagination {
	letter-spacing: normal; 
	text-align: center;
	font-size: 18px;
	color:#454544;
	margin: 110px 0  60px;
	position: relative;
	z-index: 999;
	font-family: "Zen Maru Gothic", serif;
}

nav.pagination h2 {display: none;}
nav.pagination a{
	color:#454544;
	margin: 0 6px;
	text-decoration: none;
}

nav.pagination span.page-numbers {
	background-color: #f29600;
	padding: 2px 12px 4px;
	color: #fff;
	text-decoration: none;
	border-radius: 100px;
}

nav.pagination span.dots{
	background: none;
	color:#000;
}
@media screen and (max-width: 700px) {
nav.pagination {
margin: 90px 0  4.2vw;
}
}
/*----------------------------------------------------------------------------
フォーム用のボタン・入力
-----------------------------------------------------------------------------*/
	.a1 {
		height: 50px;
		padding:10px 20px;
		border:1px solid #acacaa;
		font-size:15px;
		font-family: 'Roboto', 'Zen Kaku Gothic New', "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS UI Gothic, Osaka, sans-serif;
		background:#fff;
		width:100%;
		box-sizing:border-box;
		outline: none;
	}
	.a2 {
		padding:10px 20px;
		border:1px solid #acacaa;
		font-size:15px;
		font-family: 'Roboto', 'Zen Kaku Gothic New', "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS UI Gothic, Osaka, sans-serif;
		background:#fff;
		width:100%;
		box-sizing:border-box;
		outline: none;
	}

	
.a1:focus,
.a2:focus{
	border-color:#D45557;
	outline: none;
}

/*送信ボタン*/
	.sendb,
	.sendb:focus {
		width: 251px;
		height: 57px;
		margin: 40px auto 0 auto;
		background-color: #343434;
		color:#fff;
		border: none;
		border-radius: 7px;
		font-size: 16px;
		font-weight: 400;
		cursor:pointer;
		display: grid;
		place-items:center;
		position: relative;
		transition: 0.3s;
		font-family: "Zen Kaku Gothic New", sans-serif;
}
	
	.sendb:hover {
		top: 2px;
		left: 2px;
		background-color:#000;
		cursor:pointer;
		transition: 0.3s;
	}


.entry_form label input:before {
	position: absolute;
	z-index: 1;
	top: 13px;
	left: 0.1875rem;
	width: 0.75rem;
	height: 0.375rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: rotate(-45deg) scale(0, 0);
	        transform: rotate(-45deg) scale(0, 0);
	border: 2px solid #da3c41;
	border-top-style: none;
	border-right-style: none;
	
}
.entry_form label input:checked:before {
	-webkit-transform: rotate(-45deg) scale(1, 1);
	        transform: rotate(-45deg) scale(1, 1);
}
.entry_form label input:after {
	position: absolute;
	top: 10px;
	left: 0;
	width: 1rem;
	height: 1rem;
	content: '';
	cursor: pointer;
	border: 1px solid #ccc;
	background:#f6f6f6;
}

.entry_form input[type="checkbox"]:focus {
  outline: none;
}
/* チェックボックス */
input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    position: relative;
    top: 3px;
    margin: 3px 0 0 -16px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #acacaa;
    outline: none;
    transition: background-color 0.2s, border-color 0.2s;
}

input[type=checkbox]:checked {
    background-color: #2d6ab3;
    border-color: #2d6ab3;
}

/* チェックマーク */
input[type=checkbox]:checked::before {
    content: '';
    position: absolute;
    top: 1px;
    left: 6px;
    width: 3px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

input[type=checkbox]:hover {
    border-color: #2d6ab3;
}


/*----------------------------------------------------------------------

共通

-----------------------------------------------------------------------*/ 

.com_ttl1{
text-align: center;
}
.com_ttl1 span.jp{
display: block;
font-size: 40px;
line-height: 140%;
font-weight: 600;
color: #000;
font-family: "Kaisei Decol", serif;

}
.com_ttl1 span.en{
display: block;
font-size: 16px;
line-height: 140%;
font-weight: 500;
color: #e7858f;
font-family: "Figtree", sans-serif;
padding-top: 8px;
}
.com_ttl1 a{
display: block;
width: fit-content;
margin: auto;
}

.com_ttl2{
text-align: center;
max-width: 597px;
margin: auto;
padding: 13px 0 15px;
font-family: "Kaisei Decol", serif;
font-size: 22px;
line-height: 140%;
font-weight: 500;
color: #454544;
border-top: solid 1px #000;
border-bottom: solid 1px #000;
}
.com_ttl2 span{
display: inline-block;
}
.com_ttl2 span.big{
font-size: 29px;
}

@media screen and (max-width: 800px) {
.com_ttl1 span.jp{
font-size: max(5vw,35px);
}
.com .com_ttl1 span.jp{
font-size: max(5vw,30px);
}
.com .com_ttl1 span.en{
font-size: max(2vw,14px);
padding-top: max(1vw,6px);
}
.com_ttl2{
font-size: max(2.75vw,18px);
padding: max(1.62vw,10px) 0 max(1.87vw,12px);
}
.com_ttl2 span.big{
font-size: max(3.6vw,22px);
}
}

.com{
position: relative;
margin-top: -62px;
}

.com .com_hd{
position: relative;
background-color: #eef4fd;
z-index: -2;
padding: 70px 30px 40px;
}
.com .com_hd.com_hd_news{
z-index: 5;
}
.com .com_hd .com_wave{
position: absolute;
top: 0;
left: 0;
width: 100%;
background-color: #fff;
z-index: -1;
display: grid;
overflow: hidden;
}
.com .com_hd .hd1{
position: relative;
width: 100%;
max-width: 1450px;
margin: auto;
}
.com .com_hd .hd1 img{
position: absolute;
top: -105px;
left: 363px;
width: 177px;
}

.com .com_cnt{
position: relative;
background-color: #fffbf3;
padding: 0 0 1px;
}
.com .com_cnt .ft_wave{
width: 100%;
height: 18vw;
max-height: 200px;
position: absolute;
top: 0;
left: 0;
background-color: #eef4fd;
padding-top: 48px;
}

.com .com_cnt .ft_wave img{
width: 100%;
height: 100%;
object-position: bottom;
object-fit: fill;
}
.com .com_cnt .ft_fish{
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 100%;
max-width: 1500px;
height: auto;
}

.com .com_cnt .ft_fish figure{
width: 100%;
height: 200px;
position: relative;
}

.com .com_cnt .ft_fish img.ft2{
width: 145px;
position: absolute;
bottom: 56px;
right: 69px;
transition: 0.5s;
}
.com .com_cnt .ft_fish img.ft2:hover{
transform: rotate(5deg);
}

.com .lr_pd{
padding: 0 30px;
}

@media screen and (max-width: 1470px) {
.com .com_hd .hd1 img{
left: 22vw;
width: 12vw;
top: -7vw;
}
.com .com_cnt .ft_fish img.ft2{
width: 9vw;
bottom: 3.8vw;
right: 1.5vw;
}
}
@media screen and (max-width: 1230px) {
.com{
margin-top: -3.5vw;
}
.com .com_hd{
padding: 70px 30px 0;
}
.com .com_hd .hd1 img{
left: 240px;
}
.com .com_cnt .ft_wave {
max-height: 150px;
position: relative;
padding-top: 0;
}
.com .com_cnt .ft_fish figure{
height: 0;
}
.com .com_cnt .ft_fish img.ft2{
width: 110px;
bottom: -60px;
right: 3.5vw;
}
.com .cnts{
margin-top: -6vw;
}
}
@media screen and (max-width: 1180px) {
.com{
margin-top: -15px;
}
.com .com_hd .hd1 img{
left: 15vw;
width: 145px;
top: -82px;
}
}
@media screen and (max-width: 850px) {
.com{
margin-top: 5px;
}
.com .com_hd .hd1{
max-width: 500px;
}
.com .com_hd .hd1 img{
left: -11px;
z-index: 3;
}
.com .com_hd .com_wave img{
width: 1000px;
height: 90px;
}
.com .cnts{
margin-top: -4vw;
}
}
@media screen and (max-width: 500px) {
.com .com_hd{
padding: 60px 20px 10px;
}
.com .com_hd .com_wave img {
width: 800px;
height: 19vw;
max-width: 127.6vw;
margin-left: -14vw;
}
.com .com_hd .hd1 img{
width: max(28vw , 105px);
top: -70px;
}
.com .com_cnt .ft_wave img {
width: 800px;
max-width: 139%;
margin-left: -39%;
}
.com .com_cnt .ft_fish img.ft2{
width: max(22vw , 90px); 
bottom: max(-12vw , -50px); 
}
.com .cnts{
margin-top: 0;
}
}
@media screen and (max-width: 430px) {
.com .com_cnt .ft_fish img.ft2{
bottom: auto; 
top: -2vw;
}
.com .lr_pd{
padding: 0 20px;
}
}




/*----------------------------------------------------------------------

トップページ

-----------------------------------------------------------------------*/ 
#top_con{
margin-top: -115px;
}
#top_con .top_main{
background-image:url("images/topback.webp");
background-position: center bottom;
background-repeat: repeat-x;
background-size: 100% 445px;
}
@media screen and (min-width: 1520px) {
#top_con .top_main{
background-repeat: repeat-x;
background-size: auto 445px;
}
}
#top_con .main_img{
width: auto;
max-width: 1500px;
padding: 0 60px;
box-sizing: border-box;
margin: auto;
position: relative;
letter-spacing: -0.4rem;
}

#top_con .main_img figure{
display: inline-block;
width: 50%;
height: 54vw;
max-height: 629px;
box-sizing: border-box;
letter-spacing: normal;
position: relative;
}
#top_con .main_img figure img{
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 29px;
}
#top_con .main_img figure.le{
padding-right: 14px;
}
#top_con .main_img figure.ri{
padding-left: 14px;
}
#top_con .main_img figure.le img.corner{
width: 29px;
height: 29px;
position: absolute;
left: 326px;
top: 0;
border-radius: 0;
object-fit: contain;
}
#top_con .main_img figure h3{
width: fit-content;
padding: 10px 29px 8px;
font-size: 15px;
line-height: 130%;
font-weight: 600;
color: #fff;
position: absolute;
top: 9%;
z-index: 5;
}
#top_con .main_img figure.le h3{
background-color: #236e9b;
right: 0;
padding: 10px 28px 8px 18px;
}
#top_con .main_img figure.ri h3{
background-color: #e3ad4e;
left: 0;
padding: 10px 18px 8px 28px;
}



.main_img p strong{
display: inline;
position: relative;
font-weight: 500;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}
.main_img p strong.umi{
text-decoration-color: #b0d4ea;
}
.main_img p strong.hana{
text-decoration-color: #f4d8dd;
}





#top_con .maru{
letter-spacing: normal;
background-color: #fff;
border-radius: 300px;
padding: 6px;
position: absolute;
top: 12%;
left: 50%;
transform: translateX(-50%);
z-index: 3;
aspect-ratio: 100/96;
width: fit-content;
}
#top_con .maru .bd{
display: grid;
place-content: center;
width: 262px;
max-width: 270px;
height: 100%;
border-radius: 300px;
padding: 0 0 15px 0;
aspect-ratio: 1;
box-sizing: border-box;
border: dashed 2px #c6c6c6;
}
#top_con .maru figure{
width: 100%;
height: auto;
max-width: 149px;
margin: auto;
}
#top_con .maru h2{
text-align: center;
font-size: 20px;
line-height: 130%;
font-weight: 600;
font-family: "Kaisei Decol", serif;
color: #9f6324;
padding:9px 0 7px;
}
#top_con .maru p{
font-size: 15px;
color: #454544;
text-align: center;
}
#top_con .top_main p.att{
letter-spacing: normal;
position: relative;
padding: 25px 20px 25px 125px;
max-width: 600px;
box-sizing: border-box;
background-color: #fffbf3;
border-radius: 22px;
color: #9e6223;
margin: -5% 0 0 42px;
}
#top_con .top_main p.att img{
width: 84px;
max-height: 80%;
object-fit: contain;
position: absolute;
left: 26px;
top: 50%;
transform: translateY(-50%);
}

@media screen and (max-width: 1470px) {
#top_con{
margin-top: -7.8vw;
}
#top_con .top_main{
background-size: 100% 31vw;
}
#top_con .main_img{
padding: 0 max(3vw,30px);
}
#top_con .main_img figure.le img.corner{
left: 22vw;
}
#top_con .top_main p.att{
margin: -5% 0 0 2.8vw;
}
}
@media screen and (max-width: 1230px) {
#top_con{
margin-top: -85px;
}
#top_con .main_img{
padding: 0 30px;
}
#top_con .main_img figure.le img.corner{
left: 250px;
}
}
@media screen and (max-width: 1180px) {
#top_con{
margin-top: 0;
}
#top_con .main_img figure.le img.corner{
display: none;
}
#top_con .top_main p.att{
letter-spacing: normal;
position: relative;
padding:18px 15px 18px max(8.5vw,70px);
width: max(calc(26vw + 70px),335px);
max-width: 360px;
box-sizing: border-box;
background-color: #fffbf3;
border-radius: 17px;
color: #9e6223;
margin: -5% 0 0 max(1.5vw,10px);
font-size: 14px;
}
#top_con .top_main p.att img{
width: max(5vw,45px);
left: max(2.2vw,16px);
}
}
@media screen and (max-width: 850px) {
#top_con .top_main{
background-size: 1500px 580px;
}
#top_con .main_img figure.le,#top_con .main_img figure.ri{
display: block;
width: 100%;
height: 64.3vw;
}
#top_con .main_img figure.le{
padding-right: 0;
margin-bottom: 17px;
}
#top_con .main_img figure.ri{
padding-left: 0;
}
#top_con .main_img figure.le h3,
#top_con .main_img figure.ri h3{
right: auto;
left: -30px;
padding: 10px 20px 8px 20px;
}
#top_con .maru{
position: relative;
left: auto;
transform: none;
margin: -70px auto 0 ;
}
#top_con .top_main p.att{
padding:10px 0 0 0;
width: 100%;
max-width: 380px;
background-color:rgba(0,0,0,0.00);
color: #6f6f6f;
margin: 0 auto;
}
#top_con .top_main p.att img{
display: none;
}
}
@media screen and (max-width: 430px) {
 #top_con .main_img {
padding:0 20px;
}
#top_con .main_img figure.le img,
#top_con .main_img figure.ri img{
border-radius: 15px;
}
#top_con .main_img figure.le h3,
#top_con .main_img figure.ri h3{
right: auto;
left: -20px;
padding: 10px 20px 8px 20px;
}
#top_con .maru{
position: relative;
left: auto;
transform: none;
margin: -10vw auto 0 ;
box-sizing: border-box;
width: max(62vw,240px);
max-width: 260px;
height: max(62vw,240px);
aspect-ratio: auto;
}
#top_con .maru .bd{
width: 100%;
}
#top_con .maru figure{
width: max(33vw,110px);
}
#top_con .maru h2{
font-size: 18px;
}
#top_con .maru p{
font-size: 14px;
}

}

/*------------------------------
お知らせ
----------------------------*/
#top_con .top_news{
width: auto;
padding: 3px 30px 220px 30px;
background-color: #eef4fd;
position: relative;
}
#top_con .top_news .imp{
position: relative;
background-color: #fff;
max-width: 855px;
min-height: 160px;
margin: 37px auto 0;
box-sizing: border-box;
border-radius: 32px;
padding: 35px 35px 32px 180px;
}
#top_con .top_news .imp .inva{
margin: 0;
padding: 0;
}
#top_con .top_news .imp h4{
width: 115px;
height: 115px;
border-radius: 100px;
background-color: #e84051;
box-sizing: border-box;
padding: 20px;
position: absolute;
left: 31px;
top: 28px;
color: #fff;
font-weight: 500;
text-align: center;
display: grid;
place-content: center;
}
#top_con .top_news .imp .ko1{
width: 78px;
position: absolute;
left: 4px;
top: -12px;
}
#top_con .top_news .imp .ko2{
width: 68px;
position: absolute;
left: 84px;
top: -28px;
}

#top_con .top_news .imp p{
font-size: 15px;
line-height: 28px;
color: #454544;
}
#top_con .top_news .imp p.clearfix{
margin-bottom: 10px;
}

#top_con .top_news .imp h3.red{
font-size: 16.7px;
line-height: 160%;
font-weight: 500;
color: #e84051;
padding-bottom: 8px;
}

#top_con .top_news .imp p.inva strong{
display: inline-block;
font-weight: 500;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}

.imp a.more_link{
display: block;
width: fit-content; 
text-align: center;
background-color: #dee8f7;
border-radius: 100px;
margin: 13px 0 10px;
padding: 4px 17px 3px;
/*color: #fff!important;*/
font-size: 14px!important;
line-height: 140%;
text-decoration: none!important;
transition: 0.5s;
}
.imp a.more_link:hover{
background-color: #f2ccd0;
}

#top_con .top_news .cnt{
max-width: 755px;
margin: auto;
padding: 20px 10px 0;
}
#top_con .top_news .cnt a{
display: block;
letter-spacing: -0.4rem;
border-bottom: dashed 2px #b5b5b5;
padding: 15px 10px 11px;
transition: 0.5s;
}
#top_con .top_news .cnt a p{
letter-spacing: normal;
display: inline-block;
vertical-align: top;
line-height: 22px;
box-sizing: border-box;
transition: 0.5s;
}
#top_con .top_news .cnt a p.tt{
width: calc(100% - 110px);
color: #454544;
}
#top_con .top_news .cnt a p.ymd{
width: 110px;
color: #c18415;
font-family: "Zen Maru Gothic", serif;
}
#top_con .top_news .cnt a:hover{
border-bottom: dashed 2px #e7858f;
}
#top_con .top_news .cnt a:hover p.tt{
margin-left: -8px;
}

#top_con .top_news .ft_wave{
width: 100%;
height: 21vw;
max-height: 200px;
position: absolute;
bottom: 0;
left: 0;
background-color: #eef4fd;
}
#top_con .top_news .ft_wave img{
width: 100%;
height: 100%;
object-position: top;
object-fit: fill;
}
#top_con .top_news .ft_fish{
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 100%;
max-width: 1500px;
height: auto;
}

#top_con .top_news .ft_fish figure{
width: 100%;
height: 21vw;
max-height: 200px;
position: relative;
}
#top_con .top_news .ft_fish img.ft1{
width: 340px;
position: absolute;
bottom: 48px;
left: -5px;
transition: 0.5s;
}
#top_con .top_news .ft_fish img.ft1:hover{
transform: rotate(-5deg);
}
#top_con .top_news .ft_fish img.ft2{
width: 130px;
position: absolute;
bottom: 152px;
right: 86px;
transition: 0.5s;
}
#top_con .top_news .ft_fish img.ft2:hover{
transform: rotate(5deg);
}

@media screen and (max-width: 1400px) {
#top_con .top_news .ft_fish img.ft1{
width: 24vw;
position: absolute;
bottom: 48px;
left: auto;
right: 80%;
transition: 0.5s;
}

}
@media screen and (max-width: 1200px) {
#top_con .top_news .ft_fish img.ft1{
bottom: 70px;
left: auto;
right: 87%;
}
#top_con .top_news .ft_fish img.ft2{
width: max(11.25vw,80px);
right: 1vw;
}
}
@media screen and (max-width: 1000px) {
#top_con .top_news{
padding: 3px 30px 250px 30px;
}
#top_con .top_news .ft_wave,
#top_con .top_news .ft_fish figure{
height: 13vw;
}
#top_con .top_news .ft_fish img.ft1{
width: 215px;
bottom: 1vw;
left: -35px;
right: auto;
}
#top_con .top_news .ft_fish img.ft2{
width: 125px;
right: 35px;
bottom: 8.5vw;
}
}
@media screen and (max-width: 850px) {
#top_con .top_news{
padding: 30px 30px 250px 30px;
}
#top_con .top_news .imp{
padding: 35px 25px 32px 170px;
}
}
@media screen and (max-width: 700px) {
#top_con .top_news{
padding: 30px 30px 190px 30px;
}
#top_con .top_news .imp{
padding: 200px 32px 40px 32px;
margin: 15px auto 0;
}
#top_con .top_news .imp h4{
left: 50%;
transform: translateX(-50%);
top: 66px;
}
#top_con .top_news .imp .ko1{
width: 78px;
position: absolute;
left: auto;
right: 50%;
top: 27px;
}
#top_con .top_news .imp .ko2{
width: 68px;
position: absolute;
left: 50%;
top: 11px;
}
#top_con .top_news .cnt a p.tt{
width: calc(100% - 90px);
}
#top_con .top_news .cnt a p.ymd{
width: 90px;
}
#top_con .top_news .ft_wave{
width: 900px;
height: 100px;
}
#top_con .top_news .ft_fish figure{
height: 100px;
}
#top_con .top_news .ft_fish img.ft1{
display: none;
}
#top_con .top_news .ft_fish img.ft2{
bottom: 22px;
}
}
@media screen and (max-width: 500px){
#top_con .top_news .ft_wave{
width: 160vw;
}
}
@media screen and (max-width: 430px) {
#top_con .top_news{
padding: 30px 20px 190px 20px;
}
#top_con .top_news .imp{
padding: 200px 20px 40px 20px;
}
#top_con .top_news .cnt a{
padding: 13px 5px;
}
#top_con .top_news .cnt a p.tt{
display: block;
width: 100%;
}
#top_con .top_news .cnt a p.ymd{
display: block;
width: 100%;
padding-bottom: 5px;
}
}

/*----------------------------------
診療案内
----------------------------------*/
#top_con .top_gid{
background-color: #fffbf3;
padding: 0 0 70px ;
z-index: 0;
position: relative;
margin-top: -39px;
color: #454544;
}
#top_con .top_gid .lr_pd{
padding: 0 30px;
}

#top_con .top_gid .int{
max-width: 875px;
margin: auto;
padding: 37px 5px 52px;
box-sizing: border-box;
}
#top_con .top_gid .int div{
display: flex;
align-items: start;
margin-bottom: 6px;
}
#top_con .top_gid .int div .le{
width: 100px;
text-align: center;
box-sizing: border-box;
padding: 5px 5px 3px;
border-radius: 14px;
background-color: #ffef8f;
font-size: 15px;
display: grid;
place-content: center;
}
#top_con .top_gid .int div .ri{
flex: 1;
padding: 5px 0 3px 30px;
font-size: 15px;
font-weight: 500;
}
#top_con .top_gid .int div .ri span{
display: inline-block;
}
#top_con .top_gid .int div .ri a{
color: #454544;
display: inline-block;
transition: 0.5s;
}
#top_con .top_gid .int div .ri a:hover{
color: #e7857f;
}
#top_con .top_gid .lists{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
max-width: 865px;
margin: auto;
padding: 0 10px;
box-sizing: border-box;
}
#top_con .top_gid .lists .le{
padding: 0 25px 17px 0;
}
#top_con .top_gid .lists .le p{
display: inline-block;
}
#top_con .top_gid .lists .le p span.mr{
display: inline-block;
vertical-align: middle;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 7px 3px;
background-color: #eeb033;
}
#top_con .top_gid .lists .le p span.red{
background-color: #e84051;
}
#top_con .top_gid .lists .le p span.blue{
background-color: #99bdf3;
}
#top_con .top_gid .lists .le p span.green{
background-color: #479f24;
}
#top_con .top_gid .lists .ri{
padding-bottom: 17px;
}
#top_con .top_gid .lists .ri p{
display: inline-block;
padding: 0 0 0 43px;
position: relative;
margin-right: 24px;
}
#top_con .top_gid .lists .ri p:last-child{
margin-right: 0;
}
#top_con .top_gid .lists .ri p span.ic{
display: grid;
width: 33px;
height: 32px;
position: absolute;
left: 0px;
top: 50%;
transform: translateY(-50%);
}
#top_con .top_gid .lists .ri p span.ic img{
width: 100%;
object-fit: contain;
object-position: center;
}

#top_con .top_gid .att{
max-width: 835px;
margin:auto;
padding:19px 10px 0;
box-sizing: border-box;
font-size: 14px;
line-height: 22px;
}
#top_con .top_gid .att span.item{
display: block;
padding-bottom: 5px;
/*
padding-left: 1rem;
text-indent: -1rem;
*/
}
#top_con .top_gid .att span.item span{
display: inline-block;
}

#top_con .top_gid table{
width: 100%;
max-width: 875px;
margin: auto;
text-align: center;
border-collapse: separate;
border-spacing: 0;
overflow: hidden;
font-family: "Zen Maru Gothic", serif;
}
#top_con .top_gid table td{
border: solid 1px #e6d04f;
background-color: #fff;
line-height: 140%;
box-sizing: border-box;
min-width: 78px;
	padding: 5px 0;
}

#top_con .top_gid table tr:first-child td{
background-color: #ffef8f;
font-size: 22px;
border-top: solid 4px #e6d04f;
}
#top_con .top_gid table tr:first-child td span{
font-size: 15px;
}
#top_con .top_gid table td:first-child {
min-width: 180px;
border-left: solid 4px #e6d04f;
font-size: 21px;
}
#top_con .top_gid table td:first-child span{
display: block;
font-size: 15px;
line-height: 140%;
padding-top: 3px;
}

#top_con .top_gid table td:last-child {
border-right: solid 4px #e6d04f;
}
#top_con .top_gid table tr:last-child td{
border-bottom: solid 4px #e6d04f;
}
#top_con .top_gid table tr:first-child td:first-child {
font-size: 17px;
border-radius: 19px 0 0 0;
}
#top_con .top_gid table tr:first-child td:last-child {
border-radius: 0 19px 0 0; 

}
#top_con .top_gid table tr:last-child td:first-child {
border-radius: 0 0 0 19px;
}
#top_con .top_gid table tr:last-child td:last-child {
border-radius: 0 0 19px 0;
}
#top_con .top_gid table td p{
padding: 16px 10px 17px 10px;
}
#top_con .top_gid table td.kyu{
background-color: #eef4fd;
}
#top_con .top_gid table td.kyu p{
color: #9f9e9d;
}
#top_con .top_gid table td div{
display: block;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 auto 5px;
background-color: #eeb033;
}
#top_con .top_gid table td .mr{
display: block;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 auto 5px;
}
#top_con .top_gid table td .red{
display: inline-block;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 auto 5px;
background-color: #e84051;
}
#top_con .top_gid table td .blue{
display: inline-block;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 auto 5px;
background-color: #99bdf3;
}
#top_con .top_gid table td .green{
display: inline-block;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 auto 5px;
background-color: #479f24;
}
#top_con .top_gid table td .nm{
display: inline-block;
width: 15px;
height: 15px;
border-radius: 50px;
margin: 0 auto 5px;
background-color: #eeb033;
}
#top_con .top_gid table td .baby{
display: inline-block;
background-color: rgba(0,0,0,0.00);
border-radius: 0;
width: 33px;
height: 32px;
margin: 0 auto 5px;
background-image: url("images/baby.png");
background-size: contain;
background-position: center;
}
#top_con .top_gid table td .inje{
display: inline-block;
background-color: rgba(0,0,0,0.00);
border-radius: 0;
width: 33px;
height: 32px;
margin: 0 auto 5px;
background-image: url("images/inje.png");
background-size: contain;
background-position: center;
}

#top_con .top_gid table td span {margin: 0 2px !important;}



#top_con .clnd{
max-width: 977px;
padding: 117px 0 10px;
margin: auto;
}
#top_con .clnd .frm{
width: 100%;
height: 647px;
padding: 27px 18px;
background-color: #f0f4f9;
border-radius: 15px;
margin: 29px auto 0;
box-sizing: border-box;
}

@media screen and (max-width: 1000px) {
#top_con .top_gid{
margin-top: 0;
}
#top_con .top_gid table td:first-child{
width: max(17vw,145px)!important;
}
#top_con .top_gid table td p{
padding: 16px 9px 17px 9px;
}
}

#top_con .slider-wrapper {
padding: 0 30px;
}
@media screen and (max-width: 850px) {
#top_con .slider-wrapper {
  width: 100%;
  padding: 0 0px 18px;
  box-sizing: border-box;
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 935px;
}
#top_con .slider {
  width: 935px;
	flex-wrap: nowrap;
  -webkit-overflow-scrolling: touch;
}
#top_con .slider > * {
  -webkit-transform: translateZ(0px);
}

#top_con .slider-wrapper::-webkit-scrollbar {
  display: none;
  height: 3px !important;
}
#top_con .top_gid .int{
padding: max(4.35vw,34px) 5px  max(4.5vw,20px);
}

#top_con .top_gid .lists .ri{
padding-bottom: 25px;
}
#top_con .top_gid .lists .le p{
font-size: 14px;
}
#top_con .top_gid .lists .le p span{
margin: 0 5px 3px;
width: 14px;
height: 14px;
}
#top_con .top_gid table{
width: calc(100% - 60px);
}
#top_con .top_gid table td:first-child{
width: 170px;
}
#top_con .top_gid table td p{
padding: 16px 10px 17px 10px;
}
#top_con .clnd{
padding: max(13.7vw,84px) 0 10px;
}
#top_con .clnd .frm{
width: calc(100% - 60px);
}

}
@media screen and (max-width: 600px) {
#top_con .top_gid{
padding-top: 20px;
}
#top_con .top_gid .lists{
display: block;
}
#top_con .top_gid .lists .le{
padding: 0 0px 18px 0;
}
#top_con .top_gid .lists .ri{
padding-bottom: 37px;
}
#top_con .top_gid .att{
padding-top: 10px;
}
#top_con .top_gid .att span.item{
padding-bottom: 7px;
}
#top_con .top_gid .lists .le p span.mr{
margin: 0 5px 3px;
}
}
@media screen and (max-width: 430px) {
#top_con .top_gid{
padding: 0 0 70px ;
}
#top_con .top_gid .lr_pd{
padding: 0 20px;
}

#top_con .top_gid .int div{
display: block;
}	
	
#top_con .top_gid .int div .ri{
padding: 5px 0 3px 15px;
}
#top_con .top_gid table{
width: calc(100% - 40px);
}
#top_con .top_gid table tr:first-child td,
#top_con .top_gid table td:first-child{
font-size: 19px;
}
#top_con .top_gid table tr:first-child td:first-child{
font-size: 16px;
}
#top_con .clnd .frm{
padding: 23px 10px;
}
#top_con .top_gid .lists .ri p{
padding: 4px 0 4px 36px;
}
#top_con .top_gid .lists .ri p span.ic{
width: 28px;
height: 27px;
}
#top_con .clnd .frm{
width: calc(100% - 60px);
}
}



/*-------------------------------------------------------------------------

エディター

--------------------------------------------------------------------------*/
.edi_exam{
color: #454544;
padding: 1px 30px 0;
font-size: 16px;
}

.edi_exam .box{
position: relative;
z-index: 5;
background-color: #fff;
border-radius: 32px;
max-width: 973px;
margin:26px auto 100px;;
box-sizing: border-box;
padding: 25px 60px 35px;
}


.edi_exam p{
line-height: 28px;
margin: 10px 0 20px 3px;
}

.edi_exam strong{
display: inline;
position: relative;
font-weight: 500;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}

.edi_exam .box h2{
position: absolute;
top: -33px;
left: 30px;
font-size: 19px;
font-weight: 500;
padding: 16px 29px 14px;
color: #fff;
background-color: #e84051;
border-radius: 10px;
}
.edi_exam .box h2::after{
content: url("images/h2.jpg");
position: absolute;
width: 50px;
top: 87%;
left: 53px;
z-index: -1;
}

.edi_exam h3{
font-size: 24px;
font-weight: 500;
line-height: 140%;
letter-spacing: 0.03rem;
color: #e84051;
margin: 37px 0 25px 3px; 
font-family: "Zen Maru Gothic", serif;
}

.edi_exam h4{
font-size: 24px;
font-weight: 500;
line-height: 140%;
color: #e84051;
margin: 37px 0 25px 3px; 
font-family: "Zen Maru Gothic", serif;
padding-bottom: 3px;
border-bottom: dashed 2px #e7858f;
}
.edi_exam h5{
font-size: 16px;
margin: 20px 0 20px 3px; 
position: relative;
padding-left: 21px;
}
.edi_exam h5::before{
display: block;
content: "▲";
transform: rotate(90deg);
color: #e7858f;
position: absolute;
top: -1px;
left: 0;
}
.edi_exam h5::after{
  content: "";
  clear: both;
  display: block;
}
.edi_exam h6{
margin: 30px 0 10px;
  font-size: 19px;
  font-weight: 500;
  color: #e84051;
}
.edi_exam h6 strong{
/*
display: inline;
position: relative;
font-weight: 500;
text-decoration: underline;
*/
text-decoration-color: #d4e7f2;
/*
text-decoration-thickness: 2px;
text-decoration-skip-ink: none;
text-underline-offset: 4px;
text-decoration-style: dashed;
*/
}
.edi_exam p.bbb{
display: block;
background-color: #eef4fd;
font-size: 17px;
line-height: 31px;
padding: 15px 30px 14px;
border-radius: 9px;
margin: 25px 0 20px 0;
font-weight: 600;
}
.edi_exam b p{
margin: 0;
}
.edi_exam p.fff{
margin-top: 30px;
}


/*回り込み*/
.edi_exam .wp-block-image .alignright{
width: 270px;
margin: 0 0 15px 15px;
}
.edi_exam .wp-element-caption{
margin: 0;
padding: 15px 0 0 ;
text-align: center;
}
.edi_exam .wp-element-caption strong{
font-size: 19px;
font-weight: 500;
vertical-align: top;
text-decoration: none;
}

#gai_exam .wp-block-image .alignright{
width: 150px;
}

/*テーブル*/
.edi_exam .wp-block-table{
border-radius: 13px;
border: solid 2px #e84051;
margin-bottom: 17px;
}
.edi_exam .wp-block-table tr{
border-bottom: dashed 1px #707070;
}

.edi_exam .wp-block-table tr:last-child {
border-bottom: none;
}
.edi_exam .wp-block-table td, .wp-block-table th{
border: none;
padding: 11px 20px 9px;
line-height: 140%;
vertical-align: top;
}
.edi_exam .wp-block-table td:first-child{
width: 215px;
box-sizing: border-box;
background-color: #fffbf3;
}

/*リスト*/
.edi_exam .wp-block-list{
margin-bottom: 30px;
}

.edi_exam li{
padding: 8px 6px 7px;
border-bottom: dashed 1px #707070;
}
.edi_exam li:first-child{
border-top: dashed 1px #707070;
}
#leg .edi_exam .wp-block-list{
margin: 30px 0;
}
#leg .edi_exam h5 a{
transition: 0.5s;
color: #454544;
font-weight: 500;
}

.edi_exam li strong {
	font-weight: 900 !important;
}

#leg .edi_exam h5 a:hover{
color: #eb9ba3;
}

/*横並び*/
.edi_exam .is-layout-flex {
margin: 20px 0;
}
.edi_exam .is-layout-flex h3{
margin: 0;
}
.edi_exam .is-layout-flex.eee{
margin: 37px 0 25px 3px; 
}
/*
#gui .edi_exam .is-layout-flex{
border-radius: 9px;
margin-bottom: 10px;
overflow: hidden;
background-color: #f4dcdf;
min-height: 55px;
position: relative;
}
#gui .edi_exam .is-layout-flex:last-of-type{
margin-bottom: 20px;
}
#gui .edi_exam .is-layout-flex p:nth-of-type(2){
display: grid;
place-items: center start;
padding: 10px 20px 10px 93px;
flex: 1;
margin: 0;
}
#gui .edi_exam .is-layout-flex p:first-child{
font-family: "Figtree", sans-serif;
font-size: 26px;
color: #fff;
background: #e84051;
width: 73px;
height: 100%;
display: grid;
place-items: center;
padding: 0px;
position: absolute;
top: 0;
left: 0;
margin: 0;
}
*/

#gui .edi_exam .blog figure{
border: solid 1px #ddd;
position: relative;
}
/*
#gui .edi_exam .blog figure:hover{
top: -2px;
}
*/

@media screen and (max-width: 1000px) {
.edi_exam .box{
padding: 15px 30px 20px;
}
.edi_exam .box h2{
left: 25px;
}
.edi_exam .wp-block-image .alignright{
width: 27vw;
min-width: 170px;
margin: 0 0 15px 15px;
}
#gai_exam .wp-block-image .alignright{
width: 16vw;
min-width: 130px
}
}
@media screen and (max-width: 650px) {
.edi_exam .wp-block-table td, .wp-block-table th{
display: block;
width: auto;
padding: 15px 15px 13px;
}
.edi_exam .wp-block-table td:first-child{
width: auto;
padding: 11px 15px 9px;
}
}
@media screen and (max-width: 500px) {
.edi_exam{
margin-top: -15px;
font-size: 14px;
}
.edi_exam .box {
padding: 15px 20px 15px;
border-radius: 21px;
margin-bottom: max(20vw,80px)
}

.edi_exam .box h2 {
left: 20px;
top: -26px;
padding: 10px 23px 8px;
font-size: 15px;
}
.edi_exam .box h2::after {
top: 85%;
}
.edi_exam .wp-block-image .alignright{
width: 100%;
max-width: 220px;
min-width: 0;
margin: 10px auto 0;
float: none;
display: grid;
place-content: center;
}
#gai_exam .wp-block-image .alignright{
width: 16vw;
min-width: 110px;
margin: 0 0 10px 10px;
float: right;
}
.edi_exam h3{
font-size: 19px;
letter-spacing: normal;
margin: 25px 0 15px;
}
.edi_exam h4{
font-size: 19px;
letter-spacing: normal;
margin: 25px 0 15px;
}


/*
#gui .edi_exam .is-layout-flex p:nth-of-type(2){
padding: 10px 15px 10px 75px;
}
#gui .edi_exam .is-layout-flex p:first-child{
font-size: 24px;
width: 60px;
}
*/
#gui .edi_exam .blog{
flex-wrap: wrap;
}
#gui .edi_exam .blog figure{
width: calc(50% - 6px);
}

.edi_exam p.bbb{
font-size: 15px;
line-height: 28px;
padding: 15px 18px 14px;
margin: 20px 0;
}
.edi_exam p{
line-height: 26px;
margin: 10px 0 15px 3px;
}

}
@media screen and (max-width: 430px) {
.edi_exam{
padding: 0 20px;
}
}


/*-------------------------------------------------------------------------

診療科目

--------------------------------------------------------------------------*/
#kmk{
position: relative;
z-index: 5;
}
#kmk .int{
max-width: 597px;
margin: auto;
padding: 26px 30px 67px;
color: #454544;
}
#kmk .int div{
display: flex;
align-items: start;
margin-bottom: 6px;
}
#kmk .int div .le{
width: 100px;
text-align: center;
box-sizing: border-box;
padding: 5px 5px 3px;
border-radius: 14px;
background-color: #ffef8f;
font-size: 15px;
display: grid;
place-content: center;
}
#kmk .int div .ri{
flex: 1;
padding: 5px 0 3px 30px;
font-size: 15px;
font-weight: 500;
}
#kmk .int div .ri span{
display: inline-block;
}
#kmk .int div .ri a{
color: #454544;
display: inline-block;
transition: 0.5s;
}
#kmk .int div .ri a:hover{
color: #e7858f;
}
#kmk .edi_exam .box:last-of-type{
margin-bottom: 62px;
}

#kmk .b_pd{
padding-bottom: 40px;
}
@media screen and (max-width: 1230px) {
#kmk .int{
padding: 0px 30px 67px;
margin-top: -50px;
}
}
@media screen and (max-width: 800px) {
#kmk .int{
margin-top: -6.25vw;
}
}
@media screen and (max-width: 430px) {
#kmk .int{
padding: 0px 20px 30px;
margin-top: 0;
}
#kmk .int div .le{
width: 90px;
}
#kmk .int div .ri{
padding: 5px 0 3px 15px;
}
}

#kmk.act{
padding: 0 15px 70px;
}

#kmk .fl{
padding: 60px 0 20px;
display: flex;
flex-wrap: wrap;
max-width: 1190px;
margin: auto;
}

#kmk .fl article{
width: 25%;
box-sizing: border-box;
border-right: dashed 2px #aac8d5;
padding: 0 40px;
margin: 20px 0;
position: relative;
display: flex;
flex-direction: column;
justify-content: space-between;
}
#kmk .fl article:nth-child(4n){
border-right: none;
}
#kmk .fl article:nth-of-type(5)::before{
position: absolute;
top: -19px;
left: 0;
width: calc(400% + 8px);
border-top: dashed 2px #aac8d5;
display: block;
content: "";
}

#kmk .fl article p.num{
font-family: "Figtree", sans-serif;
font-size: 29px;
line-height: 100%;
font-weight: 500;
color: #7a7a7a;
max-width: 190px;
margin: auto;
}
#kmk .fl article figure{
width: 100%;
height: auto;
max-width: 160px;
max-height: 123px;
margin: auto;
display: grid;
place-content:center;
}
#kmk .fl article figure img{
height: 100%;
object-fit: contain;
max-height: 123px;
}
#kmk .fl article h4{
text-align: center;
font-size: 19px;
line-height: 31px;
font-weight: 600;
padding: 14px 0 12px;
min-height: 36px;
}
#kmk .fl article h4 span{
display: inline-block;
}
#kmk .fl article p.txt{
color: #454544;
line-height: 28px;
}
#kmk .fl article p.txt span{
display: inline-block;
}


/*--アンダーライン---*/
#kmk .fl article p.txt strong{
display: inline;
position: relative;
font-weight: 500;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}
#kmk .fl article p.txt strong.umi{
text-decoration-color: #b0d4ea;
}
#kmk .fl article p.txt strong.hana{
text-decoration-color: #f4d8dd;
}




#kmk .fl article p.txt a{
transition: 0.5s;
}
#kmk .fl article p.txt a:hover{
color: #e7858f;
}

#kmk .fl article a.plink{
display: block;
text-align: center;
padding: 8px 10px 7px;
width: auto;
font-size: 17px;
color: #fff;
line-height: 130%;
background-color: #aac8d5;
border-radius: 9px;
margin-top: 15px;
transition: 0.5s;
}
#kmk .fl article a.plink:hover{
background-color: #8ab3c6;
}
#kmk .fl article a.plink span{
display: inline-block;
}
#kmk.act p.att.sp{
display: none;
}
#kmk.act p.att{
max-width: 833px;
margin: 7px auto 20px;
box-sizing: border-box;
background-color: #fff;
border-radius: 14px;
padding: 13px 30px 12px;
border: solid 2px #aac8d5;
font-size: 13px;
line-height: 23px;
color: #454544;
}
#kmk.act p.att span{
display: inline-block;
}

@media screen and (max-width: 1230px) {
#kmk .fl article{
padding: 0 2.4vw;
}
}
@media screen and (max-width: 1000px) {
#kmk .fl article{
padding: 0 20px;
}
}
@media screen and (max-width: 900px) {
#kmk.act{
padding: 0 30px 70px;
}
#kmk .fl{
max-width: 800px;
padding-top: 4.4vw;
}
#kmk .fl article{
width: 50%;
margin: 30px 0;
}
#kmk .fl article p.num{
max-width: none;
}
#kmk .fl article:nth-child(odd){
padding: 0 30px 0 0;
}
#kmk .fl article:nth-child(even){
padding: 0 0 0 30px;
border-right: none;
}
#kmk .fl article:nth-of-type(5)::before{
display: none;
}
#kmk .fl article:nth-child(odd)::before{
position: absolute;
top: -29px;
left: 0;
width: calc(200% + 4px);
border-top: dashed 2px #aac8d5;
display: block;
content: "";
}
#kmk .fl article:nth-of-type(1)::before{
display: none;
}
#kmk .fl article figure{
height: 20vw;
}
#kmk .fl article figure img{
max-height: 20vw;
}
#kmk .fl article a.plink{
margin-top: 20px;
}
}
@media screen and (max-width: 600px) {
#kmk.act p.att{
padding: 13px 15px 12px;
}
#kmk .fl article:nth-child(odd){
padding-right:max(4.5vw,20px) ;
}
#kmk .fl article:nth-child(even){
padding-left: max(4.5vw,20px) ;
}
#kmk .fl article h4{
line-height: 26px;
font-size: 17px;
min-height: 0;
}
#kmk .fl article a.plink{
font-size: 16px;
}
}
@media screen and (max-width: 430px) {
#kmk.act {
padding: 0 20px 40px;
}
#kmk .fl{
padding-top:0;
}
#kmk .fl article{
width: 100%;
border-right: none;
margin: 20px 0;
}
#kmk .fl article:nth-child(odd),
#kmk .fl article:nth-child(even){
padding-left: 10px;
padding-right: 10px;
}
#kmk .fl article:nth-child(odd)::before{
width: 100%;
top: -19px;
}
#kmk .fl article::before{
position: absolute;
top: -19px;
left: 0;
width: 100%;
border-top: dashed 2px #aac8d5;
display: block;
content: "";
}
#kmk .fl article p.num{
font-size: 24px;
padding-bottom: 10px;
}
#kmk .fl article figure{
width: fit-content;
height: 12vw;
min-height: 52px;
float: left;
}
#kmk .fl article figure img{
width: auto;
min-width: 60px;
height: 12vw;
min-height: 52px;
object-position: right;
}
#kmk .fl article h4{
height: auto;
min-height: max(12vw,52px);
padding:0 0 0 15px;
display: flex;
flex-wrap: wrap;
align-items: center;
box-sizing: border-box;
text-align: left;
}
#kmk .fl article p.txt{
font-size: 14px;
line-height: 24px;
padding-top: 12px;
}
#kmk.act p.att.pc{
display: none;
}
#kmk.act p.att.sp{
display: block;
margin: 20px auto 0;
margin-top: 20px;
}
#kmk .fl article p.txt a{
display: inline-block;
border-bottom: solid 1px #e7858f;
line-height: 110%;
color: #e7858f;
}
}




/*-------------------------------------------------------------------------

専門外来

--------------------------------------------------------------------------*/
#gai_exam.edi_exam .box:nth-last-of-type(1){
margin-bottom: 40px;
}

#gai{
padding-bottom: 80px;
}

#gai table {
  overflow: hidden;
  margin: 33px auto 0;
  width: 100%;
  max-width: 794px;
  border-collapse: separate;
  border-spacing: 0;
  border: 2px solid #e84051;
  border-radius: 13px;
  background-color: #fff;
  color: #454544;
}
#gai table tr:first-of-type {
  background-color: #f9dadd;
}

#gai table td {
  border: none;
  padding: 10px 25px;
  vertical-align: top;
  border-bottom: dashed 1px #707070;
}
#gai table tr:last-of-type td{
border-bottom: none;
}


#gai table span{
display: inline-block;
	font-weight: 900;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}

@media screen and (max-width: 750px) {
#gai table td {
padding: 10px 15px;
}
}

#gai .slider-wrapper {
padding: 0 30px;
}
@media screen and (max-width: 630px) {
#gai .slider-wrapper {
  width: 100%;
  padding: 0 0 15px;
  box-sizing: border-box;
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 700px;
}
#gai .slider {
  width: 700px;
	flex-wrap: nowrap;
  -webkit-overflow-scrolling: touch;
}
#gai .slider > * {
  -webkit-transform: translateZ(0px);
}
#gai .slider-wrapper::-webkit-scrollbar {
  display: none;
  height: 3px !important;
}
#gai table {
width: calc(100% - 60px);
}
#gai table td {
padding: 10px 20px;
}

#gai{
padding-bottom: 60px;
}
}
@media screen and (max-width: 430px) {
#gai table {
width: calc(100% - 40px);
}
}

/*-------------------------------------------------------------------------

院長・スタッフ

--------------------------------------------------------------------------*/
#staff .fl{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#staff.edi_exam p.des{
margin-bottom: 30px;
}
#staff .whole{
width: calc(100% - 24px);
border: solid 2px #e84051;
border-radius: 13px;
margin-bottom: 30px;
position: relative;
}
#staff .whole::after{
display: block;
content: "";
width: 115px;
height: 100%;
position: absolute;
top: 0;
left: 0;
z-index: -1;
background-color: #fffbf3;
}
#staff .whole div{
letter-spacing: -0.4rem;
border-bottom: dashed 1px #707070;
}
#staff .whole div:nth-last-child(1){
border: none;
}
#staff .whole div:nth-of-type(1){
border-bottom: dashed 1px #707070;
}
#staff .whole div p{
letter-spacing: normal;
display: inline-block;
box-sizing: border-box;
vertical-align: top;
padding: 10px 15px;
margin: 0;
}
#staff .whole div p:nth-of-type(1){
width: 115px;
}
#staff .whole div p:nth-of-type(2){
width: calc(100% - 115px);
}
#staff .whole div p span{
display: inline-block;
	font-weight: 900;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}
@media screen and (max-width: 1000px) {
#staff .whole{
width: calc(100% - 15px);
margin-bottom: 20px;
}
}
@media screen and (max-width: 770px) {
#staff .whole div p{
padding: 10px;
font-size: 14px;
}
#staff .whole::after,
#staff .whole div p:nth-of-type(1) {
width: 105px;
}
#staff .whole div p:nth-of-type(2){
width: calc(100% - 105px);
}

}
@media screen and (max-width: 700px) {
#staff .whole{
width: 100%;
}
#staff .whole::after,
#staff .whole div p:nth-of-type(1) {
width: 115px;
}
#staff .whole div p:nth-of-type(2){
width: calc(100% - 115px);
}
#staff .whole div:nth-last-of-type(1){
border-bottom: none;
}
}
@media screen and (max-width: 500px) {
#staff.edi_exam p.des{
margin-bottom: 20px;
}
#staff .whole::after,
#staff .whole div p:nth-of-type(1) {
width: 93px;
}
#staff .whole div p:nth-of-type(2){
width: calc(100% - 93px);
}
}

/*-------------------------------------------------------------------------

お知らせ

--------------------------------------------------------------------------*/
#news{
width: auto;
padding: 25px 30px 70px 30px;
position: relative;
}
#news .imp{
position: relative;
background-color: #fff;
max-width: 820px;
min-height: 150px;
margin: auto;
box-sizing: border-box;
border-radius: 32px;
padding: 27px 35px 27px 147px;
}
#news .imp h4{
width: 85px;
height: 85px;
border-radius: 100px;
background-color: #e84051;
box-sizing: border-box;
padding: 7px 5px 5px;
position: absolute;
left: 35px;
top: 48px;
color: #fff;
font-weight: 500;
font-size: 14px;
line-height: 130%;
text-align: center;
display: grid;
place-content: center;
}
#news .imp h4 span{
display: block;
}
#news .imp .ko1{
width: 54px;
position: absolute;
left: 23px;
top: 11px;
}
#news .imp .ko2{
width: 50px;
position: absolute;
left: 80px;
top: 8px;
}

#news .imp p{
font-size: 15px;
line-height: 28px; 
color: #454544;
}
#news .imp p.clearfix{
margin-bottom: 10px;
}
#news .imp h3.red{
display: block;
font-size: 16.7px;
font-weight: 500;
line-height: 160%;
color: #e84051;
padding-bottom: 8px;
}
#news .imp .inva{
margin: 0;
padding: 0;
}

#news .imp p.inva strong{
display: inline-block;
font-weight: 500;
text-decoration: underline;
text-decoration-color: #fcff00;
text-decoration-thickness: 10px;
text-decoration-skip-ink: none;
text-underline-offset: -4px;
}


#news .cnt{
max-width: 755px;
margin: auto;
padding: 38px 10px 0;
}
#news .cnt.post_blog{
padding-top: 0;
}
#news .cnt.post_news .po1{
display: none;
}
#news .cnt a{
display: block;
letter-spacing: -0.4rem;
border-bottom: dashed 2px #b5b5b5;
padding: 15px 10px 11px;
transition: 0.5s;
}
#news .cnt a p{
letter-spacing: normal;
display: inline-block;
vertical-align: top;
line-height: 22px;
box-sizing: border-box;
transition: 0.5s;
}
#news .cnt a p.tt{
width: calc(100% - 110px);
color: #454544;
}
#news .cnt a p.ymd{
width: 110px;
color: #c18415;
font-family: "Zen Maru Gothic", serif;
}
#news .cnt a:hover{
border-bottom: dashed 2px #e7858f;
}
#news .cnt a:hover p.tt{
margin-left: -8px;
}


@media screen and (max-width: 1230px) {
#news{
padding: 0 30px 70px 30px;
}
}

@media screen and (max-width: 700px) {
#news{
padding: 20px 30px 70px 30px;
}
#news .imp{
padding: 45px 32px 25px 32px;
margin-top: -15px;
}
#news .imp h4{
width: 140px;
height: 49px;
left: 20px;
top: -21px;
display: block;
}
#news .imp h4 span{
display: inline;
}
#news .imp .ko1{
width: 42px;
position: absolute;
left: 1px;
top: -44px;
}
#news .imp .ko2{
width: 37px;
position: absolute;
left: 45px;
top: -51px;
}
#news .cnt{
padding-top: 25px;
}
#news .cnt a p.tt{
width: calc(100% - 90px);
}
#news .cnt a p.ymd{
width: 90px;
}
#news .imp h3.red{
font-size: 16px;
padding-bottom: 5px;
}
}

@media screen and (max-width: 430px) {
#news{
padding: 40px 20px 70px 20px;
}
#news .imp{
padding: 45px 20px 25px 20px;
}
#news .cnt a{
padding: 13px 5px;
}
#news .cnt a p.tt{
display: block;
width: 100%;
}
#news .cnt a p.ymd{
display: block;
width: 100%;
padding-bottom: 5px;
}
#news .cnt a:hover p.tt{
margin-left: 0px;
}
#news .imp h4{
left: 11px;
}
#news .imp .ko1{
left: -3px;
}
#news .imp .ko2{
left: 42px;
}
}

#news_dt h1.ttl{
  font-size: 24px;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: 0.03rem;
  color: rgb(232, 64, 81);
  margin: 37px 0px 25px 3px;
  font-family: "Zen Maru Gothic", serif;
}
#news_dt p.ymd{
  position: absolute;
  top: -33px;
  left: 30px;
  font-size: 19px;
  font-weight: 500;
  padding: 13px 29px;
  color: rgb(255, 255, 255);
  background-color: rgb(232, 64, 81);
  border-radius: 10px;
  font-family: "Zen Maru Gothic", serif;
}
#news_dt p.ymd::after {
  content: url("images/h2.jpg");
  position: absolute;
  width: 50px;
  top: 79%;
  left: 53px;
  z-index: -1;
}
#news_dt .box{
margin-bottom: 0px;
}

#news.n_dt{
padding-bottom: 120px;
}
#news_dt.edi_exam .box h2{
position: relative;
background-color: #fff;
padding: 12px 3px 10px;
margin: 37px 0 20px;
color: #333;
top: auto;
left: auto;
border-radius: 0;
font-size: 22px;
border-top: dotted 2px #777;
border-bottom: dotted 2px #777;
}
#news_dt.edi_exam .box h2::after{
display: none;
}

#news_dt.edi_exam h4{
font-size: 18px;
margin: 30px 3px 15px;
color: #454544;
border-bottom: none;
}
#news_dt.edi_exam h5{
font-size: 18px;
margin: 20px 3px;
padding-left: 0;
}
#news_dt.edi_exam h5::before{
display: none;
}
#news_dt.edi_exam h6{
font-size: 17px;
margin: 20px 3px;
}

#news_dt.edi_exam strong {

  display: inline;
  font-weight: 600;
  text-decoration-line: underline;
text-decoration-color: #ecb6bcb2;
text-decoration-thickness: 9px;
text-decoration-skip-ink: none;
text-underline-offset: -3px;
}
#news_dt.edi_exam ul{
padding-left: 3px;
}
#news_dt.edi_exam li{
border-bottom: none;
position: relative;
padding-left: 1rem;
text-indent: -1rem;
}
#news_dt.edi_exam li::before{
display: inline-block;
content: "";
width: 9px;
height: 9px;
margin-right: 3px;
border: solid 1px #454544;
border-radius: 50px;
background-color: #454544;
}
#news_dt.edi_exam li:first-child{
border-top: none;
}

#news_dt.edi_exam a{
color: #454544;
transition: 0.5s;
text-decoration: underline;
text-decoration-style: dotted;
text-decoration-color: #acacac;
text-decoration-thickness: 2px;
text-underline-offset: 4px;
}
/*
#news_dt.edi_exam a:hover{
opacity: 0.7;
}
*/

#news_dt.edi_exam .wp-block-button__link{
background-color: #e84051;
margin: 20px 0;
color: #fff;
text-decoration: none;
padding: 11px 35px 9px;
width: auto;
max-width: 300px;
}
#news_dt.edi_exam .wp-block-button__link:hover{
color: #fff;
background-color: #ee7b89;
}

.has-vivid-red-color{color: #e84051!important;}
.has-vivid-green-cyan-color{color: #59a848!important;}
.has-light-green-cyan-color{color: #98bf9c!important;}
.has-vivid-cyan-blue-color{color: #4c88aa!important;}
.has-pale-cyan-blue-color {color: #a6c1d2!important;}
.has-cyan-bluish-gray-color {color: #aaa !important;}
.has-luminous-vivid-orange-color {color: #e67d34!important;}
.has-luminous-vivid-amber-color {color: #e3c162!important;}
.has-pale-pink-color{color: #e7858f!important;}
.has-vivid-purple-color {color: #9473b3!important;}

.wp-block-separator{
border-top: 2px dashed #d7d7d7;
margin: 25px 0;
}

@media screen and (max-width: 1000px) {
#news_dt p.ymd{
left: 25px;
}
}
@media screen and (max-width: 500px) {
#news_dt p.ymd{
left: 20px;
top: -26px;
padding: 7px 23px;
font-size: 15px;
}
#news_dt h1.ttl{
font-size: 20px;
letter-spacing: normal;
margin: 25px 0 15px;
}
#news_dt.edi_exam .box h2{
padding: 9px 3px 8px;
margin: 25px 0 15px;
font-size: 18px;
}
#news_dt.edi_exam h4{
font-size: 16px;
margin: 18px 3px 10px
}
#news_dt.edi_exam h5{
font-size: 16px;
margin: 20px 3px;
}
#news_dt.edi_exam h6{
font-size: 15px;
margin: 20px 3px;
}
.edi_exam .wp-block-list{
margin-bottom: 20px;
}
#news_dt.edi_exam li{
padding-top: 3px;
padding-bottom: 3px;
}
.wp-block-separator {
margin: 20px 0;
}
}

/*-----------------------------------------
自費診療ボタン
------------------------------------------*/

#jihis {
	text-align: center;
	padding: 30px 0 0 0;
}

#jihis a {
	display: inline-block;
	padding: 5px 20px;
	border: 1px solid #e84051;
	color: #e84051;
	font-size: 20px;
	background-color: #fff;
}

/*

font-family: "Kaisei Decol", serif;

font-family: "Figtree", sans-serif;
	
font-family: "Zen Kaku Gothic New", sans-serif;
	
font-family: "Zen Maru Gothic", serif;

font-family: "Damion", cursive;
font-weight: 400;
*/

