@charset "UTF-8";
/**====================================
 * CSS information
 * file name	: style.css
 * author		: libretto works
====================================**/

/*/////////////////////////////////////////////////////////////////////////////


              // Top //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* visual
-------------------------------------------------- */
.visual {
	position: relative;
	width: 100%;
	height: calc(100vh - 130px);
	box-sizing: border-box;
	padding-left: 6.5885%;
	margin-bottom: 100px;
}
.visual-main {
	width: 100%;
	height: 100%;
	position: relative;
	padding-left: 215px;
	box-sizing: border-box;
}
.visual-slider {
	opacity: 0;
	position: relative;
}
.visual-slider::after {
	content: "";
	width: 350px;
	height: 353px;
	position: absolute;
	left: -279px;
	top: 50%;
	margin-top: -220px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="340" height="363" viewBox="0 0 340 363"><path fill-rule="evenodd" fill="rgb(255, 255, 255)" d="M7.823,197.926 L7.204,196.51 C4.241,180.271 11.77,162.109 17.835,151.328 C32.11,128.967 28.486,108.696 6.3,83.835 C-2.323,74.440 -2.91,60.478 7.514,40.968 C11.19,36.222 14.718,31.945 18.862,27.844 C23.587,23.391 28.719,19.388 34.160,15.970 C93.593,-21.213 192.531,8.451 264.415,84.929 C313.235,136.838 341.470,200.973 339.921,256.475 C339.88,288.875 328.69,316.79 308.45,335.101 C303.340,339.632 298.150,343.635 292.669,347.131 C233.353,384.179 134.454,354.494 62.509,278.75 C39.563,253.604 21.128,226.615 7.823,197.926 "/></svg>') no-repeat center center;
	background-size: 100% 100%;
}
.visual-slider .thumb {
	height: calc(100vh - 130px);
	border-radius: 30px 0 0 30px;
}
.visual-ttl {
	position: absolute;
	left: -10px;
	top: 50%;
	transform: translateY(-75%);
	opacity: 0;
}
.visual-ttl .ttl {
	position: relative;
	display: inline-block;
	font-size: 3.4rem;
	line-height: 2;
	letter-spacing: 0.14em;
	padding-bottom: 20px;
	margin-bottom: 15px;
	font-weight: 500;
}
.visual-ttl .ttl span {
	opacity: 0;
	filter: blur(6px);
	transition: .6s .4s;
}
.visual-ttl .ttl::after {
	content: "";
	width: 100%;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	bottom: 0;
	transform-origin: left center;
	transform: scaleX(0);
}
.visual-ttl .en-ttl {
	position: relative;
	font-size: 1.0rem;
	letter-spacing: 0.10em;
	line-height: 2.2;
	text-decoration: underline;
	opacity: 0;
	filter: blur(6px);
	transition: .6s .4s;
}
.motion .visual-slider {
	animation: fade 1s forwards 0.55s;
}
.motion .visual-ttl {
	animation: fade 0.6s forwards;
}
.motion .visual-ttl .ttl span {
	animation: fade 0.6s forwards .4s;
	filter: blur(0);
}
.motion .visual-ttl .en-ttl {
	animation: fade 0.6s forwards .4s;
	filter: blur(0);
}
.motion .visual-ttl .ttl::after {
	animation: ttl-stretch 0.55s cubic-bezier(0.76, 0.09, 0.215, 1) forwards;
}



/* t-companyArea
-------------------------------------------------- */
.t-companyArea-main {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: row-reverse;
	padding-bottom: 150px;
	position: relative;
	overflow: hidden;
}
.t-companyArea-main::before {
	content: "";
	width: 100%;
	height: 40%;
	background: #f7f7f7;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.t-companyArea-block {
	width: 50%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	position: relative;
	z-index: 1;
}
.t-companyArea-img01 {
	width: 45%;
	margin-bottom: 10px;
	border-radius: 8px;
}
.t-companyArea-img01::after {
	padding-top: 70%;
}
.t-companyArea-block-inner {
	width: 100%;
}
.t-companyArea-block .subttl {
	font-size: 2.6rem;
	line-height: 2.2;
	letter-spacing: 0.16em;
	margin-bottom: 25px;
	font-weight: 500;
}
.t-companyArea-block .txt {
	line-height: 2.2;
}
.t-companyArea-side {
	width: 40.3605%;
	padding: 150px 0 0;
}
.t-companyArea-img02 {
	width: 100%;
	border-radius: 0 12px 12px 0;
}
.t-companyArea-img02::after {
	padding-top: 118.4466%;
}
.icon-rc {
	width: 80.5%;
	position: absolute;
	right: -60px;
	bottom: -10px;
}
.t-companyArea-nav {
	background: #f7f7f7;
	padding-bottom: 100px;
}
.t-companyArea-nav-slider {
	padding-bottom: 50px;
}
.t-companyArea-nav .btn {
	text-align: right;
	padding-right: 6.5885vw;
}

/*-- countNav-item --*/
.countNav-item {
	width: 27vw;
	margin-right: 2.1961vw;
}
.countNav-item .thumb {
	margin-bottom: 25px;
	border-radius: 6px;
}
.countNav-item .thumb::after {
	padding-top: 66.6666%;
}
.countNav-item .ttl {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="36" height="8" viewBox="0 0 36 8"><path fill-rule="evenodd" fill="none" stroke="rgb(26, 26, 26)" d="M28,0.3l6.8,7.2H0"/></svg>') no-repeat right 10px top 11px;
	background-size: 36px auto;
	line-height: 1.6;
	display: flex;
	justify-content: flex-start;
	padding-left: 10px;
	padding-right: 55px;
	font-weight: 500;
}
.countNav-item .ttl .en {
	display: block;
	color: #999999;
	margin-right: 10px;
	padding-top: 4px;
	font-size: 1.4rem;
}

/* t-serviceArea
-------------------------------------------------- */
.t-serviceArea {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-top: 130px;
	margin-bottom: 80px;
	position: relative;
}
.t-serviceArea-side {
	width: 25%;
	position: sticky;
	top: 15%;
	left: 0;
}
.t-serviceArea-side .txt {
	font-size: 1.5rem;
	margin-bottom: 45px;
}
.t-serviceArea-side .btn a {
	width: 240px;
}
.t-serviceArea-nav {
	width: 67%;
}
.serviceNav-item-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}

/* t-qualityArea
-------------------------------------------------- */
.t-qualityArea {
	background: #f7f7f7;
	padding-bottom: 80px;
}
.t-qualityArea-ttl {
	background: url("../images/t_quality_ttl.jpg") center center no-repeat;
	background-size: cover;
	height: 450px;
	box-sizing: border-box;
	padding-top: 110px;
}
.t-qualityArea-ttl .lead {
	font-size: 2.6rem;
	letter-spacing: 0.16em;
	margin-top: -5px;
}
.t-qualityArea-nav {
	margin-top: -100px;
}
.t-qualityArea-nav-inner {
	background: #FFFFFF;
	padding: 80px 0 80px 5.8565vw;
	border-radius: 12px 0 0 12px;
}
.t-qualityArea-nav-slider {
	padding-bottom: 35px;
}
.t-qualityArea-nav .btn {
	text-align: right;
	padding-right: 6.5885vw;
}

/*-- countNav-item --*/
.t-qualityArea-nav .countNav-item {
	width: 29.2825vw;
	margin-right: 3.2942vw;
}

/* t-productsArea
-------------------------------------------------- */
.t-productsArea {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	padding-top: 120px;
	padding-bottom: 110px;
}
.t-productsArea-img01 {
	width: 45.8684%;
	max-height: 640px;
	border-radius: 12px;
}
.t-productsArea-img01.thumb::after {
	padding-top: 114%;
}
.t-productsArea-main {
	width: 44%;
	position: relative;
}
.t-productsArea-block {
	padding-top: 6%;
}
.t-productsArea-block .txt {
	margin-bottom: 45px;
}
.t-productsArea-img02 {
	width: 57.4712%;
	max-width: 360px;
	position: absolute;
	bottom: -150px;
	right: 0;
	z-index: 1;
	border-radius: 8px;
}
.t-productsArea-img02.thumb::after {
	padding-top: 75%;
}

