@charset "utf-8";


/* wrapper
----------------------------------------------- */
#wrapper {
	overflow: hidden;
	position: relative;
}
.inner {
	padding: 0 20px;
}

@media (max-width: 767px) {
.inner {
	padding: 0 15px;
}
}


/* header
----------------------------------------------- */
#header {
	background: rgba(255,255,255,0);
	padding: 10px 20px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
	z-index: 90;
}
#header .headerbg {
	padding: 0 20px;
	background: #fff;
}
#header .headerin {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 0 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#header .headerleft {
	margin-right: 10px;
}
#header .headercap {
	font-size: 10px;
	line-height: 1.5;
	letter-spacing: 0;
	color: #707070;
	margin-bottom: 10px;
	position: relative;
}

#header .headermess {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
	z-index: 90;
}
#header .headermess .messcont {
	padding: 0 100px 0 0;
}

/* 入れ替え */
#header .headermess .messtel {
	background: url(https://www.sawada-p.com/wp-content/uploads/2025/04/tel_header.png) 0 center no-repeat ,linear-gradient(transparent 60%, #dcfce2 /*#b4fcff*/ 60%);
	font-size: clamp(1.2rem, 0.574rem + 1.45vw, 1.875rem);
	display: flex;
	height: 30px;
	align-items: center;
	letter-spacing: 0;
	color: #0a940a /*#004195*/;
	font-weight: 900;
	line-height: 1;
	padding-left: 45px;
	white-space:nowrap;
	margin-bottom: 5px;
	text-shadow: -2px -2px 0 #fff, 2px -2px 0 #fff, -2px 2px 0 #fff, 2px 2px 0 #fff;

}
/* /入れ替え/ */


/*　入れ替え前　*/
/*#header .headermess .messtel {
	margin-bottom: 5px;
}*/
/*　/入れ替え前/　*/



#header .headermess .messrest {
	margin-bottom: 2px;
	display: flex;
	align-items: center;
}
#header .headermess .messrest .resttit {
	width: 66px;
	text-align: center;
	font-size: 14px;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.1em;
	font-weight: 700;
	margin-right: 10px;
}
#header .headermess .messrest .resttxt {
	color: #2C2C2C;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
}
#header .headermess .messtime {
	display: flex;
	align-items: flex-start;
}
#header .headermess .messtime .timetit {
	width: 66px;
	text-align: center;
	font-size: 14px;
	line-height: 1.2;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.1em;
	font-weight: 700;
	margin-right: 10px;
}
#header .headermess .messtime .timetxt {
	color: #2C2C2C;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.05em;
}
#header .gnavi {
	display: flex;
	align-items: flex-end;
}
#header .gnavi li+li {
	margin-left: 16px;
}
#header .gnavi li a {
	display: block;
	border-bottom: 1px #07471d solid;
	padding: 0 12px 5px;
	font-size: 14px;
	font-weight: 700;
	color: #0a940a /*#004195*/;
	line-height: 1.4;
	letter-spacing: 0.05em;
	text-align: center;
}
#header .gnavi li a:hover {
	color: #2C2C2C;
	border-bottom: 1px #707070 solid;
}



/* dropdown-menu
----------------------------------------------- */
.navbar-toggle {
	position: fixed;
	right: 50%;
	transform: translateX(695px);
	top: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 40px;
	height: 40px;
	border: 1px #fff solid;
	cursor: pointer;
	background: #0a940a /*#004195*/;
	z-index: 102;
}

@media(hover: hover) {
.navbar-toggle:hover {
	border: 1px #0a940a /*#004195*/ solid;
	cursor: pointer;
	background: #FFF;
}
.navbar-toggle:hover .toggle-menu span {
	background-color: #0a940a /*#004195*/;
}
.navbar-toggle:hover .toggle-txt {
	color: #0a940a /*#004195*/;
}
.navbar-toggle.on:hover {
	background: #0a940a /*#004195*/;
}
.navbarbox .navlink .linklist li a:hover {
	color: #004195;
	border-bottom: 1px #004195 solid;
}
}



@media (max-width: 1440px) {
.navbar-toggle {
	right: 50px;
	transform: translateX(0);
}
}
.navbar-toggle .toggle-txt {
	font-size: 8px;
	font-weight: 700;
	line-height: 1.2;
	color: #fff;
	margin-top: 2px;
	text-align: center;
	letter-spacing: 0.1em;
}
.navbar-toggle .toggle-txt .open {
	display: block;
}
.navbar-toggle .toggle-txt .close {
	display: none;
}
.navbar-toggle.on .toggle-txt .open {
	display: none;
}
.navbar-toggle.on .toggle-txt .close {
	display: block;
}
.navbar-toggle .toggle-menu {
	width: 40px;
	height: 40px;
	position: relative;
	padding:5px;
}
.navbar-toggle .toggle-menu span {
	position: absolute;
	display: inline-block;
	transition: all .4s;
	left: 5;
	background-color: #FFF;
	width: 30px;
	height: 1.5px;

}
.navbar-toggle .toggle-menu span:nth-of-type(1) {
	top:4;
}

.navbar-toggle .toggle-menu span:nth-of-type(2) {
	top:13px;
}

.navbar-toggle .toggle-menu span:nth-of-type(3) {
	top:22px;
}
.navbar-toggle.on .toggle-menu span {
	background-color: #fff;
}
.navbar-toggle.on {
	border: 1px #FFF solid;
	background: #0a940a /*#004195*/;
}
.navbar-toggle.on .toggle-menu span:nth-of-type(1) {
	top:12px;
	transform: translateY(6px) rotate(-45deg);
}

.navbar-toggle.on .toggle-menu span:nth-of-type(2) {
	opacity: 0;
}
.navbar-toggle.on .toggle-menu span:nth-of-type(3) {
	top: 24px;
	transform: translateY(-6px) rotate(45deg);
}

.navbar-collapse {
	position: fixed;
	top: 0;
	right: -400px;
	width: 400px;
	height: 100vh;
	background: #FFF;
	display: block;
	z-index: 101;
	transition: all .5s;
}
.navbar-collapse.on {
	right: 0px;
}

.navbarbox {
	height: 100%;
	overflow-y: scroll;
	-ms-overflow-style: none;
	overflow: -moz-scrollbars-none;
}
.navbarbox::-webkit-scrollbar{
	display: none;
}
.navbarbox {
	scrollbar-width: none;
}
.navbarbox .navlink {
	padding:0 30px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 90px 20px;
	background: #FFF;

}
.navbarbox .navlink .linklist {
	width: 100%;
	display: flex;
	flex-flow: column;
	flex-wrap: wrap;
}
.navbarbox .navlink .linklist li {
}
.navbarbox .navlink .linklist li:nth-child(4n) {
	margin-right: 0;
}
.navbarbox .navlink .linklist li a {
	display: block;
	border-bottom: 1px #07471d solid;
	padding: 30px 20px 5px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: left;
	color: #0a940a /*#004195*/;
}

@media (max-width: 1350px) {
#header .gnavi li+li {
	margin-left: 10px;
}

}

@media (max-width: 1230px) {
#header .gnavi li a {
	padding: 0 6px 5px;
}
}



@media (max-width: 1024px) {
#header .gnavi {
	display: none;
}
#header .headermess .messcont {
	padding: 0 80px 0 0;
}
#header .headermess .messtel {
	margin-bottom: 5px;
}

.navbarbox .navlink {
	padding: 80px 20px 100px;
}
.navbarbox .navlink .linklist {
}
.navbarbox .navlink .linklist li {
}
.navbarbox .navlink .linklist li:nth-child(4n) {
	margin-right: 0;
}
.navbarbox .navlink .linklist li a {
}

}





@media (max-width: 767px) {
#header {
	padding: 0 10px;
}
#header .headerbg {
	padding: 0 10px;
}
#header .headerin {
	height: 100px;
	padding: 10px 0;
	position: relative;
}
#header .headerleft {
	margin: 0;
	width: 100%;
}
#header .headercap {
	font-size: min(8px,2.13vw);
	margin-bottom: 5px;
	max-width: calc(100vw - 80px);
	position: relative;
	line-height: 1.25;
	z-index: 100;
}

