@charset "utf-8";

/*
----------------------------------------
謎のバグ調整要
----------------------------------------
*/
/*
#about #sec-01.sec-01{
	display: none;
}
#greeting #sec-01.sec-01{
	display: none;
}
#service #sec-01.sec-01{
	display: none;
}
#education #sec-01.sec-01{
	display: none;
}
#recruit #sec-01.sec-01{
	display: none;
}
*/
#page-top {
	display: none;
}

/*
----------------------------------------
common
----------------------------------------
*/

a,
a:link,
a:hover,
a:visited,
a:active {
	color: #1b1b1b;
}
.inner-box {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
}
.indent li {
	padding-left: 1em;
	text-indent: -1em;
}
#header > .wrap {
	position: absolute;
	top: 22px;
	top: 0;
	left: 0;
	width: 100%;
	background: none;
	max-width: 100%;
	z-index: 999;
}
#header.fixed-wrap > .wrap {
	position: fixed;
	height: 160px;
	box-sizing: border-box;
}
#g-nav.fixed {
	position: relative;
}
#top #header.fixed-wrap > .wrap,
#header.fixed-wrap > .wrap {
	background: #fff;
	background: rgba(255, 255, 255, 0.9);
	top: 0;
}
#g-nav {
	background: none;
}
body#top.loading-complete #wrapper {
	display: none;
	height: 1px;
}
body#top.loading-complete {
	overflow: inherit;
}
#loader-bg {
	width: 100%;
	height: 100vh;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000000;
}
#loader-bg:before {
	content: "";
	width: 100%;
	height: 200px;
	position: absolute;
	bottom: -100px;
	left: 0;
	border-radius: 100%;
	background: #fff;
}
#loader {
	width: 170px;
	height: 170px;
	position: fixed;
	top: 50%;
	left: 0;
	right: 0;
	bottom: 0;
	margin: -85px auto 0;
	z-index: 1000001;
}
#loader img {
	z-index: 1;
}
#loader:before {
	top: -25px;
	background: #fff url(../img/common/loading.gif) no-repeat center center;
	z-index: 102;
}
body {
	background: #fff6e5;
	letter-spacing: 2px;
	color: #1b1b1b;
	font-family: "a-otf-midashi-go-mb31-pr6n", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
p,
li,
dd {
	font-size: 1.6rem;
	line-height: 1.8;
}
.fL {
	float: left !important;
}
.fR {
	float: right !important;
}
#contents {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}
#wrapper {
	overflow: hidden;
}
.contents {
}
.contents section {
	background: #fff;
}
#header {
	background: none;
}
#header h1 {
	background: #000;
	color: #fff;
	text-align: left;
}
#header .wrap {
	display: block;
	padding: 20px 0;
}
#header .flex-auto {
	align-items: flex-end;
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
}
#header nav li,
#header nav li a {
	color: #fff;
}
#header nav li a {
	padding: 0 40px;
	display: inline-block;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.2;
	min-height: 80px;
}
#header nav li a i {
	width: 42px;
	height: 42px;
	display: block;
	margin: 0 auto 5px;
	/*background: url(../img/common/icons.png) no-repeat 0 -20px;*/
}
#header .sp-logo,
#header .home,
#header .contact,
#header .faq {
	display: none;
}
#header nav li.home a i {
	background: url(../img/common/h-ico-t.png) no-repeat 50% 50%;
}
#header nav li.contact a i {
	background: url(../img/common/h-ico-m.png) no-repeat 50% 50%;
}
#header nav li.faq a i {
	background: url(../img/common/h-ico-a.png) no-repeat 50% 50%;
}
#header nav li.about a i {
	background: url(../img/common/h-ico-a.png) no-repeat 50% 50%;
}
#header nav li.education a i {
	background: url(../img/common/h-ico-e.png) no-repeat 50% 50%;
}
#header nav li.greeting a i {
	background: url(../img/common/h-ico-g.png) no-repeat 50% 50%;
}
#header nav li.news a i {
	background: url(../img/common/h-ico-n.png) no-repeat 50% 50%;
}
#header nav li.service a i {
	background: url(../img/common/h-ico-h.png) no-repeat 50% 50%;
}
#header nav li.album a i {
	background: url(../img/common/h-ico-p.png) no-repeat 50% 50%;
}

#header nav li.logo a {
	transition: inherit;
}
#head-contents.fixed-wrap {
	margin-bottom: -60px;
	position: fixed;
	top: 140px;
	left: 0;
	width: 100%;
	background: rgba(255, 255, 255, 0.9);
	z-index: 10000;
}
#head-contents.fixed-wrap section {
	background: none;
	margin-bottom: 0;
	padding: 0 20px;
}
#head-contents.fixed-wrap .flex {
	padding: 0 10px;
	background: none;
}
#g-nav.fixed {
	/*background:#000;*/
	z-index: 100000;
}
#g-nav > ul > li {
	border-right: none;
}
#g-nav > ul > li a:hover {
	background: none;
}
#page-ttl {
	background: #000;
	padding: 200px 20px 100px 20px;
	min-height: 480px;
	box-sizing: border-box;
}
#page-ttl .box p.en {
	font-size: 1.7rem;
	letter-spacing: 7px;
	font-family: "Londrina Solid", cursive;
}
#page-ttl .box h1 {
	font-size: 3.5rem;
	font-weight: normal;
	letter-spacing: 2px;
	color: #f3f3f3;
}
#page-ttl .box {
	display: inline-block;
	background: none;
	padding: 20px 40px;
	line-height: 1.4;
	color: #fff;
}
.side-menu a {
	padding-right: 15px;
}
.side-menu > ul > li {
	border-bottom: solid 1px #ccc;
	font-size: 1.5rem;
	line-height: 1.5;
}
.side-menu a.flex {
	display: flex;
	margin-bottom: 0;
}
.side-menu a.flex.c02-fd > figure,
.side-menu a.flex.c02-fd > .lg {
	width: 28%;
	line-height: 1;
	margin-bottom: 0;
}
.side-menu a.flex.c02-fd > div,
.side-menu a.flex.c02-fd > .sl {
	width: 68%;
}
.side-menu a::after {
	bottom: 50%;
	margin-bottom: -0.5em;
	line-height: 1;
	right: 10px;
}
.side-menu a:hover:after {
	right: 8px;
}
footer {
	background: #fff;
	border-top: 3px solid #41791f;
	position: relative;
	z-index: 1000;
}
.footer-contents.flex {
	align-items: center;
	margin-bottom: 0;
}
.footer-contents.flex .box {
	width: 50%;
}
.footer-contents.flex .box li {
	float: left;
	width: 33.333%;
	box-sizing: border-box;
	position: relative;
	padding: 2px 5px 2px 12px;
	font-size: 1.4rem;
}
.footer-contents.flex .box li:before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 100%;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -3.5px;
	background: #41791f;
}
.footer-contents.flex .store-info,
.footer-contents.flex .store-gmap {
	width: 25%;
}
.store-gmap .map {
	width: 100%;
	height: 200px;
	margin: 0;
	border: solid 1px #ddd;
}
.copyright small {
	font-size: 1.2rem;
	font-weight: bold;
}
.sidebar-on #contents {
	width: 70%;
}
footer .wrap {
	text-align: left;
	padding: 30px 20px;
	max-width: 1180px;
	margin: 0 auto;
}
.li-center {
	text-align: center;
}
.li-center > li {
	/*display:inline-block;*/
	width: 18%;
	background: #ccc;
	border-radius: 100%;
	box-sizing: border-box;
	min-height: 5em;
}
.li-center2 {
	text-align: center;
}
.li-center2 > li {
	/*display:inline-block;*/
	width: 18%;
	box-sizing: border-box;
	min-height: 5em;
}
.contents section > p {
	margin-bottom: 2em;
}
#head-contents {
	margin-bottom: -60px;
}
#head-contents section {
	background: none;
	margin-bottom: -20px;
	padding-bottom: 0;
}
#head-contents .flex {
	background: #fff;
	margin-bottom: 0;
	justify-content: center;
	padding: 20px 10px 20px 10px;
}
#head-contents .flex .box {
	padding: 15px;
	max-width: 290px;
}
#head-contents .flex .box .center a {
	display: inline-block;
	margin: 0 auto;
	border: 1px solid #ccc;
	box-sizing: border-box;
	padding: 5px 10px;
}
#head-contents .flex .box .center a {
	display: block;
	border: 3px solid #4e934d;
	border-radius: 5px;
	color: #4e934d;
	font-size: 1.8rem;
	padding: 10px;
	transition: all 0.4s;
}
#head-contents .flex .box .center a:hover {
	background: #4e934d;
	color: #fff;
}
.copyright {
	background: #f2f2f2;
	color: #000 !important;
	padding: 5px;
}
.copyright a {
	color: #000;
}
.contents .heading-01 {
	background: #4a9149 !important;
}
.contents section {
	border: none;
}
.contents .heading-05,
#faq .contents .heading-05 {
	border: none;
	padding: 12px 30px 12px 35px;
	position: relative;
	background: #f6f6f6;
	font-size: 2.3rem !important;
	font-weight: bold;
}
.contents .heading-05::before,
#faq .contents .heading-05::before {
	content: "";
	width: 4px;
	height: 60%;
	background: #4e934d !important;
	position: absolute;
	top: 20%;
	left: 15px;
}