/* t-newsArea
-------------------------------------------------- */
.t-newsArea {
	padding: 120px 0 280px;
	background: #f7f7f7;
	display: flex;
	justify-content: space-between;
}
.t-newsArea-main {
	width: 70%;
	border-top: 1px solid #d9d9d9;
}
.news-list li {
	border-bottom: 1px solid #d9d9d9;
}
.news-list li a {
	display: block;
	padding: 30px 35px 30px 20px;
	position: relative;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="36" height="8" viewBox="0 0 36 8"><path fill-rule="evenodd" fill="none" stroke="rgb(26, 26, 26)" d="M28,0.3l6.8,7.2H0"/></svg>') no-repeat right 25px center;
	background-size: 36px auto;
}
.news-list li a::before {
	content: "";
	width: 100%;
	height: 1px;
	background: #595959;
	position: absolute;
	left: 0;
	bottom: -1px;
	transform: scaleX(0);
	transform-origin: left top;
	transition: 0.3s cubic-bezier(0.76, 0.09, 0.215, 1);
}
.news-head {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 15px;
}
.news-head .date {
	line-height: 32px;
	font-size: 1.4rem;
}
.news-head .cate-wrap {
	display: flex;
	justify-content: flex-start;
	margin-left: 20px;
}
.news-head .cate {
	font-size: 1.2rem;
	line-height: 1.5;
	padding: 7px 16px 7px;
	border: 1px solid #cccccc;
	margin-left: 10px;
}
.news-list li a .ttl {
	line-height: 1.75;
}
.t-newsArea .btn {
	text-align: right;
	margin-top: 40px;
}
@media screen and (min-width: 768px) {
	.news-list li a:hover::before {
		transform: scaleX(1);
	}
}

/* linkbnrArea
-------------------------------------------------- */
.linkbnrArea {
	padding: 0 0 80px;
	margin-top: -160px;
	position: relative;
}
.linkbnr-block {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 0 12px 12px 0;
	overflow: hidden;
}
.recruit-bnr .linkbnr-block {
	background-image: url("../images/ttl_recruit.jpg");
}
.linkbnr-block a {
	height: 340px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background: rgba(42,44,46,0.60);
	color: #FFFFFF;
	padding: 0 8.7579%;
	position: relative;
}
.linkbnr-block a .sec-ttl {
	padding-right: 7.9617%;
}
.linkbnr-block a .arrow {
	position: absolute;
	top: 50%;
	right: 8.7579%;
	margin-top: -30px;
}

/* bnr-block
-------------------------------------------------- */
.bnr-block {
	width: 980px;
	margin: 0 auto;
}
.bnr-block a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
	width: 100%;
	height: 220px;
	box-sizing: border-box;
	border: 1px solid #cccccc;
}
.bnr-block .thumb {
	width: 410px;
	height: 100%;
	transform: scale(1) !important;
}
.bnr-block .bnr-block-inner {
	width: 570px;
	padding: 0 50px 10px;
}
.bnr-block .ttl {
	font-size: 2.6rem;
	line-height: 1.75;
	border-bottom: 1px solid #d9d9d9;
	letter-spacing: 0.10em;
	margin-bottom: 15px;
}
.bnr-block .ttl .en-ttl {
	font-size: 4.0rem;
	margin-left: 10px;
}
.bnr-block .ttl .en-ttl span {
	font-size: 1.6rem;
	margin-left: 15px;
}
.t-bnrArea {
	margin-bottom: 80px;
}


/*/////////////////////////////////////////////////////////////////////////////


              // indexNav-list //
	  

/////////////////////////////////////////////////////////////////////////////*/

.indexNav-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 70px;
}
.indexNav-list::after {
	content: "";
	display: block;
	width: 31%;
}
.indexNav-item {
	width: 31%;
	margin-bottom: 70px;
}
.indexNav-item a {
	display: block;
	position: relative;
	padding-bottom: 40px;
}
.indexNav-item a::before {
	content: "";
	width: 100%;
	height: 1px;
	background: #d9d9d9;
	position: absolute;
	left: 0;
	bottom: 0;
}
.indexNav-item .thumb {
	border-radius: 6px;
}
.indexNav-item .thumb::after {
	padding-top: 66.6666%;
}
.indexNav-item-inner {
	padding-top: 17px;
}
.indexNav-item .numb {
	color: #999999;
	font-size: 1.3rem;
	margin-bottom: 3px;
}
.indexNav-item .ttl {
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 1.75;
	margin-bottom: 10px;
	padding-right: 40px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="36" height="8" viewBox="0 0 36 8"><path fill-rule="evenodd" fill="none" stroke="rgb(26, 26, 26)" d="M28,0.3l6.8,7.2H0"/></svg>') no-repeat right 10px top 15px;
	background-size: 36px auto;
}
.indexNav-item .txt {
	font-size: 1.4rem;
}

/*/////////////////////////////////////////////////////////////////////////////


              // COMPANY //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* PHILOSOPHY
-------------------------------------------------- */
.company-philosophy {
	text-align: center;
	margin-bottom: 60px;
}
.company-philosophy-logo {
	width: 71.9%;
	margin: 0 auto 35px;
}
.company-philosophy .ttl {
	font-size: 2.4rem;
}
.company-philosophy-img {
	max-width: 840px;
	margin: 45px auto 0;
}
.company-motto-ttl {
	font-size: 5.0rem;
	margin-top: -20px;
}
.company-kihan-list {
	margin-bottom: 15px;
}
.company-kihan-list li {
	position: relative;
	padding: 0 0 10px 40px;
}
.company-kihan-list li::before {
	content: "一、";
	position: absolute;
	left: 0;
	top: 0;
}

/* OUTLINE
-------------------------------------------------- */
.affiliated-ttl {
    font-size: 2.0rem;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto 65px;
    padding: 13px 0;
    margin-bottom: 35px;
}
.affiliated-ttl._kometsune {
    background-image: url("../images/logo_kometsune.jpg");
    padding-left: 137px;
}
.affiliated-ttl._thailand {
    background-image: url("../images/logo_thailand.jpg");
    padding-left: 86px;
}

/* PLACE
-------------------------------------------------- */
.company-place {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-top: 40px;
	margin-bottom: 50px;
}
.company-place-block {
	width: 51.6129%;
	line-height: 1.75;
}
.company-place-block .ttl {
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: 0.12em;
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 15px;
	margin-bottom: 25px;
	line-height: 1.9;
}
.company-place-block .ttl span {
    font-size: 2.0rem;
}
.company-place-block .address {
	margin-bottom: 8px;
}
.company-place-block .btn {
	margin-top: 25px;
}
.company-place-map {
	width: 42.1836%;
	height: 280px;
}
.company-place-map iframe {
	width: 100%;
	height: 100%;
}

/* MEDIA
-------------------------------------------------- */
.youtube::after {
    padding-top: 56.25% !important;
}
.media-ttl {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	padding: 35px 0 30px;
}
.media-ttl::before {
	content: "";
	width: 120px;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	top: 0;
}
.media-ttl .ttl {
	width: calc(100% - 155px);
	font-size: 2.4rem;
	font-weight: 500;
}
.media-ttl .fan-logo {
	width: 125px;
}
img.bd {
	border: 1px solid #d9d9d9;
}

/*/////////////////////////////////////////////////////////////////////////////


              // SERVICE //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* serviceNav-list
-------------------------------------------------- */
.serviceNav-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 50px;
}

