@charset "utf-8";
/*
	Last Update:2023/01/27
	Auther: iw
*/
#page_title { position:relative; background:#eaf3df url(../image/layout/title.jpg) no-repeat center top / cover; }
#page_title .title_wrap { width:100%; }
#page_title .center > * { display:inline-block; vertical-align:middle; font-weight:bold; line-height:100%; }
#page_title .sub { margin-left:20px; }
	@media (max-width: 575px){
		#page_title { height:40vh; max-height:260px; background-position:left;}
		#page_title .img_back { height:35vw; }
		#page_title .main { font-size:2.25em; letter-spacing:3px; margin-bottom:20px; }
		#page_title .sub { font-size:1.5em; letter-spacing:3px; display: block; margin-left: 0;}
	}
	@media (min-width: 576px){
		#page_title { height:30vw; max-height:260px; }
		#page_title .title_wrap { padding-top:60px; }
		#page_title .main { font-size:2.5em; letter-spacing:3px; }
		#page_title .sub { font-size:1.5em; letter-spacing:3px; }
	}

#pankuzu { font-size:13px; color:#606060; padding-top:10px; }
#pankuzu a { text-decoration:none; color:#AE0442; }
#pankuzu li, 
#pankuzu li:before { display:inline-block; vertical-align:baseline; line-height:100%; }
#pankuzu ul > li:not(:first-child):before { content:""; background:url(../image/layout/pankuzu.png) no-repeat center center / contain; width:20px; height:1em; }
#pankuzu ul > li:first-child:before { content:""; background:url(../image/icon/home-b.png) no-repeat center center / contain; width:14px; height:1em; }
#pankuzu ul > li:first-child > a > span { display:inline-block; text-indent:-9998px; }
body.pc #pankuzu a:hover { text-decoration:underline; }
	@media (max-width: 575px){
		#pankuzu { padding-bottom:10px; }
	}

