@charset "utf-8";
/*  style　[  共通 ]
=================================================================== */

	
body{
  background: #fff;
}

.container-lg {
	max-width: 1200px;
}
.wrap-lg {
	position: relative;
}

.flex-box{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.wrapper {
	overflow: hidden;
}
@media (min-width: 768px) { 
	.visible-xs {
		display: none;
	}
 }

/*----------------------------------------------
   header
---------------------------------------------*/

.header {
	position: relative;
	background-color: #efefef;
}
.header-box {
	justify-content: space-between;
	padding: 10px 0;
}

@media (min-width: 768px) { 
	h1 img {
		width: 150px;
		margin: 10px 0;
	}
	.header-right {
		width: calc(100% - 160px);		
		text-align: right;
		padding-top:10px;
	}
 }

@media (min-width: 992px) {
h1 img {
	width: 200px;
	margin: 10px 0 ;
}
.header-right {
	width: calc(100% - 250px);
	text-align: right;
	padding-top:10px;
}
}


.right-top {
	justify-content: flex-end;
	margin-bottom: 10px;
}
.right-top .header-catch {
	font-size: 1em;
	font-weight: 500;
	margin-right: 10px;
}
.contact a {
	background-color: #5ab0c0;
	border-radius: 50px;
	padding: 5px 15px;
	color: #fff;
	margin-right: 10px;
}

nav ul.nav-list {
	list-style: none;
	margin: 5px 0;
	background-color: #5ab0c0;
	border-radius: 50px;
	display: inline-flex;
	padding: 10px 35px;
}
nav ul.nav-list li {
	/*display: inline-block;*/
	text-align: center;
}
.nav-icon {
	height: 35px;
}
nav ul.nav-list li span {
	display: block;
	margin-top: 5px;
	font-size: 0.8em;
	
}
nav ul.nav-list li a {
	display: block;
	color: #fff;
	border-right: #fff 1px solid;
	padding: 0 15px;
}
nav ul.nav-list li:last-child a {
	border-right: none;
}
nav ul.nav-list li a:hover {
	text-decoration: none;
	color: #333;
}


 /*----------------------------------------------
   見出し
---------------------------------------------*/

h2.underline {
	font-size: 3em;
	position: relative;
	padding: 15px;
	text-align: center;
	margin: 0 auto 150px auto;
  }
  
  h2.underline span {
	font-size: 0.5em;
	display: block;
	margin-top: 10px;
  }
  

  h1.post-h1 {
	background: url(../images/bg-title.jpg) center center no-repeat;
	background-size: cover;
	padding: 85px 0;
	text-align: center;
	font-size: 1.8em;
  }

 


  h2.page-h2 {
	position: relative;
	padding-top: 50px;
	padding-bottom: 15px;
	font-size: 26px;
	text-align: center;
	margin:100px auto 50px auto;
}

h2.page-h2 span {
	position: relative;
	z-index: 2;
}

h2.page-h2::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
	color: rgba(224,66,114,0.2);
	font-size: 80px;
	font-style: italic;
	font-family: "Allura", sans-serif;
}

h2.page-h2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: calc(50% - 29px);
	/*transform: translate(-50%) rotate(30deg);*/
	width: 60px;
	height: 1px;
	background-color: rgba(224,66,114,1);
}


.page-wrapper h3 {
	border-bottom: #eee 1px dashed;
	font-size: 1.4em;
	padding: 5px;
	margin: 1.5em 0 1em 0;
}


/*----------------------------------------------
   カテゴリリスト
---------------------------------------------*/
.post-categories {
	list-style: none;
}

.post-categories li a {
	border-bottom: #666 1px dashed;
}
.post-categories li a:hover {
	border-bottom: #c33 1px dashed;
	text-decoration: none;
}



/*----------------------------------------------
   flex-box (image left)
---------------------------------------------*/

.list-box {
	margin: 0 auto 150px auto;
	justify-content: space-around;
	flex-wrap: wrap;
}


.list-box .images_item {
  width: 40%;
}
.list-box .images_item img {
	max-width: 100%;
	height: auto;
  }
.list-box .text_item {
	width: 45%;
	position: relative;
  }

  .list-box .text_item h3 {
	border-bottom: #000 1px solid;
	margin-bottom: 1em;
	padding-bottom: 5px;
}
.list-box .text_item h4 {
	font-size: 1em;
	margin: 1em 0;
}

.company-link {
	list-style-type: none;
}
.company-link li {
	display: inline-block;
}
.company-link li a {
	display: block;
	background: #7dc05a;
	color: #fff;
	padding: 5px 10px;
	margin: 0 10px;
	border-radius: 5px;
}
.company-link li a:hover {
	background: #9d5ac0;
	transition: 0.5s;
}