/* serviceNav-item
-------------------------------------------------- */
.serviceNav-item {
	width: 47%;
	margin-bottom: 60px;
}
.serviceNav-item .thumb-wrap {
	position: relative;
}
.serviceNav-item .thumb {
	border-radius: 6px;
}
.serviceNav-item .thumb::after {
	padding-top: 66.6666%;
}
.serviceNav-item .serviceNumb {
	position: absolute;
	left: 20px;
	bottom: -30px;
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	color: #666666;
}
.serviceNav-item .serviceNumb .txt {
	writing-mode: vertical-rl;
	font-size: 1.4rem;
	line-height: 1;
	padding: 0 15px 5px 0;
}
.serviceNav-item .serviceNumb .numb {
	font-size: 5.2rem;
	line-height: 1;
}
.serviceNav-list .serviceNav-item-inner .ttl {
	font-size: 2.8rem;
	font-weight: 500;
}
.serviceNav-item-inner {
	padding: 45px 20px 0;
}
.serviceNav-item-inner .ttl {
	font-size: 2.8rem;
	line-height: 1.75;
	margin-bottom: 5px;
	font-weight: 500;
}
.serviceNav-item-inner .btn-txt {
	margin-top: 15px;
}
.t-serviceArea-nav .serviceNav-item {
	margin-bottom: 50px;
}
.t-serviceArea-nav .serviceNav-item .serviceNumb {
	bottom: -15px;
}
.t-serviceArea-nav .serviceNav-item .serviceNumb .txt {
	font-size: 1.2rem;
	padding: 0 10px 0 0;
}
.t-serviceArea-nav .serviceNav-item .serviceNumb .numb {
	font-size: 3.6rem;
}
.t-serviceArea-nav .serviceNav-item-inner {
	padding: 35px 20px 0;
}
.t-serviceArea-nav .serviceNav-item-inner .ttl {
	font-size: 2.5rem;
}

/* service-head
-------------------------------------------------- */
.service-head {
	display: flex;
	justify-content: space-between;
	position: relative;
}
.service-head-ttl {
	width: 29.5%;
}
.service-head-ttl .ttl {
	font-size: 3.0rem;
	letter-spacing: 0.12em;
	line-height: 2.2;
	writing-mode: vertical-rl;
	white-space: normal;
	position: relative;
	padding-bottom: 120px;
}
.service-head-ttl .ttl span {
	position: relative;
}
.service-head-ttl .ttl::before {
	content: "";
	width: 220px;
	height: 236px;
	position: absolute;
	right: -70px;
	top: -130px;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="340" height="363" viewBox="0 0 340 363"><path fill-rule="evenodd" fill="rgb(255, 255, 255)" d="M7.823,197.926 L7.204,196.51 C4.241,180.271 11.77,162.109 17.835,151.328 C32.11,128.967 28.486,108.696 6.3,83.835 C-2.323,74.440 -2.91,60.478 7.514,40.968 C11.19,36.222 14.718,31.945 18.862,27.844 C23.587,23.391 28.719,19.388 34.160,15.970 C93.593,-21.213 192.531,8.451 264.415,84.929 C313.235,136.838 341.470,200.973 339.921,256.475 C339.88,288.875 328.69,316.79 308.45,335.101 C303.340,339.632 298.150,343.635 292.669,347.131 C233.353,384.179 134.454,354.494 62.509,278.75 C39.563,253.604 21.128,226.615 7.823,197.926 "/></svg>') no-repeat center center;
	background-size: 100% auto;
}
.service-head-cont {
	width: 66.5794%;
	padding: 75px 0 120px;
	position: relative;
}
.service-head-cont .lead {
	line-height: 2.2;
}
.service-head-anchor {
	position: relative;
	border-top: 1px solid #d9d9d9;
	margin-top: 50px;
	padding-top: 45px;
}
.service-head-anchor::before {
	content: "";
	width: 60px;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	top: -1px;
}


/* bd-t list-box
-------------------------------------------------- */
.bd-t {
	border-top: 1px solid #d9d9d9;
	position: relative;
}
.bd-t::before {
	content: "";
	width: 60px;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	top: -1px;
}
.list-box-col3 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.list-box-col3::after {
	content: "";
	display: block;
	width: 30.8%;
}
.list-box-col3 .list-box {
	width: 30.8%;
}
.list-box-col2 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.list-box-col2 .list-box {
	width: 47%;
}
.list-box {
	padding: 30px 0 45px;
}
.list-box .ttl {
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.75;
	padding-bottom: 15px;
}
.list-box .caption {
	margin: 7px 0;
}
.list-box .thumb-img img {
	border-radius: 6px;
}

/* SEIMAI
-------------------------------------------------- */
.sec-seimai-feature {
	background: #f7f7f7;
	position: relative;
	padding-bottom: 120px;
}
.sec-seimai-feature::before {
	content: "";
	width: 100%;
	height: 195px;
	background: #FFFFFF;
	position: absolute;
	left: 0;
	top: -1px;
}
.seimai-feature-top {
	position: relative;
	display: flex;
	justify-content: flex-end;
	max-width: 1280px;
}
.seimai-feature-top-block {
	position: absolute;
	left: 0;
	top: 0;
}
.seimai-feature-top-block-ttl {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 2.2;
	margin-bottom: 30px;
}
.seimai-feature-top-img {
	width: 55%;
	mix-blend-mode: multiply;
	margin-bottom: 80px;
}
.seimai-feature-btm {
	padding-right: 8.0527%;
	display: flex;
	justify-content: space-between;
}
.seimai-feature-btm-img {
	width: 54%;
}
.seimai-feature-btm-img .thumb {
	width: 100%;
	height: 620px;
	border-radius: 0 12px 12px 0;
}
.seimai-feature-btm-block {
	width: 38%;
	padding-top: 20px;
}
.sec-seimai-factory {
	padding: 95px 0 80px;
}
.seimai-factory-wrap {
	padding-bottom: 50px;
}
.seimai-factory {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}
.seimai-factory .thumb {
	width: 31.9715%;
	border-radius: 6px;
}
.seimai-factory .thumb::after {
	padding-top: 75%;
}
.seimai-factory-block {
	width: 62.1669%;
	border-top: 1px solid #d9d9d9;
	padding-top: 30px;
	line-height: 1.75;
}
.seimai-factory-block .ttl {
	font-size: 2.4rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}
.seimai-factory-block-col2 {
	display: flex;
	justify-content: space-between;
	margin-top: 25px;
}
.seimai-factory-block-col2 .block {
	width: 48%;
}
.seimai-factory-block-col2 .block .subttl {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
	border-left: 2px solid #333333;
	padding-left: 25px;
}
.seimai-factory-block-col2 .block .subttl span {
	font-size: 1.4rem;
	display: block;
}
.seimai-factory-block-col2 .block .table {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	font-size: 1.4rem;
}
.seimai-factory-block-col2 .block .table dt {
	width: 25%;
	border-top: 1px solid #d9d9d9;
	padding: 15px 0;
}
.seimai-factory-block-col2 .block .table dd {
	width: 75%;
	border-top: 1px solid #d9d9d9;
	padding: 15px 0;
}
.seimai-factory-block-col2 .block .table dd .inner {
	border-left: 1px solid #d9d9d9;
	padding-left: 20px;
}
.sec-seimai-flow {
	padding: 95px 0 110px;
	background: #f7f7f7;
}
.seimai-flow {
	background: #FFFFFF;
	padding: 35px 35px 35px 0;
	display: flex;
	justify-content: flex-start;
	margin-top: 15px;
}
.seimai-flow .numb {
	width: 14% !important;
	color: #999999;
	text-align: center;
	line-height: 1.35;
	display: flex;
	justify-content: center;
	align-items: center;
	border-right: 1px solid #d9d9d9;
	margin-right: 40px;
}
.seimai-flow .numb p {
	font-weight: 600;
}
.seimai-flow .numb p span {
	font-size: 4.0rem;
	display: block;
}
.seimai-flow-block {
	width: calc(86% - 520px);
	font-size: 1.4rem;
	line-height: 1.75;
	padding: 10px 0;
}
.seimai-flow-block._col1 {
	width: calc(86% - 285px);
}
.seimai-flow-block .ttl {
	font-size: 2.4rem;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}
.seimai-flow-img {
	display: flex;
	justify-content: flex-end;
	margin-left: 10px;
}
.seimai-flow-img .item {
	width: 220px !important;
	margin-left: 15px;
	font-size: 1.3rem;
}
.seimai-flow-img .item img {
	border-radius: 6px;
}