#header .headerinup {
	max-width: 1440px;
	margin: 0 auto;
	height: 10px;
	padding: 10px 0 20px;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}

#header .headercapup {
	font-size: min(8px,2.13vw);
	margin-bottom: 5px;
	max-width: calc(100vw - 80px);
	position: relative;
	line-height: 1.25;
	z-index: 100;
}


#header .headerlogo {
	text-align: center;
	position: relative;
	z-index: 100;
}
#header .headerlogo img {
	width: 200px;
}
#header .headermess {
	display: none;
}
#header .headermess .messcont {
	display: none;
}

.navbar-toggle {
	right: 15px;
	top: 15px;
}
.navbar-toggle .toggle-menu {
}

.navbar-collapse {
	width: min(90%, 400px);
	height: 100vh;
	top: 0;
}
.navbarbox .navlink {
	display: block;
	padding: 10px 45px 20px;
}
.navbarbox .navlink .linklist {
	width: 100%;
	max-width: none;
	display: flex;
	justify-content: space-between;
}
.navbarbox .navlink .linklist li {
}
.navbarbox .navlink .linklist li a {
	font-size: min(3.125vw, 16px);
}



}
@media (max-width: 320px) {

.navbar-collapse {
	width: 90%;
}

.navbarbox .navlink .linklist {
}
.navbarbox .navlink .linklist li {
}
.navbarbox .navlink .linklist li a {
	font-size: 8px;/*font-size: 10px;*/
}

}



/* footer
----------------------------------------------- */
#footer {
	background: #ebffee; /*rgba(199,241,255,0.6)*/;
	padding: 50px 20px 30px;
	color: #2C2C2C;
	position: relative;
}
#footer .footerlogo {
	text-align: center;
	margin-bottom: 45px;
}
#footer .footerlogo a {
	display: inline-block;
}
#footer .footerin {
	max-width: 1200px;
	margin: 0 auto;
}
#footer .footername {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 40px;
}
#footer .footername .namelar {
	font-size: 28px;
	line-height: 1.5;
	color: #0a940a /*#004195*/;
	font-weight: 700;
	letter-spacing: 0;
}
#footer .footername .namesml {
	font-weight: 700;
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 0;
}
#footer .footertit {
	font-size: 22px;
	font-weight: 700;
	color: #0a940a /*#004195*/;
	letter-spacing: 0;
	line-height: 1.2;
}
#footer .footermt {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
#footer .footermt .footermess {
	width: 42%;
}
#footer .footermt .footeraddr {
	line-height: 1.375;
	margin-bottom: 35px;
}
#footer .footermt .footercont .footertit {
	margin-bottom: 5px;
}
#footer .footermt .footercont .conttxt {
	line-height: 1.5;
}
#footer .footermt .footertime {
	width: 45%;
}
#footer .footermt .footertime .timebox {
	width: 100%;
	margin-bottom: 10px;
}
#footer .footermt .footertime .timebox th,
#footer .footermt .footertime .timebox td {
	padding: 15px 0;
}
#footer .footermt .footertime .timebox th {
	text-align: center;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.05em;
	width: 10%;
}
#footer .footermt .footertime .timebox tr+tr th,
#footer .footermt .footertime .timebox tr+tr td {
	border-top: 1px #707070 solid;
}
#footer .footermt .footertime .timebox th.thtit {
	width: 30%;
	text-align: left;
	color: #0a940a /*#0154BF*/;
	font-weight: 700;
}
#footer .footermt .footertime .timebox td {
	font-size: 18px;
	line-height: 1.2;
	color: #2C2C2C /*#0154BF*/;
	text-align: center;
}
#footer .footermt .footertime .timebox td.tdtit {
	text-align: left;
	color: #2C2C2C;
}
#footer .footermt .footertime .datebox {
	font-size: 18px/*14px*/;
	line-height: 1.7;
}
#footer .footermt .footertime .datebox .datelar {
	display: block;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.35;
	color: #0a940a /*#0154BF*/;
}
#footer .footermt .footertime .datebox .timeclose {
	font-size: 18px/16px**/;
}
#footer .footerbnr {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}
#footer .footerbnr li {
	margin: 0 10px;/*0 12px;*/
	width: 310px;/*380px;*/
}
#footer .footerbnr li a {
	display: flex;
	background: #0a940a /*#004195*/;
	height:  60px;/*70px;*/
	align-items: center;
	padding: 0 10px;/* 0 15px;*/
	justify-content: flex-start;
	color: #fff;
	font-size: 30px;/*36px*/
	font-weight: 700;
	border: 1px #0a940a/*#004195*/ solid;
	letter-spacing: 0;
}
#footer .footerbnr li a img {
	margin-right: 15px;
}
#footer .footerbnr li a:hover {
	background: #fff;
	color: #0a940a /*#004195*/;
}
#footer .footerbnr li a .bnricono {
	display: block;
	font-size: 0;
}
#footer .footerbnr li a .bnricoon {
	display: none;
	font-size: 0;
}
#footer .footerbnr li a:hover .bnricono {
	display: none;
}
#footer .footerbnr li a:hover .bnricoon {
	display: block;
}
#footer .footernavi {
	display: flex;
	justify-content: center;
	margin-top: 45px;
}
#footer .footernavi li {
	margin: 0 6px;
}
#footer .footernavi li a {
	display: block;
	border-bottom: 1px #07471d /*#0154BF*/ solid;
	padding: 0 12px 5px;
	font-size: clamp(10px,1vw,14px);
	font-weight: 600;/*font-weight: 700;*/
	color: #0a940a /*#004195*/;
	line-height: 1.4;
	letter-spacing: 0.05em;
	text-align: center;
}
#footer .footernavi li a:hover {
	color: #2C2C2C;
	border-bottom: 1px #707070 solid;
}
#footer .footerbtm {
	padding-bottom: min(120px,6.25vw);
	position: relative;
}
#footer .footerlink {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 40px;
	position: relative;
	z-index: 1;
}
#footer .footerlink li {
	margin: 10px 7px 0;

}
#footer .copyright {
	text-align: center;
	font-size: 10px;
	color: #0a940a /*#004195*/;
	letter-spacing: 0;
	position: relative;
	z-index: 1;
}
#footer .footerclover {
	text-align: center;
	position: relative;
	z-index: 1;
	margin-top: 5px;
}
#footer .pagetop {
	position: fixed;
	right: 40px;
	bottom: 20px;
	z-index: 3;
}
#footer .pagetop a {
	display: flex;
	border: 2px #707070 solid;
	width: 80px;
	height: 80px;
	background: #fff;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	color: #707070;
	font-size: 10px;
	letter-spacing: 0.075em;
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
}
#footer .pagetop a .arrow {
	display: block;
	width: 26px;
	height: 26px;
	transform: rotate(135deg);
	margin-bottom: -5px;
	border-left: 2px #707070 solid;
	border-bottom: 2px #707070 solid;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
#footer .pagetop a:hover {
	border: 2px #0a940a /*#004195*/ solid;
	background: #ebffee  /*#E2F5FB*/;
	color: #0a940a /*#004195*/;
}
#footer .pagetop a:hover .arrow {
	border-left: 2px #0a940a /*#004195*/ solid;
	border-bottom: 2px #0a940a /*#004195*/ solid;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}