/*ワンポイント*/
.onepoint-box {
	padding:2em;/*内側余白*/
	position: relative;
	border: 8px solid #eee;/* 線の太さ・種類・色 */
	z-index: 0;
    display: table;
    margin: 10px auto;
}
.onepoint-box:before {
	background-color:#cca497;/* ワインポイントの色 */
	content: '';
	display: block;
	position: absolute;
	top: -8px;
	left: -8px;
	width: 8px;
	height: 8px;
	z-index: 1;
}
.btn_contact {
    display: table;
    margin: 15px auto 0 auto;
    background: #9d5ac0;
	border-radius: 50px;
    padding: 5px 15px;
	color: #fff!important;
}
.btn_contact:hover {
    background: #7dc05a;
    transition: 0.5s;
}

/*----------------------------------------------
   お問い合わせ
---------------------------------------------*/
.toiawase-box {
	display: table;
	margin: 0 auto;
}
.box01 {
	border-top: solid 5px #5ab0c0;
    box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
	padding: 1em;
}
.toiawase-box .ulNone {
	display: table;
	margin: 0 auto;
}
.numbers {
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 700;
	font-size: 2em;
	margin: 20px 0;
}
.link-phone {
	display: table;
	padding: 5px 30px;
	background-color: #5ab0c0;
	border-radius: 50px;
	color: #fff!important;
	font-weight: 500;
	font-size: 1.7em;
	margin: 20px 0;
}
.form-box  {
	display: table;
	margin: 0 auto;
}

.form-box p {
	margin: 10px 0;
}
.form-tex {
	display: inline-block;
	margin: 10px 0 5px 0;
}


.nes {
	background-color: #c33;
	color: #fff;
	padding: 0 5px 2px 5px;
	line-height: 0;
	margin-left: 5px;
	font-size: 0.9em;
	border-radius: 5px;
}

.form-box input,.form-box select,.form-box textarea {
	margin: 5px 0;
   background:#eff1f5;
   border: none;
   padding:0.7em;

}
/* 送信ボタンのデザイン */
.form-box .wpcf7-submit{
	display: block;
	margin:10px auto;
	padding:1em 0;
	width:80%;
	background:#09b555;
	color:#fff;
	font-size:18px;
	font-weight:bold;	 
	border-radius:4px;
	border: none;
 }
 
 /* 送信ボタンマウスホバー時 */
 .form-box .wpcf7-submit:hover{
	opacity: 0.9;
	transition: 0.3s;
 }

/*----------------------------------------------
  採用情報
  アコーディオン
---------------------------------------------*/
.accordion_one {
	width: 100%;
	margin: 1em auto;
}
.accordion_one .accordion_header {
	border: #7dc05a 1px solid;
	background-color: rgba(125, 192, 90, 0.3);
	color: #000;
	font-size: 20px;
	font-weight: bold;
	padding: 20px 11%;
	text-align: center;
	position: relative;
	z-index: +1;
	cursor: pointer;
	transition-duration: 0.2s;
}

.accordion_one .accordion_header:hover {
	opacity: .8;
}
.accordion_one .accordion_header .i_box {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 50%;
	right: 5%;
	width: 40px;
	height: 40px;
	border: 1px solid #7dc05a;
	margin-top: -20px;
	box-sizing: border-box;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center center;
	transition-duration: 0.2s;
}
.accordion_one .accordion_header .i_box .one_i {
	display: block;
	width: 18px;
	height: 18px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center center;
	transition-duration: 0.2s;
	position: relative;
}
.accordion_one .accordion_header.open .i_box {
	-webkit-transform: rotate(-360deg);
	transform: rotate(-360deg);
}
.accordion_one .accordion_header .i_box .one_i:before, .accordion_one .accordion_header .i_box .one_i:after {
	display: flex;
	content: '';
	background-color: #7dc05a;
	border-radius: 10px;
	width: 18px;
	height: 4px;
	position: absolute;
	top: 7px;
	left: 0;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	transform-origin: center center;
}
.accordion_one .accordion_header .i_box .one_i:before {
	width: 4px;
	height: 18px;
	top: 0;
	left: 7px;
}
.accordion_one .accordion_header.open .i_box .one_i:before {
	content: none;
}
.accordion_one .accordion_header.open .i_box .one_i:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.accordion_one .accordion_inner {
	display: none;
	padding: 30px 30px;
	border-left: 1px solid #7dc05a;
	border-right: 1px solid #7dc05a;
	border-bottom: 1px solid #7dc05a;
	box-sizing: border-box;
}

