@charset "UTF-8";

/*-----------------------------
font
-----------------------------*/

@import url("https://fonts.cdnfonts.com/css/savoye-let");

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)f
*/

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  text-decoration: none;
}

/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
  font-family: "Noto Sans JP", sans-serif;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

main {
  display: block;
}

html {
  font-size: 10px;
}

@supports (-webkit-touch-callout: none) {
  html {
    height: -webkit-fill-available;
  }
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

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

bace

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

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

variable

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

/*-----------------------------
ブレークポイント
-----------------------------*/

/*-----------------------------
color
-----------------------------*/

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

mixin

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

/*-----------------------------
bace
-----------------------------*/

html {
  scroll-behavior: smooth;
}

header,
main,
footer {
  font-weight: 400;
  color: #1e1e1e;
}

main {
  overflow: hidden;
}

p {
  line-height: 1.8;
  font-size: 1.8rem;
}

a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  color: #333;
}

a:hover {
  opacity: 0.7;
}

.header {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 1000;
  background-color: #000;
}

.header-inner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 0 0 0 4rem;
}

.header-logo {
  width: 10.2rem;
  margin-right: auto;
  margin-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header_navList {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-left: 2rem;
}

.header_navitem a {
  color: #fff;
  display: block;
  font-weight: bold;
  text-align: center;
  padding: 2rem 2rem;
}

.header_navitem a .ja {
  display: block;
  font-size: 1.2rem;
  color: #65727a;
}

.header_navitem.menu_item--recruit {
  background-color: #a5a5a5;
}

.header_navitem.menu_item--recruit a .ja {
  color: #fff;
}

.header_navitem.menu_item--contact {
  background-color: #65727a;
}

.header_navitem.menu_item--contact a {
  padding: 2rem 5rem;
}

.header_navitem.menu_item--contact a .ja {
  color: #fff;
}

.header-btn {
  position: relative;
  width: 4rem;
  height: 4rem;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  z-index: 10;
}

.header-btn span {
  display: block;
  width: 100%;
  height: 0.5rem;
  background: #fff;
  position: absolute;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.header-btn span:nth-of-type(1) {
  top: 0.5rem;
}

.header-btn span:nth-of-type(2) {
  top: 2rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.header-btn span:nth-of-type(3) {
  bottom: 0.4rem;
}

.header-btn.active span {
  background: #fff;
}

.header-btn.active span:nth-of-type(1) {
  top: -12%;
  -webkit-transform: translateY(2rem) rotate(-45deg);
  transform: translateY(2rem) rotate(-45deg);
}

.header-btn.active span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-btn05-bar02 0.8s forwards;
  animation: active-btn05-bar02 0.8s forwards;
}

.header-btn.active span:nth-of-type(3) {
  bottom: -2%;
  --webkit-transform: translateY(-2rem) rotate(45deg);
  -webkit-transform: translateY(-2rem) rotate(45deg);
  transform: translateY(-2rem) rotate(45deg);
}

.header_nav {
  position: fixed;
  z-index: 2;
  top: 0;
  right: 0;
  background: #000;
  text-align: center;
  opacity: 0;
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  width: 100%;
  height: 100vh;
  visibility: hidden;
  -webkit-transform: translateX(-300%);
  transform: translateX(-300%);
}

.header_nav.active {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  opacity: 1;
  -webkit-transition: 0.8s;
  transition: 0.8s;
  visibility: visible;
}

.header-menu {
  width: 100%;
  margin-right: 0;
  margin-left: auto;
  padding-top: 15rem;
}

.header-menu_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #333;
}

.header-menu_item:first-of-type .header-menu_link p,
.header-menu_item:last-of-type .header-menu_link p {
  color: rgba(255, 255, 255, 0.3);
  line-height: 1;
  margin-left: 0.2rem;
  font-size: 1.3rem;
}

.header-menu_item:not(.border) {
  padding: 2.4rem 0;
}

.header-menu_item-btn {
  width: 48%;
  margin-top: 4rem;
}

.header-menu_item span {
  display: block;
}

.header-menu_item .en {
  font-size: 2.6rem;
}

.header-menu_item .ja {
  color: #65727a;
}

.header-menu_link {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 500;
  display: block;
  width: 100%;
}

.header-menu_link p {
  margin-bottom: 10px;
}

.header-menu_link p span {
  font-size: 1.2rem;
  padding: 0.4rem 0.8rem;
  border: 2px solid #fff;
}

body.active {
  height: 100%;
  overflow: hidden;
}

.footer {
  background-color: #000;
  padding: 8rem 0 2rem;
}

.footer_wrap {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 3rem;
}

.footer_wrap_left {
  width: 40%;
}

.footer_wrap_left p {
  margin-bottom: 4rem;
}

.footer_wrap_left p span {
  display: inline-block;
  margin-top: 1rem;
}

.footer_wrap_right {
  width: 30%;
}

.footer_nav_item a {
  display: block;
  font-size: 1.8rem;
}

.footer_nav_item a .ja {
  display: block;
  color: #65727a;
  font-size: 1.4rem;
}

.footer_nav_item + .footer_nav_item {
  margin-top: 2rem;
}

.footer_logo {
  width: 25rem;
  margin-bottom: 4rem;
}

.footer_link {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.footer_link img {
  width: 5rem;
  margin-right: 2rem;
}

.inner {
  margin-right: auto;
  margin-left: auto;
  width: 90%;
}

.inner.w-1100 {
  max-width: 1100px;
}

.inner.w-1080 {
  max-width: 1080px;
}

.inner.w-980 {
  max-width: 980px;
}

.inner.w-600 {
  max-width: 600px;
}

.sec-ttl {
  font-family: "Herr Von Muellerhoff", cursive;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.2rem;
  text-align: center;
}

.sec-ttl img {
  position: relative;
  width: 30rem;
  margin: 0 auto;
  z-index: 10;
}

.ttl--l {
  font-weight: bold;
  font-size: 3.8rem;
  margin-bottom: 2rem;
}

.txt--center {
  text-align: center;
}

.txt--center-sp {
  text-align: center;
}

.txt--left {
  text-align: left;
}

.txt--b {
  font-weight: bold;
}

.txt--l {
  font-size: 2.2rem;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.view_btn {
  width: 25rem;
}

.view_btn a {
  position: relative;
  display: block;
  background-color: #000;
  padding: 0.5rem 5rem 1rem 3rem;
  color: #fff;
  border-radius: 50rem;
  font-weight: bold;
  text-align: center;
  font-size: 1.8rem;
  cursor: pointer;
}

.view_btn a::after {
  content: "";
  position: absolute;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 2rem;
  height: 2rem;
  width: 1.5rem;
  background-image: url(../images/arrow-rigtht.png);
  background-repeat: no-repeat;
  background-size: 1.5rem;
}

.index_about .view_btn {
	margin: 5rem auto;
}

.cmn__sec {
  position: relative;
}

.fedein {
  opacity: 0;
  -webkit-transform: translate(0, 3rem);
  transform: translate(0, 3rem);
  -webkit-transition: 1s;
  transition: 1s;
}

.fedein.isAnimate {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}


.slide_up {
  clip-path: inset(100% 0 0 0);
  transform: translateY(30px);
  transition: all .7s ease;
}


.slide_up.active {
  transform: translateY(0);
  clip-path: inset(0 0 0 0);
  transform: translateX(0px);
}


.slide_in_right {
  transition: all 0.8s ease;
  transform: translateX(-40px);
  clip-path: inset(0 100% 0 0);
}

.slide_in_right.active {
  transform: translateX(0);
  clip-path: inset(0 0 0 0);
}


.slide_in_left {
  transition: all 0.8s ease;
  transform: translateX(40px);
  clip-path: inset(0 100% 0 0);
}

.slide_in_left.active {
  transform: translateX(0);
  clip-path: inset(0 0 0 0);
}



.slick-list {
  overflow: visible !important;
}

.slick-prev,
.slick-next {
  z-index: 20;
}

.slick-prev {
  left: 4rem;
}

.slick-next {
  right: 4rem;
}

.slick-prev:before {
  content: "\f053";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-weight: 700;
  color: #00ada9;
  font-size: 2.2rem;
}

.slick-next:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-weight: 700;
  color: #00ada9;
  font-size: 2.2rem;
}

.slick-slide {
  margin: 0 1.5rem;
}

.color-light-green {
  color: #e2eae3;
}

.color-green {
  color: #008a32;
}

.color-white {
  color: #fff;
}

.color-black {
  color: #333;
}

.color-yellow {
  color: #987b00;
}

.back-green {
  background-color: #008a32;
}

.back-light-green {
  background-color: #e2eae3;
}

.back-black {
  background-color: #000;
}


#breadcrumb ul{
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: nowrap;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
	padding: 4rem 0;
}


#breadcrumb li {
    display: inline-block;
    color: #333;
    position: relative;
    font-size: 1.8rem;
    padding: 0 2px;
    text-transform: uppercase;
    line-height: 1.3;
}