/*
----------------------------------------
parts
----------------------------------------
*/
.flex .box.pic {
	width: 30%;
}
.flex .box.txt {
	width: 65%;
}
.flex .box {
	padding: 10px 20px;
}
.contents .heading-03 {
	padding: 10px 0 10px 25px;
	border-bottom: dotted 2px #c0c0c0;
	position: relative;
}
.contents .heading-03::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 100%;
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 5px;
	margin-top: -3.5px;
	background: #4a9149;
}
.btn-a a,
.btn-b a,
.btn-c a,
.btn-d a,
.btn-e a {
	transition: all 0.2s;
}
.btn-a a {
	box-sizing: border-box;
	width: 95%;
	max-width: 360px;
	display: inline-block;
	padding: 13px 40px;
	color: #fff;
	border: 2px solid #41791f;
	background: #41791f;
	line-height: 1.5;
	position: relative;
	font-size: 1.7rem;
	border-radius: 3px;
	margin: 25px auto 0;
}
.btn-a a:hover {
	background: #fff;
	color: #41791f;
}

.btn-b a {
	box-sizing: border-box;
	display: inline-block;
	padding: 8px 35px;
	color: #41791f;
	border: 2px solid #41791f;
	background: #fff;
	line-height: 1.5;
	position: relative;
	font-size: 1.5rem;
	border-radius: 4px;
	margin: 25px auto 0;
}
.btn-b a:hover {
	background: #41791f;
	color: #fff;
}

.btn-c a {
	box-sizing: border-box;
	display: inline-block;
	padding: 8px 35px;
	color: #41791f;
	border: 2px solid #fff;
	background: #41791f;
	line-height: 1.5;
	position: relative;
	font-size: 1.5rem;
	border-radius: 4px;
	margin: 25px auto 0;
}
.btn-c a:hover {
	background: #fff;
	color: #41791f !important;
}

.btn-d a {
	box-sizing: border-box;
	width: 95%;
	max-width: 440px;
	display: inline-block;
	padding: 27px 40px;
	color: #41791f;
	border: 3px solid #41791f;
	background: #fff;
	line-height: 1.5;
	position: relative;
	font-size: 1.8rem;
	border-radius: 5px;
	margin: 55px auto;
	text-align: center;
}
.contents section.btn-d .flex {
	max-width: 900px;
	margin: 0 auto;
}
.btn-d .flex {
	margin-bottom: 0;
}
.btn-d .flex .box {
	padding: 10px 5px;
}
.btn-d .box a {
	margin: 0 auto;
}
.btn-d a i {
	display: inline-block;
	width: 27px;
	height: 27px;
	vertical-align: middle;
	margin-right: 15px;
	position: relative;
	top: -5px;
	background: url(../img/top/ico-school.png) no-repeat 50% 50%;
}
.btn-d a:hover i {
	background: url(../img/top/ico-school-on.png) no-repeat 50% 50%;
}
.btn-d a:hover {
	color: #fff;
	background: #41791f;
}
.btn-e a {
	box-sizing: border-box;
	width: 90%;
	max-width: 300px;
	display: inline-block;
	padding: 13px 40px;
	color: #41791f;
	border-bottom: 2px solid #a9ba9f;
	background: #fff;
	line-height: 1.5;
	position: relative;
	font-size: 1.7rem;
	border-radius: 3px;
	margin: 25px auto;
}
.btn-e a i {
	display: inline-block;
	width: 22px;
	height: 22px;
	vertical-align: middle;
	margin-right: 15px;
	position: relative;
	top: -2px;
	background: url(../img/common/ico-recruit.png) no-repeat 50% 50%;
	background-size: contain;
}
.btn-e a:hover {
	background: #fff;
	color: #41791f;
}

.li-number {
	margin-bottom: 25px;
}
.li-number li {
	position: relative;
	margin: 0 0 1.2em;
}

.li-number li::before {
	font-family: "Helvetica", serif;
	content: "1";
	line-height: 1.5em;
	background: #4a9149;
	color: #fff;
	border-radius: 100%;
	width: 1.5em;
	height: 1.5em;
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px 0 0;
	text-align: center;
	letter-spacing: 0;
}
.li-number li:nth-child(1):before {
	content: "1";
}
.li-number li:nth-child(2):before {
	content: "2";
}
.li-number li:nth-child(3):before {
	content: "3";
}
.li-number li:nth-child(4):before {
	content: "4";
}
.li-number li:nth-child(5):before {
	content: "5";
}
.li-number li:nth-child(6):before {
	content: "6";
}
.dl-01 dt {
	width: 10%;
	font-size: 1.4rem;
	line-height: 2rem;
	text-align: left;
	background: #4e934d;
	color: #fff;
	margin-bottom: 10px;
	padding: 5px 10px;
	box-sizing: border-box;
}
.dl-01 dd {
	width: 88%;
	margin-bottom: 10px;
	line-height: 2rem;
	padding: 5px 10px;
}

/*
----------------------------------------
top
----------------------------------------
*/

