@charset "utf-8";
/*=======================================================
==========================================================
　　　　　　　　　　　　　PC start
==========================================================
========================================================*/
@media screen and (min-width:768px) {
html { font-size: 62.5%; }
body {
width:100%;
min-width: 1100px;
padding:100px 0 0; margin:0;
z-index:0;
}
p{
color:#000;
line-height:2em;
font-size:1.5rem;
margin:1.5em 0px;
letter-spacing: 0.02em;
font-weight: 500;
}
.pc-none { display: none; }
.pc-br::after {
  content: "\A" ;
  white-space: pre;
}

/*header*/
#header{
  display:flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  border-bottom: 2px solid #FFE402;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
}
#header ul.header-left{
  width:113px;
  border-right: 2px solid #FFE402;
}
#header ul.header-left li img{
  width:100%;
  margin:0 auto;
  padding:20px 0 15px 5px;
  mix-blend-mode: multiply;
}
#header ul.header-right{
  width: calc(100% - 113px);
}
#header ul.header-right .header-right-li01{
  width:100%;
  height:55%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
}
#header ul.header-right .header-right-li02{
  width:100%;
  height:45%;
}
/* #header .header-right-menu li:nth-child(9){
  display: none;
} */
#header .header-right-menu{
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  align-items: center;
  background-color: #fff;
  border: 2px solid #FFE402;
  border-bottom: none;
  border-left: none;
  width:100%;
  margin:0;
  padding: 0;
  height:100%;
  color:#221715;
}
#header .header-right-menu li{
  flex: 1;
  font-size: min(1.4rem,1vw);
  font-weight:bold;
  padding: .4em 0;
  text-align: center;
  position: relative;
}
#header .header-right-menu li::after{
  content: "";
  position: absolute;
  right: 0;
  top: 20%;
  height: 60%;
  width: 1px;
  background-color: #FFE402;
}
#header .header-right-menu li:last-child::after{
  display: none;
}
.header-right-btn01{
	display: flex;
  padding:.8em 0;
  margin-right:1.5em;
	color: #221715;
	text-decoration :none;
  width: 12em;
  justify-content: center;
  align-items: center;
	text-align: center;
	background: #fff;
  border: 1px solid #FFE402;
	transition: .4s;
  font-size: 1.5rem;
  font-weight:bold;
  line-height: 1em;
  border-radius: 5px;
/*--水平方向 垂直方向 色--*/
	box-shadow: 3px 3px #FFE402;
}
.header-right-btn01:hover {
/*--水平方向 垂直方向 色--*/
	box-shadow: 0px 0px #FFE402;
}
.header-right-btn02{
	display: flex;
  padding:.8em 0;
  margin-right:30px;
	color:#221715;
  width: 12em;
  justify-content: center;
  align-items: center;
	text-align: center;
	background: #FFE402;
	transition: .4s;
  font-size: 1.5rem;
  font-weight:bold;
  border-radius: 30px;
  border: 1px solid #FFE402;
  line-height: 1em;
/*--水平方向 垂直方向 色--*/
	box-shadow: 3px 3px #c4af00;
}
.header-right-btn02:hover {
/*--水平方向 垂直方向 色--*/
	box-shadow: 0px 0px #c4af00;
}


