@charset "UTF-8";

body {
	color: #1C1B1A;
	font-size: 17px;
	line-height: 2;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

@media screen and (max-width: 768px) {
	body {
		font-size: 16px;
	}
}
@media screen and (max-width: 430px) {
	body {
		font-size: 15px;
	}
}
@media screen and (max-width: 320px) {
	body {
		font-size: 14px;
		line-height: 1.8;
	}
}

/* ***************************************
 * H要素
 * **************************************/

h1, h2, h3, h4, h5, h6 {
	font-family: 'ShipporiMinchoB1', serif;
	font-weight: normal;
	line-height: 1.4;
	margin: 0;
	text-align: center;
	color: #133D24;
}

h1 {
	font-size: 3rem;
}
h2 {
	font-size: 2.4rem;
	margin-bottom: 48px;
}
h3 {
	text-align: left;
	font-size: 1.6rem;
	margin-bottom: 30px;
}
h4 {
	text-align: left;
	font-size: 1.6rem;
	margin-bottom: 30px;
}


@media screen and (max-width: 1024px) {
	h2 {
		font-size: 2rem;
	}
}
@media screen and (max-width: 768px) {
	h2 {
		font-size: 1.6rem;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 559px) {
	h2 {
		font-size: 1.6rem;
		margin-bottom: 22px;
	}
	h3 {
		font-size: 1.3rem;
	}
	h4 {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 430px) {
	h2 {
		font-size: 1.4rem;
	}
	h3 {
		font-size: 1.2rem;
	}
	h4 {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 320px) {
	h2 {
		font-size: 1.3rem;
		margin-bottom: 18px;
	}
	h3 {
		font-size: 1.1rem;
	}
	h4 {
		font-size: 1rem;
	}
}


.sec_title {
	
}
.goal .sec_title {
	
}

.line_title {
	background: #EFFAF3;
	padding: 18px 30px;
	margin: 0;
	border-top: 1px solid green;
	border-bottom: 1px solid green;
}

@media screen and (max-width: 560px) {
	.line_title {
		padding: 12px 18px;
	}
}



/* ページタイトル
 * **************************************/

.page_title {
	text-align: left;
	font-size: 1.6rem;
	margin-bottom: 30px;
}
.page_title span {
	padding-left: 30px;
	display: inline-block;
	color: #133D24;
	line-height: 1;
	position: relative;
	z-index: 1;
}
.page_title span:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: -12px;
	top: 50%;
	transform: translateY(-50%);
	background: url(../images/common/leaf05.webp) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 60px;
	height: 36px;
	z-index: -1;
}
.page_title span.year {
	padding-left: 6px;
}
.page_title span.year:before {
	content: none;
}

@media screen and (max-width: 834px) {
	.page_title {
		font-size: 1.3rem;
	}
	.page_title span {
	padding-left: 20px;
	}
	.page_title span:before {
		width: 54px;
	height: 31px;
	}
}
@media screen and (max-width: 560px) {
	.page_title {
		font-size: 1.12rem;
	}
}
@media screen and (max-width: 320px) {
	.page_title {
		font-size: 1.1rem;
	}
}


/* ***************************************
 * リンク
 * **************************************/

a {
	color: #133D24;
	text-decoration: none;
	transition: all .3s ease;
	word-break: break-all;
}
a:hover {
	opacity: .7;
}
a.noopacity,
a.noopacity img {
	opacity: 1 !important;
}
a img {
	transition: all .3s;
	-webkit-transition: all .3s;
}
a img:hover {
	opacity: .7;
}



/* ***************************************
 * ボタン
 * **************************************/

a.phonenumber {
	font-family: 'Crimson_Text';
	font-size: 3.2rem;
	line-height: 1;
	color: #AD0311;
}
span.phone_mark {
	font-family: 'Crimson_Text';
    padding-left: 42px;
    position: relative;
}
span.phone_mark:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: url(../images/common/icon_phone.webp) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 36px;
	height: 36px;
}


a.btn_mail {
	overflow: hidden;
	display: inline-block;
	background: linear-gradient(40deg, #9E0310 0%, #9E0310 40%, #AD0311 40%, #AD0311 100%);
	color: #FFF;
	width: 640px;
	border-radius: 2px;
	padding: 16px 30px;
	font-family: sans-serif;
	font-size: 1.3rem;
	box-shadow: 0 3px 3px #B2B2B2;
}


/* メインボタン
 * **************************************/

a.btn_main {
	display: inline-block;
	background: #1F6039;
	color: #FFF;
	border: 2px solid #FFF;
	min-width: 180px;
	max-width: 320px;
	border-radius: 60px;
	padding: 16px 38px;
	font-family: sans-serif;
	font-size: 1rem;
}
a.btn_main:hover {
	opacity: 1;
	background: #FFF;
	color: #1F6039;
	border: 2px solid #1F6039;
}


/* 募集要項へ
 * **************************************/

a.btn_recruit {
	display: inline-block;
	text-align: center;
	padding: 18px 38px 18px 4em;
	background: #277a48;
	color: #FFF;
	font-size: 1rem;
	border-radius: 62px;
	position: relative;
}
a.btn_recruit:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 2em;
	transform: translateY(-50%);
	background: url(../images/common/icon_arrowGreen.webp) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 18px;
	height: 18px;
}
a.btn_recruit:hover {
	opacity: 1;
	background: #1E5E36;
}

@media screen and (max-width: 430px) {
	a.btn_recruit {
		padding: 15px 32px 15px 4em;
	}
}
@media screen and (max-width: 380px) {
	a.btn_recruit {
		font-size: .9rem;
	}
}



/* テキストリンク
 * **************************************/

a.atxt {
	color: #277a48;
	border-bottom: 1px solid #277a48;
}


/* ***************************************
 * 脚注
 * **************************************/

span.sup {
	vertical-align: top;
	font-size: .8rem;
}
ul.sup_list {
	list-style: none;
	margin: 30px 0 0;
	padding: 0;
}
ul.sup_list li {
	font-weight: normal;
	font-size: .9rem;
}
ul.sup_list li span.sup {
	margin-right: 6px;
}

@media screen and (max-width: 560px) {
	ul.sup_list li {
		font-size: .8rem;
	}
}


/* ***************************************
 * ヘッダー
 * **************************************/

@media screen and (max-width: 1194px) {
	header .header_flex .header_flex___nav {
		padding-left: 45px;
	}
	nav.general ul.gnav li {
		margin-left: 20px;
		font-size: 1rem;
	}
}
@media screen and (max-width: 1024px) {
	header .header_flex {
		flex-direction: column;
	}
	header .header_flex .header_flex___logo .logo_flex {
		width: 380px;
	}
	header a.logo {
		width: 220px;
	}
	header a.recruit {
		width: 150px;
	}
	header .header_flex .header_flex___logo,
	header .header_flex .header_flex___logo.header_recruit {
		width: 100%;
		max-width: 100%;
	}
	header .header_flex .header_flex___logo .head_h1 {
		text-align: left;
	}
	header .header_flex .header_flex___nav,
	header .header_flex .header_flex___nav.header_nav_recruit {
		width: 100%;
		padding: 0;
		margin-top: 18px;
	}
	header .header_flex .header_flex___nav .header_flex___nav_bottom {
		width: 100%;
	}
	header .header_flex .header_flex___nav {
		align-items: center;
	}
	nav.general ul.gnav {
		justify-content: space-around;
	}
	nav.general ul.gnav li {
		margin: 0;
	}
}
@media screen and (max-width: 560px) {
	header .header_flex .header_flex___logo .logo_flex {
		width: 330px;
	}
	header a.logo {
		width: 180px;
	}
	header a.recruit {
		width: 120px;
	}
}
@media screen and (max-width: 430px) {
	header .header_flex {
		padding: 22px 20px;
	}
	header .header_flex .header_flex___logo .logo_flex {
		width: 100%;
	}
	header a.logo {
		width: 135px;
	}
	header a.recruit {
		width: 90px;
		margin-left: 12px;
	}
}
@media screen and (max-width: 380px) {
	header .header_flex {
		padding: 20px 20px;
	}
	header a.logo {
		width: 120px;
	}
	header a.recruit {
		width: 76px;
	}
}
@media screen and (max-width: 320px) {
	header a.logo {
		width: 105px;
	}
	header a.recruit {
		width: 70px;
	}
}



/****************************************
 * ハンバーガーナビ
 * **************************************/

#nav-a2 .nav-a2-box {
	position: relative;
	padding-bottom: 150px;
}
#fullscreen-nav {

}
/* ハンバーガー ここから */
#fullscreen-nav a.fullscreen-nav-hamburger {
	width: 32px;
	height: 24px;
	position: fixed;
	right: 30px;
	top: 50px;
	z-index: 99;
}
#fullscreen-nav .fullscreen-nav-hamburger-line {
	background: #000;
	display: block;
	height: 3px;
	border-radius: 3px;
	position: absolute;
	transition: transform .3s;
	width: 100%;
}
#fullscreen-nav span.menu {
	font-size: 10px;
	font-weight: bold;
	position: absolute;
	left: 50%;
	bottom: -20px;
	transform: translateX(-50%);
	font-family: "Noto Sans JP", sans-serif !important;
	width: 100%;
	text-align: center;
}
#fullscreen-nav　.hamburger-line-top {
	top: 0;
}
#fullscreen-nav .hamburger-line-center {
	top: 11px;
}
#fullscreen-nav .hamburger-line-bottom {
	bottom: 0;
}
#fullscreen-nav .hamburger-line-top.active{
	top: 11px;
	transform: rotate(45deg);
}
#fullscreen-nav .hamburger-line-center.active{
	transform:scaleX(0);
}
#fullscreen-nav .hamburger-line-bottom.active{
	bottom: 10px;
	transform: rotate(135deg);
}
/* ハンバーガー ここまで */
#fullscreen-nav nav.fullscreen-nav-body {
	width: 100%;
	background: #FFF;
	display: none;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 88;
}
#fullscreen-nav .fullscreen-nav-content {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 60px;
	width: 100%;
	height: 100%;
}
#fullscreen-nav .sp_nav {
	margin-top: 60px;
}
#fullscreen-nav .sp_nav ul.footer_nav {
	list-style: none;
	margin: 0;
	padding: 0;
}
#fullscreen-nav .sp_nav ul.footer_nav li {
	margin-top: 18px;
	text-align: center;
	font-size: 1.3rem;
	font-family: 'ShipporiMinchoB1', serif;
}