#top .contents > section {
	margin: 0;
	padding: 0 20px 140px 20px;
}
#top {
}
#top #header,
#top #g-nav {
	background: none;
}
#main-img {
	background: url(../img/top/main-img.jpg) no-repeat top center;
	/*background-attachment:fixed;*/
	background-size: cover;
	padding-top: 40px;
	height: 700px;
	text-align: center;
	padding-bottom: 140px;
}
#main-img .flex {
	position: relative;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
}
#main-img .flex .alnC {
	padding: 0 20px;
}
.footer-rec,
#main-img .rec {
	position: absolute;
	bottom: 0;
	right: 20px;
	width: 15%;
	max-width: 188px;
	height: auto;
	min-width: 99px;
}
#top #concept {
	position: relative;
	background: #fff6e5;
	margin-bottom: 0;
	padding-bottom: 100px;
}
#top #concept:before {
	content: "";
	position: absolute;
	top: -140px;
	left: 0;
	width: 100%;
	height: 140px;
	background: url(../img/top/bg-concept.png) no-repeat top center;
}
#top #concept .inner-box .flex > div {
	padding: 0 40px;
	text-align: left;
}
#top #concept .inner-box .flex > div h2 img {
	display: block;
	margin-bottom: 30px;
}
#top #concept .inner-box .flex > div h2 {
	font-size: 2.8rem;
	line-height: 2;
	font-weight: bold;
	margin-bottom: 30px;
}
#top #concept .inner-box .flex > figure {
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
	margin: 0;
	text-align: right;
}
#top #concept .inner-box .flex > figure:before {
	content: "";
	position: absolute;
	top: -70px;
	left: -70px;
	width: 100%;
	height: 190px;
	z-index: 1;
	background: url(../img/top/ico-concept.png) no-repeat 0 0;
}
#top #concept .inner-box .flex > figure img {
	width: 100%;
	border-radius: 10px;
}
#top #concept .inner-box .flex > figure img.img-02 {
	position: absolute;
	bottom: -150px;
	right: 0;
	width: 80%;
	max-width: 420px;
}
#top #nurse {
	position: relative;
	background: #41791f;
	padding-bottom: 1px !important;
}
#top #nurse:before {
	content: "";
	position: absolute;
	top: -100px;
	left: 0;
	width: 100%;
	height: 100px;
	background: url(../img/top/bg-nurse-02.png) no-repeat top center;
}
#top #nurse h2 {
	position: relative;
	top: -40px;
	z-index: 100;
}
#top #nurse .flex {
	justify-content: center;
}
#top #nurse * {
	color: #fff;
}
#top #nurse .flex {
	max-width: 1080px;
	margin: 0 auto;
}
#top #nurse .flex li {
	text-align: left;
	position: relative;
	z-index: 100;
	margin-bottom: 100px;
	max-width: 330px;
}
#top #nurse .flex li {
	text-align: center;
	justify-content: center;
	padding: 10px 10px;
	margin-right: 30px;
}
#top #nurse .flex li figure img {
	position: relative;
	left: -10px;
}
#top #nurse .flex li figure {
	position: relative;
	text-align: center;
}
#top #nurse .flex li figure:before {
	content: "";
	position: absolute;
	background-size: contain !important;
	z-index: 10;
}
#top #nurse .flex li.nurse-01 figure:before {
	width: 84px;
	height: 147px;
	top: 30px;
	right: -20px;
	background: url(../img/top/ico-nurse-01.png) no-repeat 0 0;
}
#top #nurse .flex li.nurse-02 figure:before {
	width: 115px;
	height: 88px;
	bottom: 10px;
	right: 20px;
	background: url(../img/top/ico-nurse-02.png) no-repeat 0 0;
}
#top #nurse .flex li.nurse-03 figure:before {
	width: 85px;
	height: 102px;
	top: 0;
	right: 10px;
	background: url(../img/top/ico-nurse-03.png) no-repeat 0 0;
}
#top #nurse .flex li.nurse-04 figure:before {
	width: 147px;
	height: 146px;
	bottom: 10px;
	left: 0;
	background: url(../img/top/ico-nurse-04.png) no-repeat 0 0;
}
#top #nurse .flex li.nurse-05 figure:before {
	width: 127px;
	height: 92px;
	bottom: 10px;
	right: -10px;
	background: url(../img/top/ico-nurse-05.png) no-repeat 0 0;
}
#top #nurse h3,
#top #nurse p {
	max-width: 300px;
}
#top #news .ttl-top {
	margin: 70px 0 45px 0;
}
#top #news .c02-fd {
	text-align: left;
	max-width: 1080px;
	margin: 70px auto;
	position: relative;
	left: -40px;
}
#top #news .c02-fd.reverse {
	left: 40px;
}
#top #news .c02-fd > figure {
	width: 35%;
	padding: 0 10px;
}
#top #news .c02-fd > div {
	width: 65%;
	padding: 0 10px;
	position: relative;
}
#top #news .c02-fd > div .btn-b {
	position: absolute;
	top: 0;
	right: 10px;
	margin: 0;
}
#top #news .c02-fd > div .btn-b a {
	margin: 0;
}
#top #news .c02-fd > div p {
	margin: 40px 0;
}
#top #news:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 140px;
	background: url(../img/top/bg-nurse.png) no-repeat top center;
	z-index: 1;
}
#top #news:after {
	content: "";
	position: absolute;
	bottom: -140px;
	left: 0;
	width: 100%;
	height: 140px;
	background: url(../img/top/bg-news.png) no-repeat top center;
	z-index: 1;
}
#f-bnr .bnr-list {
	background: #fff6e5;
	position: relative;
	z-index: 1000;
	width: 100%;
	justify-content: center !important;
	box-sizing: border-box;
	padding: 1px 0 80px;
	margin: 0;
}
#top #news .bnr-list {
	position: absolute;
	top: 0px;
	z-index: 1;
	width: 100%;
	justify-content: center !important;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	left: 0;
}
#f-bnr .bnr-list > li,
#top #news .bnr-list > li {
	padding: 5px 18px;
}
#f-bnr .bnr-list a,
#top #news .bnr-list > li a {
	position: relative;
	transition: all 0.4s;
}
#f-bnr .bnr-list a:hover,
#top #news .bnr-list > li a:hover {
	top: 5px;
}
#top #news .flex.c03 li {
	padding: 10px 55px;
}
#top #news .flex.c04 {
	justify-content: flex-start;
}
#top #news .flex.c04 > * {
	padding: 0 20px;
	width: 25%;
	background: none;
	text-align: left;
	box-sizing: border-box;
}
#top #news .flex.c04 section > a,
#top #news .flex.c04 section > a figure img {
	display: block;
}
#top #news .flex.c04 section > a figure {
	position: relative;
	display: block;
}
#top #news .flex.c04 section > a figure:before {
	content: "";
	position: absolute;
	bottom: -10px;
	right: -10px;
	width: 38px;
	height: 38px;
	background: url(../img/top/ico-right.png) no-repeat 50% 50%;
	z-index: 1;
}
#top #news .flex.c04 section > a:hover figure:before {
	right: -15px;
	transition: all 0.2s;
}
#top #news .flex.c04 time {
	color: #41791f;
	font-size: 1.2rem;
	letter-spacing: 0;
}
#top #news .flex.c04 .cat {
	color: #41791f;
	font-size: 1.2rem;
	background: #f4ffe0;
	padding: 0px 15px;
	display: inline-block;
	vertical-align: middle;
}
#top #news .flex.c04 h3 {
	font-size: 1.8rem;
	font-weight: bold;
	margin: 12px 0;
}
#top #news {
	padding: 250px 20px 1px 20px !important;
	position: relative;
	background: #fff6e5;
}
#top #news .flex.c03 figure img {
	max-width: 298px;
	width: 90%;
}
#top #recruit {
	padding-top: 240px !important;
	position: relative;
	background: #fff url(../img/top/bg-recruit.jpg) no-repeat 50% 50%;
	/*background-attachment:fixed;*/
	background-size: cover;
}
#top #recruit .flex > div {
	width: 50%;
	min-width: 600px;
	max-width: 700px;
	background: rgba(255, 255, 255, 0.9);
	padding: 50px 20px;
	text-align: center;
	position: relative;
}
#top #recruit .flex > div:before {
	content: "";
	position: absolute;
	top: -50px;
	left: -50px;
	width: 100%;
	height: 200px;
	background: url(../img/top/ico-recruit-02.png) no-repeat 0 0;
	z-index: 1;
}
#top #recruit .flex > div:after {
	content: "";
	position: absolute;
	bottom: -50px;
	right: -50px;
	width: 100%;
	height: 200px;
	background: url(../img/top/ico-recruit-01.png) no-repeat 100% 100%;
	z-index: 1;
}
#top #recruit .flex > div > * {
	position: relative;
	z-index: 10;
}
#top #recruit h2 {
	font-weight: bold;
}
#top #recruit h2 img {
	display: block;
	margin: 0 auto;
	padding: 30px 0 30px 0;
}
#top #recruit .flex {
	align-items: center;
	justify-content: center;
}
.footer-rec,
#main-img .rec {
	position: fixed;
	bottom: 20px;
	right: 50px;
	z-index: 999;
}
/*
----------------------------------------
service
----------------------------------------
*/