/*FONT*/
.font01{
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/*main*/
.inner{
  max-width:1200px;
  margin:0 auto;
  padding: 0 3%;
}
.view-btn,
.view-btn_left,
.view-btn-w{
  display: inline-block;
  font-size: 14px;
  color: #221715;
  letter-spacing: 2px;
  padding: 0.7em 2.5em 0.7em 1.5em;
  background: #fff;
  border: 1px solid #FFE402;
  border-radius: 30px;
  position: relative;
  transition: all 0.3s ease;
  text-decoration: none;
  font-weight: 600;
  box-shadow: 3px 3px #FFE402;
}
.view-btn::after,
.view-btn_left::after,
.view-btn-w::after{
  content: "";
  position: absolute;
  right: 1.2em;
  top: 50%;
  width: 8px;
  height: 8px;
  border-top: 2px solid #221715;
  border-right: 2px solid #221715;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s ease;
}
.view-btn:hover,
.view-btn_left:hover,
.view-btn-w:hover{
  background-color: #FFE402;
  border-color: #FFE402;
  color: #221715;
  box-shadow: 0px 0px #FFE402;
}
.view-btn:hover::after,
.view-btn_left:hover::after,
.view-btn-w:hover::after{
  border-color: #221715;
}
.view-btn{
  align-self: flex-end;
  margin: 15px 0 0;
}
.view-btn_left{
  margin: 15px 0 0 auto;
}
.view-btn-w{
  margin: 15px 0 10px auto;
}
.news-box-ul-li02 p{
  margin:0;
}

p.h2-p{
  position:relative!important;
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-size:1.5rem!important;
  font-weight: bold!important;
  padding-left: 5em!important;
  color: #221715!important;
  line-height: 1em!important;
  margin:0!important;
  text-transform: uppercase;
}
p.h2-p::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:4em;
  height:.5px;
  margin:.5em 0;
  background-color: #221715;
  text-transform: uppercase;
}
h2{
  color: #221715;
  font-size:3rem;
  letter-spacing: 1px;
  margin:.5em 0;
}

h2.h2-2{
  text-align:center;
}
p.h2-p2{
  position:relative;
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-size:1.5rem;
  font-weight: bold;
  color: #221715;
  line-height: 1em;
  margin:0;
  text-align: center;
  text-transform: uppercase;
}

/*footer*/
#footer{
  background-color: #fff;
  overflow: hidden;
  padding: 0;
  border-top: 3px solid #FFE402;
}
.footer-top{
  padding: 50px 0 40px;
}
.footer-top .inner{
  display: flex;
  align-items: flex-start;
  gap: 40px;
  max-width: 1400px;
}
/* 左カラム：ロゴ＋Instagram＋公式HPバナー */
.footer-head{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  flex-shrink: 0;
  width: 180px;
  margin: 0;
  padding: 0;
  border: none;
}
.footer-left{
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.footer-logo-a{
  margin: 0;
}
.footer-logo{
  width: 120px;
  max-width: 120px;
  min-width: 120px;
  height: auto;
  display: block;
  mix-blend-mode: multiply;
}
.footer-instagram{
  display: inline-flex;
  transition: opacity .3s;
}
.footer-instagram svg{
  width: 36px;
  height: 36px;
}
.footer-instagram:hover{
  opacity: .6;
}
.footer-right{
  flex-shrink: 0;
  width: 100%;
}
.footer-banner{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background-color: #FFE402;
  color: #221715;
  font-weight: bold;
  font-size: 1.1rem;
  padding: 10px 12px;
  border-radius: 8px;
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap;
  box-shadow: 0 3px 0 #b3a000;
  flex-direction: column;
}
.footer-banner:hover{
  transform: translateY(2px);
  box-shadow: 0 1px 0 #b3a000;
}
.footer-banner:active{
  transform: translateY(3px);
  box-shadow: 0 0 0 #b3a000;
}
.footer-banner-logo{
  width: 50px;
  max-width: 50px;
  min-width: 50px;
  height: auto;
  display: block;
  mix-blend-mode: multiply;
}
.footer-banner-row{
  display: flex;
  align-items: center;
  gap: 4px;
}
.footer-banner-text{
  font-size: 1.1rem;
}
.footer-banner-arrow{
  font-size: 1.2rem;
}
/* ナビグリッド */
.footer-nav-grid{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 30px 24px;
  flex: 1;
}
.footer-nav-col{}
.footer-nav-title{
  display: block;
  font-size: 1.35rem;
  font-weight: 700;
  color: #221715;
  margin-bottom: 10px;
  transition: opacity .3s;
  text-decoration: none;
  position: relative;
  padding-left: 14px;
}
.footer-nav-title::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  background: #FFE402;
  border-radius: 50%;
}
.footer-nav-title:hover{
  opacity: .6;
}
.footer-nav-sub{
  list-style: none;
  margin: 0;
  padding: 0 0 0 14px;
}
.footer-nav-sub li{
  margin-bottom: 6px;
}
.footer-nav-sub li a{
  font-size: 1.2rem;
  font-weight: 400;
  color: #777;
  text-decoration: none;
  transition: all .3s;
  position: relative;
  padding-left: 12px;
}
.footer-nav-sub li a::before{
  content: "–";
  position: absolute;
  left: 0;
  color: #bbb;
}
.footer-nav-sub li a:hover{
  color: #221715;
}
/* エントリーボタン行 */
.footer-entry-row{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 40px;
  padding-top: 30px;
  border-top: 1px solid #eee;
}
.footer-entry-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 200px;
  padding: 14px 30px;
  border-radius: 50px;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
  transition: all .25s;
  letter-spacing: .5px;
}
.footer-entry-btn--grad{
  background: #fff;
  color: #221715;
  border: 2px solid #221715;
}
.footer-entry-btn--grad:hover{
  background: #221715;
  color: #fff;
}
.footer-entry-btn--entry{
  background: #FFE402;
  color: #221715;
  border: 2px solid #FFE402;
  box-shadow: 0 3px 0 #b3a000;
}
.footer-entry-btn--entry:hover{
  transform: translateY(2px);
  box-shadow: 0 1px 0 #b3a000;
}
/* フッター下部 */
.footer-bottom{
  background-color: #FFE402;
  padding: 20px 0;
  margin-top: 0;
}
.footer-bottom .inner{
  max-width: 1400px;
}
.footer-bottom-inner{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5em;
  flex-wrap: wrap;
  text-align: center;
}
.footer-bottom-inner a{
  font-size: 1.2rem;
  font-weight: 500;
  color: #221715;
  text-decoration: underline;
}
.footer-bottom-inner a:hover{
  opacity: .6;
}
.footer-bottom-inner p{
  font-size: 1.2rem;
  font-weight: bold;
  color: #221715;
  letter-spacing: 1px;
  margin: 6px 0 0;
  width: 100%;
  text-align: center;
}


