/*
Theme Name: garden_cms
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: garden_cms
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

garden_cms is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url('https://fonts.googleapis.com/css?family=PT+Sans+Caption');
@font-face {
	font-family: 'ArcaMajora';
	src: url('layouts/font/ArcaMajora/arcamajora2-heavy-webfont.eot');
	src: url('layouts/font/ArcaMajora/arcamajora2-heavy-webfont.eot?iefix') format('eot'), url('layouts/font/ArcaMajora/arcamajora2-heavy-webfont.woff') format('woff'), url('layouts/font/ArcaMajora/arcamajora2-heavy-webfont.ttf') format('truetype'), url('layouts/font/ArcaMajora/arcamajora2-heavy-webfont.svg#webfontjSpbZQRv') format('svg');
}
@font-face {
	font-family: 'Arca Majora 3';
	src: url('layouts/font/ArcaMajora/ArcaMajora3-Bold.woff') format('woff');
}
/*--------------------------------------------------------------*/

.wrap:after {
	display: table;
	clear: both;
	content: "";
}
img {
	max-width: 100%;
}
html {
	width: 100%;
}
/*body{
	min-width: 1200px;
}*/
body * {
	font-family: 'Noto Sans Japanese', sans-serif;
}
.bg_gray {
	background-color: #f3f3f3;
}
.img_right {
	text-align: right;
}
.border_none {
	border: none !important;
}
.page_contents .container {
	max-width: 1000px;
}
/*--------------------------------------------------------------
# ヘッダー
--------------------------------------------------------------*/
.header {
	padding: 0px 0px;
	position: relative;
}
.menu-trigger {
	position: absolute;
	right: 40px;
	top: 50px;
	cursor: pointer;
	z-index: 9999;
}
.menu-trigger, .menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	width: 30px;
	height: 24px;
}
/*20200626修正*/
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #FFF;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
	/* -webkit-transform: translateY(11px) rotate(-315deg);
	transform: translateY(11px) rotate(-315deg); */
}
.menu-trigger.active span:nth-of-type(2) {
	/* opacity: 0; */
}
.menu-trigger.active span:nth-of-type(3) {
	/* -webkit-transform: translateY(-11px) rotate(315deg);
	transform: translateY(-11px) rotate(315deg); */
}
.top_logo {
	position: absolute;
	top: 30px;
	left: 30px;
	z-index: 1000;
}
#headbar .top_logo_s {
	float: left;
	padding-top: 6px;
	padding-left: 30px;
}
#headbar .top_logo_s a {
	padding-bottom: 0;
	border-bottom: none;
}
#headbar .top_logo_s a:hover {
	border-bottom: none;
}
.top_menu {
	position: absolute;
	top: 32px;
	right: 20px;
	z-index: 9;
}
.top_menu ul {
	float: right;
	/*width: 800px;*/
	width: 740px;
	display: table;
	padding-right: 70px;
	padding-top: 20px;
	padding-bottom: 5px;
	margin: 0;
}
.top_menu ul li {
	display: table-cell;
	text-align: center;
	padding-right: 10px;
	padding-left: 10px;
}

@media(max-width:1090px) {
.top_menu ul {
	float: right;
	/*width: 800px;*/
	width: 880px;
}
.top_menu ul li {
	padding-right: 5px;
	padding-left: 5px;
}
}
/*修正20200626*/
.top_menu ul li a {
	color: #FFF;
	display: block;
	border-bottom: 2px solid transparent;
	-webkit-transition: all .3s;
	transition: all .3s;
	padding-bottom: 15px;
}
.top_menu ul li a:hover {
	text-decoration: none;
	border-bottom: 2px #FFF solid;
}
.header h1 {
	font-size: 46px;
	color: #fff;
	letter-spacing: 10px;
	font-family: "Sawarabi Mincho";
	font-weight: 100;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	margin: 0;
	text-align: center;
}
#headbar {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 9999;
	display: none;
	background-color: #fff;
}
#headbar ul {
	list-style: none;
	display: table;
	/*width: 760px;*/
	width: 680px;
	float: right;
	padding-top: 20px;
	padding-bottom: 5px;
	margin: 0;
}

#headbar ul li {
	display: table-cell;
	text-align: center;
	padding-right: 10px;
	padding-left: 10px;
}


@media all and (-ms-high-contrast: none) {
	#headbar ul {
		list-style: none;
		display: table;
		/*width: 760px;*/
		width: 900px;
		float: right;
		padding-top: 20px;
		padding-bottom: 5px;
		margin: 0;
	}
	#headbar ul li {
		display: table-cell;
		text-align: center;
		padding-right: 20px;
		padding-left: 10px;
	}

	#headbar ul li:last-of-type {

		padding-right: 45px;

	}
  }


#headbar a {
	color: #000;
	display: block;
	border-bottom: 2px solid transparent;
	-webkit-transition: all .3s;
	transition: all .3s;
	padding-bottom: 15px;
}
#headbar a:hover {
	text-decoration: none;
	border-bottom: 2px #000 solid;
	color: #000;
}
/*--------------------------------------------------------------
# フッター
--------------------------------------------------------------*/
footer {
	background-image: url(image/base/footer_bg.jpg);
	background-size: cover;
	background-position: center center;
	padding-top: 70px;
	padding-bottom: 60px;
}
footer * {
	color: #fff;
}
footer h2 {
	margin-top: 0;
	font-size: 15px;
	font-weight: 400;
}
footer ul {
	padding-left: 1em;
	margin-left: 0;
	list-style: none;
	line-height: 2;
}
footer ul li a {
	font-size: 13px;
}
footer a:hover {
	color: #eee;
}
.footer_inner {
	float: left;
	width: 20%;
}
.copyright {
	text-align: center;
	margin-top: 80px;
}
ul.footer_brand li {
	line-height: 1.6;
	letter-spacing: -0.5px;
}
/*--------------------------------------------------------------
# TOP
--------------------------------------------------------------*/
/*.header.top{
	position: relative;
	padding: 0;
	overflow:hidden;
}*/
.header.top {
	/*background-image:url(image/top/top_title.jpg);*/
    /*background-image: -moz-linear-gradient(0deg, #956b6a 0%, #987a7a 50%, #956b6a 100%);
    background-image: -webkit-linear-gradient(0deg, #956b6a 0%, #987a7a 50%, #956b6a 100%);
    background-image: -ms-linear-gradient(0deg, #956b6a 0%, #987a7a 50%, #956b6a 100%);
    background-image: linear-gradient(0deg, #956b6a 0%, #987a7a 50%, #956b6a 100%);*/
	background-color: #FFF;
	background-size: cover;
	background-position: center bottom;
	position: relative;
	opacity: 0;
	background-repeat: no-repeat;
	max-height: 830px;/*-webkit-transition: 2.0s ease-in-out;
    transition: 2.0s ease-in-out;*/
    margin-bottom: 0 !important;
}
.header.top.active {
	background-size: cover;
	opacity: 1;
}
/*修正20200626*/
.header.top .top_logo_area {
	/*-webkit-transition: 3.0s ease-in-out;
    transition: 3.0s ease-in-out;*/
	top: 25%;
	font-size: 46px;
	color: #fff;
	letter-spacing: 10px;
	font-family: "Sawarabi Mincho";
	font-weight: 100;
	left: 0;
	right: 0;
	/*-webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);*/
	margin: 0;
	text-align: center;
	position: relative;
}
.logo_top {
	margin-bottom: 20px;
}
.header.top h1 {
	opacity: 0;
	position: static;
	/*-webkit-transform: translate(0, 0);
    transform: translate(0, 0);*/
	position: absolute;
	bottom: 0;
	top: 200px;
}
/*20200626*/
.header.top h1.active {
	opacity: 1;
	position: absolute;
	bottom: 0;
	top: 40%;
	left: -40%;/*-webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: 3.0s ease-in-out;
    transition: 3.0s ease-in-out;*/
}

@media(max-width:767px) {
.top_logo {
	width: 65px !important;
}
.header.top h1.active {
	opacity: 1;
	position: absolute;
	bottom: 0;
	top: 80%;
	left: 0%;
	width: 80%;
	text-align: center;
	margin: 0 auto;/*-webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: 3.0s ease-in-out;
    transition: 3.0s ease-in-out;*/
}
.header.top .top_logo_area {
	width: 100%;
	/*-webkit-transition: 3.0s ease-in-out;
    transition: 3.0s ease-in-out;*/
	top: 20%;
	font-size: 46px;
	color: #fff;
	letter-spacing: 10px;
	font-family: "Sawarabi Mincho";
	font-weight: 100;
	position: absolute;
	left: 0;
	right: 0;
	/*-webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);*/
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.mv_text {
	width: 20%;
	text-align: center;
}
.top .box_1 {
	position: relative;
	z-index: 1;
	margin-top: -30px;
}
.top .box_1_inner {
	background-image: url(image/top/top_bg_2-sp.png) !important;
	background-color: #fddfdf !important;
	top: 0px !important;
}
.swiper-button-prev {
	background-size: 100% 100%;
}
.swiper-button-next {
	background-size: 100% 100%;
}
.swiper-button-next,  .swiper-button-prev {
	width: 15px;
	height: 29px;
	margin-top: -52px;
}
}
.top_black a {
	color: #000 !important;
}
.top_black a:hover {
	text-decoration: none;
	border-bottom: 2px #000 solid !important;
}
.black_trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #000;
	border-radius: 4px;
}
/*ここまで*/



.top h2 {
	font-family: 'ArcaMajora', sans-serif;
	text-align: center;
	font-size: 15px;
	letter-spacing: 3px;
	font-weight: 700;
	margin: 70px 0 40px;
}
.top .box_1 {
	position: relative;
}
.top .box_1:after {
	content: '';
	display: block;
}
/*.cover{
    width: 100%;
    height: auto;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto 0;
    background: url(image/top/movie-cover.png) repeat 50% 50%;
}*/
.top .box_1_inner {
	/*background-image: url(image/top/top_bg_2.png);
    background-size: cover;
    background-position: center top;
    position: absolute;
    top: -130px;
    width: 100%;
    padding-top: 100px;
    padding-bottom: 40px;
    background-color: transparent !important;
    z-index: 1;
    background-image: url(image/top/top_bg_2.png);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center top;
    position: absolute;*/
    /*top: -234px;*/
	width: 100%;
	/*padding-top: 234px;*/
	padding-bottom: 0px;
	background-color: transparent !important;
	z-index: 0;
}
.top .box_1 h2 {
	font-family: 'ArcaMajora', sans-serif;
	text-align: center;
	font-size: 15px;
	letter-spacing: 3px;
	font-weight: 700;
	margin: 70px 0 40px;
}
.top .box_1_inner .col-sm-4 {
	text-align: center;
}
.top .box_1_inner .col-sm-4 a {
	height: 210px;
	overflow: hidden;
	display: block;
	border-radius: 10px;
	margin-bottom: 25px;
	background: #000;
	background-image: url(image/top/frame.png);
	z-index: 10;
	position: relative;
}
.top .box_1_inner .col-sm-4:first-child a .img {
	background-image: url(image/top/strength_1.jpg);
}
.top .box_1_inner .col-sm-4:nth-child(2) a .img {
	background-image: url(image/top/strength_2.jpg);
}
.top .box_1_inner .col-sm-4:last-child a .img {
	background-image: url(image/top/strength_3.jpg);
}
.top .box_1_inner .col-sm-4 a .img {
	height: 210px;
	background-size: cover;
	background-position: center center;
	-webkit-transition: .5s ease-out;
	transition: .5s ease-out;
}
.top .box_1_inner .col-sm-4 a:hover .img {
	transform: scale(1.1);
	opacity: .6;
}
.strength section {
	padding-top: 62px;
	margin-top: -62px;
}
/*.zoom_box{
	position: relative;
	height: 120%;
	-webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}*/