/* KAKOUMAI
-------------------------------------------------- */
.sec-kakoumai-feature {
    padding: 0 0 110px;
}
.kakoumai-feature-col2 {
    display: flex;
	justify-content: space-between;
}
.kakoumai-feature-col2 .thumb {
	width: 47%;
	border-radius: 6px;
}
.kakoumai-feature-col2 .thumb::after {
    padding-top: 75%;
}
.kakoumai-feature-col2 .block {
	width: 45%;
    padding: 20px 0 40px;
}
.kakoumai-feature-col2 .block .subttl {
    font-size: 2.2rem;
	font-weight: 500;
	margin-bottom: 20px;
}
.sec-kakoumai-factory {
    padding: 95px 0 110px;
    position: relative;
    background: #f7f7f7;
}
.sec-kakoumai-factory::before {
    content: "";
    width: 100%;
    height: 100px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #f7f7f7;
}
.kakoumai-feature-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.kakoumai-feature-list li {
	width: 47%;
	margin-bottom: 60px;
}
.kakoumai-feature-list li img {
	border-radius: 6px;
}
.kakoumai-feature-list li .thumb::after {
    padding-top: 58%;
}
.kakoumai-feature-list li .block {
    padding-top: 30px;
}
.kakoumai-feature-list li .block .ttl {
    display: inline-block;
    line-height: 30px;
    border: 1px solid #1a1a1a;
    padding: 0 20px;
    letter-spacing: 0.02em;
}
.kakoumai-feature-list li dl {
    line-height: 1.75;
}
.kakoumai-feature-list li dt {
	font-size: 2.4rem;
	font-weight: 500;
	margin-bottom: 10px;
}
.kakoumai-feature-list li dl dd {
    font-size: 1.5rem;
}
.kakoumai-feature-list li .block .thumb {
    width: 30%;
    float: right;
    margin: 0 0 10px 15px;
}
.kakoumai-feature-list li .block .thumb::after {
    padding-top: 100%;
}
.sec-kakoumai-mochi {
	padding: 50px 0;
    border-bottom: 1px solid #d9d9d9;
    border-top: 1px solid #d9d9d9;
}
.kakoumai-mochi-col2 {
	display: flex;
	justify-content: space-between;
}
.kakoumai-mochi-col2 .thumb {
	width: 40%;
	border-radius: 6px;
}
.kakoumai-mochi-col2 .thumb::after {
	padding-top: 66.66666%;
}
.kakoumai-mochi-col2 .block {
	width: 52%;
    font-size: 1.8rem;
    padding-top: 20px;
}
.kakoumai-mochi-col2 .block .ttl {
	font-size: 2.8rem;
	font-weight: 500;
	margin-bottom: 10px;
}
.kakoumai-komeko-sale {
	background: #FFFFFF;
	padding: 60px 70px;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.kakoumai-komeko-sale .thumb {
	width: 320px;
	height: 320px;
}
.kakoumai-komeko-sale .block {
	width: calc(100% - 380px);
	font-size: 1.4rem;
}
.kakoumai-komeko-sale .block .ttl {
	font-size: 2.4rem;
	font-weight: 500;
	margin-bottom: 15px;
	letter-spacing: 0.12em;
}
.kakoumai-komeko-sale .block .btn {
	margin-top: 25px;
}

/* SUIHAN
-------------------------------------------------- */
.sec-suihan-feature {
	padding: 0 0 110px;
}
.suihan-feature {
	display: flex;
	justify-content: space-between;
	padding: 40px 6.5885% 0 0;
}
.suihan-feature-img {
	width: 76%;
}
.suihan-feature-img .thumb {
	border-radius: 0 12px 12px 0;
}
.suihan-feature-img .thumb::after {
	padding-top: 57.7319%;
}
.suihan-feature-block {
	width: 20%;
	display: flex;
	justify-content: center;
}
.suihan-feature-block .ttl {
	font-size: 3.0rem;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 2.2;
	writing-mode: vertical-rl;
	text-orientation: upright;
	white-space: nowrap;
	position: relative;
}
.sec-suihan-item {
	padding: 95px 0 65px;
	background: #f7f7f7;
}


/* CHOKUHAN
-------------------------------------------------- */
.chokuhan-block {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 60px 0 0;
}
.chokuhan-block + .chokuhan-block {
    padding: 20px 0 0;
}
.chokuhan-block .thumb {
	width: 29%;
	border-radius: 6px;
}
.chokuhan-block .thumb::after {
	padding-top: 100%;
}
.chokuhan-block._ginmai .thumb {
	width: 38%;
}
.chokuhan-block._ginmai .thumb::after {
	padding-top: 66.6666%;
}
.chokuhan-block .block {
	width: 64%;
	padding-bottom: 5px;
}
.chokuhan-block._ginmai .block {
	width: 55%;
}
.chokuhan-block .block .shop-ttl {
	margin-bottom: 25px;
}
.chokuhan-block .block .shop-ttl-list {
	display: flex;
	justify-content: flex-start;
}
.chokuhan-block .block .shop-ttl._tashi {
	width: 350px;
}
.chokuhan-block .block .shop-ttl._maimu,
.chokuhan-block .block .shop-ttl._ginmai {
	width: 260px;
}
.chokuhan-block .block .shop-lead {
	font-size: 2.0rem;
	letter-spacing: 0.1em;
	margin: -10px 0;
}
.chokuhan-block .block .btn {
	margin-top: 30px;
}
.chokuhan-block .block .btn a {
	width: 300px;
}
.chokuhan-shop-info {
	display: flex;
	justify-content: space-between;
	margin-top: 45px;
}
.chokuhan-shop-info li {
	width: 47.5%;
	border-top: 1px solid #d9d9d9;
	font-size: 1.5rem;
}
.chokuhan-shop-info-ttl {
	font-size: 2.0rem;
	border-bottom: 1px solid #d9d9d9;
	padding: 12px 0;
	margin-bottom: 15px;
}
.chokuhan-shop-txt {
	margin-top: 30px;
}
.chokuhan-block-list {
	display: flex;
	justify-content: space-between;
    flex-wrap: wrap;
	padding: 60px 0 0;
}
.chokuhan-block-list::after {
    content: "";
    width: 29%;
    display: block;
}
.chokuhan-block-list .block {
	width: 29%;
	text-align: center;
}
.chokuhan-block-list .block .thumb {
	border-radius: 6px;
}
.chokuhan-block-list .block .thumb::after {
	padding-top: 100%;
}
.chokuhan-block-list .block .shop-ttl {
	margin: 20px auto 0;
}
.chokuhan-block-list .block .shop-ttl._riso,
.chokuhan-block-list .block .shop-ttl._komegura {
    width: 200px;
}
.chokuhan-block-list .block .shop-ttl._ichimo {
	width: 146px;
}
.chokuhan-block-list .block .shop-ttl._myyume {
	width: 194px;
}
.chokuhan-block-list .block .shop-ttl._bigtree {
	width: 170px;
}
.chokuhan-sns-link {
    display: flex;
    justify-content: flex-start;
    margin-top: 30px;
}
.chokuhan-block .block .chokuhan-sns-link {
    margin-top: 25px;
}
.chokuhan-sns-link li {
    width: 45px;
	margin-right: 10px;
    font-size: 1.0rem;
    text-align: center;
}
.sec-chokuhan-shop {
	padding: 95px 0 65px;
	background: #f7f7f7;
}
.chokuhan-shop-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.chokuhan-shop-list::after {
    content: "";
    width: 30.8%;
    display: block;
}
.chokuhan-shop-list .block {
	width: 30.8%;
	line-height: 1.75;
	margin-bottom: 60px;
}
.chokuhan-shop-list .thumb {
	border-radius: 6px;
}
.chokuhan-shop-list .thumb::after {
	padding-top: 75%;
}
.chokuhan-shop-list .ttl {
	font-size: 2.2rem;
	font-weight: 500;
	margin: 20px 0 5px;
}
.chokuhan-shop-list .txt {
	font-size: 1.5rem;
	margin-bottom: 15px;
}
.chokuhan-shop-list .inner {
	border-top: 1px solid #d9d9d9;
	padding-top: 15px;
	font-size: 1.4rem;
}
.chokuhan-shop-list .btn-txt {
	margin-top: 10px;
}
.chokuhan-shop-list .btn-txt.mT0 {
    margin-top: 0;
}
.shop-sns-link {
	display: flex;
	justify-content: flex-start;
	margin-top: 25px;
}
.shop-sns-link li {
	width: 40px;
	margin-right: 10px;
}

/* RESERVE
-------------------------------------------------- */
.reserve-anchor-btn {
	margin-top: 50px;
}
.reserve-anchor-btn a {
	display: block;
	width: 85%;
	border: 1px solid #cccccc;
	border-radius: 6px;
	line-height: 1.6;
	padding: 18px 10px 18px 10%;
	box-sizing: border-box;
	display: flex;
}
.reserve-anchor-btn a p {
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="26" height="30" viewBox="0 0 26 30"><path fill-rule="evenodd" fill="rgb(26, 26, 26)" d="M1.6,1.7c-2,1.6-2,6-0.8,9.5c0.9,2.7,2.6,6.3,5.2,9.5c2.5,3.1,5.7,5.7,8.1,7.2c3.1,1.9,7.4,2.9,9.4,1.2 c1-0.8,2.4-2.9,2.4-3.3c0,0-1.1-1.4-1.3-1.7L21,19.7c-0.3-0.3-1.7,0.1-2.4,0.7c-0.9,0.7-1.7,2.3-1.7,2.3c-0.6,0.5-1.3,0.1-2.5-0.3 c-1.6-0.5-3.4-2.5-5-4.3c-1.4-1.9-2.9-4.2-3.1-5.8c-0.2-1.3-0.4-2,0.2-2.6c0,0,1.8-0.4,2.6-1.2c0.6-0.6,1.4-1.9,1.1-2.2L6.6,1.7 C6.4,1.4,5.3,0,5.3,0C4.9,0,2.6,0.9,1.6,1.7z"/></svg>') no-repeat center left;
	background-size: 22px auto;
	padding-left: 45px;
}
.reserve-ttl-wrap {
	position: relative;
}
.reserve-ttl-wrap .icon {
	position: absolute;
	right: 0;
	bottom: 40px;
}
.reserve-ttl-wrap .icon._kyowa {
	width: 162px;
}
.reserve-ttl-wrap .icon._tashi {
	width: 200px;
}
.btn-icon {
	margin-top: 20px;
}
.btn-icon a {
	display: block;
	width: 540px;
	border: 1px solid #cccccc;
	margin: 0 auto;
	text-align: center;
	padding: 15px 0;
	border-radius: 60px;
}
.btn-icon a .tashi img {
	width: 280px;
}
.col2-contents-2 + .list-note {
	margin-top: 20px;
}
.reserve-tel-area {
	background: #fafafa;
	padding: 80px 0;
}
.reserve-tel-box {
	background: #FFFFFF;
	padding: 30px 4.5%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1100px;
	margin: 0 auto;
}
.reserve-tel-box-ttl {
	width: 32%;
	font-size: 1.5rem;
}
.reserve-tel-box-ttl .ttl {
	font-size: 2.5rem;
	font-weight: 500;
	margin-bottom: 20px;
}
.reserve-tel-box-cont {
	width: 68%;
	border-left: 1px solid #d9d9d9;
	padding-left: 4.52%;
	box-sizing: border-box;
	padding-top: 5px;
}
.reserve-tel-box-cont .block {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 15px 0 10px;
    border-bottom: 1px solid #d9d9d9;
	margin-bottom: 3px;
}
.reserve-tel-box-cont .block:last-child {
	border-bottom: none;
	margin-bottom: 0;
}
.reserve-tel-box-cont .block-inner {
	font-size: 1.8rem;
	margin-right: 35px;
	line-height: 1.6;
}
.reserve-tel-box-cont .block-inner .tel a {
	display: block;
	font-size: 3.8rem;
	font-weight: 700;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="26" height="30" viewBox="0 0 26 30"><path fill-rule="evenodd" fill="rgb(26, 26, 26)" d="M1.6,1.7c-2,1.6-2,6-0.8,9.5c0.9,2.7,2.6,6.3,5.2,9.5c2.5,3.1,5.7,5.7,8.1,7.2c3.1,1.9,7.4,2.9,9.4,1.2 c1-0.8,2.4-2.9,2.4-3.3c0,0-1.1-1.4-1.3-1.7L21,19.7c-0.3-0.3-1.7,0.1-2.4,0.7c-0.9,0.7-1.7,2.3-1.7,2.3c-0.6,0.5-1.3,0.1-2.5-0.3 c-1.6-0.5-3.4-2.5-5-4.3c-1.4-1.9-2.9-4.2-3.1-5.8c-0.2-1.3-0.4-2,0.2-2.6c0,0,1.8-0.4,2.6-1.2c0.6-0.6,1.4-1.9,1.1-2.2L6.6,1.7 C6.4,1.4,5.3,0,5.3,0C4.9,0,2.6,0.9,1.6,1.7z"/></svg>') no-repeat center left;
	background-size: 24px auto;
	padding: 0 0 5px 35px;
}
.reserve-tel-box-cont .block-nama {
	padding-top: 6px;
	font-size: 1.4rem;
}
.reserve-tel-box-cont .block-nama-logo {
	margin-bottom: 5px;
}
.reserve-tel-box-cont .block-nama ._kyowa {
	width: 170px;
}
.reserve-tel-box-cont .block-nama ._tashi {
	width: 180px;
}

/* bnr-reserve
-------------------------------------------------- */
.bnr-reserve {
	position: relative;
}
.bnr-reserve::before {
	content: "";
	width: 100%;
	height: 110px;
	background: #f7f7f7;
	position: absolute;
	left: 0;
	top: 0;
}
.bnr-reserve a {
	width: 980px;
	height: 180px;
	display: flex;
	position: relative;
	border: 1px solid #d9d9d9;
	background: #FFFFFF;
	margin: 0 auto;
}
.bnr-reserve a .thumb {
	width: 300px;
	height: 180px;
}
.bnr-reserve a .block {
	width: calc(100% - 300px);
	padding: 30px 45px 0;
	box-sizing: border-box;
	font-size: 1.7rem;
	line-height: 1.75;
}
.bnr-reserve a .block .ttl {
	font-size: 3.1rem;
	margin: 2px 0 5px;
}
.bnr-reserve a .block .ttl span {
	font-size: 2.4rem;
}

/* bnr-list
-------------------------------------------------- */
.bnr-list {
    position: relative;
    padding-right: 6.5885%;
    padding-left: 6.5885%;
}
.bnr-list::before {
	content: "";
	width: 100%;
	height: 190px;
	background: #f7f7f7;
	position: absolute;
	left: 0;
	top: 0;
}
.bnr-list ul {
    max-width: 1040px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    position: relative;
}
.bnr-list ul li {
    width: 48%;
    border: 1px solid #d9d9d9;
}
.bnr-list ul li a {
    display: block;
    position: relative;
}
.bnr-list ul li .thumb::after {
    padding-top: 51.28%;
}
.bnr-list ul li .block {
    padding: 20px 30px 25px;
}
.bnr-list ul li .block .txt {
    font-size: 1.4rem;
    line-height: 1.75;
}
.bnr-list ul li .block .ttl {
    font-size: 2.6rem;
    font-weight: 500;
    margin-bottom: 3px;
}
.bnr-list ul li .block .ttl .en {
    display: inline-block;
    font-size: 3.0rem;
    font-weight: 600;
    line-height: 1.1;
    padding-top: 10px;
}
.bnr-list ul li .block .ttl .sub {
    font-size: 2.0rem;
}

/* serviceNav-btm
-------------------------------------------------- */
.serviceNav-btm {
    padding-top: 80px;
	margin-bottom: 70px;
}
.serviceNav-btm-list {
	display: flex;
	justify-content: space-between;
	padding: 40px 0;
}
.serviceNav-btm-list li {
	width: 23.1%;
	margin-right: 0;
}
.serviceNav-btm-list li .ttl {
	font-size: 1.7rem;
}
.serviceNav-btm .btn {
	text-align: right;
}


/*/////////////////////////////////////////////////////////////////////////////


              // QUALITY //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* MANAGEMENT
-------------------------------------------------- */
.quality-policy li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}
.quality-policy li .numb {
	width: 60px;
	font-size: 2.0rem;
	font-weight: 600;
	color: #999999;
}
.quality-policy li .txt {
	width: calc(100% - 60px);
	font-size: 1.8rem;
	padding: 10px 0 10px 35px;
	border-left: 1px solid #d9d9d9;
}
.quality-policy-img {
	width: 60%;
	margin: 35px auto 0;
}
.check-list {
	border: 1px solid #e5e5e5;
	padding: 20px 45px 25px;
}
.check-list li {
	border-bottom: 1px solid #e5e5e5;
	padding: 20px 0 20px 40px;
	background: url("../images/icon-check.png") left top 26px no-repeat;
	background-size: 22px auto;
}
.check-list li:last-child {
	border-bottom: none;
}