#service #sec-01.sec-01 .li-check {
	padding: 0 20px 20px 20px;
}

/*
----------------------------------------
about
----------------------------------------
*/

#about #contents .flex.box-03 {
	justify-content: flex-start;
}

/*
----------------------------------------
education
----------------------------------------
*/

#education #sec-03 {
	margin-bottom: 0;
	padding-bottom: 1px;
}
#education #sec-04 .flex.box-02 .box:nth-child(1),
#education #sec-04 .flex.box-02 .box:nth-child(3) {
	padding-right: 15px;
}
#education #sec-04 .flex.box-02 .box:nth-child(2),
#education #sec-04 .flex.box-02 .box:nth-child(4) {
	padding-left: 15px;
}
#education #sec-01.sec-02 .flex h3 {
	color: #4e934d;
	font-size: 2.3rem;
	font-weight: bold;
	margin: 1em 0;
}
#education #sec-01.sec-02 .flex h3.heading-01 {
	color: #fff;
}
#education #day-flow > figure.center {
	overflow: auto;
	padding-bottom: 20px;
}
#education #day-flow > figure.center img {
	max-width: 1060px;
	width: 1060px;
}
#education #day-flow .flex {
	position: relative;
}
#education #day-flow .flex::before {
	content: "";
	width: 2px;
	height: 110%;
	position: absolute;
	top: 10px;
	left: 35px;
	border-left: 1px dashed #4e934d;
}
#education #day-flow .flex.reverce:nth-child(7):before {
	border-left: none;
}
#education #day-flow .flex .left {
	padding-left: 80px;
}
#education #day-flow .flex h3 {
	font-size: 2.3rem;
}
#education #day-flow .flex h3 span {
	display: inline-block;
	font-size: 1.4rem;
	background: #4e934d;
	color: #fff;
	text-align: center;
	padding: 2px 12px 2px 12px;
	letter-spacing: 0.5px;
	min-width: 40px;
	margin-right: 4px;
	vertical-align: middle;
}
#education #sec-03.sec-05 {
	margin-bottom: 0;
}

/*
----------------------------------------
photo
----------------------------------------
*/

.post-password-form {
	display: block;
	background: #fff;
	padding: 20px;
	text-align: center;
}

.post-password-form p {
	margin: 25px auto;
}
.post-password-form input[type="password"] {
	vertical-align: middle;
	font-size: 1.6rem;
	padding: 7px;
	width: 8em !important;
	max-width: 70% !important;
	box-sizing: border-box;
	border: 1px solid #aaa;
	outline: none;
	border-radius: 3px;
	display: inline-block;
}
#photo #list-01 figure,
#photo #list-01 figure * {
	display: block;
}
#photo #contents .inner-box > .cat-box {
	padding: 0 12px 25px;
}
#photo #list-01 .cat-box span a {
	color: #41791f;
	font-size: 1.2rem;
	background: #f4ffe0;
	padding: 0px 15px;
	display: inline-block;
	vertical-align: middle;
}
#photo #list-01 figure a {
	position: relative;
}
#photo #list-01 li {
	padding: 0 12px;
}
#photo #list-01 figure a:before {
	content: "";
	position: absolute;
	bottom: -10px;
	right: -10px;
	width: 38px;
	height: 38px;
	background: url(../img/top/ico-right.png) no-repeat 50% 50%;
	z-index: 1;
}
#photo #list-01 figure a:hover:before {
	right: -15px;
	transition: all 0.2s;
}
#photo #list-01 li h3 {
	font-size: 1.8rem;
	font-weight: bold;
	margin: 12px 0;
}

/*
----------------------------------------
blog
----------------------------------------
*/

#column .post {
	padding: 30px 30px 20px 30px;
	border: none;
	margin-bottom: 30px;
	background: #fff;
}

/*
----------------------------------------
greeting
----------------------------------------
*/

#greeting .greeting .flex h3 {
	color: #4e934d;
	font-size: 2.3rem;
	font-weight: bold;
	margin: 1em 0;
}
#greeting #sec-01 .flex .box {
	padding: 10px 15px;
}
#greeting #sec-02 .li-number {
	justify-content: center;
	max-width: 960px;
	margin: 25px auto;
}
#greeting #sec-02 .li-number li {
	padding: 5px 0 5px 69px;
}
#greeting #sec-02 .li-number li span {
	display: block;
	color: #4a9149;
}
#greeting #sec-02 .li-number li::before {
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -29px;
	content: "";
	background-size: contain;
	width: 59px;
	height: 59px;
}
#greeting #sec-02 .li-number li:nth-child(1)::before {
	background: url(../img/page/ico-moku-01.png) no-repeat 50% 50%;
}
#greeting #sec-02 .li-number li:nth-child(2)::before {
	background: url(../img/page/ico-moku-02.png) no-repeat 50% 50%;
}
#greeting #sec-02 .li-number li:nth-child(3)::before {
	background: url(../img/page/ico-moku-03.png) no-repeat 50% 50%;
}
#greeting #sec-history .left {
	width: 50%;
}
#greeting #sec-history .dl-01 dt {
	width: auto;
	min-width: 100px;
}

/*
----------------------------------------
faq
----------------------------------------
*/

.faq-01 dt::before {
	background: #4e934d;
}
.faq-01 dt {
	border-color: #e1e1e1;
	font-weight: bold;
}
.faq-01 dd::before {
	background: #f6fff6;
	color: #4e934d;
}
.faq-01 dd {
	font-size: 1.6rem;
}

