@charset "utf-8";


/*　　Home / メインイメージ
-------------------------------------------------------*/
#main-img {
	position: relative;
	height: 100vh;
	max-height: 60vw;
	overflow: hidden;
}
#main-img .swiper-slide-active .slide-img,
#main-img .swiper-slide-duplicate-active .slide-img,
#main-img .swiper-slide-prev .slide-img {
  animation: zoom-out 6s linear 0s 1 normal both;
}
@keyframes zoom-in {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}

@keyframes zoom-out {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
.swiper-wrap {
  margin: 0 calc(50% - 50vw);
  max-width: 100vw;
  position: relative;
  overflow: hidden;
}
.slide-text {
  content: "";
	position: absolute;
	left: 0;
	top: 40%;
	width: 50%;
	transform: translateY(-20%) translateX(0);
}
.slide-text > img {
	width: 100%;
}
.slide-img > img {
  object-fit: cover;
  height: 100vh;
  width: 100%;
}
.main-linebg {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-image: url("../images/common/main_linebg.png");
	background-repeat: repeat-y;
	background-position: center;
	z-index: 1;
}
.main-text01 {
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 36.666%;
	z-index: 300;
}
.main-text02 {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
  padding: 10px 10px 10px 36.666%;
	background: #ad1e23;
	z-index: 200;
}
.main-text02-year {
  width: 170px;
  margin-left: 10px;
  text-align: center;
	height: 36px;
  line-height: 36px;
  padding-right: 15px;
  color: #fff;
  background-image: url("../images/pages/main_text02_bg.png"), linear-gradient(to right,#ff0009, #ff0009 50%, transparent 50%);
  background-repeat: no-repeat, no-repeat;
  background-position: right center, center;
  background-size: auto 100%, 100%;
  vertical-align: middle;
}
.main-text02-2 {
  flex: 1;
  padding: 5px 5% 5px 15px;
  color: #fff;
}
.main-text02-tb-sp {
  display: none;
}
.main-text03 {
	position: absolute;
	bottom: 7.738vw;
	left: 4.6vw;
	font-size: 2.857vw;
	color: #fff;
	line-height: 1.2;
	z-index: 100;
}
.main-text03 span {
	font-size: 2.261vw;
}

@keyframes main-text03-kf {
  0% {
		opacity: 0;
    transform: translateX(-20%) scale(1);
		easing: ease-in;
  }
	100% {
		opacity: 1;
    transform: translateX(0) scale(1);
    easing: ease-in;
  }
}
.main-text03-m {
	display: inline-block;
	animation: main-text03-kf 0.7s 0.5s 1 normal both;
}
.main-text03-m2 {
	display: inline-block;
	animation: main-text03-kf 0.7s 0.7s 1 normal both;
}
.main-line-box {
	position: absolute;
	bottom: 5.297vw;
	left: 0;
	right: 0;
	z-index: 10;
}
.main-line {
	content: "";
	width: 100%;
	height: 2.142vw;
	margin-top: 4px;
	background: linear-gradient(to right,#4d4e51 0%, #aba7a7 54%, #72767f 79%, #585454 90%, #3a3b3b 100%);
}

@keyframes main-line-kf {
	0% {
		transform: translateX(-150%);
	}
	20% {
		transform: translateX(-20%);
	}
	40% {
		transform: translateX(150%);
	}
	100% {
		transform: translateX(150%);
	}
}
.line01-motion {
	display: block;
	animation: main-line-kf 8s 1s infinite normal both;
}
.line02-motion {
	display: block;
	animation: main-line-kf 8s 1.1s infinite normal both;
}
.line03-motion {
	display: block;
	animation: main-line-kf 8s 1.2s infinite normal both;
}
.line04-motion {
	display: block;
	animation: main-line-kf 8s 1.3s infinite normal both;
}
.line05-motion {
	display: block;
	animation: main-line-kf 8s 1.4s infinite normal both;
}

@media screen and (max-width: 1280px){
#main-img {
  height: 80vw;
	max-height: 100vh;
}
.slide-img > img {
  height: 80vw;
}
.main-text01 {
	width: 55%;
  margin-left: -2%;
}
.main-text02 {
  display: none;
}
.main-text02-tb-sp {
  display: flex;
  padding: 10px 5%;
  background: #ad1e23;
}
.main-text02-2-tb-sp {
  width: calc(100% - 160px);
  padding: 5px 5% 5px 15px;
  color: #fff;
}
.main-text02-year-tb-sp {
  width: 160px;
  text-align: center;
	height: 36px;
  line-height: 36px;
  padding-right: 15px;
  color: #fff;
  background-image: url("../images/pages/main_text02_bg.png"), linear-gradient(to right,#ff0009, #ff0009 50%, transparent 50%);
  background-repeat: no-repeat, no-repeat;
  background-position: right center, center;
  background-size: auto 100%, 100%;
  vertical-align: middle;
}
.main-text03 {
	bottom: 12vw;
	left: 5vw;
	font-size: 4.2vw;
	color: #fff;
	line-height: 1.2;
	z-index: 100;
}
.main-text03 span {
	font-size: 3.2vw;
}
.main-line-box {
	bottom: 9vw;
	left: 0;
	right: 0;
}
.main-line {
	width: 100%;
	height: 3.1vw;
}
}

@media screen and (max-width: 767px){
#main-img {
  height: 148vw;
	max-height: 100vh;
}
.slide-img > img {
  height: 148vw;
}
.main-text01 {
	width: 90%;
  margin-left: -6.5%;
}
.main-text02-tb-sp {
  padding: 5px 5%;
}
.main-text02-year-tb-sp {
  width: 130px;
  padding-right: 15px;
  font-size: 1.2rem;
}
.main-text02-2-tb-sp {
  width: calc(100% - 130px);
  padding: 5px 5% 5px 15px;
  font-size: 1.2rem;
}
.main-text03 {
	bottom: 18vw;
	left: 5vw;
	font-size: 6.8vw;
}
.main-text03 span {
	font-size: 5.8vw;
}
.main-line-box {
	bottom: 15vw;
	left: 0;
	right: 0;
}
.main-line {
	width: 100%;
	height: 4vw;
}
}




/*　　Home
-------------------------------------------------------*/
.home-services {
  position: relative;
}
.home-services-bg {
  content: "";
  position: absolute;
  top: 165px;
  bottom: 105px;
  left: calc(50% - 224px);
  right: 0;
  padding: 40px 0 0 40px;
  background-color: #f3f4f6;
  z-index: -1;
}
.home-services-bg-text {
  font-size: 8rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.home-services-img01 {
  width: 400px;
  margin-right: 50px;
}
.home-services-img02 {
  width: 400px;
  margin-left: 50px;
}
.home-strengths {
  position: relative;
  color: #fff;
  background-color: #282828;
  overflow: hidden;
}
.home-strengths-bg01 {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 771px;
  background-image: url("../images/pages/home_strengths01.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: 2;
}
.home-strengths-bg02 {
  content: "";
  position: absolute;
  top: -80px;
  bottom: 0;
  left: -120px;
  right: 0;
  width: 80%;
  background-image: url("../images/pages/home_strengths02.png");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 676px auto;
  z-index: 1;
}
.home-strengths-box,
.home-strengths-box02 {
  position: relative;
  z-index: 10;
}
.home-strengths-text01 {
  display: inline-block;
  padding: 5px 8px;
  line-height: 1;
  background-color: #282828;
}
.home-strengths-text01 .fs01 {
  font-size: 5rem;
  font-weight: 700;
}
.home-strengths-text01 .fs02 {
  font-size: 4rem;
  font-weight: 700;
}
.home-strengths-text02 {
  display: inline-block;
  padding: 8px;
  line-height: 1;
  background-color: #ad1e23;
}
.home-strengths-text03 {
  display: inline-block;
  padding: 5px 8px;
  line-height: 1.1;
  background-color: #282828;
}
.home-strengths-slide {
  position: relative;
  overflow: hidden;
}
.home-strengths-slide .swiper {
  overflow: visible;
}
.home-strengths-slide .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
.home-strengths-slide .swiper-slide {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.home-strengths-slide .slide {
  overflow: hidden;
  width: 350px;
}
.home-strengths-slide .slide-img {
  position: relative;
  overflow: hidden;
  padding-top: 233px;
  border: 0;
  background: #fff;
  border-radius: 8px;
}
.home-strengths-slide .slide-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.home-strengths-slide p {
  margin-top: 10px;
}
.home-quality-list li a {
  display: block;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.home-quality-list {
  position: relative;
  z-index: 10;
}
.home-quality-list li:nth-child(2) {
  margin-top: 80px;
}
.home-quality-list li:nth-child(3) {
  margin-top: 160px;
}
.home-quality-bg {
  position: relative;
  margin-top: -22.321vw;
  
  clip-path: polygon(0% 0%, 100% 15%, 100% 100%, 0% 100%);
  z-index: 1;
}
.home-quality-bg-inner {
  height: 60.198vw;
}
.home-quality-bg-img {
  background-image: url("../images/pages/home_quality_bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.home-quality-bg-text {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: fit-content;
  margin: 0 auto;
  color: #fff;
  font-size: 14.421rem;
  font-weight: 700;
  line-height: 0.5;
  text-align: right;
}
.home-quality-bg-text span {
  display: inline-block;
  font-size: 6rem;
}
.home-recruit {
  position: relative;
  color: #fff;
  background: linear-gradient(to right,#3a3b3b, #585454 10%, #72767f 21%, #aba7a7 46%, #4d4e51 100%);
}
.home-recruit-btn {
  width: 470px;
}
.home-recruit01-box {
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(50% + 130px);
	width: 220px;
	height: 100%;
}
.home-recruit02-box {
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(50% + 380px);
	width: 220px;
	height: 100%;
}
.home-recruit01-slide,
.home-recruit02-slide {
  position: relative;
  overflow: hidden;
  height: 100%; /* 縦スライダーの高さを指定 */
}
.home-recruit01-slide .swiper,
.home-recruit02-slide .swiper {
  overflow: visible;
  height: 100%;
}
.home-recruit01-slide .swiper-wrapper,
.home-recruit02-slide .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
  flex-direction: column; /* 縦方向に配置 */
}
.home-recruit01-slide .swiper-slide,
.home-recruit02-slide .swiper-slide {
  width: 100%; /* 横幅いっぱいに */
  height: auto; /* 高さは自動 */
}
.home-recruit01-slide .slide,
.home-recruit02-slide .slide {
  overflow: hidden;
  width: 220px;
  margin: 0 auto; /* 中央寄せ */
}
.home-recruit01-slide .slide-img,
.home-recruit02-slide .slide-img {
  position: relative;
  overflow: hidden;
  padding-top: 144.44%;
  border: 0;
  background: #fff;
	border-radius: 8px;
}
.home-recruit01-slide .slide-img img,
.home-recruit02-slide .slide-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.home-company-img01 {
  width: 34.495%;
  margin-left: 3.302%;
}

@media screen and (max-width: 1280px){
.home-services-bg {
  top: 110px;
  bottom: 55px;
  left: 35%;
  right: 0;
  padding: 20px 0 0 20px;
}
.home-services-bg-text {
  font-size: 4rem;
}
.home-services-img01 {
  width: 35%;
  margin-right: 30px;
}
.home-services-img02 {
  width: 35%;
  margin-left: 30px;
}
.home-strengths-bg01 {
  height: 550px;
}
.home-strengths-bg02 {
  top: -30px;
  left: -80px;
  background-size: 300px auto;
}
.home-strengths-text01 .fs01 {
  font-size: 3.6rem;
}
.home-strengths-text01 .fs02 {
  font-size: 2.6rem;
}
.home-strengths-text03 {
  font-size: 1.2rem;
}
.home-quality-list li:nth-child(2) {
  margin-top: 5vw;
}
.home-quality-list li:nth-child(3) {
  margin-top: 10vw;
}
.home-quality-bg-text {
  font-size: 11vw;
}
.home-quality-bg-text span {
  font-size: 4vw;
}
.home-recruit-btn {
  width: 350px;
}
.home-recruit01-box {
	position: absolute;
	top: 0;
	bottom: 0;
	left: auto;
  right: 22%;
	width: 14.322%;
	height: 100%;
}
.home-recruit02-box {
	position: absolute;
	top: 0;
	bottom: 0;
	left: auto;
  right: 5%;
	width: 14.322%;
	height: 100%;
}
.home-recruit01-slide .slide,
.home-recruit02-slide .slide {
  width: 100%;
}
}

@media screen and (max-width: 767px){
.home-services-bg {
  top: 80px;
  bottom: 40px;
  left: 30%;
  right: 0;
  padding: 40px 0 0 20px;
}
.home-services-bg-text {
  font-size: 2.4rem;
}
.home-services-img01 {
  width: 80%;
  margin: auto;
}
.home-services-img02 {
  width: 80%;
  margin: auto;
}
.home-strengths-bg01 {
  height: 320px;
}
.home-strengths-bg02 {
  top: -30px;
  left: -40px;
  background-size: 200px auto;
}
.home-strengths-text01 .fs01 {
  font-size: 2.6rem;
}
.home-strengths-text01 .fs02 {
  font-size: 1.8rem;
}
.home-strengths-text03 {
  font-size: 1.2rem;
}
.home-quality-list li:nth-child(2) {
  margin-top: 30px;
}
.home-quality-list li:nth-child(3) {
  margin-top: 30px;
}
.home-quality-bg {
  margin-top: 30px;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}
.home-quality-bg-text {
  top: 43%;
  font-size: 8vw;
}
.home-quality-bg-text span {
  font-size: 3vw;
}
.home-recruit-btn {
  width: 90%;
}
.home-recruit01-box {
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin-top: 50px;
  width: 100%;
  height: 159px; /* 110px × 144.44% */
}
.home-recruit02-box {
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin-top: 20px;
  width: 100%;
  height: 159px; /* 110px × 144.44% */
}
.home-recruit01-slide, .home-recruit02-slide {
  width: 100%;
  height: 100%;
}
.home-recruit01-slide .swiper-wrapper, 
.home-recruit02-slide .swiper-wrapper {
  flex-direction: row;
  align-items: center;
}
.home-recruit01-slide .swiper-slide, 
.home-recruit02-slide .swiper-slide {
  width: 110px;
  height: auto;
  flex-shrink: 0;
}
.home-recruit01-slide .slide, .home-recruit02-slide .slide {
  width: 110px;
}
.home-company-img01 {
  width: 100%;
  margin-left: 0;
}
}



/*　　ページタイトルイメージ / パンクズ / ページナビ
-------------------------------------------------------*/
.page-header {
	position: relative;
	height: 28.57vw;
}
.page-header-img {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	overflow: hidden;
	z-index: 2;
}
.page-header-linebg {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-image: url("../images/common/main_linebg.png");
  background-repeat: no-repeat;
  background-position: center;
  z-index: 3;
}
.page-header-title {
	position: absolute;
	bottom: 0;
  left: 0;
  right: 0;
	padding: 20px 10px;
	line-height: 1.4;
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	background: rgba(40,40,40,0.7);
	z-index: 4;
}
.page-header-title .ff-en {
  display: block;
  font-size: 3.6rem;
  font-weight: 700;
}
.pankuzu {
	padding: 8px 0;
	font-size: 1.2rem;
	background: #f7f8f9;
}
.pankuzu.no-bg {
	background: transparent;
}
.pankuzu {
	color: #666;
}
.pankuzu span {
	margin: 3px;
}
.pankuzu span:first-child {
	margin-left: 0;
}
.pankuzu a {
	color: #666;
}
.pankuzu a:hover {
	color: #f31f29;
	text-decoration: underline;
}
.page-nav a {
  display: block;
  padding: 5px;
  color: #282828;
  text-align: center;
  border-radius: 50px;
	background-color: #e2e4e6;
  background-image: url("../images/common/arrow02_2.png");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px auto;
}
.page-nav a:hover {
  background-color: #f3d0d1;
}


@media screen and (max-width: 1280px){
.page-header {
  height: 40vw;
}
.page-header-title {
	padding: 10px;
	font-size: 1.4rem;
}
.page-header-title .ff-en {
  font-size: 2.4rem;
}
.pankuzu {
	font-size: 1rem;
}
}

@media screen and (max-width: 767px){
.page-header {
  height: 60vw;
}
.page-header-title {
	padding: 10px;
	font-size: 1.2rem;
}
.page-header-title .ff-en {
  font-size: 1.6rem;
}
.pankuzu {
	font-size: 1rem;
}
}



/*　　お知らせ
-------------------------------------------------------*/
.news-category-list {
	width: 100%;
	padding-bottom: 50px;
}
.news-category-list li a {
	display: inline-block;
	margin-right: 10px;
	padding: 3px 15px 3px 30px;
	color: #282828;
	border-radius: 50px;
  border: 1px solid #e2e4e6;
	background-color: #e2e4e6;
	background-image: url("../images/common/icon_category.png");
	background-repeat: no-repeat;
	background-position: left 12px top 9px;
	background-size: 15px auto;
}
.news-category-list li a:hover {
	color: #282828;
  border: 1px solid #f3d0d1;
	background-color: #f3d0d1;
}
.news-category-list li.act a {
  border: 1px solid #ccc;
  background-color: #fff;
}
.news-category-list li.all-news a {
	padding: 2px 14px 2px 14px;
	background-image: none;
}
.news-category-list li.all-news a:hover {
	color: #282828;
  border: 1px solid #f3d0d1;
	background-color: #f3d0d1;
}
.news-box {
	border-bottom: 1px solid #ccc;
}
.news-list {
}
.news-list li a {
	display: block;
	color: #282828;
}
.news-list li a:hover {
	color: #f31f29;
}
.news-list li a img {
	transition-duration: 0.2s;
}
.news-list li a:hover img {
  opacity: 0.8;
	transform: scale(1.05);
}
.news-thumbnail {
	border-radius: 8px;
  margin-bottom: 10px;
  background-color: #fff;
	overflow: hidden;
}
.news-list-category {
  display: block;
  width: 100px;
  margin-right: 10px;
  padding: 5px;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
}
.news-list-category.cate-news {
  background-color: #ad1e23;
}
.news-list-category.cate-achievements {
  background-color: #ff9900;
}
.news-list-date {
	display: block;
	font-size: 1.4rem;
}
.news-list-txt01 {
	line-height: 1.5;
}
.news-detail-box01 {
	border-bottom: 1px dotted #ccc;
}
.news-detail-thumbnail {
	width: 200px;
	margin-right: 30px;
	overflow: hidden;
}
.news-detail-txt {
	flex: 1;
}
.news-img01 {
	margin-top: 30px;
	padding-bottom: 30px;
	border-bottom: 1px dotted #ccc;
}
.news-img01 figure img,
.news-img01 figcaption {
	display: block;
	margin: 0 auto;
}
.news-detail-img01 {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px dotted #ccc;
	text-align: center;
}
.news-detail-content ul {
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 20px;
}
.news-detail-content ol {
  list-style-type: decimal;
  list-style-position: outside;
  margin-left: 20px;
}
.news-detail-content blockquote {
	font-style: italic;
	font-size: 1.6rem;
}
.news-detail-content h1 {
	margin-top: 2em;
	color: #282828;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.5;
}
.news-detail-content h2 {
	margin-top: 2em;
	color: #282828;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}
.news-detail-content h3 {
	margin-top: 2em;
	color: #282828;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}
.news-detail-content h4 {
	margin-top: 2em;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	color: #282828;
}
.news-detail-content h5,
.news-detail-content h6 {
	margin-top: 2em;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	color: #282828;
}	
.news-detail-content p {
	margin-top: 20px;
}
.news-detail-content ul {
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 20px;
}
.news-detail-content ol {
  list-style-type: decimal;
  list-style-position: outside;
  margin-left: 20px;
}

@media screen and (max-width: 1280px){
.news-category-list {
	padding-bottom: 40px;
}
.news-category-list li a {
	margin-right: 5px;
	padding: 3px 12px 3px 28px;
	background-position: left 12px top 8px;
	background-size: 14px auto;
}
.news-category-list li.all-news a {
	padding: 2px 12px 2px 12px;
}
.news-list-category {
  font-size: 1.2rem;
}
.news-list-date {
	font-size: 1.2rem;
}
.news-list-txt01 {
	font-size: 1.2rem;
}
.news-detail-thumbnail {
	width: 160px;
}
.news-detail-content h1 {
	font-size: 2.4rem;
	padding-left: 10px;
}
.news-detail-content h2 {
	font-size: 1.8rem;
	padding-left: 10px;
}
.news-detail-content h3 {
	font-size: 1.6rem;
}
.news-detail-content h4 {
	font-size: 1.6rem;
}
.news-detail-content h5,
.news-detail-content h6 {
	font-size: 1.6rem;
}
}

@media screen and (max-width: 767px){
.news-category-list {
	padding-bottom: 30px;
}
.news-category-list li a {
	margin-right: 5px;
	padding: 3px 12px 3px 28px;
	background-position: left 12px top 8px;
	background-size: 14px auto;
}
.news-category-list li.all-news a {
	padding: 2px 12px 2px 12px;
}
.news-list-category {
  width: 100%;
  margin-right: 0;
}
.news-list-txt01 {
	font-size: 1.2rem;
}
.news-detail-thumbnail {
	width: 70%;
	margin: 0 auto 20px;
}
.news-detail-txt {
	width: 100%;
}
.news-detail-img01 {
	margin-top: 30px;
	padding-top: 30px;
}
.news-detail-content h1 {
	font-size: 2.2rem;
	padding-left: 10px;
}
.news-detail-content h2 {
	font-size: 1.8rem;
	padding-left: 10px;
}
.news-detail-content h3 {
	font-size: 1.6rem;
}
.news-detail-content h4 {
	font-size: 1.6rem;
}
.news-detail-content h5,
.news-detail-content h6 {
	font-size: 1.5rem;
}
}



/*　　早潮のこだわり
-------------------------------------------------------*/
.strengths-heading01 {
  display: inline-block;
  line-height: 1.2;
  text-align: center;
}
.strengths-heading01 .fs01 {
  font-size: 5rem;
  font-weight: 700;
}
.strengths-heading01 .fs02 {
  font-size: 4rem;
  font-weight: 700;
}
.strengths-list {
  padding: 30px 20% 0;
  line-height: 1.4;
  border-top: 1px solid #282828;
}
.strengths-img01-box,
.strengths-img02-box {
  height: 51.19vw;
}
.strengths-img01 {
  background-image: url("../images/pages/strengths03.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.strengths-img02 {
  background-image: url("../images/pages/strengths06.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.strengths-slide-box a {
  cursor: pointer;
}

@media screen and (max-width: 1280px){
.strengths-heading01 .fs01 {
  font-size: 3.6rem;
}
.strengths-heading01 .fs02 {
  font-size: 2.6rem;
}
.strengths-list {
  padding: 30px 8% 0;
}
}

@media screen and (max-width: 767px){
.strengths-heading01 .fs01 {
  font-size: 2.6rem;
}
.strengths-heading01 .fs02 {
  font-size: 1.8rem;
}
.strengths-list {
  padding: 20px 0 0;
}
}



/*　サービス内容
-------------------------------------------------------*/
.services-img01 {
  height: 36.011vw;
}
.services-img01-text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  color: #fff;
  font-size: min(5.952vw, 10rem);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  -webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}
.services-img01-text span {
  display: block;
  padding-top: 20px;
  font-size: min(2.38vw, 4rem);
}
.services-img02 {
  height: 30.952vw;
}
.services-img02 img {
  width: 100%;
}
.services-img02-text {
  position: absolute;
  top: 40%;
  left: 0;
  right: 0;
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
.services-img02-text span {
  display: block;
  padding-top: 15px;
  font-size: 6rem;
  font-weight: 700;
  line-height: 1;
}
.services-img02-btn {
  position: absolute;
  bottom: 50px;
  left: 0;
  right: 0;
}
.services-img02-btn a {
  display: block;
}

@media screen and (max-width: 1280px){
.services-img01 {
  height: 50vw;
}
.services-img01-text {
  font-size: 4rem;
}
.services-img01-text span {
  font-size: 1.8rem;
}
.services-img02 {
  height: 50vw;
}
.services-img02 img {
  height: 55vw;
  object-fit: cover;
}
.services-img02-text {
  top: 30%;
  font-size: 1.8rem;
}
.services-img02-text span {
  font-size: 4rem;
}
.services-img02-btn {
  bottom: 30px;
}
}

@media screen and (max-width: 767px){
.services-img02 {
  height: 70vw;
}
.services-img02 img {
  height: 75vw; /* 少し余分に　*/
}
.services-img02-text span {
  font-size: 2.4rem;
}
.services-img02-btn {
  bottom: 20px;
}
}



/*　製造設備及び工程
-------------------------------------------------------*/
.manufacturing-img01 {
  height: 63.09vw;
}
.manufacturing-img01 img {
  width: 100%;
}

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

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



/*　品質管理
-------------------------------------------------------*/
.quality-img01 {
  width: 30%;
  margin-right: 30px;
}

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

@media screen and (max-width: 767px){
.quality-img01 {
  width: 100%;
  margin-right: 0;
}
}


/*　品質管理の図表1
-------------------------------------------------------*/
/* ===== COLOR VARIABLES (edit here to change colors) ===== */
  :root {
    --color-standard: #4fc3d8;       /* はやしお標準規格 line/cell color */
    --color-special: #8b2020;        /* はやしお特別規格 line/cell color */
    --color-standard-light: #d6f2f8; /* table header bg for standard */
    --color-special-light: #c0504d;  /* table header bg for special (red) */
    --color-special-cell: #c0504d;   /* special column cell bg */

    --color-bg: #ffffff;
    --color-text: #222222;
    --color-grid: #cccccc;
    --color-axis: #555555;
    --color-table-border: #aaaaaa;
    --color-table-header-bg: #e8e8e8;
    --color-table-row-alt: #f5f5f5;
  }
  /* ===== SCOPE: all styles live inside .quality-chart ===== */

  .quality-chart {
    padding: 20px 0;
    background: rgba(255,255,255,0.70);
  }
  .quality-chart .container {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  /* ===== CHART ===== */
  .quality-chart .chart-wrap {
    flex: 1 1 320px;
    min-width: 0;
  }

  .quality-chart .chart-area {
    position: relative;
    width: 100%;
  }

  .quality-chart svg.chart-svg {
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
  }

  .quality-chart .legend {
    display: flex;
    gap: 28px;
    margin-top: 12px;
    align-items: center;
    flex-wrap: wrap;
  }
  .quality-chart .legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .quality-chart .legend-line {
    width: 36px;
    height: 5px;
    border-radius: 3px;
    flex-shrink: 0;
  }
  .quality-chart .legend-standard { background: var(--color-standard); }
  .quality-chart .legend-special   { background: var(--color-special); }

  /* ===== TABLE ===== */
  .quality-chart .table-wrap {
    flex: 1 1 280px;
    min-width: 0;
    overflow-x: auto;
  }

  .quality-chart table {
    border-collapse: collapse;
    width: 100%;
  }

  .quality-chart table th,
  .quality-chart table td {
    border: 1px solid var(--color-table-border);
    padding: 8px 14px;
    text-align: center;
    white-space: nowrap;
  }

  .quality-chart thead th {
    background: var(--color-table-header-bg);
    font-weight: 700;
  }
  .quality-chart thead th.col-standard {
    background: var(--color-standard-light);
  }
  .quality-chart thead th.col-special {
    background: var(--color-special-light);
    color: #ffffff;
  }

  .quality-chart tbody tr:nth-child(odd) td:first-child  { background: #f9f9f9; }
  .quality-chart tbody tr:nth-child(even) td:first-child { background: #efefef; }

  .quality-chart tbody td.col-standard {
    background: var(--color-standard-light);
    font-weight: 600;
  }
  .quality-chart tbody td.col-special {
    background: var(--color-special-cell);
    color: #ffffff;
    font-weight: 600;
  }

  /* ===== RESPONSIVE BREAKPOINTS ===== */
  @media screen and (max-width: 1280px){
    .quality-chart .container {
      flex-direction: column;
      gap: 32px;
    }
    .quality-chart .chart-wrap,
    .quality-chart .table-wrap {
      flex: 1 1 100%;
      width: 100%;
    }
  }

  @media screen and (max-width: 767px){
    .quality-chart {
      padding: 20px 0;
    }
    .quality-chart table th,
    .quality-chart table td {
      padding: 6px 8px;
      font-size: 1.2rem;
    }
  }


/*　品質管理の図表02
-------------------------------------------------------*/
/* ===== COLOR VARIABLES (edit here to change colors) ===== */
  :root {
    --color-standard: #4fc3d8;       /* はやしお標準規格 line/cell color */
    --color-special: #8b2020;        /* はやしお特別規格 line/cell color */
    --color-standard-light: #d6f2f8; /* table header bg for standard */
    --color-special-light: #c0504d;  /* table header bg for special (red) */
    --color-special-cell: #c0504d;   /* special column cell bg */

    --color-bg: #ffffff;
    --color-text: #222222;
    --color-grid: #cccccc;
    --color-axis: #555555;
    --color-table-border: #aaaaaa;
    --color-table-header-bg: #e8e8e8;
    --color-table-row-alt: #f5f5f5;
  }

  /* ===== SCOPE: all styles live inside .quality-chart02 ===== */

  .quality-chart02 {
    padding: 20px 0;
    background: rgba(255,255,255,0.70);
  }

.quality-chart02 .container {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .quality-chart02 .chart-wrap {
    flex: 1 1 320px;
    min-width: 0;
  }

  .quality-chart02 .chart-area {
    position: relative;
    width: 100%;
  }

  .quality-chart02 svg.chart-svg {
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
  }

  .quality-chart02 .legend {
    display: flex;
    gap: 28px;
    margin-top: 12px;
    align-items: center;
    flex-wrap: wrap;
  }
  .quality-chart02 .legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .quality-chart02 .legend-line {
    width: 36px;
    height: 5px;
    border-radius: 3px;
    flex-shrink: 0;
  }
  .quality-chart02 .legend-standard { background: var(--color-standard); }
  .quality-chart02 .legend-special   { background: var(--color-special); }

  .quality-chart02 .table-wrap {
    flex: 1 1 280px;
    min-width: 0;
    overflow-x: auto;
  }

  .quality-chart02 table {
    border-collapse: collapse;
    width: 100%;
  }

  .quality-chart02 table th,
  .quality-chart02 table td {
    border: 1px solid var(--color-table-border);
    padding: 8px 14px;
    text-align: center;
    white-space: nowrap;
  }

  .quality-chart02 thead th {
    background: var(--color-table-header-bg);
    font-weight: 700;
  }
  .quality-chart02 thead th.col-standard {
    background: var(--color-standard-light);
  }
  .quality-chart02 thead th.col-special {
    background: var(--color-special-light);
    color: #ffffff;
  }

  .quality-chart02 tbody tr:nth-child(odd) td:first-child  { background: #f9f9f9; }
  .quality-chart02 tbody tr:nth-child(even) td:first-child { background: #efefef; }

  .quality-chart02 tbody td.col-standard {
    background: var(--color-standard-light);
    font-weight: 600;
  }
  .quality-chart02 tbody td.col-special {
    background: var(--color-special-cell);
    color: #ffffff;
    font-weight: 600;
  }

  @media screen and (max-width: 1280px){
    .quality-chart02 .container {
      flex-direction: column;
      gap: 32px;
    }
    .quality-chart02 .chart-wrap,
    .quality-chart02 .table-wrap {
      flex: 1 1 100%;
      width: 100%;
    }
  }

  @media screen and (max-width: 767px){
    .quality-chart02 {
      padding: 20px 0;
    }
    .quality-chart02 table th,
    .quality-chart02 table td {
      padding: 6px 8px;
      font-size: 1.2rem;
    }
  }




/*　作業の流れ
-------------------------------------------------------*/
.workflow-box {
  padding-bottom: 30px;
  border-bottom: 2px solid;
  border-image: linear-gradient(to right, #ad1e23 0%, #ad1e23 30%, #ccc 30%);
	border-image-slice: 1;
  background: rgba(255,255,255,0.5);
}
.workflow-img01 {
  width: 30%;
  margin-right: 30px;
}
.workflow-step-icon {
  display: inline-block;
  padding: 8px 15px;
  margin: 3px 10px 0 0;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  border-radius: 5px;
  background: #ad1e23;
}
.workflow-step-arrow {
  content: "";
  width: 30%;
  height: 60px;
  margin-bottom: 30px;
  background-image: url("../images/pages/workflow_arrow.png");
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 24px auto;
}

@media screen and (max-width: 1280px){
.workflow-step-icon {
  margin: 1px 10px 0 0;
}
}

@media screen and (max-width: 767px){
.workflow-img01 {
  width: 80%;
  margin: 0 auto 20px;
}
.workflow-step-icon {
  width: 30%;
  margin: 0 10px 0 0;
}
}



/*　　よくあるご質問
-------------------------------------------------------*/
.faq-box dt {
	display: block;
	position: relative;
	padding: 15px 60px 15px 60px;
	color: #282828;
	border: 1px solid transparent;
	border-radius: 8px;
	background-color: #f7f8f9;
	background-image: url("../images/common/icon_faq_toggle01.png");
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 20px;
	cursor: pointer;
}
.faq-box dt::before {
	content: "Q";
	position: absolute;
	top: 12px;
	left: 12px;
	width: 38px;
	height: 38px;
	line-height: 38px;
	color: #fff;
	font-size: 2.4rem;
	font-weight: 700;
  font-family: "Google Sans", sans-serif, 'Noto Sans JP';  
	text-align: center;
	border-radius: 8px;
	background: #ad1e23;
}
.faq-box dt:hover {
	color: #282828;
	background-color: #eaecee;
}
.faq-box dt.active {
	color: #282828;
	border: 1px solid #ccc;
	border-radius: 8px 8px 0 0;
	background-image: url("../images/common/icon_faq_toggle02.png");
	background-position: right 10px center;
}
.faq-box dd {
	position: relative;
	display: none;
	padding: 15px 20px 20px 60px;
	border: 1px solid #ccc;
	border-top: 0;
	border-radius: 0 0 8px 8px;
  background: #fff;
}
.faq-box dd::before {
	content: "A";
	position: absolute;
	top: 12px;
	left: 12px;
	width: 38px;
	height: 38px;
	line-height: 36px;
	color: #ad1e23;
	font-size: 2.4rem;
	font-weight: 700;
  font-family: "Google Sans", sans-serif, 'Noto Sans JP';  
	text-align: center;
	border-radius: 8px;
	border: 2px solid #ad1e23;
	background: #fff;
}

@media screen and (max-width: 1280px){
.faq-box dt {
	padding: 15px 50px 15px 50px;
}
.faq-box dt::before {
	top: 14px;
	width: 30px;
	height: 30px;
  line-height: 30px;
	font-size: 1.8rem;
}
.faq-box dd {
	padding: 15px 15px 15px 50px;
}
.faq-box dd::before {
	width: 30px;
	height: 30px;
  line-height: 28px;
	font-size: 1.8rem;
}
}

@media screen and (max-width: 767px){
.faq-box dt {
	padding: 15px 40px 15px 50px;
}
.faq-box dd {
	padding: 15px 15px 15px 50px;
}
}



/*　会社概要
-------------------------------------------------------*/
.company-profile-img01 {
  position: relative;
}
.company-profile-img01-text {
  position: absolute;
  top: 46%;
  left: 0;
  right: 0;
  width: fit-content;
  margin: 0 auto;
  color: #fff;
  font-size: 14.421rem;
  font-weight: 700;
  line-height: 0.5;
  text-align: right;
} 
.company-profile-img01-text span {
  display: inline-block;
  font-size: 6rem;
}
.company-profile-table {
  background: rgba(255,255,255,0.5);
}
.company-accessmap {
  background: linear-gradient(to right, #e5e8ee, #e5e5e5 10%, #d6dae0 21%, #ffffff 46%, #d8dadf 100%);
}
.company-accessmap-inner {
  position: relative;
  height: 600px;
}
.company-accessmap-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.company-history-table tr:nth-child(odd) {
  background-color: #f3f4f6;
}

@media screen and (max-width: 1280px){
.company-profile-img01-text {
  font-size: 11vw;
} 
.company-profile-img01-text span {
 font-size: 4vw;
}
.company-accessmap-inner {
  margin: 0 5%;
}
}

@media screen and (max-width: 767px){
.company-profile-img01-text {
  top: 43%;
  font-size: 8vw;
} 
.company-profile-img01-text span {
 font-size: 3vw;
}
}



/*　採用情報
-------------------------------------------------------*/
.recruit-table {
  background: rgba(255,255,255,0.5);
}
.recruit-interview {
  position: relative;
  border-top: 1px solid #fff;
  background: linear-gradient(to right, #e5e8ee, #e5e5e5 10%, #d6dae0 21%, #ffffff 46%, #d8dadf 100%);
  overflow: hidden;
}
.recruit-interview:nth-child(even) {
    background: linear-gradient(to right, #d8dadf, #ffffff 54%, #d6dae0 79%, #e5e5e5 90%, #e5e8ee 100%);
}
.recruit-interview-bgtext01 {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% + 600px);
  font-size: 10rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  border-left: 1px solid #fff;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  z-index: 1;
}
.recruit-interview-bgtext02 {
  position: absolute;
  top: 50px;
  left: calc(50% + 380px);
  font-size: 10rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  border-bottom: 1px solid #fff;
  z-index: 2;
}
.recruit-interview-bgtext02 span {
  font-size: 6rem;
}
.recruit-interview-box {
  position: relative;
  z-index: 10;
}
.recruit-interview-img01 {
  width: 260px;
  margin-right: 30px;
  border-radius: 8px;
  overflow: hidden;
}
.recruit-interview-name {
  font-size: 6rem;
  line-height: 1;
}
.recruit-interview-box02 {
  width: 65%;
}
.recruit-interview-box02:nth-child(2),
.recruit-interview-box02:nth-child(5),
.recruit-interview-box02:nth-child(8){
  margin: 0 auto;
}
.recruit-interview-box02:nth-child(3n) {
  margin-left: auto;
}
.recruit-interview-text {
  position: relative;
  margin-bottom: 20px;
  padding-left: 42px;
  font-weight: 700;
  line-height: 1.4;
}
.recruit-interview-text::before {
  content: "";
  position: absolute;
  top: 14px;
  left: 0;
  width: 36px;
  height: 2px;
  background: #ad1e23;
}

@media screen and (max-width: 1280px){
.recruit-interview-img01 {
  width: 30%;
  margin-right: 20px;
}
.recruit-interview-bgtext01 {
  left: auto;
  right: 5%;
}
.recruit-interview-bgtext01 span {
  display: none;
}
.recruit-interview-bgtext02 {
  top: 40px;
  left: auto;
  right: 5%;
  padding-right: 10px;
  font-size: 6rem;
}
.recruit-interview-bgtext02 span {
  font-size: 3rem;
}
.recruit-interview-name {
  font-size: 4rem;
}
.recruit-interview-text::before {
  top: 11px;
}
}

@media screen and (max-width: 767px){
.recruit-interview-img01 {
  width: 60%;
  margin-right: 0;
}
.recruit-interview-name {
  font-size: 3rem;
}
}



/*　　お問い合わせフォーム
-------------------------------------------------------*/
/* reCAPTCHAアイコンをメールフォーム以外非表示にする */
.grecaptcha-badge {
  visibility: hidden;
}
#autozip {
	display: none !important;
	background: #0041a8 !important;
}
#autozip a {
	color: #fff !important;
	cursor: default;
}
.btn-contactform {
	display: block;
	padding: 15px;
	color: #fff;
	text-align: center;
	background-color: #233b8c;
	background-image: url("../images/common/arrow01.png");
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 6px auto;
}
.btn-contactform:hover {
	color: #fff;
	background-color: #2b52d4;
}
.privacy-box {
	width: 100%;
	height: 200px;
  padding: 10px;
  border: 1px solid #ccc;
}
.icon-required {
	display: inline-block;
	font-size: 12px; font-size: 1.2rem;
  font-weight: 400;
	line-height: 1.5;
	margin-right: 10px;
	padding: 2px 8px 2px;
	background-color: #cf1126;
	color: #fff;
	vertical-align:middle;
	border-radius: 3px;
}
.form-initialize {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
}
.contactForm {
}
.contactForm th,
.contactForm td {
	font-size: 1.6rem;
}
.confirm-box .confirm-text {
	display: none;
}
.contactForm input {
	padding: 10px;
	font-size: 1.6rem;
	vertical-align:middle;
	border: 1px solid #ccc;
	border-radius: 0 !important;
}
.required-bgcolor {
	background-color: #fff7f7;
}
.contactForm input[type="radio"] {
	vertical-align: baseline;
}
.contactForm input[type="file"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border: 0;
	padding: 0;
}
.contactForm .select-menu {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	height: 40px;
	font-size: 1.6rem;
	line-height:1.6;
	padding: 3px 10px;
	color: #282828;
	border: 1px solid #ccc;
	background-color: #fff;
	background-image: url("../images/common/arrow_select_menu.png");
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 10px auto;
}
.contactForm textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
  padding: 10px;
  height: 100px;
  font-size: 1.6rem;
  border: 1px solid #ccc;
	border-radius: 0;
}
.contactForm .btn-box {
	width: 60%;
	margin: 0 auto;
	text-align: center;
}
.contactForm .btn-box input[type="submit"],
.contactForm .btn-box input[type="button"] {
	margin: 30px 0 0 !important;
}

.contactForm .confirm_button,
.contactForm .btn-send {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	font-size: 2.4rem;
	font-weight: 700;
	padding: 20px;
	width: 100% !important;
	cursor: not-allowed; /* 無効時のカーソル */
	color: #fff;
	border: none !important;
	border-radius: 8px !important;
	background-color: #be1a21;
	background-image: url("../images/common/arrow01.png");
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 6px auto, 100%;
	transition-duration: 0.2s;
	opacity: 0.5;
}
.contactForm .btn-send {
	opacity: 1;
	cursor: pointer;
}
.contactForm .confirm_button:enabled {
	cursor: pointer;
	opacity: 1;
}
.contactForm .confirm_button:enabled:hover,
.contactForm .btn-send:hover {
	color: #fff;
	background: url("../images/common/arrow01.png"), linear-gradient(to right, #910f14 0%, #ff0009 30%, #ff0009 70%, #910f14 100%);
	background-repeat: no-repeat, no-repeat;
	background-position: right 12px center, center;
	background-size: 6px auto, 100%;
	transform: scale(1.05);
}
.contactForm .back_button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	font-weight: 700;
	font-size: 2.4rem;
	padding: 20px;
	width: 100% !important;
	cursor: pointer;
	color: #fff;
	border-radius: 8px !important;
	background-color: #666;
	transition-duration: 0.2s;
}
.contactForm .back_button:hover {
  color: #fff;
	background-color: #999;
	transform: scale(1.05);
}
.contact-privacy-box {
	height: 300px;
	padding: 10px;
	margin: 0 auto 10px;
	border: 1px solid #dedede;
	background-color: #f3f4f6;
	overflow-y: scroll;
}
.contactForm .privacy-check {
	margin-left: -1em;
}
.contactForm .privacy-check-txt span {
	font-weight: 700 !important;
}

@media screen and (min-width: 768px) and (max-width: 1270px){
.contact-privacy-box {
    height: 300px;
    overflow: auto;
    -webkit-overflow-scrolling:touch;
}
.contactForm .btn-box {
	width: 80%;
}
.contactForm .confirm_button,
.contactForm .btn-send,
.contactForm .back_button {
	font-size: 1.6rem;
}
}

@media screen and (max-width: 767px){
.contact-privacy-box {
	height: 200px;
    overflow: auto;
    -webkit-overflow-scrolling:touch;
}
.contactForm .btn-box {
	width: 90%;
}
.contactForm .confirm_button,
.contactForm .btn-send,
.contactForm .back_button {
	font-size: 1.6rem;
}
}



/*　　プラグイン　pagenavi-css
-------------------------------------------------------*/
.wp-pagenavi {
	clear: both;
	margin-top: 2.5vw;
	padding: 0;
	text-align: center;
	border-radius: 0;
}
.wp-pagenavi a, .wp-pagenavi span {
	display: inline-block;
	text-decoration: none;
	border: 1px solid #ccc;
	padding: 7px 16px !important;
	margin: 4px !important;
  color: #282828;
	font-family: "Poppins", sans-serif, 'Noto Sans JP';
  border-radius: 6px;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	border-color: #666 !important;
}
.wp-pagenavi a:hover {
	color: #ff0009 !important;
	border: 1px solid #ff0009 !important;
	background-color: #f3f4f6 !important;
}
.wp-pagenavi span.current {
	font-weight: 700;
  background-color: #fff;
}
.wp-pagenavi .extend {
    display: none;
}

@media screen and (max-width: 1280px){
.wp-pagenavi {
	margin-top: 40px;
	padding: 0;
}
.wp-pagenavi a, .wp-pagenavi span {
	padding: 6px 14px !important;
	margin: 3px;
}
}

@media screen and (max-width: 767px){
.wp-pagenavi {
	margin-top: 40px;
	padding: 0 !important;
}
.wp-pagenavi a, .wp-pagenavi span {
	padding: 6px 12px !important;
	margin: 2px !important;
}
}