@media screen and (max-width: 560px) {
	#fullscreen-nav a.fullscreen-nav-hamburger {
		top: 43px;
	}
}
@media screen and (max-width: 430px) {
	#fullscreen-nav a.fullscreen-nav-hamburger {
		top: 30px;
		right: 20px;
	}
	#fullscreen-nav .fullscreen-nav-content a.logo {
		width: 180px;
	}
	#fullscreen-nav span.menu {
		font-size: 9px;
	}
}
@media screen and (max-width: 380px) {
	#fullscreen-nav a.fullscreen-nav-hamburger {
		top: 20px;
	}
	#fullscreen-nav .sp_nav {
		margin-top: 45px;
	}
	#fullscreen-nav .fullscreen-nav-content a.logo {
		width: 150px;
	}
}






/* ***************************************
 * ページビジュアル
 * **************************************/

.pagetop {
	padding: 0 30px 0 30px;
	position: relative;
}
.pagetop.noimg {
	background: #F9F6EB;
}
.pagetop .pagetop_title_box {
	width: 100%;
	position: absolute;
	top: 50%;
    left: 0;
	transform: translateY(-50%);
    z-index: 1;
}
.pagetop.noimg .pagetop_title_box {
	position: static;
    transform: none;
}
.pagetop .pagetop_title {
	line-height: 1.4;
	color: #FFF;
	padding: 30px 90px;
	text-align: center;
}
.pagetop .pagetop_title span.the_title {
	display: inline-block;
	color: #133D24;
	line-height: 1;
	background: rgba(255, 255, 255, .3);
}
.pagetop .pagetop_title span.the_title span {
	display: block;
    margin-top: 18px;
    font-size: 2rem;
    color: #133D24;
}
.pagetop .pagetop_title span.the_title_bottom {
	display: block;
	font-size: 1.3rem;
	color: #133D24;
}