.list_pager ul li > * { border:1px solid #fff; width:40px; height:40px; display:inline-block; vertical-align:middle; line-height:18px; }
.list_pager ul li > a { text-decoration:none; background:#FFF; color:#006835; border:1px solid #006835; }
.list_pager ul li > strong { color:#fff; font-weight:bold; background:#006835; border:1px solid #006835;}
body.pc .list_pager ul li > a:hover { background:#6699D0; color:#fff; }

#culture .unit { margin-bottom:40px; }
#culture .unit .photo { margin:0 auto; width:252px; border-radius:50%; overflow:hidden; max-width:100%; }
#culture .unit .title { font-weight:bold; text-align:center; line-height:130%; display:flex; align-items:center; justify-content:center; }
#culture .unit .title > span { display:inline-block; }
	@media (max-width: 575px){
		#culture .unit .title { font-size:1.15em; margin:20px 0 10px; }
	}
	@media (min-width: 576px){
		#culture .unit .title { font-size:1.25em; margin:20px 0; }
	}

#outline { margin-top:-100px; }

.tbl_form { width:100%; }
	@media (max-width: 575px){
		.tbl_form,
		.tbl_form tbody,
		.tbl_form tr,
		.tbl_form tr > * { display:block; width:100%; }
	}
	@media (min-width: 576px){
	}


.entry a { color:#006835; text-decoration:underline; }
body.pc a:hover { text-decoration:none; }
.entry h2, .entry h4, .entry h5 { font-weight:bold; line-height:120%; }
.entry * + h2 { margin-top:50px; }
.entry * + h3 { margin-top:40px; }
.entry * + h4 { margin-top:30px; }
.entry * + h5 { margin-top:20px; }
.entry h2 + h3,
.entry h3 + h4,
.entry h4 + h5 { margin-top:0; }
.entry p + p { margin-top:10px; }

.entry * + ul, .entry * + ol { margin-top:15px; }
.entry ul, .entry ol { list-style:none; list-style-type:none; margin-bottom:20px; }
.entry ul > li, .entry ol > li { position:relative; margin:0 0 5px 20px; word-wrap:anywhere; }
.entry ul > li:before { color:#006835; content:"■"; font-size:12px; position:absolute; top:4px; left:-18px; }
.entry ul > li > ul, .entry ul > li > ol, .entry ol > li > ul, .entry ol > li > ol { margin-top:5px; }
.entry ul > li > ul > li:before { color:#006835; content:"●"; font-size:8px; top:8px; left:-16px; }
.entry ol { counter-reset:ol_li; }
.entry ol > li:before { color:#006835; counter-increment:ol_li; content:counter(ol_li)"."; position:absolute; top:1px; left:-20px; font-weight:bold; }
.entry ol > li > ol { margin-top:5px; margin-bottom:5px; }
.entry ol > li > ol > li:before { color:#006835; }

.entry * + table, .entry * + .sp_table_wrap { margin-top:15px; }
.entry table { width:100%; margin-bottom:20px; }
.entry table tr > * { padding:15px 0; vertical-align:middle; border-bottom:1px solid #ddd; }
.entry table td { padding-left:15px; padding-right:15px; }
.entry table thead th { background:#006835; color:#fff; border:1px solid #fff; font-weight:bold; text-align:left; padding-left:15px; }
.entry table tbody th { color:#006835; font-weight:bold; padding-left:15px; padding-right:15px; }
.entry table tbody tr > td:not(:last-child) { border-right:1px solid #D4D4D4; }



#philosophy .image { text-align:center; padding:50px; }
#philosophy .unit .title{font-size:2em; border-bottom:1px solid #006835; display:inline-block; }
#philosophy .unit p{line-height:2;}
	@media (max-width: 575px){
		#philosophy .unit .title { margin-bottom:20px; }
	}
	@media (min-width: 576px){
		#philosophy .unit .title { margin-bottom:40px; }
	}

#identity .text{font-size: 3em;}
@media (max-width: 767px){
	#identity .text{font-size:2em;}
} 

/*form*/
#contact{margin-bottom:100px;}
#contact .step_image{text-align:center; padding: 50px 0 60px 0;}
#contact .contact_tbl{width:100%;}
#contact .contact_tbl th , #contact .contact_tbl td{padding: 10px;}
#contact .contact_tbl th { width:360px; vertical-align: middle; font-weight: bold; padding-right: 20px;}
#contact .contact_tbl tr > th > div { position:relative; }
#contact .contact_tbl tr > th .need { position:absolute; right:0; top:0; padding: 6px 10px 6px; font-size: 14px;}
#contact input[type="text"]{background-color: #F5F5F5; border: none; height: 64px;}
#contact textarea{background-color: #F5F5F5; border: none; max-width:720px;}
@media (max-width: 767px){
	#contact .contact_tbl tr > *{display:block; padding:0;}
	#contact .contact_tbl th{width: 100%; padding: 15px 0;}

	#contact .contact_tbl td{border-bottom: 1px solid #EEEEEE; padding-bottom: 15px;}
	#contact .contact_tbl tr > th .need {position:static; margin-left: 15px;}
}
/*check*/
#contact .contact_tbl._check th{padding: 10px 0;}
#contact .contact_tbl._check td{padding-bottom: 20px;}
#contact .contact_tbl._check th{padding-right: 20px;}
#contact .contact_tbl._check{margin-bottom: 120px;}
@media (max-width: 767px){
	#contact .contact_tbl._check{margin-bottom:60px;}
}
/*finish*/
#contact .finish_text .title{font-size:2em; font-weight:bold;}
#contact .link-top{text-decoration: underline; color: #006835;}

#news_list{margin-bottom: 100px;}
#news_list .info_list{padding-top: 100px;}
#news_list .info_list .data , #news_list .info_list .tag{margin-bottom:10px;}
#news_list .info_list .tag{color: #FFF; border-radius:3px; margin-left: 40px; font-size:14px; padding: 4px 6px;}
#news_list .info_list .title{border-bottom: 1px solid #CCCCCC; padding-bottom: 30px; margin-bottom: 20px; position: relative;}
#news_list .info_list .title:after{content: ""; position: absolute; background:url(../image/icon/arrow2-rg.png) no-repeat right center / 24px auto; width: 24px; height: 24px; right: 20px;}


#news_list .info_list._detail .title{font-size: 1.5em; font-weight: bold; padding-bottom: 0; margin-bottom: 40px;}
#news_list .info_list._detail .title:after{display: none;} 
#news_list .info_list._detail .wrap .image{max-width:700px; margin: 0 auto;}
#news_list .info_list._detail .sub_image{padding-top:30px;}
#news_list .info_list._detail .sub_image img{padding-bottom:10px;}
#news_list .info_list._detail .text{padding-top: 30px;}
#news_list .info_list._detail .text p + p{margin-bottom: 20px;}
#news_list .info_list._detail .contact_btn{text-align:center; padding-top: 80px;}
#news_list .info_list._detail .text a{text-decoration:underline; color:#00913A;}
#news_list .info_list._detail .text table { max-width:100%; width: 100% !important;}

#message .unit_box,
#message2 .unit_box { padding:30px 15px; }
	@media (min-width: 850px){
		#message .unit_box > *,
		#message2 .unit_box > * { margin-left:auto; margin-right:auto; max-width:820px; }
	}

#message2 .power_list { padding-left:25px; }
#message2 .power_list dl { margin-bottom:25px; }
#message2 .power_list dt { position:relative; font-weight:bold; margin-bottom:5px; font-size:1.25em; }
#message2 .power_list dt:before { content: ""; position:absolute; display:block; width:16px; height:16px; background-color:#006835; border-radius:100%; left:-25px; }
	@media (max-width: 575px){
		#message2 .power_list dt:before { top:8px; }
		#message2 .unit_box.philosophy { margin-bottom:20px; }
	}
	@media (min-width: 576px){
		#message2 .power_list dt:before { top:10px; }
	}

#message_comment .unit { border:1px solid #006835; border-radius:10px; padding:15px 10px 30px; background-color:#FFF; margin-bottom:30px; }
#message_comment .unit .name { font-size:1.25em; padding:0 0 10px; border-bottom:1px solid #006835; text-align:center; }
#message_comment .unit .text { font-size:0.9em; }
	@media (min-width: 768px) and (max-width: 991px){
		#message_comment .unit .name { font-size:1.05em; }
	}
	@media (max-width: 991px){
		#message_comment .unit .name { margin-bottom:15px; }
		#message_comment .unit .text br { display:none; }
	}
	@media (min-width: 992px){
		#message_comment .unit .name { margin-bottom:20px; }
		#message_comment .unit .text { text-align:center; }
	}

#message_comment .transparent { position:relative; }
#message_comment .transparent .hide { display:none }
#message_comment .transparent .button > span { position:relative; }
#message_comment:not(.on-click) .transparent:before { content:""; background:linear-gradient(rgba(251,255,229,0),rgba(251,255,229,1)); display:block; width:100%; height:230px; position:absolute; top:-230px; }
#message_comment.on-click .transparent .button.type_1 > span { background:url(../image/icon/arrow1-tw.png) no-repeat right center / 14px auto; }
#message_comment.on-click .transparent .button.type_1 > span { color:rgba(255,255,255,0); }
#message_comment.on-click .transparent .button.type_1 > span:before { content:"閉じる"; color:#fff; position:absolute; top:0; left:0; width:100%; }

#privacy .box{padding: 50px;  background: #fff; border: 1px solid #E0E0E0;}
@media (max-width: 575px){
	#privacy .box{padding: 25px;}
}