.top .box_1_inner .col-sm-4 p {
	font-size: 14px;
	color: #333;
	margin-top: 0;
	font-weight: 500;
	margin-bottom: 0;
}
.top .box_1_inner .col-sm-4 h3 {
	margin-bottom: 0;
	font-size: 24px;
	font-weight: 500;
	margin-top: 0;
}
.top .box_1_inner .col-sm-4:first-child h3 {
/*color:#ff7a58;*/
}
.top .box_1_inner .col-sm-4:nth-child(2) h3 {
/*color:#00ae7b;*/
}
.top .box_1_inner .col-sm-4:last-child h3 {
/*color:#005ae1;*/
}
.top .box_2 .inner {
	width: 50%;
	float: left;
	height: 330px;
	background-size: cover;
	background-position: center center;
}
.top .box_2 .inner:first-child {
	background-image: url(image/top/box_2_2.jpg);
}
.top .box_2 .inner:last-child {
	background-image: url(image/top/box_2_1_2.jpg);
}
.top .box_2 .inner a {
	position: relative;
	display: block;
	height: 100%;
}
.top .inner {
	position: relative;
}
.top .inner a .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	/* マスクを表示しない */
	background-color: rgba(0, 0, 0, 0.4);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
}
.top .inner a .mask .caption {
	position: absolute;
	top: 50%;
	left: -20%;
	right: 0;
	-webkit-transform: translate(0, -50%);
	/* Safari用 */
	transform: translate(0, -50%);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
	font-size: 28px;
	color: #fff;
	text-align: center;
	line-height: 2;
}
.top .inner a .mask:before, .top .inner a .mask:after {
	position: absolute;
	top: 50%;
	right: 0;
	content: '';
}
.top .inner a .mask:before {
	width: 15px;
	height: 15px;
	right: 14px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -8px;
	z-index: 1;
}
.top .inner a .mask:after {
	width: 40px;
	height: 40px;
	margin-top: -20px;
}
.top .inner a .mask .caption span {
	font-family: 'PT Sans Caption', sans-serif;
	display: block;
	font-size: 14px;
	letter-spacing: 4px;
}
.box_2 .inner:nth-child(2) a .mask .caption span {
	font-size: 18px;
	font-family: 'Noto Sans Japanese', sans-serif;
}
.top .inner a:hover .mask {
	opacity: 1;
}
.top .inner a:hover .mask .caption {
	left: 0;
}
.box_3 .inner h4 {
	color: #fff;
	font-size: 20px;
	font-weight: 400;
	letter-spacing: .13em;
}
.box_3 .inner h4 span {
	font-size: 16px;
	display: block;
	margin-top: .8em;
}
.box_3 .inner:nth-child(2) h4, .box_3 .inner:nth-child(3) h4 {
	letter-spacing: 0;
}
.box_2 .inner:first-child a .mask:after {
	background-color: #73beff;
}
.box_2 .inner:nth-child(2) a .mask:after {
	background-color: #e58f80;
}
.box_3 .inner:first-child a .mask:after {
	background-color: #60d088;
}
.box_3 .inner:nth-child(2) a .mask:after {
	background-color: #ffca51;
}
.box_3 .inner:last-child a .mask:after {
	background-color: #ba602b;
}
.box_2 .inner:first-child a h4 {
	color: #476cb3;
	font-size: 24px;
	font-weight: 500;
	letter-spacing: .13em;
}
.box_2 .inner:first-child a h4 span {
	display: block;
	font-size: 15px;
	margin-bottom: 40px;
	letter-spacing: .35em;
}
.box_2 .inner:nth-child(2) a h4 {
	color: #02710c;
	font-size: 24px;
	font-weight: 400;
	letter-spacing: .13em;
	text-align: left;
	line-height: 2;
	/*padding-left: 55px;*/
	text-align: center;
}
.box_2 .inner:nth-child(2) a h4 span {
	display: block;
	font-size: 15px;
	font-family: 'ArcaMajora', sans-serif;
	letter-spacing: .35em;
}
.box_2 .inner:first-child a h4 span b {
	font-weight: 400;
	border-bottom: 1px solid #476cb3;
	font-family: 'ArcaMajora', sans-serif;
}
.box_3 .inner:nth-child(2) a h4 {
}
.on_img {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	-webkit-transition: all 0.6s ease;
	transition: all 0.6s ease;
	text-align: center;
	margin: 0;
}
.top .inner a:hover .on_img {
	opacity: 0;
}
.top .box_3 .inner {
	width: 32%;
	float: left;
	height: 260px;
	background-size: cover;
	background-position: center center;
	border-radius: 10px;
}
.top .box_3 .inner a .mask .caption {
	font-size: 20px;
}
.top .box_3 .inner:first-child {
	background-image: url(image/top/box_3_1.jpg);
	margin-right: 1.5%;
}
.top .box_3 .inner:nth-child(2) {
	background-image: url(image/top/box_3_2.jpg);
	margin-right: 1.5%;
}
.top .box_3 .inner:last-child {
	background-image: url(image/top/box_3_3.jpg);
}
.top .box_4_wrap h4 {
	text-align: center;
	font-size: 15px;
	font-weight: 500;
}
.top .box_4_wrap {
	padding-top: 0px;
	padding-bottom: 80px;
}
.info_news {
	list-style: none;
	padding-right: 20px;
	padding-left: 10px;
}
.info_news li {
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #dedede;
}
.info_news .date {
	font-size: 13px;
	color: #888;
}
.info_news h3 {
	margin: 5px 0 5px;
	font-size: 13px;
	color: #333;
	font-weight: 400;
}
.info_news h3 a {
	font-size: 13px;
	color: #333;
	font-weight: 400;
}
.info_news a {
	font-size: 13px;
	color: #333;
	font-weight: 400;
}
.info_news .cat {
	font-size: 12px;
	background-color: #5374b1;
	padding: 2px 0;
	text-align: center;
	width: 100px;
	display: inline-block;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin-left: 10px;
	color: #fff;
}
.info_news .cat_topix {
	font-size: 12px;
	background-color: #23cdf1;
	padding: 2px 0;
	text-align: center;
	width: 100px;
	display: inline-block;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin-left: 10px;
	color: #fff;
}
.info_news.media_area .cat_topix {
	font-size: 12px;
	background-color: #aaa;
	padding: 2px 0;
	text-align: center;
	width: 100px;
	display: inline-block;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin-left: 10px;
	color: #fff;
}
.info_news {
	height: 488px;
	overflow-y: scroll;
}
.media_area {
	height: 488px;
}
.box_5 {
	padding-bottom: 90px;
}
.group_wrap .group_box {
	padding-top: 167px;
	background-position: center center;
	background-repeat: no-repeat;
	text-align: center;
	color: #333;
	height: 240px;
}
.group_wrap .col-sm-6:first-child .group_box:first-child {
	background-image: url(image/top/company_1.png);
}
.group_wrap .col-sm-6:first-child .group_box:last-child {
	background-image: url(image/top/company_2.png);
}
.group_wrap .col-sm-6:nth-child(2) .group_box:first-child {
	background-image: url(image/top/company_12.png);
}
.group_wrap .col-sm-6:nth-child(2) .group_box:last-child {
	background-image: url(image/top/company_17.png);
	background-size: 120px;
}
.group_wrap .col-sm-6:nth-child(3) .group_box:first-child {
	background-image: url(image/top/company_3.png);
}
.group_wrap .col-sm-6:nth-child(3) .group_box:last-child {
	background-image: url(image/top/company_13.png);
}
.group_wrap .col-sm-6:nth-child(4) .group_box:first-child {
	background-image: url(image/top/company_6.png);
}
.group_wrap .col-sm-6:nth-child(4) .group_box:last-child {
	background-image: url(image/top/company_7.png);
}
.group_wrap .col-sm-6:nth-child(5) .group_box:first-child {
	background-image: url(image/top/company_5.png);
}
.group_wrap .col-sm-6:nth-child(5) .group_box:last-child {
	background-image: url(image/top/company_4.png);
}
.group_wrap .col-sm-6:nth-child(6) .group_box:first-child {
	background-image: url(image/top/company_16.png);
}
.group_wrap .col-sm-6:nth-child(6) .group_box:last-child {
	background-image: url(image/top/company_9.jpg);
}
.group_wrap .col-sm-6:nth-child(7) .group_box:first-child {
	background-image: url(image/top/company_18.png);
	background-size: 120px;
}
.group_wrap .group_box p span {
	margin-top: 2px;
	font-size: 12px;
	display: block;
}
.box_4_wrap .row {
	margin-right: 0;
	margin-left: 0;
}
.top .box_4_wrap .row h2 {
	margin-bottom: 20px;
	padding-bottom: 40px;
	border-bottom: 1px solid #000;
}
.banner_area_inner {
	text-align: center;
}
.banner_area_inner {
	margin-bottom: 10px;
}
.top .box_5 h2 {
	padding-top: 70px;
	margin-top: 20px;
}
.box_5 {
	background-color: #f3f3f3;
}

