<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";

body {
	text-align:center;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #544337;
	font-size: 17px;
	font-weight: normal;
	letter-spacing: .1em;
	line-height: 2.2em;
	padding: 0;
	margin: 0;
	background: #f9fdef;
	-webkit-text-size-adjust: 100%;
}

div,
dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,form,fildset,p,blockquote{
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	font-style:normal;
}

img{
    max-width: 100%;
    height: auto;
    width: auto\9; /* ie8 */
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	vertical-align: top;
}
table {
    font-size:inherit;
    font:100%;
	border-collapse: collapse;
}

address{
	font-style:normal;
}

ul{
	list-style:none;
}
ul img{
	vertical-align: top;
	margin:0;
}

a{
	color: #544337;
	text-decoration:none;
	outline:0;
	-webkit-transition: color 0.4s, background-color 0.4s;
	-moz-transition: color 0.4s, background-color 0.4s;
	transition: color 0.4s, background-color 0.4s;
}
a:hover{
	-webkit-transition: color 0.2s, background-color 0.2s;
	-moz-transition: color 0.2s, background-color 0.2s;
	transition: color 0.2s, background-color 0.2s;
}

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/*&lt;group=style&gt;*/
.fw_bold{font-weight: bold;}
.fw_normal{font-weight: normal;}	
/*&lt;/group&gt;*/

/*&lt;group=text_align&gt;*/
.txt_al_l{text-align:left;}
.txt_al_r{text-align:right;}
.txt_al_c{text-align:center;}
.sp_txt_l{text-align:center;}
/*&lt;/group&gt;*/

/*&lt;group=float&gt;*/
.flt_l{float:left;}
.flt_r{float:right;}	
/*&lt;/group&gt;*/

.blocklink,
.blocklink_out,
.blocklink_ank{
	cursor:pointer;
}