.pagetop .pagetop_title span.post_title {
	display: inline-block;
	font-size: 1.6rem;
}
.pagetop .pagetop_title span.post_title:before {
	content: "：";
}

@media screen and (max-width: 768px) {
	.pagetop .pagetop_title {
		font-size: 2rem;
	}
	.pagetop .pagetop_title span.the_title span {
		font-size: 1.7rem;
	}
}
@media screen and (max-width: 560px) {
	.pagetop {
		padding: 0 18px;
	}
	.pagetop.noimg {
		padding: 28px 18px;
	}
	.pagetop .pagetop_title_box {
		left: 50%;
		top: 50%;
        transform: translate(-50%, -50%);
		padding: 0 20px;
	}
	.pagetop .pagetop_title {
		font-size: 1.6rem;
		padding: 0;
	}
	.pagetop .pagetop_title span.the_title span {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 430px) {
	.pagetop .pagetop_title {
		font-size: 1.4rem;
	}
	.pagetop .pagetop_title span.the_title span {
		font-size: 1rem;
	}
}
@media screen and (max-width: 380px) {
	
}
@media screen and (max-width: 320px) {
}




/* ***************************************
 * parts/app
 * **************************************/

.app {
	margin: 60px;
	padding: 30px;
	border: 1px solid #fdbd33;
	background-image:
		repeating-linear-gradient(to bottom,
			transparent 25px,
			rgba(0, 0, 0, 0.04) 26px,  rgba(0, 0, 0, 0.04) 26px,
			transparent 27px,  transparent 51px, 
			rgba(0, 0, 0, 0.04) 52px,  rgba(0, 0, 0, 0.04) 52px,
			transparent 53px,  transparent 77px, 
			rgba(0, 0, 0, 0.04) 78px,  rgba(0, 0, 0, 0.04) 78px,
			transparent 79px,  transparent 103px, 
			rgba(0, 0, 0, 0.04) 104px,  rgba(0, 0, 0, 0.04) 104px,
			transparent 105px,  transparent 129px, 
			rgba(0, 0, 0, 0.04) 130px,  rgba(0, 0, 0, 0.04) 130px),

		repeating-linear-gradient(to right,
			transparent 25px,
			rgba(0, 0, 0, 0.04) 26px,  rgba(0, 0, 0, 0.04) 26px,
			transparent 27px,  transparent 51px, 
			rgba(0, 0, 0, 0.04) 52px,  rgba(0, 0, 0, 0.04) 52px,
			transparent 53px,  transparent 77px, 
			rgba(0, 0, 0, 0.04) 78px,  rgba(0, 0, 0, 0.04) 78px,
			transparent 79px,  transparent 103px, 
			rgba(0, 0, 0, 0.04) 104px,  rgba(0, 0, 0, 0.04) 104px,
			transparent 105px,  transparent 129px, 
			rgba(0, 0, 0, 0.04) 130px,  rgba(0, 0, 0, 0.04) 130px);
}
.app .app_box {
	
}
.app .app_flex {
	display: flex;
    justify-content: space-around;
	align-items: center;
}
.app .app_flex .app_flex___detail {
	width: 56%;
	max-width: 670px;
	padding-right: 30px;
}
.app .app_flex .app_flex___device {
	width: 44%;
	max-width: 510px;
}
.app .app_flex .app_flex___detail .app_title {
	width: 110%;
    max-width: 580px;
	margin: 0 auto;
}
.app .app_flex .app_flex___detail .app_flex___detail_inbox {
	text-align: center;
}
.app .app_flex .app_flex___detail ul.app_func_list {
	display: inline-block;
	list-style: none;
	margin: 30px auto 0;
	padding: 0;
}
.app .app_flex .app_flex___detail ul.app_func_list li {
	background: #fdbd33;
	text-align: left;
	margin-top: 12px;
	padding: 12px 28px 12px 68px;
	border-radius: 62px;
	position: relative;
}
.app .app_flex .app_flex___detail ul.app_func_list li:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	background: url(../images/common/icon_checkWhite.webp) no-repeat;
	background-size: 100%;
	background-position: bottom center;
	width: 18px;
	height: 18px;
}
.app .app_flex .app_flex___detail ul.app_func_list li span {
	display: inline-block;
    line-height: 1.4;
}
.app .app_flex .app_flex___detail ul.app_func_list li > div > span {
	display: block;
    font-size: 1rem;
}


