@charset "utf8";
/*=============================
	- font-style
	- 汎用 color & background
	- 汎用 wrap & title
	- content.css 各パーツCSS
==============================*/

/*----------------------------------------------------
	font-style
----------------------------------------------------*/
/*  全体 font  */
html {
	font-family:Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, 游ゴシック, "Yu Gothic", 游ゴシック体, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*  web font  or  ダウンロードfont  */
@font-face {
  font-family: "myFont";
  src: url("../fonts/Utsukushi.eot?") format('eot'),
  			url("../fonts/Utsukushi.otf") format('otf'),
       	url("../fonts/Utsukushi.woff") format('woff');
}
.my-font {
	font-family:"Roboto Slab" , Garamond , "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
/*----------------------------------------------------
	汎用 color & background
----------------------------------------------------*/
/* color */
.white {
	color:#fff;
}
.orange {
	color:#f4a024;
}
/* background */
.pink-back {
	background:#f9e5ee;
}
.gray-back {
	background:#eee;
}


.base-color01{/*--メイン文字カラー--*/
	color:#fff;
}
.base-back01{/*--メイン背景カラー--*/
	background:#fff;
}
.main-color01{/*--ポイント文字カラー--*/
	color:#106133;
}
.main-back01{/*--ポイント背景カラー--*/
	background:#106133;
}
.main-border01{/*--ポイントボーダーカラー--*/
	border-color:#106133 !important;
}
.point-color01 {/*--アクセント文字カラー--*/
	color:#ffab20;
}
.point-back01 {/*--アクセント背景カラー--*/
	background: #ffab20;
}
/*  汎用リンクカラー  */
.link-color {
	color:#3a99e0;
}

/*----------------------------------------------------
	汎用 buttton
----------------------------------------------------*/
.btn01 {
	border-radius:50px;
	padding:5px;
}
/*----------------------------------------------------
	汎用 wrap & title
----------------------------------------------------*/
/*  width 管理  */
.mywidth{
	width:1080px;
	margin-left:auto;
	margin-right:auto;
}
@media screen and (max-width:650px){
	.mywidth{
		width:100%;
		padding:0 10px;
	}
}

/*  メインコンテンツwrap   */
#home #main-wrapp{
	overflow:hidden;
	padding:40px 0 0px;
}
#main-wrapp{
	overflow:hidden;
	padding:100px 0 200px;
}
@media screen and (max-width:650px){
	#home #main-wrapp{
		padding:20px 0 0px;
	}
	#main-wrapp{
		padding:40px 0 60px;
	}

}

/*  ▼▼▼▼  サイドバー有りcontent  ▼▼▼▼   */
#main{
	width:760px;
	float:left;
}
@media screen and (max-width:650px){
	#main{
		width:100%;
		float:auto;
	}
}
#side{
	width:280px;
	float:right;
}
#side .side-content{
	margin-bottom:30px;
}
#side .side-content .btn01 {
	min-height:50px;
	font-size:20px;
}
#side .side-content .btn01 i {
	font-size:24px;
	padding-right:10px;
	position:relative;
	top:-2px;
}
.widget h4.widgettitle {
    color: #fff;
    font-size: 14px;
    padding: 15px 15px;
    border-bottom: 1px solid #e8e8e8;
}
.widget ul li a {
    border-bottom: 1px solid #e8e8e8;
    font-size: 14px;
    display: block;
    text-decoration: none;
    padding: 15px;
    background-color: #FFF;
    color: #555;
    position: relative;
		transition:0.2s;
}
.widget ul li a:hover {
	/* background-color:#106133; */
	opacity:0.7;
	/* color:#fff; */
}
.widget ul li a:after {
    content: "\f105";
    font-family: "FontAwesome";
    position: absolute;
    right: 10px;
}
@media screen and (max-width:650px){
	#side{
		display:none;
		width:100%;
		float:auto;
		margin-top: 60px;
	}

}
/*  ▲▲▲▲  サイドバー有りcontent  ▲▲▲▲   */

/* wrap */
#home .content-box {
	padding:80px 0px 80px;
}
.content-box {
	padding:0px 0px 80px;
}
@media screen and (max-width:650px){
	.content-box {
		padding:30px 0px;
	}
}

/* title */
.content-title01 {
	font-size:30px;
	font-weight:bold;
	position:relative;
	text-align:center;
	padding-bottom:20px;
	margin-bottom:60px;
}
.content-title01 i {
	padding-right:10px;
}
.content-title01:before {
	content:"";
	border-bottom:2px solid;
	width:50px;
	display:inline-block;
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
}

