/*
Theme Name:  Okamura Child Theme. Child for Lightning.
Theme URI:  https://papas.jp
Description:  Theme to Okamura Site.
Author:  Okamura
Textdomain:  papas
Author URI:  https://papas.jp/
Template:  lightning
Version:  0.5
License:  GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html                 
*/

body {
	position: relative;
	background: #F3F3F3;
	color: #222222;
	overflow: hidden;
	font-display: swap
}
body .is-layout-flex{ margin: 0; }

.main-section{ margin-bottom: 0!important; }

.admin-bar .vk-mobile-nav-menu-btn{ display: none; }

.main-section--col--two { width: 100%; }
.sub-section--col--two { display: none; }

.home .site-body { padding-top: 0!important; padding-bottom: 0!important; }
.wp-block-cover { padding: 0; }

.page_top_btn { display: none!important; }

/************************************** ヘッダー *************************************/

.site-header { background: none; box-shadow: none;  z-index: 10!important; }
.site-header-container {
	position: relative;
	align-items: center;
    width: 100%!important;
    max-width: 100%!important;
    padding: 0;
}
.site-header-logo {
	display: flex;
	align-items: center;
	position: absolute;
	top: 0;
	margin-right: 0!important;
    margin-bottom: 0;
	padding: 0 30px;
    line-height: 0;
	width: 260px!important;
	height: 120px;
}
.site-header-logo  a{ width: 100%!important; }
.site-header-logo img {
    display: block;
    max-width: 100%;
	max-height: 100%!important;
    margin-left: 0!important;
}
.header-top { display: none; }

body:not(.header_scrolled) .global-nav--layout--float-right{ 
	height: 120px;
}

/*---------- グローバルナビゲーション ----------*/

.global-nav-list {
	position: fixed;
	align-items: center;
	background: #fff;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
	border-radius: 30px;
	padding: 0 55px 0 15px;
	height: 60px;
}
.device-mobile .global-nav-list>li{ padding: 0!important; }
.global-nav-list>li {
    height: 100%;
}
.global-nav-list>li:before { display: none; }
.global-nav--layout--float-right {
	padding: 0;
    margin-right: 40px;
}
.global-nav-list>li>a {
	display: block;
	position: relative;
	justify-content: flex-start;
	padding: 0 5px 20px 5px!important;
    margin: 0 1.5em;
	height: auto!important;
	overflow: visible!important;
	transition: 0.3s;
	z-index: 50;
}
.global-nav-list>li>a:hover::after {
	width: 100%;
}
.global-nav-list>li .global-nav-name {
	font-size: 16px!important;
}

.global-nav-list .menu-item { 
	position: relative;
	display: flex;
    align-items: center;
}

.global-nav-list .menu-item a{ position: relative; }

.global-nav-list>li>a{ margin: 0 18px 0; padding: 0!important; transition: 0.3s; }
.global-nav-list>li>a:hover{ color: #EA0437; }
.global-nav-list>li>ul.sub-menu{ top: 60px; }

#menu-item-179 a{ 
	position: relative;
	background: #5D5B5B; 
	border: 1px solid #5D5B5B;
	border-radius: 20px;
	color: #fff;
	padding: 6px 15px 6px 40px!important;
	transition: 0.3s;
}
#menu-item-179:last-of-type a:hover{ background: #fff; color: #5D5B5B;}
#menu-item-179:last-of-type a::before{
	content: "";
	position: absolute;
	top: 50%;
    left: 8px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/contact-icon.svg) no-repeat;
	width: 25px;
	height: 25px;
}
#menu-item-176 > a {
  pointer-events: none;
  cursor: default;
  color: inherit; /* 好みで */
  text-decoration: none;
}
#menu-item-177{ font-size: 16px!important; }
#menu-item-177 a{ width: 100%!important; transition: 0.3s; font-weight: bold!important; }
#menu-item-177 a:hover{ background: #FEA1B6; }
#menu-item-178{ font-size: 16px!important; }
#menu-item-178 a{ width: 100%!important; transition: 0.3s; font-weight: bold!important; }
#menu-item-178 a:hover{ background: #FEA1B6; }