#breadcrumb li a{
	color: #333;
	text-decoration: none;
}

#breadcrumb li+li {
    margin-left: 2.8rem;
}

#breadcrumb li+li::before {
    content: "＞";
    margin: 0 1rem;
    font-size: 1.6rem;
    position: absolute;
    top: .1rem;
    left: -3rem;
}

.marker-green {
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(70%, transparent),
    color-stop(70%, rgb(235, 154, 122))
  );
  background: -webkit-linear-gradient(transparent 70%, rgb(235, 154, 122) 70%);
  background: linear-gradient(transparent 70%, rgb(235, 154, 122) 70%);
}


.md-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.7;
  z-index: 9999;
}

.md-contents {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 90vw;
  max-width: 1040px;
  background-color: #fff;
  border-radius: 4px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10000;
}

.md-xmark {
  display: none;
  cursor: pointer;
  position: absolute;
  bottom: -20%;
  right: 0;
  text-align: center;
  background-color: #fff;
  color: #333;
  margin-left: auto;
  z-index: 222222;
}

.md-xmark a {
  padding: 1.5rem 0;
  font-size: 1.5rem;
  display: block !important;
  width: 25rem;
  border-radius: 3rem;
  border: 2px solid #333;
}

.window {
  padding: 0rem 2rem 3rem;
  height: 50rem;
  overflow-y: scroll;
}