.faq-list li a {
	text-decoration: underline;
}
.faq-list li a:hover {
	text-decoration: none;
}

/*
----------------------------------------
recruit
----------------------------------------
*/

#entry-flow li h3 {
	font-size: 2rem;
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 0;
}
#recruit .table-02 {
	width: 100%;
	text-align: left;
	border-top: solid 1px #ccc;
	margin: 50px auto 30px auto;
	max-width: 750px;
}
.li-box-center {
	background: #f0f0f0;
	padding: 30px 30px 20px;
	max-width: 750px;
	margin: 0 auto;
}

.li-flow li {
	padding-right: 30px;
	padding-left: 10px;
}
.li-flow li::after {
	font-family: "FontAwesome";
	content: "\f105";
	position: absolute;
	left: -20px;
	top: 50%;
	line-height: 1em;
	margin-top: -0.5em;
	font-size: 3rem;
}
.li-flow li:nth-child(1):after {
	display: none;
}

/*
----------------------------------------
contact
----------------------------------------
*/

#contact .form-table {
	margin: 30px auto;
	max-width: 750px;
}
#contact .form-table th {
	font-weight: bold;
}
.tel-box-wrap {
	width: 100%;
	max-width: 508px;
	background: #f6fff6;
	text-align: center;
	box-sizing: border-box;
	padding: 10px 20px 5px 20px;
	margin: 25px auto 45px;
}
.tel-box-wrap a {
	display: block;
}
#contact #contents .tel-box-wrap p,
#contact #contents .tel-box-wrap .date {
	display: inline-block;
	border-bottom: none;
	margin: 7px 0;
	font-size: 1.5rem;
	font-weight: bold;
}
#contact #contents .tel-box-wrap .en {
	display: block;
	color: #41791f;
}
.acceptance-261 label {
	position: relative;
	display: block;
	word-break: break-all;
}
.acceptance-261 label input[type="checkbox"] + span,
.acceptance-261 label input[type="radio"] + span {
	position: relative;
	padding: 0 30px 0 35px;
}
.acceptance-261 input[type="checkbox"] + span::before {
	border-color: #00acc1;
}
.acceptance-261 label span {
	display: inline-block;
}
.acceptance-261 label input[type="checkbox"] {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}
.acceptance-261 label input[type="checkbox"] + span::before,
.acceptance-261 label input[type="checkbox"] + span::after {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	content: "";
	box-sizing: border-box;
}
.acceptance-261 label input[type="checkbox"] + span::before {
	z-index: 0;
	background-color: transparent;
	width: 22px;
	height: 22px;
	border: 2px #616161 solid;
	border-radius: 5px;
}
.acceptance-261 label input[type="checkbox"] + span::after {
	z-index: 1;
	margin: 5px 8px;
	width: 6px;
	height: 9px;
}
.acceptance-261 label input[type="checkbox"]:checked + span::before {
	background-color: #616161;
}
.acceptance-261 label input[type="checkbox"]:checked + span::after {
	border: 2px solid #fff;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.alnC {
	text-align: center;
}
#contact .submit {
	text-align: center;
	margin: 25px auto;
}
#contact .submit .wpcf7-submit {
	box-sizing: border-box;
	width: 95%;
	max-width: 360px;
	display: inline-block;
	padding: 13px 40px;
	color: #fff;
	border: 2px solid #41791f;
	background: #41791f;
	line-height: 1.5;
	position: relative;
	font-size: 1.7rem;
	border-radius: 3px;
	margin: 25px auto;
}
#contact .submit .wpcf7-submit:hover {
	background: #fff;
	color: #41791f;
}
#contact .privacy {
	width: 95%;
	margin: 25px auto;
	max-width: 750px;
	border: 1px solid #000;
}
#contact .privacy dt {
	background: #000;
	color: #fff;
	text-align: center;
	padding: 5px 10px;
}
#contact .privacy dd {
	padding: 5px 10px;
}

/*
---------------------------------------
clear
---------------------------------------
*/

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

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

.clear,
.both {
	clear: both;
}

*:first-child + html .clearfix {
	zoom: 1;
} /* IE7 */

.mp0,
.pm0 {
	margin-bottom: 0 !important;
	padding-bottom: 1px !important;
}
/*
---------------------------------------
flex
---------------------------------------
*/

.flex.reverse {
	flex-direction: row-reverse;
}
.flex > * {
	box-sizing: border-box;
}
.flex.c02 > * {
	width: 50%;
}
.flex.c02-fd > figure,
.flex.c02-fd > .lg {
	width: 45%;
}
.flex.c02-fd > div,
.flex.c02-fd > .sl {
	width: 55%;
}
.flex.c03 > * {
	width: 33.3333%;
}
.flex.c04 > * {
	width: 25%;
}
.flex.c05 > * {
	width: 20%;
}
.flex-tbl {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: center;
	align-items: center;
}
.flex-auto {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
	align-content: space-between;
}
.flex-auto > * {
	box-sizing: border-box;
	flex-basis: auto;
}

#container {
	margin-top: 60px !important;
}

/*
----------------------------------------
1400
----------------------------------------
*/

@media screen and (min-width: 1400px) {
	/*------------- top -------------*/
	#top #concept::before,
	#top #nurse::before,
	#top #news::before,
	#top #news::after {
		background-repeat: repeat-x;
	}
	#top #concept .inner-box .flex > figure {
		position: relative;
		right: 0;
		top: 0;
		padding: 0;
		margin: 0;
		text-align: right;
		max-width: 625px;
	}
	#top #concept .inner-box .flex > figure img.img-02 {
		bottom: 50px;
	}
}

/*
----------------------------------------
1180
----------------------------------------
*/

@media screen and (max-width: 1180px) {
	#header nav li a {
		padding: 0;
	}
	#top #news .flex.c03 li {
		padding: 10px 25px;
	}
	#top #nurse .flex li {
		margin-right: 0px;
		padding: 10px 25px;
	}
	#head-contents .flex .box {
		padding: 15px 8px;
	}
	#head-contents .flex .box .center a {
		font-size: 1.6rem;
		padding: 10px 5px;
	}
}
/*
----------------------------------------
1060
----------------------------------------
*/

@media screen and (max-width: 1060px) {
	/*
#main-img{
	background-size: 130% auto;
}*/
	#top #news .c02-fd,
	#top #news .c02-fd.reverse {
		left: 0;
	}
	#head-contents .wrap {
		padding: 0;
	}
}
/*
----------------------------------------
750以上
----------------------------------------
*/

@media screen and (min-width: 751px) {
	img.pc {
		display: inline-block;
	}
	img.sp {
		display: none;
	}
	.tel-box-wrap a {
		pointer-events: none;
	}
	#sec-01-01 .tbl-wrap {
		width: 65%;
		margin-left: 35%;
	}
	.btn-e.sp {
		display: none;
	}
	#header.fixed-wrap nav li.logo a {
		transition: inherit;
		background: url(../img/common/logo-on.png) no-repeat 50% 50%;
	}
	#header.fixed-wrap nav li.logo a img {
		visibility: hidden;
	}
	#header.fixed-wrap nav li a {
		color: #1b1b1b;
	}
	#header.fixed-wrap nav li.about a i {
		background: url(../img/common/h-ico-a-on.png) no-repeat 50% 50%;
	}
	#header.fixed-wrap nav li.education a i {
		background: url(../img/common/h-ico-e-on.png) no-repeat 50% 50%;
	}
	#header.fixed-wrap nav li.greeting a i {
		background: url(../img/common/h-ico-g-on.png) no-repeat 50% 50%;
	}
	#header.fixed-wrap nav li.news a i {
		background: url(../img/common/h-ico-n-on.png) no-repeat 50% 50%;
	}
	#header.fixed-wrap nav li.service a i {
		background: url(../img/common/h-ico-h-on.png) no-repeat 50% 50%;
	}
	#header.fixed-wrap nav li.album a i {
		background: url(../img/common/h-ico-p-on.png) no-repeat 50% 50%;
	}
}