@media screen and (max-width: 1194px) {
	.app .app_flex .app_flex___detail .app_title {
		width: 120%;
	}
}
@media screen and (max-width: 1024px) {
	.app .inner {
		padding: 0;
	}
	.app .app_flex .app_flex___detail .app_title {
		
	}
}
@media screen and (max-width: 834px) {
	.app {
		margin: 18px;
	}
	#app_area .inner {
		padding: 0;
	}
	.app .app_flex .app_flex___detail .app_title {
		width: 380px;
	}
	.app .app_flex .app_flex___detail ul.app_func_list {
		margin: 12px auto 0;
	}
	.app .app_flex .app_flex___detail ul.app_func_list li {
		padding: 9px 18px 9px 52px;
		font-size: 1rem;
	}
	.app .app_flex .app_flex___detail ul.app_func_list li:before {
		left: 22px;
	}
}
@media screen and (max-width: 560px) {
	.app .app_flex {
		flex-direction: column;
	}
	.app .app_flex .app_flex___detail {
		width: 100%;
		padding-right: 0;
	}
	.app .app_flex .app_flex___detail .app_title {
		width: calc(100% - 40px);
	}
	.app .app_flex .app_flex___device {
		width: 100%;
		margin-top: 30px;
	}
}
@media screen and (max-width: 430px) {
	.app {
		margin: 9px;
	}
}
@media screen and (max-width: 380px) {
	.app {
		padding: 20px;
	}
	.app .app_flex .app_flex___detail ul.app_func_list li {
		padding: 9px 12px 9px 40px;
		font-size: .9rem;
	}
	.app .app_flex .app_flex___detail ul.app_func_list li:before {
		left: 15px;
		width: 15px;
		height: 15px;
	}
}