.index_main-mv {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.index_main_slider {
  width: 100%;
  height: 100%;
}

.index_main_slider .slick-list {
  width: 100%;
  height: 100%;
}

.index_main_slider .slick-track {
  width: 100%;
  height: 100%;
}

.index_main_slider .slick-slide {
  margin: 0;
}

.index_main-inner {
  background-image: url(../images/top_main.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  padding-top: 20.8%;
}

.index_main-inner:nth-child(2) {
  background-image: url(../images/top_main2.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  padding-top: 20.8%;
}

.index_main-inner:last-child {
  background-image: url(../images/top_main3.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  padding-top: 20.8%;
}

.index_main_copy {
  position: absolute;
  top: 17rem;
  left: 5rem;
  width: 40%;
　opacity: 0;
  transform: translateX(100%);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.index_main_copy.slide_right {
   opacity: 1;
  transform: translateX(0);
  transition-delay: 0.5s; 
}


.index_main-news {
  background-color: #65727a;
}

.index_main-news .inner {
  width: 80%;
  margin-right: auto;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.index_main-news-img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 17%;
  flex: 0 0 17%;
}

.index_main-news-cont {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 55%;
  flex: 0 0 55%;
  color: #fff;
  padding: 2rem;
}

.index_main-news-cont .category{
	display: inline-block;
	background-color:#000;
	border: 1px solid #000;
	padding: .3rem .8rem;
	margin-left: 1.5rem;
	font-size: 1.3rem;
}

.index_main-news-cont p{
	margin: 1.5rem 0;
}


.index_concept {
  padding: 25rem 0 12rem;
}

/* .index_concept::after {
  content: "";
  position: absolute;
  top: 10rem;
  right: -3rem;
  height: 40rem;
  width: 95rem;
  background-image: url(../images/main_sec_ttl.png);
  background-repeat: no-repeat;
  background-size: 95rem;
  z-index: -1;
}
 */
.index_concept_txt_img{
 position: absolute;
  top: 10rem;
  right: -3rem;
  width: 95rem;
   z-index: -1;
}

.index_concept_content {
  text-align: center;
  width: 60rem;
  margin: 0 auto;
}

.index_concept_img {
  margin: 3rem 0 3rem;
  display: flex;
  align-items: center;
}


.person1, .person2, .person3, .person4, .person5, .person6 {
  opacity: 0;
  transform: translateX(-3rem);
}

.person1.animate { animation: fadeInSlide 0.5s ease-in-out forwards; animation-delay: 0.3s; }
.person2.animate { animation: fadeInSlide 0.5s ease-in-out forwards; animation-delay: 0.6s; }
.person3.animate { animation: fadeInSlide 0.5s ease-in-out forwards; animation-delay: 0.9s; }
.person4.animate { animation: fadeInSlide 0.5s ease-in-out forwards; animation-delay: 1.2s; }
.person5.animate { animation: fadeInSlide 0.5s ease-in-out forwards; animation-delay: 1.5s; }
.person6.animate { animation: fadeInSlide 0.5s ease-in-out forwards; animation-delay: 1.8s; }

@keyframes fadeInSlide {
  0% {
    opacity: 0;
    transform: translateX(-3rem);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}


.index_concept p {
	font-weight: bold;
	font-size: 2.6rem;
}

.index_service {
  position: relative;
  padding: 18rem 0 10rem;
  background-color: #F1F1F1;
  z-index: 1;
}


.index_service .index_service_txt_img{
  position: absolute;
  top: 8rem;
  left: 0rem;
  height: 40rem;
  width: 95rem;
  z-index: -1;
}

.index_service .txt--s {
  text-align: center;
  margin-top: 4rem;
}

.index_service_listWrap {
  padding-top: 10rem;
  width: 90%;
  margin-right: auto;
}

.index_service_item {
  position: relative;
  display: flex;
  justify-content: space-between;
  height: 30rem;
}

.index_service_img {
	width: 65%;
	overflow: hidden;	
}


.index_service_img img{
	object-fit: cover;
	-webkit-transition: 0.5s;
    transition: 0.5s;
}

.index_service_img:hover img{
	transform: scale(1.1);
}

.index_service_txt {
	width: 50%;
	margin-left: 3rem;
}

/* .index_service_item:nth-child(1) {
  background-image: url(../images/img_service01.png);
  background-position: left;
  background-size: 70%;
  background-repeat: no-repeat;
  padding-top: 22%;
}

.index_service_item:nth-child(2) {
  background-image: url(../images/img_service02.png);
  background-position: left;
  background-size: 70%;
  background-repeat: no-repeat;
  padding-top: 22%;
}

.index_service_item:nth-child(3) {
  background-image: url(../images/img_service03.png);
  background-position: left;
  background-size: 70%;
  background-repeat: no-repeat;
  padding-top: 22%;
} */


.index_service_txt .ttl--l {
  font-size: 4rem;
}

.index_service_txt p {
  padding: 2rem 0rem 3rem;
}

.index_effect {
  padding: 3rem 0 0;
}

.index_effect_wrap {
  padding-top: 11rem;
}

.index_effect_list li {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.index_effect_list li:nth-child(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
  margin: 8rem 0;
}

.index_effect_item {
  position: relative;
}

.index_effect_itemTxt {
  width: 60%;
}

.index_effect_itemTxt .ttl--l {
  font-size: 4rem;
  line-height: 1.5;
}

.index_effect_itemImg {
  width: 38%;
}

.index_expertise {
  padding: 6rem 0;
}

.index_expertise_logo_wrap {
  padding-top: 4rem;
}

.index_expertise_logo_wrap .headline3 span {
  font-size: 2.4rem;
  color: #fff;
  background: rgb(0, 160, 233);
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgb(0, 160, 233)),
    to(rgb(0, 171, 132))
  );
  background: -webkit-linear-gradient(
    left,
    rgb(0, 160, 233) 0%,
    rgb(0, 171, 132) 100%
  );
  background: linear-gradient(
    90deg,
    rgb(0, 160, 233) 0%,
    rgb(0, 171, 132) 100%
  );
  color: #fff;
  display: inline-block;
  padding: 0 1rem;
  border-radius: 1rem;
  font-weight: 500;
}

.index_expertise_logo_slider {
  margin: 6rem 0 4rem;
}

.index_expertise_foodlist {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.index_expertise_fooditem {
  width: calc(20% - 5rem);
}

.index_expertise_foodtxt {
  margin: 3rem 0;
}

.index_expertise_arrow img {
  width: 6rem;
  margin: 3rem auto;
}

.index_expertise_group {
  padding: 3rem 0;
  border-radius: 1rem;
}

.index_expertise_grouplistwrap {
  background-color: #fff;
  width: 95%;
  margin: 2rem auto 0;
  padding: 2rem 2rem;
}

.index_expertise_grouplist {
  margin-top: 1rem;
  border-radius: 1rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.index_expertise_groupitem {
  position: relative;
  width: calc(25% - 5rem);
}

.index_expertise_groupitem::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 3rem;
  top: 25%;
  right: -12%;
  background-image: url(../images/arrow_right.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 2rem;
  z-index: 1;
}

.index_expertise_groupitem:last-child::after {
  content: none;
}

.index_expertise_group .plus_img {
  width: 3rem;
  margin: 2rem auto;
}

.index_expertise_group .back-white span {
  background-color: #fff;
  display: inline-block;
  padding: 1.5rem 3rem;
  border-radius: 1rem;
}

.index_company {
  background-image: url(../images/top_voice_bg.png);
  background-size: cover;
  background-position: center;
  background-color: unset;
  background-repeat: no-repeat;
  padding: 10rem 0;
}

.index_companylistwrap {
  padding: 4rem 0 0;
}

.index_companylist {
  position: relative;
}

.index_companylist .slick-slide {
  margin: 0 2rem 3rem;
}

.index_companylist::after {
  content: "";
  position: absolute;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  height: 23rem;
  width: 95rem;
  background-image: url(../images/main_sec_ttl3.png);
  background-repeat: no-repeat;
  background-size: 95rem;
  z-index: 1;
}

.index_message {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(0, 0, 0, 0.8)),
      to(rgba(0, 0, 0, 0.8))
    ),
    url(../images/img_messagebg.png) center no-repeat;
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)),
    url(../images/img_messagebg.png) center no-repeat;
  background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)),
    url(../images/img_messagebg.png) center no-repeat;
  background-size: cover;
  padding: 8rem 0;
}

.index_message_sec {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.index_message_img {
  width: 45%;
}

.index_message_txt {
  color: #fff;
  width: 50%;
}

.index_message_txt h3 {
  font-size: 3.3rem;
  font-weight: 400;
}

.index_message_txt p {
  margin-top: 3rem;
  line-height: 1.8;
}

.index_message_txt .txt--right {
	text-align: right;
    font-size: 2.2rem;
}

.index_about {
  padding: 8rem 0 0;
}

.index_about h2 {
  font-size: 3.5rem;
  border-bottom: 1px solid #333;
  padding-bottom: 0.5rem;
}

.index_about_tablewrap {
  max-width: 980px;
  margin: 3rem auto;
}

.index_about_tablewrap table {
  width: 100%;
}


.index_about_tablewrap table tr {
	display: flex;
}

.index_about_tablewrap table th {
  width: 25%;
  text-align: left;
}

.index_about_tablewrap table td {
  margin-left: 4rem;
  width: 70%;
}

.index_about_tablewrap table th,
.index_about_tablewrap table td {
  font-size: 1.8rem;
  border-bottom: 1px solid #333;
  padding: 1.5rem 0;
  display: inline-block;
}


.index_banner_sec {
  position: relative;
  padding:5rem 0;
}

.index_banner_txt {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: auto 100%;
  background-image: url(../images/img_banner.png);
  -webkit-animation: txtroop 50s linear infinite;
  animation: txtroop 50s linear infinite;
  z-index: 99;
}


@-webkit-keyframes txtroop {
  from {
    background-position: 0 0;
  }

  to {
    background-position: -3401px 0;
  }
}

@keyframes txtroop {
  from {
    background-position: 0 0;
  }

  to {
    background-position: -3401px 0;
  }
}

.index_news {
  padding: 8rem 0 10rem;
}

.index_news .sec-ttl img {
  margin-right: auto;
  margin-left: 0;
  width: 20rem;
}


.index_news_wrap {
	margin-top: 6rem;
}

.index_news_wrap .categories_list {
	display: flex;
	align-items:center;
}

.index_news_wrap .categories_list li{
	display: inline-block;
	background-color:#fff;
	border: 1px solid #333;
	padding: .3rem 1rem;
	font-size: 1.6rem;
	cursor: pointer;
	-webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.index_news_wrap .categories_list li+li {
	margin-left: 1.5rem;
}

.index_news_wrap .categories_list li:hover {
	background-color: #333;
	color: #fff;
}

.index_news_wrap .categories_list li.click {
	background-color: #333;
	color: #fff;
}

.index_news_wrap .index_news_list_other{
	display: flex;
	align-items: center;
}


.index_news_wrap .index_news_list_other .category {
	background-color:#333;
	border: 1px solid #333;
	font-size: 1.3rem;
	padding: .3rem 1rem;
	margin-left: 2rem;
	color: #fff;
}

.index_newsListwrap {
  display:none;
  margin-top: 4rem;
}

.index_newsListwrap.is-show{
	display: block;
}

.index_news_list .flex{
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 1px solid #cccccc;
  padding: 3rem 0;
  margin-bottom: 3rem;
}

.index_news_listTxt {
  width: 65%;
}

.index_news_listTxt p {
  margin-top: 2rem;
}

.index_news_listImg {
  width: 30%;
}

.index_news .view_btn {
  margin-left: auto;
}

.index_recruit {
  padding: 10rem 0 rem;
}
/* 
.index_recruit::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 24rem;
  width: 85rem;
  background-image: url(../images/main_sec_ttl4.png);
  background-repeat: no-repeat;
  background-size: 85rem;
  z-index: -1;
}
 */

.index_recruitt_txt_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 85rem;
  z-index: -1;
}

.index_recruitWrap {
  padding-top: 6rem;
  width: 90%;
  margin-left: auto;
}

.index_recruitWrap_txt {
  width: 30%;
}

.index_recruitWrap_txt .sec-ttl img {
  margin-left: 0;
  margin-right: auto;
}

.index_recruitWrap_txt p {
  margin-top: 3rem;
}

.index_recruitWrap_img {
  width: 70%;
}

.index_recruitTxtBox {
  margin-top: 4rem;
}

.index_recruitTxtBox h3 {
  font-size: 3.3rem;
  font-weight: 400;
}

.index_recruitTxtBox p {
  font-size: 1.8rem;
  margin-top: 3rem;
  line-height: 1.8;
}

.index_recruit_btn {
  margin: 5rem auto 0;
  width: 26rem;
}

.index_recruit_btn a {
  display: block;
  padding: 1rem 0;
}

.index_contact {
  margin: 5rem 0 ;
  background-image: url(../images/top_contact_bg.png);
  background-size: cover;
  background-position: center;
  background-color: unset;
  background-repeat: no-repeat;
  height: 35rem;
}

.index_contact::before {
  content: "";
  position: absolute;
  bottom: 3rem;
  left: 0;
  height: 24rem;
  width: 85rem;
  background-image: url(../images/main_sec_ttl5.png);
  background-repeat: no-repeat;
  background-size: 85rem;
  z-index: 1;
}

.index_contact .sec-ttl {
  padding-top: 4rem;
}

.index_contact .sec-ttl .ja {
  display: inline-block;
  margin-top: 1rem;
}

.index_contact_formwrap {
  margin-top: 4rem;
}

.index_contact_formwrap a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.8rem 4rem;
  font-weight: bold;
  background: rgb(243, 159, 125);
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgb(243, 159, 125)),
    to(rgb(231, 33, 26))
  );
  background: -webkit-linear-gradient(
    left,
    rgb(243, 159, 125) 0%,
    rgb(231, 33, 26) 100%
  );
  background: linear-gradient(
    90deg,
    rgb(243, 159, 125) 0%,
    rgb(231, 33, 26) 100%
  );
  color: #fff;
  max-width: 20rem;
  margin: 0 auto;
}