@media(max-width:767px) {
}
/*--------------------------------------------------------------
# 強み
--------------------------------------------------------------*/
.page_strength {
	background-image: url(image/page/strength/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.top_text {
	margin: 70px 0;
	font-size: 26px;
	text-align: center;
	font-weight: 400;
}
.top_text span {
	display: inline-block;
	padding-bottom: 5px;
	border-bottom: #333333 2px solid;
}
.strength .title_belt {
	background-repeat: repeat-y;
	background-size: contain;
	text-align: center;
}
.title_belt {
	padding-top: 60px;
	padding-bottom: 60px;
	margin-bottom: 60px;
	margin-top: 60px;
}
.title_belt h2 {
	color: #fff;
	font-size: 50px;
	font-weight: 500;
	margin-top: 0;
	margin-bottom: 20px;
}
.title_belt h3 {
	color: #fff;
	font-size: 20px;
	font-weight: 400;
	margin-top: 0;
	margin-bottom: 0;
}
.strength .box_1 .title_belt {
	background-image: url(image/page/strength/box_1_bg.jpg);
	margin-top: 0;
}
.strength .box_2 .title_belt {
	background-image: url(image/page/strength/box_2_bg.jpg);
}
.strength .box_3 .title_belt {
	background-image: url(image/page/strength/box_3_bg.jpg);
}
.strength .box_1 .title_belt h2 {
	font-size: 60px;
}
.strength .box_1_inner p {
	font-size: 16px;
	line-height: 2;
}
.strength .box_1_inner {
	border-bottom: 1px solid #ededed;
}
.strength .box_1_inner:last-child {
	border-bottom: none;
}
.strength .box_1_inner:after {
	clear: both;
	display: table;
	content: '';
}
.strength .box_1_inner:nth-child(odd) p {
	width: 60%;
	float: right;
	padding-right: 50px;
}
.strength .box_1_inner:nth-child(even) p {
	width: 60%;
	float: left;
	padding-left: 50px;
}
.strength .box_1_inner:nth-child(odd) .img_wrap {
	width: 40%;
	float: left;
}
.strength .box_1_inner:nth-child(even) .img_wrap {
	width: 40%;
	float: right;
	text-align: right;
}
.strength .box_3 {
	padding-bottom: 100px;
}
/*--------------------------------------------------------------
# 事業紹介
--------------------------------------------------------------*/
.page_business {
	background-image: url(image/page/business/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.top_text_detail {
	font-size: 16px;
	line-height: 2;
	text-align: center;
	margin-bottom: 70px;
}
.business .box_1 {
	padding-top: 40px;
	padding-bottom: 100px;
	text-align: center;
	background-color: #f3f3f3;
}
.business_box {
	position: relative;
	height: 900px;
	width: auto;
}
.business .inner img {
	opacity: 0;
}
.business .inner {
	position: absolute;
}
.business .inner_1 {
	top: 0;
	z-index: 2;
}
.business .inner_2 {
	top: 50%;
	margin-top: -270px;
	right: 0;
	z-index: 3;
}
.business .inner_3_1 {
	right: 0;
	bottom: 0;
	z-index: 4;
}
.business .inner_3_2 {
	left: 0;
	bottom: 0;
	z-index: 0;
}
.business .inner_4 {
	top: 50%;
	margin-top: -209.5px;
	left: 0;
	z-index: 1;
}
.inner_3_wrap {
	position: absolute;
	bottom: 0;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
}
.text_area {
	position: absolute;
	color: #fff;
	z-index: 5;
}
.text_area h3 {
	font-size: 36px;
	font-weight: 400;
	margin-bottom: 20px;
	margin-top: 0;
}
.text_area p {
	font-size: 17px;
}
.business .inner_1 .text_area {
	top: 120px;
	right: 0;
	left: 0;
}
.business .inner_2 .text_area {
	top: 210px;
	right: 20px;
	left: 0;
}
.business .inner_3_wrap .text_area {
	bottom: 150px;
	right: 0;
	left: 0;
}
.business .inner_4 .text_area {
	top: 150px;
	left: 20px;
	right: 0;
}
.business .text_area {
	opacity: 0;
}
/*--------------------------------------------------------------
# 社長メッセージ
--------------------------------------------------------------*/
.page_message {
	background-image: url(image/page/message/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.message section {
	font-size: 15px;
	line-height: 1.8;
	text-align: left;
}
.message section .container {
	max-width: 1000px;
}
.message section h3 {
	font-family: "Sawarabi Mincho";
	font-size: 34px;
	text-align: center;
}
.box_right {
	float: right;
	width: 62%;
	line-height: 2.15;
}
.box_left {
	float: right;
	width: 38%;
}
.message .box_left img {
	max-width: none;
}
.message .sign {
	margin-top: 50px;
	text-align: right;
}
/*--------------------------------------------------------------
# ライセンス展開
--------------------------------------------------------------*/
.page_license {
	background-image: url(image/page/license/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.license section .box_2 h2 {
	border-top: 1px solid #dcdcdc;
	padding-top: 25px;
	position: relative;
	margin-bottom: 0;
	padding-bottom: 30px;
	margin: 0;
	background-color: #fff;
}
.license section .box_2 h2:before {
	position: absolute;
	left: 50%;
	right: 0;
	bottom: -10px;
	margin-left: -14.14px;
	content: '';
	width: 20px;
	height: 20px;
	display: block;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background: #fff;
}
.license section .box_2 .box_2_inner h2 {
	border-top: none;
}
.license .box_2_inner {
	margin-top: 70px;
	padding-bottom: 70px;
}
.license .box_2_inner.box_3 p {
	letter-spacing: -1px;
}
.license .box_2_inner h3 {
	font-size: 20px;
}
.license .box_2_inner p {
	font-size: 15px;
	line-height: 2;
}
.license .box_2_inner.box_3 {
	background-image: url(image/page/license/license04.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: contain;
}
.license .box_4 .row {
	width: 990px;
	margin: 0 auto;
	background-color: #fff;
	padding: 30px;
}
.license .btn_area {
	text-align: right;
}
.license .btn_area a {
	text-align: center;
	display: inline-block;
	background-color: #546ec3;
	position: relative;
	color: #fff;
	width: 250px;
	padding: 10px 0;
}
.license .btn_area a:after {
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -5px;
	right: 15px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.license .box_4 h3 {
	font-family: "Sawarabi Mincho";
	font-size: 26px;
	margin: 0 0 20px;
}
.license .box_4 {
	padding-bottom: 100px;
}
/*--------------------------------------------------------------
# 企業情報
--------------------------------------------------------------*/
.page_company {
	background-image: url(image/page/company/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.company .row {
	margin: 0px -5px 100px;
}
.company .row .col-sm-4 {
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 50px;
	padding-bottom: 10px;
}
.company .contents_under {
	background: #fff;
	padding: 40px 15px 30px;
}
.company .row .col-sm-4 img {
	width: 100%;
}
.company .contents_under h3 {
	font-size: 20px;
	margin: 0 0 20px;
	color: #333;
}
.company .contents_under p {
	font-size: 14px;
	color: #333;
}
.company .row .col-sm-4 *:hover {
	text-decoration: none;
}
/*--------------------------------------------------------------
# プライバシーポリシー
--------------------------------------------------------------*/
.page_privacy {
	background-image: url(image/page/privacy/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.privacy .top_text_detail {
	letter-spacing: -0.5px;
}
.privacy h3 {
	margin-top: 50px;
	margin-bottom: 15px;
	font-size: 21px;
	font-weight: 500;
}
.privacy p {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 50px;
}
.privacy p:last-child {
	margin-bottom: 0px;
}
/*--------------------------------------------------------------
# access
--------------------------------------------------------------*/
.page_access {
	background-image: url(image/page/access/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.access #map {
	margin-top: 50px;
}
.access #map+p {
	font-size: 16px;
	margin-bottom: 100px;
}
#map {
	height: 500px;
}
/*--------------------------------------------------------------
# ステートメント
--------------------------------------------------------------*/
.page_statement {
	background-image: url(image/page/statement/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.statement {
	background-image: url(image/page/statement/contents_bg.jpg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center bottom;
}
.statement .container h3, .statement .container p {
	font-family: "Sawarabi Mincho";
	text-align: center;
}
.statement .container p {
	font-size: 18px;
	line-height: 2.8;
	margin-bottom: 80px;
}
.statement .container p:last-child {
	margin-bottom: 100px;
}
.statement .container h3 {
	font-size: 34px;
	margin-top: 2em;
}
/*--------------------------------------------------------------
# 会社沿革
--------------------------------------------------------------*/
.page_history {
	background-image: url(image/page/history/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.history table {
	margin-top: 50px;
	margin-bottom: 100px;
	width: 100%;
}
.history table td, .history table th {
	border-bottom: 1px solid #cbcbcb;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 16px;
}
.history table th {
	width: 180px;
	font-weight: 400;
	text-align: left;
}
ul.history_list {
	list-style: none;
	padding-left: 0;
	margin-top: 90px;
	position: relative;
	margin-bottom: 120px;
}
/*ul.history_list:before{
	content:"";
	width: 2px;
	display: block;
	height: 3142px;
	background-color: #000;
	position: absolute;
	left:50%;
	top:10px;
}*/
.line-border {
	content: "";
	width: 2px;
	display: block;
	background-color: #000;
	position: absolute;
	left: 50%;
	top: 10px;
}
.history_list li {
	float: right;
	width: 50%;
	margin-top: 100px;
	font-size: 18px;
	position: relative;
	z-index: 1;
}
.history_list li p {
	margin-top: 5px;
	margin-bottom: 0;
}
.history_list li small {
	color: #999999;
	font-size: 16px;
}
.history_list li:before {
	content: '';
	width: 60px;
	height: 2px;
	background-color: #000;
	display: block;
	position: absolute;
	top: 15px;
	z-index: 2;
}
.history_list li:after {
	width: 20px;
	height: 20px;
	display: block;
	background-color: #5ac877;
	content: "";
	border-radius: 50%;
	position: absolute;
	top: 6px;
	z-index: 2;
}
.history_list li:nth-child(odd):before {
	left: 0;
}
.history_list li:nth-child(odd):after {
	left: -9px;
}
.history_list li:nth-child(even):before {
	right: 0;
}
.history_list li:nth-child(even):after {
	right: -10px;
}
.history_list li:nth-child(odd) {
	margin-top: 20px;
	padding-left: 70px;
}
.history_list li:first-child {
	margin-top: 0;
}
.history_list li:nth-child(even) {
	text-align: right;
	padding-right: 70px;
}
/*--------------------------------------------------------------
# 会社概要
--------------------------------------------------------------*/
.page_overview {
	background-image: url(image/page/overview/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
/*修正20200630*/
.overview .table_css_wrap {
	margin-top: 50px;
	/* margin-bottom: 90px; */
	width: 100%;
	float: left;
	/* padding-right: 15px; */
}
.overview .box_css {
	margin-top: 50px;
	margin-bottom: 100px;
	width: 50%;
	float: left;
	padding-left: 15px;
	border-left: 1px solid #cbcbcb;
}
.overview table.table_css {
	width: 100%;
}
.overview table.table_css>tbody>tr>td {
	border-bottom: 1px solid #cbcbcb;
	padding: 15px 10px;
	font-size: 16px;
  text-align: left;
}
.overview table.table_css>tbody>tr>th {
	border-bottom: 1px solid #cbcbcb;
	font-size: 16px;
	font-weight: 400;
	text-align: left;
}
.overview table.table_css>tbody>tr:last-child>* {
	border-bottom: none;
}
.overview .bg_gray .container {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.overview table.table_css>tbody>tr>td>p, .border_table {
	border-left: 1px solid #cbcbcb;
	padding-left: 10px;
	margin: 0;
}
.border_table tr td {
	padding: 0 10px;
}
.box_css .inner {
	border-bottom: 1px solid #cbcbcb;
	padding: 15px 10px;
}
.box_css .inner:last-child {
	border: none;
}
.box_css .inner h3 {
	margin: 0;
	font-size: 16px;
	font-weight: 400;
}
.box_css .inner p {
	margin-top: 0;
}
/*--------------------------------------------------------------
# 経営理念
--------------------------------------------------------------*/
.page_philosophy {
	background-image: url(image/page/philosophy/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.philosophy_inner h3 {
	font-size: 24px;
	font-family: "Sawarabi Mincho";
	background-color: #e5e5e5;
	padding: 10px;
	width: 250px;
	text-align: center;
	border-radius: 4px;
	display: inline-block;
	margin-top: 0;
	margin-bottom: 45px;
}
.philosophy_inner h4 {
	font-family: "Sawarabi Mincho";
	font-size: 44px;
	margin-top: 0;
	margin-bottom: 20px;
}
.philosophy_inner h5 {
	font-family: "Sawarabi Mincho";
	font-size: 26px;
	margin-top: 40px;
	margin-bottom: 40px;
}
.philosophy_inner h6 {
	font-size: 24px;
	margin-top: 0;
	margin-bottom: 10px;
}
.philosophy_inner p {
	font-size: 16px;
	line-height: 2;
	margin-top: 0;
	margin-bottom: 20px;
}
.philosophy_inner {
	text-align: center;
	margin-bottom: 80px;
}
.philosophy_inner .en_italic {
	font-family: "Sawarabi Mincho";
}
.philosophy .bg_gray {
	/* padding-top: 90px;
	padding-bottom: 120px; */
}
.philosophy .m20-b {
	margin-bottom: 20px;
}

/*--------------------------------------------------------------
# ロゴ由来
--------------------------------------------------------------*/
.page_origin {
	background-image: url(image/page/philosophy/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;

}

.origin_bg{

	background-image: url(image/page/origin/bg.jpg);
	background-size: cover;
		background-position: center bottom;
	position: relative;
}

.origin{
	overflow-x: hidden;
}
.origin section {
	font-size: 15px;
	line-height: 1.8;
	text-align: left;
}
.origin section .container {
	max-width: 2050px;

}
.origin_inner h3 {
	font-size: 24px;
	font-family: "Sawarabi Mincho";
	background-color: #e5e5e5;
	padding: 10px;
	width: 250px;
	text-align: center;
	border-radius: 4px;
	display: inline-block;
	margin-top: 0;
	margin-bottom: 45px;
}
.origin_inner h4 {
	font-family: "Sawarabi Mincho";
	font-size: 44px;
	margin-top: 0;
	margin-bottom: 20px;
}
.origin_inner h5 {
	font-family: "Sawarabi Mincho";
	font-size: 26px;
	margin-top: 40px;
	margin-bottom: 40px;
}
.origin_inner h6 {
	font-size: 24px;
	margin-top: 0;
	margin-bottom: 10px;
}
.origin_inner p {
	font-size: 16px;
	line-height: 2;
	margin-top: 0;
	margin-bottom: 20px;
}
.origin_inner {
	text-align: center;
	margin-bottom: 80px;
}
.origin_inner .en_italic {
	font-family: "Sawarabi Mincho";
}
.origin .bg_gray {
	padding-top: 70px;
	padding-bottom: 100px;
}
.origin .m20-b {
	margin-bottom: 20px;
}

/*20180227追加*/
.origin  p {
	text-align: center;
	font-size: 18px;
	line-height: 2.8;
	margin-bottom: 0px;
}

.origin #map {
	margin-top: 50px;
}
.origin #map+p {
	font-size: 16px;
	margin-bottom: 100px;
}

/*--------------------------------------------------------------
# 行動指針
--------------------------------------------------------------*/
.page_code-of-conduct {
	background-image: url(image/page/code-of-conduct/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.code-of-conduct .bg_gray .container {
	width: 900px;
	margin-right: auto;
	margin-left: auto;
	padding: 0 30px;
  text-align: left;
}
.code-of-conduct_inner {
	padding: 30px 20px;
}

.code-of-conduct_inner:last-child {
  padding-bottom: 0;
}

.code-of-conduct_bg h1 {
  margin: 0;
  margin-bottom: 30px;
}

.code-of-conduct_inner h3 {
	font-size: 24px;
	margin-top: 0;
	margin-bottom: 20px;
}
.code-of-conduct_inner p {
	font-size: 16px;
	padding-left: 25px;
}
.code-of-conduct .list_box {
	background-color: #fff;
	padding: 45px 70px;
	border-radius: 10px;
	margin-top: 50px;
}
.code-of-conduct .list_box h3 {
	text-align: center;
	font-size: 30px;
	font-weight: 900;
	margin-top: 0;
	margin-bottom: 40px;
}
.code-of-conduct .list_box ol li {
	font-size: 18px;
	border-bottom: 1px solid #cbcbcb;
	padding-bottom: 5px;
	padding-top: 5px;
	margin-bottom: 15px;
	padding-left: 5px;
	padding-right: 5px;
}
.code-of-conduct .list_box ol {
	counter-reset: li;
	/*olのリストの数字をリセット*/
	padding-left: 0;
}
.code-of-conduct .list_box ol li {
	list-style: none;/*元のスタイルを非表示にする*/
}
.code-of-conduct .list_box ol li:before {
	counter-increment: li;
	/*リストの数字を1つ進める。IE7以下、未対応*/
	content: counter(li);
	/*リストを連番にする*/
	margin-right: 1em;
	/*要素が重なるから右へ移動*/
	line-height: 1.6;/*文字が重なるのを防止*/
}
.code-of-conduct .code-of-conduct_bg {
	background-image: url(image/page/code-of-conduct/contents_bg.jpg);
	background-position: right top;
	background-repeat: no-repeat;
}
/*--------------------------------------------------------------
# お問い合わせ
--------------------------------------------------------------*/
.page_contact {
	background-image: url(image/page/contact/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.contact .container .col-sm-4 {
	padding-top: 8px;
	padding-bottom: 8px;
}
.contact .container {
	width: 1000px;
}
.contact .container .inner {
	background-color: #fff;
	padding: 35px 40px;
}
.contact .container h3 {
	font-size: 18px;
	margin-top: 0;
	margin-bottom: 30px;
}
.contact .container h4 {
	font-size: 28px;
	position: relative;
}
.contact .container h4 {
	background-image: url(image/page/contact/contact_icon.png);
	background-position: left center;
	position: relative;
	background-repeat: no-repeat;
	padding-left: 25px;
	margin-bottom: 5px;
}
.contact .container .inner p {
	margin: 0;
}
.contact .bg_gray {
	/* padding-top: 70px; */
	padding-bottom: 100px;
}
.wpcf7-form {
	width: 700px;
	margin-left: auto;
	margin-right: auto;
	line-height: 2;
	font-size: 16px;
}
.wpcf7-form-control-wrap input[name="your-name"], .wpcf7-form-control-wrap input[name="your-email"], .wpcf7-form-control-wrap input[name="your-tel"],.wpcf7-form-control-wrap input[name="your-member"] {
	width: 350px;
	border: 1px solid #CCC;
	border-radius: 4px;
	padding: 10px;
}
.wpcf7-form-control-wrap input[name="your-address-required"],.wpcf7-form-control-wrap input[name="your-address"], .wpcf7-form-control-wrap textarea {
	width: 100%;
	border: 1px solid #CCC;
	border-radius: 4px;
	padding: 10px;
}
.wpcf7-form span {
	color: #777777;
	font-size: 0.9em;
}
.wpcf7-form span.wpcf7-not-valid-tip{
	color: #f00;
}
.contact select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-indent: 1em;
	background: #fff url(image/page/contact/sankaku.png) no-repeat;
	background-size: 12px 10px;
	background-position: right 10px center;
	height: 40px;
	line-height: 40px;
	font-size: 15px;
	vertical-align: middle;
	border: 1px solid #CCC;
	margin-bottom: 5px;
	width: 400px;
  color: #777;
}
 .contact select::-ms-expand {
 display: none;
}

.ichikakuya_app select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-indent: 1em;
	background: #fff url(image/page/contact/sankaku.png) no-repeat;
	background-size: 12px 10px;
	background-position: right 10px center;
	height: 40px;
	line-height: 40px;
	font-size: 15px;
	vertical-align: middle;
	border: 1px solid #CCC;
	margin-bottom: 5px;
	width: 400px;
}
 .ichikakuya_app select::-ms-expand {
 display: none;
}

.animated {
	opacity: 0;
}
 @-moz-document url-prefix() {

    /* for firefox */
    .content select, .ichikakuya_app select{
 background: none;
 background-color: #FFF;
}
}
.wpcf7-form-control.wpcf7-submit {
	background-color: #000;
	border: none;
	border-radius: 4px;
	width: 250px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	color: #fff;
	margin-top: 32px;
	padding: 12px 0;
}
/*--------------------------------------------------------------
# ブランド
--------------------------------------------------------------*/
.page_brand {
	background-image: url(image/page/brand/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.brand .col-sm-4 span {
	background-color: #fff;
	display: block;
	text-align: center;
}
.brand .col-sm-4 {
	padding-bottom: 0px;
}
.brand_wrap {
	/* padding-top: 90px; */
	/* margin-bottom: 50px; */
}
.brand_wrap a {
	display: block;
	background-color: #fff;
}
.brand_wrap a img {
	display: block;
	margin-right: auto;
	margin-left: auto;
}
.contents_under {
	text-align: center;
}
.contents_under p {
	font-size: 15px;
	margin-bottom: 0;
}
.count_belt_wrap {
	background-color: #454545;
	color: #fff;
}
.count_table ul {
	width: 100%;
	list-style: none;
	padding-left: 0;
	display: flex;
}
.count_table ul li {
	/* float: left; */
	border-right: 1px solid #afafaf;
	width: 33.333333%;
	text-align: center;
	padding: 10px;
	font-size: 27px;
	font-weight: 900;
}
.count_table ul li span {
	font-weight: 900;
	font-size: 40px;
}
.count_table ul li p {
	font-size: 15px;
	margin-top: 0;
	margin-bottom: 5px;
	font-weight: 400;
}
.count_table ul li p.count_attend {
	color: #b4b4b4;
}
.count_table ul li:last-child {
	border-right: none;
}
.count_table ul:after {
	clear: both;
	content: '';
	display: table;
}
.count_all {
	text-align: center;
}
.count_all h3 {
	font-size: 26px;
	margin: 0;
	font-weight: 400;
}
.count_all h3 span {
	font-size: 60px;
	font-weight: 900;
}
.count_all p {
	color: #999;
	margin-top: 0;
	margin-bottom: 70px;
}
h2.top_text {
	margin-bottom: 30px;
}
/*--------------------------------------------------------------
# グループ企業
--------------------------------------------------------------*/
.page_group {
	background-image: url(image/page/group/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.group .top_text_detail {
	font-size: 21px;
	margin-top: 70px;
}
.group .main_table {
	width: 100%;
	margin-top: 45px;
	margin-bottom: 100px;
}
.group .main_table>tbody>tr>th {
	width: 27.5%;
	border-bottom: 1px solid #999;
}
.group .main_table>tbody>tr>td {
	padding: 25px 0;
	border-bottom: 1px solid #999;
}
.group .sub_table tbody * {
	font-size: 16px;
	font-weight: 400;
}
.group .sub_table thead * {
	font-size: 18px;
	font-weight: 700;
	padding-bottom: 10px;
}
.group .sub_table th {
	border-left: 1px solid #999;
	padding-left: 70px;
	width: 160px;
	text-align: left;
}
/*--------------------------------------------------------------
# ブランド詳細ページ
--------------------------------------------------------------*/
.page_brand_detail {
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 600px;
	background-repeat: no-repeat;
}
.photo_gallery ul {
	list-style: none;
	margin: 0 -10px 30px;
	padding-left: 0;
}
.photo_gallery ul li {
	float: left;
	width: 33.33333%;
	padding-bottom: 20px;
}
.photo_gallery ul li a {
	margin-left: 10px;
	margin-right: 10px;
	position: relative;
	overflow: hidden;
	display: block;
	height: 200px;
}
.photo_gallery ul li img {
	position: absolute;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	/* Safari用 */
	transform: translate(0, -50%);
}
.area_box h3 {
	text-align: center;
	font-size: 20px;
}
.brand_data {
	margin-top: 70px;
}
.area_box {
	padding: 30px 50px 50px;
	margin-top: 70px;
	margin-bottom: 70px;
}
ul.area_1_list {
	display: block;
	margin-right: -5px;
	margin-left: -5px;
	padding-left: 0;
	margin-bottom: 0;
}
ul.area_1_list li {
	text-align: center;
	width: 172px;
	padding: 10px 0;
	display: block;
	background-color: #dbdbdb;
	margin-left: 5px;
	margin-right: 5px;
	font-size: 20px;
	float: left;
	cursor: pointer;
	margin-top: 10px;
}
ul.area_1_list li.select {
	background-color: #000;
	color: #fff;
}
.store_area_detail ul {
	margin-top: 0;
}
.store_area_detail {
	border-top: #000 5px solid;
	padding-top: 40px;
}
.area_list_small>li {
	float: left;
	border-right: 1px solid #333;
	padding: 0 10px;
	font-size: 15px;
	margin-bottom: 5px;
}
.area_list_small>li>a {
	color: #000;
}
.area_list_small>li:last-child {
	border-right: none;
}
.area_list_small, .store_detail_list {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}
.store_area_detail>div {
	display: none;
}
.store_area_detail>div:first-child {
	display: block;
}
.main_loop {
	margin: 0;
	list-style: none;
	padding-left: 0;
}
.area_title h4 {
	font-size: 16px;
	padding: 8px 10px;
	margin-left: 10px;
	border-left: 4px solid #333;
	font-weight: 400;
  text-align: left;
}
.store_detail_list li {
	border-top: 1px solid #dcdcdc;
	position: relative;
	padding: 30px 100px 30px 10px;
	font-size: 15px;
}
.store_detail_list li:last-child {
	border-bottom: 1px solid #dcdcdc;
}
h3.brand_name {
	text-align: left;
	margin: 0;
	font-weight: 400;
	margin-bottom: 5px;
}
.store_detail_list .btn_area {
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	/* Safari用 */
	transform: translate(0, -50%);
}
.store_detail_list .btn_area a {
	display: inline-block;
	padding: 10px 15px;
	background-color: #000;
	color: #fff;
}
.store_detail_list .btn_area a:hover {
	text-decoration: none;
}
.area_list_small {
	margin-bottom: 40px;
}
.area_box {
	background-color: #fff;
	border-radius: 10px;
}
.store_detail_list li span {
	margin-right: 10px;
}
.brand_btn_area {
	margin-bottom: 50px;
	/* margin-top: 70px; */
}
.brand_btn_area ul {
	width: 780px;
	margin: 0 auto;
	list-style: none;
	padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.brand_btn_area .wrap:after {
  content: none;
}

.brand_btn_area ul li {
	padding: 0 15px;
	width: calc(100% / 2 - 10px);
}

.brand_menu_area {
  margin-top: 90px;
}

.address_tel {
	margin-bottom: 5px;
}
.seat_time_wrap div:nth-child(2) {
	margin-top: 5px;
}
.seat_time_wrap {
	font-size: 13px;
}
.seat_time_wrap b {
	font-size: 15px;
	font-weight: 400;
}
.business_box_sp {
	display: none;
}
.store_detail_img {
	float: left;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin-right: 10px;
	margin-bottom: 10px;
}
.store_detail_list li:after {
	clear: both;
	content: "";
	display: table;
}
.detail_img_wrap {
	width: 290px;
	float: left;
	padding-right: 10px;
	padding-bottom: 10px;
}
.detail_wrap {
	width: 500px;
	float: left;
  text-align: left;
}
.btn_area_wrap {
	margin-bottom: 50px;
}
.btn_area_wrap a {
	background-color: #676767;
	color: #fff;
	display: block;
	padding: 35px 30px;
	font-size: 20px;
	position: relative;
}
.btn_area_wrap a span {
	display: block;
	font-size: 14px;
}
.btn_area_wrap a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 45px;
	margin: auto;
	content: "";
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.btn_area_wrap a:hover {
	opacity: 0.8;
	text-decoration: none;
}
.fb_wrap {
	padding: 10px;
	background-color: #fff;
}
.brand_btn_area ul li a {
	background-color: #676767;
	color: #fff;
	display: block;
	padding: 35px 30px;
	font-size: 20px;
	position: relative;
  text-align: left;
}
.brand_btn_area ul li a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 45px;
	margin: auto;
	content: "";
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.brand_btn_area ul li a:hover {
	opacity: 0.8;
	text-decoration: none;
}
.brand_btn_area ul li a span {
	display: block;
	font-size: 14px;
}
/*#mailadress{
	display: none;
}
#telnum{
	display: none;
}*/
.contact select#month, .contact select#days, .contact select#times {
	width: 100px;
}

.ichikakuya_app select#month, .ichikakuya_app select#days, .ichikakuya_app select#times {
	width: 100px;
}
.banner_url_area {
	text-align: center;
}
/*20180227追加*/
.message p {
	text-align: center;
	font-size: 18px;
	line-height: 2.8;
	margin-bottom: 80px;
}
/* #contents.message {
	background-image: url(image/page/message/bg_content_2.jpg);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center bottom;
} */
.message .sign {
	margin: 0;
}
.fix_contact_btn {
	display: none;
}
.privacy-table {
	width: 100%;
}
.privacy-table th, .privacy-table td {
	padding: 10px;
	border: 1px solid #aaa;
}
.privacy-table th {
	background-color: #eee;
}
.privacy-table td {
	background-color: #fff;
}
.page_request {
	background-image: url(image/page/contact/bg.jpg);
	background-size: cover;
	background-position: center bottom;
	position: relative;
	height: 380px;
	background-repeat: no-repeat;
}
.contact .container .col-sm-4 {
	padding-top: 8px;
	padding-bottom: 8px;
}
.contact .container {
	width: 1000px;
}
.contact .container .inner {
	background-color: #fff;
	padding: 35px 40px;
}
.contact .container h3 {
	font-size: 18px;
	margin-top: 0;
	margin-bottom: 30px;
}
.contact .container h4 {
	font-size: 28px;
	position: relative;
}
.contact .container h4 {
	background-image: url(image/page/contact/contact_icon.png);
	background-position: left center;
	position: relative;
	background-repeat: no-repeat;
	padding-left: 25px;
	margin-bottom: 5px;
}
.contact .container .inner p {
	margin: 0;
}
.contact .bg_gray {
	/* padding-top: 0px; */
	padding-bottom: 0px;
}
.wpcf7-form-control-wrap input[name="your-company"], .wpcf7-form-control-wrap input[name="your-department"] {
	width: 350px;
	border: 1px solid #CCC;
	border-radius: 4px;
	padding: 10px;
}
/*-- PC版表示CSS  --*/
.pc {
	display: block;
}
.sp {
	display: none;
}

/*-- スマホ版表示CSS  --*/
@media screen and (max-width: 768px) {
.pc {
	display: none;
}
.sp {
	display: block;
}
}
.slider_top {
	/*top: 0;
    font-size: 46px;
    color: #fff;
    letter-spacing: 10px;
    font-family: "Sawarabi Mincho";
    font-weight: 100;
    left: 0;
    right: 0;
    margin: 0;
    text-align: center;
    position: relative;
    height: 100%;
    background: #000;*/
	top: 0;
	font-size: 46px;
	color: #fff;
	letter-spacing: 10px;
	font-family: "Sawarabi Mincho";
	font-weight: 100;
	left: 0;
	right: 0;
	margin: 0;
	text-align: center;
	position: relative;
	/* height: 100%;
	background: #000; */
	max-width: 3500px;
	margin: 0 auto;
	padding-bottom: 50px;
}
.swiper-button-prev {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23FFFFFF'%2F%3E%3C%2Fsvg%3E");
	left: 20px;
}
.swiper-button-next {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23FFFFFF'%2F%3E%3C%2Fsvg%3E");
	right: 20px;
}
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: -10px;
	z-index: 9000;
}
.swiper-pagination-bullet {
	width: 15px;
	height: 15px;
}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 7px;
}
.swiper-pagination-bullet-active {
	background-color: #222;
}
.swiper-slide .slide_link:hover img {
	opacity: 1;
}
#headbar.top_header {
	display: block;
}

@media screen and (min-width: 769px) {
#headbar.top_header + .header {
	padding-top: 62px;
}
}

@media screen and (max-width: 768px) {
.slider_top {
	padding-bottom: 62px;
	margin-bottom: -50px;
}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 5px;
}
.swiper-container-horizontal>.swiper-pagination-bullets,  .swiper-pagination-custom,  .swiper-pagination-fraction {
	bottom: 20px;
}
.philosophy_inner h4 {
	/* margin-top: 20px; */
}
.swiper-pagination-bullet {
	width: 10px;
	height: 10px;
}
}

/*追記*/
@media screen and (min-width: 768px) {
.top .swiper-container .white-bg {
	width: 3500px;
	height: 320px;
	background-image: url(image/top/top_bg_3.png);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: center top;
	position: absolute;
	bottom: 40px;
	left: 50%;
	margin-left: -1750px;
	z-index: 1;
	pointer-events: none;
}
.top {
	position: relative;
	z-index: 1;
}
.top .box_1 {
	padding-top: 1px;
	background-color: #fff!important;
	margin-top: -2px;
}
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
	left: 50%;
	/* margin-left: -45px; */
	transform: translateX(-50%);
	width: auto;
}
}

/*.top-banner{
text-align:center; margin:70px auto 0; width:90%;
}

@media screen and (max-width: 1200px) {
.top-banner{
text-align:center;
margin:70px auto 0;
width:80%;
}
}*/

.top-banner{
text-align:center; margin:0px auto 0; /*width:90%*/ max-width: 1156px;;
}

.top-banner2{
text-align:center; margin:20px auto 0; /*width:90%*/ max-width: 1156px;;
}

@media screen and (max-width: 1200px) {
.top-banner{
text-align:center;
margin:0px auto 0;
/*width:80%;*/
}
.top-sp_banner2{
text-align:center;
margin:30px auto 0;
/*width:80%;*/
}

}


.items,.items2{
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;

}

.item{
box-sizing: border-box;
margin: 0 10px;
/*padding: 10px;*/
width: 47.88888%;
}

.item2{
box-sizing: border-box;
margin: 0 10px;
/*padding: 10px;*/
width: 22.88888%;
/*width: 23.2%;*/


}

/*@media (max-width: 1400px) and (min-width:987px) {
	.item{
	box-sizing: border-box;
	margin: 0 10px;
	width: 40%;
	}
}*/

@media (min-width: 769px) and (max-width: 2000px) {

/*@media (min-width: 769px) and (max-width: 1180px) {*/
	.item{
	box-sizing: border-box;
	margin: 0 10px;
	/*padding: 10px;*/
	/*width: 42%;*/
	width: 80%;
	}

	.item2{
	box-sizing: border-box;
	margin: 0 10px;
	/*padding: 10px;*/
	/*width: 19.88888%;*/
	width: 38.88888%;
	/*width: 37.88888%;*/

	}

}

@media (min-width: 768px) and (max-width: 1023px) {
.header.top{
	height: 100% !important;
	z-index: 9999;
}

.slider_top {
	height: 400px;
}
}

@media (min-width: 768px) and (max-width: 1024px) {
.header.top{
	height: 100% !important;
	z-index: 9997;
}

.slider_top {
	height: 100%;
}
}

@media (min-width: 540px){
.header.top{
	height: 100% !important;
}

.slider_top {
	height: 100%;
}
}



@media screen  and (max-width: 768px){
.sp_banner{
width: 80%;
margin: 60px auto 20px;
}

.sp_banner2{
	display: flex;
	width: 80%;
	margin: 0 auto;
}
.sub_banner_sp{

padding: 5px;

}
}

@media (min-width: 376px) and (max-width: 480px) {

.sp_banner{

width: 100%;
/*margin: 30px auto 55px;*/
/*margin: 30px auto 40px;*/
margin: 20px auto 20px;

padding: 0 10px;
}

.sp_banner2{

width: 100%;
/*margin: 0px auto 0px;*/
margin: -5px auto 40px;
padding: 0 10px;
}

.sub_banner_sp{

padding: 5px;

}

}

@media (min-width: 481px) and (max-width: 676px) {

.sp_banner{

width: 100%;
/*margin: 30px auto 55px;*/
margin: 0px auto 15px;
padding: 0 10px;
}

.sp_banner2{

width: 100%;
margin: 0px auto 0px;
padding: 0 5px;
}

.sub_banner_sp{

padding: 5px;

}

}

@media (max-width: 375px) {

.sp_banner{

width: 95%;
/*margin: 0px auto 55px;*/
/*width: 95%;*/
/*margin: 0px auto 30px;
width: 300px;*/
margin: 0px auto 20px;

}

.sp_banner2{

width: 95%;
/*width: 300px;*/
/*margin: 0px auto 0px;*/
margin: -5px auto 40px;

}

.sub_banner_sp{

padding: 5px;

}

}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	.items{
	box-sizing: border-box;
	margin: 0 10px;
	width: 100%;
	}
	.items2{
	box-sizing: border-box;
	margin: 0 10px;
	width: 100%;
	}

	.sub_banner_sp{
		width: 100%;
	}
}




/* 20211129 追記
-------------------------------------------------- */
.footer_inner {
    width: 27%;
}
.footer_inner.logo_wrap{
	width: 18%;
}
footer h2{
	margin-top: 40px;
	padding-bottom:  4px;
	font-weight: 700;
	position: relative;
	border-bottom: 1px solid #fff;
	width: 140px;
	line-height: 24px;
}
footer h2:first-child{
	margin-top: 0;
}
/* footer h2:before{
	content: '';
	display: block;
	width: 140px;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	transform: scaleY(0.5);
	transform-origin: top;
} */
footer h2 a:hover{
	text-decoration: none;
}
footer ul {
    padding-left: 0;
}
ul.footer_brand li {
    line-height: 2;
    letter-spacing: 0;
}

.movie-ttl{
	max-width: 700px;
	margin: 0px auto 40px;
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 46.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.top #movie{
	margin-bottom: 0px;
}
@media screen  and (max-width: 768px){
	.top #movie{
		/* margin-bottom: 40px; */
	}
	.top #movie h2{
		/* margin: 30px 0 10px; */
	}
	.movie-ttl{
		margin: 20px auto;
		max-width: 300px;
	}
}
.top-youtube{
	max-width: 930px;
	margin: 0 auto;
}

.brand_wrap a{
	display: block;
	margin-bottom: 50px;
}
@media screen  and (max-width: 768px){
	.brand_wrap a{
		/* margin-bottom: 30px; */
	}
}
.brand_wrap a:hover{
	text-decoration: none;
}
.brand_wrap a:hover img{
	opacity: 0.6!important;
}
.brand-box-left img{
	max-height: 180px;
	width: auto;
	margin-top:40px;
}
@media screen  and (max-width: 768px){
	.brand-box-left img{
		max-height: 160px;
		width: auto;
		margin-top:30px;
		margin-bottom: 30px;
	}
}
@media screen  and (min-width: 769px){
	.brand-box-wrap{
		display: flex;
	}
	.brand-box-left{
		width: 45%;
	}
	.brand-box-right{
		width: 55%;
	}
}
.brand-ttl{
	min-height: 87px;
	width: 90%;
	margin: 0 auto;
	padding: 20px 10px 20px;
	font-size: 16px;
	text-align: center;
	color: #1c1c1c;
	font-weight: bold;
	border-bottom:#b4bdbf 1px solid;
}




.brand-ttl small{
	font-size: 0.8em;
}
.contents_under{
	padding:8px 10px;
	font-size: 16px;
	background-color: #454545;
	color: #fff;
}
.brand-box-wrap .brand-ttl {
	font-size: 30px;
	font-weight: 700;
	min-height: auto;
}

@media screen  and (min-width: 992px){
	.brand-box-wrap + .contents_under{
		font-size: 20px;
	}
	.brand_wrap .row > div:nth-child(0) .brand-ttl,
	.brand_wrap .row > div:nth-child(1) .brand-ttl,
	.brand_wrap .row > div:nth-child(2) .brand-ttl,
	.brand_wrap .row > div:nth-child(3) .brand-ttl,
	.brand_wrap .row > div:nth-child(4) .brand-ttl,
	.brand_wrap .row > div:nth-child(5) .brand-ttl,
	.brand_wrap .row > div:nth-child(6) .brand-ttl,
	.brand_wrap .row > div:nth-child(7) .brand-ttl,
	.brand_wrap .row > div:nth-child(8) .brand-ttl,
	.brand_wrap .row > div:nth-child(9) .brand-ttl,
	.brand_wrap .row > div:nth-child(10) .brand-ttl{
		min-height: 110px;
	}
}
@media (min-width: 769px) and (max-width: 991px){
	.brand-box-wrap + .contents_under{
		font-size: 20px;
	}
	.brand_wrap .brand-ttl{
		font-size: 15px;
	}
	.brand-box-wrap .brand-ttl {
		font-size: 20px;
		font-weight: 700;
		min-height: auto;
	}
	.brand_wrap .row > div:nth-child(9) .brand-ttl,
	.brand_wrap .row > div:nth-child(10) .brand-ttl,
	.brand_wrap .row > div:nth-child(11) .brand-ttl{
		min-height: 110px;
	}
	.brand-box-left img{
		max-height: 140px;
	    margin-top: 20px;
	}
}
@media (min-width: 992px) and (max-width: 1199px){
	.brand_wrap .brand-ttl{
		font-size: 15px;
	}
	.brand-box-wrap .brand-ttl {
		font-size: 24px;
	}
}

@media screen  and (max-width: 768px){
	#contents .brand-ttl {
		font-size: 24px;
		line-height:1.3;
		font-weight: 700;
	}
	.contents_under{
		font-size: 20px;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
  .brand-flex {
    display: flex;
    flex-wrap: wrap;
    clear: both;
  }
  .brand-flex .col-sm-4 {
    padding-bottom: 0px;
    float: initial;
    width: 50%;
  }
  .brand-flex .brand-ttl {
    font-size: 24px;
    min-height: 134px;
    line-height:1.3;
		font-weight: 700;
  }
}



@media (min-width: 414px) and (max-width: 768px) {
	.store_detail_list .detail_img_wrap{
		margin-left: 0;
	}
}

/* アイコンサイズ調整 */

@media (min-width: 414px) and (max-width: 767px) {
  .store-icon--area figure {
    width: 12% !important;
  }
}

/* end */



/* top お知らせ */

.top-news {
  margin-top: 80px;
}

@media screen  and (max-width: 767px) {
  .top-news {
    margin-top: 30px;
    padding: 0 8px;
  }
}

@media (min-width: 415px) and (max-width: 1090px) {
  .top-news {
    margin-top: 60px;
    padding: 0 40px;
  }
}

.top-news-inner {
  max-width: 930px;
  margin: 0 auto;
  background: #f3f3f3;
  padding: 20px 0;
}

@media screen  and (max-width: 768px) {
  .top-news-inner { 
    padding: 20px 8px 26px 8px;
  }
}


.top-news-inner_head {
  font-size: 20px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 40px;
  margin: 0;
}

@media screen  and (max-width: 768px) {
  .top-news-inner_head {
    display: block;
    text-align: center;
    font-size: 16px !important;
  }
}

.top-news-inner_head span {
  display: block;
  font-size: 18px;
}

@media screen  and (max-width: 768px) {
  .top-news-inner_head span {
    font-size: 15px;
    margin-top: 12px;
  }
}

.top-news-inner_link {
  color: #3f51b5;
  text-decoration: underline;
}

@media screen  and (max-width: 415px) {
  .top #movie h2 {
    /* margin-top: 30px; */
  }
}
@media (min-width: 420px) and (max-width: 1090px) {
  .top #movie h2 {
    /* margin-top: 70px; */
  }
}

.contact-news {
  margin: 40px 0;
}



/* 2023.06.19 ポップアップ修正 */

.sp_btton.active_btn {
  display: none;
}

.close_btn {
  position: absolute;
  display: block;
  right: 10px;
  width: 30px;
  height: 24px;
  z-index: 9999;
  top: 10px; 
}

.close_btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #FFF;
  border-radius: 4px;
}

.close_btn span:nth-child(1) {
  transform: translateY(11px) rotate(-315deg);
  top: 0;
}

.close_btn span:nth-child(2) {
  transform: translateY(-11px) rotate(315deg);
  bottom: 0;
}

@media (min-width: 415px) and (max-width: 991px) {
  .sp_btton {
    top: 20px !important;
  }
}

@media (min-width: 768px) and (max-width: 1090px) {
  .top_menu_sp {
    position: fixed !important;
    display: none;
  }

  header .top_menu_sp {
    display: none;
  }
}

/* end */


/* 2023.07.06 社長ページ */

.message_img {
  max-width: 380px !important;
  margin: 0 auto;
  margin-bottom: 30px;
  margin-top: 70px;
}

@media screen  and (max-width: 767px) {
  .message_img {
    /* margin-bottom: 45px !important; */
    text-align: center;
  }

  .message_img img {
    width: 90%;
  }

  .message_text .sign {
    margin-left: auto !important;
    width: 360px !important;
  }
}

.message p {
  margin: 0;
  margin-top: 30px !important;
}

@media screen  and (max-width: 420px) {
  .message_img img {
    width: 70%;
  }

  .message p:first-child {
    margin-top: 0 !important;
  }

  .message_text .sign {
    margin-left: auto !important;
    width: 210px !important;
  }
}


@media screen  and (max-width: 768px) {
  .message p {
    margin-bottom: 30px !important;
  }

  .sp {
    display: block !important;
  }
}

.tb {
  display: none;
}


@media (min-width: 421px) and (max-width: 1090px) {
  .tb {
    display: block;
  }

  .pc {
    display: none !important;
  }

  .sp {
    display: none !important;
  }
  .message section .container {
    width: 100%;
    padding: 0 30px;
  }

  .tb-banner,
  .tb-banner2 {
    max-width: 750px;
  }

  .tb-banner .item {
    width: 95%;
  }

  .tb-banner .item2 {
    width: 46%;
  }
}

/* 07.26 新宿靖国通店 */

.black_trigger span {
  border: solid 0.5px #fff;
}


/* お問い合わせページ */
@media screen  and (max-width: 768px) {
  .contact .inquiry_store select,
  .contact .shop_name select,
  .ichikakuya_app .inquiry_store select,
  .ichikakuya_app .shop_name select {
    width: 100% !important;
  }
  .sp_banner {
    margin-bottom: 40px;
  }
}


/* 0821 */

@media (min-width: 421px) and (max-width: 1090px) {
  .message_img {
    max-width: 300px !important;
  }
  .message_img img {
    width: 93%;
  }
}

/* 0830 */

.sec-btn {
  margin-bottom: 120px;
}

/* .page-template-m_a .sec04 .performance_row:last-child {
  padding-bottom: 0 !important;
  margin-bottom: 120px;
} */

/* .sec-btn_bottom {
  margin-bottom: 200px;
} */

.sec-btn .m_a-btns {
  text-align: center;
}

.sec-btn .m_a-btns a {
  background: #3b3b3b;
  color: #fff;
  padding: 24px 35px;
  padding-right: 80px;
  font-size: 24px;
  position: relative;
  border-radius: 5px;
  display: inline-block;
  letter-spacing: 2px;
}

.sec-btn .m_a-btns a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 32px;
  transform: translate(-50%, -50%);
  background: url(image/page/m_a/m_a-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
}

.sec-btn .m_a-btns a:hover {
  text-decoration: none;
  opacity: 0.7;
}

@media screen  and (max-width: 768px) {
  .page-template-m_a .sec04 .performance_row:last-child {
    margin-bottom: 40px;
  }

  .sec-btn {
    margin-bottom: 50px;
    padding: 0 20px;
  }

  .sec-btn_bottom {
    margin-bottom: 100px;
  }

  .sec-btn .m_a-btns a {
    font-size: 15px;
    padding: 16px 20px;
    padding-right: 50px;
    letter-spacing: normal;
  }

  .sec-btn .m_a-btns a:after {
    width: 8px;
    height: 10px;
    right: 16px;
  }
}

@media (min-width: 421px) and (max-width: 1090px) {
  .sec-btn_bottom {
    margin-bottom: 180px;
  }
}



.banner_area_layout .flex_items {
  width: 100%;
}

@media (min-width: 421px) and (max-width: 1090px) {
  .banner_area_layout .flex_items {
    width: 46%;
  }
}

@media screen  and (max-width: 767px) {
  .store_detail_img {
    height: 157px;
  }
  /* .store-icon--area img {
    height: 69px;
  } */
}



.philosophy_text {
  max-width: 600px;
  margin: 0 auto;
}


/* 2023.02.19 */

.wpcf7-form-control-wrap select[name=your-sub],
.wpcf7-form-control-wrap select[name=kind] {
  width: 350px;
  padding: 10px;
  border: solid 1px #ccc;
  border-radius: 4px;
  font-size: initial;
  height: auto;
  line-height: initial;
  text-indent: initial;
}

@media screen  and (max-width: 767px) {
  .wpcf7-form-control-wrap select[name=your-sub],
  .wpcf7-form-control-wrap select[name=kind] {
    width: 100%;
  }
}


/* 20230325  */

.banner_area a:focus img {
  opacity: 1 !important;
}


.contact select {
  padding-left: 10px
}



/* 2024.04.19  */


.company .row {
  display: flex;
  flex-wrap: wrap;
  gap: 30px 0;
}

@media screen  and (max-width: 767px) {
  .contact p select {
    width: 100%;
  }
}

.top .box_1_inner .top-about .col-sm-4 {
  margin-bottom: 40px;
}

@media screen  and (max-width: 767px) {
  .top .box_1_inner .top-about .col-sm-4 {
    margin-bottom: 0;
  }
}

.top .box_1_inner .top-about .col-sm-4.company a .img {
  background-image: url(image/top/top-about_01.jpg);
}

.top .box_1_inner .top-about .col-sm-4.ma a .img {
  background-image: url(image/top/top-about_02.jpg);
}

.top .box_1_inner .top-about .col-sm-4.interview a .img {
  background-image: url(image/top/top-about_03.jpg);
}

.top .box_1_inner .top-about .col-sm-4.fra a .img {
  background-image: url(image/top/top-about_04.jpg);
}

.top .box_1_inner .top-about .col-sm-4.recruit a .img {
  background-image: url(image/top/top-about_05.jpg);
}

.top .box_1_inner .top-about .col-sm-4.esg a .img {
  background-image: url(image/top/top-about_06.jpg);
}



.shop_name {
  display: none;
}

.shop_name.active {
  display: block;
}

.interview .wp-pagenavi a:hover {
  text-decoration: none;
}

#headbar ul {
  width: 800px;
}

.top_menu ul {
  width: 870px;
}



.sp_banner a:hover,
.sp_banner a:focus,
.sp_banner a:hover img,
.sp_banner a:focus img,
.sp_bannerg a:active img,
.sp_banner a:focus-visible img, 
.sp_banner a:focus-within img,
.sp_banner a:target img {
  opacity: 1 !important;
  color: transparent;
}



@media (max-width: 1290px) {
  #headbar.head_popup .sp_menu_btn {
    top: 160px;
  }

  #headbar.head_popup .sp_menu_btn.drawer_open {
    top: 30px;
  }

  #headbar .globalnav li.lv1 > ul li.sp {
    display: block !important;
  }
}

@media screen  and (max-width: 767px) {
  #headbar.head_popup .sp_menu_btn {
    top: 170px;
  }

  #headbar.head_popup .sp_menu_btn.drawer_open {
    top: 10px;
  }
}


@media screen  and (max-width: 767px) {
  .sp_none {
    display: none !important;
  }
}


@media screen  and (min-width: 768px) {
  .sp_none {
    display: block !important;
  }
}

@media screen  and (max-width: 767px) {
  .pc_none {
    display: block !important;
  }
}


@media screen  and (min-width: 768px) {
  .pc_none {
    display: none !important;
  }
}


/* 08.07 */

@media (max-width: 1290px) {
  .wpcf7-form-control-wrap input[type='radio'] {
    width: 30px !important;
  }
}



/* 2024.08.14 */

.interview {
  padding-top: 24px;

}

.interview .secHeading h2 {
  margin-bottom: 54px;
}

h2.top_text {
  margin-top: 90px;
  margin-bottom: 48px;
  font-size: 29px;
  font-weight: 700;
}

.top_text_detail {
  line-height: 28px;
}

.company .row {
  margin: 0;
}

.company .row .col-sm-4 {
  padding-left: 12px;
  padding-right: 12px;
  padding-top: 0;
  padding-bottom: 0;
  /* margin-bottom: 30px; */
}

.company .contents_under {
  padding: 40px 15px; 
}

.company .contents_under p {
  font-size: 15px;
}

.message_img {
  margin-top: 20px;
  margin-bottom: 60px;
}

.message p:first-child {
  margin-top: 0 !important;
}

.message_text {
  max-width: 800px;
  margin: auto;
  margin-top: 40px;
}

.message .sec01 {
  margin-bottom: 120px;
}

@media screen  and (max-width: 767px) {
  .message_img {
    margin-top: 25px;
		margin-bottom: 50px;
  }

  h2.top_text {
    margin-top: 60px;
    /* padding-bottom: calc(12 / 640* 100vw); */
    margin-bottom: calc(55 / 640* 100vw);
    font-size: calc(38/640*100vw);
  }

  #contents .top_text_detail {
    font-size: calc(28/640*100vw);
    line-height: calc(46/640*100vw);
  }

  .sec01 .container,
  .philosophy .bg_gray .container,
  .code-of-conduct .container,
  .overview .container,
  .history .bg_gray .container,
  .contact .container,
  .brand .container {
    /* padding: 0 35px; */
  }

  .company .sec01 .row {
    margin-top: 60px;
    padding-bottom: 30px;
  }

  .company .sec01 .row .col-sm-4 {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
  }


  .company .col-sm-4 .contents_under {
    padding: 40px 24px;
  }

  #contents.company .col-sm-4 .contents_under h3 {
    font-size: calc(34/640*100vw);
  }

  #contents.company .col-sm-4 .contents_under p {
    font-size: calc(28/640*100vw);
    margin-top: 30px;
  }

  .overview .table_css_wrap {
    margin-top: 0;
  }

  #contents ul.history_list {
    margin-top: 60px;
    margin-bottom: 60px;
  }

  /* .message section .container,
  .philosophy .bg_gray .container {
    padding: 0 20px;
  } */

  .contact .container,
  .corporation .container {
    padding: 0 16px;
  }

  .general .container {
    padding: 0 15px;
  }

  .message_text {
    /* padding-bottom: 60px; */
  }

  .contact .bg_gray .container {
    /* padding-bottom: 30px; */
  }

  #contents.ma .top_text {
    font-size: 20px;
  }

  /* #contents.fc_contact .top_text {
    font-size: calc(38/640*100vw);
  } */

  #contents.ma .container,
  .transaction .container,
  #contents.fc_contact .container
  {
    padding: 0;
  }
  
}


/* 2024.08.14 */

.formrun input {
  width: 350px;
  border: 1px solid #CCC;
  border-radius: 4px;
  padding: 10px;
  color: #777;
  font-size: 0.9em;
}

.formrun textarea {
  width: 100%;
  border: 1px solid #CCC;
  border-radius: 4px;
  padding: 10px;
  color: #777;
  font-size: 0.9em;
}


.formrun .form_list {
  margin-bottom: 16px;
}

.formrun .form_list span {
  color: #777;
  font-size: 0.9em;
}

.text-danger {
  font-size: 13px;
  color: #f00;
}

.formrun .form_list.time .form_block {
  display: flex;
  align-items: center;
  gap: 0 8px;
}

@media screen  and (max-width: 767px) {
  .formrun .form_list.time .form_block {
    flex-wrap: wrap;
  }
}

.formrun .form_list.time .form_block select {
  width: 100px;
}

.formrun .form-submit {
  background-color: #000;
  border: none;
  border-radius: 4px;
  width: 250px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  margin-top: 32px;
  padding: 12px;
}

.form_list-radio {
  display: flex;
  gap: 0 8px;
}

.form_list-radio .form-radio input {
  width: auto;
}

.form_list-radio .form-radio label {
  color: #777;
  font-size: .9em;
}

@media screen  and (max-width: 767px) {
  .formrun input {
    width: 100%;
  }
}


.thanks .red {
  color: #ea535d;
}

.thanks_btn {
  text-align: center;
  margin-bottom: 80px;
}

.thanks_btn-link {
  padding: 24px;
  border: solid 1px #333;
  display: inline-block;
  color: #333;
  position: relative;
  width: 300px;
  font-weight: 700;
}

.thanks_btn-link:hover {
  opacity: 0.8;
  text-decoration: none;
  color: #333;
}

.thanks_btn-link:after {
  content: '';
    display: block;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -5px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* .brnad_contact section .container {
  width: 700px;
}

.brnad_contact section > .container {
  width: 1000px;
}
 */

 .philosophy_inner {
  margin-bottom: 0px;
 }


 .philosophy_inner h4 {
  margin-bottom: 0;
 }

 .philosophy_inner h5 {
  margin-top: 45px;
 }

 .philosophy_inner p {
  margin: 0;
 }

 #contents .top_text_detail {
  margin-top: 0;
  margin-bottom: 90px;
 }

 .code-of-conduct_inner p {
  margin: 0;
}

.overview .bg_gray h2.top_text,
.general .bg_gray h2.top_text {
  padding-top: 90px;
  margin-top: 0;
}

.overview .bg_gray .container {
  /* padding-bottom: 120px; */
}

.overview .bg_gray .container p {
  margin: 0;
  margin-top: 16px;
}

 @media screen  and (max-width: 767px) {

  #contents .philosophy_inner {
    /* margin-bottom: 60px; */
  }

  #contents .bg_gray .philosophy_inner {
    margin-bottom: 0px;
  }

  .philosophy_inner h4 {
    margin-top: 0;
  }

  #contents.philosophy .bg_gray {
    padding-top: 45px;
    /* padding-bottom: 60px; */
  }

  #contents .philosophy_inner h3 {
    margin-bottom: 30px;
  }

  #contents .philosophy_inner h4 {
    margin-bottom: 0;
  }

  .philosophy_inner h5 {
    margin-top: 30px;
  }

  #contents.code-of-conduct .bg_gray .container {
    padding-top: 0;
    padding-bottom: 0px;
  }

  #contents .code-of-conduct_inner:last-child {
    padding-bottom: 0;
  }

  .overview .bg_gray h2.top_text,
  .general .bg_gray h2.top_text {
    padding-top: 60px;
  }

  

 }