/* DEVELOPMENT
-------------------------------------------------- */
.quality-development .ttl {
	font-size: 3.8rem;
	letter-spacing: 0.12em;
	margin-bottom: 20px;
}
.quality-development .ttl span {
	display: block;
	font-size: 2.2rem;
}
.quality-development-img {
	width: 93%;
	max-width: 820px;
	margin: 0 auto;
}
.development-flow {
	display: flex;
	justify-content: space-between;
	padding-bottom: 20px;
}
.development-flow li {
	width: 10.54%;
	border: 1px solid #cccccc;
	box-sizing: border-box;
	text-align: center;
	padding-bottom: 30px;
}
.development-flow li .numb {
	color: #828a95;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="36" height="8" viewBox="0 0 36 8"><path fill-rule="evenodd" fill="none" stroke="rgb(130, 138, 149)" d="M28,0.3l6.8,7.2H0"/></svg>') no-repeat center bottom;
	background-size: 36px auto;
	font-weight: 600;
	padding: 20px 0 15px;
	margin-bottom: 25px;
	position: relative;
}
.development-flow li:last-child .numb {
	background: none;
}
.development-flow li:last-child .numb::after {
	content: "";
	width: 36px;
	height: 1px;
	background: #828a95;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
.development-flow li .ttl {
	writing-mode: vertical-rl;
	display: inline-block;
}

/* SPECIAL
-------------------------------------------------- */
.pdf-list li {
	border-bottom: 1px solid #d9d9d9;
}
.pdf-list li a {
	display: flex;
	justify-content: space-between;
	padding: 25px 0;
}
.pdf-list li:first-child a {
	padding-top: 0;
}
.pdf-list li a .pdf {
	width: 60px;
	line-height: 31px;
	text-align: center;
	background: #e31a1a;
	color: #FFFFFF;
	font-size: 1.1rem;
	font-weight: 600;
}
.pdf-list li a .txt {
	width: calc(100% - 90px);
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="36" height="8" viewBox="0 0 36 8"><path fill-rule="evenodd" fill="none" stroke="rgb(26, 26, 26)" d="M28,0.3l6.8,7.2H0"/></svg>') no-repeat right 30px center;
	background-size: 36px auto;
	padding-right: 90px;
	box-sizing: border-box;
}

/* TRACEABILITY
-------------------------------------------------- */
.quality-traceability-img {
	max-width: 880px;
	margin: 0 auto;
}
.inspection-list {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
    margin-bottom: 5px;
}
.inspection-list li {
	width: 23.5%;
	box-sizing: border-box;
	border: 1px solid #d9d9d9;
	text-align: center;
	padding: 15px 15px 10px;
	line-height: 1.5;
}
.inspection-list li .txt {
	padding: 10px 0 0;
}


/*/////////////////////////////////////////////////////////////////////////////


              // NEWS //
	  

/////////////////////////////////////////////////////////////////////////////*/
.news-col2 {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding-bottom: 110px;
}
.news-col2-main {
	width: 74%;
}
.news-col2-side {
	width: 19.5%;
	padding: 50px 0;
}
.news-side-nav {
	padding-bottom: 20px;
	margin-bottom: 10px;
}
.news-side-nav:last-child {
	border-bottom: 1px solid #d9d9d9;
}
.news-side-nav .ttl {
	font-size: 1.4rem;
	position: relative;
	line-height: 1.5;
}
.news-side-nav .ttl::before {
	content: "";
	width: 100%;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	top: 50%;
}
.news-side-nav .ttl span {
	display: inline-block;
	background: #ffffff;
	position: relative;
	padding-right: 25px;
}
.news-side-nav-inner {
	margin-top: 15px;
}
.news-side-nav li a {
	display: block;
	line-height: 1.75;
	padding: 5px;
	margin: 5px 0;
	font-size: 1.5rem;
}

/* wp-pagenavi
-------------------------------------------------- */
.wp-pagenavi {
	margin: 60px auto 0;
}
.wp-pagenavi a {
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0 10px 10px 0;
	line-height: 48px;
	background: #FFFFFF;
	text-align: center;
	text-decoration: none;
	border-radius: 50%;
	border: 1px solid #cccccc;
	box-sizing: border-box;
}
.wp-pagenavi span.current,
.wp-pagenavi span.extend {
	display:inline-block;
	color: #ffffff;
	width: 50px;
	height: 50px;
	margin:0 10px 10px 0;
	line-height: 48px;
	background: #333333;
	text-align: center;
	text-decoration: none;
	border-radius: 50%;
	border: 1px solid #333333;
	box-sizing: border-box;
}
.wp-pagenavi span.extend {
	background: #FFFFFF;
}

/* hover
-------------------------------------------------- */
@media screen and (min-width: 768px) {
.wp-pagenavi a:hover {
	color: #FFFFFF;
	background: #2a2c2e;
}
}

/*/////////////////////////////////////////////////////////////////////////////


              // NEWS DETAIL //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* entry
-------------------------------------------------- */
.entry {
	word-wrap: break-word;
}
.entry p {
    display: block;
}
.entry a {
	text-decoration: underline;
}
.entry img {
	width: auto;
	height: auto;
	vertical-align: middle;
}
.entry strong { font-weight: 700; }
.entry em { font-style: italic; }
.entry blockquote {
    background: #f7f7f7;
	padding: 25px 35px;
	margin-bottom: 2em;
}
.entry blockquote p {
	margin: 0;
}
.entry ul {
	list-style-type: disc;
	list-style-position: inside;
}
.entry ol {
	list-style-type: decimal;
	list-style-position: inside;
}
.entry ul li,
.entry ol li {
	text-indent: -1em;
	padding-left: 1em;
}
.entry h2 {
	font-size: 3.4rem;
	margin: 2em 0 0.8em;
    line-height: 1.75;
}
.entry h3 {
	font-size: 2.2rem;
	margin: 1.8em 0 0.4em;
    font-weight: 700;
    line-height: 1.75;
}
.entry h4 {
	font-size: 1.8rem;
    line-height: 1.75;
	margin: 1em 0 0.8em;
    padding-bottom: 1px;
    font-weight: 700;
    padding-left: 20px;
    border-left: 2px solid #1a1a1a;
}
.entry .aligncenter {
    display: block;
    margin: 0 auto;
}
.entry .alignright { float: right; }
.entry .alignleft { float: left; }
.entry img {
    height: auto;
	width: inherit;
    max-width: 100%;
}
.gallery-item img {
    border: none !important;
    box-sizing: border-box;
    padding: 0 3%;
}
.entry .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
.entry iframe {
	max-width: 100%;
}


/* detail-nav
-------------------------------------------------- */
.detail-nav {
	border-top: 1px solid #d9d9d9;
	padding: 55px 0 0;
	margin-top: 80px;
	box-sizing: border-box;
}
.detail-nav ul {
	width: 100%;
	height: 65px;
	position: relative;
	margin: 0 auto;
}
.detail-nav ul li {
	position: absolute;
	top: 0;
}
.detail-nav ul li.btn-back {
	left: 50%;
	transform: translateX(-50%);
}
.detail-nav ul li.btn-prev {
	left: 0;
}
.detail-nav ul li.btn-next {
	right: 0;
}
.detail-nav ul li a {
	display: block;
	width: 100%;
	line-height: 58px;
	box-sizing: border-box;
	position: relative;
}
.detail-nav ul li.btn-back a {
	width: 260px;
	border: 1px solid #cccccc;
	text-align: center;
	border-radius: 30px;
}
.detail-nav ul li.btn-prev a {
	padding-left: 80px;
}
.detail-nav ul li.btn-next a {
	padding-right: 80px;
}
.detail-nav ul li.btn-prev a::before,
.detail-nav ul li.btn-next a::before {
	content: "";
	width: 60px;
	height: 60px;
	border: 1px solid #cccccc;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 24px auto;
	box-sizing: border-box;
	border-radius: 50%;
	position: absolute;
	top: 0;
	transition: .2s;
}
.detail-nav ul li.btn-prev a::before {
	left: 0;
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="24" height="8" viewBox="0 0 24 8"><path fill-rule="evenodd" fill="none" stroke="rgb(26, 26, 26)" d="M24,7.5H1.2L8,0.3"/></svg>');
}
.detail-nav ul li.btn-next a::before {
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="24" height="8" viewBox="0 0 24 8"><path fill-rule="evenodd" fill="none" stroke="rgb(26, 26, 26)" d="M16,0.3l6.8,7.2H0"/></svg>');
	right: 0;
}


/*/////////////////////////////////////////////////////////////////////////////


              // RECRUIT //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* recruit-wrap
-------------------------------------------------- */
.recruit-block-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 20px;
}
.recruit-block-list .block {
	width: 47%;
	margin-bottom: 60px;
}
.recruit-block-list .block .thumb::after {
	padding-top: 66.6666%;
}
.recruit-block-list .block-inner {
	margin-top: 25px;
	line-height: 1.75;
}
.recruit-block-list .block .ttl {
	font-size: 2.4rem;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
}
.recruit-block-tel {
    border: 1px solid #d9d9d9;
    text-align: center;
    padding: 35px 20px 30px;
    margin-bottom: 80px;
    border-radius: 6px;
}
.recruit-block-tel p a {
	display: inline-block;
	font-size: 3.8rem;
    line-height: 1.75;
	font-weight: 700;
	background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="26" height="30" viewBox="0 0 26 30"><path fill-rule="evenodd" fill="rgb(26, 26, 26)" d="M1.6,1.7c-2,1.6-2,6-0.8,9.5c0.9,2.7,2.6,6.3,5.2,9.5c2.5,3.1,5.7,5.7,8.1,7.2c3.1,1.9,7.4,2.9,9.4,1.2 c1-0.8,2.4-2.9,2.4-3.3c0,0-1.1-1.4-1.3-1.7L21,19.7c-0.3-0.3-1.7,0.1-2.4,0.7c-0.9,0.7-1.7,2.3-1.7,2.3c-0.6,0.5-1.3,0.1-2.5-0.3 c-1.6-0.5-3.4-2.5-5-4.3c-1.4-1.9-2.9-4.2-3.1-5.8c-0.2-1.3-0.4-2,0.2-2.6c0,0,1.8-0.4,2.6-1.2c0.6-0.6,1.4-1.9,1.1-2.2L6.6,1.7 C6.4,1.4,5.3,0,5.3,0C4.9,0,2.6,0.9,1.6,1.7z"/></svg>') no-repeat center left;
	background-size: 24px auto;
	padding: 0 0 5px 35px;
}