.index_contact_form table {
  width: 100%;
  margin-bottom: 6rem;
}

.index_contact_form table th,
.index_contact_form table td {
  float: left;
  width: 100%;
  padding: 0 0 2.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
}

.index_contact_form table td input[type="text"],
.index_contact_form table td input[type="email"],
.index_contact_form table td input[type="tel"],
.index_contact_form table td textarea {
  height: 6rem;
  font-size: 1.2rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  border: 1px solid #404040;
}

.index_contact_form table td input[type="text"],
.index_contact_form table td input[type="email"],
.index_contact_form table td input[type="tel"],
.index_contact_form table td input[type="number"],
.index_contact_form table td select,
.index_contact_form table td textarea {
  color: #333;
  width: 100%;
  height: 4.5rem;
  font-size: 1.3rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #a4a4a4;
}

.index_contact_form_btn input {
  width: 100%;
  border: none;
  cursor: pointer;
  color: #333 !important;
  border-radius: 8rem;
  padding: 1.5rem 3.3rem;
  margin-bottom: 2.4rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: transparent;
  font-size: 1.8rem;
}

.recruit_main_mv {
  background-image: url(../images/recruit_main.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 35rem;
  margin-top: 9rem;
}

.recruit_main_ttl {
  font-size: 8rem;
  width: 33rem;
  font-weight: 300;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.recruit_main_ttl .en img {
  width: 22rem;
  margin: 0 auto;
}

.recruit_concept {
  background-color: #f4f3f1;
  padding: 10rem 0;
}

.recruit_concept_ttl {
  font-weight: 400;
  font-size: 5rem;
}

.recruit_interview {
  padding: 10rem 0 8rem;
}

.recruit_interview .sec-ttl {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 2.5;
}

.recruit_interview_wrap {
  margin-top: 6rem;
}

.recruit_interview_icon_list {
  margin: 6rem 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.recruit_interview_icon_item {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit_interview_icon_itemImg {
  width: 13.5rem;
}

.recruit_interview_icon_itemImg img{
	border-radius: 50%;
}

.recruit_interview_icon_item + .recruit_interview_icon_item {
  margin-left: 10rem;
}

.recruit_interview_icon_item h3 {
  font-weight: 400;
  margin-left: 2rem;
  line-height: 1.5;
}

.recruit_interview_icon_item h3 span {
  display: block;
}

.recruit_interview_icon_item h3 .division {
  font-size: 2rem;
}

.recruit_interview_icon_item h3 .name {
  font-size: 3rem;
}

.recruit_interview_list {
  margin-top: 10rem;
}

.recruit_interview_item {
  position: relative;
  background-color: #fff;
}

.recruit_interview_item + .recruit_interview_item {
  margin-top: 6rem;
}

.recruit_interview_item:nth-child(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}

.recruit_interview_item_txt {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  padding: 8rem 5rem;
}

.recruit_interview_item_img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
}

.recruit_interview_item_ttl {
  font-weight: 400;
  line-height: 1.5;
}

.recruit_interview_item_ttl span {
  display: block;
}

.recruit_interview_item_ttl .division {
  font-size: 4rem;
}

.recruit_interview_item_ttl .name {
  font-size: 5rem;
  margin-bottom: 1rem;
}

.recruit_interview_item_ttl .en {
  font-family: "Savoye LET", sans-serif;
  font-size: 4rem;
}

.recruit_interview_item .txt--m {
  font-size: 2rem;
  border-bottom: 1px solid #333;
  padding-bottom: 2rem;
}

.recruit_interview_item_accordion_title {
  font-size: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 400;
  margin-top: 8rem;
}

.recruit_interview_item_accordion_title span {
  display: inline-block;
  margin-right: 1rem;
}

.recruit_interview_item_accordion_txt {
  font-size: 2rem;
  margin-top: 2rem;
  line-height: 1.8;
}

.recruit_point {
  background-image: url(../images/recruit_point.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 10rem 0;
}

.recruit_point_txtBox {
  margin-bottom: 8rem;
}

.recruit_point_txtBox img {
  width: 30rem;
  margin: 0 auto 6rem;
}

.recruit_point_txtBox h3 {
  font-size: 4rem;
  font-weight: 400;
}

.recruit_point_list {
  padding: 4rem 0;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.recruit_point_list li {
  width: calc(33.3333333333% - 5rem);
}

.recruit_point_listwrap p {
  font-size: 2.4rem;
  margin-top: 3rem;
}

.recruit_requirements {
  padding: 6rem 0;
}

.recruit_requirements .sec-ttl {
  margin-bottom: 5rem;
}

.recruit_requirements .sec-ttl img {
  width: 46rem;
}

.recruit_requirements .sec-ttl .ja {
  position: relative;
  font-size: 2.4rem;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit_requirements .sec-ttl .ja::before,
.recruit_requirements .sec-ttl .ja::after {
  border-top: 2px solid black;
  content: "";
  width: 1.5rem;
}

.recruit_requirements .sec-ttl .ja::before {
  margin-right: 2rem;
}

.recruit_requirements .sec-ttl .ja::after {
  margin-left: 2rem;
}

.recruit_requirements_item {
  margin-top: 6rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.recruit_requirements_left {
	width: 48%;
}

.recruit_requirements_leftImg {
  height: 100%;
}

.recruit_requirements_leftImg img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

.recruit_requirements_right {
  width: 48%;
}

.recruit_requirements_right_txtBox h2 span {
  display: block;
}

.recruit_requirements_right_txtBox h2 .txt--l {
  font-size: 5rem;
}

.recruit_requirements_right_txtBox h2 .txt--m {
  font-size: 4rem;
  line-height: 1.5;
}

.recruit_requirements_right_txtBox p {
  font-size: 2.4rem;
  font-weight: bold;
  margin-top: 3rem;
}

.recruit_requirements_right_table {
  font-size: 2rem;
}

.recruit_requirements_right_table + .recruit_requirements_right_table {
  margin-top: 0.5rem;
}

.recruit_btn {
  width: 30rem;
  margin: 6rem auto 0;
}

.recruit_btn a {
  width: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.5rem;
  font-size: 2rem;
}

.recruit_btn a span {
  display: inline-block;
  width: 1.5rem;
  margin-right: 1rem;
}

.sp-none {
  display: none;
}

.form-section {
  position: relative;
  margin-top: 2rem;
}

.form-section table {
  width: 100%;
}

.form-section table tr {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #ccc;
}

.form-section table tr:last-child {
  border: none;
}

.form-section table th {
  vertical-align: middle;
  font-weight: bold !important;
  border-width: 1px 0px 1px 1px !important;
  width: 30%;
  text-align: center;
}

.form-section table td {
  width: 70%;
}

.form-section table th,
.form-section table td {
  /* border: #ddd solid !important; */
  padding: 3rem 1.5rem;
  line-height: 1.2em;
  vertical-align: top;
  font-weight: bold;
}

.form-section .txt18,
.rq {
  font-size: 1.8rem;
}

.form-section .rq .form-section .txt20 {
  margin: 4rem 0 2rem;
  font-size: 1.8rem;
}

.form-section .name-list td {
  display: block;
}

.form-section .name-list td p {
  display: flex;
}

.form-section .name-list td .name {
  display: inline-block;
  width: 15%;
}

.form-section td input[type="text"],
.form-section td input[type="email"],
.form-section td input[type="tel"],
.form-section td input[type="number"],
.form-section td select,
.form-section td textarea {
  color: #333;
  display: inline-block;
  width: 100%;
  height: auto;
  padding: 2rem 3rem 2rem 2rem;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #a4a4a4;
  background: #fff;
}

.form-section td .note {
  color: #969696;
  display: block;
  margin-top: 1.5rem;
  font-size: 1.4rem;
}

.form-section .remaining p {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0;
  color: #de0000;
  line-height: 1.4em;
  text-align: center;
}
.form-section .number {
  font-size: 1.8rem;
  line-height: 1.4em;
}
.items {
  font-size: 1.8rem;
}

.essential {
  background: #ff462e;
  color: #fff;
  font-size: 1.3rem;
  padding: 0.3rem 1.2rem;
  font-weight: normal;
  border-radius: 0.5rem;
  margin-left: 2rem;
}

.form-section .wpcf7-list-item {
  display: block;
  margin: 0;
  border-radius: 5px;
  padding: 0 10px;
  position: relative;
  cursor: pointer;
}

.wpcf7-list-item + .wpcf7-list-item {
  margin-top: 3rem;
}
input[type="checkbox"] {
  display: none;
}
.wpcf7-list-item-label {
  position: relative;
  height: 2rem;
  line-height: 2rem;
  padding-left: 2.5rem;
  display: inline-block;
}
.wpcf7-list-item-label::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  border: 2px solid;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
  box-sizing: border-box;
}
input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  content: "";
  display: block;
  background-image: url(../images/check_green.png);
  background-size: cover;
  background-repeat: no-repeat;
  content: "";
  height: 1.5rem;
  left: 0.3rem;
  position: absolute;
  top: 0.3rem;
  width: 1.5rem;
}

.form-section .btn-wrapper {
  text-decoration: none;
  position: relative;
  display: block;
  width: 20rem;
  letter-spacing: 0.2rem;
  text-align: center;
  border: none;
  margin: 5rem auto;
}

.form-section .btn {
  background-color: #000;
  width: 100%;
  height: 100%;
  padding: 1.5rem 0;
  border-radius: 0.5rem;
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  color: #fff;
}

.wpcf7-submit:disabled {
  background-color: #d6d6d6;
  cursor: default;
}

/* .form-section .btn-wrapper::after {
  content: "";
  display: block;
  width: 0px;
  height: 1px;
  position: absolute;
  top: 25%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border: 8px solid transparent;
  border-left: 15px solid #fff;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
} */

/* .form-section .btn-wrapper:hover .btn {
  background: #fff;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #333;
  border: 2px solid #fabe00;
}

.form-section .btn-wrapper:hover::after {
  border: 8px solid transparent;
  border-left: 15px solid #fabe00;
  right: 6px;
} */

.recruit_form_wrap {
  background-color: #efffea;
  padding: 5rem 0;
}

.recruit_form_wrap .sec-ttl {
  margin-bottom: 3rem;
}

.recruit_form_wrap .sec-ttl .ja {
  position: relative;
  font-size: 2.2rem;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit_form_wrap .sec-ttl .ja::before,
.recruit_form_wrap .sec-ttl .ja::after {
  border-top: 2px solid black;
  content: "";
  width: 1.5rem;
}

.recruit_form_wrap .sec-ttl .ja::before {
  margin-right: 2rem;
}

.recruit_form_wrap .sec-ttl .ja::after {
  margin-left: 2rem;
}

.loading {
  width: 100vw;
  height: 100vh;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: #333;
  position: fixed;
  top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  z-index: 9999;
  opacity: 1;
  visibility: visible;
}

.loading.is-active {
  opacity: 0;
  visibility: hidden;
}

.loading-animation {
  width: 100vw;
  height: 100vh;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background-color: #333;
  z-index: 9999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
}

.loading-animation.is-active {
  opacity: 1;
  visibility: visible;
  
}

.loading video{
	width: 100%;
	height: auto;
}


.c-side-nav-sns {
	position: fixed;
	bottom: 3rem;
	right: 3rem;
	z-index: 9999;
}

.c-side-nav-sns .sns{
	height: inherit;
}

.c-side-nav-sns a {
	width: 100%;
	height: 100%;
	 display: flex;
	align-items: center;
	justify-content: center;
}

.c-side-nav-sns a img {
  max-width: 100%;
   width: 7rem;
  height: auto;
	margin-bottom: 5%;
}


.page_heading1_wrap {
  width: 100%;
  height: 60rem;
  background-image: url(../images/h1_company.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.archive_main_mv {
  background-image: url(../images/h1_archive.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 35rem;
  margin-top: 6rem;
    display: flex;
	 align-items: center;
	justify-content: center;
}


 .archive_main_ttl {
   font-size: 6rem;
  font-weight: 500;
  line-height: 1.5;
text-align: center;
  }


.contact_main_mv {
  background-image: url(../images/h1_archive.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 35rem;
  margin-top: 6rem;
    display: flex;
	 align-items: center;
	justify-content: center;
}


 .contact_main_ttl {
   font-size: 6rem;
  font-weight: 500;
  line-height: 1.5;
text-align: center;
  }


.contact_main_ttl .en img {
  width: 22rem;
  margin: 0 auto;
}


.contact_section {
	padding: 5rem 0 15rem;
}

.container_single {
  width: 100%;
  padding: 0 3rem 10rem;
  margin: 0 auto;
  margin-top: 8%;
}

.topics_detail {
  margin-bottom: 10rem;
}

.topics_detail h2 {
  font-size: 2.5rem;
  margin: 2.2rem auto;
  width: 100%;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.4rem 0.5rem;
  line-height: 1.5;
  position: relative;
}

.topics_detail .time {
  font-weight: bold;
  letter-spacing: 1px;
  margin: 0 auto 3rem;
  font-size: 1.6rem;
}

.topics_detail .body {
  width: 100%;
  margin: 0 auto 1rem;
  padding: 0 0 1rem;
}

.topics_detail .body h1{
	font-size: 3rem;
}

.topics_detail .body h2{
	font-size: 2.5rem;
	margin-top: 20px;
}

.topics_detail .body h3{
	font-size: 2.4rem;
	margin-top: 20px;
}

.topics_detail .body h4{
	font-size: 2rem;
	margin-top: 20px;
}

.topics_detail .body p{
	font-size: 1.6rem;
	line-height: 2;
	margin-top: 2rem;
}

.topics_detail .body .imege {
  margin-bottom: 8rem;
}

.topics_detail .body img {
  width: 100%;
  height: 100%;
}

.topics_links {
  margin: 0 0 0;
  position: relative;
  width: 100%;
}

.container_single .view_btn{
	margin: 4rem auto;
}

.topics_links .links_move {
  position: absolute;
  left: 0;
  font-weight: bold;
  position: relative;
  padding: 1rem 0 0 1.8rem;
  letter-spacing: 1px;
  display: inline-block;
}

.topics_links .links_move a {
  text-decoration: none;
  color: #333333;
  font-size: 1.8rem;
  /* 	font-family: Noto Serif JP, sans-serif; */
}

.topics_links .totopics a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 24rem;
  height: 4.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  background-color: #cc2d1d;
  border-radius: 5px;
  font-size: 1.5rem;
  cursor: pointer;
  -webkit-transition: 0.15s;
  transition: 0.15s;
}



.pager_style {
  text-align: center;
  padding: 3rem 0 0 0;
}

.pager_style li {
  width: 5rem;
  border: .3rem solid #333;
  background: #fff;
  display: inline-block;
  margin: 0 .8rem 0;
  transition: all .5s ease;
}

.pager_style li:hover {
	background: #008A32;
}

.pager_style li:hover a{
	color: #fff !important;
}

.pager_style li.on {
 background: #008A32;
	color: #fff 
}

.pager_style li a {
  font-size: 1.8rem;
  text-decoration: none;
  display: block;
  padding: .8rem 0;
}

.pager_style li.on a {
  color: #fff !important;
  text-align: center;
}

.pager_style li a:hover {
  color: #fff;
}

.pager_style li.prev {
  margin: 0 1rem 0 0;
}

.pager_style li.next {
  margin: 0 0 0 1rem;
}

.page_itemwrap {
  margin: 10rem auto;
}

.page_itemwrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-left: 0;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.page_itemwrap ul li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 22%;
  flex: 0 0 22%;
}

.page_itemwrap ul li a {
  display: block;
  width: 100%;
  height: 100%;
  color: #333;
}

.page_itemwrap ul li a:hover {
  text-decoration: none;
}

.page_itemwrap ul li a span {
  display: block;
  font-size: 1.8rem;
  padding-top: 1rem;
}

/* body.home .page_itemwrap ul li a span{
      font-family: Noto Serif JP, sans-serif;
  } */

.page_itemwrap ul li img {
  width: 100%;
}

@media (min-width: 769px) {
  .inner {
    width: 85%;
  }

  .color-white-pc {
    color: #fff;
  }

  .pc-none {
    display: none;
  }

  .sp-none {
    display: block;
  }
}

@media (max-width: 1500px) {
  .index_main-inner {
    padding-top: 18%;
  }
	
  .index_main-inner:nth-child(2) {
    padding-top: 18%;
  }
	
	  .index_main-inner:nth-child(3) {
    padding-top: 18%;
  }

  .index_main_copy {
    top: 13rem;
    left: 12rem;
    width: 34%;
	  opacity: 0;
  transform: translateX(100%);
  transition: opacity 0.5s ease, transform 0.5s ease;
  }
	
	.index_service_item {
		height: 24rem;
	}
}

@media screen and (max-width: 1400px) {
  html {
    font-size: 0.78125vw;
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 1.444444vw;
  }
}

@media (max-width: 768px) {
  p {
    font-size: 2.2rem;
  }
	
	.view_btn {
		width: 30rem;
	}
	
  	.view_btn a{
		padding: 1.5rem 5rem 1.5rem 3rem;
	}
	
	.window {
		height: 60rem;
	}
	
	.window .index_about_tablewrap table td {
		width: 82%;
	}
	
	.md-xmark {
		bottom: -15%;
	}
	
	.md-xmark a {
		font-size: 1.8rem;
		border-radius: 4rem;
	}

  .header-inner {
    padding: 2rem 3rem;
  }

  .header-logo {
    width: 14rem;
  }

  .header-btn {
    margin-left: 2rem;
  }

  .footer_logo {
    width: 20rem;
  }
	
	.footer_wrap_left {
		width: 50%;
	}
	
    .footer_wrap_right {
		width: 40%;
	}

  .footer_nav_item a {
    font-size: 2.3rem;
  }

  .footer_nav_item a .ja {
    font-size: 2rem;
  }

  .sec-ttl img {
    width: 36rem;
  }

  .ttl--l {
    font-size: 3.3rem;
  }

  .txt--center-sp {
    text-align: left;
  }

  .txt--l {
    font-size: 2.4rem;
  }

  .view_btn {
    margin-top: 2rem;
	zzzzz
  }

  .color-white-pc {
    color: #000;
  }

  .index_main-inner {
    background-image: url(../images/top_main_sp.png);
    background-position: left;
    padding-top: 0;
    margin-top: 6rem !important;
    height: 97rem;
  }
	
  .index_main-inner:nth-child(2) {
    background-image: url(../images/top_main_sp2.png);
    background-position: left;
    padding-top: 0;
    margin-top: 6rem !important;
    height: 97rem;
  }
	
  .index_main-inner:nth-child(3) {
    background-image: url(../images/top_main_sp3.png);
    background-position: left;
    padding-top: 0;
    margin-top: 6rem !important;
    height: 97rem;
  }

  .index_main_copy {
    left: 2rem;
    width: 35rem;
  }

  .index_main-news .inner {
    width: 90%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 3rem 0;
  }

  .index_main-news-img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
    flex: 0 0 30%;
  }

  .index_main-news-cont {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60%;
    flex: 0 0 60%;
    padding: 0 0 0 2rem;
  }

  .index_concept {
    padding: 18rem 0 12rem;
  }

  .index_concept::after {
    top: 5rem;
    width: 65rem;
    height: 20rem;
    background-size: 65rem;
  }
	
	.index_concept_txt_img {
		top: 5rem;
    	width: 65rem;
	}
	
	.index_concept p {
		font-size: 3.3rem;
	}
	
	.index_service {
		padding: 13rem 0 10rem;
	}

	.index_service .index_service_txt_img{
		top: 5rem;
    	width: 60rem;
	}

  .index_service_listWrap {
    width: 90%;
	margin: 0rem auto; 
	padding-top: 5rem;
  }
	
	.index_service_item {
		display: block;
		height: auto;
		margin-top: 4rem;
	}
	
	.index_service_img {
		width: 100%;
	}
	
	.index_service_txt {
		margin-left: 0;
		width: 100%;
		margin-top: 3rem;
	}

  .index_service_txt .ttl--l {
    font-size: 3.7rem;
  }

  .index_service_txt p {
    padding: 0rem 0em 2rem;
  }

  .index_effect {
    padding: 5rem 0 12rem;
  }

  .index_effect_list li:nth-child(2n) {
    margin: 8rem 0;
  }
	
	.index_effect_itemTxt{
		width: 45%;
	}
	

  .index_effect_itemTxt .ttl--l {
    font-size: 4rem;
  }

  .index_effect_itemImg {
    position: absolute;
    top: 0;
    z-index: -1;
  }

  .index_effect_item:nth-child(odd) .index_effect_itemImg {
    right: -4rem;
    width: 55%;
  }

  .index_effect_item:nth-child(even) .index_effect_itemImg {
    left: -4rem;
    width: 55%;
  }

  .index_expertise_fooditem {
    width: calc(20% - 1rem);
  }

  .index_expertise_groupitem {
    width: calc(25% - 1.5rem);
    margin-top: 3rem;
  }

  .index_expertise_groupitem::after {
    width: 1.5rem;
    background-size: 1.5rem;
  }
	
	.index_company {
		
	}

  .index_companylist::after {
    width: 72rem;
    background-size: 72rem;
  }

  .index_message_sec {
    display: block;
  }

  .index_message  h3 {
    font-size: 2.8rem;
    line-height: 1.5;
	 color: #fff;
	 margin-bottom: 3rem;
  }
	
	.index_message_img {
		width: 100%;
	}
	
	.index_message_txt {
		width: 100%;
	}
	
	.index_about_tablewrap table th, .index_about_tablewrap table td {
		font-size: 2.2rem;
	}

  .index_about_tablewrap table th {
    width: 24%;
  }

  .index_about_tablewrap table td {
    margin-left: 2rem;
    width: 73%;
  }
	
	.index_news_wrap .categories_list li {
		font-size: 2rem;
	}

  .index_news_listTxt {
    width: 50%;
  }
	
	.index_news_listTxt .time{
		font-size: 2rem;
	}
	
	.index_news_wrap .index_news_list_other .category {
		font-size: 1.8rem;
	}

	
  .index_news_listImg {
    width: 45%;
  }
	
	

  .index_recruit {
    padding: 10rem 0;
  }

  .index_recruit::before {
    top: 0;
    width: 60rem;
    height: 20rem;
    background-size: 60rem;
  }
	
	.index_recruitt_txt_img {
		top: 0;
		width: 60rem;
	}

  .index_recruitWrap {
    width: 95%;
	align-items: flex-end;
  }

  .index_recruitWrap_txt {
    width: 35%;
  }
	
	.index_recruitTxtBox{
		margin-top: 6.5rem;
	}

  .index_recruitTxtBox h3 {
    font-size: 3.6rem;
  }

  .index_recruitTxtBox p {
    font-size: 2.3rem;
  }
	
	.index_recruit_btn{
		width: 40rem;
		margin: 8rem auto 0;
	}

	.index_recruit_btn a {
		font-size: 2.3rem;
		padding: 1.5rem 0;
	}

  .index_contact {
    background-image: url(../images/top_contact_bg_sp.png);
  }

  .index_contact::before {
    width: 60rem;
    height: 20rem;
    background-size: 60rem;
  }

  .index_contact_formwrap a {
    max-width: 25rem;
    font-size: 2rem;
  }

  .recruit_main_mv {
    background-image: url(../images/recruit_main_sp.png);
    height: 120rem;
  }

  .recruit_main_ttl {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 20%;
    width: 100%;
    text-align: center;
  }

  .recruit_main_ttl .en img {
    width: 26rem;
  }

  .recruit_interview .sec-ttl {
    font-size: 2.8rem;
  }

  .recruit_interview_wrap {
    margin-top: 3rem;
  }

  .recruit_interview_icon_item {
    display: block;
  }

  .recruit_interview_icon_itemImg {
    width: 15rem;
    margin: 0 auto 2rem;
  }

  .recruit_interview_icon_item + .recruit_interview_icon_item {
    margin-left: 7rem;
  }

  .recruit_interview_icon_item h3 {
    margin-left: 0;
    text-align: center;
  }

  .recruit_interview_icon_item h3 span {
    display: inline-block;
  }

  .recruit_interview_icon_item h3 .division {
    font-size: 2.4rem;
  }

  .recruit_interview_icon_item h3 .name {
    font-size: 3.5rem;
    margin-left: 1rem;
  }

  .recruit_interview_item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }

  .recruit_interview_item:nth-child(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head {
    position: absolute;
    top: 23rem;
    right: 3rem;
    left: unset;
    background-color: #fff;
    padding: 2.5rem 3rem;
    width: 33rem;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head .txt--m {
    border-bottom: none;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head::before {
    content: "";
    position: absolute;
    top: 2rem;
    right: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses1.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head::after {
    content: "";
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses2.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item_txt {
    padding: 3rem 5rem 8rem;
  }

  .recruit_interview_item_head {
    position: absolute;
    top: 23rem;
    left: 3rem;
    background-color: #fff;
    padding: 2.5rem 3rem;
    width: 33rem;
  }

  .recruit_interview_item_head .txt--m {
    border-bottom: none;
  }

  .recruit_interview_item_head::before {
    content: "";
    position: absolute;
    top: 2rem;
    right: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses1.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item_head::after {
    content: "";
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses2.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item_ttl .division {
    font-size: 3.5rem;
  }

  .recruit_interview_item_ttl .name {
    font-size: 4rem;
  }

  .recruit_interview_item_ttl .en {
    font-size: 3.5rem;
  }

  .recruit_interview_item_accordion_title {
    font-size: 2.8rem;
    margin-top: 4rem;
  }

  .recruit_interview_item_accordion_txt {
    font-size: 2.2rem;
  }

  .recruit_point_txtBox {
    margin-bottom: 6rem;
  }

  .recruit_point_txtBox img {
    width: 25rem;
    margin: 0 auto 4rem;
  }

  .recruit_point_txtBox h3 {
    font-size: 3rem;
  }

  .recruit_point_list {
    padding: 6rem 0;
  }

  .recruit_point_list li {
    width: calc(33.3333333333% - 1rem);
  }

  .recruit_requirements_item:first-child {
    display: block;
    margin-top: 0;
    margin-bottom: 6rem;
  }

  .recruit_requirements_item:first-child .recruit_requirements_leftImg {
    display: none;
  }

  .recruit_requirements_item:first-child
    .recruit_requirements_right_txtBox
    h2
    .txt--l {
    font-size: 4rem;
    text-align: center;
  }

  .recruit_requirements_item:first-child
    .recruit_requirements_right_txtBox
    h2
    .txt--m {
    font-size: 3rem;
    line-height: 1.5;
    text-align: left;
    margin-top: 2rem;
  }
	
.archive_main_mv {
　background-image: url(../images/h1_archive_sp.jpg);
  height: 50rem;
  margin-top: 6rem;
}
	
.archive_main_ttl {
   font-size: 4rem;
  font-weight: 500;
  line-height: 1.5;
text-align: center;
  }

	
.contact_main_mv {
　background-image: url(../images/h1_archive_sp.jpg);
  height: 50rem;
  margin-top: 6rem;
}
	
.contact_main_ttl {
   font-size: 4rem;
  font-weight: 500;
  line-height: 1.5;
text-align: center;
  }
	

  .form-section table th {
    text-align: left;
  }
  .form-section table th {
    width: 50%;
  }

  .form-section table td {
    padding: 3rem 0;
  }

  .wpcf7-list-item-label::before {
    height: 3rem;
    width: 3rem;
  }

  .wpcf7-list-item-label {
    padding-left: 4rem;
  }

  input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
    height: 2.2rem;
    width: 2.2rem;
  }

  .form-section .btn-wrapper {
    width: 25rem;
  }

  .form-section .btn {
    font-size: 1.8rem;
  }
	
	.c-side-nav-sns a img {
		width: 9rem;
	}
	
	.pager_style {
  text-align: center;
  padding: 3rem 0 0 0;
}

.pager_style li {
  width: 5rem;
  border: .3rem solid #333;
  background: #fff;
  display: inline-block;
  margin: 0 .8rem 0;
  transition: all .5s ease;
}

.pager_style li:hover {
	background: #008A32;
}

.pager_style li:hover a{
	color: #fff !important;
}

.pager_style li.on {
 background: #008A32;
	color: #fff 
}

.pager_style li a {
  font-size: 2rem;
  text-decoration: none;
  display: block;
  padding: .8rem 0;
}

.pager_style li.on a {
  color: #fff !important;
  text-align: center;
}

.pager_style li a:hover {
  color: #fff;
}

.pager_style li.prev {
  margin: 0 1rem 0 0;
}

.pager_style li.next {
  margin: 0 0 0 1rem;
}

.page_itemwrap {
  margin: 10rem auto;
}

.page_itemwrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-left: 0;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.page_itemwrap ul li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 22%;
  flex: 0 0 22%;
}

.page_itemwrap ul li a {
  display: block;
  width: 100%;
  height: 100%;
  color: #333;
}

.page_itemwrap ul li a:hover {
  text-decoration: none;
}

.page_itemwrap ul li a span {
  display: block;
  font-size: 1.8rem;
  padding-top: 1rem;
}
	
	.topics_detail h2 {
		font-size: 3rem;
	}
	
	
	.topics_detail .time {
		font-size: 2rem;
	}
	
}