@media (min-width: 768px) and (max-width: 1000px) {
  .count_table ul li {
    font-size: 22px;
  }
}

.top_text_detail {
  margin-bottom: 80px;
}

.photo_gallery ul {
  margin: 0 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px 0;
}

.photo_gallery ul li {
  float: none;
  display: block;
  padding-bottom: 0;
}
.photo_gallery ul li a {
  overflow: auto;
  height: auto;
}

.photo_gallery ul li img {
  position: initial;
  transform: none;
  height: 200px;
  object-fit: cover;
  width: 100%;
}

.brand_data {
  margin-top: 0;
}

.brand_btn_area,
.area_box {
  /* margin-top: 90px; */
  margin-bottom: 0;
}

.area_box {
  padding: 90px 50px;
  margin-bottom: 0px;
  margin-top: 90px;
}

.area_box h3 {
  margin: 0;
  margin-bottom: 40px;
}

h3.brand_name {
  margin-bottom: 5px;
}

body.colorbox_open {
  overflow: hidden;
}

@media screen  and (max-width: 767px) {
  .code-of-conduct_bg h1 {
    text-align: center;
    margin-bottom: 12px;
    font-size: calc(38/640*100vw);
  }

  #contents .top_text_detail {
    margin-bottom: 60px;
  }

  .photo_gallery ul li img {
    height: 100px;
  }

  .area_box {
    margin-top: 45px;
    /* margin-bottom: 60px; */
  }

  .photo_gallery ul li {
    padding-bottom: 8px;
  }

  #contents .photo_gallery .wrap {
    height: auto;
    /* margin-bottom: 52px; */
  }

  .photo_gallery ul li a {
    margin-left: 4px;
    margin-right: 4px;
  }

  #contents .brand_btn_area {
    margin-top: 0px;
    margin-bottom: 50px;
  }

  #contents .brand_btn_area ul li {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .brand_btn_area ul li a {
    padding: 35px 30px;
    font-size: 19px;
  }

  #contents .area_box {
    margin-top: 0;
    padding: 50px 10px;
  }

  #contents .area_box h3 {
    margin-top: 0;
    margin-bottom: 22px;
  }

  #contents .area_box h3.brand_name {
    margin-bottom: 0;
  }

  #contents .area_title h4 {
    font-size: 16px;
  }

  ul.area_1_list {
    margin-top: 0;
  }

  #contents .detail_img_wrap {
    width: 100%;
    padding-right: 0;
    max-width: none;
  }

  .detail_img_wrap .store_detail_img {
    width: 100%;
    height: auto;
  }

  .privacy .container {
    padding: 0 36px;
  }

  #contents.privacy p:last-child {
    margin-bottom: 60px;
  }

}