/*========= エントリー固定のためのCSS ===============*/


/*リンクを右下に固定*/
#fixed-link {
  width:150px;
  position: fixed;
  right: 1.5%;
  bottom:5px;
  z-index: 2;
    /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
}
.fixed-link-btn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 130px;
  height: 130px;
  background-color: #fff;
  color: #221715;
  border: 1px solid #FFE402;
  border-radius: 50%;
  text-decoration: none;
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  cursor: pointer;
  box-shadow: 3px 3px #FFE402;
  animation: bounce2 2s ease-in-out forwards;
  animation-iteration-count: infinite;
  transition: all 0.3s ease;
}
.fixed-link-btn:hover{
  background-color: #FFE402;
  box-shadow: 0px 0px #FFE402;
  opacity: 1;
}

@keyframes bounce2 {
0% {
  transform: scale(1);
  -webkit-transform: scale(1);
}
50% {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
}
}

/*　上に上がる動き　*/

#fixed-link.UpMove{
  animation: UpAnime 1s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  transform: translateY(500px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#fixed-link.DownMove{
  animation: DownAnime 1s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 1;
  transform: translateY(500px);
  }
}
/*採用情報*/
.top-saiyou{
  padding:85px 0;
}
.top-saiyou ul{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top-saiyou ul li{
  width:48%;
  margin:15px 0;
}
.top-saiyou ul li a{
  width:100%;
  border: 3px solid #FFE402;
  padding:20px;
  border-radius: 18px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  transition:.3s;
}
.top-saiyou ul li a:hover{
  border-radius: 50px;
}
.top-saiyou ul li a img{
  width:fit-content;
  height:56px;
  object-fit: contain;
}
.top-saiyou ul li a p{
  font-size:1.7rem;
  font-weight:bold;
  color:#221715;
  margin:0 0 0 20px;
}
.top-entry-btn{
  display: block;
  background-color: #FFE402;
  color: #221715;
  text-align: center;
  text-decoration: none;
  padding: 30px 60px;
  border-radius: 10px;
  margin: 35px auto;
  width: fit-content;
  transition: .3s;
}
.top-entry-btn:hover{
  opacity: 0.8;
}
.top-entry-btn-text{
  display: block;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.top-entry-btn-sub{
  display: block;
  font-size: 1.4rem;
  margin-top: 0.3em;
}
@keyframes bounce {
    0%    { transform:translate(0, 0); }
    16.6% { transform:translate(0, -20px); animation-timing-function:ease-in; }
    33.3% { transform:translate(0, 0); }
    49.8% { transform:translate(0, -14px); animation-timing-function:ease-in; }
    66.4% { transform:translate(0, 0); }
    83%   { transform:translate(0, -4px); animation-timing-function:ease-in; }
    100%  { transform:translate(0, 0); }
}

.footer-logo-a{
  display: block;
  width:fit-content;
  margin:0 auto;
}

.coming-h{
  width:50%;
  min-width: 300px;
  padding:.8em 0;
  text-align: center;
  background-color: #FFE402;
  color:#221715;
  font-size:1.7rem;
  font-weight:bold;
  border-radius: 50px;
  margin:4% auto;
}

table.table01{
  margin: 0 0 0;
  border:1px solid #C6BBAF;
  border-collapse: collapse;
  width: 100%;
}
table.table01 th{
  width:35%;
  font-size: 1.6rem;
  font-weight:bold;
  color:#fff;
  background-color: #C6BBAF;
  border-bottom:1px solid rgba(255,255,255,.4);
  padding:.8em 2em;
  line-height: 1.8em;
  vertical-align: middle;
  text-align: center;
}
table.table01 th.th-last{
  border-bottom:1px solid #C6BBAF;
}
table.table01 td{
  font-size: 1.5rem;
  color:#231815;
  border-bottom:1px solid #C6BBAF;
  padding:.8em 2em;
  line-height: 1.8em;
}
td.jigyousho-p p{
  margin:0 0 1.5em;
}
td.jigyousho-p p span{
  display: block;
  font-weight:bold;
}

}/*=======================================================
==========================================================
　　　　　　　　　　　　　PC end
==========================================================
==========================================================
========================================================*/

/*=======================================================
==========================================================
  　　　　　　　　　　　　　SPstart
==========================================================
========================================================*/
@media screen and (max-width:768px) {
html { font-size: 60%; }
body {
width:100%;
min-width:320px;
padding:0; margin:0;
z-index:0;
overflow-x: hidden;
}
p{
color:#000;
line-height:1.5em;
font-size:1.4rem;
margin:1.5em 0px;
letter-spacing: 0.02em;
font-weight: 500;
}
.sp-none { display: none; }
.sp-br::after {
  content: "\A" ;
  white-space: pre;
}


/*header*/


/*ハンバーガーメニュー*/
#header{
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 9999;
}
#header .inner{
  display: flex;
  align-items: center;
  height: 68px;
  max-width: 950px;
  margin:0 auto;
  position: relative;
}
.hamburger:after{
  background-image: url(../img/sp-menu.png);
  background-size: contain;
  content: "";
  position: absolute;
  bottom: 4px;
  width: 39px;
  height: 20px;
  right: 15px;
}