/* ***************************************
 * サイドバー
 * **************************************/

aside .aside_box {
	margin-top: 60px;
}
aside .aside_box.monthly_list {
	margin-top: 0;
}
aside .aside_title {
	font-size: 1.3rem;
}
aside .aside_title span {
	display: inline-block;
	padding-left: 30px;
	position: relative;
	z-index: 1;
}
aside .aside_title span::before {
	content: "";
	display: inline-block;
	position: absolute;
	left: -12px;
	top: 50%;
	transform: translateY(-50%);
	background: url(../images/common/leaf05.webp) no-repeat;
	background-size: 100%;
	background-position: center;
	width: 60px;
	height: 36px;
	z-index: -1;
}

aside ul.yaer_list {
	font-family: 'ShipporiMinchoB1', serif;
	font-weight: normal;
	list-style: none;
	margin: 0;
	padding: 0;
}
aside ul.yaer_list li {
	font-size: 1rem;
}

aside .toall {
	margin-top: 12px;
}
aside a.btn_aside {
	font-family: 'ShipporiMinchoB1', serif;
	font-weight: normal;
}


@media screen and (max-width: 834px) {
	aside .aside_title {
		font-size: 1.12rem;
	}
	aside .aside_title span {
		padding-left: 20px;
	}
	aside .aside_title span::before {
		width: 54px;
		height: 31px;
	}
}
@media screen and (max-width: 560px) {
	select#year-select {
		background: #fff url(../images/common/icon_selectGreen.webp) no-repeat;
		background-position: right 18px center;
		background-size: 25px, 100%;
		border-radius: 60px;
		padding: 15px 60px 15px 18px;
	}
	aside .toall {
		text-align: center;
	}
}
@media screen and (max-width: 430px) {
}
@media screen and (max-width: 320px) {
	aside .aside_title {
		font-size: 1.1rem;
	}
}