@media (min-width: 768px) and (max-width: 1290px) {
  .store_area_detail ul.main_loop {
    max-width: 700px;
    margin: auto;
  }
}




#my-message-error-grecaptcha {
  color: #f00;
  font-size: 13px;
  font-weight: normal;
  margin-top: 4px;
}

@media screen  and (max-width: 768px) {
  #my-message-error-grecaptcha {
    font-size: 11.3px;
  }
}

.error_message {
  display: none;
  border: 2px solid #f7e700;
  margin: 30px 0;
}


.grecaptcha-badge {
  visibility: hidden;
}

.wpcf7-form .wpcf7-radio span {
  font-size: 15px;
}


footer ul li a[target="_blank"]:visited,
footer ul li a[target="_blank"]:focus {
  color: #fff;
  text-decoration: none;
}

footer ul li a[target="_blank"]:hover {
  text-decoration: underline;
}




.history {
  position: relative;
}

.history_item {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  text-align: left;
}

.history_item:nth-child(even) {
  justify-content: flex-start;
}

.history_item .history_inner {
  position: relative;
  width: 50%;
  padding-left: 70px;
  padding-top: 4px;
  margin-top: 20px;
}

.history_inner:before {
  content: '';
  width: 60px;
  height: 2px;
  background-color: #000;
  display: block;
  position: absolute;
  top: 15px;
  left: 0;
  z-index: 2;
}