.hamburger {
  display : block;
  position: fixed;
  z-index: 101;
  right : 0;
  top   : 0;
  width: 70px;
  height: 74px;
  border-radius: 0 0 15px 15px;
  cursor: pointer;
  text-align: center;
  background-color: #FFE402;
}
.hamburger span {
  display: block;
  position: absolute;
  width: 33px;
  height: 3px;
  margin: 3px 19px 0;
  left: 0;
  background : #fff;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 16px;
}
.hamburger span:nth-child(2) {
  top: 26px;
}
.hamburger span:nth-child(3) {
  top: 36px;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 26px;
  left: 0;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 26px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

/* メニュー背景　*/
nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  top  : 0;
  left : 0;
  color:#221715;
  background: #fff;
  width: 100%;
  height:100vh;
  transform: translateY(-100%);
  transition: all .3s;
  opacity: 0;
  overflow-y: scroll;
}

.logo-menu{
  width:8%;
  margin:2% 2% 0 2%;
  float:left;
}


nav.globalMenuSp ul {
  padding: 80px 0 30px;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  text-align: left;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #221715;
  letter-spacing: .05em;
  padding: .9em 2em;
  text-decoration: none;
  transition: background .3s ease;
  font-size: 1.5rem;
  font-weight: 700;
  border-bottom: 1px solid #f0ede8;
  position: relative;
}
nav.globalMenuSp ul li a::after {
  content: "→";
  position: absolute;
  right: 2em;
  top: 50%;
  transform: translateY(-50%);
  color: #FFE402;
  font-size: 1.2rem;
  font-weight: 700;
  transition: right .3s ease;
}
nav.globalMenuSp ul li a:active {
  background: #fffbe6;
}
nav.globalMenuSp ul li:first-child a {
  border-top: 1px solid #f0ede8;
}