.accordion_one .accordion_inner .box_one {
	min-height: 300px;
}
.accordion_one .accordion_inner .txt_a_ac {
	margin: 0;
}
.entry_btn {
	width: 180px;
	margin: 50px auto;
	display: table;
	background-color: #9d5ac0;
	padding: 15px 15px 15px 20px;
	text-decoration: none;
	line-height: 1.3;
	color: #fff!important;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
.entry_btn:hover {
	background-color: rgba(157, 90, 192, 0.8);
	transition-duration: 0.2s;
}

.accordion_one .accordion_inner .closeArea {
	width: 180px;
	margin: 0 auto;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #7dc05a;
	padding: 15px 15px 15px 20px;
	text-decoration: none;
	line-height: 1.3;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	cursor: pointer;
	transition-duration: 0.2s;
}

.accordion_one .accordion_inner .closeArea .close_box a.close_btn:hover {
	opacity: .8;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 10%;
	width: 30px;
	height: 30px;
	margin-top: -15px;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 18px;
	height: 18px;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i:before, .accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i:after {
	content: '';
	background-color: #fff;
	border-radius: 10px;
	width: 18px;
	height: 4px;
	position: absolute;
	top: 7px;
	left: 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(45deg);
	transform-origin: center center;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i:before {
	width: 4px;
	height: 18px;
	top: 0;
	left: 7px;
}
@media screen and (max-width: 1024px) {
	.accordion_one .accordion_header {
		font-size: 18px;
	}
	.accordion_one .accordion_header .i_box {
		width: 30px;
		height: 30px;
		margin-top: -15px;
	}
	.accordion_one .accordion_inner .closeArea .close_box a.close_btn {
		font-size: 14px;
	}
}
@media screen and (max-width: 767px) {
	.accordion_one .accordion_header {
		font-size: 16px;
		text-align: left;
		padding: 15px 60px 15px 15px;
	}
}


/*----------------------------------------------
   投稿記事ページ（２カラム）
---------------------------------------------*/
.singlepage {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.article-l {
	width: 60%;
}
.article-r {
	width: 30%;
}

.post-h2 {
	background-color:rgba(90, 176, 192, 0.3);
	border-bottom: #5ab0c0 1px dashed;
	padding: 5px;
	margin-bottom: 15px;
}
.article-box {
	width: 96%;
	margin: 0 auto;
}
.post-thumb {
	margin-bottom: 15px;
}

/*----------------------------------------------
   category archive
---------------------------------------------*/

.category-list {
	display: block;
	border: #ccc 1px solid;
	border-radius: 10px;
	margin-bottom: 15px;
	padding: 15px;
}
.category-list:hover {
	background-color: #eee;
	transition: 0.3s;
}
.category-thumb {
	width: 150px;
	height: auto;
}
.category-title {
	width: calc(100% - 150px);
	margin-left: 15px;
}
.category-title h2 {
	margin-bottom: 10px;
	font-size: 1.5em;
}

/*----------------------------------------------
   sidebar
---------------------------------------------*/
.side-h2 {
	font-size: 1.2em;
	border-bottom: #5ab0c0 1px dashed;
	border-left: #5ab0c0 5px solid;
	padding: 5px 0 5px 10px;
}
.side-list {
	list-style: none;
	margin: 15px 15px 30px 15px;
}
.side-list li {
	margin-bottom: 10px;
	border-bottom: #ccc 1px dashed;
	padding: 5px;
}

/*----------------------------------------------
   footer
---------------------------------------------*/

footer {
	background: url(../images/bg-footer.png) repeat-x center top;
	padding: 179px 0 0 0;
	margin: 100px 0 0 0;
	color: #000;
	position: relative;
}
.footer-box {
	margin: 0 auto;
	background: #efefef;
	padding: 80px 0 70px 0;
}
.footer-flex {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.footer-flex figure {
	width: 45%;
	margin: 0 5% 0 0;
}
.footer-flex figure img {
	width: 40%;
	text-align: right;
	display: block;
	float: right;
}
.footer-item {
	width: 45%;
	margin: 0 0 0 5%;
}
.footer-box h2 {
	font-size: 1.5em;
	margin-bottom: 15px;
}




.copy {
	background:#7dc05a;
	color: #fff;
	margin: 0 0 0 0;
	padding: 10px 0;
	line-height: 1;
	font-size: 0.8em;
	text-align: center;
}






// X-Small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) { ... }

// X-Large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }

// XX-Large devices (larger desktops, 1400px and up)
@media (min-width: 1400px) { ... }