/*  content-title02  */
.content-title02 {
	font-size:24px;
	font-weight:bold;
	padding-left:10px;
	margin-bottom:20px;
	border-left:5px solid;
	line-height:1em;
}
@media screen and (max-width:650px){
	.content-title01 {
		font-size:20px;
		margin-bottom:30px;
		padding-bottom:10px;
	}
	.content-title01:before {
		width:40px;
	}

	.content-title02 {
		font-size:20px;
		margin-bottom:20px;
	}
}

/* content-dl */
.content-dl dt {
	font-size:18px;
	margin-bottom:10px;
	font-weight:bold;
}
.content-dl dd {
	font-size:14px;
}
@media screen and (max-width:650px){
	.content-dl dt {
		font-size:16px;
		margin-bottom:5px;
	}
	.content-dl dd {
		font-size:12px;
	}
}

/* content-ul */
.content-ul li {
	font-size:14px;
	padding:2px 0px;
	margin-left:1em;
	text-indent:-1em;
}
@media screen and (max-width:650px){
}

/* table */
.content-table {
	border:1px solid #c8c8c8;
}
.content-table th,.content-table td {
	border:1px solid #c8c8c8;
	vertical-align:middle;
	font-size:16px;
	padding:30px 20px;
	line-height:1.8em;
}
.content-table th {
	color:#fff;
}
.content-table td {
	background:#fff;
}
@media screen and (max-width:650px){
	.content-table.sp-block {
		display:block;
		border-top:1px solid #c8c8c8;
		border-left:1px solid #c8c8c8;
		border-right:1px solid #c8c8c8;
		border-bottom:none;
	}
	.content-table.sp-block tbody,.content-table.sp-block tr {
		display:block;
	}
	.content-table.sp-block th,.content-table.sp-block td {
		display:block;
		width:100%;
		border-top:none;
		border-left:none;
		border-right:none;
		border-bottom:1px solid #c8c8c8;
		padding:10px 15px;
		font-size:14px;
	}
	.content-table.sp-block th {
		text-align:center;
	}
}

/*----------------------------------------------------
	content.css  各パーツCSS
----------------------------------------------------*/
/*  丸型ボタン  */
.maru-btn {
	border-radius:50px;
	padding:3px 20px;
	margin-right:15px;
}
.maru-btn i {
	padding-right:10px;
}

/*  丸型ボタン  */
.link-btn01 {
	display:flex;
	justify-content:center;
	align-items:center;
	max-width:215px;
	margin:60px auto 0;
	font-size:14px;
	font-weight:bold;
	height:40px;
	position:relative;
}
.link-btn01:after {
	content:"\f105";
	font-family:"FontAwesome";
	position:absolute;
	right:10px;
	top:0;
	height:100%;
	display:flex;
	align-items:center;
	font-size:16px;
}
@media screen and (max-width:650px){
	.link-btn01 {
		margin:30px auto 0;
	}
}

/*  scroll  */
.top-scroll {
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
}
.top-scroll a {
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	font-size:30px;
}
@media screen and (max-width:650px){
	.top-scroll a {
		font-size:18px;
	}
}

/*  content01  */
.content01 {
	padding:150px 100px;
	background:url(../images/top01.jpg) no-repeat center / cover;
	background-attachment: fixed;
	position:relative;
}
@media all and (-ms-high-contrast: none){
  .content01 {
		background:url(../images/top01.jpg) no-repeat center / cover;
		background-attachment: scroll;
	}
}
.content01:after {
/* 	content:"";
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	display:block;
	background:url(../images/dots.png) repeat;
	z-index:1; */
}
.content01 .text {
	font-size:26px;
	text-align:center;
	font-weight:bold;
	line-height:2.4em;
	position:relative;
	z-index:3;
	background:rgba(0,0,0,0.3);
	padding:60px 0;
}
.content01 .text i {
	font-size:60px;
}
@media screen and (max-width:650px){
	.content01 {
		padding:50px 10px;
		background:url(../images/top01.jpg) no-repeat center / cover;
		background-attachment: scroll;
	}
	.content01 .mywidth {
		padding:0;
	}
	.content01 .text {
    font-size: 18px;
    line-height: 2.4em;
    padding: 30px 15px;
	}
}


