/*
Theme Name: izugiken
Version: 0.0.1
Template: blankslate
*/
* {
  min-width: 0;
  min-height: 0vw;
}
/*改行*/
.br-pc {
  display: block;
}
.br-sp {
  display: none;
}
.pc {
  display: block;
}
.mb {
  display: none;
}
@media (max-width: 959px) {
  .br-pc {
    display: none;
  }
  .br-sp {
    display: block;
  }
  .pc {
    display: none;
  }
  .mb {
    display: block;
  }
}
/**/
/*---------------------------------共通-----------------------------*/ :root {
  --main-font-color: #221613;
  --main-font-size: 1.6em;
  --main-font-weight: 300;
  --main-font-family: "Zen Kaku Gothic New", sans-serif;
  --main-line-height: 1.6;
  --main-color: #d0201b;
  --hedding-weight: 600;
  --sub-color1: #ffcbc9;
  --sub-color2: #f8e0df;
  --hedding-font: "Montserrat", serif;
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: var(--main-font-family);
  color: var(--main-font-color);
  line-height: var(--main-line-height);
  font-weight: var(--main-font-weight);
  margin: 0 !important;
}
a {
  text-decoration: none;
  color: var(--main-font-color);
  font-family: var(--main-font-family);
  padding: 0;
  margin: 0;
}
button {
  cursor: pointer;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  margin: 0;
  padding: 0;
  font-family: var(--main-font-family);
}
p {
  margin: 0;
  font-family: var(--main-font-family);
  padding: 0;
}
li {
  list-style: none;
  font-family: var(--main-font-family);
  padding: 0;
  margin: 0;
}
ul {
  padding: 0;
  margin: 0;
}
figure {
  padding: 0;
  margin: 0;
  line-height: 0;
}
img {
  width: 100%;
}
iframe {
  width: 100%;
}
/*ヘッダー共通*/
#sp_header {
  display: none;
}
.header_fixed_block {
  opacity: 1 !important;
}
#header_fixed {
  display: flex;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: auto;
  right: auto;
  transition: all 0.5s;
  z-index: 1001;
  opacity: 0;
  width: -webkit-fill-available !important;
  padding: 1rem 1.5rem !important;
  background: #ffffffcc;
}

/*追加CSS*/
/* 基本レイアウト調整 */
.main-nav .nav-list {
  list-style: none;
  display: flex;
  gap: 2rem;
  margin: 0;
  padding: 0;
  align-items: center;
  font-weight: 500;
}

/* 親メニュー */
.nav-list > li > a {
  position: relative;
  padding: 10px 0 0;
  text-decoration: none;
  color: #333;
  transition: color 0.3s;
}

.nav-list > li > a:hover {
  color: #c00; /* 赤系アクセント */
}

/* ドロップダウンメニュー */
.has-dropdown {
  position: relative;
}

.has-dropdown .dropdown {
  display: block;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: calc(100% + 0px);
  left: 0;
  min-width: 200px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 10px 20px rgba(0,0,0,0.1);
  padding: 10px 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  transform: translateY(10px);
  z-index: 999;
  pointer-events: none;
}

/* ドロップダウン表示時の状態 */
.has-dropdown:hover .dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

/* ドロップダウンの各項目 */
.dropdown li {
  list-style: none;
}

.dropdown li a {
  display: block;
  padding: 10px 20px;
  text-decoration: none;
  color: #333;
  transition: background-color 0.2s, color 0.2s;
}

.dropdown li a:hover {
  background-color: #f8f8f8;
  color: #c00;
  border-left: 4px solid #c00;
}

/*追加CSSここまで*/
@media(max-width: 600px) {
  #header, #header_fixed {
    display: none;
  }
  #sp_header {
    display: block;
  }
}
/*ヘッダー共通ここまで*/
/*ページ共通*/

.page-id-14 .page-header {
	    background-position: 50% 15%;
}
.page-header {
  height: 28rem;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  align-items: end;
}
.page-header .entry-title {
  display: flex;
  height: fit-content;
  background-color: #f8e0dfe3;
  padding: 3rem;
  position: relative;
  font-size: 2.5rem;
  width: 25%;
  text-align: center;
  justify-content: center;
}
.page-header .entry-title::before {
  content: "";
  position: absolute;
  font-size: 4rem;
  left: 28%;
  right: auto;
  opacity: 0.1;
  top: 40%;
  color: var(--main-color);
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 3px;
  line-height: 1;
}
.page-id-14 .page-header .entry-title::before {
  content: "SERVICE";
}
.page-id-126 .page-header .entry-title::before {
  content: "FACTORY";
}
.page-id-115 .page-header .entry-title::before {
  content: "COMPANY";
  left: 25%;
}
.page-id-8 .page-header .entry-title::before {
  content: "CONTACT";
}
.page-id-124 .page-header .entry-title::before {
  content: "MANUFACTURE";
  left: 12%;
}
.page-id-87 .page-header .entry-title::before {
  content: "PROGRESS";
  left: 22%;
}
.page-id-3 .page-header .entry-title::before {
	content: "PRIVACY POLICY";
	    left: 7%;
}
.page-id-3 .page-header .entry-title {
	    font-size: 2.2rem;
}
.page-id-376 .page-header .entry-title::before {
	content: "QUESTION";
	    left: 24%;
}
  content: "PROGRESS";
  left: 22%;
}
#wrapper {
  position: relative;
}





/*ページ共通ここまで*/
/*パンくずリスト*/
.page_pankuzu_list {
  padding: 1.5rem 0;
  width: 80%;
  margin: 0 auto;
}
.page_pankuzu_list ul {
  display: flex;
  justify-content: flex-start;
  gap: 0.3rem;
}
.page_pankuzu_list ul li {
  font-size: 0.9rem;
}
.page_pankuzu_list ul li a {
 border-bottom: solid 1px;
	padding-bottom: 0.2rem;
}
.page_pankuzu_list li + li:before {
    content: ">";
    margin: 0.5em;
}
.page_pankuzu_list li:last-child {
    font-weight: 600;
    color: var(--main-color);
}
/*パンくずリストここまで*/


@media(max-width: 600px) {
.page-header {
    height: 12rem;
}
.page-header .entry-title {
    font-size: 1.4rem;
    width: 65%;
	    padding: 1rem;
}	
.page-header .entry-title::before {
    font-size: 2.5rem;
    left: 25%;
    top: 30%;
}	
.page_pankuzu_list {
    padding: 1rem 0;
    width: 90%;
    margin: 0 auto;
}	
	.page-id-124 .page-header .entry-title::before {
    content: "MANUFACTURE";
    left: 8%;
}
	.page-id-87 .page-header .entry-title::before {
    left: 19%;
}
	.page-id-115 .page-header .entry-title::before {
    left: 22%;
}
	.page-id-376 .page-header .entry-title::before {
    left: 22%;
}
	.page-id-8 .page-header .entry-title::before {
    left: 24%;
}
	.page-id-3 .page-header .entry-title {
    font-size: 1.4rem;
}
	.page-id-3 .page-header .entry-title::before {
		font-size: 2.2rem;
	}
	.home #container {
		margin-top: 6rem;
	}
	.section-hedding_en {
    font-size: 2.6rem !important;
}
}
/*---------------------------------共通ここまで-----------------------------*/
/*---------------------------------ヘッダー-----------------------------*/
.header_yoko {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header_left figure {
  width: 85%;
}
.header_left figure img:hover {
  opacity: 0.6;
}
#header, #header_fixed {
  padding: 1rem 0;
  width: 95%;
  margin: 0 auto;
}

#header_fixed {
  pointer-events: none;
  opacity: 0;
  transform: translateY(-200%);
  transition: all 0.3s ease;
}

#header_fixed.header_fixed_block {
  opacity: 1;
  transform: translateY(0%);
  pointer-events: auto;
}


.header_left {
  flex-basis: 25%;
}
.header_right {
  flex-basis: 75%;
  display: flex;
  gap: 1rem;
  justify-content: end;
  align-items: center;
}
.header_right nav {
  display: flex;
  gap: 1.2rem;
  justify-content: end;
}
.header_left a {
	display: flex;
	gap: 0.3rem;
	align-items: center;
}
.header_left a h1 {
	    font-size: 1rem;
	flex-basis: 55%;
}
.header_left a figure {
	flex-basis: 45%;
}


/**/
.header_right nav a {
  display: block;
/*  text-align: center;*/
  text-decoration: none;
  outline: none;
  color: #2d2d2d;
  border-bottom:　2px;
	font-weight: 600;
}

.header_right nav a:hover{
  color: #2d2d2d;
}

.header_right nav a {
  position: relative;
}

.header_right nav a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: var(--main-color);
  bottom: -6px;
  transform: scale(0, 1);
  transition: transform 0.5s;
  transform-origin: center top;
}

.header_right nav a:hover::after {
  transform: scale(1, 1)
}
/**/



.header_button {
  border: none;
  background: none;
}
.header_button a {
  color: #fff;
  background: var(--main-color);
  font-weight: 600;
  display: flex;
  gap: 0.3rem;
  padding: 0.7rem 1.5rem;
  align-items: center;
	border-radius: 5px;
	font-size: 1.05rem;
	transition: all .4s;
}
.header_button a:hover {
	opacity: 0.8;
}
.header_fixed_block {
  display: block;
}
/*---------------------------------ヘッダーここまで-----------------------------*/
/*---------------------------------スマホヘッダー-----------------------------*/
@media(max-width: 600px) {
  #sp_header {
            background: var(--main-color);
    padding: 0.8rem;
    position: fixed;
    top: 0;
    z-index: 10000;
  }
  .sp_nav_yoko {
    display: flex;
    align-items: center;
  }
  .SiteHeader_logo {
    width: 50%;
  }
  .SiteHeader_NavButton {
    background: none;
    border: none;
   width: -webkit-fill-available;
    height: auto;
    color: #fff;
    padding: 0;
  }
	.SiteHeader_NavButton i {
		    font-size: 2rem;
	}
  .sp_header-nav {
/*    background: #ffffff8c;*/
	    background-image: linear-gradient(90deg, rgba(229, 132, 129, 1), rgba(208, 32, 27, 1));
    color: initial;
    text-align: center;
    border-bottom: solid 1px #ccc;
    position: fixed;
    top: 0rem;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 1.5rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s, visibility 0.5s;
    z-index: 1000;
  }
  .sp_header-nav.show {
    opacity: 1;
    visibility: visible;
    display: flex;
    flex-flow: column;
	          justify-content: space-between;
  }
  #container {
    margin-top: 4rem;
  }
	.SiteHeader-Mb_NavInner {
    position: relative;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem 0;
    place-content: start;
    justify-content: stretch;
    overflow-y: auto;
}
	.SiteHeader-Mb_NavHeader {
    display: flex;    
		justify-content: space-between;
		        align-items: center;
}
	.Brand-Logo-Mb a {
    display: block;
    max-width: 10rem;
		        line-height: 1;
}
.SiteHeader-Mb_NavContainer .Brand-Logo-Mb a img {
    filter: invert(98%) sepia(99%) saturate(0%) hue-rotate(353deg) brightness(109%) contrast(101%);
}
	.material-symbols-outlined {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}
	#MbMenuCloseButton {
    cursor: pointer;
    font-size: 2.2rem;
		color: #fff;
		line-height: 1;
}
	.SiteHeader-Mb_NavInner .menu-mob_menu-container
Specificity: (0,2,0) {
    border-radius: 1rem;
    flex-grow: 1;
    overflow-y: scroll;
}
	.SiteHeader-Mb_Nav li a {
    color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
		display: flex;
    align-items: center;
    gap: 0 0.5rem;
}
	.SiteHeader-Mb_NavFooterList {
    display: flex;
            gap: 1rem;
        flex-flow: column;
}
	.SiteHeader-Mb_NavFooterListItem {
		display: block;
	}