/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active {
  opacity: 100;
  display: block;
  transform: translateY(0%);
  z-index: 100;
}

.globalMenuSp img{
  width: 120px;
  margin: 20px auto 40px;
  display: block;
}

/* SPメニュー内ボタン */
.sp-menu-btns{
  display: flex;
  gap: 12px;
  padding: 24px 2em 0;
}
.sp-menu-btn{
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  padding: 14px 0;
  border-radius: 50px;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  letter-spacing: .05em;
  transition: opacity .3s ease;
}
.sp-menu-btn:active{
  opacity: .7;
}
.sp-menu-btn--grad{
  background: #fff;
  color: #221715;
  border: 2px solid #221715;
}
.sp-menu-btn--entry{
  background: #FFE402;
  color: #221715;
  border: 2px solid #FFE402;
  box-shadow: 0 3px 0 #b3a000;
}


/*main*/
#main{
  max-width:950px;
  width:100%;
  margin:0 auto;
}

section.main-box{
  width:100%;
}
.main-logo{
  top:3%;
  left:3%;
  width:30%;
}



/*FONT*/
.font01{
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/*main*/
.inner{
  max-width:600px;
  margin:0 auto;
  padding: 0 5%;
}
.view-btn,
.view-btn_left,
.view-btn-w{
  display: inline-block;
  font-size: 12px;
  color: #221715;
  letter-spacing: 2px;
  padding: 0.6em 2.2em 0.6em 1.3em;
  background: #fff;
  border: 1px solid #FFE402;
  border-radius: 30px;
  position: relative;
  transition: all 0.3s ease;
  text-decoration: none;
  font-weight: 600;
  box-shadow: 3px 3px #FFE402;
}
.view-btn::after,
.view-btn_left::after,
.view-btn-w::after{
  content: "";
  position: absolute;
  right: 1em;
  top: 50%;
  width: 6px;
  height: 6px;
  border-top: 2px solid #221715;
  border-right: 2px solid #221715;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s ease;
}
.view-btn:hover,
.view-btn_left:hover,
.view-btn-w:hover{
  background-color: #FFE402;
  border-color: #FFE402;
  color: #221715;
  box-shadow: 0px 0px #FFE402;
}
.view-btn:hover::after,
.view-btn_left:hover::after,
.view-btn-w:hover::after{
  border-color: #221715;
}
.view-btn{
  align-self: flex-end;
  margin: 10px 0 0;
}
.view-btn_left{
  margin: 10px 0 0 auto;
}
.view-btn-w{
  margin: 8px 0 8px auto;
}
.news-box-ul-li02 p{
  margin:0;
}

p.h2-p{
  position:relative!important;
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-size:1.3rem!important;
  font-weight: bold!important;
  padding-left: 3em!important;
  color: #221715!important;
  line-height: 1em!important;
  margin:0!important;
  text-transform: uppercase;
}
p.h2-p::after{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:2.5em;
  height:.5px;
  margin:.5em 0;
  background-color: #221715;
}
h2{
  color: #221715;
  font-size: 2.6rem;
  letter-spacing: 1px;
  margin: 0.5em 0;
}

h2.h2-2{
  text-align:center;
}
p.h2-p2{
  position:relative;
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-size:1.5rem;
  font-weight: bold;
  color: #221715;
  line-height: 1em;
  margin:0;
  text-align: center;
  text-transform: uppercase;
}

/*footer SP*/
#footer{
  background-color: #fff;
  overflow: hidden;
  padding: 0;
  border-top: none;
}
.footer-top{
  padding: 40px 0 30px;
  background: #f9f7f4;
}
.footer-top .inner{
  display: flex;
  flex-direction: column;
}
/* SP：メニューを先に、ロゴ＋バナーを後に */
.footer-nav-grid{
  order: 1;
}
.footer-head{
  order: 2;
}
/* 上段：ロゴ＋バナー SP */
.footer-head{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-top: 28px;
  margin-bottom: 0;
  padding-top: 22px;
  padding-bottom: 0;
  border-top: 1px solid #e8e3dc;
  border-bottom: none;
}
.footer-left{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 14px;
}
.footer-logo{
  margin: 0;
  width: 80px;
  max-width: 80px;
  min-width: 80px;
  height: auto;
  mix-blend-mode: multiply;
}
.footer-instagram svg{
  width: 22px;
  height: 22px;
}
.footer-right{
  margin: 0;
  width: 100%;
  text-align: center;
}
.footer-banner{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 20px;
  font-size: 1.2rem;
  width: 100%;
  border-radius: 10px;
  box-shadow: 0 3px 0 #b3a000;
}
.footer-banner-logo{
  width: 40px;
  max-width: 40px;
  min-width: 40px;
  height: auto;
  display: block;
  mix-blend-mode: multiply;
}
/* ナビグリッド SP */
.footer-nav-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 16px;
}
.footer-nav-col{
  min-width: 0;
}
.footer-nav-title{
  display: block;
  font-size: 1.2rem;
  margin-bottom: 5px;
  padding-left: 12px;
  font-weight: 700;
  color: #221715;
  text-decoration: none;
  position: relative;
  line-height: 1.4;
}
.footer-nav-title::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 5px;
  background: #FFE402;
  border-radius: 50%;
}
.footer-nav-sub{
  list-style: none;
  margin: 0;
  padding: 0 0 0 12px;
}
.footer-nav-sub li{
  margin-bottom: 3px;
}
.footer-nav-sub li a{
  display: inline-block;
  font-size: 1.05rem;
  padding-left: 0;
  line-height: 1.6;
  color: #999;
  text-decoration: none;
  position: relative;
}
.footer-nav-sub li a::before{
  display: none;
}
/* エントリーボタン SP */
.footer-entry-row{
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid #e8e3dc;
}
.footer-entry-btn{
  display: none;
}
.footer-entry-btn--grad{
  background: #fff;
  color: #221715;
  border: 2px solid #221715;
}
.footer-entry-btn--entry{
  background: #FFE402;
  color: #221715;
  border: 2px solid #FFE402;
  box-shadow: 0 4px 0 #b3a000;
}
/* フッター下部 SP */
.footer-bottom{
  background-color: #221715;
  padding: 20px 5% 90px;
}
.footer-bottom-inner{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .3em 1.2em;
}
.footer-bottom-inner a{
  font-size: 1.05rem;
  font-weight: 500;
  color: rgba(255,255,255,.7);
  text-decoration: none;
  transition: color .3s;
}
.footer-bottom-inner a:active{
  color: #FFE402;
}
.footer-bottom-inner p{
  font-size: 1rem;
  font-weight: 400;
  color: rgba(255,255,255,.45);
  letter-spacing: 1px;
  margin: .5em 0 0;
  text-align: center;
  width: 100%;
}