/*  content02  */
.content02 .box {
	position:relative;
}
.content02 .img-wrap {
	overflow:hidden;
	max-width:630px;
}
.content02 .img-wrap img {
	box-shadow: 0 0 15px rgba(0,0,0,.3);
	transition:all 1s;
}
.content02 .box:hover img {
	transform:scale(1.1);
	transition:all 1s;
}
.content02 .box.flex-left .text-wrap {
	max-width:640px;
	background:rgba(16,97,51,0.8);
	padding:60px 60px 30px;
	position:absolute;
	right:0px;
	top:100px;
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}
.content02 .box.flex-right .text-wrap {
	max-width:640px;
	background:rgba(16,97,51,0.8);
	padding:60px 60px 30px;
	position:absolute;
	left:0px;
	top:100px;
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}
.content02 .text-wrap .text {
	font-size:20px;
	line-height:2.4em;
}
.content02 .text-wrap a {
	font-size:18px;
}
.content02 .text-wrap a i {
	font-size:22px;
	padding-left:10px;
}
@media screen and (max-width:650px){
	.content02 .box.flex-left .text-wrap,.content02 .box.flex-right .text-wrap {
    max-width: 100%;
    padding: 30px 15px;
    position: relative;
    top: 0px;
	}
	.content02 .text-wrap .text {
    font-size: 16px;
    line-height: 2em;
	}
	.content02 .text-wrap a {
    font-size: 16px;
	}
}


/*  content03  */
.wood-bg {
	background:url(../images/wood-bg.png) no-repeat center bottom / 100%;
}
.content03 {
}
.content03 .recruit-wrap {
	background:rgba(255,255,255,0.7);
	width:100%;
	padding:50px 50px 100px;
	margin-top:15vh;
}
.content03 .content-table {
	margin-top:30px;
}
.content03 .tel-wrap {
	margin-top:30px;
}
.content03 .tel {
	font-size:30px;
}
.content03 .contact {
	font-size:24px;
	padding:5px 0px;
	margin-top:10px;
	width:260px;
	display:flex;
	align-items:center;
	justify-content:center;
}
@media screen and (max-width:650px){
	.wood-bg {
		padding-top:0px;
		margin-top:0px;
	}
	.content03 .recruit-wrap {
    width: 100%;
    padding: 0px 10px 30px;
	}
	.content03 .tel {
    font-size: 26px;
	}
	.content03 .contact {
    font-size: 20px;
	}
}




/*  content04 */
.content04 iframe {
	width:100%;
	height:400px;
}
@media screen and (max-width:650px){
	.content04 iframe {
		height:300px;
	}
}


/*  content05  */
.content05 .box {
	position:relative;
}
.content05 .box .img-wrap {

}
.content05 .box .img-wrap img {
	width:100%;
	max-height:300px;
	object-fit:cover;
}
.content05 .box .text-wrap {
	max-width:100%;
	background:rgba(16,97,51,0.8);
	padding:30px;
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}
.content05 .text-wrap .text {
	font-size:16px;
	line-height:2.4em;
}
.content05 .text-wrap a {
	font-size:18px;
}
.content05 .text-wrap a i {
	font-size:22px;
	padding-left:10px;
}
@media screen and (max-width:650px){
	.content05 .box .img-wrap img {
		width:100%;
		max-height:200px;
		object-fit:cover;
	}
	.content05 .box .text-wrap {
    max-width: 100%;
    padding: 20px 15px;
    position: relative;
    top: 0px;
	}
	.content05 .text-wrap .text {
    font-size: 14px;
    line-height: 2em;
	}
}



/*  content06  */
.content06 .box {
	margin-bottom:40px;
}
.content06 .box .img-wrap {
	max-width:220px;
}
.content06 .box .img-wrap img {
	height:164px;
	width:100%;
	object-fit:cover;
}
.content06 .box .text-wrap {
	width:540px;
	background:rgba(16,97,51,0.8);
	padding:30px;
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}
.content06 .text-wrap .text {
	font-size:16px;
	line-height:2.4em;
}
@media screen and (max-width:650px){
	.content06 .box {
		flex-direction:column;
	}
	.content06 .box .img-wrap {
		max-width:100%;
	}
	.content06 .box .img-wrap img {
		height:200px;
		width:100%;
		object-fit:cover;
	}
	.content06 .box .text-wrap {
		width:100%;
		padding:30px 15px;
	}
}


/*  content07  */
.content07 .box .btn01{
	width:300px;
	min-height:50px;
	font-size:20px;
}
.content07 .box .btn01 i {
	font-size:24px;
	padding-right:10px;
	position:relative;
	top:-2px;
}