.red, .red a {color: #e47666;}

.img_max {
	width: 100% !important;
	max-width: initial !important;
}
.change_img img {margin-left: auto; margin-right: auto;}

/* スマホで電話をかけるボタン：画像対応 */
.sp_tel_btn {
	position: relative;
}
.sp_tel_btn img {
	position: relative;
	z-index: 0;
}
.sp_tel_btn span,
.sp_tel_btn a {
	display: block;
}
.sp_tel_btn a {
	content: "";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}

.ank_adjust {
    /*padding-top: 150px;
    margin-top: -150px;*/
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
body {
	font-size: 15px;
	letter-spacing: .05em;
	line-height: 2.0em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/* スマホのときはビューポートを基準にサイズ調節する */
/* スマホ時：emまたは%で指定する */
/* スマホ以外でビューポート基準にするときは、その都度「vw」で指定する */
body {
	font-size: 4.1vw;
	letter-spacing: normal;
	line-height: 1.8em;
}
/*&lt;group=text_align&gt;*/
.sp_txt_l{text-align:left;}	
/*&lt;/group&gt;*/
}



/*共通
---------------------------------------------------------*/
.max_width {
	width: 94%;
	padding: 0 3%;
	margin-left: auto;
	margin-right: auto;
}
.max_1500 {
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	text-align: left;
}
.w1500 {
	width: 94%;
	padding: 0 3%;
	max-width: 1500px;
	margin: 0 auto;
	text-align: left;
}
.w1400 {
	width: 94%;
	padding: 0 3%;
	max-width: 1400px;
	margin: 0 auto;
	text-align: left;
}
.w1390 {
	width: 94%;
	padding: 0 3%;
	max-width: 1390px;
	margin: 0 auto;
	text-align: left;
}
.w1370 {
	width: 94%;
	padding: 0 3%;
	max-width: 1370px;
	margin: 0 auto;
	text-align: left;
}
.w1340 {
	width: 94%;
	padding: 0 3%;
	max-width: 1340px;
	margin: 0 auto;
	text-align: left;
}
.w1330 {
	width: 94%;
	padding: 0 3%;
	max-width: 1330px;
	margin: 0 auto;
	text-align: left;
}
.w1310 {
	width: 94%;
	padding: 0 3%;
	max-width: 1310px;
	margin: 0 auto;
	text-align: left;
}
.w1300 {
	width: 94%;
	padding: 0 3%;
	max-width: 1300px;
	margin: 0 auto;
	text-align: left;
}
.w1280 {
	width: 94%;
	padding: 0 3%;
	max-width: 1280px;
	margin: 0 auto;
	text-align: left;
}
.w1260 {
	width: 94%;
	padding: 0 3%;
	max-width: 1260px;
	margin: 0 auto;
	text-align: left;
}
.w1220 {
	width: 94%;
	padding: 0 3%;
	max-width: 1220px;
	margin: 0 auto;
	text-align: left;
}
.w1200 {
	width: 94%;
	padding: 0 3%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: left;
}
.w1180 {
	width: 94%;
	padding: 0 3%;
	max-width: 1180px;
	margin: 0 auto;
	text-align: left;
}
.w1160 {
	width: 94%;
	padding: 0 3%;
	max-width: 1160px;
	margin: 0 auto;
	text-align: left;
}
.w1100 {
	width: 94%;
	padding: 0 3%;
	max-width: 1100px;
	margin: 0 auto;
	text-align: left;
}
.w900 {
	width: 94%;
	padding: 0 3%;
	max-width: 900px;
	margin: 0 auto;
	text-align: left;
}
.ft_maru {
	font-family: dnp-shuei-mgothic-std,sans-serif;
	font-weight: 600;
	font-style: normal;
}
.ft_europa {
	font-family: europa,sans-serif;
	font-weight: 400;
	font-style: normal;
}
.ft_europa_b {
	font-family: europa, sans-serif;
	font-weight: 700;
	font-style: normal;
}
.fs15 {
	font-size: 90%;
	letter-spacing: .04em;
	line-height: 1.8em;
}
.orange, .orange a {color: #e47666;}

.com_txt_link {
	text-decoration: underline;
}
.com_txt_link:hover {
	text-decoration: none;
	color: #7dbb28;
}

.bg_hover_li li {
	-webkit-transition: background-color 1.0s;
	-moz-transition: background-color 1.0s;
	transition: background-color 1.0s;
}
.bg_hover_li li:hover {
	-webkit-transition: background-color 0.4s;
	-moz-transition: background-color 0.4s;
	transition: background-color 0.4s;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.fs15 {
	letter-spacing: normal;
}
}



/*wrapper
---------------------------------------------------------*/
#wrapper{
	overflow: hidden;
}



/*ヘッダー
---------------------------------------------------------*/
header {
	position: absolute;
	z-index: 20;
	left: 0;
	top: 0;
	width: 100%;
	box-sizing: border-box;
	padding: 40px 3% 0;
	text-align: left;
	color: #fff;
	font-size: 75%;
	font-weight: normal;
	letter-spacing: .1em;
	line-height: 1.6em;
	overflow: hidden;
}
header a {
	color: #fff;
}
header img {
	display: block;
}
header .h_logo {
	width: 30%;
	float: left;
}
header .h_contact {
	width: 66%;
	max-width: 780px;
	display: flex;
    justify-content: space-between;
    align-items: center;
	float: right;
}
header .h_logo h1 {
	font-weight: normal;
	letter-spacing: .15em;
	margin-top: 1.5em;
}
header .h_contact .h_tel {
	width: 30%;
	max-width: 227px;
}
header .h_contact .h_web {
	width: 29%;
	max-width: 225px;
}
header .h_contact .h_time {
	width: 38%;
	max-width: 288px;
}

header .h_contact .h_tel dt {
	font-size: 110%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-bottom: 1.0em;
}
header .h_contact .h_tel dt span{
    font-size:100%;
    letter-spacing: normal;
    font-weight: normal;
}
header .h_contact .h_tel a {
	display: block;
	margin-top: 1.0em;
	text-decoration: underline;
}
header .h_contact .h_tel a:hover {
	color: #affd05;
}

header .h_contact .h_web a {
	display: block;
	position: relative;
}
header .h_contact .h_web a::before {
	content: "";
	position: absolute;
	width: 80%;
	height: 25px;
	background: url("../images/web24@2x.png") no-repeat center top;
	background-size: contain;
	left: 0;
	right: 0;
	top: 0;
	-webkit-transform: translateY(-40%);
	transform: translateY(-40%);
	margin: auto;
    transition: all 0.4s;
}
header .h_contact .h_web a:hover::before {
	transform: translateY(-50%);
    transition: all 0.2s;
}

header .h_contact .h_time dd {
	margin-top: .8em;
}

/*type_visit*/
header .h_contact.type_visit {
    width: 61%;
	max-width: 555px;
}
header .h_contact.type_visit .h_tel {
	width: 44.5%;
    max-width:251px;
}
header .h_contact.type_visit .h_time {
	width: 52.5%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
header {
	padding: 3% 2% 0;
	letter-spacing: .05em;
}

header .h_logo h1 {
	letter-spacing: normal;
	margin-top: 1.0em;
}

header .h_contact .h_tel dt {
	margin-bottom: .5em;
	letter-spacing: .05em;
}

header .h_contact .h_time dd {
	letter-spacing: normal;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
header {
	padding: 4% 4% 0;
	font-size: 70%;
	letter-spacing: normal;
	line-height: 1.6em;
}
header .h_logo {
	width: 85%;
}
header .h_contact {
	display: none;
}

header .h_logo div {
	width: 75%;
}
header .h_logo h1 {
	letter-spacing: normal;
	margin-top: 1.0em;
}
}



/*メインイメージ
---------------------------------------------------------*/
.m_img_area {
	width: 100%;
	box-sizing: border-box;
	padding: 10px 10px 0;
	background: url("../images/m_bg@2x.png") repeat-x center bottom;
	background-size: auto 100%;
	position: relative;
	z-index: 10;
}
.m_img_area .m_img {
	position: relative;
	z-index: 0;
	background: #666;
}

.contentpage .m_img_area .m_img {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.contentpage .m_img_area .m_img::before {
	content: "";	/* 高さ */
	display: block;
	padding-top: 460px;
}
.contentpage .m_img_area .m_img::after {
	content: "";	/*黒透過*/
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #000;
	opacity: 0.3;
}
.contentpage .m_img_area .m_img .m_title_txt {
	position: absolute;
	z-index: 1;
	left: 0;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-5%);
	transform: translateY(-5%);
	margin: auto;
	text-align: center;
	color: #fff;
	font-weight: bold;
}
.contentpage .m_img_area .m_img .m_title1 {
	width: 60%;
	margin: 0 auto;
}
.contentpage .m_img_area .m_img .m_title2 {
	font-size: 150%;
	letter-spacing: .25em;
	line-height: 1.2em;
	margin-top: 1.0em;
}
.contentpage .m_img_area .m_img img {
	display: block;
	margin: auto;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_img_area {
	padding: 7px 7px 0;
}

.contentpage .m_img_area .m_img::before {
	padding-top: 35%;	/* 高さ */
}
.contentpage .m_img_area .m_img .m_title_txt {
	-webkit-transform: none;
	transform: none;
}
.contentpage .m_img_area .m_img .m_title2 {
	font-size: 2.2vw;
	margin-top: .5em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_img_area {
	padding: 7px 7px 0;
	position: static;
}

.contentpage .m_img_area .m_img::before {
	padding-top: 55%;	/* 高さ */
}
.contentpage .m_img_area .m_img .m_title_txt {
	top: 52%;
	-webkit-transform: none;
	transform: none;
}
.contentpage .m_img_area .m_img .m_title1 {
	width: 90%;
	margin: 0 auto;
}
.contentpage .m_img_area .m_img .m_title2 {
	font-size: 100%;
	letter-spacing: .15em;
	margin-top: .5em;
}
}



/*メインナビ
---------------------------------------------------------*/
.m_nav_box {
	position: relative;
	z-index: 20;
	width: 100%;
	box-sizing: border-box;
	padding: 50px 2% 70px;
}
.m_nav_box .m_logo {
	position: absolute;
	left: 5%;
	top: 0;
	-webkit-transform: translateY(-55%);
	transform: translateY(-55%);
	width: 14%;
	max-width: 193px;
}
.m_nav_area {
	width: 80%;
	max-width: 1150px;
	margin-left: auto;
	margin-right: 0;
	position: relative;
}
.m_nav {
	width: 100%;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.m_nav img {
	display: block;
	margin: auto;
}
.m_nav &gt; li {
	position: relative;
}
.m_nav &gt; li:nth-child(1) {width: 10%;}
.m_nav &gt; li:nth-child(2) {width: 17%;}
.m_nav &gt; li:nth-child(3) {width: 17%;}
.m_nav &gt; li:nth-child(4) {width: 17%;}
.m_nav &gt; li:nth-child(5) {width: 13%;}
.m_nav &gt; li:nth-child(6) {width: 12%;}
.m_nav &gt; li:nth-child(7) {width: 13%;}
.m_nav &gt; li &gt; a {
	display: block;
	width: 100%;
	position: relative;
}
.m_nav &gt; li &gt; a::before {
	content: "";	/*現在地表示*/
	position: absolute;
	width: 100%;
	height: 0;
	left: 0;
	top: calc(100% + 10px);
	background: url("../images/now@2x.png") no-repeat center top;
	background-size: auto 12px;	/*揃える*/
	opacity: 0;
-webkit-transition: all 1.0s;
-moz-transition: all 1.0s;
transition: all 1.0s;
}
.m_nav &gt; li.select &gt; a::before,
.m_nav &gt; li &gt; a:hover::before {
-webkit-transition: all 0.4s;
-moz-transition: all 0.4s;
transition: all 0.4s;
	height: 12px;	/*揃える*/
	opacity: 1;
}
.m_nav &gt; li &gt; a::after {
	content: "";	/*罫線*/
	position: absolute;
	width: 1px;
	height: 100%;
	background: #544337;
	left: 0;
	top: 0;
}
.m_nav &gt; li:nth-child(1) &gt; a::after {
	display: none;
}

/* アコーディオンメニュー */
.in_menu {
	display: none;
	position: absolute;
	z-index: 999;
	width: 100%;
	left: 0;
	top: calc(100% + 10px);
	background: rgba(255,255,255,0.95);
	border-top: solid 2px #8bd222;
}
/*上に表示する場合*/
.m_nav_area.open_top .in_menu {
	top: auto;
	bottom: calc(100% + 10px);
	border-top: none;
	border-bottom: solid 2px #8bd222;
}
.in_menu ul li:nth-child(even) {
	background: rgba(139,210,34,0.1);
}
.in_menu a {
	display: block;
	font-size: 90%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: 1.2em 3%;
	padding-right: 1.5em;
	position: relative;
}
.in_menu .type2 a {
    color: #fff;
    /*background: linear-gradient(to bottom,  rgba(136,188,60,1) 0%,rgba(160,201,99,1) 100%);*/
    background: linear-gradient(to bottom,  rgba(109,149,109,1) 0%,rgba(145,175,145,1) 100%); 
    border-right: 1px solid #fff;
}
.in_menu .type2.col_price a{
    background: linear-gradient(to bottom,  rgba(127,105,80,1) 0%,rgba(159,143,124,1) 100%);
}
.in_menu a::before {
	font-family: 'fontello';
	content: '\e801';
	font-size: 130%;
	font-weight: normal;
	position: absolute;
	right: .5em;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0.6;
}
.in_menu .type2 a::before {
	opacity: 1;
}
.in_menu li:hover a {
	background: rgba(224,230,49,0.2);
}
.in_menu li.type2.col_price:hover a{
    background: linear-gradient(to bottom,  rgba(95,68,36,1) 0%,rgba(127,105,80,1) 100%);
}
.in_menu li.type2:hover a {
    background: linear-gradient(to bottom,  rgba(72,122,72,1) 0%,rgba(109,149,109,1) 100%);
    /*background: linear-gradient(to bottom,  rgba(109,173,16,1) 0%,rgba(138,189,64,1) 100%);*/
}

/*縦メニュー*/
.in_menu.in_long {
	width: 14em;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
/*横メニュー*/
.in_menu.in_width ul {
	display: -webkit-flex;
	display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	text-align: left;
}
.in_menu.in_width ul li {
	width: 20%;
}
.in_menu.in_width a {
	height: 2.0em;
}
.in_menu.in_width span {
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	display: block;
	padding-left: 1.0em;
	padding-right: 2.0em;
}

/* 1500px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1500px) {
/*縦メニュー*/
.in_menu.in_long {
	width: 16vw;
}
}

/* 1300px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1410px) {
.m_nav img {
	height: 1.6vw;
}	
.in_menu a {
	letter-spacing: normal;
	font-size: 1.2vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_nav_box {
	padding: 5% 0 6%;
}
.m_nav_box .m_logo {
	left: 1.5%;
	width: 11%;
	-webkit-transform: translateY(-20%);
	transform: translateY(-20%);
}
.m_nav_area {
	width: 87%;
}

.m_nav img {
	height: 1.9vw;
}
.m_nav &gt; li &gt; a::before {
	background-size: auto 10px;	/*揃える*/
}
.m_nav &gt; li.select &gt; a::before,
.m_nav &gt; li &gt; a:hover::before {
	height: 10px;	/*揃える*/
}
.m_nav &gt; li &gt; a::after {
	opacity: 0.4;	/*罫線*/
}

/* アコーディオンメニュー */
.in_menu a {
	font-size: 1.5vw;
}
/*縦メニュー*/
.m_nav_box .in_menu.in_long {
	left: 35%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
/*横メニュー*/
.in_menu.in_width ul li {
	width: 33.3333%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_nav_box {
	padding: 5% 0;	/*ロゴ表示のために残す*/
}
.m_nav_box .m_logo {
	left: 5%;
	-webkit-transform: translateY(-70%);
	transform: translateY(-70%);
	width: 20%;
}
.contentpage .m_nav_box .m_logo {
	left: 3%;
	width: 16%;
}
.m_nav_area {
	display: none !important;
}
}



/*スクロールメニュー
---------------------------------------------------------*/
#scl_header {
	display: none;
	position: fixed;
	z-index: 100;
	left: 0;
	top: 0;
	width: 100%;
	background: rgba(229,235,222,0.9);
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}
#scl_header.is-show {
	display: block;
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
   	-webkit-animation: sclAnimation 1.0s;
    -moz-animation: sclAnimation 1.0s;
    -o-animation: sclAnimation 1.0s;
    -ms-animation: sclAnimation 1.0s;
    animation: sclAnimation 1.0s;
}
#scl_header .scl_flex {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
}
#scl_header .scl_flex .scl_nav_area {
	width: 72%;
	max-width: 1080px;
	box-sizing: border-box;
	padding: 0 1%;
	position: relative;
	margin-bottom: 1.0em;
}
#scl_header .scl_flex .scl_contact {
	width: 28%;
	max-width: 420px;
	background: #eebf2f;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
#scl_header .scl_flex .scl_contact img {
	display: block;
	margin: auto;
}
#scl_header .scl_contact .scl_tel {
	width: 70%;
	box-sizing: border-box;
	padding: 0 4%;
	text-align: left;
}
#scl_header .scl_contact .scl_tel dt {
	color: #fff;
	font-size: 80%;
	font-weight: bold;
	letter-spacing: .25em;
	line-height: 1.2em;
	margin-bottom: .4em;
}
#scl_header .scl_contact .scl_web {
	width: 30%;
	background: #fff;
}
#scl_header .scl_contact .scl_web a {
	display: block;
	background-color: #79c2dc;
	background-image: url("../images/corner1@2x.png"), url("../images/scl_web_bg@2x.png");
	background-repeat: no-repeat, no-repeat;
	background-position: right bottom, right center;
	background-size: 9px 9px, auto 100%;
	text-align: center;
	padding: 20px 10%;
}