/*========= エントリー固定のためのCSS ===============*/


/*リンクを右下に固定*/
#fixed-link {
  width: 80px;
  position: fixed;
  right: 3%;
  bottom: 10px;
  z-index: 2;
  opacity: 0;
  transform: translateY(100px);
  margin: 0;
}
.fixed-link-btn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 68px;
  background-color: #fff;
  color: #221715;
  border: 1px solid #FFE402;
  border-radius: 50%;
  text-decoration: none;
  font-family: "Futura", "Futura-Medium", "Century Gothic", sans-serif;
  font-size: 1.1rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
  cursor: pointer;
  box-shadow: 2px 2px #FFE402;
  animation: bounce2 2s ease-in-out forwards;
  animation-iteration-count: infinite;
  transition: all 0.3s ease;
}
.fixed-link-btn:hover{
  background-color: #FFE402;
  box-shadow: 0px 0px #FFE402;
  opacity: 1;
}

@keyframes bounce2 {
0% {
  transform: scale(1);
  -webkit-transform: scale(1);
}
50% {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
}
}

/*　上に上がる動き　*/

#fixed-link.UpMove{
  animation: UpAnime 1s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  transform: translateY(500px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#fixed-link.DownMove{
  animation: DownAnime 1s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }
  to {
    opacity: 1;
  transform: translateY(500px);
  }
}