.history_inner:after {
  width: 20px;
  height: 20px;
  display: block;
  background-color: #5ac877;
  content: "";
  border-radius: 50%;
  position: absolute;
  top: 6px;
  z-index: 2;
  left: -9px;
}

.history_item:nth-child(even) .history_inner {
  padding-left: 0;
  padding-right: 70px;
  text-align: right;
}

.history_item:nth-child(even) .history_inner:before {
  left: auto;
  right: 0;
}

.history_item:nth-child(even) .history_inner:after {
  left: auto;
  right: -9px;
}

.history_inner small {
  font-size: 16px;
  color: #999;
}

.history_inner p {
  font-size: 18px;
  margin-top: 5px;
  margin-bottom: 0;
}

.history_wrap {
  position: relative;
  /* margin-top: 90px; */
  /* margin-bottom: 120px; */
}

.history_wrap:after {
  content: "";
  width: 2px;
  display: block;
  background-color: #000;
  position: absolute;
  left: 50%;
  top: 10px;
  height: calc(100% - 70px);
}

.history_item:first-child .history_inner {
  margin-top: 0;
}


@media screen  and (max-width: 767px) {

  .history_item {
    justify-content: flex-start;
  }

  .history_item .history_inner,
  .history_item:nth-child(even) .history_inner {
    padding-right: 0;
    padding-left: 40px;
    text-align: left;
    width: 100%;
  }


  .history_inner:before,
  .history_item:nth-child(even) .history_inner:before {
    right: 0;
    left: 20px;
    width: 15px;
  }

  .history_inner:after,
  .history_item:nth-child(even) .history_inner:after {
    right: auto;
    left: 5px;
  }

  .history_wrap {
    margin-bottom: 0;
  }

  .history_wrap:after {
    left: 14px;
  }

}


@media screen  and (max-width: 767px) {
  .detail_img_wrap .store_detail_img {
    height: 190px;
    object-fit: cover;
  }
}