.Button.-MobMenu {
    font-size: 1.3rem;
    padding: 1rem;
    justify-content: center;
	color: var(--main-color);
}
.Button.-Rounded {
    border-radius: 50vh;
	        line-height: 1;
}	
	.Button {
    background-color: #fff;
    color: var(--MainColor-05);
	align-items: center;
    font-weight: 700;
    gap: 0.25rem;
    line-height: 1.2;
    width: -webkit-fill-available;
    height: 100%;
	display: inline-flex;
	text-align: center;
	position: relative;
}
	.material-symbols-outlined {
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}
	.SiteHeader-Mb_NavContainer #MbMenuCloseButton {
    cursor: pointer;
    font-size: 2.5rem;
}
.SiteHeader_SubmenuText {
    text-transform: uppercase;
    font-size: 0.75rem;
    opacity: 0.5;
}	
	#menu-mob_menu {
		display: flex;
    flex-flow: column;
    gap: 0.8rem;
	}	
	.SiteHeader-Mb_NavContainer.is-Open {
    transform: translateX(0%);
}
	.sp_nav-left {
		    flex-basis: 90%;
	}
	.SiteHeader_NavButton {
		    flex-basis: 10%;
	}
	.sp_header-logo h1 {
		    font-size: 0.9rem;
    line-height: 1;
    color: #fff;
    text-align: center;
	}
	
	
}
/*---------------------------------スマホヘッダーここまで-----------------------------*/
/*---------------------------------フッターーここまで-----------------------------*/
.footer_yoko {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer_width {
  width: 80%;
  margin: 0 auto;
  padding: 4rem 0;
}
.footer_logo a {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.footer_adress-info {
	    display: flex;
    gap: 1rem;
}
.footer_logo figure {
  width: 40%;
}
.footer_logo a:hover {
  opacity: 0.6;
}
.footer_logo h1 {
  font-size: 1.3rem;
}
.footer_left-top {
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.footer_left {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  flex-basis: 50%;
  gap: 2rem;
}
.footer_navigation {
  display: flex;
  gap: 1rem 1.5rem;
  flex-wrap: wrap;
}

.footer_navigation a {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  outline: none;
  color: #2d2d2d;
  border-bottom:　2px;
}

.footer_navigation a:hover{
  color: #2d2d2d;
}

.footer_navigation a {
  position: relative;
}

.footer_navigation a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: var(--main-color);
  bottom: -6px;
  transform: scale(0, 1);
  transition: transform 0.5s;
  transform-origin: center top;
}

.footer_navigation a:hover::after {
  transform: scale(1, 1)
}
/**/
#footer {
  border-top: solid 4px #ccc;
  margin-top: 3rem;
}
.footer_link-button {
  display: flex;
  align-items: center;
  background: var(--main-color);
  padding: 0.5rem 1rem;
  border-radius: 3px;
  box-shadow: 2px 6px 6px 2px #ddd;
  justify-content: space-between;
}
.footer_link-button {
	transition: 0.4s;
}
.footer_link-button:hover {
	background: #000;
}
.footer_link-button_logo figure {
  line-height: 1;
  width: 60%;
  margin: 0 auto;
}
.footer_link-button_logo p {
  text-align: center;
  font-size: 0.85rem;
  color: #fff;
  font-weight: 600;
}
.footer_right {
  display: flex;
  flex-flow: column;
  gap: 1rem;
  flex-basis: 30%;
}
.footer_link-button_snslogo {
  flex-basis: 15%;
}
.footer_link-button_logo {
  flex-basis: 70%;
}
.footer_link-button_gaibu {
  flex-basis: 15%;
  color: #fff;
  font-size: 1.1rem;
  display: contents;
}
#copyright {
  width: 80%;
  margin: 0 auto;
  text-align: center;
  padding: 1rem;
  border-top: solid 4px #ddd;
  font-size: 0.8rem;
}
.footer_adress a:hover {
	color: var(--main-color);
}
.top-news_button_pc {
		display: block;
	}
	
	.top-news_button_mb {
		display: none;
	}
@media(max-width: 600px) {
	.footer_width {
    width: 90%;
    margin: 0 auto;
    padding: 3rem 0;
}
	#copyright {
    width: 90%;
    padding: 1rem;
    border-top: solid 2px #ddd;
    font-size: 0.8rem;
}
.footer_yoko {
    gap: 2.5rem;
	        flex-flow: column;
}	
	.footer_right {
    gap: 1.2rem;
    flex-basis: 30%;
		    width: 95%;
}
.footer_navigation {
    gap: 1rem 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
    font-weight: 600;
}	
	.footer_logo a {
    display: flex;
    gap: 0rem;
    align-items: center;
    flex-flow: column;
}
	.footer_logo figure {
    width: 50%;
}
	.footer_adress-info {
		    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
	}	
	.footer_left-top {
    gap: 1rem;
}
	.top-news_button_pc {
		display: none;
	}
	
	.top-news_button_mb {
		display: block;
		        width: -webkit-fill-available;
	}
}
/*---------------------------------フッターーここまで-----------------------------*/
/*---------------------------------CTA-----------------------------*/
.cta_back {
  width: 90%;
  margin: 0 auto;
  background-color: #333;
  border-radius: 5px;
  padding: 3rem 0;
  background-position: center;
  background-repeat: no-repeat;
  background-blend-mode: overlay;
}
.cta_width {
  width: 85%;
  margin: 0 auto;
}
.cta_yoko {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
  align-items: center;
}
.cta_hedding {
  color: #fff;
  line-height: 1;
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.cta_hedding > p::first-child {
  font-size: 2rem;
}
.cta_left {
  display: flex;
  flex-flow: column;
  gap: 2rem;
  align-items: baseline;
}
.cta_text {
  color: #fff;
}
.cta_button {
  background: var(--main-color);
  color: #fff;
  padding: 1rem 5rem;
  border-radius: 30px;
}
.cta_right-button {
  background-image: linear-gradient(359deg, rgba(208, 32, 27, 1) 41%, rgba(219, 122, 120, 1));
  border-radius: 5px;
  padding: 1rem 3rem;
  text-align: center;
  color: #fff;
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
  line-height: 1;
	    box-shadow: 0px 0px 18px 1px #ffffffb3;
}
.cta_right {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.cta_right-button_number {
  font-size: 2.2rem;
	display: flex;
	gap: 0.5rem;
	align-items: center;
	    justify-content: center;
	    font-weight: 600;
}
.cta_right-button_number i {
	font-size: 1.8rem;
}
.cta_right-button_hedding {
  font-size: 1.2rem;
}
.cta_right-button_formButton {
  background: #000;
  width: 70%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  padding: 1.2rem;
  border-radius: 30px;
  gap: 0.3rem;
}
#cta .section_hedding-ja {
	 font-size: 2rem;
}
.section_hedding-en {
  font-size: 2rem;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 2px;
}
.cta_button {
	transition: all 0.4s;
}
.cta_button:hover {
	opacity: 0.8;
}
.cta_right-button:hover {
	     background-image: linear-gradient(0deg, rgba(0, 0, 0, 1), rgba(175, 175, 175, 1));
}
.cta_right a {
	transition: all 5s;
}
.cta_right-button:hover .cta_right-button_formButton {
	color: #000;
	background: #fff;
}
@media(max-width: 600px) {
	
.cta_yoko {
    display: flex;
    gap: 3rem;
	flex-flow: column;
}
.cta_left {
    gap: 1rem;
}	
.cta_right {
    gap: 1.5rem;
	width: -webkit-fill-available;
}	
	.cta_right-button {
    padding: 1rem;
}
.cta_button {
    width: -webkit-fill-available;
    text-align: center;
}	
.cta_right-button_number {
    font-size: 1.7rem;
}	
.cta_right-button_hedding {
    font-size: 1.1rem;
}	
.cta_right-button_formButton {
    width: -webkit-fill-available;
    justify-content: center;
    padding: 1rem;
    gap: 0.3rem;
	font-size: 0.9rem;
	}
	.cta_right-button_text {
		    font-size: 0.9rem;
	}
	.cta_hedding {;
    gap: 0.5rem;
}
	.section-hedding::before {
    left: 44%;
}
	
	
}


/*---------------------------------CTAここまで-----------------------------*/
/*---------------------------------新着情報一覧ページ-----------------------------*/
.news-list_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.top_news-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.5rem;
}
.top_news_date {
  color: var(--main-color);
}
.top_news-list_haco a {
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.news-list_pagenation {
  margin-top: 3rem;
  padding: 3rem 0 0;
  text-align: center;
  border-top: solid 2px #be9f9e;
}
.wp-pagenavi a, .wp-pagenavi span {
  text-decoration: none;
  border: 2px solid var(--main-color) !important;
  margin: 5px !important;
  line-height: 1;
  border-radius: 50%;
  padding: 1rem 1.2rem !important;
  width: 1rem;
  aspect-ratio: 1 / 1;
  color: var(--main-color);
  font-weight: 600;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
  background: var(--main-color);
  color: #fff;
}
.news_page-header {
  background-image: linear-gradient(359deg, rgba(208, 32, 27, 1) 41%, rgba(219, 122, 120, 1));
  padding: 2.5rem 1rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-blend-mode: screen;
  background-color: #333;
}
.news_page-header .entry-title {
  color: #fff;
  text-align: center;
  font-size: 2rem;
}
.top_news-list-img {
  overflow: hidden;
}
.top_news-list_haco a:hover .top_news-list-img img {
  transform: scale(1.2);
}
.top_news-list-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s;
}

@media(max-width: 600px) {
	.news-list_width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
.top_news-list {
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}	
	.top_news_title {
		    font-size: 1.1rem;
	}	
	.news-list_pagenation {
    margin-top: 3rem;
    padding: 2rem 0 0;
    border-top: solid 1px #be9f9e;
}
	.wp-pagenavi a, .wp-pagenavi span {
		    padding: 0.7rem 0.9rem !important;
	}
	
	
}