/* SP時：既存の丸ENTRYボタンを非表示 */
#fixed-link {
  display: none !important;
}

/* SP固定ボタンバー */
#sp-fixed-bar {
  display: flex;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
.sp-fixed-bar__btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  font-size: 1.5rem;
  font-weight: bold;
  text-decoration: none;
  letter-spacing: 0.08em;
  transition: opacity 0.2s ease;
}
.sp-fixed-bar__btn:active {
  opacity: 0.75;
}
.sp-fixed-bar__btn--grad {
  background-color: #fff;
  color: #221715;
  border: 2px solid #FFE402;
}
.sp-fixed-bar__btn--entry {
  background-color: #FFE402;
  color: #221715;
}
.sp-fixed-bar__btn--top {
  flex: 0 0 48px;
  background-color: #221715;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1;
  border-right: 1px solid rgba(255,255,255,.15);
}

/*採用情報*/
.top-saiyou{
  padding:65px 0 45px;
}
.top-saiyou ul{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
.top-saiyou ul li{
  width:48%;
  margin:7px 0;
}
.top-saiyou ul li a{
  width:100%;
  border: 3px solid #FFE402;
  padding:15px 0;
  border-radius: 18px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition:.3s;
}
.top-saiyou ul li a:hover{
  border-radius: 50px;
}
.top-saiyou ul li a img{
  width:fit-content;
  height:40px;
  object-fit: contain;
}
.top-saiyou ul li a p{
  font-size: 1.5rem;
  font-weight: bolder;
  color: #221715;
  margin: 0.8em 0 0;
}
.top-entry-btn{
  display: block;
  background-color: #FFE402;
  color: #221715;
  text-align: center;
  text-decoration: none;
  padding: 20px 40px;
  border-radius: 10px;
  margin: 20px auto;
  width: fit-content;
  transition: .3s;
}
.top-entry-btn:hover{
  opacity: 0.8;
}
.top-entry-btn-text{
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.top-entry-btn-sub{
  display: block;
  font-size: 1.2rem;
  margin-top: 0.3em;
}
@keyframes bounce {
    0%    { transform:translate(0, 0); }
    16.6% { transform:translate(0, -20px); animation-timing-function:ease-in; }
    33.3% { transform:translate(0, 0); }
    49.8% { transform:translate(0, -14px); animation-timing-function:ease-in; }
    66.4% { transform:translate(0, 0); }
    83%   { transform:translate(0, -4px); animation-timing-function:ease-in; }
    100%  { transform:translate(0, 0); }
}
.footer-logo-a{
  display: block;
  width:fit-content;
  margin:0 auto;
}

.coming-h{
  width:50%;
  min-width: 300px;
  padding:.8em 0;
  text-align: center;
  background-color: #FFE402;
  color:#221715;
  font-size:1.7rem;
  font-weight:bold;
  border-radius: 50px;
  margin:4% auto;
}

table.table01{
  margin: 0 0 0;
  border:1px solid #C6BBAF;
  border-collapse: collapse;
  width: 100%;
}
table.table01 th{
  display: block;
  width:100%;
  font-size: 1.4rem;
  font-weight:bold;
  color:#fff;
  background-color: #C6BBAF;
  border-bottom:1px solid rgba(255,255,255,.4);
  padding:.6em 1.5em;
  line-height: 1.8em;
  vertical-align: middle;
  text-align: center;
}
table.table01 th.th-last{
  border-bottom:1px solid #C6BBAF;
}
table.table01 td{
  display: block;
  width:100%;
  font-size: 1.3rem;
  color:#231815;
  border-bottom:1px solid #C6BBAF;
  padding:.6em 1.5em;
  line-height: 1.8em;
}
td.jigyousho-p p{
  margin:0 0 1.5em;
}
td.jigyousho-p p span{
  display: block;
  font-weight:bold;
}

/* パンくずリスト SP */
.breadcrumb{
  padding: 15px 5% 10px;
  font-size: 1.15rem;
  word-break: break-word;
  overflow-wrap: break-word;
}


}/*=======================================================
==========================================================
　　　　　　　　　　　　　SPend
==========================================================
========================================================*/
/*=======================================================
==========================================================
　　　　　　　　　　　　　IPAD start
==========================================================
========================================================*/
@media screen and (min-width:768px) and ( max-width:1190px) {
html { font-size: 55.5%; }
body {
width:100%;
min-width: 780px;
padding:0; margin:0;
z-index:0;
}
p{
  color:#000;
  line-height:2em;
  font-size:1.5rem;
  margin:1.5em 0px;
  letter-spacing: 0.02em;
  font-weight: 500;
}
.ip-none{ display: none;}
.ip-br::after {
  content: "\A" ;
  white-space: pre;
}

.inner{
  padding: 0 5%;
}

#header .header-right-menu {
    padding: 0 30px;
}
.header-right-btn02 {
    margin-right: 2%;
}
#header ul.header-right .header-right-li01 {
    height: 45%;
}
#header ul.header-right .header-right-li02 {
    height: 55%;
}
#header .header-right-menu {
    align-content: center;
    padding: 0 2% 0 30px;
}
#header .header-right-menu li{
  font-size: 1.4rem;
}
#footer {
    padding: 0;
}
.footer-top{
  padding: 30px 0 20px;
}
.footer-nav-grid{
  grid-template-columns: repeat(4, 1fr);
  gap: 24px 18px;
}
.footer-nav-title{
  font-size: 1.2rem;
}
.footer-nav-sub li a{
  font-size: 1.1rem;
}
.footer-banner{
  font-size: 1.2rem;
  padding: 12px 20px;
}
.footer-banner-logo{
  width: 60px;
}