/*
----------------------------------------
860
----------------------------------------
*/

@media screen and (max-width: 860px) and (min-width: 751px) {
	#header nav li a i {
		background-size: 27px auto !important;
		height: 30px;
		width: 30px;
	}
	#header nav li img {
		width: 110px;
	}
	#header.fixed-wrap nav li.logo a {
		background-size: 105px auto !important;
	}
	#header.fixed-wrap > .wrap {
		height: 135px;
	}
}

/*
----------------------------------------
750
----------------------------------------
*/

@media screen and (max-width: 750px) {
	img.sp {
		display: inline-block;
	}
	img.pc {
		display: none;
	}
	p,
	li,
	dd {
		font-size: 1.3rem;
	}
	body.open:before {
		content: "";
		width: 100%;
		height: 100%;
		background: rgba(255, 255, 255, 0.9);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 11111;
	}
	.btn-e.sp {
		display: block;
	}
	.loading {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 10000;
		background: #fff;
	}
	#head-contents.fixed-wrap section {
		padding: 0 15px;
	}
	#head-contents.fixed-wrap {
		margin-bottom: 0;
		position: fixed;
		top: 60px;
		box-sizing: border-box;
	}
	#head-contents.fixed-wrap .wrap,
	#head-contents.fixed-wrap .flex {
		padding: 0;
	}
	#head-contents .flex .box {
		padding: 10px 5px;
	}
	#head-contents .flex.box-02 .box {
		width: 50%;
	}
	#head-contents .flex.box-03 .box {
		width: 33.333%;
	}
	#head-contents .flex.box-04 .box {
		width: 25%;
	}
	#head-contents .flex.box-05 .box {
		width: 20%;
	}
	#head-contents .flex .box .center a {
		display: block;
		border: 2px solid #4e934d;
		border-radius: 5px;
		color: #4e934d;
		font-size: 1.2rem;
		padding: 5px 5px;
		transition: all 0.4s;
	}
	#main-img {
		height: 400px;
		background: url(../img/top/main-img-sp.jpg) no-repeat top center;
		background-size: cover;
		/*background-attachment: fixed;*/
	}
	#top #news .c02-fd {
		flex-direction: column;
	}
	#top #news .c02-fd > figure,
	#top #news .c02-fd > div {
		width: 100%;
	}
	#top #news .c02-fd > div h3 {
		text-align: center;
		margin-top: 40px;
	}
	#top #news .c02-fd > div .btn-b {
		position: relative;
		top: 0;
		right: 0;
		margin: 0 auto;
		text-align: center;
	}
	#top #news .c02-fd > div .btn-b a {
		margin: 0 auto;
	}
	#header .sp-logo,
	#header .sp-logo a,
	#header .home,
	#header .contact,
	#header .faq {
		display: block;
	}
	#header.fixed-wrap .sp-logo a img {
		visibility: hidden;
	}
	#header.fixed-wrap .active_nav .logo a {
		background: none;
	}
	#header.fixed-wrap .active_nav .logo a img {
		visibility: visible;
	}
	#header.fixed-wrap .sp-logo a {
		background: url(../img/common/logo-on.png) no-repeat 50% 50%;
		background-size: contain;
	}
	#header.fixed-wrap #sp-btn div span {
		background: #1b1b1b;
	}
	#header.fixed-wrap #sp-btn.active div span {
		background: #fff;
	}
	#header.fixed-wrap #g-nav.active_nav {
		overflow: auto;
	}
	#top #g-nav.fixed,
	#g-nav,
	#top #g-nav {
		background: #41791f;
		position: relative;
	}
	#g-nav {
		overflow: auto;
	}
	#header {
		border-bottom: none;
	}
	#wrapper {
		padding-top: 0;
		/*background:#000;*/
	}
	#container {
		padding-top: 20px;
		background: #fff6e5;
		position: relative;
		/*z-index: 1000000;*/
	}
	#sp-btn {
		border: none;
		top: 30px;
		z-index: 100000;
	}
	#sp-btn p {
		display: none;
	}
	#sp-btn div span {
		height: 3px;
		background: #fff;
		border-radius: 2em;
	}
	.sp-logo {
		text-align: left;
		padding: 12px 20px;
		position: absolute;
		top: 0;
		left: 0;
	}
	.sp-logo img {
		width: auto;
		height: auto;
		max-height: 60px;
	}
	#header > .wrap {
		position: relative;
		padding: 0;
		position: fixed;
		padding: 0;
		height: 80px;
		width: 100%;
		top: 22px;
		top: 0;
		left: 0;
		z-index: 1000000;
	}
	#header.fixed-wrap > h1 {
		display: none;
	}
	#header.fixed-wrap > .wrap {
		height: 80px;
		background: rgba(255, 255, 255, 0.9);
		top: 0;
	}
	#header .logo {
		margin-right: 0;
		order: 1;
		max-height: inherit !important;
	}
	#header .home {
		order: 2;
		background: #5a8a3c;
	}
	#header .about {
		order: 3;
	}
	#header .education {
		order: 4;
		background: #5a8a3c;
	}
	#header .greeting {
		order: 5;
	}
	#header .service {
		order: 6;
		background: #5a8a3c;
	}
	#header .album {
		order: 7;
	}
	#header .news {
		order: 8;
		background: #5a8a3c;
	}
	#header .faq {
		order: 9;
	}
	#header .contact {
		order: 10;
		background: #5a8a3c;
	}
	#header nav li {
		border: none;
	}
	#header nav li:nth-child(odd) {
	}
	#header nav li a br {
		display: none;
	}
	#header nav li a i {
		width: 22px;
		height: 22px;
		display: inline-block;
		vertical-align: middle;
		margin-right: 10px;
		background-size: contain !important;
	}
	#header nav li a {
		padding: 12px 20px;
		display: block;
		text-align: left;
		font-size: 1.3rem;
		line-height: 1.2;
		min-height: auto;
	}
	#header nav li a:before {
		font-family: "FontAwesome";
		content: "\f105";
		position: absolute;
		right: 15px;
		top: 50%;
		line-height: 1em;
		margin-top: -0.5em;
		font-size: 2rem;
	}
	#header nav li.logo a:before {
		display: none;
	}
	.contents {
		position: relative;
		/*z-index: 1000000;*/
	}
	footer {
		position: relative;
		z-index: 1000000;
	}
	footer .wrap,
	.footer-contents.flex .box {
		padding: 0;
	}
	.footer-contents.flex figure {
		margin: 15px 0;
	}
	.footer-contents.flex .box li {
		float: none;
		width: 100%;
		box-sizing: border-box;
		position: relative;
		padding: 0;
		font-size: 1.4rem;
	}
	.footer-contents.flex .box li::before {
		display: none;
	}
	.footer-contents.flex .box li:nth-child(even) a {
		background: #f2f2f2;
	}
	.footer-contents.flex .box li a {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 15px 20px;
		color: #41791f;
		font-weight: bold;
		position: relative;
	}
	.footer-contents.flex .box li a::after {
		font-family: "FontAwesome";
		content: "\f105";
		position: absolute;
		top: 50%;
		right: 15px;
		color: #41791f;
		font-size: 20px;
		font-weight: normal;
		margin-top: -18px;
	}
	.footer-contents.flex .box li a::before {
		content: "";
		width: 18px;
		height: 18px;
		background-size: contain !important;
		border-radius: 100%;
		display: inline-block;
		vertical-align: middle;
		margin-right: 15px;
	}
	.footer-contents #menu-item-320 a::before {
		background: url(../img/common/h-ico-t-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-378 a::before {
		background: url(../img/common/h-ico-a-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-323 a::before {
		background: url(../img/common/h-ico-e-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-321 a::before {
		background: url(../img/common/h-ico-g-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-376 a::before {
		background: url(../img/common/h-ico-n-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-324 a::before {
		background: url(../img/common/h-ico-h-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-377 a::before {
		background: url(../img/common/h-ico-p-on.png) no-repeat 50% 50%;
	}

	.footer-contents #menu-item-325 a::before {
		background: url(../img/common/h-ico-r-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-326 a::before {
		background: url(../img/common/h-ico-f-on.png) no-repeat 50% 50%;
	}
	.footer-contents #menu-item-327 a::before {
		background: url(../img/common/h-ico-m-on.png) no-repeat 50% 50%;
	}
	.footer-contents.flex .box {
		width: 100%;
		order: 1;
	}
	.footer-contents.flex .store-info {
		width: 40%;
		order: 3;
	}
	.footer-contents.flex .store-gmap {
		width: 100%;
		order: 2;
	}
	#bottom-fix {
		display: none !important;
	}
	.copyright small {
		font-size: 1rem;
		font-weight: bold;
		letter-spacing: 0;
	}

	/*------------- parts -------------*/
	.btn-b a {
		box-sizing: border-box;
		display: block;
		width: 100%;
		max-width: 320px;
		text-align: center;
	}
	.btn-c a {
		font-size: 1.3rem;
		padding: 12px 15px;
		width: 100%;
	}
	.btn-d a {
		padding: 15px 10px;
		font-size: 1.4rem;
	}
	.btn-d a i {
		width: 17px;
		height: 17px;
		margin-right: 10px;
		top: -3px;
		background-size: contain !important;
	}
	.dl-01 dt {
		width: 100%;
	}
	.table-02 tbody,
	.table-02 tr,
	.table-02 th,
	.table-02.cell-02 th,
	.table-02 td {
		width: 100%;
		display: block;
		box-sizing: border-box;
	}

	.table-02 th {
		border-bottom: none;
		padding-bottom: 5px;
	}
	.table-02 td {
		padding-top: 5px;
	}
	.lightboxOverlay {
		z-index: 1000000 !important;
	}
	.lightbox {
		z-index: 1000001 !important;
	}
	.footer-rec,
	#main-img .rec {
		position: fixed;
		bottom: 10px;
		right: 10px;
		z-index: 999;
	}

	#faq #faq-menu2.flex .box {
		padding: 0 0 20px;
	}

	/*------------- top -------------*/
	#top #concept::before,
	#top #nurse::before,
	#top #news::before,
	#top #news::after {
		background-size: 750px auto;
		height: 100px;
	}
	#top #nurse::before {
		top: -60px;
	}
	#top #nurse h2 {
		top: 0;
		padding: 0 20px;
		margin-bottom: 40px;
	}
	#top #concept::before,
	#top #news::before {
		top: -60px;
	}
	#top #news::after {
		bottom: -60px;
	}
	#top #concept .inner-box .flex {
		margin-bottom: 0;
	}
	#top #concept .inner-box .flex > div h2 img {
		max-width: 230px;
		width: 80%;
		margin-bottom: 20px;
	}
	#top #concept .inner-box .flex > div {
		padding: 0;
		text-align: left;
		width: 100%;
		order: 2;
	}
	#top #concept .inner-box .flex > figure {
		position: relative;
		right: 0;
		top: 0;
		padding: 0;
		margin: 0;
		text-align: center;
		width: 100%;
		order: 1;
	}
	#top #concept .inner-box .flex > figure img.img-02 {
		display: none;
	}
	#top #concept .inner-box .flex > figure::before {
		content: "";
		position: absolute;
		top: 100%;
		left: inherit;
		width: 100%;
		height: 90px;
		z-index: 1;
		background: url(../img/top/ico-concept.png) no-repeat 100% 0;
		background-size: contain;
		right: -25px;
		margin-top: -25px;
	}
	#top #concept .inner-box .flex > div h2 {
		font-size: 2rem;
		line-height: 1.6;
		font-weight: bold;
		margin: 20px 0;
	}
	#top #nurse {
		padding-left: 0px;
		padding-right: 0px;
	}
	#top #nurse .flex li figure img {
		position: relative;
		left: 0;
	}
	#top #nurse .flex.c03 {
		justify-content: flex-start;
		padding-bottom: 50px;
	}
	#top #nurse .flex.c03 > * {
		width: 50%;
		padding: 0 15px;
	}
	#top #nurse h3 {
		font-size: 1.5rem;
	}
	#f-bnr .bnr-list {
		background: #fff6e5;
		position: relative;
		z-index: 1000000;
		width: 100%;
		justify-content: center !important;
		box-sizing: border-box;
		padding: 0 12px 25px;
		left: 0;
	}
	#top #news {
		padding: 1px 10px 1px 10px !important;
	}
	#top #news .ttl-top {
		margin: -20px auto 25px auto;
		max-width: 453px;
		width: 75%;
		position: relative;
		left: -10px;
	}
	#top #news .bnr-list {
		position: relative;
		top: -50px;
		z-index: 1;
		width: 100%;
		justify-content: center !important;
		box-sizing: border-box;
		padding: 0;
		margin-top: -25px;
		left: 0;
	}
	#top #news .bnr-list > li {
		padding: 5px 0;
	}
	#top #news .flex.c04 > * {
		padding: 0 10px;
		width: 50%;
	}
	#top #news .flex.c03 > * {
		width: 100%;
		box-sizing: border-box;
		padding: 0 20px;
		margin: 0 0 50px;
	}
	#top #recruit {
		padding: 140px 0 60px 0 !important;
		background-size: cover;
		overflow: hidden;
	}
	#top #recruit h2 {
		margin-bottom: 10px;
	}
	#top #recruit h2 img {
		width: 80%;
		max-width: 241px;
		padding-bottom: 10px;
	}
	#top #recruit .flex > div {
		width: 100%;
		min-width: inherit;
	}
	#top #recruit .flex > div p {
		text-align: left;
	}
	#top #recruit .inner-box {
		padding: 0 20px;
	}
	#top #recruit .flex > div::before {
		left: -20px;
		height: 150px;
		background-size: contain;
	}
	#top #recruit .flex > div::after {
		right: -20px;
		height: 80px;
		background-size: contain;
	}

	/*------------- photo -------------*/

	#photo #list-01 li {
		width: 50%;
	}
	#head-contents section {
		background: #fff;
		margin-bottom: -40px;
		z-index: 1;
		position: relative;
		padding: 0 5px;
	}
	#head-contents {
		background: #fff6e5;
		padding: 0 20px;
		margin-bottom: 0;
	}

	/*--greeting--*/

	#greeting #sec-02 .li-number li {
		width: 100%;
	}
	/*--ここまで--*/
}