/*---------------------------------新着情報一覧ページここまで-----------------------------*/
/*---------------------------------新着情報詳細ページ-----------------------------*/
.single-post .page-header {
  height: 7rem;
  display: flex;
  background-position: center;
  background-color: #0000003d;
  background-blend-mode: hue;
  background-size: cover;
}
.news-detail_width {
  width: 70%;
  margin: 0 auto;
  padding: 5rem 0 3rem;
}
.news-detail_hedding {
  margin-bottom: 3rem;
}
.single-post .entry-title {
  text-align: center;
  font-size: 2rem;
  padding-bottom: 1rem;
  border-bottom: solid 2px #efefef;
  margin-bottom: 1rem;
}
.news-detail_hedding-date {
  text-align: end;
}
.news-detail_hedding-date span {
  color: var(--main-color);
  font-weight: 600;
}
.single .pagination {
  border-top: solid 1px var(--main-color);
  width: 70%;
  padding: 1rem 0 5rem;
  margin: 0 auto;
}
.SingleContent_Footer {
  display: flex;
  justify-content: space-between;
  padding-top: 0.5rem;
}
.page_back, .page_next {
  color: var(--main-color);
  font-size: 1.1rem;
  font-weight: 600;
}
.page_back a, .page_next a {
  color: var(--main-color);
}
@media(max-width: 600px) {
	.news-detail_width {
    width: 90%;
    margin: 0 auto;
    padding: 4rem 0 2rem;
}
.single-post .entry-title {
    font-size: 1.1rem;
}	
	.single-post .page-header {
		display: none;
	}
	.news-detail_hedding {
    margin-bottom: 1.5rem;
}
	.single .pagination {
    border-top: solid 1px var(--main-color);
    width: 90%;
    padding: 0rem 0 5rem;
    margin: 0 auto;
}
	.page_back, .page_next {
    font-size: 1rem;
}
	
	
}
/*---------------------------------新着情報詳細ページここまで-----------------------------*/
/*---------------------------------TOPページ-----------------------------*/
.top-slider {
  width: 90%;
  margin: 0 auto;
  position: relative;
}
/*
.top-slider_haco {
    background-color: var(--main-color);
    background-blend-mode: color;
}
*/
.eachTextAnime span {
  opacity: 0;
}
.eachTextAnime.appeartext span {
  animation: text_anime_on 2.5s ease-out forwards;
}
@keyframes text_anime_on {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.top-slider_img {
  border-radius: 10px;
}
.top-slider_hedding {
  position: absolute;
  color: #fff;
  top: 45%;
  left: 5%;
  font-size: 1.8rem;
  line-height: 1.6;
}
.top-slider_hedding h2 {
	    text-shadow: 1px 1px 6px #000;
}
.top-slider_img img {
  aspect-ratio: 4/1.2;
  object-fit: cover;
  border-radius: 10px;
  opacity: 0.9;
}
.top-slider_img04 img {
	    object-position: 50% 50%;
}
.top-slider_img02 img {
	    object-position: 50% 30%;
}
.top-slider_img03 img {
	    object-position: 50% 40%;
}
.top-slider .slick-dots {
  bottom: 3%;
}
.slick-dots li button:before {
  color: #fff;
  font-size: 20px;
  opacity: 0.5;
}
.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: var(--main-color);
}
.top-news {
  margin-top: 3rem;
}
.top-news_back {
  background: #fff;
  border-radius: 10px;
  box-shadow: -1px 2px 17px 0px #ccc;
  width: 90%;
  margin: 0 auto;
}
.top-news_width {
  padding: 3rem;
}
.top-news_yoko {
  display: flex;
  gap: 4rem;
  align-items: center;
}
.top-news_left {
  display: flex;
  flex-flow: column;
  gap: 2rem;
  flex-basis: 20%;
}
.top-news_right {
  flex-basis: 80%;
}
.top-news_button a {
  background: var(--main-color);
  color: #fff;
  padding: 0.7rem;
  display: block;
  text-align: center;
  border-radius: 30px;
}
.top-news_hedding.section-hedding::before {
  left: 40%;
}
.front_news-list_haco a {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.front_news-img {
  flex-basis: 20%;
}
.front_news-text {
  flex-basis: 80%;
}
.front_news_date {
  color: var(--main-color);
}
.front_news_title {
  transition: all .4s;
}
.front_news-list {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.front_news-img {
  overflow: hidden;
}
.front_news-img img {
  aspect-ratio: 4 / 2.5;
  object-fit: cover;
  transition: all .4s;
}
.front_news-list_haco a:hover .front_news_title {
  color: var(--main-color);
}
.front_news-list_haco a:hover .front_news-img img {
  transform: scale(1.2);
}
.top-service_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.top-service_tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.section-hedding {
  text-align: center;
  display: flex;
  justify-content: center;
  flex-flow: column;
  gap: 2rem;
  position: relative;
  line-height: 1;
}
.section-hedding_en {
  font-size: 1.8rem;
  letter-spacing: 2px;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.section-hedding_ja {
  color: var(--main-color);
  font-size: 2rem;
}
.section-hedding::before {
  position: absolute;
  content: "";
  top: 47%;
  left: 48%;
  width: 3rem;
  height: 2px;
  background: #ccc;
}
.top-news_hedding::before {
	top: 52%;
}
.top-service_content-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
}
.fadeUp {
  animation-name: costcutfadeUpAnime;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes costcutfadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeUpTrigger {
  opacity: 0;
}

.top-reason_haco2 {
	animation-delay: 0.75s;
} 
.top-reason_haco3 {
	animation-delay: 1.5s;
} 


.fadeLeft {
  animation-name: fadeLeftAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeRight {
  animation-name: fadeRightAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.fadeLeftTrigger,
.fadeRightTrigger {
  opacity: 0;
}






.top-service_content-haco {
  box-shadow: -1px 2px 17px 0px #ccc;
  padding: 2rem;
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
.top-service_content-haco_left {
  border: solid;
  aspect-ratio: 1 / 1;
  display: flex;
  justify-content: center;
  align-items: center;
	    flex-basis: 30%;
}
.top-service_content-haco_right {
	    flex-basis: 70%;
}
.top-service_content-haco_hedding p {
  display: flex;
  gap: 0.2rem;
  font-size: 0.7rem;
}
.top-service_content-haco_hedding p span {
  color: var(--main-color);
}
.top-service_content-haco_hedding .top-service_title {
  font-size: 1.2rem;
}
.top-service_content-haco_left figure {
  width: 80%;
}
.top-service_content-haco2 figure, .top-service_content-haco4 figure {
  width: 70%;
}
.top-service_content {
  display: flex;
  flex-flow: column;
  gap: 5rem;
}
.top-service_content-button {
  text-align: center;
}
.top-service_content-button a {
  background: var(--main-color);
  color: #fff;
  padding: 1.1rem 0;
  display: inline-block;
  border-radius: 30px;
  width: 22rem;
  position: relative;
  font-weight: 600;
}
.top-reason_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.top-reason_tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.top-reason_content {
  display: grid;
  gap: 2rem;
  position: relative;
	    grid-template-columns: 1fr 1fr 1fr;
}
.top-reason_haco {
  box-shadow: -1px 2px 17px 0px #ccc;
  position: relative;
  z-index: 10;
}
.top-reason_haco::before {
  position: absolute;
  content: "01";
      right: -4%;
    top: -22%;
    color: #000;
    opacity: 0.1;
    font-size: 6rem;
  z-index: -1;
  font-weight: 600;
	    font-family: "Agdasima", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.top-reason_haco-text {
  padding: 2rem 1rem;
  text-align: center;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.top-reason_haco-img img {
  aspect-ratio: 4 / 2.5;
  object-fit: cover;
	height: 250px;
}
.top-reason_haco2::before {
  content: "02";
}
.top-reason_haco3::before {
  content: "03";
}
.top-tsunagaru_back {
  background-image: linear-gradient(90deg, rgba(229, 132, 129, 1), rgba(208, 32, 27, 1));
  position: relative;
}
.top-tsunagaru_back::before {
  position: absolute;
  content: "MAKING";
  font-size: 11rem;
  color: #fff;
  opacity: 0.08;
  right: 5%;
  top: 5%;
  font-weight: 600;
  line-height: 1;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 14px;
}
.top-tsunagaru_back::after {
  position: absolute;
  content: "THING";
  font-size: 11rem;
  color: #fff;
  opacity: 0.08;
  right: 5%;
  top: 28%;
  font-weight: 600;
  line-height: 1;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 14px;
}
.top-tsunagaru_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.top-tsunagaru_yoko {
  display: flex;
  gap: 3rem;
  align-items: center;
}
.top-tsunagaru_left, .top-tsunagaru_right {
  flex-basis: 50%;
}
.top-tsunagaru_hedding {
  font-size: 3rem;
  line-height: 1.3;
  color: #fff;
}
.top-tsunagaru_left {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.top-tsunagaru_hedding {
  font-size: 2.8rem;
  line-height: 1.3;
  color: #fff;
}
.top-tsunagaru_text {
  color: #fff;
}
.top-tsunagaru_button a {
  background: #fff;
  color: var(--main-color);
  display: inline-block;
  font-weight: 600;
  padding: 1rem 0;
  width: 17rem;
  text-align: center;
}
.top-progress_back {
  position: relative;
	background: #d0201b12;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 17%, rgba(245, 208, 207, 0.86) 74%, rgba(234, 155, 152, 0.86) 100%, rgba(208, 32, 27, 0.86));
}
.top-progress_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.top-progress_hedding {
  font-size: 2.8rem;
  line-height: 1.3;
  margin-bottom: 2rem;
}

.top-progress_right {
  flex-basis: 45%;
  display: flex;
  justify-content: space-around;
  gap: 1.3rem;
}
.top_progress_button {
  background: var(--main-color);
  text-align: center;
  color: #fff;
  font-weight: 600;
  padding: 1rem;
  border-radius: 60px;
  font-size: 1.2rem;
  display: inline-block;
  line-height: 1;
	    width: -webkit-fill-available;
	position: relative;
    z-index: 100;
}
.top-progress_img {
  position: absolute;
  left: 0;
  bottom: auto;
  max-width: 36%;
}
.top-progress_back::before {
  position: absolute;
  content: "SUSTAI";
  font-size: 11rem;
  color: var(--main-color);
  opacity: 0.08;
  left: 5%;
  top: 5%;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 14px;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.top-progress_back::after {
  position: absolute;
  content: "NABILE";
  font-size: 11rem;
  color: var(--main-color);
  opacity: 0.08;
  left: 5%;
  top: 50%;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 14px;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.top-company_back {
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 17%, rgba(245, 208, 207, 0.86) 74%, rgba(234, 155, 152, 0.86) 100%, rgba(208, 32, 27, 0.86));
}
.top-company_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem;
}
.top-company_tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.top-company_hedding {
  align-items: center;
  justify-content: initial;
  flex-flow: nowrap;
}
.top-company_top-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}
.top-company_content {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.top-company_top-haco a {
  height: 12rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #00000063;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 2.2px;
  background-blend-mode: hue;
  background-repeat: no-repeat;
}
.top-company_hedding.section-hedding::before {
  content: none;
}
.top-company_top-haco1 a {
  background-position: 50% 50%;
  background-size: 35%;
}
.top-company_top-haco2 a {
  background-position: 50% 50%;
  background-size: 35%;
}
.top-company_top-haco3 a {
  background-position: 50% 50%;
  background-size: 25%;
}
.top-company_top-haco4 a {
  background-position: 50% 18%;
  background-size: 100%;
}
.top-company_top-haco {
	overflow: hidden;
}    
.top-company_top-haco a {
	transition: all 0.3s ease-out;
}
.top-company_top-haco a:hover {
	    opacity: 0.8;
    transform: scale(1.2);
}
.top-company_center {
  display: flex;
  gap: 3rem;
}

.top-company_center-img {
  flex-basis: 40%;
}
.top-company_center-img img {
  height: -webkit-fill-available;
  object-fit: cover;
  border-radius: 10px;
}
.top-company_center-map {
  flex-basis: 60%;
}
.top-company_center-map iframe {
  border-radius: 10px;
}
.top-company_buttom {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
.top-company_buttom-img {
  flex-basis: 25%;
}
.top-company_buttom-button {
  flex-basis: 75%;
}
.top-company_buttom-button {
  flex-basis: 75%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
}
.top-company_buttom-button a {
  background: var(--main-color);
  border-radius: 5px;
  color: #fff;
  padding: 1rem;
  text-align: center;
}
.top-company_buttom-img a {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
.top-company_buttom-img a p {
  font-weight: 600;
  font-size: 1.1rem;
}
.top-company_buttom-img a:hover {
  opacity: 0.6;
}
.top-recruit_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.top-recruit_yoko {
  display: flex;
  gap: 4rem;
  align-items: center;
}
.top-recruit_left {
  flex-basis: 50%;
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.top-recruit_right {
  flex-basis: 60%;
}
.top-recruit_hedding {
  width: 52%;
}
.top-recruit_hedding.section-hedding::before {
  left: 40%
}
.top-recruit_logo {
  width: 40%;
}
.top-recruit_left-top h2 {
  font-size: 2rem;
  line-height: 1;
}
.top-recruit_left-top {
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
}
.top-recruit_left-bottom {
  display: flex;
  flex-flow: column;
  gap: 1rem;
  width: 85%;
}
.top-recruit_left-button {
  background: var(--main-color);
  padding: 1.2rem;
  text-align: center;
  color: #fff;
  font-weight: 600;
  font-size: 1.2rem;
  border-radius: 50px;
}
.top-progress_right .top_progress_button {
	border: solid 3px var(--main-color);
}
.top-recruit_left-button {
	border: solid 2px var(--main-color);
}
.top-service_content-button a, .top-news_button a, .top-tsunagaru_button a, .top-progress_right a, .top-recruit_left-button {
	transition: all .4s;
}
.top-service_content-button a:hover, .top-news_button a:hover {
	opacity: 0.8;
}

.top-tsunagaru_button a:hover {
	opacity: 0.8;
	background: var(--main-color);
	color: #fff;
}
.top-progress_right .top_progress_button:hover, .top-recruit_left-button:hover {
	background: #fff;
	color: var(--main-color);
}

.top-company_buttom-button a {
	transition: all .4s;
}
.top-company_buttom-button a:hover {
	opacity: 0.6;
}




@media(max-width: 600px) {
	.top-progress_back::before {
		    font-size: 6rem;
	}
	.top-progress_back::after {
		    font-size: 6rem;
	}
	.top-tsunagaru_back::before {
		font-size: 6rem;
	}
	.top-tsunagaru_back::after {
		font-size: 6rem;
	}
	.top-slider_hedding {
    font-size: 0.9rem;
		left: 2%;
	}
	.top-news_width {
    padding: 1.5rem;
}
	.front_news-list_haco a {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-flow: column;
}
	.top-service_width {
    width: 90%;
}
	.top-service_content-grid {
    display: flex;
    gap: 2rem;
    flex-flow: column;
}
.top-service_content-haco {
    gap: 1rem;
}	
	
	
	.top-reason_width {
    width: 90%;
}
	.top-reason_content {
    display: flex;
    gap: 2rem;
    flex-flow: column;
}
	.top-reason_haco::before {
    top: -8%;
    z-index: 100;
		line-height: 1;
}
.top-tsunagaru_width {
    width: 90%;
}	
	.top-tsunagaru_yoko {
    flex-flow: column;
}
.top-tsunagaru_hedding {
    font-size: 2rem;
}	
.top-tsunagaru_left {
    gap: 1.5rem;
}	
	.top-tsunagaru_yoko {
    gap: 2rem;
}
	.top-tsunagaru-img {
		    width: 80%;
    margin: 0 auto;
	}	
	
	.top-progress_width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.top-progress_hedding {
    font-size: 2rem;
    line-height: 1.3;
    margin-bottom: 1.5rem;
}
	.top-progress_yoko {
    display: flex;
    gap: 1.5rem;
    flex-flow: column;
}
.top_progress_button {
    background: var(--main-color);
    padding: 1rem;
    font-size: 1.1rem;
}	
.top-progress_right {
    gap: 1rem;
	        flex-flow: column;
}	
.top-company_width {
    width: 90%;
	padding: 5rem 0 5rem;
}	
	.top-company_tate {
    gap: 2rem;
}
.top-company_top-grid {
    gap: 1rem;
}	
.top-company_top-haco a {
    height: 7rem;
    font-size: 1.1rem;
}	
.top-company_center {
    display: flex;
    gap: 1.5rem;
    flex-flow: column;
}	
.top-company_center-map iframe {
    height: 250px;
}	
	.top-company_buttom {
    display: flex;
    gap: 2rem;
		flex-flow: column;
}
.top-company_buttom-img {
    width: 65%;
}	
.top-company_buttom-button {
    flex-basis: auto;
    grid-template-columns: 1fr 1fr;
}
	.top-recruit_width {
    width: 90%;
}
	.top-recruit_yoko {
    display: flex;
    gap: 3rem;
    align-items: center;
    flex-flow: column;
}
.section-hedding {
    gap: 1.5rem;
}	
	.top-recruit_left {
    gap: 2rem;
}
	.top-recruit_left-top h2 {
    font-size: 1.8rem;
    line-height: 1.3;
}
.top-recruit_left-top {
    gap: 0.5rem;
}	
.top-recruit_logo {
    width: 45%;
}	
.top-recruit_left-bottom {
    width: -webkit-fill-available;
}	
	.top-recruit_left-button {
    padding: 1rem;
    font-size: 1.1rem;
    width: -webkit-fill-available;
}
	.top-recruit_img {
		    width: 70%;
    margin: 0 auto;
	}
	.top-service_content-button a {
    padding: 1rem 0;
    width: -webkit-fill-available;
}
	.top-service_content {
    gap: 3rem;
}
	.top-service_hedding::before {
		    left: 44%;
	}
	.top-reason_haco-text {
    padding: 1.5rem 1rem;
}
	.top-progress_img {
		display: none;
	}
	.top-progress_back::after {
    top: 18%;
	}
	.top-tsunagaru_back::after {
		top: 16%;
	}
	.top-reason_haco-text p {
		    text-align: left;
	}
	.top-reason_tate {
    gap: 2rem;
}
.top-slider_img img {
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: 5px;
    opacity: 0.9;
}	
	.top-slider_img {
    border-radius: 5px;
}
	.slick-dots li button:before {
    font-size: 15px !important;
		    width: 15px;
    height: 15px;
}
		.top-news_yoko {
    gap: 2rem;
			flex-flow: column;
}
	.top-news_hedding.section-hedding::before {
    left: 42%;
}
.top-news_left {
    gap: 1.5rem;	
	}
	.top-news_left {
    width: -webkit-fill-available;
}
	.top-service_content-haco_left {
		    width: 90%;
	}
	
	
}


/*---------------------------------TOPページここまで-----------------------------*/
/*---------------------------------事業案内ページここから-----------------------------*/
.service_features-back {
  background: #f7f7f7
}
.service_features-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.service_features-movie figure {
  text-align: center;
}
.service_features-movie video {
  width: 65%;
}
.service_features-tate {
  display: flex;
  flex-flow: column;
  gap: 4rem;
}
.service_features-content_hedding {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.service_features-content_hedding h2 {
  font-size: 2rem;
  color: var(--main-color);
  line-height: 1;
}
.service_features-content_haco {
  background: #fff;
  box-shadow: 4px 7px 12px 0px #a6a6a6;
  padding: 1.5rem;
  display: flex;
  gap: 1.5rem;
  position: relative;
  align-items: center;
}
.service_features-content_haco::before {
  position: absolute;
  content: "01";
  font-size: 6rem;
  color: #ccc;
  opacity: 0.7;
  right: 2%;
  top: 14%;
  line-height: 1;
	    font-family: "Agdasima", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.service_features-content_haco2::before {
  content: "02";
}
.service_features-content_haco3::before {
  content: "03";
}
.service_features-content_haco4::before {
  content: "04";
}
.service_features-content_haco5::before {
  content: "05";
}
.service_features-content_haco6::before {
  content: "06";
}
.service_features-content_haco7::before {
  content: "07";
}
.service_features-content_haco8::before {
  content: "08";
}
.service_features-content_haco9::before {
  content: "09";
}
.service_features-content_haco::after {
  position: absolute;
  content: "";
  background: var(--main-color);
  width: 7px;
  height: 5rem;
  bottom: -5rem;
  left: 50%;
}
.service_features-content_haco9::after {
  content: none;
}
.service_features-content_tate {
  display: flex;
  flex-flow: column;
  gap: 3.5rem;
}
.service_features-content_right {
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
	    flex-basis: 75%;
}
.service_features-content_right h4 {
  font-size: 1.6rem;
  color: var(--main-color);
  line-height: 1;
}
.service_features-content_img img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.service_features-content_left {
  flex-basis: 25%;
}
.service_features-content {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.service_detail-width {
  width: 80%;
  margin: 0 auto;
  padding: 8rem 0;
}
.service_detail-tate {
  display: flex;
  flex-flow: column;
  gap: 4rem;
}
.service_detail-hedding h2 {
  font-size: 2rem;
  color: var(--main-color);
  line-height: 1;
}
.service_detail-content {
  background: #ffcbc9;
  padding: 4rem 3rem;
  border-radius: 30px;
  display: flex;
  flex-flow: column;
  gap: 2.5rem;
}
.service_detail-content_hedding h3 .service_detail-content_hedding-en {
  font-size: 3rem;
  color: var(--main-color);
  line-height: 1;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 1px;
}
.service_detail-content_hedding h3 .service_detail-content_hedding-ja {
  line-height: 1;
  font-size: 1.6rem;
}
.service_detail-content_hedding h3 {
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.service_detail-content_discription {
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
  text-align: center;
}
.service_detail-content_discription h4 {
  font-size: 1.4rem;
}
.service_detail-content_tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.service_detail-content_haco {
  background: #fff;
  padding: 1.5rem;
  box-shadow: 4px 7px 12px 0px #7e7e7e99;
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
.service_detail-content_left {
  flex-basis: 40%;
}
.service_detail-content_right {
	flex-basis: 60%;
}
.service_detail-content_img img {
	    aspect-ratio: 4 / 2.5;
    object-fit: cover;
}
.service_detail-content_right {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.service_detail-content_right h5 {
  line-height: 1;
  font-size: 1.4rem;
}
.service_detail-content_yoko {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2rem;
}
.service_detail-content2_img img {
	    aspect-ratio: 4 / 2.5;
    object-fit: cover;
    object-position: center;
}

.top_facility-discription {
	    font-weight: 600;
	    text-align: center;
    color: var(--main-color);
    display: flex;
    gap: 0.3rem;
    justify-content: center;
    align-items: center;
}
.service_department-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.service_department-hedding h2 {
  color: var(--main-color);
  font-size: 2rem;
  line-height: 1;
}
.service_department-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.service_department-haco {
  display: flex;
  gap: 2rem;
  align-items: center;
  justify-content: space-between;
}
.service_department-left {
  flex-basis: 50%;
}
.service_department-right {
  flex-basis: 45%;
}
.service_department-img img {
  aspect-ratio: 4 / 2.5;
  object-fit: cover;
}
.service_department-left {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.service_department-content {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.service_department-left h4 {
  font-size: 1.6rem;
  line-height: 1;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.service_department-left h5 {
  font-size: 2.2rem;
  line-height: 1;
  color: var(--main-color);
}
.service_department-list li {
  list-style: disc;
}
.service_department-haco2 .service_department-left, .service_department-haco4 .service_department-left, .service_department-haco4 .service_department-left {
  order: 1;
}
.service_department-haco2 .service_department-right, .service_department-haco4 .service_department-right, .service_department-haco4 .service_department-right {
  order: 0;
}

/* モーダル背景 */
.video-popup {
  display: none;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
}

/* モーダルコンテンツ */
.video-popup-inner {
  position: relative;
  max-width: 90%;
  max-height: 80%;
  width: 800px;
}

.video-popup video {
  width: 100%;
  height: auto;
  border-radius: 8px;
}

/* 閉じるボタン */
.close-btn {
  position: absolute;
  top: -30px;
  right: 0;
  color: #fff;
  font-size: 30px;
  cursor: pointer;
}

/* スクロール固定 */
body.modal-open {
  overflow: hidden;
}

.service_features-movie_popup-button {
	text-align: center;
}
.service_features-movie_popup-button a {
	background: var(--main-color);
	color: #fff;
	font-weight: 600;
	font-size: 1.3rem;
	border-radius: 10px;
	padding: 1.5rem 3rem;
}



@media(max-width: 600px) {
	.service_features-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.service_features-movie_popup-button a {
    font-size: 1rem;
    padding: 1.2rem 1rem;
    display: inline-block;
    width: -webkit-fill-available;
}
	.service_features-movie video {
    width: -webkit-fill-available;
}
.service_features-tate {
    gap: 3rem;
}	
	.service_features-content_hedding h2 {
    font-size: 1.7rem;
}
	.service_features-content_hedding h3 {
		font-size: 1rem;
	}
	.service_features-content_haco {
    box-shadow: 4px 7px 12px 0px #a6a6a6;
    padding: 1rem;
    gap: 1rem;
    flex-flow: column;
}
	.service_features-content_right h4 {
    font-size: 1.3rem;
}
	.service_features-content_right {
    gap: 0.5rem;
}
.service_features-content_img img {
    aspect-ratio: 4 / 2.4;
}	
	.service_features-content_haco::before {
    font-size: 5rem;
    right: 6%;
    top: 29%;
}
	.service_features-content_haco3::before, .service_features-content_haco6::before, .service_features-content_haco9::before {
		        top: 35%;
	}	
	.service_features-content_haco4::before {
		        top: 31%;
	}
	.service_features-content_haco7::before {
		        top: 33%;
	}
	.service_features-content_tate {
    gap: 3rem;
}
	.service_detail-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.service_detail-tate {
    gap: 2rem;
}
	.service_detail-content {
    padding: 1.5rem 1rem;
    gap: 2rem;
}
.service_detail-content_hedding h3 .service_detail-content_hedding-en {
    font-size: 2.3rem;
	}
	.service_detail-content_hedding h3 .service_detail-content_hedding-ja {
    font-size: 1.2rem;
}
.service_detail-content_discription h4 {
    font-size: 1.1rem;
}	
.service_detail-content_tate {
    gap: 2rem;
}	
.service_detail-content_haco {
    padding: 1rem;
    gap: 1.5rem;
    flex-flow: column;
}	
.service_detail-content_right {
    gap: 0.5rem;
}	
	.service_detail-content_yoko {
    display: flex;
    gap: 1.5rem;
    flex-flow: column;
}
	.service_example-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
.service_example-tate {
    gap: 2rem;
}	
.service_example-hedding h2 {
    font-size: 1.7rem;
}	
	.service_example-yoko {
    display: flex;
    gap: 2rem;
    align-items: center;
    flex-flow: column;
}
	.service_example-img {
		    width: 60%;
    margin: 0 auto;
	}
	.service_equipment-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.service_equipment-tate {
    gap: 2rem;
}
	.service_equipment-hedding h2 {
   font-size: 1.7rem;
}
	
	.service_department-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.service_department-tate {
    gap: 2rem;
}
.service_department-haco {
    gap: 2rem;
    flex-flow: column;
}	
	.service_department-left {
    display: flex;
    flex-flow: column;
    gap: 0.7rem;
}
.service_department-left h5 {
    font-size: 1.8rem;
}	
	.service_department-left h4 {
    font-size: 1.2rem;
}
.service_department-haco {
    gap: 1.5rem;
}	
	.service_department-haco2 .service_department-left, .service_department-haco4 .service_department-left {
		order: 0;
	}
	.service_department-list li {
    list-style: inside;
}
}
/*---------------------------------事業案内ページここまで-----------------------------*/
/*---------------------------------品質向上ページここから-----------------------------*/
.progress_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.progress_tate {
  display: flex;
  flex-flow: column;
  gap: 5rem;
}
.progress_head-tate {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.progress_head {
  width: 55%;
  margin: 0 auto;
}
.progress_head-tate {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.progress_head-logo {
  width: 40%;
  text-align: center;
  margin: 0 auto;
}
.progress_head-title {
  text-align: center;
  font-size: 1.7rem;
}
.progress_head-text {
  text-align: center;
}
.progress_button-yoko {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  border: solid 2px var(--main-color);
}
.progress_button-haco {
  border-right: solid 2px var(--main-color);
  padding: 1.5rem 1rem;
  text-align: center;
  line-height: 1;
  display: flex;
  flex-flow: column;
  gap: 0.3rem;
  align-items: center;
	color: var(--main-color);
	transition: .4s;
}
.progress_button-haco:hover {
	background: var(--main-color);
	color: #fff;
}
.progress_button-haco:hover .progress_button-yajirushi {
	border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
}
.progress_button-haco4 {
  border-right: none;
}
.progress_button-yajirushi {
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 2px var(--main-color);
  border-right: solid 2px var(--main-color);
  transform: rotate(45deg);
}
.progress_button-text {
  font-size: 1.2rem;
  font-weight: 600;
}
.progress_Employee-training_tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.progress_heading {
  text-align: center;
}
.progress_heading h2 {
  font-size: 2.3rem;
  color: var(--main-color);
}
.progress_Employee-training_yoko {
  display: flex;
  gap: 3rem;
}
.progress_heading h3 {
  color: var(--main-color);
  opacity: 0.3;
}
.progress_ISO9001-Subheading h4, .progress_ISO14001-Subheading h4 {
  padding-left: 1.3rem;
  font-size: 1.7rem;
  line-height: 1.8;
  position: relative;
}
.progress_ISO9001-Subheading h4::before, .progress_ISO14001-Subheading h4::before {
  position: absolute;
  content: "";
  width: 0.7rem;
  height: 100%;
  background: var(--main-color);
  left: 0;
  top: 0;
}
.progress_ISO9001-content, .progress_ISO14001-content {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.progress_ISO9001-content-tate, .progress_ISO14001-content-tate {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.progress_ISO9001-content-haco, .progress_ISO14001-content-haco {
  display: flex;
  flex-flow: column;
  gap: 0.6rem;
}
.progress_ISO9001-content-haco h5, .progress_ISO14001-content-haco h5 {
  font-size: 1.4rem;
}
.progress_ISO9001-content-haco4_list li {
	    list-style: decimal;
	    margin-left: 1.2rem;
}
.progress_ISO9001-content-haco4_list-naka {
	
}
.progress_ISO14001-tate, .progress_ISO9001-tate, .progress_SDGs-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.progress_SDGs-content {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.progress_SDGs-content-haco {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.progress_SDGs-content-haco2 .progress_SDGs-content-left_img:nth-child(2) img {
	object-position: top;
}
.progress_SDGs-content-haco h3 {
  font-size: 1.7rem;
  position: relative;
  padding-bottom: 0.5rem;
}
.progress_SDGs-content-haco h3::before {
  position: absolute;
  width: 100%;
  height: 3px;
  background: #ccc;
  bottom: 0;
  left: 0;
  content: "";
}
.progress_SDGs-content-haco h3::after {
  position: absolute;
  width: 42%;
  height: 3px;
  background: var(--main-color);
  bottom: 0;
  left: 0;
  content: "";
}
.progress_SDGs-content-yoko {
  display: flex;
  gap: 3rem;
}
.progress_SDGs-content-left_yoko {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}
.progress_SDGs-content-left_img img {
	    aspect-ratio: 4 / 2.5;
    object-fit: cover;
}
.progress_SDGs-content-left {
  display: flex;
  flex-flow: column;
  gap: 1rem;
  justify-content: space-around;
}
.progress_SDGs-content-left_bottom h5 {
  font-size: 1.3rem;
  position: relative;
  padding-left: 1rem;
  line-height: 1.5;
}
.progress_SDGs-content-left_bottom h5::before {
  position: absolute;
  content: "";
  width: 0.5rem;
  height: 100%;
  background: var(--main-color);
  left: 0;
  top: 0;
}
.progress_SDGs-content-left_bottom {
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.progress_SDGs-content-left_bottom ul li {
  list-style: inside;
}
.progress_SDGs-content-right {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
}
.progress_SDGs-content-mark {
  width: 45%;
}
.progress_SDGs-content-left {
  flex-basis: 60%
}
.progress_SDGs-content-right {
  flex-basis: 40%
}
.progress_ISO9001-sikakuList, .progress_ISO14001-sikakuList {
  display: inline-flex;
  margin: 0 auto;
  flex-flow: column;
  gap: 0.8rem;
  position: relative;
}
.progress_ISO9001-sikakuList p, .progress_ISO14001-sikakuList p {
  line-height: 1;
  position: relative;
}
.progress_ISO9001-sikakuList p::before, .progress_ISO14001-sikakuList p::before {
  position: absolute;
  width: 2.5rem;
  height: 2px;
  background: #ccc;
  left: -20%;
  top: 50%;
  content: "";
}
.progress_ISO9001-sikakuList::before {
  position: absolute;
  width: 2px;
  height: 80%;
  background: #ccc;
  left: -20%;
  top: 12%;
  content: "";
}
.progress_ISO14001-sikakuList::before {
  position: absolute;
  width: 2px;
  height: 67%;
  background: #ccc;
  left: -20%;
  top: 19%;
  content: "";
}
.progress_SDGs-content-haco3 .progress_SDGs-content-left_yoko .progress_SDGs-content-left_img1 img {
	aspect-ratio: auto;
}
.progress_SDGs-content-haco3 .progress_SDGs-content-left_yoko .progress_SDGs-content-left_img2 img {
	aspect-ratio: auto;
	    height: -webkit-fill-available;
}
.progress_SDGs-content-haco3 .progress_SDGs-content-left_yoko {
	    display: flex;
	width: 60%;
}

@media(max-width: 600px) {
	.progress_SDGs-content-haco3 .progress_SDGs-content-left_yoko {
           display: grid;
        grid-template-columns: 1fr;
        gap: 1rem;
		    width: -webkit-fill-available;
}
		
	.progress_width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.progress_head {
    width: auto;
}
	.progress_head-title {
    font-size: 1.3rem;
}
	.progress_head-tate {
    gap: 0.5rem;
}
	.progress_head-logo {
    width: 50%;
}
	.progress_tate {
    gap: 3rem;
}
.progress_Employee-training_tate {
    gap: 2rem;
}	
	.progress_heading h2 {
    font-size: 1.7rem;
}
.progress_Employee-training_yoko {
    gap: 1.5rem;
    flex-flow: column;
}	
.progress_ISO14001-tate, .progress_ISO9001-tate, .progress_SDGs-tate {
    gap: 2rem;
}	
	.progress_ISO9001-Subheading h4, .progress_ISO14001-Subheading h4 {
    padding-left: 1.1rem;
    font-size: 1.4rem;
    line-height: 1.6;
    position: relative;
}
.progress_ISO9001-content-haco h5, .progress_ISO14001-content-haco h5 {
    font-size: 1.3rem;
}	
	.progress_ISO9001-content-haco, .progress_ISO14001-content-haco {
    gap: 0.4rem;
}
.progress_heading h3 {
    font-size: 1rem;
}	
.progress_SDGs-content-haco h3 {
    font-size: 1.2rem;
}	
	.progress_SDGs-content-yoko {
    display: flex;
    gap: 1rem;
    flex-flow: column;
}
.progress_SDGs-content-left_yoko {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}	
.progress_SDGs-content-mark {
    width: 30%;
}	
.progress_SDGs-content-right {
    gap: 1rem;
}	
	.progress_button-yoko {
    grid-template-columns: 1fr 1fr;
    border: solid 0px var(--main-color);
    gap: 0.5rem;
}
	.progress_button-haco {
		    border-right: solid 0px var(--main-color);
		border: solid 2px var(--main-color);
		        justify-content: space-evenly;
	}
}
/*---------------------------------品質向上ページここまで-----------------------------*/
/*---------------------------------会社案内ページここから-----------------------------*/
.company_message {
  position: relative;
}
.company_message::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #d0201b08;
  transform: skewY(-7deg);
  z-index: -1;
}
.company_message-width {
  /*
	width: 80%;
	margin: 0 auto;
*/
  padding: 6rem 0;
}
.company_message-tate {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.company_message-headding .company_headding_ja {
  font-size: 2rem;
  line-height: 1;
  width: 80%;
  margin: 0 auto;
}
.company_headding_ja {
  font-size: 2rem;
  line-height: 1;
}
.company_message-headding .company_headding_en {
  line-height: 1;
  font-size: 2rem;
  color: var(--main-color);
  position: relative;
  width: 80%;
  margin: 0 auto;
}
.company_headding_en {
  line-height: 1;
  font-size: 2rem;
  color: var(--main-color);
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.company_message-headding {
  position: relative;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.company_message-headding::before {
  position: absolute;
  top: 65%;
  right: 0;
  width: 75%;
  height: 1.5px;
  background: var(--main-color);
  content: "";
}
.company_message-yoko {
  width: 80%;
  margin: 0 auto;
  display: flex;
  gap: 2rem;
}
.company_message-left {
  width: 55%;
}
.company_message-right {
  width: 45%;
}
.company_message-name {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: end;
  font-weight: 600;
}
.company_message-yakumei {
  font-size: 1.1rem;
}
.company_message-shimei {
  font-size: 1.5rem;
}
.company_message-left {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
	    width: 80%;
    margin: 0 auto;
}
.company_vision-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.company_vision-tate {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.company_vision-logo {
  width: 30%;
  margin: 0 auto;
}
.company_vision-philosophy {
  text-align: center;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
}
.company_vision-yoko {
  display: flex;
  gap: 2rem;
	    align-items: center;
}
.company_vision-left {
  width: 60%;
}
.company_vision-right {
  width: 40%;
}
.company_vision-right img {
	    aspect-ratio: 4 / 2.5;
    object-fit: cover;
	    object-position: top;
}
.company_vision-headding {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.company_vision-left {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.company_profile-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.company_profile-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.company_profile-headding {
  text-align: center;
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.company_profile-table th, .company_profile-table td {
  border-bottom: solid 2px #ccc;
  padding: 1.2rem;
}
.company_profile-table-first {
  border-top: solid 2px #ccc;
}
.company_profile-table th {
  width: 25%;
}
.company_profile-table td {
  width: 75%;
  padding: 1.2rem 2rem;
}
.company_profile-table td ul {
  display: flex;
  flex-flow: column;
  gap: 0.2rem;
}
.company_profile-table td ul li {
  list-style: inside;
}
.company_profile-table td ul li a:hover {
 color: var(--main-color);
}
.company_history-width {
  width: 65%;
  margin: 0 auto;
  padding: 5rem 0;
}
.company_history-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.company_history-headding {
  text-align: center;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.history_outline {
  overflow: hidden;
}
.history_outline dl {
  display: flex;
  position: relative;
  margin: 0;
}
.history_outline dl:not(:last-child) {
  padding-bottom: 35px;
}
.history_outline dl::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 16px;
  height: 16px;
  background-color: var(--main-color);
  border-radius: 50%;
}
.history_outline dl::after {
  content: "";
  position: absolute;
  left: 7px;
  top: 9px;
  bottom: -9px;
  /*	bottom: -27px;*/
  background-color: #e6e6e6;
  width: 2px;
  z-index: -1;
}
.history_outline dl dt {
  width: 185px;
  padding-left: 30px;
  display: flex;
  align-items: center;
  line-height: 1;
  font-weight: 600;
  color: var(--main-color);
}
.history_outline dl ._h_time ._h_year {
  font-size: 20px;
  font-weight: bold;
}
.history_outline dl dd {
  width: calc(100% - 185px);
  padding-left: 20px;
  font-size: 17px;
  line-height: 2;
}
.company_history-kameidantai:hover {
	color: var(--main-color);
}
@media(max-width: 600px) {
	.company_message-width {
    padding: 5rem 0;
}
.company_message-headding .company_headding_en {
    font-size: 2.2rem;
    width: 90%;
}	
.company_message-headding .company_headding_ja {
    font-size: 1rem;
    width: 90%;
}
.company_message-left {
    width: 90%;
}	
	.company_message-headding::before {
    width: 60%;
}
.company_vision-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}	
.company_vision-logo {
    width: 50%;
}	
	.company_vision-tate {
    gap: 1rem;
}
	.company_vision-philosophy {
    font-size: 1.4rem;
    line-height: 1.4;
}
	.company_vision-yoko {
    flex-flow: column;
}
.company_vision-left {
    width: auto;
}	
.company_vision-left {
    gap: 1rem;
}	
	.company_vision-right {
    width: auto;
}
.company_profile-width {
    width: 90%;
    margin: 0 auto;
    padding: 0rem 0;
}	
	.company_headding_en {
    font-size: 2rem;
}
	.company_profile-headding {
    gap: 0.5rem;
}
	.company_profile-tate {
    gap: 2rem;
}
.company_profile-table th, .company_profile-table td {
    border-bottom: solid 1px #ccc;
    padding: 1rem;
}	
.company_profile-table-first {
    border-top: solid 1px #ccc;
}	
	.company_profile-table td {
            width: -webkit-fill-available;
    padding: 1rem;
		display: block;
}
	.company_profile-table th {
           width: -webkit-fill-available;
		display: block;
		        background: #eee;
		border-bottom: solid 0px #ccc;
}
	.company_profile-table td ul {
    gap: 1rem;
}
	.company_history-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.company_history-tate {
    gap: 2rem;
}
	.history_outline dl dd {
    width: calc(100% - 50px);
    padding-left: 0;
    font-size: 17px;
    line-height: 2;
		    margin: 0;
		font-size: 0.8rem;
}
	.history_outline dl dt {
    width: 110px;
    padding-left: 20px;
		    font-size: 0.8rem;
}
.history_outline dl:not(:last-child) {
    padding-bottom: 18px;
}	
	.event_list__item_txt {
		    line-height: 1.4;
	}
	.company_vision-headding_ja {
		font-size: 1.8rem;
	}
}
/*---------------------------------会社案内ページここまで-----------------------------*/
/*---------------------------------つながるモノづくりページここから-----------------------------*/
.manufacture_feature-width {
  width: 80%;
  margin: 0 auto;
  padding: 8rem 0;
}
.manufacture_IVI-width {
  width: 80%;
  margin: 0 auto;
  padding: 3rem 0 8rem;
}
.manufacture_feature-tate, .manufacture_IVI-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.manufacture_feature-headding {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  gap: 0.3rem;
}
.manufacture_feature-img {
  width: 25%;
}
.manufacture_feature-headding h2 {
  font-size: 2.3rem;
  padding: 0.5rem 3.5rem;
  background: var(--main-color);
  color: #fff;
}
.manufacture_feature-text p {
  text-align: center;
  line-height: 2.1;
}
.manufacture_feature-yoko {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.5rem;
}
.manufacture_feature-haco {
  background: #fff;
  box-shadow: 0px 1px 15px 7px #eee;
  border-radius: 15px;
  padding: 1.5rem;
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.manufacture_feature-haco h3 {
  text-align: center;
  color: var(--main-color);
  font-size: 1.5rem;
}
.manufacture_IVI-headding {
  text-align: center;
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
}
.manufacture_IVI-yoko {
  display: flex;
  gap: 2rem;
}
.manufacture_IVI-left {
  width: 50%;
}
.manufacture_IVI-right {
  width: 50%;
  display: flex;
  flex-flow: column;
  gap: 1rem;
}
.manufacture_IVI-right-top {
  background: #f8e0df;
  padding: 1rem;
  border-radius: 10px;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.manufacture_IVI-right-top h5 {
  font-size: 1.1rem;
}
.manufacture_IVI-img img {
  aspect-ratio: 3 / 2;
  object-fit: cover;
}
.manufacture_IVI-headding h2 {
  font-size: 2rem;
  color: var(--main-color);
}
.fadeIn {
	animation-name: costcutfadeInAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes costcutfadeInAnime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeInTrigger {
  opacity: 0;
}
.page-id-124 .page-header {
    background-position: 50% 30%;
}


@media(max-width: 600px) {
	.manufacture_feature-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
.manufacture_feature-img {
    width: 60%;
}	
	.manufacture_feature-headding h2 {
    font-size: 1.8rem;
    padding: 0.3rem 2rem;
}
	.manufacture_feature-tate, .manufacture_IVI-tate {
    gap: 2rem;
}
.manufacture_feature-yoko {
    display: flex;
    gap: 1.5rem;
    flex-flow: column;
}	
	.manufacture_feature-haco {
    gap: 0.5rem;
}
	.manufacture_IVI-width {
    width: 90%;
    margin: 0 auto;
    padding: 0rem 0 5rem;
}
.manufacture_IVI-headding h2 {
    font-size: 1.7rem;
}
	.manufacture_IVI-headding h3 {
		    font-size: 1.1rem;
	}
	.manufacture_IVI-yoko {
    display: flex;
    gap: 1.5rem;
    flex-flow: column;
}
	.manufacture_IVI-left {
    width: auto;
}
.manufacture_IVI-right {
    width: auto;
}	
	.manufacture_IVI-right-top h5 {
    font-size: 1rem;
}
		
}
/*---------------------------------つながるモノづくりページここまで-----------------------------*/
/*---------------------------------プライバシーポリシーページここから-----------------------------*/
.privacy-policy_width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.privacy-policy-tate {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.privacy-policy-last {
  font-size: 1.4rem;
}
.privacy-policy-hedding {
  font-size: 1.2rem;
}
.privacy-policy-info {
  margin-bottom: 2rem;
}
@media(max-width: 600px) {
	.privacy-policy_width {
    width: 90%;
    margin: 0 auto;
    padding: 3rem 0 5rem;
}
.privacy-policy-hedding {
    font-size: 1.1rem;
}		
	
}
/*---------------------------------プライバシーポリシーページここまで-----------------------------*/
/*---------------------------------施設案内ページここから-----------------------------*/
.factory_integrated-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.factory_integrated-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.5rem;
}
.factory_integrated-img img {
  aspect-ratio: 4/2.3;
  object-fit: cover;
}
.factory_integrated-tate {
  display: flex;
  flex-flow: column;
  gap: 2rem;
  justify-content: center;
}
.factory_integrated-text p {
  font-weight: 600;
  line-height: 1.9;
}
.factory_integrated-headding, .factory_factory-headding, .factory_connection-headding {
  text-align: center;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.factory_headding_ja {
  font-size: 2rem;
  line-height: 1;
}
.factory_headding_en {
  line-height: 1;
  font-size: 2rem;
  color: var(--main-color);
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.factory_factory-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.factory_factory-tate {
  display: flex;
  flex-flow: column;
  gap: 4rem;
  justify-content: center;
}
.factory_factory-content-top {
  display: flex;
  gap: 3rem;
	    align-items: center;
}
.factory_factory-content-top_left {
  flex-basis: 52%;
}
.factory_factory-content-top_right {
  flex-basis: 48%;
}
.factory_factory-content-map iframe {
  height: 14rem;
}

.factory_factory-content-tate {
  display: flex;
  flex-flow: column;
  justify-content: space-around;
  gap: 0.5rem;
}
.factory_factory-content {
  display: flex;
  flex-flow: column;
  gap: 4rem;
}
.factory_factory-content-center {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
}
.factory_factory-content-bottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
}
.factory_factory-content-name {
  font-size: 1.4rem;
}
.factory_factory-content-button a {
  background: var(--main-color);
  color: #fff;
  padding: 1rem 3rem;
  font-weight: 600;
	transition: all .4s;
}
.factory_factory-content-button a:hover {
	background: #000;
}
.factory_factory-content-button {
  margin-top: 1rem;
}
.factory_factory-content-map {
  margin-top: 2rem;
}
.factory_connection-width {
  width: 80%;
  margin: 0 auto;
  padding: 1.5rem;
  background-color: var(--sub-color2);
  margin-top: 3rem;
  margin-bottom: 8rem;
}
.factory_connection-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
  width: 80%;
  margin: 0 auto;
}
.factory_connection-back {
  background: #fff;
  padding: 3rem 0;
}
.factory_connection-yoko {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2rem;
}
.factory_connection-img img {
  aspect-ratio: 4 / 2;
  object-fit: cover;
  object-position: top;
}
.factory_connection-haco {
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}

.factory_connection-img {
	overflow: hidden;
}
.factory_connection-img img {
	transition: all .4s;
}
.factory_connection-link:hover .factory_connection-img img {
	transform: scale(1.1);
	opacity: 0.6;
}

.factory_connection-discription p {
  font-weight: 600;
}
.factory_connection-discription span {
  position: relative;
}
.factory_connection-discription {
  display: flex;
  justify-content: space-between;
}
.factory_connection-discription span::before, .factory_connection-discription span::after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 0;
  width: 9px;
  height: 1px;
  border-radius: 9999px;
  background-color: #000000;
  transform-origin: calc(100% - 2px) 50%;
}
.factory_connection-discription span::after {
  top: calc(50% - 0px);
}
.factory_connection-discription span::before {
  transform: rotate(45deg);
}
.factory_connection-discription span::after {
  transform: rotate(-45deg);
}

.factory_integrated-img02 {
	animation-delay: 0.3s;
}
.factory_integrated-img03 {
	animation-delay: 0.6s;
}
.factory_integrated-img04 {
	animation-delay: 0.9s;
}
.factory_integrated-img05 {
	animation-delay: 1.2s;
}
.factory_integrated-img06 {
	animation-delay: 1.5s;
}
.factory_factory-content-address a:hover {
	color: var(--main-color);
}
.factory_factory-content-number a:hover {
	color: var(--main-color);
}
.factory_integrated-top {
	    display: flex;
    flex-flow: column;
    gap: 2rem;
    justify-content: center;
	    width: 56%;
    margin: 0 auto;
}

@media(max-width: 600px) {
	.factory_integrated-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0 0;
}
	.factory_headding_en {
    font-size: 2.2rem;
}
	.factory_integrated-grid {
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
	.factory_integrated-img img {
    aspect-ratio: 4 / 3;
}
.factory_factory-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}	
.factory_factory-tate {
    gap: 2rem;
}	
.factory_factory-content-top {
    display: flex;
    gap: 1rem;
    flex-flow: column;
}	
.factory_factory-content-name {
    font-size: 1.2rem;
}	
	.factory_factory-content-number {
		    display: flex;
    flex-flow: column;
	}
	.factory_factory-content-map {
    margin-top: 1.5rem;
}
	.factory_factory-content-map iframe {
    height: 12rem;
}
.factory_factory-content {
    gap: 3rem;
}	
.factory_factory-content-center {
    display: flex;
    gap: 3rem;
    flex-flow: column;
}	
.factory_factory-content-button a {
    padding: 0.8rem 2.8rem;
}	
.factory_factory-content-bottom {
    display: flex;
    gap: 0rem;
    flex-flow: column;
}	
	.factory_connection-width {
    padding: 1rem;
    margin-top: 0rem;
    margin-bottom: 5rem;
}
	.factory_connection-back {
    padding: 2rem 0;
}
.factory_connection-tate {
    gap: 2rem;
    width: 90%;
    margin: 0 auto;
}	
	.factory_connection-yoko {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}
	.factory_integrated-top {
    width: -webkit-fill-available;
}
}
/*---------------------------------施設案内ページここまで-----------------------------*/
/*---------------------------------お問合せページここから-----------------------------*/
.contact_width {
  padding: 5rem 0;
  display: flex;
  flex-flow: column;
  gap: 4rem;
}
.contact_form {
	width: 70%;
  margin: 0 auto;
}
.contact_info {
  background: var(--main-color);
  padding: 4px;
  border-radius: 5px;
	width: 50%;
  margin: 0 auto;
}
.contact_info-telInfo {
	display: flex;
	gap: 0.5rem;
	justify-content: center;
	align-items: center;
}
.contact_info-back {
  background: #fff;
  border-radius: 5px;
}
.contact_info h3 {
  background: var(--main-color);
  padding: 1rem;
  border-radius: 5px 5px 0 0;
  font-size: 1.4rem;
  color: #fff;
  text-align: center;
}
.contact_info-toko {
  display: flex;
  padding: 2rem;
  gap: 3rem;
  justify-content: center;
}
.contact_info-haco {
  text-align: center;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.contact_info-button {
  background: var(--main-color);
  color: #fff;
  padding: 1rem;
  border-radius: 50vh;
  font-weight: 600;
  font-size: 1.3rem;
}
#wpcf7-f7-o1 input {
  padding: 15px 25px !important;
  font-size: 1rem;
  width: -webkit-fill-available;
  border: none;
  border-radius: 5px;
  background-color: #f0f0f0;
  line-height: inherit;
}
#wpcf7-f7-o1 textarea {
  padding: 15px 25px !important;
  font-size: 1rem;
  width: -webkit-fill-available;
  border: none;
  border-radius: 5px;
  background-color: #f0f0f0;
  line-height: inherit;
  height: 10rem;
}
#wpcf7-f7-o1 form {
  display: flex;
  flex-flow: column;
}
.wpcf7-list-item {
  margin: 0;
}
.contact-form__item {
  display: flex;
  align-items: center;
}
.contact-form__item-head {
  flex-basis: 25%;
  display: flex;
  gap: 0.8rem;
  line-height: 1;
  font-size: 1rem;
}
.contact-form__inputs {
  flex-basis: 75%;
}
.contact-form__item-head span {
  background: var(--main-color);
  color: #fff;
  padding: 0.3rem 0.6rem;
  border-radius: 5px;
  font-size: 0.9rem;
}
.contact-form__item-head span.c-badge-optional {
  background: #ccc;
  color: #757575;
}
.contact-form {
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.wpcf7-spinner {
  display: none;
}
.c-container-button {
  display: flex;
  justify-content: center;
  margin-top: 3rem;
}
#wpcf7-f7-o1 input.confirmation_button {
  background: var(--main-color);
  color: #fff;
  width: 17rem;
  font-weight: 600;
  letter-spacing: 2px;
}
.contact-form__item_radio input {
  width: auto;
}
.contact-form__item_radio .wpcf7-radio {
  width: 100%;
  display: flex;
  gap: 1rem;
}
.contact-form__item_radio .wpcf7-list-item {
  line-height: 1;
}
.contact-form__item_radio .wpcf7-list-item input {
  width: fit-content !important;
}
.contact-form__item_radio .wpcf7-list-item label {
  display: flex;
}
/*確認画面*/
.page-id-162 .page-header {
  display: none;
}
/*
.contact-confirm .contact-form__inputs p {
	    padding: 15px 25px !important;
    font-size: 1rem;
    width: -webkit-fill-available;
    border-radius: 5px;
    background-color: #f0f0f0;
}
*/
.contact-confirm .contact-form {
  gap: 2.5rem;
}
.form_btn p {
  display: flex;
  justify-content: center;
  gap: 2rem;
  margin-top: 3rem;
}
.contact-confirm .form_btn input {
  background: var(--main-color);
  color: #fff;
  width: 17rem;
  font-weight: 600;
  letter-spacing: 2px;
  padding: 15px 25px !important;
  font-size: 1rem;
  line-height: inherit;
  border: none;
  border-radius: 5px;
}
/*送信完了*/
.page-id-165 .page-header {
  display: none;
}
.Contact_thanks-main p {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 600;
}

.contact_info-button {
	border: solid 3px;
	transition: all .4s;
}
.contact_info-button:hover {
	background: #fff;
	color: var(--main-color);
}

#wpcf7-f7-o1 input.confirmation_button {
	transition: .4s;
}
#wpcf7-f7-o1 input.confirmation_button:hover {
	opacity: 0.7;
}
.contact_discription-width {
	    width: 60%;
    margin: 0 auto;
    padding: 3rem;
    background: #f8e0dfe3;
}
.contact_discription p {
	text-align: center;
}
.contact_discription p span {
	font-weight: 600;
}
@media(max-width: 600px) {
	.contact_width {
    width: 90%;
    margin: 0 auto;
    padding: 3rem 0 5rem;
    gap: 3rem;
}
.contact_info h3 {
    background: var(--main-color);
    padding: 0.5rem;
    font-size: 1.2rem;
}	
	.contact_info-toko {
    display: flex;
    padding: 1rem;
    gap: 1rem;
    justify-content: center;
    flex-flow: column;
}
.contact_info-button {
    padding: 0.5rem;
    font-size: 1.2rem;
}	
	.contact_info-haco h4 {
		    font-size: 1.1rem;
	}	
	.c-container-button {
    margin-top: 2rem;
}
	.contact-form__item {
    display: flex;
            align-items: baseline;
    flex-flow: column;
    gap: 0.5rem;
}
	.contact-form__inputs {
		    width: -webkit-fill-available;
	}
	#wpcf7-f7-o1 input {
    padding: 12px 20px !important;
}
	.contact-form__item-head {
    align-items: center;
}
	.contact_info-discription {
		    letter-spacing: -0.5px;
	}
	.contact_info-haco {
    gap: 0.2rem;
}
	.Contact_thanks-main p {
    font-size: 1.3rem;
}	
	.contact_form {
    width: -webkit-fill-available;
}
	.contact_info {
    width: -webkit-fill-available;
}
	.contact_discription-width {
	    width: -webkit-fill-available;;
    padding: 1.5rem;
}
	.contact-form__item_radio .wpcf7-radio {
    flex-flow: column;
}
}
/*---------------------------------お問合せページここまで-----------------------------*/




/*---------------------------------採用情報ページここから-----------------------------*/
.recruit_main-haco_yoko {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
.recruit_main-right {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
.recruit_main-right_img img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}
.recruit_main-left {
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 3rem;
}
.recruit_main-left_tate {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.recruit_main-left_tate h2 {
  color: #fff;
  font-size: 2.2rem;
	    text-shadow: 1px 1px 6px #000;
}
.recruit_main-left_yoko {
  display: flex;
  gap: 1rem;
}
.recruit_main-left_yoko a {
  background: var(--main-color);
  color: #fff;
  font-weight: 600;
  padding: 1.2rem;
  line-height: 1;
  width: 10rem;
  text-align: center;
  letter-spacing: 1.1px;
}
.recruit_masseage-back {
  position: relative;
}
.recruit_masseage-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
	    display: flex;
    flex-flow: column;
    gap: 3rem;
}
.recruit_masseage .service_features-movie video {
    width: 50%;
}
.recruit_masseage-yoko {
  display: flex;
  gap: 3rem;
  align-items: center;
}
.recruit_masseage-left {
  flex-basis: 20%;
}
.recruit_masseage-right {
  flex-basis: 80%;
  display: flex;
  flex-flow: column;
  gap: 0.7rem;
}
.recruit_masseage-right .recruit_masseage-img {
  width: 25%;
}
.recruit_masseage-back::before {
  position: absolute;
  content: "RECRUIT";
 bottom: 20%;
  right: 0;
  opacity: 0.1;
  color: var(--main-color);
  font-size: 11rem;
  line-height: 1;
  font-weight: 600;
	font-family: "Agdasima", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.recruit_masseage-right h4 {
  font-size: 1.2rem;
  line-height: 1.8;
}
.recruit_features-back {
  background: var(--main-color);
}
.recruit_features-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.recruit_features-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.recruit_headding {
  color: #fff;
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
  justify-content: center;
  align-items: center;
  line-height: 1;
}
.recruit_headding_en {
  font-size: 2rem;
  letter-spacing: 2px;
  font-family: "Agdasima", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.recruit_headding_ja {
	font-size: 2rem;
}
.recruit_features-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2rem;
}
.recruit_features-haco {
  background: #fff;
  padding: 1.5rem;
  border-radius: 5px;
  aspect-ratio: 4 / 3.3;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
}
.recruit_features-haco_img figure {
  width: 25%;
  margin: 0 auto;
}
.recruit_features-haco_headding {
  display: flex;
  flex-flow: column;
  justify-content: center;
  color: var(--main-color);
}
.recruit_features-haco_img svg {
	    width: 7rem;
    height: 7rem;
    line-height: 1;
}
.recruit_features-haco_headding h4 {
  text-align: center;
  font-size: 1.4rem;
}
.recruit_features-haco_headding span {
  font-size: 0.9rem;
}
.recruit_features-haco_text p {
  line-height: 1;
  font-weight: 600;
  display: flex;
  align-items: end;
  gap: 0.2rem;
}
.recruit_features-haco_number {
  font-size: 5rem;
	    font-family: "Agdasima", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.recruit_features-haco_tani {
  font-size: 2rem;
  color: var(--main-color);
}
.recruit_welfare-back {
  position: relative;
  z-index: 0;
}
.recruit_welfare-back::before {
  content: '';
  background-image: url('//nf-demo2016.net/izugiken/wp-content/uploads/2025/04/top-company-img.png');
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  filter: blur(3px);
  z-index: -2;
  background-color: #ffffff9e;
  background-blend-mode: color;
}
.recruit_welfare-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.recruit_welfare-tate {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.recruit_welfare-headding {
  color: var(--main-color);
  align-items: flex-start;
}
.recruit_welfare-headding .recruit_headding_ja {
  color: initial;
}
.recruit_welfare-discription {
  font-weight: 600;
}
.recruit_welfare-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 3rem;
}
.recruit_welfare-haco {
  display: flex;
  flex-flow: column;
  gap: 0.5rem;
}
.recruit_welfare-img img {
  aspect-ratio: 1 / 1;
  border-radius: 50vh;
}
.recruit_welfare-haco p {
  text-align: center;
  font-weight: 600;
  color: var(--main-color);
  font-size: 1.2rem;
}
.recruit_welfare-img {
  background: #ffffffd9;
  border-radius: 50vh;
}
.recruit_careerup-back {
  position: relative;
}
.recruit_careerup-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem;
}
.recruit_careerup-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.recruit_careerup-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.recruit_careerup-top_left {
  display: flex;
  flex-flow: column;
  gap: 2rem;
}
.recruit_careerup-top_left h2 {
  font-size: 2.6rem;
  line-height: 1.5;
}
.recruit_careerup-top_right-img {
  width: 75%;
}
.recruit_careerup-top_right {
  text-align: -webkit-right;
}
.recruit_careerup-back::before {
  position: absolute;
  content: "CAREER UP";
  top: 10%;
  left: 0;
  opacity: 0.1;
  color: var(--main-color);
  font-size: 11rem;
  line-height: 1;
	    font-family: "Agdasima", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.recruit_overview-width {
  width: 60%;
  margin: 0 auto;
  padding: 5rem 0 5rem;
}
.recruit_overview-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.recruit_overview-headding .recruit_headding_ja {
  color: initial;
}
.recruit_overview-headding .recruit_headding_en {
  color: var(--main-color);
}
.recruit_interview-width {
  width: 80%;
  margin: 0 auto;
  padding: 0;
}
.recruit_interview-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.recruit_interview-headding .recruit_headding_ja {
  color: initial;
}
.recruit_interview-headding .recruit_headding_en {
  color: var(--main-color);
}
.recruit_interview-slider_haco {
  background: #fff;
  box-shadow: 1px 7px 10px 2px #00000042;
  padding: 2rem;
  border-radius: 10px;
  margin: 1rem 0;
}
.recruit_interview-slider_haco-tate {
  display: flex;
  flex-flow: column;
  gap: 1.3rem;
}
.recruit_interview-slider_headding {
  display: flex;
  gap: 0.5rem;
  position: relative;
  padding: 0 0.5rem;
  font-weight: 600;
	align-items: center;
}
.recruit_interview-nyushanensu {
	font-size: 0.8rem;
}
.recruit_interview-slider_headding::before {
  position: absolute;
  content: "";
  width: 95%;
  height: 2px;
  background: var(--main-color);
  bottom: -15%;
  left: 0;
}
.recruit_interview-slider_headding::after {
  position: absolute;
  content: "";
  width: 5px;
  height: 5px;
  background: var(--main-color);
  bottom: -21%;
  left: 0;
  border-radius: 50vh;
}
.recruit_interview-slider_haco {
  height: auto;
  opacity: .3;
  transform: scale(.8);
  transition: opacity .5s, transform .5s;
  width: 100%;
}
.recruit_interview-slider_haco.slick-center {
  opacity: 1;
  transform: scale(1);
}
.slick-dots li button:before {
  color: #fff;
  font-size: 20px;
  opacity: 0.5;
}
.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 32px;
    line-height: 1;
    opacity: 0.75;
    color: var(--main-color);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev {
    left: -5px;
}
.slick-next {
    right: -5px;
}
.recruit_interview-slider .slick-track {
  display: flex;
}
.recruit_interview-slider .slick-slide {
  height: auto !important;
}



/*募集概要タブメニュー*/
.tab-container {
  width: 90%;
  margin: 20px auto;
  font-family: sans-serif;
}
.main-tabs {
  list-style: none;
  display: flex;
  justify-content: space-around;
  background: #f5f5f5;
  padding: 0;
  margin-bottom: 3rem;
  overflow: hidden;
  border-radius: 50vh;
}
.main-tabs li {
  flex: 1;
  text-align: center;
  padding: 12px 0;
  cursor: pointer;
  background: #eee;
  transition: 0.3s;
  font-weight: bold;
  color: #858585;
}
.main-tabs li.active {
  background: #d70000;
  color: white;
  font-weight: bold;
  border-radius: 50vh;
}
.tab-content {
  display: none;
}
.tab-content.active {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.location-title {
  background: #f4cccc;
  padding: 10px;
  font-weight: bold;
  margin-top: 30px;
}
.job-section {
  margin-bottom: 30px;
}
.job-section h3 {
  background: #fdd;
  padding: 10px;
}
table {
  width: 100%;
  border-collapse: collapse;
}
table th, table td {
  padding: 10px;
  border: 1px solid #ccc;
}
.job-section table th {
	width: 25%;
}
.job-section table td {
	width: 65%;
}
.entry-button {
        display: inline-block;
    margin-top: 40px;
    padding: 15px 30px;
    background: #d70000;
    color: white;
    border: none;
    border-radius: 5px;
    font-size: 1.3rem;
    cursor: pointer;
    transition: all .4s;
    width: 50%;
    font-weight: 600;
}
.entry-button:hover {
	background: #000;
}
.location-block p {
	text-align: center;
}

.location-titles-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-bottom: 24px;
  justify-content: center;
  width: 60%;
  margin: 0 auto;
}
.location-title {
  background-color: #f0f0f0;
  padding: 8px 16px;
  border-radius: 6px;
  font-weight: bold;
}
.location-block {
  margin-bottom: 32px;
}
.location-title {
  cursor: pointer;
  padding: 8px 12px;
  border-bottom: 2px solid transparent;
}
.location-title.active {
  border-bottom: 2px solid #000;
  font-weight: bold;
}
.location-title-tab {
  font-weight: bold;
  flex: 1;
  text-align: center;
  padding: 12px 0;
  cursor: pointer;
  background: #eee;
  transition: 0.3s;
  color: #858585;
  border-radius: 50vh;
}
.location-title-tab.active {
  background: var(--main-color);
  color: white;
}
.recruit_main-left_yoko a {
	transition: all .4s;
}
.recruit_main-left_yoko a:hover {
	background: #fff;
	color: var(--main-color);
}


/*募集概要タブメニューここまで*/

.recruit_features-haco2 {
	animation-delay: 0.3s;
}
.recruit_features-haco3 {
	animation-delay: 0.6s;
}
.recruit_features-haco4 {
	animation-delay: 0.9s;
}
.recruit_features-haco5 {
	animation-delay: 1.2s;
}
.recruit_features-haco6 {
	animation-delay: 1.5s;
}

.entry-discription {
	margin-top: 40px;
    padding: 3rem;
    background: #f8e0dfe3;
}
.entry-discription span {
	font-weight: 600;
}
.entry-discription a {
	color: var(--main-color);
	text-decoration: underline;
	font-weight: 600;
}
.entry-discription a:hover {
	color: inherit;
}



@media(max-width: 600px) {
	.recruit_careerup-back::before {
		    font-size: 5.5rem;
	}
	.recruit_masseage-back::before {
		font-size: 6rem;
	}
	.recruit_careerup-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
.recruit_main-haco_yoko {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
}	
.recruit_main-left_tate h2 {
    font-size: 1.4rem;
    line-height: 1.4;
}	
	.recruit_main-left {
    padding: 1.5rem;
		        aspect-ratio: 4 / 4;
}
	.recruit_main-left_tate {
    gap: 1.5rem;
}
	.recruit_main-left_yoko a {
    padding: 0.8rem;
    line-height: 1;
    width: -webkit-fill-available;
}
.recruit_main-right {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 1rem;
}	
.recruit_masseage-width {
    width: 90%;
    margin: 0 auto;
    padding: 3rem 0 5rem;
}	
	.recruit_masseage-yoko {
    display: flex;
    gap: 2rem;
    align-items: center;
    flex-flow: column;
}
	.recruit_masseage-img {
		    width: 60%;
	}
	.recruit_masseage-right h4 {
    font-size: 1rem;
    line-height: 1.6;
}
.recruit_masseage-right .recruit_masseage-img {
    width: 45%;
}	
.recruit_masseage-right {
    gap: 0.2rem;
}	
	.recruit_masseage-back::before {
		top: 52%;
	}
	
.recruit_features-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
.recruit_headding_en {
    font-size: 2.2rem;
}	
	.recruit_headding .recruit_headding_ja {
		font-size: 1.7rem;
	}	
	.recruit_features-tate {
    gap: 2rem;
}
	.recruit_features-grid {
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
	.recruit_features-haco {
    padding: 1rem;
		    aspect-ratio: 4 / 4.5;
}
	.recruit_features-haco_headding h4 {
    font-size: 1.1rem;
}
	.recruit_features-haco_headding p {
		font-size: 0.8rem;
	}

	.recruit_features-haco_number {
    font-size: 2.7rem;
}
	.recruit_features-haco_tani {
    font-size: 1.3rem;
}
	.recruit_features-haco6 .recruit_features-haco_headding h4 {
		font-size: 0.8rem;
	}
	
	.recruit_welfare-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0;
}
	.recruit_welfare-grid {
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}
	.recruit_welfare-haco p {
    font-size: 0.9rem;
}
	.recruit_careerup-top_left h2 {
    font-size: 1.7rem;
    line-height: 1.5;
}
.recruit_careerup-top {
    flex-flow: column;
	        gap: 2rem;
}	
	.recruit_careerup-top_left {
    gap: 1rem;
		order: 1;
}
	.recruit_careerup-top_right-img {
    width: 53%;
}
    .recruit_careerup-back::before {
        font-size: 6rem;
        width: 70%;
        top: 12%;
    }	
	.recruit_careerup-top_right-img {
    width: 55%;
}
	.recruit_careerup-tate {
    gap: 2rem;
}
	.recruit_interview-tate {
    gap: 2rem;
}
.recruit_interview-width {
    width: 90%;
}
	
	
	
.recruit_overview-width {
    width: 90%;
    margin: 0 auto;
    padding: 5rem 0 5rem;
}	
	.recruit_overview-tate {
    gap: 2rem;
}
	.main-tabs li {
		    font-size: 0.7rem;
		    padding: 9px 3px;
	}	
	.main-tabs {
		    margin-bottom: 2rem;
	}
	.location-titles-row {
    gap: 1rem;
    margin-bottom: 24px;
    width: 90%;
}
	.location-title-tab {
    padding: 9px 3px;
    font-size: 0.7rem;
}
	.tab-content.active {
    gap: 2rem;
}
.job-section h3 {
    font-size: 1.2rem;
	        text-align: center;
}
.job-section table th {
    width: -webkit-fill-available;
    display: block;
    background: #eee;
    border-bottom: 0px;
}	
.job-section table td {
    width: -webkit-fill-available;
    display: block;
}	
.job-section {
    margin-bottom: 3rem;
}	
	.entry-button {
		    width: 75%;
}
	.location-block {
    margin-bottom: 0;
}
	.recruit_interview-slider_haco {
		margin: 0.5rem;
		padding: 1rem;
	}
	.recruit_interview-yakushoname {
		font-size: 0.9rem;
	}
	.recruit_interview-name {
		font-size: 0.9rem;
	}
	.slick-prev {
    left: 0px;
		    bottom: -7%;
    top: auto;
}
.slick-next {
    left: 13%;
	    bottom: -7%;
    top: auto;
}
	.slick-prev:before, .slick-next:before {
    font-size: 40px;
}
	.recruit_interview-slider_haco-tate {
    gap: 1rem;
}
	.slick-slide img {
    display: block;
    aspect-ratio: 4 / 2;
    object-fit: cover;
}
	.recruit_interview-slider_text {
		font-size: 0.95rem;
	}
	.recruit_features-haco_img svg {
    width: 4rem;
    height: 4rem;
    line-height: 1;
}
	.recruit_masseage .service_features-movie video {
    width:-webkit-fill-available;
}
	.entry-discription {
    padding: 2rem 1.5rem;
}
	

}

/*---------------------------------採用情報ページここまで-----------------------------*/



/*---------------------------------よくある質問ページここまで-----------------------------*/
/**/
/*アコーディオン*/
.accordion-area {
  list-style: none;
  width: 96%;
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-flow: column;
  gap: 1.5rem;
}
.accordion-area li {
  margin: 0px 0;
}
.title {
  position: relative; /*+マークの位置基準とするためrelative指定*/
  cursor: pointer;
  font-size: 1rem;
  font-weight: normal;
  padding: 3% 3% 3% 50px;
  transition: all 0.8s ease;
}
.title::before,
.title::after {
  position: absolute;
  content: "";
  width: 15px;
  height: 2px;
  background-color: #333;
  transition: all 0.8s ease;
}
.title::before {
  top: 48%;
  left: 15px;
  transform: rotate(0deg);
}
.title::after {
  top: 48%;
  left: 15px;
  transform: rotate(90deg);
}
.title.close::before {
  transform: rotate(45deg);
}

.title.close::after {
  transform: rotate(-45deg);
}
.box {
  display: none; /*はじめは非表示*/
  margin: 0 3% 0% 3%;
  padding: 3%;
}
 .title {
  background: var(--main-color);
  color: #fff;
  padding: 3% 3% 3% 65px;
  border-radius: 5px;
  font-family: auto;
  font-weight: 600;
}
.title::before,
.title::after {
  background-color: #fff;
}
.title::after {
  left: 1.7rem;
}
.title::before {
  left: 1.7rem;
}
/*アコーディオンここまで*/
.faq_fadeUp {
  animation-name: faqfadeUpAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes faqfadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.question_width {
	    padding: 5rem 0 8rem;
}

@media(max-width: 600px) {
	.question_width {
    padding: 3rem 0 5rem;
    width: 90%;
    margin: 0 auto;
}
	.accordion-area {
    list-style: none;
    width: auto;
    max-width: -webkit-fill-available;
    gap: 1rem;
}
	.title {
    padding: 3% 3% 3% 35px;
		    font-size: 0.9rem;
}
	.title::before {
    left: 0.7rem;
}
.title::after {
    left: 0.7rem;
}	
	.box {
    margin: 0;
}	
	
}
/*---------------------------------よくある質問ページここまで-----------------------------*/




/*---------------------------------よくある質問ページここから-----------------------------*/

.page-id-473 .page-header {
	display: none;
}
.simple-sitemap-container.tab-disabled {
	    width: 80%;
    margin: 0 auto;
    padding: 3rem 0 0;
	display: block;
	    margin-bottom: 2rem;
}
.simple-sitemap-container {
	    width: 80%;
    margin: 0 auto;
    padding: 0 0 5rem;
	    display: flex;
    flex-flow: column;
    gap: 1rem;
}
.post-type {
	    background: var(--main-color);
    color: #fff;
    padding: 0.4rem 0.7rem;
	    font-size: 1.4rem;
}
.simple-sitemap-wrap {
	    display: flex;
    flex-flow: column;
    gap: 1rem;
}
.simple-sitemap-page, .simple-sitemap-post {
	    display: flex;
    flex-flow: column;
    gap: 0.5rem;
}
.sitemap-item a {
	text-decoration: underline;
	    color: #6e6666;
}
.sitemap-item {
	    list-style: circle;
}
.simple-sitemap-container ul {
    margin: 0 0 0 1.5em;
}
@media(max-width: 600px) {
	.simple-sitemap-container.tab-disabled {
    width: 90%;
    margin: 0 auto;
    padding: 2rem 0 0;
    display: block;
    margin-bottom: 2rem;
}
	.simple-sitemap-container {
    width: 90%;
    margin: 0 auto;
    padding: 0 0 3rem;
    display: flex;
    flex-flow: column;
    gap: 1rem;
}
	.term-tag {
		    line-height: 1;
	}
	.post-type {
    font-size: 1.2rem;
}
	
	
	
	
}

/*---------------------------------よくある質問ページここまで-----------------------------*/



/*--------------------------------設備一覧ページ--------------------------------*/
.service_example-back {
  background: var(--main-color);
}
.service_example-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.service_example-tate {
  display: flex;
  flex-flow: column;
  gap: 3rem;
}
.service_example-hedding h2 {
  color: #fff;
  font-size: 2rem;
  line-height: 1;
}
.service_example-yoko {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
}
.service_example-right {
  display: flex;
  flex-flow: column;
  gap: 0.8rem;
}
.service_example-haco {
  background: #fff;
  padding: 0.3rem 1.2rem;
  font-weight: 600;
  font-size: 1.1rem;
}
.service_equipment-width {
  width: 80%;
  margin: 0 auto;
  padding: 5rem 0;
}
.service_equipment-tate {
	display: flex;
    flex-flow: column;
    gap: 2rem;
}

.service_equipment-content {
	    display: flex;
    flex-flow: column;
    gap: 2rem;
}
.service_equipment-pdf img:hover {
	opacity: 0.7;
}
.service_equipment-hedding h2 {
  color: var(--main-color);
  font-size: 2rem;
  line-height: 1;
}

.service_equipment-yoko {
	display: grid;
	 grid-template-columns: 1fr 1fr 1fr;
	gap: 3rem;
}
.service_equipment-left, .service_equipment-center, .service_equipment-right {
	 display: flex;
    flex-flow: column;
    gap:1rem;
}
.service_equipment-left h4, .service_equipment-center h4, .service_equipment-right h4 {
	    background: var(--main-color);
    color: #fff;
    padding: 0.5rem;
    text-align: center;
}


@media(max-width: 600px) {
	.service_equipment-yoko {
	 display: flex;
    flex-flow: column;
    gap: 4rem;
	}
	.service_equipment-width {
  width: 90%;
  margin: 0 auto;
  padding: 3rem 0;
}
	    .service_example-yoko {
        display: flex;
        gap: 2rem;
        align-items: center;
        flex-flow: column;
    }
}
















/*--------------------------------設備一覧ページここまで--------------------------------*/