@media (min-width: 1440px) {
#footer .pagetop {
	right:calc(50% - 700px);
}
}
@media (max-width: 1250px) {
#footer .footerbnr li a {
	font-size: 28px;
}
}
@media (max-width: 1024px) {
#footer .footerbnr {
	flex-direction: column;
	align-items: center;
}
#footer .footerbnr li {
	margin: 10px 0;
}
#footer .footernavi li {
	margin: 0 10px;
}
#footer .footernavi li a {
	padding: 0 6px 5px;
}
#footer .footermt .footermess {
	width: 46%;
}
#footer .footermt .footertime {
	width: 50%;
}
#footer .pagetop {
	right: 20px;
	bottom: 20px;
}
}
@media (max-width: 767px) {
#footer {
	padding: 30px 10px 50px;/*30px 20px 50px*/
	background: #ebffee /*#DFF2FF*/;
}
#footer .footerlogo {
	margin-bottom: 20px;
}
#footer .footerlogo img {
	width: 190px;
}
#footer .footername {
	margin-bottom: 25px;
}
#footer .footername .namelar {
	font-size: min(18px,4.8vw);
	margin-bottom: 25px;
}
#footer .footername .namesml {
	font-size: 13px;
}
#footer .footertit {
	font-size: 13px;
}
#footer .footermt {
	display: block;
}
#footer .footermt .footermess {
	width: auto;
}
#footer .footermt .footeraddr {
	font-size: 12px;
	margin-bottom: 20px;
}
#footer .footermt .footercont .footertit {
	margin-bottom: 2px;
}
#footer .footermt .footercont .conttxt {
	font-size: 12px;
}
#footer .footermt .footertime {
	width: auto;
	margin-top: 40px;
}
#footer .footermt .footertime .timebox {
	width: 100%;
	margin-bottom: 5px;
}
#footer .footermt .footertime .timebox th,
#footer .footermt .footertime .timebox td {
	padding: 10px 0;
}
#footer .footermt .footertime .timebox th {
	font-size: 13px;
}
#footer .footermt .footertime .timebox th.thtit {
	width: 30%;
}
#footer .footermt .footertime .timebox td {
	font-size: 12px;
}
#footer .footermt .footertime .timebox td.tdtit {
	font-size: 12px;
	font-weight: 400;
}
#footer .footermt .footertime .datebox {
	font-size: 12px;
}
#footer .footermt .footertime .datebox .datelar {
	font-size: 13px;
}
#footer .footermt .footertime .datebox .timeclose {
	font-size: 12px;
}
#footer .footerbnr {
	display: none;
}
#footer .footernavi {
	display: none;
}
#footer .footerbtm {
	margin-top: 35px;
	padding-bottom: min(70px,18.6vw);
}
#footer .footerlink {
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
#footer .footerlink li {
	margin: 0 10px 25px;
	max-width: none;

}
#footer .footerlink li img {
	max-width:100%;
}
#footer .pagetop {
	display: none;
}
}

#footer .comfix {
	display: none;
}
@media (max-width: 767px) {
#footer .comfix {
	display: flex;
	position: fixed;
	justify-content: space-between;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 100;
}
#footer .comfix li {
	width: 32%;
}
#footer .comfix li a {
	display: flex;
	border: 1px #0a940a /*#004195*/ solid;
	background: #0a940a /*#004195*/;
	height: 50px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	font-size: 10px;
	line-height: 1.5;
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
	letter-spacing: 0;
}
#footer .comfix li a .imgno {
	display: block;
}
#footer .comfix li a .imgon {
	display: none;
}
#footer .comfix li a:hover,
#footer .comfix li a:active {
	background: #fff;
	color: #0a940a /*#004195*/;
}
#footer .comfix li a:hover .imgno,
#footer .comfix li a:active .imgno {
	display: none;
}
#footer .comfix li a:hover .imgon,
#footer .comfix li a:active .imgon {
	display: block;
}
}


/* anchor
----------------------------------------------- */
.anchor {
	position: absolute;
	left: 0;
	top: 0;
	padding-top: 200px;
	margin-top: -200px;
	z-index: 0;
}
@media (max-width: 767px) {
.anchor {
	padding-top: 110px;
	margin-top: -110px;
}
}