/*
----------------------------------------
900-751
----------------------------------------
*/

@media screen and (max-width: 900px) and (min-width: 751px) {
	#top #nurse .flex li.nurse-05 figure:before {
		width: 63.5px;
		height: 46px;
	}
	#top #nurse .flex li.nurse-04 figure:before {
		width: 73.5px;
		height: 73px;
	}
	#top #nurse .flex li.nurse-03 figure:before {
		width: 42.5px;
		height: 51px;
	}
	#top #nurse .flex li.nurse-02 figure:before {
		width: 57.5px;
		height: 44px;
	}
	#top #nurse .flex li.nurse-01 figure:before {
		width: 41px;
		height: 78.5px;
	}
	/*--ここまで--*/
}

/*
----------------------------------------
480
----------------------------------------
*/

@media screen and (max-width: 480px) {
	.footer-contents.flex figure {
		margin: 35px auto;
		width: 90px;
	}
	#page-ttl {
		padding: 60px 20px 10px 20px;
		min-height: auto;
	}
	#page-ttl .box {
		padding: 20px 0px;
	}
	#page-ttl .box h1 {
		font-size: 2.8rem;
	}
	#page-ttl .box p.en {
		font-size: 1.3rem;
	}
	#container {
		margin-top: 0 !important;
	}
	#contents section .flex.box-03 .box,
	#contents section .flex.box-02 .box {
		padding: 10px 0;
	}
	.post-password-form {
		text-align: left;
	}
	.post-password-form p label {
		display: block;
	}
	.post-password-form input[type="password"] {
		vertical-align: middle;
		font-size: 1.6rem;
		padding: 7px;
		width: 65% !important;
		max-width: 190px !important;
		box-sizing: border-box;
		border: 1px solid #aaa;
		outline: none;
		border-radius: 3px;
		display: inline-block;
	}
	.post-password-form input[type="submit"] {
		background: #000;
		color: #fff;
		padding: 10px 20px;
		border-radius: 5px;
		cursor: pointer;
		transition: all 0.2s;
		display: block;
		width: 80%;
		margin: 25px auto;
	}
	#top #nurse .flex li.nurse-05 figure:before {
		width: 63.5px;
		height: 46px;
	}
	#top #nurse .flex li.nurse-04 figure:before {
		width: 73.5px;
		height: 73px;
	}
	#top #nurse .flex li.nurse-03 figure:before {
		width: 42.5px;
		height: 51px;
	}
	#top #nurse .flex li.nurse-02 figure:before {
		width: 57.5px;
		height: 44px;
	}
	#top #nurse .flex li.nurse-01 figure:before {
		width: 41px;
		height: 78.5px;
	}
	.btn-d .box a {
		margin: 0 auto;
		padding: 12px 5px;
	}
	.li-box-center {
		padding: 30px 20px 20px;
	}
	.li-box-center.li-check li {
		padding-right: 0;
	}
	.li-center2.flex {
		justify-content: center;
	}
	.li-center2.flex li {
		width: 33.3333%;
	}
	#top {
		background-size: 120% auto;
	}
	#head-contents .flex.box-05 .box {
		width: 33.3333%;
		padding: 5px;
	}
	.li-flow li {
		width: 100% !important;
	}
	.li-flow li::after {
		font-family: "FontAwesome";
		content: "\f107";
		position: absolute;
		left: 50%;
		top: -25px;
		line-height: 1em;
		margin: 0 0 0 -0.5em;
		font-size: 3rem;
	}
	#greeting #sec-history .left,
	#sec-history > * {
		width: 100%;
	}
	#head-contents.fixed-wrap section {
		padding: 0;
	}
	#head-contents .flex .box .center a {
		font-size: 1.1rem;
		padding: 5px 0;
	}
	.flex .box.pic {
		width: 100%;
	}
	.flex .box.txt {
		width: 100%;
	}
	/*--ここまで--*/
}