/* ***************************************
 * フッター
 * **************************************/

footer {
	background: #133D24;
}


/* 右下固定 
 * ***************************************/

footer .totop {
	width: 100%;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 9;
}
footer .totop:before {
	/*content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: url(../images/common/totop_bg.webp) no-repeat;
	background-size: 100%;
	background-position: bottom center;
	width: 100%;
	height: 173px;*/
}
footer .totop .bird {
	position: relative;
}
footer .totop .bird .bird_btn {
	width: 260px;
	position: absolute;
	right: 0;
	bottom: 9px;
}

/*園児募集中のみ*/
footer .totop .bird.bird_recruit .bird_btn {
	width: 350px;
	position: absolute;
	right: 0;
	bottom: 9px;
}

footer .totop .bird .bird_btn a.totop_pagetop {
	display: inline-block;
	width: 140px;
	height: auto;
	position: absolute;
	left: 50%;
	bottom: 28px;
	transform: translateX(-50%);
}

/*園児募集中のみ*/
footer .totop .bird .bird_btn a.totop_recruit {
	display: inline-block;
	width: 250px;
	height: auto;
	position: absolute;
	left: 50%;
	bottom: 42px;
	transform: translateX(-50%);
}


@media screen and (max-width: 560px) {
	footer .totop .bird .bird_btn {
		width: 190px;
	}
	footer .totop .bird.bird_recruit .bird_btn {
		width: 220px;
	}
	footer .totop .bird .bird_btn a.totop_pagetop {
		width: 120px;
		bottom: 20px;
	}
	footer .totop .bird .bird_btn a.totop_recruit {
		width: 160px;
		bottom: 25px;
	}
}
@media screen and (max-width: 430px) {
}
@media screen and (max-width: 320px) {
	footer .totop .bird .bird_btn {
		width: 150px;
	}
	footer .totop .bird.bird_recruit .bird_btn {
		width: 180px;
	}
	footer .totop .bird .bird_btn a.totop_pagetop {
		width: 105px;
		height: auto;
		bottom: 18px;
	}
	footer .totop .bird .bird_btn a.totop_recruit {
		width: 135px;
		height: 20px;
		bottom: 42px;
	}
}



/* フッターメイン 
 * ***************************************/

footer .footer_flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
footer .footer_flex .footer_flex___info {
	width: 250px;
}
footer .footer_flex .footer_flex___nav {
	width: calc(100% - 250px);
	margin-top: 30px;
	padding-left: 120px;
	display: flex;
}

footer .footer_info___logo {

}
footer .footer_info___add {
	margin-top: 18px;
	color: #FFF;
}
footer .footer_info___add p.add {
	margin: 0;
}
footer .footer_info___add p.phone {
	margin: 0;
}
footer .footer_info___add p.phone a {
	color: #FFF;
}
footer .footer_info___add p.mail {
	margin: 12px 0 0 0;
}
footer .footer_info___add p.mail a.footer_btn {
	color: #FFF;
    border-bottom: 1px solid #FFF;
	padding-left: 24px;
	padding-bottom: 6px;
	position: relative;
}
footer .footer_info___add p.mail a.footer_btn:before {
	content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(calc(-50% - 2px));
    background: url(../images/common/icon_arrowGreen.webp) no-repeat;
    background-position: center;
    background-size: 100%;
    width: 14px;
    height: 14px;
}