/*type_visit*/
#scl_header .scl_flex .scl_contact.type_visit {
	display: block;
}
#scl_header .scl_flex .scl_contact.type_visit .scl_tel {
	width: 100%;
	padding: 0;
}

/* 1200px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1200px) {	
#scl_header .scl_contact .scl_tel dt {
	letter-spacing: .1em;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#scl_header .scl_flex .scl_nav_area {
	padding: 0;
}
#scl_header .m_nav img {
	height: 1.6vw;
}
	
#scl_header .scl_contact .scl_tel dt {
	letter-spacing: .05em;
	margin-bottom: .8em;
}
#scl_header .scl_contact .scl_web a {
	padding: 2.0vw 10%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#scl_header {
	display: none !important;
}
}

/* スクロールメニューアニメーション */
@-webkit-keyframes sclAnimation {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@-moz-keyframes sclAnimation {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@-o-keyframes sclAnimation {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}
@keyframes sclAnimation {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}



/*スマホメニュー
---------------------------------------------------------*/
.drawer-nav {
	border: solid 5px #7dbb28;
}
.drw_inbox {
	padding: 8% 4%;
	text-align: center;
}
.drw_white {
	padding-top: 8%;
}
.drw_white .drw_logo {
	width: 60%;
	margin: 0 auto 8%;
}
.drw_white .drw_index {
	border: solid 4px #d1e7b4;
	color: #7dbb28;
	font-size: 90%;
	font-weight: bold;
	letter-spacing: .3em;
	line-height: 1.4em;
	padding: .5em 0;
}
.drw_white .drw_menu {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	margin-bottom: 8%;
}
.drw_white .drw_menu li {
	width: 49%;
	border-bottom: solid 1px #96908e;
}
.drw_white .drw_menu li a {
	display: block;
	font-size: 85%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.2em;
	height: 3.0em;
	position: relative;
}
.drw_white .drw_menu li span {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
	-webkit-transform: translateY(-45%);
	transform: translateY(-45%);
}
.drw_white .drw_news {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	text-align: left;
}
.drw_white .drw_news li {
	width: 50%;
}
.drw_white .drw_news li a {
	display: block;
	background: #51b091;
	color: #fff;
	font-size: 80%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.2em;
	padding: 1.0em 6%;
	position: relative;
}
.drw_white .drw_news li a::before {
	content: "";
	position: absolute;
	width: .6em;
	height: .6em;
	background: url("../images/corner2@2x.png") no-repeat left top;
	background-size: contain;
	opacity: 0.5;
	right: .5em;
	bottom: .5em;
}
.drw_white .drw_news li .ft_europa {
	display: block;
	font-size: 130%;
	letter-spacing: .1em;
	line-height: 1.2em;
	margin-bottom: .5em;
}
.drw_white .drw_news li:nth-child(2) a {background: #769fd4;}

.drw_beige {
	background: #fbf8f0;
	font-size: 90%;
	letter-spacing: .05em;
	line-height: 1.6em;
}
.drw_beige .drw_index {
	font-size: 150%;
	letter-spacing: .2em;
	line-height: 1.2em;
}
.drw_beige .drw_address {
	margin: 6% 0;
}
.drw_beige .drw_address a {
	display: inline-block;
	position: relative;
	padding-right: 1.5em;
}
.drw_beige .drw_address a::before {
	font-family: 'fontello';
	content: '\e801';
	color: #756d57;
	font-size: 140%;
	opacity: 0.85;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.drw_beige .com_timetable {
	margin: 4% 0;
}
.drw_beige .drw_tel {
	width: 90%;
	margin: 8% auto 3%;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-end;
    align-items: flex-end;
}
.drw_beige .drw_tel .com_tel {
	width: 84%;
	text-align: left;
}
.drw_beige .drw_tel .drw_inst {
	width: 10%;
}



/*共通
---------------------------------------------------------*/
#pagebody {
	position: relative;
	z-index: 0;
	max-height: 100%;
	width: 100%;
	background: url("../images/shadow1@2x.png") no-repeat center top;
	background-size: 1500px auto;
}
.bg_white {
	background: #fff;
}
.bg_green {
	background: #E9F8C3;
}

.com_arrow {
	width: 60px;
	position: absolute;
}
.com_arrow::before {
	content: "";	/* 高さ */
	display: block;
	padding-top: 100%;
}
.com_arrow::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	border-radius: 50%;
	border: solid 1px #fff;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
}
.com_arrow i {
	font-size: 20px;
	font-weight: normal;
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	margin: auto;
}
.com_arrow_hov:hover .com_arrow::after {
-webkit-transition: all 0.1s;
-moz-transition: all 0.1s;
transition: all 0.1s;
	width: 120%;
	height: 120%;
	opacity: 0.4;
}

.com_timetable {
	text-align: left;
}
.com_timetable dd {
	line-height: 1.6em;
	padding: .8em 2% 0;
}
.com_timetable .icon-sat {color: #bbb4af;}
.com_timetable .red {color: #d36b51;}

/*
.com_monshin {
	background: #fff url("../images/dl_pdf@2x.png") no-repeat left bottom;
	background-size: 66px auto;
	padding: 13px;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
	text-align: center;
}
.com_monshin img {
	display: block;
	margin: auto;
}
.com_monshin dt {
	width: 39%;
	box-sizing: border-box;
	padding-left: 10%;
	font-size: 150%;
	font-weight: bold;
	letter-spacing: .25em;
	line-height: 1.2em;
}
.com_monshin dd {
	width: 58%;
}
.com_monshin dd a {
	display: block;
	box-sizing: border-box;
	background: #61b3a5;
	padding: 15px 3%;
	border-radius: 50px;
}*/
.com_monshin{
    background: rgba(97,179,165,0.15);
    padding: 25px 3% 17px;
    box-sizing: border-box;
    text-align: center;
}
.com_monshin dt{
    color: #544337;
    font-size:125%;
    font-weight: bold;
    letter-spacing: 0.25em;
    line-height: 1em;
    margin-bottom: .8em;
    text-align: center;
}
.com_monshin dd ul{
    display: flex;
    justify-content: space-between;
}
.com_monshin dd ul li{
    width: 48.5%;    
    text-align: center;
    font-size:130%;
    letter-spacing: 0.25em;
    line-height: 1em;
}
.com_monshin dd ul li a{
    position: relative;
    display: block;
    color: #fff;
    padding: .9em 1em;
    box-sizing: border-box;
    background: #63bccc;
    border-radius: 15px;
}
.com_monshin dd ul li:nth-child(2) a{
    background: #dcbc47;
}
.com_monshin dd ul li a:hover{
    background: #0493ad;
}
.com_monshin dd ul li:nth-child(2) a:hover{
    background: #ce8a00;
}
.com_monshin dd ul li a::before{
    position: absolute;
    display: block;
    content: "";
    background: url(../images/icon_download.svg) no-repeat top right;
    background-size: 100% auto;
    width: 1.6em;
    height: 1.6em;
    top: 50%;
	transform: translateY(-50%);
    right: .7em;
    line-height: 1em;
    letter-spacing: 0;
}

.com_tel dt {
	font-size: 105%;
	font-weight: bold;
	letter-spacing: .25em;
	line-height: 1.2em;
	margin-bottom: 1.2em;
}

.com_web a {
	display: inline-block;
	position: relative;
}
.com_web a::before {
	content: "";	/*24時間*/
	position: absolute;
	width: 40%;
	height: 100%;
	/*right: 5%;*//*小児あり*/
	right: 8.5%;
	top: 0;
	background: url("../images/web24@2x.png") no-repeat center 12%;
	background-size: contain;
-webkit-transition: all 0.4s;
-moz-transition: all 0.4s;
transition: all 0.4s;
}
.com_web a:hover::before {
-webkit-transition: all 0.2s;
-moz-transition: all 0.2s;
transition: all 0.2s;
	-webkit-transform: translateY(-3%);
	transform: translateY(-3%);
}
.com_web a::after {
	content: "";
	position: absolute;
	width: 29px;
	height: 29px;
	background: url("../images/arrow4@2x.png") no-repeat center center;
	background-size: contain;
	right: 3%;
	bottom: 0;
	-webkit-transform: translateY(50%);
	transform: translateY(50%);
}

.com_contact {
	width: 100%;
	max-width: 1030px;
	margin: 0 auto;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.com_contact .com_tel {
	width: 41%;
	max-width: 405px;
	padding-top: 1.0em;
}
.com_contact .com_web {
	width: 55%;
	max-width: 553px;
}
/*type_visit*/
.com_contact.type_visit {
	display: block;
    max-width: 422px;
}
.com_contact.type_visit .com_tel {
    width: 100%;
	max-width: 422px;
}
.com_contact.type_visit .com_tel dt{
    letter-spacing: 0.05em;
}
.com_contact.type_visit .com_tel dt span{
    font-size:90%;
}

.com_con_time {
    text-align: center;
    max-width: 1100px;
    background-color: #E3EEE5;
    font-size: 105%;
    letter-spacing: 0.15em;
    line-height: 1.5em;
    font-weight: bold;
    padding: 0.5em 3%;
    margin: 2em auto 0;
    border-radius: 1.5em;
    box-sizing: border-box;
}

/* 1200px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1200px) {
/*.com_monshin dd a {
	padding: 3%;
	padding-left: 6%;
}*/
.com_monshin dd ul li{
    letter-spacing: 0.1em;
}
.com_monshin dd ul li a::before{
    right: .5em;
    width: 1.4em;
    height: 1.4em;
    top:51%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_arrow {
	width: 40px;
}
.com_arrow i {
	font-size: 15px;
}
	
/*.com_monshin {
	background-size: 6vw auto;
	padding: 10px;
}*/
.com_monshin{
    padding: 5.5% 3% 4%;
}
.com_monshin dt{
    font-size:110%;
    letter-spacing: 0.2em;
    margin-bottom: .8em;
}
.com_monshin dd ul li{
    font-size:110%;
    letter-spacing: 0.2em;
}
.com_monshin dd ul li a::before{
    width: 1.3em;
    height: 1.3em;
    right: .5em;
    top:52%;
}
    
.com_tel dt {
	letter-spacing: .15em;
}
	
.com_con_time {
	font-size: 100%;
	letter-spacing: 0.1em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#pagebody {
	background: none;
}

.com_arrow {
	width: 8vw;
}
.com_arrow i {
	font-size: 2.5vw;
}

.com_timetable {
	text-align: center;
}
.com_timetable dd {
	padding: .4em 0 0;
}
/*
.com_monshin {
	background-size: 12% auto;
	padding: 2%;
}
.com_monshin dt {
	font-size: 120%;
}
.com_monshin dd a {
	padding: 3%;
	padding-left: 6%;
}*/
.com_monshin{
    padding: 5.5% 3% 4%;
}
.com_monshin dt{
    font-size:110%;
    letter-spacing: 0.2em;
    margin-bottom: .8em;
}
.com_monshin dd ul li{
    font-size:110%;
    letter-spacing: 0.2em;
}
.com_monshin dd ul li a{
    padding: .9em 1em;
    border-radius: 15px;
}
.com_monshin dd ul li a::before{
    width: 1.3em;
    height: 1.3em;
    right: .5em;
    top:51%;
}
    
.com_tel dt {
	font-size: 100%;
	letter-spacing: .15em;
	margin-bottom: .5em;
}

.com_web a::after {
	width: 1.5em;
	height: 1.5em;
}
	
.com_contact {
	display: block;
}
.com_contact .com_tel{
	width: 80%;
	padding-top: 0;
	margin: 0 auto 4%;
}
.com_contact.type_visit .com_tel {
    width: 80%;
}
.com_contact .com_web {
	width: 100%;
	margin: 0 auto;
}
	
.com_con_time {
	font-size: 80%;
	letter-spacing: 0.05em;
	border-radius: 2em;
	padding: 0.8em 3%;
}
}



/*LINE無料相談
---------------------------------------------------------*/
.line_bnr {
	color: #FFF;
	font-weight: bold;
	padding-bottom: 100px;
}
.line_bnr .flex_box {
	display: flex;
	justify-content: space-between;
}
.line_bnr .inbox {
	max-width: 1140px;
	background-color: #06a955;
	margin: 0 auto;
}
.line_bnr .inbox .box_l,
.line_bnr .inbox .box_r {
	box-sizing: border-box;
}
.line_bnr .inbox .box_l {
	width: calc(100% - 146px);
	background-color: #06c555;
	padding: 13px;
}
.line_bnr .inbox .box_r {
	width: 146px;
	line-height: 1.5;
	padding: 35px 20px;
}
.line_bnr .inbox .box_r a {
	display: inline-block;
	position: relative;
	color: #FFF;
	font-size: 105%;
	padding-bottom: 2.2em;
}
.line_bnr .inbox .box_r a::before {
    content: "";
    position: absolute;
	background: url("../images/line_bnr_arrow.svg") no-repeat center center;
	background-size: 98% auto;
	width: 1.7em;
	height: 1.7em;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
}
.line_bnr .inbox .box_l .bg_wh {
	position: relative;
	width: 55%;
	background-color: #FFF;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 20px 20px 25px; 
}
.line_bnr .inbox .box_l .bg_wh .line_abs {
	width: 39.6%;
	position: absolute;
	left: 10px;
	bottom: 0;
}
.line_bnr .inbox .box_l .bg_wh .line_txt {
	padding-left: 42%;
}
.line_bnr .inbox .box_l .kamoku {
	width: 42%;
	align-self: center;
	text-align: left;
}
.line_bnr .inbox .box_l .kamoku dl {
	max-width: 380px;
	margin: 0 auto;
}
.line_bnr .inbox .box_l .kamoku dl dt {
	font-size: 137%;
	border-bottom: 2px solid #FFF;
	padding-bottom: .3em;
	margin-bottom: .8em;
}
.line_bnr .check_list {
	flex-wrap: wrap;
}
.line_bnr .check_list li {
	position: relative;
	font-size: 105%;
	line-height: 1.4;
	font-feature-settings: "halt";
	padding-left: 1.8em;
	margin-bottom: .3em;
	float: left;
}
.line_bnr .check_list li::before {
	position: absolute;
	content: "";
	background: url("../images/line_bnr_chk.svg") no-repeat left top;
	background-size: 100% auto;
	width: 1.3em;
	height: 1.3em;
	left: 0;
	top: 0;
}
.line_bnr .check_list li:first-of-type {
	margin-right: 1em;
}
.line_bnr .check_list li:last-of-type {
	margin-bottom: 0;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1060px) {
	
.line_bnr .inbox .box_l .bg_wh {
	padding-bottom: 20px; 
}
.line_bnr .inbox .box_r {
	padding: 3% 2% 2%;
}
.line_bnr .check_list li {
	font-size: 1.65vw;
	letter-spacing: .05em;
}
	
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
	
.line_bnr {
	padding-bottom: 10%;
}
.line_bnr .inbox .box_l {
	width: calc(100% - 12%);
}
.line_bnr .inbox .box_r {
	width: 12%;
	padding: 3% 1% 2%;
}
.line_bnr .inbox .box_r a {
	font-size: 100%;
	padding-bottom: 2.4em;
}

.line_bnr .inbox .box_l .bg_wh {
	width: 51%;
	padding: 2% 2% 2.5%; 
}
.line_bnr .inbox .box_l .kamoku {
	width: 46%;
}
.line_bnr .inbox .box_l .kamoku dl dt {
	font-size: 120%;
	border-bottom-width: 1px;
	margin-bottom: .6em;
}
.line_bnr .check_list li {
	font-size: 1.85vw;
}
	
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
	
.line_bnr {
	padding-bottom: 10%;
}
.line_bnr .flex_box {
	display: block;
}
.line_bnr .inbox .box_l {
	width: 100%
}
.line_bnr .inbox .box_r {
	width: 100%;
	padding: 3.5% 1%;
}
.line_bnr .inbox .box_r a {
	font-size: 100%;
	padding-bottom: 0;
	padding-right: 2em;
}
.line_bnr .inbox .box_r a::before {
	background-size: 98% auto;
	width: 1.7em;
	height: 1.7em;
	left: unset;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.line_bnr .inbox .box_l .bg_wh {
	width: 100%;
	padding: 5% 5% 3%;
	margin-bottom: 3%;
}
.line_bnr .inbox .box_l .kamoku {
	width: 100%;
}
.line_bnr .inbox .box_l .kamoku dl {
	max-width: none;
}
.line_bnr .inbox .box_l .kamoku dl dt {
	text-align: center;
	font-size: 120%;
	border-bottom-width: 1px;
	margin-bottom: .6em;
}
.line_bnr .check_list {
	width: 85%;
	margin: 0 auto;
}
.line_bnr .check_list li {
	font-size: 100%;
}
	
}



/*下層共通
---------------------------------------------------------*/
/*パンくず*/
.pankuzu {
	padding-top: 50px;
	margin-bottom: 60px;
	color: #90857d;
	font-size: 85%;
	letter-spacing: .15em;
	line-height: 1.2em;
	display: -webkit-flex;
	display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.pankuzu a {
	color: #90857d;
	text-decoration: underline;
}
.pankuzu a:hover {
	text-decoration: none;
}
.pankuzu li::after {
	content: "ー";
	margin: 0 .5em;
}
.pankuzu li:last-child::after {
	display: none;
}
/*導入*/
.com_lead_txt {
	font-size: 220%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.6em;
}
.com_lead_txt {
	margin-bottom: .6em;
}
/*タイトル*/
.com_index1 {
	position: relative;
	text-align: center;
	margin-bottom: 40px;
}
.com_index1 img {
	display: block;
	margin: auto;
}
.com_index1 .com_index1_avenir {
	position: relative;
}
.com_index1 .com_index1_avenir span {
	display: block;
	position: relative;
	width: 55%;
	margin: 0 auto;
	z-index: 1;
	padding: 35px 0;
	background: url("../images/index_bg@2x.png") no-repeat center center;
	background-size: contain;
}
.com_index1 .com_index1_txt {
	font-size: 120%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-top: 1.0em;
}
.com_index1.com_top_bg .com_index1_avenir::before {
	content: "";
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 50%;
	left: 0;
	top: 0;
	background: #f9fdef;
}

.com_index2 {
	border-top: solid 5px #cccfcd;
	border-bottom: solid 5px #cccfcd;
	text-align: center;
	font-size: 220%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: .8em 3%;
	margin-bottom: 50px;
}

.com_index3 {
	text-align: center;
	color: #9677a5;
	font-size: 190%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	border: solid 3px #b098bb;
	border-bottom: none;
	padding: 1.2em 3% .3em;
	margin-bottom: 50px;
}

.com_index4 {
	background: #7dbb28;
	text-align: center;
	color: #fff;
	font-size: 180%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: 1.0em 3%;
	margin-bottom: 50px;
}

.com_index5 {
	border-top: solid 3px #82c88f;
	border-bottom: solid 3px #82c88f;
	text-align: center;
	color: #82c88f;
	font-size: 180%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: .5em 3%;
	margin-bottom: 50px;
}

.com_plus_index {
	text-align: center;
	font-size: 180%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.6em;
	padding-top: 1.8em;
	background-image: url("../clinic/images/painless/plus@2x.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 1.3em auto;
}
/*リンクボタン*/
.com_link1 {
	width: 90%;
	max-width: 350px;
	margin-top: 1.0em;
}
.com_link1 a {
	display: block;
	background: #aba757;
	text-align: center;
	color: #fff;
	font-size: 105%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: .8em 0;
	position: relative;
}
.com_link1 a::before {
	content: "";	/*枠線*/
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	box-sizing: border-box;
	border: solid 3px #fff;
	opacity: 0.2;
-webkit-transition: all 0.4s;
-moz-transition: all 0.4s;
transition: all 0.4s;
}
.com_link1 a:hover::before {
-webkit-transition: all 0.2s;
-moz-transition: all 0.2s;
transition: all 0.2s;
	border-width: 5px;
	opacity: 0.4;
}
.com_link1 span {
	display: inline-block;
	padding-right: 2.5em;
	position: relative;
	z-index: 1;
}
.com_link1 span::before {
	content: "";
	position: absolute;
	width: 1.6em;
	height: 1.6em;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	background: url("../images/arrow2@2x.png") no-repeat center center;
	background-size: 99% auto;
}
.com_link1.anc_arrow span::before {
	-webkit-transform: translateY(-50%) rotate(90deg);
	transform: translateY(-50%) rotate(90deg);
}
.com_link1.site_arrow span {
	padding-right: 1.8em;
}
.com_link1.site_arrow span::before {
	font-family: 'fontello';
	content: '\e805';
	width: auto;
	height: auto;
	font-size: 90%;
	font-weight: normal;
	background: none;
}
.com_link1.look_arrow span {
	padding-right: 2em;
}
.com_link1.look_arrow span::before {
	font-family: 'fontello';
	content: '\e817';
	width: auto;
	height: auto;
	font-size:1.5em;
	font-weight: normal;
	background: none;
	top:45%;
}
/*ボックス*/
.com_inbox {
	width: 100%;
	max-width: 1220px;
	margin-left: auto;
	margin-right: auto;
}
/*テキスト*/
.com_txt_strong {
	box-sizing: border-box;
	background: #b2b2a9;
	border-radius: 50px;
	text-align: center;
	color: #fff;
	font-size: 120%;
	font-weight: bold;
	letter-spacing: .1em;
	line-height: 1.6em;
	padding: .7em 3%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
/*パンくず*/
.pankuzu {
	padding-top: 4%;
	margin-bottom: 5%;
	font-size: 80%;
	letter-spacing: .1em;
}
/*導入*/
.com_lead_txt {
	font-size: 190%;
	letter-spacing: .1em;
}
.com_lead_txt {
	margin-bottom: .3em;
}
.com_lead &gt; dd {
	line-height: 2.0em;
}
/*タイトル*/
.com_index1 {
	margin-bottom: 4%;
}
.com_index1 .com_index1_avenir span {
	padding: 3.6vw 0;
}
.com_index2 {
	border-width: 4px;
	font-size: 190%;
	letter-spacing: .1em;
	padding: .6em 3%;
	margin-bottom: 5%;
}
.com_index3 {
	font-size: 180%;
	letter-spacing: .1em;
	padding: 1.0em 3% .3em;
	margin-bottom: 4%;
}
.com_index4 {
	font-size: 170%;
	letter-spacing: .1em;
	padding: .8em 3%;
	margin-bottom: 4%;
}
.com_index5 {
	border-width: 2px;
	font-size: 170%;
	letter-spacing: .1em;
	padding: .5em 3%;
	margin-bottom: 4%;
}
.com_plus_index {
	font-size: 170%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/*パンくず*/
.pankuzu {
	padding-top: 0;
	margin-bottom: 8%;
	font-size: 70%;
	letter-spacing: .055em;
}
/*導入*/
.com_lead_txt {
	font-size: 140%;
	letter-spacing: .1em;
	line-height: 1.6em;
}
.com_lead_txt {
	margin-bottom: .3em;
}
.com_lead &gt; dd {
	line-height: 1.8em;
}
/*タイトル*/
.com_index1 {
	margin-bottom: 6%;
}
.com_index1 .com_index1_avenir span {
	width: 100%;
	padding: 1.4em 0;
}
.com_index1 .com_index1_txt {
	font-size: 110%;
	letter-spacing: .1em;
	margin-top: .8em;
}
.com_index2 {
	border-width: 3px;
	font-size: 140%;
	letter-spacing: .1em;
	padding: .7em 0;
	margin-bottom: 8%;
}
.com_index3 {
	font-size: 140%;
	letter-spacing: .1em;
	border-width: 2px;
	padding: .8em 0 .2em;
	margin-bottom: 6%;
}
.com_index4 {
	font-size: 140%;
	letter-spacing: .1em;
	padding: .8em 0;
	margin-bottom: 6%;
}
.com_index5 {
	border-width: 2px;
	font-size: 140%;
	letter-spacing: .1em;
	padding: .5em 0;
	margin-bottom: 6%;
}
.com_plus_index {
	font-size: 130%;
	letter-spacing: .05em;
	padding-top: 1.6em;
	background-size: 1.1em auto;
}
/*リンクボタン*/
.com_link1 {
	max-width: 100% !important;
	margin-left: auto;
	margin-right: auto;
}
.com_link1 a {
	font-size: 100%;
	letter-spacing: .05em;
}
.com_link1 span {
	padding-right: 2em;
}
/*テキスト*/
.com_txt_strong {
	border-radius: 20px;
	text-align: left;
	font-size: 105%;
	letter-spacing: .05em;
	line-height: 1.4em;
	padding: 1.0em 5%;
}
}



.information .news_cale .calendar.in_box {
	margin: 0 auto;
	position: relative;
	max-width: 656px;
}
.cal_box .xo-months {
	position: relative;
}
.xo-event-calendar table.xo-month .month-header {
    margin: 0 0 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}
.xo-event-calendar table.xo-month .month-prev {
    float: none;
}
.xo-event-calendar table.xo-month .month-next {
    float: none;
}
.xo-event-calendar table.xo-month button{
color: #544337;
}

.dashicons-arrow-left-alt2::before {
	font-family: "fontello";
    content: '\e812';
}
.dashicons-arrow-right-alt2::before {
	font-family: "fontello";
    content: '\e813';
}
.xo-event-calendar table.xo-month button &gt; span {
    width: 18px;
    height: 18px;
    line-height: 12px;
    font-size: 18px;
	}
.xo-event-calendar table, .xo-event-calendar table.xo-month &gt; caption {
	background-color: transparent !important;
}
/*年月*/
.calendar-caption{
	font-size: 130%!important;
	font-weight: bold;
	color: #544337;
}
/* 曜日 */
.xo-event-calendar table.xo-month {
	margin: 0;	/* 下のキャプションとの隙間 */
}
.xo-event-calendar table.xo-month, .xo-event-calendar table.xo-month th, .xo-event-calendar table.xo-month td {
	border: none !important;
}
.xo-event-calendar table.xo-month {
	border: none !important;
}
.xo-event-calendar table.xo-month thead th {
	font-weight: bold;
	line-height: 1.2em;
	padding: 15px 0 32px 0!important;
	border: none !important;
	font-size: 105% !important;
	border-top: 2px solid #D4D0CD!important;
	color: #544337;
	position: relative;
}
.xo-event-calendar table.xo-month thead th::before{
	position: absolute;
	content: "";
	background: #D4D0CD;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 17px;
	width: 100%;
	height: 2px;
}
/*日付の高さ*/
.xo-event-calendar table.xo-month .month-dayname-space{
	height:3em !important;
}
/* 今日 */
.xo-event-calendar .today {
	color: #473933 !important;
	font-weight: normal !important;
background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23aaaaaa' fill-opacity='0.38' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E") !important;
}
/* 日付 */
.xo-event-calendar table.xo-month .month-week{
border-bottom: 1px solid #FBF8F0!important;
}
.xo-event-calendar table.xo-month .month-week table .dayname {
	font-size: 90%;
	color: #544337;
}
/* イベント日 */
.xo-event-calendar table.xo-month .month-event td {
	padding: 0;
}
.xo-event-calendar table.xo-month .month-event-title{
	color: #fff!important;
	text-align: center;
	border-radius: 1em;
	line-height: 1.8em;
	-webkit-transition: color 0.4s, background-color 0.4s;
	-moz-transition: color 0.4s, background-color 0.4s;
	transition: color 0.4s, background-color 0.4s;
	font-weight: bold;
}
.xo-event-calendar table.xo-month .month-event-title:hover{
	opacity: 0.7;
	-webkit-transition: color 0.2s, background-color 0.2s;
	-moz-transition: color 0.2s, background-color 0.2s;
	transition: color 0.2s, background-color 0.2s;
}
/* 土 */
.xo-event-calendar table.xo-month &gt; thead th.saturday {
    color: #7BA4D1;
}
/* 日 */
.xo-event-calendar table.xo-month &gt; thead th.sunday {
    color: #C65F46;
}

.xo-event-calendar table.xo-month .month-dayname td div.other-month {
    opacity: 0.45;
}

/* キャプション */
.holiday-titles {
	display: none!important;
}
.holiday_tit_list{
	overflow: hidden;
	margin-top: 20px;
}
.holiday_tit_list li{
	margin-right: 1em;
	font-size: 95%;
	line-height: 1.2em;
	float: left;
	margin-top: 0.5em
}
.holiday_tit_list li:last-child{
margin-right: auto;
}
.holiday_tit_list li span{
	position: relative;
	padding-left: 1.6em;
}
.holiday_tit_list li span::before{
	position: absolute;
	content: "";
	background: #eeedc7;
	width: 1.2em;
	height: 1.2em;
	left: 0;
	top:0;
}
.holiday_tit_list li:nth-child(2) span::before{
	background: #968e70 ;
}
.holiday_tit_list li:nth-child(3) span::before{
	background: #dbadba;
}
.holiday_tit_list li:nth-child(4) span::before{
	background: #96c851;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1151px) {
.xo-event-calendar table.xo-month .month-event-title{
	font-size: 1.1vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.holiday_tit_list li{
	font-size: 1.6vw;
}
/*日付の高さ*/
.xo-event-calendar table.xo-month .month-dayname-space{
	height:2.5em !important;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.xo-event-calendar table.xo-month .month-event-title{
	font-size: 2.2vw;
}
/*日付の高さ*/
.xo-event-calendar table.xo-month .month-dayname-space{
	height:2em !important;
}
.holiday_tit_list li{
	font-size: 78%;
}
}


/*マイナンバー
---------------------------------------------------------*/
.com_mynumber{
	text-align: center;
	max-width: 620px;
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_mynumber{
	width: 100%;
}
}

/*下層共通
---------------------------------------------------------*/
/*隙間*/
.com_btm_150 {
	margin-bottom: 150px;
}
.com_btm_120 {
	margin-bottom: 120px;
}
.com_btm_100 {
	margin-bottom: 100px;
}
.com_btm_80 {
	margin-bottom: 80px;
}
.com_btm_70 {
	margin-bottom: 70px;
}
.com_btm_60 {
	margin-bottom: 60px;
}
.com_btm_50 {
	margin-bottom: 50px;
}
.com_btm_40 {
	margin-bottom: 40px;
}
.com_btm_30 {
	margin-bottom: 30px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
/*隙間*/
.com_btm_150 {
	margin-bottom: 12%;
}
.com_btm_120 {
	margin-bottom: 10%;
}
.com_btm_100 {
	margin-bottom: 8%;
}
.com_btm_80 {
	margin-bottom: 7%;
}
.com_btm_70 {
	margin-bottom: 6%;
}
.com_btm_60 {
	margin-bottom: 5%;
}
.com_btm_50 {
	margin-bottom: 4%;
}
.com_btm_40 {
	margin-bottom: 4%;
}
.com_btm_30 {
	margin-bottom: 3%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
/*隙間*/
.com_btm_150 {
	margin-bottom: 14%;
}
.com_btm_120 {
	margin-bottom: 13%;
}
.com_btm_100 {
	margin-bottom: 12%;
}
.com_btm_80 {
	margin-bottom: 10%;
}
.com_btm_70 {
	margin-bottom: 9%;
}
.com_btm_60 {
	margin-bottom: 8%;
}
.com_btm_50 {
	margin-bottom: 7%;
}
.com_btm_40 {
	margin-bottom: 6%;
}
.com_btm_30 {
	margin-bottom: 5%;
}
}





/* com_bnrlist
---------------------------------------------------------*/
.com_bnrlist{
	width: 100%;
	max-width: 1330px;
	margin: 100px auto 0;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.com_bnrlist li {
	width: 32.5%;
}
.com_bnrlist li a {
	display: block;
	padding: 20px 10%;
	position: relative;
	border: solid 5px #2c6969;
	background-image: url("../images/top/bnr_first_bg@2x.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	font-size: 95%;
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.4em;
}
.com_bnrlist li p {
	color: #ffff61;
}
.com_bnrlist li p img {
	display: block;
	margin-top: .5em;
}
.com_bnrlist li .com_arrow {
	right: 10%;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
}
.com_bnrlist li.bnr_price a {
	background-image: url("../images/top/bnr_price_bg@2x.jpg");
	border-color: #5f4424;
}
.com_bnrlist li.bnr_case a {
	background-image: url("../images/top/bnr_case_bg@2x.jpg");
	border-color: #1D5B1D;
}

/* 1300px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1300px) {
.com_bnrlist li a {
	letter-spacing: normal;
}
.com_bnrlist li p img {
	width: 17vw;
}
.com_bnrlist li .com_arrow {
	right: 3%;
    width: 5vw;
}
.com_bnrlist li .com_arrow i {
	font-size: 2vw;
}
}

/* 1100px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1100px) {
.com_bnrlist li a {
	padding-left: 6%;
	padding-right: 6%;
}
.com_bnrlist li .com_arrow {
	right: 6%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_bnrlist{
	margin-top: 8%;
}
.com_bnrlist li a {
	padding: 6%;
    font-size: 1.6vw;
	letter-spacing: normal;
}
.com_bnrlist li p img {
	width: 70%;
}
.com_bnrlist li .com_arrow {
	right: 3%;
    width: 30px;
}
.com_bnrlist li .com_arrow i {
	font-size: 13px;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_bnrlist{
	width: 90%;
	max-width: 100%;
	margin-top: 8%;
	display: block;
}
.com_bnrlist li {
	width: 100%;
	margin-bottom: 3%;
}
.com_bnrlist li:last-child {
	margin-bottom: 0;
}
.com_bnrlist li a {
	padding: 4% 6% 4.5%;
	font-size: 90%;
	letter-spacing: .15em;
}
.com_bnrlist li p img {
	width: 50%;
}
.com_bnrlist li .com_arrow {
	right: 6%;
}
}







/*.f_bnr
---------------------------------------------------------*/
.f_bnr {
	padding: 50px 0;
}
.f_bnr .f_bnr_list {
	width: 100%;
	max-width: 1178px;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.f_bnr .f_bnr_list li {
	width: 16%;
	max-width: 188px;
}
.f_bnr .f_bnr_list li a {
	display: block;
	position: relative;
}
.f_bnr .f_bnr_list .hover_frame a::before {
	content: "";	/*枠線*/
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	box-sizing: border-box;
	border: solid 3px #fff;
	opacity: 0.5;
-webkit-transition: all 0.4s;
-moz-transition: all 0.4s;
transition: all 0.4s;
}
.f_bnr .f_bnr_list .hover_frame a:hover::before {
-webkit-transition: all 0.2s;
-moz-transition: all 0.2s;
transition: all 0.2s;
	opacity: 0.8;
}
.f_bnr .f_bnr_list .hover_frame img {
	position: relative;
	z-index: 1;
}
.f_bnr .f_bnr_list .fb_news a::before {
	border-color: #7dbb28;
	opacity: 0.3;
}
.f_bnr .f_bnr_list .fb_blog a::before {
	border-color: #769fd4;
	opacity: 0.3;
}

.f_bnr .f_bnr_list .fb_inst {
background: -moz-linear-gradient(-45deg,  rgba(255,164,159,0.95) 0%, rgba(220,148,62,0.95) 100%);
background: -webkit-linear-gradient(-45deg,  rgba(255,164,159,0.95) 0%,rgba(220,148,62,0.95) 100%);
background: linear-gradient(135deg,  rgba(255,164,159,0.95) 0%,rgba(220,148,62,0.95) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2ffa49f', endColorstr='#f2dc943e',GradientType=1 );
	position: relative;
}
.f_bnr .f_bnr_list .fb_inst::after {
	content: "";
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	opacity: 0;
background: rgb(220,148,62);
background: -moz-linear-gradient(-45deg,  rgba(220,148,62,1) 0%, rgba(255,164,159,1) 100%);
background: -webkit-linear-gradient(-45deg,  rgba(220,148,62,1) 0%,rgba(255,164,159,1) 100%);
background: linear-gradient(135deg,  rgba(220,148,62,1) 0%,rgba(255,164,159,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dc943e', endColorstr='#ffa49f',GradientType=1 );
-webkit-transition: all 0.4s;
-moz-transition: all 0.4s;
transition: all 0.4s;
}
.f_bnr .f_bnr_list .fb_inst:hover::after {
-webkit-transition: all 0.2s;
-moz-transition: all 0.2s;
transition: all 0.2s;
	opacity: 1;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.f_bnr {
	padding: 3% 0;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.f_bnr {
	padding: 8% 0;
}
.f_bnr .f_bnr_list {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.f_bnr .f_bnr_list li {
	width: 32%;
	margin-top: 6%;
}
.f_bnr .f_bnr_list li:nth-child(-n+3) {
	margin-top: 0;
}
}



/*footer
---------------------------------------------------------*/
footer {
	background: #ecf2e9;
}

.com_bg_light {
	padding: 70px 0;
}
.com_bg_light .w1220 {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.com_bg_light .f_box_l {
	width: 47%;
	max-width: 550px;
}
.com_bg_light .f_box_r {
	width: 50%;
	max-width: 590px;
}

.com_bg_light .f_clinic {
	text-align: center;
	margin-bottom: 30px;
}
.com_bg_light .f_clinic dt {
	width: 70%;
	margin: 0 auto;
}
.com_bg_light .f_clinic dd {
	margin-top: 30px;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.com_bg_light .f_clinic dd address {
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-right: 2%;
}
.com_bg_light .f_clinic dd div {
	width: 2.6em;
}

.com_bg_light .com_timetable {
	margin-bottom: 30px;
}

.com_bg_light .f_kamoku {
	margin-bottom: 40px;
}
.com_bg_light .f_kamoku dt {
	font-size: 105%;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.2em;
	margin-bottom: .4em;
}
.com_bg_light .f_kamoku dd {
	font-size: 95%;
	letter-spacing: .1em;
	line-height: 2.0em;
}

.com_bg_light .map_frame {
	border: solid 1px rgba(169,161,155,0.5);
}
.com_bg_light .map_frame iframe {
	display: block;
}
.com_bg_light .f_access {
	width: 100%;
	max-width: 570px;
	margin: 20px auto 0;
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.com_bg_light .f_access li {
	font-size: 105%;
	font-weight: bold;
	letter-spacing: .1em;
	line-height: 1.6em;
	padding-left: 2.5em;
	background-image: url("../images/icon_train@2x.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 1.9em auto;
}
.com_bg_light .f_access li.icon_car {background-image: url("../images/icon_car@2x.png");}

footer .bg_white {
	padding: 20px 0 40px;
}

footer .bg_green {
	background: #7dbb28;
	padding: 80px 0 70px;
	color: #fff;
}
footer .bg_green a {
	color: #fff;
}
footer .bg_green .f_sitemap {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	font-size: 90%;
	font-weight: bold;
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: 100px;
}
footer .bg_green .f_sitemap .box_l {
	width: 58%;
}
footer .bg_green .f_sitemap .box_r {
	width: 40%;
}
footer .bg_green .f_sitemap .box_l .flex_box {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
footer .bg_green .f_sitemap .box_l .flex_box .smap1 {
	width: 32%;
}
footer .bg_green .f_sitemap .box_l .flex_box .smap2 {
	width: 22%;
}
footer .bg_green .f_sitemap .box_l .flex_box .smap3 {
	width: 40%;
}
footer .bg_green .f_sitemap .box_r .smap4 dd {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
footer .bg_green .f_sitemap .box_r .smap4 dd ul:first-child {
	width: 61%;
}
footer .bg_green .f_sitemap .box_r .smap4 dd ul:last-child {
	width: 37%;
}
footer .bg_green .f_sitemap dt {
	color: #ebe468;
	letter-spacing: .15em;
	margin-bottom: 1.0em;
}
footer .bg_green .f_sitemap li {
	margin-bottom: .8em;
}
footer .bg_green .f_sitemap li:last-child {
	margin-bottom: 0;
}
footer .bg_green .f_sitemap li a {
	display: block;
	padding-left: 1.5em;
	position: relative;
}
footer .bg_green .f_sitemap li a:hover {
	color: #dcfb63;
}
footer .bg_green .f_sitemap li a::before {
	font-family: 'fontello';
	content: '\e802';
	position: absolute;
	font-size: 110%;
	font-weight: normal;
	left: 0;
	top: 0;
}
footer .bg_green .f_sitemap li.icon_out a::before {
	content: '\e803';
}

footer .f_sitebnr {
	margin: 0 auto 80px;
	display: flex;
    justify-content: start;
    flex-wrap: wrap;
}
footer .f_sitebnr li {
	width: 24%;
	max-width: 278px;
	background-color: #FFF;
	box-sizing: border-box;
	border: solid 1px #fff;
    margin-right: 1.333%;
	margin-top:1.333%;
}
footer .f_sitebnr li:nth-child(4n){
    margin-right: 0;
}
footer .f_sitebnr li:nth-child(-n + 4){
	margin-top: 0;
}
footer .copyright {
	text-align: center;
	color: #b6daa7;
	letter-spacing: .35em;
	line-height: 1.6em;
}

#page_top {
	position:fixed;
	width: 8%;
	max-width: 80px;
	overflow: hidden;
	bottom: 40px;
	right: 3%;
	z-index: 400;
}
#page_top a {
	display: block;
	border-radius: 50%;
	background: rgba(84,67,55,0.85);
}
#page_top a:hover {
	background: rgba(125,187,40,0.85);
}

/* 1200px以下
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1200px) {
footer .f_clinic address .sp_tb {
	display: block !important;
}
.com_bg_light .f_access li {
	font-size: 1.6vw;
	letter-spacing: .05em;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_bg_light {
	padding: 6% 0;
}

.com_bg_light .f_clinic {
	margin-bottom: 6%;
}
.com_bg_light .f_clinic dd {
	margin-top: 6%;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.com_bg_light .f_clinic dd address {
	margin-right: 0;
}
.com_bg_light .f_clinic dd div {
	margin-right: 3%;
}

.com_bg_light .com_timetable {
	margin-bottom: 6%;
}

.com_bg_light .f_kamoku {
	margin-bottom: 6%;
}
.com_bg_light .f_kamoku dd {
	letter-spacing: normal;
}

.com_bg_light .f_access {
	margin-top: 3%;
	display: block;
}
.com_bg_light .f_access li {
	font-size: 100%;
	letter-spacing: .05em;
	margin-top: .5em;
}

footer .bg_white {
	padding: 1% 0 3%;
}

footer .bg_green {
	padding: 4% 0;
}
footer .bg_green .f_sitemap {
	display: block;
	margin-bottom: 3%;
}
footer .bg_green .f_sitemap .box_l {
	width: 100%;
}
footer .bg_green .f_sitemap .box_r {
	width: 100%;
}
footer .bg_green .f_sitemap .box_l .flex_box {
	display: block;
}
footer .bg_green .f_sitemap .box_l .flex_box &gt; div,
footer .bg_green .f_sitemap .box_l .flex_box &gt; dl {
	width: 100% !important;
	margin-bottom: 1%;
}
footer .bg_green .f_sitemap .box_r .smap4 dd {
	display: block;
}
footer .bg_green .f_sitemap .box_r .smap4 dd ul {
	width: 100% !important;
}
footer .bg_green .f_sitemap dt {margin-bottom: .5em;
}
footer .bg_green .f_sitemap ul {
	overflow: hidden;
}
footer .bg_green .f_sitemap li {
	float: left;
	margin-right: 2.0em;
	margin-bottom: .5em !important;
}
footer .f_sitebnr {
	margin-bottom: 4%;
}

#page_top {
	bottom: 3%;
	right: 2%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_bg_light {
	padding: 8% 0;
}
.com_bg_light .w1220 {
	display: block;
}
.com_bg_light .f_box_l {
	width: 100%;
	max-width: 100%;
	margin-bottom: 8%;
}
.com_bg_light .f_box_r {
	width: 100%;
	max-width: 100%;
}

.com_bg_light .f_clinic {
	margin-bottom: 4%;
}
.com_bg_light .f_clinic dt {
	width: 60%;
}
.com_bg_light .f_clinic dd {
	margin-top: 1.0em;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.com_bg_light .f_clinic dd address {
	line-height: 1.4em;
	margin-right: 0;
	text-align: left;
}
.com_bg_light .f_clinic dd div {
	width: 2.2em;
	margin-right: 1.0em;
}

.com_bg_light .com_timetable {
	margin-bottom: 4%;
}

.com_bg_light .f_kamoku {
	margin-bottom: 4%;
}
.com_bg_light .f_kamoku dt {
	margin-bottom: .2em;
}
.com_bg_light .f_kamoku dd {
	font-size: 90%;
	letter-spacing: normal;
	line-height: 1.8em;
}

.com_bg_light .map_frame iframe {
	height: 350px;
}
.com_bg_light .f_access {
	max-width: 100%;
	margin-top: 1.0em;
	display: block;
}
.com_bg_light .f_access li {
	font-size: 100%;
	letter-spacing: .05em;
	margin-top: .5em;
}

footer .bg_white {
	padding: 4% 0 6%;
}

footer .bg_green {
	padding: 8% 0 100px;
}
footer .bg_green .f_sitemap {
	display: block;
	letter-spacing: .05em;
	line-height: 1.4em;
	margin-bottom: 6%;
}
footer .bg_green .f_sitemap .box_l,
footer .bg_green .f_sitemap .box_r {
	width: 100%;
	box-sizing: border-box;
	background: rgba(64,54,49,0.2);
}
footer .bg_green .f_sitemap .box_l {
	margin-bottom: 2%;
}
footer .bg_green .f_sitemap .f_open_btn {
	padding: 1.0em 4%;
	font-size: 120%;
	letter-spacing: .15em;
	position: relative;
}
footer .bg_green .f_sitemap .f_open_btn::before {
	content: "";
	position: absolute;
	width: 1.0em;
	height: 1.0em;
	background: url("../images/open@2x.png") no-repeat center center;
	background-size: contain;
	right: 3%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
footer .bg_green .f_sitemap .f_open_btn.active::before {
	background-image: url("../images/close@2x.png");
}
footer .bg_green .f_sitemap .open_box {
	display: none;
	padding: 0 4% 4%;
}
footer .bg_green .f_sitemap .box_l .flex_box {
	display: block;
}
footer .bg_green .f_sitemap .box_l .flex_box div,
footer .bg_green .f_sitemap .box_l .flex_box dl {
	width: 100% !important;
}
footer .bg_green .f_sitemap .box_l .flex_box dl {
	margin-top: 1.0em;
}
footer .bg_green .f_sitemap .box_l ul {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
footer .bg_green .f_sitemap .box_l li {
	width: 49%;
}
footer .bg_green .f_sitemap .box_r .smap4 dd ul:first-child {
	width: 49%;
}
footer .bg_green .f_sitemap .box_r .smap4 dd ul:last-child {
	width: 48%;
}
footer .bg_green .f_sitemap dt {
	margin-bottom: .5em;
}
footer .bg_green .f_sitemap li a {
	padding-left: 1.2em;
	font-weight: normal;
}

footer .f_sitebnr {
	margin-bottom: 6%;
}
footer .f_sitebnr li {
	width: 49%;
    margin-right: 2%;
    margin-top: 2%!important;
}
footer .f_sitebnr li:nth-child(-n + 2){
	margin-top: 0!important;
}
footer .f_sitebnr li:nth-child(2n){
    margin-right: 0;
}
    
footer .copyright {
	font-size: 80%;
	letter-spacing: .2em;
	line-height: 1.6em;
}

#page_top {
	width: 12%;
	bottom: 90px;
	right: 1%;
}
}



/*スマホフッター
---------------------------------------------------------*/
@media only screen and (min-width: 768px) {
footer .bg_green .f_sitemap .open_box {
	display: block !important;
}
#sp_footer {display: none !important;}
}

#sp_footer {
	position: fixed;
	width: 100%;
	left: 0;
	bottom: 0;
	z-index: 400;
	background: #fff;
	box-sizing: border-box;
	text-align: center;
}
#sp_footer img {
	display: block;
	margin: auto;
	width: auto;
	max-height: 60px;
}
#sp_footer ul {
	display: -webkit-flex;
	display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
	text-align: center;
}
#sp_footer li a {
	display: block;
}
#sp_footer li:first-child {
	width: 55%;
	background: rgba(238,191,47,0.95);
}
#sp_footer li:last-child {
	width: 45%;
	background: #79c2dc url("../images/scl_web_bg@2x.png") no-repeat right center;
	background-size: 60% 100%;
}
#sp_footer p {
	background: #544337;
	padding: 5px 3% 10px;
}
#sp_footer p img {
	max-height: 15px;
}

/*type_visit*/
#sp_footer.type_visit ul {
	display: -webkit-block;
	display: block;
}
#sp_footer.type_visit li:first-child {
	width: 100%;
	background: rgba(238,191,47,0.95);
}
#sp_footer.type_visit li:last-child {
	width: 100%;
	background: rgba(238,191,47,0.95);
    background-image: none;
}





/*com_stf_tit
---------------------------------------------------------*/
.com_stf_tit{
	font-size: 120%;
	letter-spacing: 0.15em;
	line-height: 1em;
}
.com_stf_tit &gt; p{
	font-size: 325%;
	letter-spacing: 0.25em;
	line-height: 1em;
	color: #2C7068;/*変更*/
}
.com_stf_tit &gt; h2{
	font-weight: bold;
	margin-top: 1.5em;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_stf_tit{
	font-size: 110%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_stf_tit{
	font-size: 90%;
	letter-spacing: 0.1em;
}
.com_stf_tit &gt; p{
	font-size: 300%;
	letter-spacing: 0.2em;
}
.com_stf_tit &gt; h2{
	margin-top: 1em;
}
}





/* 院長あいさつ
---------------------------------------------------------*/
.com_rel_bg{
	position: relative;
	background-color: #fff;
	z-index: 1;
}
.com_rel_bg::before{
	position: absolute;
	content: "";
	background: url("../staff/images/staff/abs_bg1@2x.png") no-repeat right top;
	background-size: 100% auto;
	width: 781px;
	height: 465px;
	right: 0;
	top:0;
	z-index: -2;
}
.com_rel_bg::after{
	position: absolute;
	content: "";
	background: rgba(125,187,40,0.80) repeat-x center bottom;
	background-size: 100% auto;
	width: 100%;
	height: 320px;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.com_rel_bg &gt; .w1280{
	position: relative;
	padding: 155px 0 90px;
}
.com_rel_bg &gt; .w1280::before{
	position: absolute;
	content: "KATAYAMA NOBORU";
	font-family: europa,sans-serif;
	font-weight: 400;
	font-style: normal;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	-webkit-transform: translateY(35%);
	transform: translateY(35%);
	font-size: 560%;
	letter-spacing: 0.2em;
	line-height: 1em;
	color: #58B412;	
	text-align: center;
}
.com_rel_bg &gt; .w1280 .com_stf_tit{
	position: absolute;
	display: block;
	left: 0;
	top:0;
	-webkit-transform: translateY(30%);
	transform: translateY(-30%);
}
.com_rel_bg .director_flx{
	max-width: 1095px;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.com_rel_bg .director_flx .director_img{
	max-width: 771px;
	width: 71%;
}
.com_rel_bg .director_flx .director_name{
	max-width: 225px;
	width: 25%;
	position: relative;
}

.com_rel_bg .director_flx .director_name .name{
	position: absolute;
	display: block;
	left: 0;
	top:70%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	color: #fff;
	text-align: left;
	max-width: 175px;
	font-weight: bold;
	font-size: 105%;
	letter-spacing: 0.1em;
	line-height: 1em;
}
.com_rel_bg .director_flx .director_name .name dt{
	margin-bottom: 1em;
}
.com_rel_bg .director_flx .director_name .name dd{
	font-size: 250%;
	letter-spacing: 0.15em;
	line-height: 1em;
}
.com_director_greeting{
	margin-top: 80px;
	padding-bottom: 100px;
	position: relative;
	z-index: 1;
}
.com_director_greeting::before{
	position: absolute;
	content: "";
	background: -moz-linear-gradient(top,  rgba(249,253,239,0) 0%, rgba(249,253,239,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(249,253,239,0) 0%,rgba(249,253,239,1) 100%);
	background: linear-gradient(to bottom,  rgba(249,253,239,0) 0%,rgba(249,253,239,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00f9fdef', endColorstr='#f9fdef',GradientType=0 );
	background-repeat: repeat-x;
	background-position: center rop;
	background-size: 100% auto;
	width: 100%;
	height: 220px;
	left: 0;
	right: 0;
	margin: auto;
	top:0;
	z-index: -1;
}
.com_director_greeting dd{
	position: relative;
	margin-top: 30px;
	z-index: 1;
}
.com_director_greeting dd::before{
	position: absolute;
	content: "";
	background: url("../staff/images/staff/abs_bg2@2x.png") no-repeat right top;
	background-size: 100% auto;
	width: 663px;
	height: 463px;
	right: 0;
	top:0;
	z-index: -1;
}
.com_director_greeting dd p{
	max-width: 810px;
	width: 63%;
	padding-top: 0.8em;
}
.com_director_greeting dd p.tb_100{
	margin-top: 0;
}
.com_director_greeting .frontpage_only{
    display: none;
}
.frontpage .com_director_greeting .frontpage_only{display: block;}
.frontpage .com_director_greeting .contentpage_only{display: none;}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1240px) {
.com_rel_bg &gt; .w1280::before{
	font-size: 7.5vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_rel_bg::before{
	width:68%;
}
.com_rel_bg::after{
	height: 30vw;
}
.com_rel_bg &gt; .w1280{
	padding: 14% 0 8%
}
.com_rel_bg .director_flx .director_name .name{
	font-size: 95%;
}
.com_director_greeting{
	margin-top: 7%;
	padding-bottom: 8%;
}
.com_director_greeting::before{
	height: 20vw;
}
.com_director_greeting dt{
	width: 70%;
}
.com_director_greeting dd{
	margin-top: 3%;
}
.com_director_greeting dd::before{
	width: 56%;
}
.com_director_greeting dd p.tb_100{
	width: 100%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_rel_bg::before{
	width:84vw;
	right: -6%;
}
.com_rel_bg::after{
	height: 50vw;
}
.com_rel_bg &gt; .w1280{
	position: relative;
	padding: 38vw 0 10vw;
}
.com_rel_bg &gt; .w1280::before{
	font-size: 8.1vw;
	letter-spacing: 0.15em;
}
.com_rel_bg .director_flx .director_img{
	width: 55%;
}
.com_rel_bg .director_flx .director_name{
	width:36%;
}

.com_rel_bg .director_flx .director_name .name{
	top:50%;
	max-width: 100%;
	font-size: 90%;
}
.com_rel_bg .director_flx .director_name .name dd{
	font-size: 195%;
	letter-spacing: 0.15em;
}
.com_director_greeting{
	margin-top: 8%;
	padding-bottom: 10%;
}
.com_director_greeting::before{
	height:20vw;
}
.com_director_greeting dt{
    width: 75%;
    position: relative;
    z-index: 2;
}
.com_director_greeting dd{
	margin-top: 3%;
}
.com_director_greeting dd::before{
	width: 52vw;
	top:0;
	right: -10vw;
	-webkit-transform: translateY(23%);
	transform: translateY(-23%);
}
.com_director_greeting dd p{
	max-width: 100%;
	width: 100%;
}
}




/* com_subpricebox
---------------------------------------------------------*/
.com_subpricebox{
    width: 100%;
    margin-top: 2em;
    display: table;
    background:#fff;
    box-sizing: border-box;
    line-height: 1.5em;
}
.com_subpricebox tr{
    width: 100%;
}
.com_subpricebox th,
.com_subpricebox td{
    display: table-cell;
    box-sizing: border-box;
}
.com_subpricebox th{
    width: 6rem;
    background: #82c88f;
    text-align: center;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.23em;
}
.com_subpricebox td{
    font-size:95%;
    letter-spacing: normal;
    line-height: 1.5em;
    width: calc(100% - 6rem);
    padding: 1.2rem 1.5rem;
    background:rgba(130,200,143,0.2);;
}
.com_subpricebox td dl{
    margin-bottom: .6em;
}
.com_subpricebox td dl:last-of-type{
    margin-bottom: 0;
}
.com_subpricebox td dt{
    position: relative;
    font-weight: bold;
    padding-right: 1em;
    box-sizing: border-box;
}
.com_subpricebox td dt::before{
    position: absolute;
    display: block;
    content: "：";
    top:0;
    right: 0;
    color: #544337;
    font-weight: normal;
}
.com_subpricebox td dt,
.com_subpricebox td dd{
    display: inline-block;
}
.com_subpricebox td dd p{
    display: inline-block;
}
.com_subpricebox td dd p.hosho{
    font-size:80%;
    background: #73B882;
    color: #fff;
    padding: 0.1em .7em;
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.4em;
    border-radius: 50px;
}
.com_subpricebox td dd p span{
    color: #E47666;
    font-weight: bold;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.com_subpricebox{
    margin-top: 1.5em;
}
.com_subpricebox td dt,
.com_subpricebox td dd{
    font-feature-settings: "palt";
}
.com_subpricebox th{
    width: 5rem;
    letter-spacing: 0.2em;
}
.com_subpricebox td{
    width: calc(100% - 5rem);
    padding: 1rem 1rem;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_subpricebox{
    margin-top: 1.5em;
    display: block;
}
.com_subpricebox th,
.com_subpricebox td{
    display: block;
}
.com_subpricebox th{
    width: 100%;
    font-size:95%;
    letter-spacing: 0.2em;
    padding: 0 0 .1em;
}
.com_subpricebox td{
    font-size:90%;
    width: 100%;
    padding: 1rem 1.2rem;
}
.com_subpricebox td dd p.hosho{
    font-size:80%;
    padding: 0.1em .7em;
    letter-spacing: 0.1em;
    line-height: 1.4em;
}
}




/* PC
------------------------------------------*/
@media only screen and (min-width: 960px)  {
.tb_only{display:none !important;}
.sp_only{display:none !important;}
.sp_tb{display:none !important;}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.pc_only{display:none !important;}
.sp_only{display:none !important;}
.sp_pc{display:none !important;}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.pc_only{display:none !important;}
.tb_only{display:none !important;}
.tb_pc{display:none !important;}
}</pre></body></html>