/* Hover.css (http://ianlunn.github.io/Hover/) Version: 2.2.0 Author: Ian Lunn @IanLunn Author URL: http://ianlunn.co.uk/ Github: https://github.com/IanLunn/Hover Hover.css Copyright Ian Lunn 2017. Generated with Sass.
 */

/* Bob */
@-webkit-keyframes bob {
	0% {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
	50% {
		-webkit-transform: translateY(-4px);
		transform: translateY(-4px);
	}
	100% {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
}
@keyframes bob {
	0% {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
	50% {
		-webkit-transform: translateY(-4px);
		transform: translateY(-4px);
	}
	100% {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
}
@-webkit-keyframes bob-float {
	100% {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
}
@keyframes bob-float {
	100% {
		-webkit-transform: translateY(-8px);
		transform: translateY(-8px);
	}
}
.bob {
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px transparent;
}
.bob:hover,
.bob:focus,
.bob:active {
	-webkit-animation-name: bob-float, bob;
	animation-name: bob-float, bob;
	-webkit-animation-duration: 0.3s, 1.5s;
	animation-duration: 0.3s, 1.5s;
	-webkit-animation-delay: 0s, 0.3s;
	animation-delay: 0s, 0.3s;
	-webkit-animation-timing-function: ease-out, ease-in-out;
	animation-timing-function: ease-out, ease-in-out;
	-webkit-animation-iteration-count: 1, infinite;
	animation-iteration-count: 1, infinite;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	-webkit-animation-direction: normal, alternate;
	animation-direction: normal, alternate;
}

.none {
	display: none;
}

/*
----------------------------------------
aboutの地図画像用
----------------------------------------
*/

@media screen and (min-width: 1025px) {
	#about #contents #sec-03 #h-16 + figure {
		padding: 100px;
	}
}

@media screen and (min-width: 751px) and (max-width: 1024px) {
	#about #contents #sec-03 #h-16 + figure {
		padding: 40px;
	}
}

/* 2024.01.31 add */
#header nav li.blog a i {
	background: url(../img/common/h-ico-b.png) no-repeat 50% 50%;
}
@media screen and (min-width: 751px) {
	#header.fixed-wrap nav li.blog a i {
		background: url(../img/common/h-ico-b-on.png) no-repeat 50% 50%;
	}
}
#header .blog {
	order: 7;
}

.floating-bnr-box {
	position: fixed;
	bottom: 60px;
	right: 35px;
	z-index: 999;
	display: flex;
	flex-flow: column;
	gap: 15px;
	max-width: 164px;
}
.floating-bnr-box > a {
	width: 164px;
}
.floating-bnr-box img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
@media screen and (max-width: 750px) {
	.floating-bnr-box {
		position: fixed;
		bottom: 10px;
		right: 10px;
		z-index: 999;
		max-width: none;
		flex-flow: row;
		gap: 10px;
		justify-content: flex-end;
	}
	.floating-bnr-box > a {
		width: 120px;
	}
}