/*/////////////////////////////////////////////////////////////////////////////


              // Contact //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* contact-form
-------------------------------------------------- */
.contact-form {
	padding-bottom: 120px;
}

/* contact-faq-block
-------------------------------------------------- */
.contact-faq-block {
    margin: 0 0 40px;
}
.contact-faq-block dl {
    border-top: 1px solid #d9d9d9;
    padding: 20px 0;
}
.contact-faq-block dl dt,
.contact-faq-block dl dd {
    display: flex;
    justify-content: space-between;
}
.contact-faq-block dl dt {
    margin-bottom: 5px;
}
.contact-faq-block dl dt .en,
.contact-faq-block dl dd .en {
    width: 40px;
    font-weight: 700;
    font-size: 2.0rem;
    line-height: 1.7;
}
.contact-faq-block dl dd .en {
    color: #cb1212;
}
.contact-faq-block dl dt .en + p,
.contact-faq-block dl dd .en + p {
    width: calc(100% - 40px);
}
.contact-faq-block dl dt .en + p {
    font-size: 1.7rem;
    font-weight: 500;
}
.contact-faq-block dl dd .en + p {
    font-size: 1.5rem;
}

/* contact-tel-block
-------------------------------------------------- */
.contact-tel-block {
	margin: 0 0 90px;
}
.contact-tel-block a {
	display: block;
	border: 1px solid #d9d9d9;
	background: #ffffff;
	text-align: center;
	padding: 45px 20px 50px;
	border-radius: 6px;
	
}
.contact-tel-block .ttl {
	font-size: 3.4rem;
	line-height: 1.75;
	letter-spacing: 0.12em;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 15px;
}
.contact-tel-block .ttl::after {
	content: "";
	width: 60px;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
.contact-tel-block .tel {
	display: inline-block;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 5px;
	background: url("../images/icon-freedial.png") left center no-repeat;
	background-size: 78px auto;
	padding: 0 15px 0 95px;
}
.contact-tel-block .tel span {
	font-size: 4.6rem;
}
.contact-tel-block .note {
	font-size: 1.4rem;
}

/* contact-block
-------------------------------------------------- */
.contact-block {
	margin: 60px 0 0;
}
.contact-block-none {
	padding: 30px 0;
	margin-bottom: 50px;
	border-top: 1px solid #d9d9d9;
	border-bottom: 1px solid #d9d9d9;
}
.contact-block-txt {
	margin-bottom: 30px;
}
.contact-block-txt.note {
	color: #4c4c4c;
}
.contact-block-txt + dl {
	border-top: 1px solid #d9d9d9;
}
.contact-block dl {
	padding: 15px 0;
	position: relative;
	border-bottom: 1px solid #d9d9d9;
}
.contact-block dl:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
.contact-block dl dt {
	width: 28%;
	float: left;
	padding: 27px 0 0;
	line-height: 1;
}
.contact-block dl dt .note {
	display: block;
	font-size: 1.4rem;
	margin: 20px 0 0;
}
.contact-block dl dd {
	margin: 0 0 0 28%;
}
.contact-block dl dd .subttl {
	font-size: 1.4rem;
	margin-top: 5px;
}
.contact-block dl dd.txt-inr {
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 15px;
	margin-bottom: 10px;
}
.contact-block dl .note {
	font-size: 1.2rem !important;
	line-height: 1.75 !important;
	margin-bottom: 10px;
}
.red {
	color: #cb1212;
}

/* input
-------------------------------------------------- */
input[type="text"],
input[type="number"],
input[type="password"],
input[type="email"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border: none;
	background: #f7f7f7;
	padding: 20px 20px;
	width: 100%;
	border-radius: 0;
	line-height: 1;
	margin: 7px 0;
	height: 55px;
	vertical-align: central;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
}
input[type="text"].w240 {
	width: 240px;
}
input[type="number"].w200 {
	width: 200px;
}
select {
	box-sizing: border-box;
	position: relative;
	margin: 7px 0;
	width: 380px;
	height: 55px;
	background: #f7f7f7 url(../images/select.gif) right center no-repeat;
	background-size: auto 55px;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-overflow: "";
	padding: 0 20px;
	cursor: pointer;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
}
select.w200 {
	width: 200px;
}
select.w140 {
	width: 140px;
}
textarea {
	box-sizing: border-box;
	width: 100%;
	height: 200px;
	padding: 25px 20px;
	border: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	line-height: 1.5;
	background: #f7f7f7;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
	margin: 7px 0;
}
::placeholder {
  color: #808080;
}

/* radio, checkbox
-------------------------------------------------- */
.radio_text,
.checkbox_text {
	padding: 0;
	font-size: 1.6rem;
}
.wpcf7-radio,
.wpcf7-checkbox {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;s
}
.wpcf7-radio::after,
.wpcf7-checkbox::after {
	content: "";
	width: 32%;
	display: block;
}
.radio_text span.wpcf7-list-item,
.checkbox_text span.wpcf7-list-item {
	display: block;
	margin: 0;
	width: 32%;
}
.radio_text .wpcf7-list-item-label,
.checkbox_text .wpcf7-list-item-label {
	cursor: pointer;
	position: relative;
	margin: 0;
	box-sizing: border-box;
	display: block;
	width: 100%;
	padding: 10px 0 10px 35px;
}
.radio_text .wpcf7-list-item-label::before,
.checkbox_text .wpcf7-list-item-label::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	z-index: 1;
	background-color: #FFFFFF;
}
.radio_text .wpcf7-list-item-label::before,
.checkbox_text .wpcf7-list-item-label::before{
	width: 26px;
	height: 26px;
	border-radius : 50%;
	margin-top: -13px;
	border: 1px solid #cccccc;
	box-sizing: border-box;
}
.radio_text .wpcf7-list-item-label::after,
.checkbox_text .wpcf7-list-item-label::after {
	content: '';
	position: absolute;
	top: 50%;
	z-index : 3;
	opacity: 0;
}
.radio_text .wpcf7-list-item-label::after,
.checkbox_text .wpcf7-list-item-label::after{
	width: 14px;
	height: 14px;
	border-radius: 50%;
	left: 6px;
	margin-top: -7px;
	background-color: #292b2e;
}
.radio_text label input[type="radio"],
.checkbox_text label input[type="checkbox"] {
	display: none;
}
.radio_text label input[type="radio"]:checked + .wpcf7-list-item-label::before,
.checkbox_text label input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
	background-color: #FFFFFF;
}
.radio_text label input[type="radio"]:checked + .wpcf7-list-item-label::after,
.checkbox_text label input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	opacity: 1;
}