footer nav.foot_nav01 {
	width: calc(100% / 3);
}
footer nav.foot_nav02 {
	width: calc(100% / 3 - 30px);
}
footer nav.foot_nav03 {
	width: calc(100% / 3 - 30px);
}
footer ul.footer_nav {
	list-style: none;
	margin: -9px 0 0 0;
	padding: 0;
	text-align: left;
}
footer ul.footer_nav li {
	text-align: left;
	margin-top: 9px;
	font-size: .9rem;
}
footer ul.footer_nav li span {
	padding-left: 24px;
	position: relative;
}
footer ul.footer_nav li span:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	width: 7px;
	height: 7px;
	border-top: solid 1px #FFF;
	border-right: solid 1px #FFF;
}
footer ul.footer_nav li a {
	display: inline-block;
	color: #FFF;
}
footer ul.footer_navsub {
	list-style: none;
	margin: 0 0 0 2.6em;
	padding: 0;
}
footer ul.footer_navsub li {
	text-align: left;
	margin-top: 9px;
}
footer nav.foot_nav03 ul.footer_navsub li {
	font-size: .8rem;
	margin-top: 3px;
}
footer nav.foot_nav03 ul.footer_navsub li a {
	color: #A5A5A5;
}


footer .footer_must {
	text-align: right;
	margin-top: 60px;
	padding-top: 30px;
	padding-right: 30px;
	border-top: 1px solid #0E2D1B;
	position: relative;
}
footer .footer_must:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: -2px;
	background: #19512F;
	width: 100%;
	height: 1px;
}
footer .footer_must ul.footer_must_nav {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
}
footer .footer_must ul.footer_must_nav li {
	display: inline-block;
	margin-left: 18px;
	font-size: .8rem;
}
footer .footer_must ul.footer_must_nav li.kyokai {
	margin-right: auto;
}
footer .footer_must ul.footer_must_nav a {
	color: #FFF;
}


@media screen and (max-width: 1194px) {
	footer .footer_flex .footer_flex___nav {
		padding-left: 90px;
	}
	footer nav.foot_nav01,
	footer nav.foot_nav02,
	footer nav.foot_nav03 {
		width: calc(100% / 3);
	}
}
@media screen and (max-width: 834px) {
	footer .footer_flex {
		flex-direction: column;
		align-items: center;
	}
	footer .footer_flex .footer_flex___info {
		width: 100%;
	}
	footer .footer_flex .footer_flex___nav {
		width: 100%;
		padding-left: 0;
        margin-top: 60px;
	}
	
	footer ul.footer_nav li {
		    font-size: 1rem;
	}
	footer nav.foot_nav03 ul.footer_navsub li {
		font-size: .9rem;
	}
}
@media screen and (max-width: 560px) {
	footer .inner {
		padding: 0 30px;
	}
	footer .footer_info .footer_info___add p.mail {
		margin: 0;
	}
	footer nav.foot_nav03 {
		width: 100%;
	}
	footer ul.footer_nav {
		display: inline-block;
	}
	footer ul.footer_nav li {
		text-align: center;
	}
	footer ul.footer_navsub {
		margin: 0;
	}
	
	footer .footer_must {
		margin-top: 30px;
		padding-right: 0;
	}
	footer .footer_must ul.footer_must_nav {
		flex-direction: column;
	}
	footer .footer_must ul.footer_must_nav li.kyokai {
		margin: 0 auto 45px;
		font-size: 1rem;
	}
	footer .footer_must ul.footer_must_nav li {
		margin: 12px auto 0;
	}
}
@media screen and (max-width: 430px) {
	footer .footer_info_flex .footer_info_flex___open p.text_hour_memo {
		text-align: left;
		font-size: 1em;
	}
}
@media screen and (max-width: 320px) {
}