/* comnavi
----------------------------------------------- */
.comnavi {
	margin-bottom: 15px;
}
.comnavi .navilist {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.comnavi .navilist li {
	margin: 0 12px;
	min-width: 60px;
}
.comnavi .navilist li a {
	display: block;
	padding: 0 4px 10px;/*padding: 0 8px 10px;*/
	text-align: center;
	border-bottom: 1px #07471d /*#004195*/ solid;
	color: #0a940a /*#004195*/;
	font-size: 14px;/*font-size: 18px;*/
	line-height: 1.0;/*line-height: 1.35;*/
	letter-spacing: 0.05em;
	font-weight: 600;
}
.comnavi .navilist li a:hover {
	color: #2C2C2C;
	border-bottom: 1px #707070 solid;
}

@media (max-width: 1024px) {
.comnavi {
	display: none;
}
}




/* H
----------------------------------------------- */
.hdl {
	display: flex;
	justify-content: center;
	margin-bottom: 100px;
}
.hdl .hdlin {
	min-width: 300px;
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.1em;
	line-height: 1.5;
	padding: 0 10px 5px;
	border-bottom: 3px #929292 solid;
	position: relative;
}
.hdl .hdlin:before {
	position: absolute;
	content: "";
	background: #0a940a /*#004195*/;
	width: 50%;
	height: 3px;
	bottom: -3px;
	left: 0;
	z-index: 0;
}

@media (max-width: 767px) {
.hdl {
	margin-bottom: 40px;
}
.hdl .hdlin {
	min-width: inherit;
	width: 300px;/*width: 240px;*/
	max-width: 100%;
	font-size: 20px;/*18px*/
	letter-spacing: 0.1em;
	padding: 0 10px 2px;
}
}




/* teaser
----------------------------------------------- */
.teaser {
	max-width: 1460px;
	margin: 0 auto 20px;
}
.teaser .teaserin {
	position: relative;
}
.teaser .decleft {
	position: absolute;
	left: 0;
	bottom: 0;
	max-width: 11%;
	z-index: 0;
}
.teaser .decright {
	position: absolute;
	top: 20px;
	right: 0;
	max-width: 12%;
	z-index: 0;
}
.teaser .teaserimg {
	text-align: center;
}
.teaser .teasercont {
	font-size: 80px;
	letter-spacing: 0.12em;
	font-weight: 700;
}
.teaser .teasergray {
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #707070;
	z-index: 0;
}
.teaser .teaserwhite {
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	transform: translate(-2px,-2px);
	z-index: 0;
}
.teaser .teaserbtm {
	display: none;
}

@media (max-width: 1024px) {
.teaser .teasercont {
	font-size: 60px;
	letter-spacing: 0.12em;
}
}
@media (max-width: 767px) {
.teaser {
	margin: 0 auto 10px;
}
.teaser .teaserin {
	padding: 0 15px;
}
.teaser .decleft {
	display: none;
}
.teaser .decright {
	display: none;
}
.teaser .teasercont {
	font-size: 23px;
	letter-spacing: 0.12em;
}
.teaser .teaserwhite {
	transform: translate(-1px,-1px);
}
.teaser .teaserbtm {
	display: block;
	padding: 0 15px;
	margin-top: 10px;
	text-align: left;
}

}

/* breadcrumbs
----------------------------------------------- */
.breadcrumbs {
	max-width: 1460px;
	padding: 0 15px;
	margin: 0 auto 20px;
	color: #2C2C2C;
}
.breadcrumbs a {
	color: #2C2C2C;
}
.breadcrumbs .breadin {
}
.breadcrumbs a:hover {
	text-decoration: underline;
}
.breadcrumbs .arrow {
	margin: 0 1em;
}

@media (max-width: 767px) {
.breadcrumbs {
	font-size: 12px;
	margin: 0 auto 65px;
}
}

/* decoration
----------------------------------------------- */
.comdecor01 {
	position: absolute;
	top: 160px;
	left: 40px;
	z-index: 0;
}
.comdecor02 {
	position: absolute;
	top: 520px;
	right: 25px;
	z-index: 0;
}
.comdecor03 {
	position: absolute;
	z-index: 0;
}
.comdecor04 {
	position: absolute;
	z-index: 0;
}

@media (max-width: 1024px) {
.comdecor01 {
	display: none;
}
.comdecor02 {
	position: static;
	top: auto;
	right: auto;
	text-align: right;
	margin-top: 50px;
	padding: 0 5px;
}
.comdecor03 {
	position: static;
	left: auto;
	top: auto;
	right: auto;
	bottom: auto;
	margin: 0 0 70px -15px;
}
.comdecor04 {
	position: static;
	left: auto;
	top: auto;
	right: auto;
	bottom: auto;
	text-align: right;
	margin: 75px -15px 0 0;
}
}

/* comsns
----------------------------------------------- */
.comsns {
	max-width: 1460px;
	margin: 200px auto 0;
	position: relative;
	z-index: 1;
}
.comsns .snslist {
	display: flex;
}
.comsns .snslist li {
	width: 50px;
	margin-right: 10px;
}
@media (max-width: 1024px) {
.comsns {
	margin: 70px auto 0;
}
}
@media (max-width: 767px) {
.comsns {
	margin: 70px -20px 0;
}
.comsns .snslist li {
	width: 30px;
	margin-right: 5px;
}
}


/* doctor
----------------------------------------------- */
.docleader {
	padding: 0 30px 0;
	position: relative;
}
.docleader .leaderinner {
	max-width: 1095px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.docleader .leaderinner .leaderbox {
	display: flex;
	align-items: flex-start;
}
.docleader .leaderinner .leaderimg {
	width: 32%;
	text-align: center;
	margin-right: 9%;
}
.docleader .leaderinner .leadercap {
	text-align: center;
	display: block;
	margin-top: 25px;
	font-size: 18px;
	font-weight: 500;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.075em;
	line-height: 1.5;
}
.docleader .leaderinner .leadercont {
	flex: 1;
}
.docleader .leaderinner .leadertxt {
	
}

@media (max-width: 1024px) {
.docleader {
	padding: 0 30px 0;
	position: relative;
}
.docleader .leaderinner .leaderimg {
	margin-right: 5%;
}
}
@media (max-width: 767px) {
.docleader {
	padding: 0 30px 70px;
}
.docleader .leaderinner .leaderbox {
	display: block;
	padding: 0 5px;
}
.docleader .leaderinner .leaderimg {
	width: auto;
	margin: 0 0 70px;
}
.docleader .leaderinner .leadercap {
	margin-top: 15px;
	font-size: 12px;
	letter-spacing: 0.075em;
}
}

.dochistory {
	padding: 177px 30px 0;
	position: relative;
}

.dochistory .historyin {
}
.dochistory .historycont {
	display: flex;
	justify-content: center;
}
.dochistory .historytxt {
}

@media (max-width: 1024px) {
.dochistory {
	padding: 100px 30px 0;
}
}
@media (max-width: 767px) {
.dochistory {
	padding: 50px 30px 75px;
}
}

.docquali {
	padding: 177px 30px 200px;
	position: relative;
}
.docquali .comdecor03 {
	top: 100px;
	left: 75px;
}
.docquali .comdecor04 {
	right: 120px;
	bottom: 130px;
}
.docquali .qualiinner {
	position: relative;
}
.docquali .qualicont {
	display: flex;
	justify-content: center;
}
.docquali .qualitxt {
}

@media (max-width: 1024px) {
.docquali {
	padding: 100px 30px;
}
.docquali .qualicont {
	margin-bottom: 100px;
}
}
@media (max-width: 767px) {
.docquali {
	padding: 80px 30px;
}
.docquali .qualicont {
	margin-bottom: 75px;
}
}

/* news list
----------------------------------------------- */
.newslist {
	margin: 20px 0 180px;
	padding: 0 20px;
	position: relative;
}
.newslist .tnewsdec01 {
	position: absolute;
	left: 40px;
	top: -45px;
	z-index: -1;
}
.newslist .tnewsdec02 {
	position: absolute;
	right: 25px;
	bottom: 25px;
	z-index: 0;
}
.newslist .tnewsinner {
	max-width: 1095px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.newslist .tophd {
	margin-bottom: 5px;
}
.newslist .tnewslist li {
	border-bottom: 1px #B7B7B7 solid;
	letter-spacing: 0;
	padding: 20px 0;
	line-height: 1.5;
}
.newslist .tnewslist .tnewsdate {
	font-weight: 700;
	color: #0a940a /*#004195*/;
}
.newslist .tnewslist .tnewslink a {
	display: inline-block;
	font-weight: 700;
	color: #707070;
	position: relative;
}
.newslist .tnewslist .tnewslink a:before {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: "";
	width: 100%;
	height: 1px;
	background: #0a940a /*#004195*/;
	opacity: 0;
	transition: transform .3s;
}
.newslist .tnewslist .tnewslink a:hover:before {
	opacity: 1;
	transition: transform .3s;
}
.newslist .tnewsmore {
	margin-top: 30px;
	display: flex;
	justify-content: flex-end;
}
.newslist .tnewsmore a {
	display: block;
	font-size: 13px;
	letter-spacing: 0;
	color: #0a940a /* #707070 */;
	font-weight: 700;
	padding-left: 20px;
	position: relative;
}
.newslist .tnewsmore a:before {
	position: absolute;
	content: "";
	left: 0;
	top:50%;
	transform:translateY(-50%);
	border-left:12px #0a940a /*#004195*/ solid;
	border-right:0;
	border-top:6px solid transparent;
	border-bottom:6px solid transparent;
	z-index: 1;
}
.newslist .tnewsmore a:hover:before {
	border-left:12px #0a940a /*#004195*/ solid;
}
@media (max-width: 767px) {
.newslist {
	margin: 15px 0 80px;
	padding: 0 15px;
}
.newslist .tnewsdec01 {
	left: auto;
	top: auto;
	text-align: left;
	margin-bottom: 50px;
}
.newslist .tnewsdec02 {
	position: static;
	text-align: right;
	right: auto;
	bottom: auto;
	margin-top: 60px;
	padding: 0 15px;
	z-index: 0;
}
.newslist .tophd {
	margin-bottom: 50px;
}
.newslist .tnewsmore {
	margin-top: 25px;
}
.newslist .tnewsmore a {
	font-size: 14px;
}
}


/* news detail
----------------------------------------------- */
.newsdetail {
	padding: 0 30px 200px;
	position: relative;
}
.newsdetail .detailinner {
	max-width: 980px;
	position: relative;
	margin: 0 auto;
	z-index: 1;
}
.newsdetail .post-body {
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
}
.newsdetail .post-body h2 {
	color: #0a940a /*#004195*/;
	font-size: 20px;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: 0.075em;
	border-bottom: 1px #0a940a /*#004195*/ solid;
	border-left: 8px #0a940a /*#004195*/ solid;
	padding: 5px 20px;
	margin-bottom: 50px;
}
.newsdetail .post-body div {
}
.newsdetail .postback {
	display: flex;
	justify-content: center;
	margin-top: 80px;
}
.newsdetail .postback a {
	display: flex;
	align-items: center;
	color: #0a940a /*#004195*/;
	line-height: 1.5;
	font-weight: 500;
}
.newsdetail .postback a img {
	margin-right: 20px;
}

@media (max-width: 1024px) {
.newsdetail {
	padding: 0 30px 100px;
	position: relative;
}
}
@media (max-width: 767px) {
.newsdetail {
	padding: 0 30px 80px;
}
.newsdetail .post-body h2 {
	font-size: 16px;
	margin-bottom: 80px;
}
.newsdetail .post-body {
	font-size: 14px;
}
.newsdetail .postback {
	margin-top: 60px;
}
}

/* access
----------------------------------------------- */
.accguide {
	padding: 0 30px 200px;
	position: relative;
}
.accguide .comdecor04 {
	right: 120px;
	bottom: 130px;
}
.accguide .guideinner {
	max-width: 1460px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.accguide .guidemap iframe {
	width: 100%;
	height: 650px;
}
.accguide .guidebox {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 15px;
	margin-bottom: 90px;
}
.accguide .guidebox li {
	width: 29%;
}
.accguide .guidebox .guidetit {
	color: #0BAC86;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-bottom: 15px;
}
.accguide .guidebox .guidetxt {
	line-height: 1.5;
}
.accguide .guidemap {
	margin-bottom: 100px;
}
.accguide .guidemess {
	padding: 0 15px;
}
.accguide .guidemess li {
	display: flex;
	align-items: center;
	font-size: 18px;
	letter-spacing: 0.075em;
}
.accguide .guidemess li+li {
	margin-top: 10px;
}
.accguide .guidemess .messtit {
	width: 75px;
	flex-shrink: 0;
	font-weight: 500;
	color: #0BAC86;
}
.accguide .guidemess .messtxt {
	
}

@media (max-width: 1024px) {
.accguide {
	padding: 0 30px 100px;
}
.accguide .guidebox li {
	width: 30%;
}
.accguide .comdecor04 {
	display: none;
}
}
@media (max-width: 767px) {
.accguide {
	padding: 0 30px 70px;
}
.accguide .guidemap {
	margin: 0 -30px 60px;
}
.accguide .guidemap iframe {
	height: 270px;
}
.accguide .guidebox {
	display: block;
	padding: 0;
	margin-bottom: 80px;
}
.accguide .guidebox li {
	width: auto;
}
.accguide .guidebox li+li {
	margin-top: 40px;
}
.accguide .guidemess {
	padding: 0;
}
.accguide .guidemess li {
	flex-wrap: wrap;
	font-size: 16px;
}
.accguide .guidemess li+li {
	margin-top: 10px;
}
.accguide .guidemess .messtit {
	font-size: 18px;
	font-weight: 700;
	color: #0BAC86;
	margin: 5px 0;
}
.accguide .guidemess .messtxt {
	font-size: 16px;
	margin: 5px 0;
}
}





/* contact
----------------------------------------------- */
.ctabox {
	padding: 0 30px 200px;
	position: relative;
}
.ctainner {
	max-width: 870px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.ctainner .ctadet {
	display: flex;
	justify-content: center;
	margin-bottom: 130px;
}
.ctainner .ctadet .dettxt {
	line-height: 1.5;
}
.ctabox .comdecor03 {
	left: 75px;
	top: 1700px;
}
.ctabox .comdecor04 {
	right: 120px;
	bottom: 130px;
}
.ctainner .formbox {
	
}
.ctainner .formhd {
	color: #0a940a /*#004195*/;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 50px;
}
.ctainner .formlist li+li {
	margin-top: 40px;
}
.ctainner .formlist .formtit {
	font-size: 24px;
	color: #15ADB3;
	font-weight: 700;
	line-height: 1.5;
	padding: 5px 0 5px 20px;
	border-left: 10px #15ADB3 solid;
	margin-bottom: 25px;
}
.ctainner .formlist .formin {
	padding: 0 0 0 30px;
	font-size: 24px;
	line-height: 1.5;
}
.ctainner .formlist input[type=text],
.ctainner .formlist input[type=email],
.ctainner .formlist input[type=tel] {
	background: #fff;
	border: 1px #707070 solid;
	height: 54px;
	padding: 5px 15px;
	letter-spacing: 0;
	line-height: 1.5;
	width: 72%;
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
}
.ctainner .formlist input.wmid {
	width: 38%;
}
.ctainner .formlist input.wsml {
	width: 20%;
}
.ctainner .formlist textarea {
	background: #fff;
	border: 1px #707070 solid;
	height: 260px;
	padding: 5px 15px;
	letter-spacing: 0;
	line-height: 1.5;
	width: 72%;
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
}
.ctainner .formlist .formname+.formname {
	margin-top: 15px;
}
.ctainner .formlist .formname {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.ctainner .formlist .formname input {
	margin-right: 40px;
}
.ctainner .formlist .formname .namecap {
	color: #00B0FF;
}
.ctainner .formlist .formsex {
	display: flex;
	align-items: center;
}
.ctainner .formlist .formsex label {
	margin-right: 1em;
}
.ctainner .formlist .formsex input {
	width: 20px;
	height: 20px;
	border: 1px #707070 solid;
	background: #fff;
	margin-right: 5px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	position: relative;
}
.ctainner .formlist .formsex input:checked:before {
	position: absolute;
	content: "";
	background: #707070;
	width: 10px;
	height: 10px;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	z-index: 0;
}
.ctainner .formlist .formcode {
	display: flex;
	align-items: center;
}
.ctainner .formlist .formcode input {
	margin: 0 1em;
}
.ctainner .formlist select {
	width: 24%;
	background: url(../img/contact/arrow_select.png) right 10px center no-repeat #fff;
	border: 1px #707070 solid;
	height: 54px;
	padding: 5px 35px 0 15px;
	letter-spacing: 0;
	line-height: 1.5;
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
}
.ctainner .formlist .formaddr+.formaddr {
	margin-top: 20px;
}
.ctainner .formlist .formaddr .addrtit {
	color: #0a940a /*#004195*/;
	margin-bottom: 5px;
	letter-spacing: 0;
	display: block;
}
.ctainner .formlist .formaddr .addrcap {
	font-size: 16px;
	color: #00B0FF;
	line-height: 1.6;
	display: block;
}
.ctainner .formlist .formaddr .addrcap.capother {
	display: inline-block;
}
.ctainner .formlist .formtel {
}
.ctainner .formlist .formtel .telline {
	margin: 0 0.8em;
	display: inline-block;
}
.ctainner .formlist .formmail {
	
}
.ctainner .formlist .formmail .mailtxt {
	display: block;
	margin: 7px 0 13px;
}
.ctainner .formlist .formmail .mailtxt .mailsml {
	font-size: 16px;
	letter-spacing: 0.1em;
	display: block;
}
.ctainner .formnote {
	padding: 20px 0 0 30px;
	font-size: 24px;
	letter-spacing: 0;
	color: #2C2C2C;
	font-weight: 700;
	line-height: 1.5;
}
.ctainner .formbtn {
	padding: 0 30px;
	margin-top: 70px;
}
.ctainner .formbtn input[type=submit] {
	background: #D6D6D6;
	border: 1px #707070 solid;
	text-align: center;
	font-size: 24px;
	letter-spacing: 0;
	font-weight: 400;
	width: 150px;
	height: 54px;
	font-family: " メイリオ"," ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Meiryo, Osaka, MS PGothic," sans-serif";
	cursor: pointer;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
}

.mw_wp_form_input .confirmnote{
 display: none;
}
.mw_wp_form_confirm .inputnote{
 display: none;
}

@media (max-width: 1024px) {
.ctabox {
	padding: 0 30px 100px;
}
.ctabox .comdecor03 {
	display: none;
}
.ctabox .comdecor04 {
	display: none;
}
}
@media (max-width: 767px) {
.ctabox {
	padding: 0 30px 70px;
}
.ctainner .ctadet {
	margin-bottom: 50px;
	padding: 0 5px;
}
.ctainner .ctadet .dettxt {
	font-weight: 500;
}
.ctainner .formbox {
	margin: 0 -15px;
}
.ctainner .formhd {
	margin-bottom: 25px;
}
.ctainner .formlist li+li {
	margin-top: 25px;
}
.ctainner .formlist .formtit {
	font-size: 14px;
	padding: 1px 0 1px 10px;
	border-left: 5px #15ADB3 solid;
	margin-bottom: 15px;
}
.ctainner .formlist .formin {
	padding: 0 0 0 15px;
	font-size: 12px;
}
.ctainner .formlist input[type=text],
.ctainner .formlist input[type=email],
.ctainner .formlist input[type=tel] {
	height: 30px;
	padding: 2px 10px;
	width: 100%;
}
.ctainner .formlist input.wmid {
	width: 50%;
}
.ctainner .formlist input.wsml {
	width: 25%;
}
.ctainner .formlist textarea {
	height: 130px;
	padding: 5px 10px;
	width: 100%;
}
.ctainner .formlist .formname+.formname {
	margin-top: 10px;
}
.ctainner .formlist .formname input {
	margin-right: 20px;
}
.ctainner .formlist .formname .namecap {
	color: #00B0FF;
}
.ctainner .formlist .formsex input {
	width: 10px;
	height: 10px;
	margin-right: 3px;
}
.ctainner .formlist .formsex input:checked:before {
	width: 5px;
	height: 5px;
}
.ctainner .formlist .formcode input {
	margin: 0 0.5em;
}
.ctainner .formlist .formcode .txtlar {
	font-size: 18px;
}
.ctainner .formlist select {
	width: 30%;
	background: url(../img/contact/arrow_select.png) right 5px center no-repeat #fff;
	background-size: 13px auto;
	height: 30px;
	padding: 5px 20px 0 10px;
}
.ctainner .formlist .formaddr+.formaddr {
	margin-top: 10px;
}
.ctainner .formlist .formaddr .addrtit {
	font-weight: 500;
	color: #0a940a /*#004195*/;
}
.ctainner .formlist .formaddr .addrcap {
	font-size: 10px;
	color: #00B0FF;
}
.ctainner .formlist .formaddr .addrcap.capother {
	display: block;
}
.ctainner .formlist .formtel .teltxt {
	display: inline-block;
	font-weight: 500;
}
.ctainner .formlist .formmail .mailtxt {
	margin: 20px 0 5px;
	font-weight: 500;
}
.ctainner .formlist .formmail .mailtxt .mailsml {
	font-size: 10px;
	letter-spacing: 0.1em;
	font-weight: 400;
}
.ctainner .formnote {
	padding: 10px 0 0 15px;
	font-size: 11px;
}
.ctainner .formbtn {
	padding: 0 14px;
	margin-top: 30px;
}
.ctainner .formbtn input[type=submit] {
	font-size: 11px;
	letter-spacing: 0;
	width: 78px;
	height: 28px;
}
}

/* ページ汎用
----------------------------------------------- */
.section01 {
	padding: 0 30px 90px;
	position: relative;
}
@media (max-width: 1024px) {
.section01 {
	padding: 0 30px 30px;
}
}
@media (max-width: 767px) {
.section01 {
	padding: 0 30px 90px;/*padding: 0 30px 70px;*/
}
}
.section02 {
	padding: 100px 30px 0;/*177px 30px 0;*/
	position: relative;
}

@media (max-width: 1024px) {
.section02 {
	background-size: 90% auto;
	padding: 100px 30px 30px;/*100px 30px 0;*/
}
}
@media (max-width: 767px) {
.section02 {
	padding: 0 30px 50px;/* 50px 30px 75px;*/
}

}
.section03 {
	padding: 100px 30px 200px;/*padding: 177px 30px 200px;*/
	position: relative;
}
.section03 .comdecor03 {
	top: 50px;/*top: 500px;*/
	left: 75px;
}
.section03 .comdecor04 {
	right: 120px;
	bottom: 130px;
}
@media (max-width: 1024px) {
.section03 {
	padding: 0px 30px 30px;/*100px 30px 0;*/
}
}
@media (max-width: 767px) {
.section03 {
	padding: 0px 30px 80px;/*padding: 80px 30px;*/
}
}


.contentinner {
	max-width: 1095px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
	/* background-color: #74992e;/新規追加　確認用/ */
}
.contentinner .contentbox {
	display: flex;
	align-items: flex-start;
}
.contentinner .margin {
	margin-bottom: 100px;

}
.contentinner .contentimg {
	width: 32%;
	max-width: 650;/*新規追加*/
	text-align: center;
	margin-right: min(9%, 36px);
}
.contentinner .contentcap {
	text-align: center;
	display: block;
	margin-top: 25px;
	font-size: 18px;
	font-weight: 500;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.075em;
	line-height: 1.5;
}
.contentinner .contentcont {
	flex: 1;
}
.contentinner .contenttxt {
	
}
@media (max-width: 1024px) {
.contentinner .contentimg {
	margin-right: 5%;
}
}
@media (max-width: 767px) {
.contentinner .contentbox {
	display: block;
	padding: 0 5px;
}
.contentinner .contentimg {
	width: auto;
	margin: 0 0 70px;
}
.contentinner .contentcap {
	margin-top: 15px;
	font-size: 12px;
	letter-spacing: 0.075em;
}
}


.section01 .comdecor01 {
	position: absolute;
	top: 160px;
	left: 40px;
	z-index: 0;
}
.section01 .comdecor02 {
	position: absolute;
	top: 520px;
	right: 25px;
	z-index: 0;
}
.section03 .comdecor03 {
	position: absolute;
	z-index: 0;
}
.section03 .comdecor04 {
	position: absolute;
	z-index: 0;
}

/* 新規追加  */
.section04 .comdecor04 {
	position: absolute;
	z-index: 0;
}
/* /新規追加/  */


@media (max-width: 1024px) {
.section01 .comdecor01 {
	display: none;
}
.section01 .comdecor02 {
	position: static;
	top: auto;
	right: auto;
	text-align: right;
	margin-top: 50px;
	padding: 0 5px;
}
.section03 .comdecor03 {
	position: static;
	left: auto;
	top: auto;
	right: auto;
	bottom: auto;
	margin: 0 0 70px -15px;
}
.section03 .comdecor04 {
	position: static;
	left: auto;
	top: auto;
	right: auto;
	bottom: auto;
	text-align: right;
	margin: 75px -15px 0 0;
}

	
/* 新規追加  */
.section04 .comdecor04 {
	position: absolute;
	z-index: 0;
}
/* /新規追加/  */

	
}

/* 診療科目・アクセス
----------------------------------------------- */
.accessinner {
	max-width: 1095px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
	padding: 0 40px;
	/*　使用しない// color: #0a940a /*#004195*/; */
}
.accessinner .contentbox {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content:center;
}
.accessinner .margin {
	margin-bottom: 100px;
}
.accessinner .contentcont {
	width: 100%;
}
.accessinner .contenttit {
	display:block;
	color: #0a940a /*#004195*/;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
	margin-bottom:15px;
}
.accessinner .contenttxt {
    font-size: 18px;
}
.accessinner .contenttime {
	width: 100%;
}
.accessinner .contenttime .timebox {
	width: 100%;
	margin-bottom: 10px;
}
.accessinner .contenttime .timebox th,
.accessinner .contenttime .timebox td {
	padding: 30px 0;
}
.accessinner .contenttime .timebox th {
	text-align: center;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.05em;
	width: 10%;
}
.accessinner .contenttime .timebox tr+tr th,
.accessinner .contenttime .timebox tr+tr td {
	border-top: 1px #707070 solid;
}
.accessinner .contenttime .timebox th.thtit {
	width: 30%;
	text-align: left;
	font-weight: 700;
	/* 新規追加 */color: #0a940a /*#004195*/;
}
.accessinner .contenttime .timebox td {
	font-size: 18px/*14px*/;
	line-height: 1.2;
	text-align: center;
}
.accessinner .contenttime .timebox td.tdtit {
	text-align: left;
	font-size: 24px;
	font-weight: 600;
	/* 新規追加 */color: 0 /*#004195*/;
}
.accessinner .contenttime .datebox {
	line-height: 1.7;
	font-size: 18px;
}
.accessinner .contenttime .datebox .datelar {
	display: block;
	font-weight: 700;
	font-size: 21px/*18px*/;
	line-height: 1.35;
	/* 新規追加 */color: #0a940a /*#004195*/;
}
@media (max-width: 767px) {
.accessinner {
	padding: 0;
}
.accessinner  .contentcont .margin {
	margin-bottom: 30px;
}
.accessinner .contenttit {
	font-size: 18px;
	margin-bottom: 2px;
}
.accessinner .contenttxt {
	font-size: 16px;
}
.accessinner .contenttime {
	width: auto;
	margin-top: 40px;
}
.accessinner .contenttime .timebox {
	width: 100%;
	margin-bottom: 5px;
}
.accessinner .contenttime .timebox th,
.accessinner .contenttime .timebox td {
	padding: 10px 0;
}
.accessinner .contenttime .timebox th {
	font-size: 18px/*16px*/;
}
.accessinner .contenttime .timebox th.thtit {
	width: 30%;
}
.accessinner .contenttime .timebox td {
	font-size: 16px;/*14px*/
}
.accessinner .contenttime .timebox td.tdtit {
	font-size: 16px;/*14px*/
	font-weight: 400;
}
.accessinner .contenttime .datebox {
	font-size: 16px;
}
.accessinner .contenttime .datebox .datelar {
	font-size: 18px;
}
}




/* top
----------------------------------------------- */
.topmain {
	max-width: 1440px;
	margin: 0 auto;
	position: relative;
}
.topmain .mainslider .slick-dots {
	position: absolute;
	left: 0;
	bottom: 45px;
	width: 100%;
	display: flex;
	justify-content: center;
	z-index: 1;
}
.topmain .mainslider .slick-dots li {
	margin: 0 3px;
	font-size: 0;
	padding: 0;
}
.topmain .mainslider .slick-dots li button {
	text-indent: -9999px;
	font-size: 0;
	padding: 0;
	width: 18px;
	height: 18px;
	border: 1px #707070 solid;
	background: #fff;
	cursor: pointer;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
}
.topmain .mainslider .slick-dots li.slick-active button {
	background: #707070;
}
.topmain .mainbox {
	max-width: 1100px;
	padding: 0 10px;
	margin: -30px auto 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
}
.topmain .mainbox .maincap {
	width: 44%;
	background: #0a940a /*#004195*/;
	line-height: 1.5;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.1em;
	padding: 10px 15px;
	margin-bottom: -20px;
	position: relative;
}
.topmain .mainbox .maincont {
	align-self: flex-end;
	width: 74%;
	background: #ebffee /*#D8E9FF*/;
	padding: 35px 20px 25px;
	font-size: 18px;
	line-height: 1.65;
	letter-spacing: 0;
}

@media (max-width: 767px) {
.topmain .mainslider .slick-dots {
	bottom: 10px;
}
.topmain .mainslider .slick-dots li {
	margin: 0 2px;
}
.topmain .mainslider .slick-dots li button {
	width: 10px;
	height: 10px;
}
.topmain .mainbox {
	margin: 25px auto 0;
}
.topmain .mainbox .maincap {
	width: 82%;
	font-size: 14px;
	line-height: 1.3;
	letter-spacing: 0;
	padding: 10px 5px;
	margin-bottom: -10px;
}
.topmain .mainbox .maincont {
	width: 90%;
	padding: 25px 10px 15px;
	font-size: 12px;
	line-height: 1.5;
}
}


.tophd {
	display: flex;
	justify-content: center;
	margin-bottom: 100px;
}
.tophd .tophdin {
	min-width: 300px;
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.1em;
	line-height: 1.5;
	padding: 0 10px 5px;
	border-bottom: 3px #929292 solid;
	position: relative;
}
.tophd .tophdin:before {
	position: absolute;
	content: "";
	background: #0a940a /*#004195*/;
	width: 50%;
	height: 3px;
	bottom: -3px;
	left: 0;
	z-index: 0;
}
@media (max-width: 767px) {
.tophd {
	margin-bottom: 40px;
}
.tophd .tophdin {
	min-width: inherit;
	width: 240px;
	max-width: 100%;
	font-size: 18px;
	letter-spacing: 0.1em;
	padding: 0 10px 2px;
}
}

.topnews {
	padding: 200px 20px 170px;
	position: relative;
}
.topnews .tnewsinner {
	max-width: 1310px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.topnews .tnewslist li {
	border-bottom: 1px #B7B7B7 solid;
	letter-spacing: 0;
	padding: 15px 0;
	line-height: 1.5;
}
.topnews .tnewslist .tnewsdate {
	font-weight: 700;
	color: #0a940a /*#004195*/;
	margin-bottom: 5px;
}
.topnews .tnewslist .tnewslink a {
	display: inline-block;
	font-weight: 700;
	color: #707070;
	position: relative;
}
.topnews .tnewslist .tnewslink a:before {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: "";
	width: 100%;
	height: 1px;
	background: #0a940a /*#004195*/;
	opacity: 0;
	transition: transform .3s;
}
.topnews .tnewslist .tnewslink a:hover:before {
	opacity: 1;
	transition: transform .3s;
}
.topnews .tnewsmore {
	margin-top: 70px;
	display: flex;
	justify-content: flex-end;
}
.topnews .tnewsmore a {
	display: block;
	font-size: 24px;
	letter-spacing: 0;
	color: #707070;
	font-weight: 700;
	padding-left: 20px;
	position: relative;
}
.topnews .tnewsmore a:before {
	position: absolute;
	content: "";
	left: 0;
	top:50%;
	transform:translateY(-50%);
	border-left:10px #0a940a /*#004195*/ solid;
	border-right:0;
	border-top:5px solid transparent;
	border-bottom:5px solid transparent;
	z-index: 1;
}
.topnews .tnewsmore a:hover:before {
	border-left:10px #707070 solid;
}
@media (max-width: 1024px) {
.topnews {
	padding: 100px 20px;
}
}
@media (max-width: 767px) {
.topnews {
	padding: 70px 20px 60px;
}
.topnews .tnewslist li {
	border-bottom: 1px #B7B7B7 solid;
	letter-spacing: 0;
	padding: 10px 0;
	line-height: 1.5;
}
.topnews .tnewslist .tnewsdate {
	font-size: 12px;
	margin-bottom: 0;
}
.topnews .tnewslist .tnewslink a {
	font-size: 12px;
}
.topnews .tnewsmore {
	margin-top: 15px;
	display: flex;
	justify-content: flex-end;
}
.topnews .tnewsmore a {
	font-size: 12px;
	font-weight: 700;
/*
	padding-left: 0;
*/
}
/*
.topnews .tnewsmore a:before {
	display: none;
}
.topnews .tnewsmore a:hover:before {
	display: none;
}
*/
}

.toptiac {
	padding: 150px 20px 220px;
}
.toptiac .tiacbox {
	max-width: 1440px;
	margin: 0 auto;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
}
.toptiac .tiacbox .boxinner {
	width: 45%;
	position: relative;
	z-index: 1;
}

.toptiac .contentcont {
	width: 100%;
	margin-bottom:35px;
}
.toptiac .contenttit {
	display:block;
	color: #0a940a /*#004195*/;
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
	margin-bottom:15px;
}

.toptiac .toptime {
	width: 100%;
}
.toptiac .toptime td {
	border-top: 1px #707070 solid;
}
.toptiac .toptime th,
.toptiac .toptime td {
	padding: 15px 0;
	vertical-align: middle;
	text-align: center;
}
.toptiac .toptime th {
	font-size: 21px;
	line-height: 1.5;
	color:  #2C2C2C;
	width: 10.5%;
}
.toptiac .toptime td {
	font-size: 18px;
	color: #2C2C2C/*#004195*/;
	font-weight: 500;
}
.toptiac .toptime th.thtit {
	text-align: left;
	color: #0a940a /*#004195*/;
	width: 26.5%;
	font-weight: 700;
}
.toptiac .toptime td.tdtit {
	text-align: left;
	font-size: 18px;
	color: #2C2C2C;
	font-weight: 500;
	padding-left: 10px;
	padding-right: 10px;
	line-height: 1.3;/*新規追加*/
}
.toptiac .topdate {
	margin-top: 35px;
	font-size: 18px/*14px*/;
	font-weight: 500;
	line-height: 1.7;
	color: #2C2C2C;
	letter-spacing: 0.05em;
}
.toptiac .topdate .datelar {
	display: block;
	line-height: 1.4;
	font-size: 21px;
	font-weight: 700;
	color: #0a940a /*#004195*/;
}
.toptiac .topdate .timeclose {
	font-size: 18px/*16px*/;
}
.toptiac .topmap iframe {
	width: 100%;
	height: 270px;
}
.toptiac .mapbtn {
	max-width: 200px;
	margin: 25px auto 0;
}
.toptiac .mapbtn a {
	display: flex;
	height: 40px;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: 1px #0a940a /*#004195*/ solid;
	background: #0a940a /*#004195*/;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.1em;
	color: #fff;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	-ms-border-radius: 30px;
	-o-border-radius: 30px;
	border-radius: 30px;
}
.toptiac .mapbtn a:hover {
	background: #fff;
	color: #0a940a /*#004195*/;
}

.toptiac .toptrain {
	margin-top: 45px;
}
.toptiac .toptrain li+li {
	margin-top: 25px;
}
.toptiac .toptrain .traintit {
	font-size: 16px;
	font-weight: 700;
	color: #0a940a /*#004195*/;
	letter-spacing: 0.1em;
	line-height: 1.5;
	border-bottom: 1px #07471d /*#004195*/ solid;
	margin-bottom: 10px;
}

.toptiac .toptrain .traintxt {
	line-height: 1.375;
}
.toptiac .tiacdec {
	position: absolute;
	left: 4%;
	bottom: 0;
	z-index: 0;
}
@media (max-width: 1024px) {
.toptiac .tiacbox {
	display: block;
	padding: 0;
}
.toptiac .tiacbox .boxinner {
	width: auto;
}
.toptiac .tiacbox .boxinner+.boxinner {
	margin-top: 50px;
}
.toptiac .tiacdec {
	position: static;
	left: auto;
	bottom: auto;
	margin-top: 60px;
}
}

@media (max-width: 767px) {
.toptiac {
	padding: 25px 15px 80px;
}

.toptiac .tophd .tophdin {
	min-width: inherit;
}
.toptiac .contenttit {
	font-size: 16px;
}

.toptiac .contenttxt {
	font-size: 14px;
}
.toptiac .toptime th,
.toptiac .toptime td {
	padding: 10px 0;
}
.toptiac .toptime th {
	font-size: 16px;
	width: 10%;
}
.toptiac .toptime td {
	font-size: 12px;
}
.toptiac .toptime th.thtit {
	width: 30%;
}
.toptiac .toptime td.tdtit {
	font-size: 13px;
	padding-left: 0;
	padding-right: 0;
}
.toptiac .topdate {
	margin-top: 20px;
	font-size: 14px/* 12px*/;
}
.toptiac .topdate .datelar {
	font-size: 16px;
}
.toptiac .topdate .timeclose {
	font-size: 14px;
}
.toptiac .topmap iframe {
	width: 100%;
	height: 36vw;
}
.toptiac .mapbtn {
	max-width: 120px;
	margin: 10px auto 0;
}
.toptiac .mapbtn a {
	height: 20px;
	font-size: 11px;
}
.toptiac .toptrain {
	margin-top: 30px;
}
.toptiac .toptrain li+li {
	margin-top: 10px;
}

.toptiac .toptrain .traintxt {
	font-size: 14px;
	margin-bottom: 30px;
}
.toptiac .tiacdec {
	padding: 0 20px;
}
}


.topnavi {
	padding: 140px 20px 150px;
}
.topnavi .naviinner {
	max-width: 1095px;/*max-width: 1308px*/
	margin: 0 auto;
}
.topnavi .navilist {
	display: flex;
}
.topnavi .navilist li {
	width: calc((100% - 12%)/4);
	margin-right: 73px;
}
.topnavi .navilist li:nth-child(4n) {
	margin-right: 0;
}
.topnavi .navilist .naviitem {
	display: block;
	position: relative;
}
.topnavi .navilist .naviimg {
	position: relative;
}
.topnavi .navilist .naviimg:before {
	position: absolute;
	content: "";
	background: url(../img/top/mask_navi.png) 0 0 repeat;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.topnavi .navilist .naviimg img {
	width: 100%;
}
.topnavi .navilist .navinum {
	position: absolute;
	color: #0a940a /*#004195*/;
	font-size: 90px;/*font-size: 164px;*/
	line-height: 1;
	letter-spacing: 0;
	left: 0;
	top: 0;
	transform: translateY(-30%);
	-webkit-text-shadow: 0 0 15px #fff;
	-moz-text-shadow: 0 0 15px #fff;
	-ms-text-shadow: 0 0 15px #fff;
	-o-text-shadow: 0 0 15px #fff;
	text-shadow: 0 0 15px #fff;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
	z-index: 1;
}
.topnavi .navilist .navitit {
	text-align: center;
	margin-top: 35px;
	font-size: 26px;/* font-size: 28px; */
	line-height: 1.5;
	font-weight: 700;
	color: #0a940a /*#004195*/;
}
.topnavi .navilist .navitxt {
	margin-top: 20px;/* margin-top: 30px ;*/
	padding: 0 15px;
	font-size: 16px; /* font-size: 18px; */
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #2C2C2C;
}
.topnavi .navilist .navibtn {
	margin-top: 5px;
	display: flex;
	border: 2px #0a940a /*#004195*/ solid;
	background: #0a940a /*#004195*/;
	height: 40px; /* height: 60px; */
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 18px;/* font-size: 20px; */
	color: #fff;
	font-weight: 700;
	letter-spacing: 0;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.topnavi .navilist .naviitem:hover .naviimg:before {
	background: url(../img/top/mask_navi_on.png) center center repeat;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.topnavi .navilist .naviitem:hover .navinum {
	color: #fff;
	-webkit-text-shadow: 0 0 15px #0a940a /*#004195*/;
	-moz-text-shadow: 0 0 15px #0a940a /*#004195*/;
	-ms-text-shadow: 0 0 15px #0a940a /*#004195*/;
	-o-text-shadow: 0 0 15px #0a940a /*#004195*/;
	text-shadow: 0 0 15px #0a940a /*#004195*/;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
	z-index: 1;
}
.topnavi .navilist .naviitem:hover .navibtn {
	background: #fff;
	color: #0a940a /*#004195*/;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}

@media (max-width: 1024px) {
.topnavi {
	padding: 70px 20px;/* padding: 100px 20px; */
}
	

/* 新規追加 */	
.topnavi .naviinner {
	max-width: 960px;
	margin: 0 auto;
}
/* 新規追加 */	
	
	
.topnavi .navilist {
	flex-wrap: wrap;
	margin-bottom: -80px;
}
.topnavi .navilist li {
	width: calc((95% - 30px)/4); /* width: calc((100% - 40px)/2); */
	margin: 0 20px 80px 0;/*margin: 0 40px 80px 0;*/
}
.topnavi .navilist li:nth-child(4n)/* nth-child(2n) */ {
	margin-right: 0;
}
}
@media (max-width: 767px) {
.topnavi {
	padding: 60px 20px 30px;
}

/* 新規追加 */	
.topnavi .naviinner {
	max-width: 650px;
	margin: 0 auto;
}
/* 新規追加 */	
	
.topnavi .navilist {
	margin-bottom: -70px;
}
.topnavi .navilist li {
	width: calc((95% - 15px)/2);/*	width: calc((100% - 15px)/2);*/
	margin: 0 15px 70px 0px;
	/* 上 | 右 | 下 | 左 */
}
.topnavi .navilist .navinum {
	font-size: min(25.3vw,95px);
}
.topnavi .navilist .navitit {
	margin-top: 10px;
	font-size: 16px/*14px*/;;
}
.topnavi .navilist .navitxt {
	margin-top: 10px;
	padding: 0;
	font-size: 14px/*14px*/;
}
.topnavi .navilist .navibtn {
	margin-top: 10px;
	height: 34px;
	font-size: 12px /*10px*/;
}
}


/* spsns
----------------------------------------------- */
.spsns {
	display: none;
}

@media (max-width: 767px) {
.spsns {
	display: block;
	padding: 0 10px 80px;
}
.spsns .spsnslist {
	display: flex;
}
.spsns .spsnslist li {
	margin-right: 10px;
}
}






/* XXXXXX
----------------------------------------------- */

@media (max-width: 1024px) {

}
@media (max-width: 767px) {

}




/*新規追加*/
.pic {
	text-align: center;
	float: left;
	padding: 0px;
	margin-top: 0px;
	margin-right: 10px;
	margin-bottom: 10px;
}
.pic2 {
	text-align: center;

	padding: 0px;
	margin-top: 0px;
	margin-right: 10px;
	margin-bottom: 10px;
}
/* /新規追加/ */