/* form-btn
-------------------------------------------------- */
.form-btn {
	padding-top: 50px;
	position: relative;
	box-sizing: border-box;
}
.form-btn .privacy-txt {
	text-align: center;
	line-height: 1.75;
	margin-bottom: 30px;
}
.form-btn .privacy-txt span.wpcf7-list-item {
	display: inline-block;
}
.form-btn ul {
	display: flex;
	justify-content: center;
}
.form-btn ul li {
	margin: 0 5px;
}
input[type="submit"],
input[type="reset"],
input[type="button"] {	
	width: 420px;
	height: 80px;
	padding: 0;
	margin: 0;
	border: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	color: #FFFFFF;
	cursor: pointer;
	background: #333333;
	font-family: 'Noto Serif JP', serif;
	transition: all .2s;
	font-size: 1.8rem;
	border-radius: 0;
}
input[type="button"] {
	opacity: 0.4;
}
div.wpcf7 .wpcf7c-btn-confirm:disabled {
	cursor: not-allowed;
}
input[type="submit"][disabled] {
	background: #999999;
	cursor: not-allowed;
}
@media screen and (min-width: 768px) {
	input[type="submit"]:hover,
	input[type="button"]:hover,
	input[type="reset"]:hover {
		opacity: 0.7;
	}
	input[type="submit"][disabled]:hover {
		opacity: 1;
	}
}