.global-nav-list>li>ul.sub-menu{ background: #EA0437!important; width: 300px!important; }
.global-nav-list>li.menu-item-has-children::after{ border-bottom-color: #EA0437!important; }

/*---------- バーガーメニュー ----------*/

.button__container {
	display: block;
	position: fixed;
	top: 33px;
    right: 55px;
	height: 50px;
	width: 50px;
	cursor: pointer;
	-webkit-transition: opacity .25s ease;
	transition: opacity .25s ease;
	z-index: 1000;
}
.button__container:hover {
	opacity: 1;
}
.button__container.active .top {
	-webkit-transform: translateY(8px) translateX(0) rotate(45deg);
	transform: translateY(8px) translateX(0) rotate(45deg);
	background: #EA0437;
}
.button__container.active .middle {
	opacity: 0;
	background: #EA0437;
}
.button__container.active .bottom {
	width: 50%;
	-webkit-transform: translateY(-8px) translateX(0) rotate(-45deg);
	transform: translateY(-8px) translateX(0) rotate(-45deg);
	background: #EA0437;
}

.button__container .menu-txt {
	position: absolute;
	bottom: -40px;
	font-size: .9em;
	color: #fff;
	letter-spacing: .1em;
}
.button__container .menu-txt.change-color { color: #111; }

.button__container span {
	background: #EA0437;
	border: none;
	height: 3px;
	width: 50%;
	position: absolute;
	top: 16px;
	left: 0;
	right: 0;
	margin-left: 25%;
	-webkit-transition: all .35s ease;
	transition: all .35s ease;
	cursor: pointer;
}
.button__container span:nth-of-type(2) { top: 24px; }
.button__container span:nth-of-type(3) { top: 32px; }

/*.button__container:hover.active .top { top: 25px; }
.button__container:hover.active .bottom { top: 45px; }*/

/*.button__container span.change-color { background-color: #fff; }*/
/*.change-color{ 
border-left: solid 1px linear-gradient(180deg,rgb(0,1,3) 0%,rgb(0,2,70) 100%);
border-bottom: solid 1px linear-gradient(180deg,rgb(0,1,3) 0%,rgb(0,2,70) 100%);
background: linear-gradient(180deg,rgb(0,1,3) 0%,rgb(0,2,70) 100%);
}*/

/*.button__container p{ margin: 0; }
.button__container p::before{ 
content: "MENU";
font-size: 12px;
position: absolute;
bottom: 10px;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
color :#fff;
font-family: "Noto Serif JP",serif;
}

.button__container.active p::before{
content: "CLOSE";
color:#fff;
}*/

.button__container, #overlay{ display: block; }

.overlay {
	display: block;
	position: fixed;
	background: #fff;
	top: 0;
	right: 0;
	width: 100%;
	height: 0%;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: opacity .35s, visibility .35s, height .35s;
	transition: opacity .35s, visibility .35s, height .35s;
	overflow: hidden;
	overflow-y: auto;
}
.overlay.open {
	opacity: 1;
	visibility: visible;
	min-height: 100%;
	z-index: 100;
}

/*.overlay .link-nav_inr { display: flex; justify-content: space-between; margin: 0 auto; }
.overlay .link-nav_inr figure {
position: relative;
height: 100vh;
width: 35%;
background: url();
background-size: cover;
}
.overlay .link-nav_inr figure img { height: 100vh; object-fit: cover; }*/

.link-nav_inr{ height: 100vh;}
.overlay .link-area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 880px;
	width: 85%;
	height: 100vh;
	padding: 140px 0;
	margin: 0 auto;
}
.overlay .link-area .link-flex-box{
	display: flex;
	justify-content: space-between;
}
/*.overlay .link-area .link-img{ width: 36%; }
.overlay .link-area nav { width: 60%; }*/
.overlay .link-area nav { width: 100%; }
.overlay .link-area nav .link-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}
.overlay .link-area nav .link-list > li {
	width: 48%;
	border-bottom: 1px solid #ddd;
    padding: 0 0 25px 0;
    margin-bottom: 25px;
	opacity: 0;
	transform: translateY(20px);
	transition: transform 0.3s ease, opacity 0.2s ease;
}
.overlay .link-area nav .link-list > li:nth-child(1) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(2) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(3) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(4) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(5) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(6) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(7) { transition-delay: 0.4s; }
.overlay .link-area nav .link-list > li:nth-child(8) { transition-delay: 0.4s; }

.open .link-area nav .link-list > li {
	opacity: 1;
	transform: translateY(0);
	transition: transform 0.5s ease, opacity 0.9s ease;
}
/*.open .link-area nav .link-list > li:not(:last-of-type){ margin-left: 2.5em;}*/

.overlay .link-area nav .link-list > li a .ja {
	margin: 0;
	color: #222;
	font-size: 28px;
	font-weight: 700;
}
.overlay .link-area nav .link-list > li a .en {
	font-size: 18px;
	font-weight: 700;
	color: #EA0437;
	padding-bottom: 5px;
}

.overlay .link-area nav .link-list > li a {
	position: relative;
	display: flex;
	flex-direction: column;
	text-decoration: none;
	transition: .4s;
}
.overlay .link-area nav .link-list > li a:hover{ opacity: 0.5; }

.overlay .link-area nav .link-list > li .link-list-inner{ display: flex; flex-direction: column; }
.overlay .link-area nav .link-list > li .link-list-inner .ja{
	margin: 0;
	color: #222;
	font-size: 28px;
	font-weight: 700;
}
.overlay .link-area nav .link-list > li .link-list-inner .en{
	font-size: 18px;
	font-weight: 700;
	color: #EA0437;
	padding-bottom: 5px;
}
.overlay .link-area nav .link-list > li .link-list-child{
	margin: 20px 0 0 0;
	padding: 0;
}
.overlay .link-area nav .link-list > li .link-list-child li{ 
	position: relative;
	padding: 0 0 0 35px;
}
.overlay .link-area nav .link-list > li .link-list-child li::before{
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: 15px;
	height: 1px;
	background: #EA0437;
}
.overlay .link-area nav .link-list > li .link-list-child li:nth-child(1){ margin-bottom: 20px; }
.overlay .link-area nav .link-list > li .link-list-child li a{ color: #222; transition: 0.4s; font-size: 20px; font-weight: 500; }
.overlay .link-area nav .link-list > li .link-list-child li a:hover{ opacity: 0.5; color: #222!important; }


.vk-mobile-nav-menu-btn{ display: none!important; }

/************************************** フッター *************************************/

.site-footer .wp-block-image img{ width:240px; }
.site-footer { position: relative; border: 0; background: #222222; color: #fff; }
.site-footer-content .row{ padding-top: 60px; }
.site-footer .col-lg-6:nth-child(1) {
	flex: 0 0 calc( 100% - 660px );
	max-width: calc( 100% - 660px );
}
.site-footer .col-lg-6:nth-child(2) {
	flex: 0 0 660px;
	max-width: 660px;
}
.site-footer .footer-add{ font-size: 14px; }
.site-footer .footer-tel{ margin: 0; font-size: 24px; font-weight: bold; line-height: 1.4; }
.site-footer .footer-fax{ margin: 0; font-size: 24px; font-weight: bold; line-height: 1.4; }
.site-footer .widget_nav_menu{ display: none!important; }
.site-footer .footer-nav{
	padding: 0;
	margin: 0;
	list-style: none;
	width: 33.33%;
}
.site-footer .footer-nav li{ padding: 0; }
.site-footer .footer-nav-list span{ 
	position: relative;
	display: block;
	font-size: 16px; 
	font-weight: bold; 
	color: #fff;
	padding-left: 20px;
}
.site-footer .footer-nav-list span::before{
	content: "";
	position: absolute;
	top: 1px;
	left: 0;
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/footer-icon.svg) no-repeat;
	width: 10px;
	height: 15px;
}
.site-footer .footer-nav-list a{
	display: block;
}
.site-footer .footer-nav-child{ list-style: none; padding: 0; margin: 20px 0; }
.site-footer .footer-nav-child span{ display: block; font-size: 16px; font-weight: bold; color: #fff; }
.site-footer .footer-nav-child-list{ list-style: none; padding: 0; margin: 20px 0; }
.site-footer .footer-nav-child-list span{ 
	position: relative; 
	display: block; 
	font-size: 14px; 
	font-weight: bold; 
	color: #fff; 
	padding-left: 15px;
}
.site-footer .footer-nav-child-list span::before{
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	background: #fff;
	width: 10px;
	height: 2px;
}
.site-footer #block-18 { display: flex; gap: 20px; }
.site-footer #block-18::after{ display: none; }

.page-top{
	position: absolute;
	right: 15px;
	bottom: -90px;
}
.page-top a{
	position: relative;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding-right: 40px;
}
.page-top a:before{
	content: "";
	position: absolute;
	right: 0;
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/page-top-icon.svg) no-repeat;
	width: 25px;
	height: 25px;
}

.localNavi>div>ul, .localNavi>ul, 
.widget .localNavi>div>ul, .widget .localNavi>ul,
.widget_archive>div>ul, .widget_archive>ul, 
.widget_categories>div>ul, .widget_categories>ul,
.widget_link_list>div>ul, .widget_link_list>ul, 
.widget_nav_menu>div>ul, .widget_nav_menu>ul,
.widget_pages>div>ul, .widget_pages>ul, 
.widget_postlist>div>ul, .widget_postlist>ul{
	display: flex; 
	flex-wrap: wrap;
	justify-content: flex-end; 
	flex-direction: column;
	max-width: 460px;
}

.site-footer .widget li { margin: 0 0 20px 0; }
.site-footer-copyright p { 
	font-size: 12px; 
	margin: 40px 0; 
	padding-top: 30px;
    border-top: 1px solid #B7B7B7;
	color: #B7B7B7; 
	text-align: left; 
}

#block-10{ margin: 0; }
#block-8{ margin-bottom: 20px; }

.footer_icon .wp-block-column{  flex-grow: 0!important; flex-basis: auto!important; }
.footer_icon img{ width: 40px; }

/************************************ トップページ ***********************************/

.home .type {
  width: 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.home .type::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80%;
    background: linear-gradient(180deg,rgba(#000, 0) 0, rgba(#000, .8) 80%, rgba(#000, .8) 100%);
}
.home .type a {
  display: inline-block;
  position: absolute;
  left: 32px;
  top: 25%;
  z-index: 100;
  padding: 10px 10px 50px;
  color: #4d4d4d;
  font-size: 10px;
  line-height: 1;
  letter-spacing: .2em;
  text-decoration: none;
  writing-mode: vertical-lr;
  transition: .2s;
  overflow: hidden;
  &::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 40px;
    background: #4d4d4d;
  }
}

.home #type06 a {
  &::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 40px;
    background: rgba(#fff, .4);
  }
  &::after {
    animation: sdl06 1.5s cubic-bezier(1, 0, 0, 1) infinite;
  }
}
@keyframes sdl06 {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

/*** お知らせ(トップ) ***/

.t-news-head{ display: flex; justify-content: space-between; margin-bottom: 50px; }
.t-news-ttl-area{ display: flex; align-items: center; }
.t-news-ttl-inner{ display: flex; }
.t-news-ttl{ position: relative; margin: 0 15px 0 0; padding-left: 55px; font-size: 30px; }
.t-news-ttl::before{ 
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: #EA0437;
	width: 35px;
	height: 8px;
}
.t-news-ttl-en{ margin: 0 30px 0 0; font-size: 30px; color:#D8D8D8; }
.t-news-ttl-txt{ margin: 0; font-size: 16px;  }

.top-news-inner{ display: flex; flex-wrap: wrap; gap: 26px; }
.top-news-list{ color: #222222; width: calc((100% - 52px) / 3); transition: 0.3s; }
.top-news-list:hover{ color: #222222; opacity: 0.6;}
.top-news-list .img{ width: 100%; }
.top-news-list .img img{ 
	aspect-ratio: 3 / 2; 
	width: 100%; 
	object-fit: cover;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1); 
	border-radius: 10px;
}
.top-news-list .tit{ font-size: 16px; font-weight: 700; margin: 20px 0; }
.time-cate .category{ 
	display: inline-block;
	padding: 5px 10px; 
	margin-left: 10px;
	background: #222222;
	font-size: 15px;
	color: #fff;
	border-radius: 15px;
}
.time-cate time{ color:#5D5B5B; font-weight: 700; }

#news-tb-btn{ display: none; }

/***　会社案内(トップ) ***/

.t-company-ttl-area{ display: flex; align-items: center; }
.t-company-ttl{ position: relative; margin: 0 15px 0 0; padding-left: 55px; font-size: 30px; }
.t-company-ttl::before{ 
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: #EA0437;
	width: 35px;
	height: 8px;
}
.t-company-ttl-en{ margin: 0 30px 0 0; font-size: 30px; color:#A2A1A1; }

.t-company-sec{
	position: relative;
    min-height: 100% !important;
	margin: 0 calc( 50% - 50vw );
    padding: 80px 0;
    overflow: visible;
}
.t-company-column{
	max-width: 1200px!important;
	gap: 50px!important;
}
.t-company-column .wp-block-column img{ border-radius: 15px; }
.t-company-column .wp-block-column p{ margin: 0 0 40px 0!important; }
.t-company-txt-ttl{ font-size: 26px; margin: 30px 0!important; }

/***　事業紹介(トップ) ***/

.t-business-ttl-area{ display: flex; align-items: center; margin-bottom: 40px; }
.t-business-ttl{ position: relative; margin: 0 15px 0 0; padding-left: 55px; font-size: 30px; }
.t-business-ttl::before{ 
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: #EA0437;
	width: 35px;
	height: 8px;
}
.t-business-ttl-en{ margin: 0 30px 0 0; font-size: 30px; color:#D8D8D8; }

.t-business-column{ gap: 50px!important; }
.t-business-column .wp-block-column img{ border-radius: 15px; box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1); }
.t-business-column .wp-block-column h3{ margin: 25px 0!important; }
.t-business-column .wp-block-column p{ margin-bottom: 30px!important; }

/*** 採用情報(トップ) ***/

.t-recruit-ttl-area{ 
	display: flex; 
	flex-direction: column;
}
.t-recruit-ttl{ position: relative; margin: 0 15px 0 0; padding-left: 55px; font-size: 30px; }
.t-recruit-ttl::before{ 
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: #EA0437;
	width: 35px;
	height: 8px;
}
.t-recruit-ttl-en{ 
	margin: 0 0 10px 0;
	font-size: 30px;
	color: rgba(243,243,243,0.5);
}
.t-recruit-sec{
	position: relative;
    min-height: 100% !important;
	margin: 0 calc( 50% - 50vw );
    padding: 100px 0;
    overflow: visible;
}
.t-recruit-column{
	display: flex;
	justify-content: center;
	gap: 60px;
}
.t-recruit-txt p{ margin-bottom: 40px!important;}

/*** 問い合わせ ***/

.contact-ttl-area{ 
	display: flex; 
	flex-direction: column;
	align-items: center;
	margin-bottom: 30px;
}
.contact-ttl{ 
	position: relative;
	margin: 0;
	padding-bottom: 40px;
	font-size: 30px;
}
.contact-ttl::before{ 
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background: #EA0437;
	width: 35px;
	height: 8px;
}
.contact-ttl-en{ 
	margin: 0 0 10px 0;
	font-size: 30px;
	color: rgba(243,243,243,0.5);
}
.contact-sec{
	position: relative;
    min-height: 100% !important;
	margin: 0 calc( 50% - 50vw );
    padding: 80px 0;
    overflow: visible;
}
.contact-txt{ text-align: center; margin-bottom: 40px!important; }
.contact-info-area{ display: flex; justify-content: center; gap: 40px; }
.contact-tel-box{ 
	width: 50%;
	background: #fff;
	border-radius: 15px;
	padding: 20px;
	color: #222;
	text-align: center;
}
.contact-tel-box p{ 
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 3px!important;
}
.contact-tel{
	position: relative; 
	font-size: 40px; 
	font-weight: bold;
	display: inline-block;
}
.contact-tel::before{
	content: "";
	position: absolute;
	top: 12px;
	left: -45px;
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/tel-icon.svg) no-repeat;
	width: 38px;
	height: 38px;
}
.contact-form-box{ 
	width: 50%;
	background: #fff;
	border-radius: 15px;
	padding: 20px;
	color: #222;
	text-align: center;
}
.contact-form-box p{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px!important;
}
#block-14{ margin: 0!important; }

.contact-cata-box{ margin-bottom: 35px!important; }
 
/**************************************** 共通 ***************************************/

.home .container, .home .container-lg, .home .container-md, .home .container-sm, .home .container-xl{
	max-width: 1200px;
	padding: 0;
	width: 90%;
}
.container, .container-lg, .container-md, .container-sm, .container-xl{
	max-width: 1200px;
	padding: 0;
	width: 90%;
}
.vk_outer-width-full.vk_outer-paddingLR-none>div>.vk_outer_container{
	max-width: 1200px!important;
	padding: 0;
	width: 100%!important;
}
.home .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){ 
	max-width: 1200px!important;
	width: 90%;
}

.comm-btn a{
	position: relative;
	display: inline-block;
	padding: 10px 65px 10px 20px;
	background: #EA0437;
	border: 1px solid #EA0437;
	border-radius: 30px;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	transition: 0.3s;
}
.comm-btn a::before{
	content: "";
	position: absolute;
	top: 50%;
    right: 12px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/comm-btn-arrow.svg) no-repeat;
	width: 25px;
	height: 25px;
}
.comm-btn a:hover{
	background: #fff;
	color: #EA0437;
}
.cate-btn{ 
	position: fixed;
	top: 20%;
	right: 0;
	transform: translateX(0px);
	background: #EA0437;
	border-top: 1px solid #EA0437;
	border-left: 1px solid #EA0437;
	border-bottom: 1px solid #EA0437;
	border-radius: 6px 0 0 6px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
	z-index: 10;
	transition: 0.3s;
}
.cate-btn:hover{ background: #fff; }
.cate-btn a{
	position: relative;
	display: block;
	padding: 45px 10px 15px 10px;
	-ms-writing-mode: tb-rl;
  	writing-mode: vertical-rl;
	font-weight: bold;
	color: #fff;
}
.cate-btn a:hover{ color: #EA0437; }
.cate-btn a::before{
	content: "";
	position: absolute;
	top: 8px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/cata-icon.svg) no-repeat;
	width: 30px;
	height: 30px;
	font-weight: bold;
}
.contact-btn { text-align: center; margin-top: 60px; }
.contact-btn a{ 
	display: block;
	width: 100%;
	background: #EA0437!important;
	border: 1px solid #EA0437;
	border-radius: 10px;
	color: #ffff;
	font-weight: bold;
	text-decoration: underline;
	text-decoration-style: solid;
	padding: 20px;
	transition: 0.3s;
}
.contact-btn a:hover{ background: #fff!important; color: #EA0437;  }
/*.contact-btn a span{ position: relative; padding-left: 40px; }
.contact-btn a span::before{
	content:"";
	position: absolute;
	top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: url(http://192.168.0.148/kaneki-n.co.jp/wp-content/uploads/2025/07/contact-btn-icon.svg) no-repeat;
	width: 30px;
	height: 30px;
}*/

/*** 見出し ***/

.h2-ttl{
	position: relative;
	font-size: 28px;
	padding-top: 30px;
	margin-bottom: 60px!important;
	border-top: solid 4px #ddd;
}
.h2-ttl::before{
	content: "";
	position: absolute;
	top: -4px;
	left: 0;
	width: 40px;
	height: 4px;
	background: #EA0437;
}
.h3-ttl{
	margin: 0 0 60px 0!important;
	padding-bottom: 40px!important;
	border-bottom: 1px solid #707070;
}
.h3-ttl span{ color: #EA0437; }

p{ line-height: 2; }

/*** page-header ***/

.breadcrumb{ border: none; }
.fa-solid, .fas,.fa-home::before{ display: none!important; }
.breadcrumb-list__item a{ text-decoration: none; text-decoration-style: solid; }

.page-header-title{ 
	padding-top: 35px!important; 
	font-size: 40px!important;
	text-align: left!important;
	color: #222;
}
.page-header{ height: 300px; }

.site-body{ padding: 100px 0!important; }

#tb-block{ display: none!important; }


/************************************** お知らせ *************************************/

.col-12{ padding: 0; }
.post-type-news .page-header,
.single-news .page-header{
	background: #F3F3F3;
	height: 220px;
}
.post-type-news .page-header::before{ display: none; }
.post-type-news .site-body,
.single-news .site-body{ padding-bottom: 100px!important; }

.post-type-news h1.page-header-title::before,
.single-news .page-header-title::before{
	content: "NEWS";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #EA0437;
}
.post-type-news .post-list{ margin: 0!important; gap: 26px;}
.post-type-news .news-item-list{ 
	width: calc((100% - 52px) / 3); 
	flex: 0 0 calc((100% - 52px) / 3);
    max-width: calc((100% - 52px) / 3);
	transition: 0.3s;
}
.post-type-news .news-item-list:hover{ opacity: 0.6; }
.post-type-news .news-thumb img{
	aspect-ratio: 3 / 2;
    width: 100%;
    object-fit: cover;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
}
.post-type-news .news_ttl{ margin: 20px 0; }
.post-type-news .news_ttl a{ color: #222; font-size: 16px; font-weight: 700; }

.post-type-news .news-item-list .news-item .news_ttl{ width: 100%; }
.post-type-news .news-item-list .news-item .news_ttl a{ 
	display: block; 
	width: 100%; 
	font-size: 16px; 
	color: #00161D; 
	transition: all .4s;
}
.post-type-news .news_cate a{
	display: inline-block;
    padding: 5px 10px;
    margin-left: 10px;
    background: #222222;
    font-size: 15px;
    color: #fff;
    border-radius: 15px;
}
.post-type-news .news_info{
	color: #5D5B5B;
    font-weight: 700;
}
.entry-header{ 
	display: flex; 
	flex-direction: column-reverse; 
	margin-bottom: 50px; 
	padding-bottom: 30px;
	border-bottom: 1px solid #ddd;
}
.entry-title{ font-size: 30px;  margin: 0 0 40px 0;  }
.entry-meta { position: relative; margin-bottom: 15px; }
.entry-meta-item{ font-size: 16px; color: #6E7071; }
.single-news .fa-regular,.single-news .far,.single-news .next-prev{ display: none!important; }

.post-type-news .entry-data{ display: flex; align-items: center; }
.post-type-news .entry-data time{
	color: #5D5B5B;
    font-weight: 700;
}
.post-type-news .article__category a{
	display: inline-block;
    padding: 5px 10px;
    margin-left: 10px;
    background: #222222;
    font-size: 15px;
    color: #fff;
    border-radius: 15px;
}
.page-back__button{ text-align: center; margin: 100px 0 0 0; }
.page-back__button a{
	position: relative;
    display: inline-block;
    padding: 10px 65px 10px 20px;
    background: #EA0437;
    border: 1px solid #EA0437;
    border-radius: 30px;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    transition: 0.3s;
}
.page-back__button a::before{
	content: "";
	position: absolute;
	top: 50%;
    right: 12px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background: url(https://kaneki-n.co.jp/wp-content/uploads/2025/06/comm-btn-arrow.svg) no-repeat;
	width: 25px;
	height: 25px;
}
.page-back__button a:hover{
	background: #fff;
	color: #EA0437;
}
.entry-meta-data-list{ display: none; }

/********************************* 会社案内 ********************************/

.page-id-163 .page-header-title{ color: #fff; }
.page-id-163 .page-header-title::before{
	content: "COMPANY";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #fff;
}
.company-mess-sec{ gap: 45px!important; }
.company-mess-sec .wp-block-column img{ border-radius: 15px; }
.company-mess-sec .ceo-name{ margin: 20px 0 0 0!important; font-weight: bold; }
.company-profile-sec{ gap: 40px!important; }
.company-profile .row{
	display: flex;
	margin: 0 0 25px 0;
	padding-bottom: 25px;
	border-bottom: 2px solid #ddd;
}
.company-profile .row:first-child{ border-top: 2px solid #ddd; padding-top: 25px; }
.company-profile dt{ width: 160px; margin: 0; color: #7D8492; }
.company-profile dd{ width: calc( 100% - 180px ); font-weight: 600; color: #333; }

.map-wrap {
  position: relative;
  width: 100%;
  padding-top: 33.333%; /* 高さ = 幅の1/3 */
  height: 0;
  overflow: hidden;
}

.map-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.map-info{ display: flex; margin-top: 20px; }
.map-info-ttl{ font-weight: bold; margin: 0 40px 0 0; }

/********************************* 事業紹介 ********************************/

/*** 木粉事業について ***/
.page-id-167 .page-header-title{ color: #fff; }
.page-id-167 .page-header-title::before{
	content: "BUSINESS";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #fff;
}
.business-product-sec{ gap: 50px!important; }
.business-product-sec .wp-block-column:nth-child(1) figure img{ 
	border-radius: 15px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-product{ display: flex; align-items: center; margin-bottom: 30px; }
.business-product .product-label{ 
	background: #DFDFDF;
	border-radius: 6px;
	color: #7D8492;
	font-size: 20px;
	font-weight: bold;
	padding: 5px 15px;
	margin-right: 15px;
}
.business-product .product-name{ 
	font-size: 20px;
	font-weight: bold;
}
.business-01-about-sec { gap: 40px!important; }
.business-01-about-sec .wp-block-column figure img{ 
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-01-h4-ttl{
	background: #fff;
	border-left: 10px solid #EA0437;
	border-radius: 0 6px 6px 0;
	padding: 10px 15px;
    margin-top: 30px !important;
}
.business-01-case-list-sec{
	background: #fff;
	border-radius: 15px;
	padding: 30px;
}
.business-01-case-list-sec h4{ font-size: 24px; text-align: center!important; }
.business-01-case-list{ 
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	list-style: none; 
	padding: 0;
	margin: 30px 0 0 0;
}
.business-01-case-list li{ position: relative; padding: 0 0 0 20px; margin: 0; }
.business-01-case-list li::before{
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: 15px;
	height: 15px;
	background: #EA0437;
	border-radius: 50%;
}
.business-01-strengths-ttl{ 
	display: flex;
	align-items: center;
	background: #fff;
	border-radius: 0 8px 8px 0;
	margin-bottom: 40px!important;
}
.business-01-strengths-ttl .ttl{
	width: 100%;
	padding-left: 20px;
	color: #EA0437;
}
.business-01-strengths-ttl .nomber{
	padding: 15px 10px;
	background: #EA0437;
	border-radius: 8px 0 0 8px;
	font-size: 40px;
	color: #fff;
}
.business-01-strengths-column{ gap: 40px!important; }
.business-01-strengths-column .wp-block-column figure{ margin-bottom: 20px!important; }
.business-01-strengths-column .wp-block-column figure img{ 
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-01-mess-sec{
	display: flex;
	justify-content: space-between;
	background: #fff;
	border-radius: 0 8px 8px 0;
	border-radius: 6px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-01-mess-sec figure{ 
	display: block;
	width: 340px; 
	margin: 0!important;
	border-radius: 8px 0 0 8px;
}
.business-01-mess-sec figure img{ 
	height: 100%; object-fit: cover; 
	vertical-align: bottom; 
	border-radius: 8px 0 0 8px;
}
.business-01-mess-ttl h3{
	font-size: 26px;
	font-weight: bold;
	text-align: center!important;
	margin: 10px 0 30px 0;
}
.business-01-mess-ttl h3 span{ color: #EA0437; }
.business-01-mess-txt-area{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center!important;
	width: calc( 100% - 300px );
	padding: 0  40px;
}
.business-01-mess-ttl p{
	margin: 0!important;
	font-size: 14px;
	font-weight: bold;
	color: #7D8492;
}
.business-01-mess-ttl p span{ color: #EA0437;}

.business-01-hinshitsu-column{ gap: 40px!important; }
.business-01-hinshitsu-column .wp-block-column figure{ margin-bottom: 20px!important; }
.business-01-hinshitsu-column .wp-block-column figure img{ 
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-example{ display: flex; align-items: center; margin-bottom: 30px; }
.business-example .example-label{ 
	background: #DFDFDF;
	border-radius: 6px;
	color: #7D8492;
	font-size: 20px;
	font-weight: bold;
	padding: 5px 15px;
	margin-right: 15px;
}
.business-example .example-name{ 
	font-size: 20px;
	font-weight: bold;
}
.business-01-cost-column{ gap: 40px!important; }
.business-01-cost-column .wp-block-column figure{ margin-bottom: 20px!important; }
.business-01-cost-column .wp-block-column figure img{ 
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-01-cost-img-list figure{ margin-bottom: 15px!important; }
.business-01-cost-img-list figure img{
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-01-delivery-column{ gap: 30px!important; }
.business-01-delivery-column .wp-block-column figure img{ 
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}

/*** プラスチック粉事業について ***/
.page-id-169 .page-header-title{ color: #fff; }
.page-id-169 .page-header-title::before{
	content: "BUSINESS";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #fff;
}
.business-02-column{ gap: 40px!important; }
.business-02-column .wp-block-column figure{ margin-bottom: 20px!important; }
.business-02-column .wp-block-column figure img{ 
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.business-02-flow{ display: flex; align-items: center; background: #fff; padding: 20px; border-radius: 6px; }
.business-02-flow-ttl{ 
	color: #EA0437; 
	font-size: 20px; 
	font-weight: bold; 
	padding-right: 15px;
	margin-right: 20px; 
	border-right: 1px solid #222;
}
.business-02-flow-txt{ font-size: 20px; font-weight: bold; }

/********************************* 採用情報 ********************************/

.page-id-172 .page-header{ background-position: top center!important; }
.page-id-172 .page-header-title{ color: #fff; }
.page-id-172 .page-header-title::before{
	content: "RECRUIT";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #fff;
}
.recruit-mess-column-01,.recruit-mess-column-02{ gap: 40px!important; }
.recruit-mess-column-01 .wp-block-column figure img,
.recruit-mess-column-02 .wp-block-column figure img{ 
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 6px;
}
.recruit-mess-name{ line-height: 2; margin-bottom: 40px!important; }
.recruit-mess-ttl{
	position: relative;
	font-size: 24px;
	padding-left: 35px;
}
.recruit-mess-ttl::before{
	content: "";
	position: absolute;
	top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: 25px;
	height: 4px;
	background: #EA0437;
}
.recruit-profile .row{
	display: flex;
	margin: 0 0 25px 0;
	padding-bottom: 25px;
	border-bottom: 2px solid #ddd;
}
.recruit-profile .row:first-child{ border-top: 2px solid #ddd; padding-top: 25px; }
.recruit-profile dt{ width: 160px; margin: 0; color: #7D8492; }
.recruit-profile dd{ width: calc( 100% - 180px ); font-weight: 600; color: #333; }

.page-id-172 .wp-block-button a{ font-size: 20px; font-weight: bold; text-decoration: underline #fff;}

.wp-block-group .wp-block-heading,.wp-block-group .wp-block-columns,
.wp-block-group .recruit-profile{ max-width: 1200px!important; }

/*************************************** お問い合わせフォーム **************************************/

.page-id-16 .page-header,.page-id-387 .page-header,.page-id-389 .page-header{
	background: #F3F3F3;
	height: 220px;
}
.page-id-16 .page-header::before,
.page-id-387 .page-header::before, 
.page-id-389 .page-header::before{ display: none; }

.page-id-16 h1.page-header-title::before,
.page-id-387 h1.page-header-title::before,
.page-id-389 h1.page-header-title::before{
	content: "CONTACT";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #EA0437;
}
.page-id-16 .site-body{
    padding: 60px 0 !important;
}
.contact-box-add-column{ margin-bottom: 35px; }
.contact-box-add-column p{ display: flex; justify-content: space-between; }
.contact-box-add-column br{ display: none!important; }
.contact-box-add-ttl{ width: 180px; }
.contact-box-add{ width: calc( 100% - 180px ); }
.contact-box p { margin-bottom: 0!important; }
.contact-box{ margin-bottom: 35px!important; }
.contact-cata-box p{ margin: 0!important; }
.catalog-reason-box{ margin-bottom: 35px!important; }

.wpcf7-form input{
	font-family: "Noto Sans JP",sans-serif!important;
    font-weight: 300!important;
	font-size: 16px;
	line-height: 1.4!important;
}
.wpcf7-form textarea{
	font-family: "Noto Sans JP",sans-serif!important;
    font-weight: 300!important;
	font-size: 16px;
	line-height: 1.8!important;
}
.contact-box strong{ display: block; margin-bottom: 15px; }
.contact-box .hissu{ color: #EA0437; font-weight: bold; margin-left: 10px; }
.contact-box br{ display: none!important; }

.contact-box-add input{ margin-bottom: 20px!important; }

.wpcf7-list-item{ margin: 0!important; }
.wpcf7-form-control .last{ margin-left: 15px!important; }
.wpcf7-form-control .first{ margin-right: 15px!important; }
.wpcf7-list-item-label a{ text-decoration-style: solid; text-decoration-color: #EA0437; font-weight: bold; transition: 0.3s; }

.input_inner{ display: flex; justify-content: center; margin-top: 80px; }
.input_inner p{ margin: 0!important; }
.wpcf7-previous{
	border: 1px solid #EA0437;
    background-color: #EA0437;
    color: #fff;
    padding: .5em 2em;
	margin-right: 15px;
    border-radius: 5px;
	cursor: pointer;
}
.wpcf7-previous:hover{
	background: #bb032c;
}

.submit-button{ text-align: center; }

.postal{ display: flex; }
.postal span{ margin-left: 10px; color: #444; }

/*************************************** 個人情報保護方針 **************************************/

.page-id-3 .page-header{
	background: #F3F3F3;
	height: 220px;
}
.page-id-3 .page-header::before{ display: none; }

.page-id-3 h1.page-header-title::before{
	content: "PRIVACY";
    position: absolute;
	top: 0;
	left: 0;
    font-size: 26px;
	font-weight: bold;
    line-height: 1;
    color: #EA0437;
}

.privacy-ttl{ 
	position: relative; 
	padding: 0 0 15px 25px; 
	border-bottom: 1px solid #ddd;
}
.privacy-ttl::before{
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	background: #EA0437;
	width: 5px;
	height: 25px;
}

/*************************************** メインビジュアル(SWIPER) **************************************/

.main-visual-swiper {
	width: auto;
	margin-top: 0;
	margin-bottom: 0;
    margin-left: calc(50% - 50vw)!important;
    margin-right: calc(50% - 50vw)!important;
    max-width: 100vw!important;
	overflow: visible!important;
}

.main-visual-swiper .vk_slider_item{
  height: 450px;
}

.main-visual-swiper .vk_slider_item img {
	height: 450px!important;
	width: 100%;
	border-radius: 15px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	object-fit: cover;
}

.vk_slider_item .vk_slider_item-background-area:not([class*=-background-color]){
	background: #f3f3f3!important;
}

.wp-block-image { margin: 0!important; }

.vk_slider_item_container{
	max-width: 100%!important;
	width: 95%!important;
	height: 450px!important;
}

.swiper-pagination-bullet {
	display: flex;
	flex-direction: column;
	width: 12px !important;
	height: 12px !important;
	margin: 0 0 0 10px !important;
	background: #00161D!important;
}
.swiper-pagination-bullet:first-child {
	margin: 0 !important;
}

.swiper.margin { margin: 100px 0; }
.swiper.margin-up { margin-top: -100px; }

.ltg-slide picture img { width: 100%; height: 450px!important; object-fit: cover; }
/*.ltg-slide picture{ overflow: hidden; }*/

.swiper-horizontal>.swiper-pagination-bullets, 
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom, .swiper-pagination-fraction{
	display: none!important;
	left: auto!important;
	right: 30px!important;
	bottom: 20px !important;
    width: auto !important;
    z-index: 9999 !important;
}


/*@keyframes zoom-in {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}

.swiper-slide-active picture img,
.swiper-slide-duplicate-active picture img,
.swiper-slide-prev picture img {
  animation: zoom-in 10s linear 0s 1 normal both;
}*/


/********************************** レスポンシブCSS **********************************/

@media only screen and (max-width: 1366px){
	
	/*** トップページ ***/
	
	.main-visual-swiper .vk_slider_item,
	.main-visual-swiper .vk_slider_item img{ height: 300px!important; }
	
}

@media only screen and (max-width: 1024px){ 
	
	/*** フッター ***/
	
	.site-footer .col-lg-6:nth-child(1) {
		flex: 0 0 calc(100% - 400px);
		max-width: calc(100% - 400px);
	}
	.site-footer .col-lg-6:nth-child(2){ flex: 0 0 400px; max-width: 400px; }
	
}

@media only screen and (max-width: 991px){
	
	/*** 共通 ***/
	
	.page-header { height: 240px; }
	
	/*** ヘッダー ***/
	
	.global-nav{ display: block!important; height: 80px!important; }
	.global-nav-list{ display: none; }
	.button__container{ top: 15px; right: 10px; }
	
	.site-header-logo{ width: 200px!important; height: 80px; }
	
	/*** フッター ***/
	
	.site-footer .col-lg-6:nth-child(1) {
		flex: 0 0 calc(100% - 380px);
		max-width: calc(100% - 380px);
	}
	.site-footer .col-lg-6:nth-child(2){ flex: 0 0 380px; max-width: 380px; }
	.site-footer #block-18{ flex-wrap: wrap; }
	.site-footer .footer-nav{ width: calc(50% - 10px); }
	.site-footer .footer-nav-list span,
	.site-footer .footer-nav-child span{ font-size: 14px; line-height: 1.4; }
	.site-footer .wp-block-image img{ width: 180px; }
	
	/*** トップページ ***/
	
	.main-visual-swiper .vk_slider_item,
	.main-visual-swiper .vk_slider_item img{ height: 240px!important; }
	
	.cate-btn{ top: 100px; }
	
	#news-pc-btn{ display: none; }
	#news-tb-btn{ display: block; margin-top: 40px;}
	
	.t-news-head{ margin-bottom: 40px; }
	.t-news-ttl,.t-company-ttl,.t-business-ttl,.t-recruit-ttl{ font-size: 24px; padding-left: 40px; }
	.t-news-ttl::before,.t-company-ttl::before,.t-business-ttl::before,.t-recruit-ttl::before,.contact-ttl::before{ width: 25px; height: 5px; }
	.t-news-ttl-en,.t-company-ttl-en,.t-business-ttl-en,.t-recruit-ttl-en,.contact-ttl-en{ font-size: 24px; }
	.time-cate .category,.post-type-news .news_cate a{ font-size: 14px; padding: 3px 10px; }
	
	.t-company-txt-ttl{ font-size: 22px; }
	
	.t-business-column .wp-block-column h3{ margin: 20px 0!important; }
	
	.t-recruit-sec{ padding: 60px 0; }
	.t-recruit-txt p{ margin-bottom: 30px!important; }
	
	.contact-sec{ padding: 60px 0; }
	.contact-ttl{ font-size: 24px; padding-bottom: 30px; }
	.contact-info-area,.contact-ttl-area{ width: 100%; }
	.contact-info-area{ gap: 25px; }
	.contact-tel-box,.contact-form-box{ border-radius: 10px; padding: 15px; }
	.contact-tel-box p,.contact-form-box p{ font-size: 16px; }
	.contact-form-box p{ margin-bottom: 15px!important; }
	.contact-tel{ font-size: 26px; }
	.contact-tel::before{ width: 27px; height: 27px; top: 7px; left: -33px;  }

}

@media only screen and (max-width: 781px){
	
	/*** 共通 ***/
	
	#pc-block{ display: none!important; }
	#tb-block{ display: block!important; }
	
	.site-body { padding: 80px 0 !important; }
	
	/*** トップページ ***/
	
	.t-company-column .wp-block-column:nth-child(1){ flex-basis: 40%!important; }
	.t-company-column .wp-block-column:nth-child(2){ flex-basis: 50%!important; }
	.t-company-column .wp-block-column figure img{ aspect-ratio: 3 / 3; object-fit: cover; object-position: left; }	
	
	.t-business-column .wp-block-column:nth-child(1){ flex-basis: 45%!important; }
	.t-business-column .wp-block-column:nth-child(2){ flex-basis: 45%!important; }
	
	/*** 会社案内 ***/
	
	.company-mess-sec .wp-block-column:nth-child(1){ flex-basis: 20%!important; }
	.company-mess-sec .wp-block-column:nth-child(2){ flex-basis: 65%!important; }
	
	/*** 木粉事業について ***/
	
	.business-product-sec{ gap: 30px!important; }
	.business-product-sec .wp-block-column:nth-child(1){ flex-basis: 40%!important; }
	.business-product-sec .wp-block-column:nth-child(2){ flex-basis: 50%!important; }
	
	.business-01-about-sec { gap: 30px !important; }
	.business-01-about-sec .wp-block-column:nth-child(1){ flex-basis: 40%!important; }
	.business-01-about-sec .wp-block-column:nth-child(2){ flex-basis: 40%!important; }
	
	.business-01-strengths-column { gap: 30px !important; }
	.business-01-strengths-column .wp-block-column:nth-child(1){ flex-basis: 20%!important; }
	.business-01-strengths-column .wp-block-column:nth-child(2){ flex-basis: 60%!important; }
	.business-01-strengths-column .wp-block-column figure{ margin: 0; }
	.business-01-strengths-column .wp-block-column figure img{ width: 100%; }
	
	.business-01-mess-sec figure{ width: 240px; }
	.business-01-mess-txt-area{ width: calc( 100% - 240px );  padding: 10px 20px; }
	
	.business-01-hinshitsu-column { gap: 30px !important; }
	.business-01-hinshitsu-column .wp-block-column:nth-child(1){ flex-basis: 40%!important; }
	.business-01-hinshitsu-column .wp-block-column:nth-child(2){ flex-basis: 40%!important; }
	
	.business-01-cost-column { gap: 30px !important; }
	.business-01-cost-column .wp-block-column:nth-child(1){ flex-basis: 40%!important; }
	.business-01-cost-column .wp-block-column:nth-child(2){ flex-basis: 40%!important; }
	
	.business-01-cost-img-list { gap: 30px !important; }
	.business-01-cost-img-list .wp-block-column:nth-child(1){ flex-basis: 30%!important; }
	.business-01-cost-img-list .wp-block-column:nth-child(2){ flex-basis: 30%!important; }
	.business-01-cost-img-list .wp-block-column:nth-child(3){ flex-basis: 30%!important; }
	
	.business-01-delivery-column { gap: 30px !important; }
	.business-01-delivery-column .wp-block-column:nth-child(1){ flex-basis: 30%!important; }
	.business-01-delivery-column .wp-block-column:nth-child(2){ flex-basis: 30%!important; }
	
	/*** プラスチック粉事業について ***/
	
	.business-02-column{ gap: 30px!important; }
	.business-02-column .wp-block-column:nth-child(1){ flex-basis: 30%!important; }
	.business-02-column .wp-block-column:nth-child(2){ flex-basis: 50%!important; }
	
	/*** 採用情報 ***/
	
	.page-id-172 .h2-ttl,.page-id-172 .h3{ width: 100%; }
	
	.recruit-mess-column-01{ width: 100%; gap: 30px!important; }
	.recruit-mess-column-01 .wp-block-column:nth-child(1){ flex-basis: 30%!important; }
	.recruit-mess-column-01 .wp-block-column:nth-child(2){ flex-basis: 50%!important; }
	
	.recruit-mess-column-02{ width: 100%; gap: 30px!important; }
	.recruit-mess-column-02 .wp-block-column:nth-child(1){ flex-basis: 60%!important; }
	.recruit-mess-column-02 .wp-block-column:nth-child(2){ flex-basis: 30%!important; }
	
	.recruit-mess-ttl{ font-size: 20px; }
	
	.recruit-profile{ width: 100%; }
	
}

@media only screen and (max-width: 640px){
	
	/*** ヘッダー ***/
	
	.global-nav{ display: block!important; height: 60px!important; }
	.global-nav-list{ display: none; }
	.button__container{ top: 5px; right: 5px; }
	
	.site-header-logo{ padding: 0 20px; width: 170px!important; height: 60px; }
	
	.overlay .link-area nav .link-list{ flex-direction: column; }
	.overlay .link-area nav .link-list > li{ width: 100%; padding-bottom: 15px; margin-bottom: 15px; }
	.overlay .link-area nav .link-list > li a .ja,.overlay .link-area nav .link-list > li .link-list-inner .ja{ font-size: 20px; }
	.overlay .link-area nav .link-list > li a .en, .overlay .link-area nav .link-list > li .link-list-inner .en{ font-size: 14px; }
	.overlay .link-area nav .link-list > li .link-list-child li{ padding-left: 25px; }
	.overlay .link-area nav .link-list > li .link-list-child li a{ font-size: 16px; }
	.overlay .link-area nav .link-list > li .link-list-child li:nth-child(1){ margin-bottom: 10px; }
	
	/*** フッター ***/
	
	.site-footer-content .row { padding-top: 40px; }
	.site-footer .col-lg-6:nth-child(1) {
        flex: 0 0 100%;
        max-width: 100%;
    }
	.site-footer #block-18{ display: none; }
	.site-footer-copyright p{ margin: 25px 0; padding-top: 25px; font-size: 10px; }
	.site-footer .wp-block-image img{ width: 160px; }
	
	/*** 共通 ***/
	
	.cate-btn{ display: none; }
	
	.comm-btn a{ padding: 10px 55px 10px 20px; }
	.comm-btn a::before{ right: 10px; width: 23px; height: 23px; }
	
	.contact-btn{ text-align: left; }
	.contact-btn a{ border-radius: 6px; padding: 15px; }
	
	.page-header-title { padding-top: 30px !important; font-size: 25px !important; }
	
	.h2-ttl{ font-size: 20px; margin-bottom: 30px!important; }
	.h2-ttl::before{ width: 25px; }
	.h3-ttl{ font-size: 20px; line-height: 1.8; margin-bottom: 25px!important; padding-bottom: 20px!important; }
	
	.site-body { padding: 40px 0 60px 0!important; }
	
	/*** トップページ ***/
	
	.top-news-inner{ gap: 0; }
	.t-news-head{ margin-bottom: 45px; }
	.t-news-ttl-inner{ margin-bottom: 15px; }
	.t-news-ttl-area{ flex-direction: column; align-items: flex-start; }
	.t-news-ttl-txt{ font-size: 14px; }
	.top-news-list{ 
		display: flex;
		justify-content: space-between;
		width: 100%; 
		border-bottom: 1px #DFDFDF solid;
		padding-bottom: 25px;
		margin-bottom: 25px;
	}
	.top-news-list .img{ width: 120px; }
	.top-news-list .img img{ border-radius: 6px; }
	.top-news-list .data{ width: calc( 100% - 140px ); }
	.top-news-list .tit{ font-size: 14px; margin: 0 0 15px 0; }
	.time-cate .category,.post-type-news .news_cate a{ font-size: 12px; }
	#news-tb-btn{ margin-top: 25px; }
	
	.t-company-sec{ padding: 60px 0; }
	.t-company-column{ flex-direction: column!important; }
	.t-company-column .wp-block-column figure img{ border-radius: 10px; aspect-ratio: 3 / 1.2; object-position: top; }
	.t-company-column{ gap: 35px!important; }
	.t-company-txt-ttl{ font-size: 18px; }
	
	.t-business-column .wp-block-column img{ border-radius: 10px; }
	.t-business-column .wp-block-column h3{ font-size: 18px; }
	
	.t-recruit-column{ flex-direction: column; width: 100%; gap: 0; }
	.t-recruit-ttl-area{ flex-direction: column; align-items: center; margin-bottom: 20px; }
	.t-recruit-ttl{ padding: 0; margin: 0; padding-bottom: 20px; }
	.t-recruit-ttl::before{
		content: "";
		position: absolute;
		top: auto;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		background: #EA0437;
		width: 25px;
		height: 5px;
	}
	.t-recruit-txt p{ text-align: center; }
	.center-btn{ text-align: center; }
	
	.contact-sec,.t-recruit-sec { padding: 40px 0;}
	.contact-ttl{ padding-bottom: 20px; }
	.contact-info-area{ flex-direction: column; gap: 15px; }
	.contact-tel-box{ width: 100%; }
	.contact-form-box{ width: 100%; }
	.contact-txt{ width: 100%; margin-bottom: 30px!important; }
	
	/*** お知らせ ***/
	
	.post-type-news .site-body, .single-news .site-body { padding-bottom: 40px !important; }
	.post-type-news .page-header, .single-news .page-header{ height: 170px; }
	.post-type-news h1.page-header-title::before, 
	.single-news .page-header-title::before{ font-size: 20px; }
	.post-type-news .news-item-list{ 
		width: 100%;
		flex: 0 0 100%;
   		max-width: 100%;
	}
	.post-type-news .post-list{ gap: 0; }
	.post-type-news .news-item-list{ 
		display: flex;
		justify-content: space-between;
        width: 100%;
        border-bottom: 1px #DFDFDF solid;
        padding-bottom: 25px;
        margin-bottom: 25px;
	}
	.post-type-news .news-item-list .news-thumb{ width: 120px; }
	.post-type-news .news-item-list .news-thumb img{ border-radius: 6px; }
	.post-type-news .news-item-list .news_data{ width: calc( 100% - 140px ); }
	.post-type-news .news_ttl{ font-size: 14px; margin: 0 0 15px 0; }
	
	/*** 会社案内 ***/
	
	.page-id-163 .page-header{ height: 170px; }
	.page-id-163 h1.page-header-title::before{ font-size: 20px; }
	
	.company-mess-sec{ gap: 30px!important; }
	.company-mess-sec .wp-block-column:nth-child(1){
		display: flex;
		align-items: center;
		flex-basis: 100%!important;
		background: #fff;
		border-radius: 0 6px 6px 0;
	}
	.company-mess-sec .wp-block-column:nth-child(1) figure{ width: 130px; }
	.company-mess-sec .wp-block-column:nth-child(1) figure img{ 
		aspect-ratio: 3 / 3; 
		object-fit: cover;
		object-position: top;
		border-radius: 6px 0 0 6px;
	}
	.company-mess-sec .wp-block-column:nth-child(1) .ceo-name{ 
		margin: 0!important;
		width: calc( 100% - 130px );
		text-align: center;
		font-size: 16px;
	}
	.company-mess-sec .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.company-mess-sec .wp-block-column h3{ font-size: 18px; }
	
	.company-profile dt{ width: 110px; }
	.company-profile dd{ width: calc( 100% - 110px ); }
	
	.map-wrap{ padding-top: 58%;}
	
	/*** 木粉事業について ***/
	
	.page-id-167 .page-header{ height: 170px; }
	.page-id-167 h1.page-header-title::before{ font-size: 20px; }
	
	.business-product-sec{ gap: 30px!important; }
	.business-product-sec .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-product-sec .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.business-product{ margin-bottom: 20px; }
	.business-product .product-label{
		border-radius: 3px;
		padding: 3px 10px;
		font-size: 16px;
	}
	.business-product .product-name{ font-size: 16px; }
	.business-product-sec .wp-block-column:nth-child(1) figure img{ border-radius: 10px; }
	
	.business-01-about-sec { gap: 30px!important; }
	.business-01-about-sec .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-01-about-sec .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.business-01-h4-ttl{ margin-top: 20px!important; font-size: 16px; }
	
	.business-01-case-list-sec{ padding: 15px; }
	.business-01-case-list-sec h4{ font-size: 18px; }
	.business-01-case-list li::before{ width: 10px; height: 10px; }
	.business-01-case-list{ gap: 10px; margin-top: 20px; }
	
	.business-01-strengths-column { gap: 0!important; }
	.business-01-strengths-column .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-01-strengths-column .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.business-01-strengths-column .wp-block-column figure{ margin: 0; }
	.business-01-strengths-column .wp-block-column figure img{ width: 100%; border-radius: 10px; }
	
	.business-01-strengths-ttl{ margin-bottom: 30px!important; }
	.business-01-strengths-ttl .ttl{ font-size: 18px; line-height: 1.4; padding: 0 15px; }
	.business-01-strengths-ttl .nomber{ font-size: 25px;  border-radius: 6px 0 0 6px; }
	
	.business-01-mess-sec{ flex-direction: column; }
	.business-01-mess-sec figure{ width: 100%; }
	.business-01-mess-sec figure img{ border-radius: 6px 6px 0 0; aspect-ratio: 3 / 1; }
	.business-01-mess-txt-area{ width: 100%;  padding: 20px 15px; }
	.business-01-mess-txt{ margin: 0!important; }
	.business-01-mess-ttl h3{ font-size: 20px; margin: 15px 0; }
	
	.business-01-hinshitsu-column { gap: 0!important; }
	.business-01-hinshitsu-column .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-01-hinshitsu-column .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	
	.business-01-cost-column { gap: 0!important; }
	.business-01-cost-column .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-01-cost-column .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	
	.business-01-cost-img-list { gap: 0!important; }
	.business-01-cost-img-list .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-01-cost-img-list .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.business-01-cost-img-list .wp-block-column:nth-child(3){ flex-basis: 100%!important; }
	
	.business-example{ margin-bottom: 20px; }
	.business-example .example-label{
		border-radius: 3px;
		padding: 3px 10px;
		font-size: 16px;
	}
	.business-example .example-name{ font-size: 16px; }
	
	.business-01-delivery-column { gap: 20px!important; }
	.business-01-delivery-column .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-01-delivery-column .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.business-01-delivery-column .wp-block-column p{ margin-bottom: 30px!important; }
	
	.business-01-cost-img-list figure{ margin-bottom: 10px!important;}
	.business-01-cost-img-list p{ margin-bottom: 10px!important; }
	
	/*** プラスチック粉事業について ***/
	
	.page-id-169 .page-header{ height: 170px; }
	.page-id-169 h1.page-header-title::before{ font-size: 20px; }
	
	.business-02-column{ gap: 20px!important; }
	.business-02-column .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.business-02-column .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	.business-02-column .wp-block-column figure{ margin-bottom: 0!important; }
	.business-02-column .wp-block-column h3{ font-size: 20px; }
	
	.business-02-flow{ text-align: center; flex-direction: column; padding: 15px; }
	.business-02-flow-ttl{ 
		font-size: 18px;
		width: 100%;
		border-right: none;
		border-bottom: 1px solid #222;
		margin: 0 0 10px 0;
		padding: 0 0 10px 0;
	}
	.business-02-flow-txt{ font-size: 18px; width: 100%; }
	
	/*** 採用情報 ***/
	
	.page-id-172 .page-header{ height: 170px; }
	.page-id-172 h1.page-header-title::before{ font-size: 20px; }
	
	.recruit-mess-column-01{ width: 100%; gap: 20px!important; }
	.recruit-mess-column-01 .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.recruit-mess-column-01 .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	
	.recruit-mess-column-02{ width: 100%; gap: 20px!important; flex-direction: column-reverse; }
	.recruit-mess-column-02 .wp-block-column:nth-child(1){ flex-basis: 100%!important; }
	.recruit-mess-column-02 .wp-block-column:nth-child(2){ flex-basis: 100%!important; }
	
	.recruit-mess-name{ font-size: 18px; margin-bottom: 30px!important; }
	.recruit-mess-ttl{ font-size: 18px; padding-left: 30px; }
	.recruit-mess-ttl::before{ width: 20px; }
	
	.page-id-172 .h3{ font-size: 18px; }
	
	.recruit-profile dt{ width: 110px; }
	.recruit-profile dd{ width: calc( 100% - 110px ); }
	
	.page-id-172 .wp-block-button a{ font-size: 16px; }
	
	/*** お問い合わせ ***/
	
	.page-id-16 .site-body, .page-id-387 .site-body, .page-id-389 .site-body { padding: 40px 0 !important; }
	.page-id-16 .page-header, .page-id-387 .page-header, .page-id-389 .page-header{ height: 170px; }
	.page-id-16 h1.page-header-title::before, 
	.page-id-387 .page-header-title::before,
	.page-id-389 .page-header-title::before{ font-size: 20px; }
	
	.contact-box{ margin-bottom: 20px!important; }
	.contact-box-add-column { margin-bottom: 15px;}
	.contact-box-add-column p{ flex-direction: column; }
	.contact-box-add{ width: 100%; }
	
	.postal{ flex-direction: column; }
	.postal strong{ margin-bottom: 10px; }
	.postal span{ font-size: 12px; margin: 0 0 10px 0; }
	
	.wpcf7-form input,.wpcf7-form textarea{ font-size: 14px; }
	.wpcf7-radio .last{ margin: 10px 0 0 0!important;  }
	
	.submit-button{ margin-top: 40px; padding-left: 60px; }
	
	.contact-cata-box { margin-bottom: 25px !important; }
	
	/*** 個人情報保護方針 ***/
	
	.privacy-ttl{ font-size: 20px; padding: 0 0 10px 18px; }
	.privacy-ttl::before{ top: 6px; height: 18px; }
	
}