#fixed-link {
    width: 130px;
}


}/*=======================================================
==========================================================
　　　　　　　　　　　　　IPAD end
==========================================================
==========================================================
========================================================*/
/*=======================================================
==========================================================
　　　　　　　　　　　　　共通コード
==========================================================
========================================================*/
body {
font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
background-color: #ffffff;
}
*{
box-sizing: border-box;
}
.bold{font-weight: bold;}
.re{position:relative;}
.ab{position:absolute;}
.float-left{float: left;}
.clear{clear: both;}

/* パンくずリスト */
.breadcrumb{
  padding: 55px 5% 12px;
  font-size: 1.3rem;
  color: #888;
  line-height: 1.5;
  background: #f8f8f8;
  border-bottom: 1px solid #eee;
}
.breadcrumb a{
  color: #888;
  text-decoration: none;
  transition: color 0.3s;
}
.breadcrumb a:hover{
  color: #221715;
  text-decoration: underline;
}
.breadcrumb-sep{
  margin: 0 0.5em;
  color: #ccc;
}
.breadcrumb span:last-child{
  color: #221715;
  font-weight: 500;
}

img{ width: 100%; display: block; }
.flex{
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: wrap;
}
a{text-decoration: none; color: inherit; cursor: pointer;}
a:hover{opacity: .8; transition:.3s;}
.DivLink{
    position:relative;
}
.DivLink .Link{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
table{
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
ul {
  list-style: none;
  margin:0;
  padding:0;
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

/* Google Mapを囲う要素 */
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
/* Google Mapのiframe */
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

html {
  visibility: hidden;
}
html.wf-active {
  visibility: visible;
}




/*=======================================================
==========================================================
　　　　　　　　　　　　　共通end
==========================================================
========================================================*/