/* form-btm-txt
-------------------------------------------------- */
.form-btm-txt {
	display: flex;
	justify-content: center;
	font-size: 1.3rem;
	line-height: 1.75;
	margin-top: 50px;
}

/* ajax-loader
-------------------------------------------------- */
.ajax-loader {
	display: block;
	position: absolute;
	left: 50%;
	bottom: -50px;
	margin-left: -15px !important;
}

/* wpcf7-response-output
-------------------------------------------------- */
.wpcf7 form .wpcf7-response-output {
	text-align: center;
	margin: 2em 0;
	padding: 0.5em 1em;
	line-height: 1.5;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	color: #dc3232;
    background-color: #fcf7f7;
	border-color: #dc3232 !important;
}

/* custom-wpcf7c-confirmed
-------------------------------------------------- */
.custom-wpcf7c-confirmed input[type="text"],
.custom-wpcf7c-confirmed input[type="number"],
.custom-wpcf7c-confirmed input[type="password"],
.custom-wpcf7c-confirmed input[type="email"] {
	background: #FFFFFF;
	padding: 0;
}
.custom-wpcf7c-confirmed select {
	background: #FFFFFF;
	border: none;
	padding: 0;
}
.custom-wpcf7c-confirmed textarea {
	background: #FFFFFF;
	border: none;
	padding: 25px 0;
}
.contact-block .custom-wpcf7c-confirmed dl {
	
}
.contact-block .custom-wpcf7c-confirmed dl dt {
	opacity: 0.4;
}
.contact-block .custom-wpcf7c-confirmed dl dd .subttl {
	opacity: 0.4;
}
.custom-wpcf7c-confirmed ::placeholder {
	color: #FFFFFF;
}
.custom-wpcf7c-confirmed .radio_text .wpcf7-list-item-label {
	padding: 17px 0;
}
.custom-wpcf7c-confirmed .radio_text .wpcf7-list-item-label::before,
.custom-wpcf7c-confirmed .checkbox_text .wpcf7-list-item-label::before,
.custom-wpcf7c-confirmed .radio_text .wpcf7-list-item-label::after,
.custom-wpcf7c-confirmed .checkbox_text .wpcf7-list-item-label::after {
	display: none;
}
.custom-wpcf7c-confirmed .checkbox_text.privacy-txt .wpcf7-list-item-label::before {
	display: block !important;
}
.custom-wpcf7c-confirmed .checkbox_text.privacy-txt .wpcf7-list-item-label::after {
	display: block !important;
	opacity: 1;
}

/* complete-display
-------------------------------------------------- */
.sent .formInner {
    display: none;
}
.complete-display {
	display: none;
	text-align: center;
	padding: 60px 0;
}
.sent .complete-display {
	display: block;
}
.complete_ttl {
	font-size: 3.2rem;
	padding-bottom: 15px;
}
.complete-display .btn {
	margin-top: 40px;
}

/* grecaptcha-badge
-------------------------------------------------- */
.grecaptcha-badge {
	visibility: hidden;
}


/*/////////////////////////////////////////////////////////////////////////////


              // SUMMIT //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* sec-summit-intro
-------------------------------------------------- */
.sec-summit-intro {
	padding: 70px 0 20px;
	position: relative;
}
.sec-summit-intro::before {
	content: "";
	width: 100%;
	height: calc(100% + 190px);
	background: #fafafa;
	position: absolute;
	left: 0;
	top: -190px;
	z-index: -1;
}
.summit-cont {
	padding: 0 0 90px;
}
.summit-cont-ttl {
	font-size: 3.0rem;
	line-height: 2.2;
	margin-bottom: 40px;
}
.summit-col2 {
	display: flex;
	justify-content: space-between;
}
.summit-intro-block {
	width: 71%;
	border-top: 1px solid #d9d9d9;
	position: relative;
	padding-top: 40px;
}
.summit-intro-block::before {
	content: "";
	width: 60px;
	height: 1px;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	top: -1px;
}
.summit-intro-block .ttl {
	font-size: 2.4rem;
	margin-bottom: 35px;
}
.summit-intro-img {
	width: 22.2%;
}
.summit-intro-img p {
	margin-bottom: 30px;
}

/* sec-summit-history
-------------------------------------------------- */
.sec-summit-history {
	padding: 110px 0 120px;
}
.summit-history {
	display: flex;
	justify-content: flex-end;
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
}
.summit-history-block {
	width: 35.5%;
	min-width: 400px;
	position: absolute;
	left: 0;
	top: 0;
}
.summit-history-block .block-ttl {
	font-size: 3.0rem;
}
.summit-history-list {
	border-top: 1px solid #d9d9d9;
	font-size: 1.5rem;
}
.summit-history-list li {
	border-bottom: 1px solid #d9d9d9;
	padding: 12px 0;
}
.summit-history-img {
	width: 66%;
	max-width: 790px;
}

/*/////////////////////////////////////////////////////////////////////////////


              // Privacy Policy //
	  

/////////////////////////////////////////////////////////////////////////////*/
.privacy-contact {
	padding-top: 30px;
}
.privacy-contact._mB {
	padding-bottom: 40px;
}
.privacy-contact-ttl {
	font-size: 1.8rem;
	margin-bottom: 10px;
	font-weight: 500;
}
.privacy-contact-subttl {
	font-weight: 500;
	border-bottom: 1px solid #d9d9d9;
	margin: 20px 0 0;
	padding-bottom: 10px;
}
.privacy-contact .list-disc {
	margin-top: 10px;
}