@charset "UTF-8";

/**/
.hv {
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.hv:hover {
  opacity: 0.6;
}

/* Commonness CSS */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  background: transparent;
}

html {
  height: 100%;
}

body {
  width: 100%;
  line-height: 1.4%;
  font-family: source-han-sans-japanese, "Helvetica Neue", Arial,
    "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 500;
  font-style: normal;
}

/* * html body { font-family: 'ＭＳ Ｐゴシック',sans-serif;  }  IE6 */
img {
  line-height: 1;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

/* remember to define focus styles! */
:focus {
  outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*\*/
* html #container {
  overflow: visible;
}

/**/
input,
select,
textarea {
  font-size: 16px;
  color: #333;
}

/* - ClearFix ------------------------------------------------------ */
* html .clearfix {
  zoom: 1;
}

/* IE6 */
*:first-child + html .clearfix {
  zoom: 1;
}

/* IE7 */
.clearfix {
  display: inline-table;
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */
* {
  -webkit-text-size-adjust: none;
  -webkit-tap-highlight-color: transparent;
}

/* Hides from IE5-Mac \*/
* html .foo {
  height: 1%;
}

/****************************************************/
/* for html5. from html5doctor.com Reset Stylesheet */
/****************************************************/
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

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

nav ul {
  list-style: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

img {
  vertical-align: bottom;
}

/* for placeholder color */
:-ms-input-placeholder {
  color: #999 !important;
}

::-webkit-input-placeholder {
  color: #999 !important;
}

::-moz-placeholder {
  color: #999 !important;
}

:-moz-placeholder {
  color: #999 !important;
}

::-input-placeholder {
  color: #999 !important;
}

:-input-placeholder {
  color: #999 !important;
}

::-placeholder {
  color: #999 !important;
}

:-placeholder {
  color: #999 !important;
}

html {
  background-color: #fff;
  margin: 0 !important;
}

sup,
sub {
  font-size: 0.8em;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  position: relative;
  color: #000;
  line-height: 1.6;
}

p {
  word-wrap: normal;
  line-height: 1.4;
  color: #000;
}

a,
a:hover {
  text-decoration: none;
  color: #000;
}

.left,
.fl {
  float: left;
}

.right,
.fr {
  float: right;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

.inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 0;
  width: 100%;
}

.ud:hover {
  text-decoration: underline;
}

.ud2 {
  text-decoration: underline;
}

.ud3 {
  text-decoration: underline;
}

.ud3:hover {
  text-decoration: none;
}

.hv:hover {
  opacity: 0.6;
}

.font-yu {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
  font-weight: bold;
}

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}

.font-min {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN",
    "Yu Mincho", "MS PMincho", serif;
}

.font-minion {
  font-family: minion-pro, serif;
  font-weight: 600;
  font-style: normal;
}

.sp {
  display: none;
}

.pc {
  display: block;
}

.pc__inline {
  display: inline-block;
}

.sp__inline {
  display: none;
}

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-around;
  justify-content: space-between;
}

.flex2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* -webkit-box-pack:justify; */
  -ms-flex-pack: justify;
  /* justify-content:space-between; */
  flex-wrap: wrap;
}

.flex3 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.flex4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-flow: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.align-center {
  align-items: center;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*スクロールバー表示させる*/
/* .scroll::-webkit-scrollbar {
    width: 8px;
}

.scroll::-webkit-scrollbar-thumb {
    background: #f8c384;
    border-radius: 10px;
}

.scroll::-webkit-scrollbar-track-piece:start {
    background: #ffead2;
}

.scroll::-webkit-scrollbar-track-piece:end {
    background: #fff;
} */
.none-display {
  display: none;
}

/*============================
COMMON
============================*/
img {
  width: 100%;
  height: auto;
}

.hide {
  display: none;
}

.hidden {
  display: none;
}

.ryodisplayplusn--bold {
  font-family: ryo-display-plusn, serif;
  font-weight: 700;
  font-style: normal;
}

.sourcehansansjapanese--medium {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
}

.section__ttl {
  text-align: center;
  /* font-weight: 700; */
  font-weight: 500;
  font-style: normal;
  color: #000;
  font-size: 38px;
  line-height: 1.5;
  letter-spacing: 0.1rem;
}

.section__ttl .ja {
  font-size: 18px;
  color: #000;
  letter-spacing: 0;
  margin-left: 16px;
}

.btn01 {
  display: inline-block;
  border: 1px solid #000;
  font-size: 16px;
  padding: 15px 88px 15px 26px;
  position: relative;
}

.btn01::after {
  content: "→";
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 700;
  font-style: normal;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 25px;
  margin: auto;
  width: 16px;
  height: 18px;
  line-height: 1;
}

.btn01.red-bg:hover {
  border: 1px solid #cb2d2e;
  background: #fff;
  color: #cb2d2e;
}

.btn01.red-bg::after {
  display: none;
}

.btn01.white-c {
  border: 1px solid #fff;
  color: #fff;
  border-radius: 100vw;
  padding: 15px 40px;
  transition: 0.6s linear;
}

.btn01.white-c:hover {
  opacity: unset;
  border: 1px solid transparent;
  background: #fff;
  color: #cb2d2e;
}

.btn01.white-c::after {
  display: none;
}

.submit_wap .btn01 {
  display: inline-block;
  position: relative;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 400;
  font-style: normal;
  width: 20%;
  height: 60px;
  border: 0;
  border-radius: 100px;
  -webkit-appearance: none;
  cursor: pointer;
  color: #fff;
  padding: 0;
  background: url(../img/submit_wap-right.png) no-repeat;
  background-position: 0px center;
  background-size: 50px;
  background-color: #0457cf;
}

.submit_wap .btn01::after {
  display: none;
}

.submit_wap label a .must {
  border-bottom: solid 1px;
  border-radius: 0;
}

.bg-lightbrown {
  background-color: #f3efec;
}

.bg-lightblue {
  background-color: #edeff2;
}

/* header */
.header {
  position: relative;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  background: #fff;
  display: grid;
  place-items: center;
  height: fit-content;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  background: #fff;
  display: grid;
  place-items: center;
  height: fit-content;
}

.header .inner {
  max-width: 100%;
  align-items: center;
  gap: 20px;
  padding: 0 30px;
  height: 130px;
}

.header .inner.flex {
  margin-top: 0;
  padding-right: 0;
}

.header__logo a {
  display: block;
}

.header__logo .h1_logo {
  width: 300px;
}

.header__navi--box {
  align-items: center;
  /* padding-right: 3%; */
}

.header__navi--list {
  font-size: 16px;
}

.header__navi--list li {
  margin: 0 51px 0 0;
}

.header__contact.sp {
  display: none;
  margin-top: -80px;
  width: calc(100% - 15%);
  margin-left: auto;
  margin-bottom: 40px;
}

.header__contact.sp .header__conatct--tel,
.header__contact.sp .header__conatct--mail {
  width: 100%;
  height: 160px;
}

.header__contact.sp .header__conatct--tel {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.header__contact.sp .header__conatct--tel .wrapper,
.header__contact.sp .header__conatct--mail .wrapper {
  height: 100%;
  position: relative;
  right: 0;
}

.header__contact.sp .header__conatct--tel .wrapper {
  width: 100%;
  padding: 0;
  border: 2px solid #0457cf;
  background-color: #fff;
  z-index: 3;
}

.header__contact.sp .header__conatct--mail .wrapper {
  z-index: 1;
  height: 200px;
  top: -40px;
  padding-top: 40px;
}

.header__contact.sp .header__conatct--mail .wrapper a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.header__contact.sp .header__conatct--tel .wrapper .numb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 28px;
  font-weight: 700;
}

.header__contact.sp .header__conatct--tel .wrapper a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 100%;
}

.header__contact.sp .header__conatct--mail .wrapper a img,
.header__contact.sp .header__conatct--tel .wrapper a img {
  width: 30px;
}

.header__contact.sp .header__conatct--tel .btn01,
.header__contact.sp .header__conatct--mail .btn01 {
  border: none;
  color: #fff;
  padding: 0;
}

.header__contact.sp .header__conatct--tel .btn01::after,
.header__contact.sp .header__conatct--mail .btn01::after {
  display: none;
}

.header__contact {
  width: fit-content;
}

.header__contact {
  display: flex;
  /* width: 30%; */
}

.header__contact > .header__conatct--mail,
.header__contact > .header__conatct--tel {
  width: 340px;
}

.header__contact > .header__conatct--tel a p {
  color: red;
}

.header__contact > div .wrapper {
  position: relative;
  top: 0;
  width: 100%;
  height: 125%;
  border-bottom-left-radius: 25px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.header__contact > div .wrapper a {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  height: 100%;
  padding: 10px;
  color: #fff;
}

.header__contact > div .wrapper img {
  width: 30px;
}

.header__contact .header__conatct--mail .wrapper {
  background: #0457cf;
  padding-left: 0;
  /* right: -60px; */
}

.header__contact .header__conatct--tel {
  background-color: #fff;
  /* border: 1px solid #fff; */
  /* border-radius: 50px; */
  /* padding: 10px 15px; */
  transition: 0.6s linear;
  cursor: pointer;
  position: relative;
}

.header__contact .header__conatct--tel .wrapper {
  background: #fff;
  width: calc(100% + 20px);
  right: 20px;
}

.header__contact .header__conatct--tel a small {
  display: inherit;
}

.header__tel {
  display: block;
  /* height: 40px; */
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  text-align: center;
}

.header__contact .header__conatct--tel .wrapper p,
.header__contact .header__conatct--tel .wrapper small {
  color: #0457cf;
}

.header__contact .header__conatct--tel .wrapper .numb {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 32px;
  font-weight: 700;
}

.header__tel:hover {
  color: #fff;
}

.header__mail {
  display: block;
  width: 100%;
  height: 52px;
  background: #beaa13;
  font-size: 16px;
  color: #fff;
  padding: 12px 0 12px 70px;
  background-image: url(../img/icon_mail.png);
  background-position: center left 24px;
  background-repeat: no-repeat;
  font-weight: bold;
}

.header__mail:hover {
  color: #fff;
}

.header .sp-menu.sp {
  height: 25px;
  width: 25px;
  margin: 0 3% 0 0;
  position: relative;
}

.header .sp-menu.sp span {
  width: 100%;
  height: 2px;
  display: block;
  background: #000;
  position: absolute;
  left: 0;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.header .sp-menu.sp span:nth-child(1) {
  top: 4px;
}

.header .sp-menu.sp span:nth-child(2) {
  top: 12px;
}

.header .sp-menu.sp span:nth-child(3) {
  bottom: 3px;
}

.header .sp-menu.sp.active span:nth-child(1) {
  transform: rotate(45deg);
  top: 12px;
}

.header .sp-menu.sp.active span:nth-child(2) {
  display: none;
}

.header .sp-menu.sp.active span:nth-child(3) {
  transform: rotate(-45deg);
  bottom: 11px;
}

/* mv */
.mv {
  height: 425px;
  background-image: url(../img/mv.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
}

.mv .slider__01 {
  width: 100%;
  height: 425px;
  background-image: url(../img/top-banner.jpg);
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
}

.mv .slider__02 {
  width: 100%;
  height: 851px;
  background-image: url(../img/mv_slider02.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.mv .slider__03 {
  width: 100%;
  height: 851px;
  background-image: url(../img/mv_slider03.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.mv .inner {
  height: 100%;
  position: relative;
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
}

.mv__text--box {
  position: absolute;
  margin: auto;
  left: 33px;
  right: 0px;
  /* bottom: 208px; */
  top: 44%;
}

.mv__text {
  text-align: center;
  color: #fff;
  /* font-family: 'Bebas Neue', cursive; */
  /* font-family: ryo-display-plusn, serif; */
  font-style: normal;
  font-size: 44px;
  letter-spacing: 0.3rem;
  line-height: 1.6;
  /* text-shadow: 0px 0px 5px #000000, 0px 0px 10px #000000; */
  text-shadow: -1px -1px 0 #465903, 1px -1px 0 #465903, -1px 1px 0 #465903,
    1px 1px 0 #465903;
}

.sp_eyecatch_text {
  display: none;
}

#page_top {
  position: fixed;
  bottom: 10px;
  right: 10px;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 69;
  border-radius: 50%;
  /* border-bottom-left-radius: 25px; */
  background-color: #0457cf;
  border: 2px solid white;
  transition: 0.6s linear;
}

/* #page_top:hover {
  background: #0457CF;
  opacity: 0.8;
  transform: scale(1.08);
} */

#page_top a {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}

#page_top a::before {
  content: ">";
  font-size: 20px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 34px;
  top: 0px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
  transform: rotateZ(270deg);
}

.store {
  padding: 0 3% 182px;
  background: linear-gradient(
    180deg,
    #ccedff 0%,
    #ccedff 65.5%,
    #ffffff 55.5%,
    #ffffff 100%
  );
}

.store__text {
  font-size: 16px;
  line-height: 1.75;
  margin: 0 auto 53px;
  max-width: 600px;
}

.store .inner {
  max-width: 1200px;
}

.business__list--item {
  width: 48%;
  margin: 0 0 30px;
}

.business__list--item a {
  background: #109988;
  padding: 20px 4%;
  pointer-events: fill;
  align-items: center;
}

.business__list--image {
  width: 100px;
  height: 100px;
  box-sizing: border-box;
  padding: 10px;
  align-items: center;
  justify-content: center;
}

.business__list--text {
  width: calc(100% - 120px);
  color: #fff;
}

.business__list--text p {
  width: calc(100% - 120px);
  color: #fff;
}

/* .access .inner {
  max-width: 100%;
  position: relative;
}

.access__img--box.left {
  background-image: url(../img/img08.jpg);
}

.access__img--box {
  width: 100%;
  height: 515px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.access__item {
  max-width: 1358px;
  width: 100%;
  margin: auto;
  top: 264px;
  left: 0;
  right: 0;
  position: absolute;
  background: #fff;
  padding: 58px 3% 59px 3%;
}

.access__text {
  text-align: center;
  font-size: 16px;
  line-height: 2.1;
}

.access .access__map iframe {
  width: 100%;
  height: 417px;
} */

.contactbnr {
  padding: 62px 3% 67px;
  margin-top: 0;
}

.contactbnr .inner {
  max-width: 1000px;
  margin: 0 auto;
}

.contactbnr__item {
  width: 100%;
  padding: 34px 3% 52px;
  justify-content: center;
}

.contactbnr__item--top {
  width: 100%;
  padding: 0 0 31px;
}

.contactbnr__item--left {
  width: 50%;
  height: 210px;
  max-width: unset;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  /* border-right: 1px solid white; */
  border-bottom-left-radius: 30px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
}

.contactbnr__item--left p {
  font-size: 20px;
}

.contactbnr__item--left img {
  width: 30px;
}

.contactbnr__item--right {
  width: 50%;
  height: 210px;
  max-width: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom-left-radius: 30px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
}

.contactbnr__item--right img {
  width: 30px;
}

.contactbnr__item--right a {
  border: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-size: 20px;
  font-weight: 700;
  padding: 40px;
  width: 100%;
  height: 100%;
  letter-spacing: 0.25rem;
}

.contactbnr__item--right a::after {
  display: none;
}

.contactbnr__item--right p {
  margin-bottom: 20px;
}

.contactbnr__tel {
  line-height: 1;
  letter-spacing: 0.25rem;
  font-weight: bold;
  transition: 0.6s linear;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px;
}

.contactbnr__tel .numb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.contactbnr__tel .numb span {
  font-size: 34px;
}

.contactbnr__text {
  text-align: right;
  margin: 10px 58px 0px 0px;
  font-size: 16px;
}

.contactbnr__mail {
  display: block;
  font-size: 22px;
  color: #fff;
  letter-spacing: 0.15rem;
  font-weight: bold;
  margin-left: 9%;
}

.contactbnr .section__ttl {
  font-weight: 700;
  display: flex;
  flex-direction: column;
  text-transform: uppercase;
}

/* news */
.news {
  padding: 33px 3%;
  margin-bottom: 100px;
}

.news .inner {
  max-width: 1360px;
  /* padding: 60px 5.3% 54px 5.3%; */
  background: #fff;
  /* position: relative;
  top: -76px; */
}

.news .inner.flex {
  max-width: 1000px;
  margin: 0 auto;
  margin-top: 0;
  flex-direction: column;
}

.news__ttlbox .section__ttl {
  text-transform: uppercase;
  text-align: left;
  margin-bottom: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.news .news__list--box {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
}

.news__list--box {
  width: calc(100% - 110px);
  padding: 13px 0 0 12.5%;
}

.news__list {
  margin: 0 0 16px;
}

.news__list .news__item a {
  transition: 0.6s;
}

.news__list .news__item a:hover {
  opacity: 0.8;
}

.news__item {
  margin: 0 0 16px;
}

.news__item--date {
  margin-right: 40px;
}

.news__item:last-child {
  margin: 0 0 0;
}

.news__link {
  font-size: 16px;
}

/* .news__list--box .btn01 {
  margin: 0 0 0 7px;
} */

.footer {
  padding: 56px 3% 62px;
}

.footer .footer__sns {
  padding: 0 0 67px;
}

.footer__sns {
  justify-content: center;
  align-items: center;
}

.footer__sns a {
  margin: 0 18px 0;
}

.footer__sns .footer__fb {
  width: 27px;
}

.footer__sns .footer__insta {
  width: 27px;
}

.footer__sns .footer__twitter {
  width: 29px;
}

.footer__sns .footer__line {
  width: 29px;
}

.footer__item .footer__nav {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
}

.footer__nav {
  padding: 7px 0 0;
}

.footer__item--left .footer__item--childitem {
  margin-bottom: 30px;
}

.footer__nav--list .footer__nav--item {
  padding: 0 20px;
}

.footer__nav--list .footer__nav--item:not(:last-child) {
  border-right: 1px solid #000;
}

.footer__item--left {
  width: 45%;
  flex-flow: column;
}

.footer__item--childitem .footer__logobox {
  max-width: 400px;
  margin: 0 auto;
  margin-bottom: 16px;
}

.footer__logobox {
  margin: 0 0 30px;
}

.footer__logo {
  display: block;
}

.footer__item--childitem .footer__text {
  text-align: center;
}

.footer__text {
  line-height: 1.8;
  padding: 0 0 0 2px;
  margin: 0 0 10px;
}

.footer__list--icons {
  display: flex;
  align-items: center;
  gap: 40px;
}

.footer__list--icons li img {
  width: 100%;
  height: 100%;
}

.copyright {
  line-height: 2;
}

/*lower*/
main {
  padding-top: 130px;
}
/* for blue mv pages */
#recruit .lower-mv,
#business .lower-mv,
#news .lower-mv,
#privacy .lower-mv {
  background-color: #0457cf;
}

.lower-mv {
  height: 25vh;
  /* margin-top: 150px; */
  margin-left: 10%;
  background-color: #000;
  border-bottom-left-radius: 40px;
}

.lower-mv .inner {
  max-width: 100%;
  width: 100%;
  height: 100%;
  margin: auto;
  display: flex;
  align-items: center;
  padding: 0 3% 0 12%;
}

.lower-mv .inner.flex {
  margin: auto;
}

.lower-mv .lower-mv__text--box {
  /* font-family: "ryo-display-plusn"; */
  text-transform: uppercase;
}

.lower-mv__text--box {
  margin: 0 0 6px;
}

.lower-mv__text {
  font-size: 44px;
  color: #fff;
  font-weight: 700;
  font-style: normal;
  line-height: normal;
  text-align: center;
  letter-spacing: 0.165rem;
  display: flex;
  align-items: center;
  gap: 0 20px;
}

.lower-mv__text .jp {
  font-size: 22px;
  color: #fff;
}

.breadcrumb {
  position: absolute;
  bottom: -30px;
  left: 35px;
}

.breadcrumb__list {
  justify-content: flex-start;
  color: #000;
  font-size: 16px;
}

.breadcrumb__list a {
  color: #000;
}

.breadcrumb__list li {
  margin: 0 36px 0 0;
  position: relative;
}

.breadcrumb__list li::after {
  content: "＞";
  position: absolute;
  right: -27px;
}

.breadcrumb__list li:last-child::after {
  content: none;
}

.lower__section {
  padding: 127px 3% 0;
}

.lower-privacy {
  padding: 127px 3% 0;
}

.entry-content {
  padding: 0 3%;
}

.entry-content p {
  font-size: 16px;
  line-height: 1.75;
  word-break: break-all;
}

.submit_wap {
  text-align: center;
}

.entry-content .c-red {
  color: #e71f18;
}

.entry-content .center {
  text-align: center;
}

.entry-content .boldfont {
  font-weight: bold;
}

.entry-content .f18 {
  font-size: 18px;
}

.entry-content .f22 {
  font-size: 22px;
}

.entry-content .mb100 {
  margin-bottom: 100px;
}

.entry-content .mb90 {
  margin-bottom: 90px;
}

.entry-content .mb80 {
  margin-bottom: 80px;
}

.entry-content .mb70 {
  margin-bottom: 70px;
}

.entry-content .mb60 {
  margin-bottom: 60px;
}

.entry-content .mb50 {
  margin-bottom: 50px;
}

.entry-content .mb40 {
  margin-bottom: 40px;
}

.entry-content .mb30 {
  margin-bottom: 30px;
}

.entry-content .mb20 {
  margin-bottom: 20px;
}

.entry-content .mb10 {
  margin-bottom: 10px;
}

.entry-content h2 {
  font-size: 30px;
  /* font-family: ryo-display-plusn, serif; */
  font-weight: 700;
  font-style: normal;
}

.entry-content .textlink {
  text-decoration: underline;
  color: #6a3c2c;
}

.entry-content .btn01 {
  /* display: block;
    width: 212px; */
  max-width: 80%;
  margin: 0 auto;
}

/* news */
.lower-news.lower__section {
  padding: 130px 3% 248px;
}

.lower-news .entry-content {
  padding: 0;
}

.news__list--item {
  padding: 40px;
  border-bottom-left-radius: 30px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  margin-bottom: 80px;
}

.news__list--item .wrapper {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-bottom: 40px;
}

.news__list--item .news__list--ttl {
  font-size: 16px;
  font-family: source-han-sans-japanese, sans-serif;
  font-style: normal;
  font-weight: 500;
  margin: 0 0 28px;
  margin: 0 0 0;
}

.news__list--item .news__list--ttl .date {
  padding-right: 16px;
}

.news__list--item .rbox {
  width: 306px;
}

.news__list--item .btn01 {
  display: inline-block;
  width: auto;
  max-width: 100%;
}

.pager {
  padding: 3px 3% 0;
}

.pager .pager__inner {
  justify-content: center;
}

.pager .pager__item {
  font-size: 22px;
  line-height: 1;
  margin: 0 15px 0;
}

.pager .pager__item .pager__link.pager__link--active {
  font-weight: bold;
  color: #000;
}

.pager .pager__item .pager__link {
  color: #888888;
}

.pager .pager__item .pager__link i {
}

.news-detail__ttl {
  font-size: 16px;
  padding: 0 0 32px;
  /* border-bottom: 1px solid #000; */
  margin: 0 0 20px;
}

.news-detail__ttl .date {
  display: inline-block;
  padding: 0 16px 0 0;
  margin-bottom: 10px;
  font-weight: 700;
}

.news-detail__postlink {
  max-width: 800px;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
  margin-top: 160px;
  gap: 20px;
}

.news-detail__postlink li {
  margin: 0 4.5%;
}

.news-detail__postlink a {
  font-size: 18px;
}

.news-detail__postlink .prevpost a span {
  margin-right: 16px;
}

.news-detail__postlink .back {
  background: #0457cf;
}

.news-detail__postlink .back a {
  display: block;
  color: #fff;
  padding: 20px;
}

.news-detail__postlink .nextpost a span {
  margin-left: 16px;
}

/* contact */

.lower-contact p {
  font-family: "sans-serif";
}

.mailform .must {
  padding: 0 3px 0 0;
  margin: 0;
  background: none;
  border: none;
  box-shadow: none;
  text-shadow: none;
  color: #e71f18;
  font-size: 16px;
  float: none;
  display: inline-block;
}

.contact__form--item {
  align-items: center;
  margin: 0 0 55px;
}

.contact__form--item.align-top {
  align-items: flex-start;
}

.contact__form--item dt {
  width: 344px;
  text-align: start;
  font-size: 16px;
}

.contact__form--item.align-top dt {
  padding: 15px 0 0;
}

.contact__form--item dd {
  width: calc(100% - 344px);
}

.contact__form--item dd input {
  border-radius: 0;
  border: 1px solid #000;
  height: 56px;
  font-size: 16px;
  padding: 10px 3%;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.mailform .t4 {
  text-align: center;
}

.mailform .t4 a {
  text-decoration: underline;
  color: blue;
}

.contact__form--item dd input.text3 {
  width: 100%;
  max-width: 547px;
}

.contact__form--item dd .mwform-radio-field {
  display: block;
  margin: 0 0 20px;
}

.contact__form--item dd .mwform-radio-field label {
  font-size: 16px;
}

.contact__form--item dd .mwform-radio-field label input {
  height: 20px;
  width: 20px;
  margin: 0 10px 2px 0px;
}

.contact__form--item dd .textarea {
  width: 100% !important;
  max-width: 547px;
  height: 296px !important;
  border-radius: 0;
  border: 1px solid #000;
  font-size: 16px;
  padding: 20px 3%;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
}

.inquiry-type {
  justify-content: start;
  align-items: flex-start;
}

.select-type dd select {
  width: 25%;
  height: 56px;
  padding: 0 0px 0 48px;
  border-radius: 0;
  border: solid 1px;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url(../img/dropdown-select.png) no-repeat;
  background-position: 75% center;
  background-size: 20px;
}

.contact__form .inquiry-type dd {
  width: 20%;
  cursor: pointer;
  line-height: 35px;
}

.contact__form .tel-number {
  justify-content: start;
}

.contact__form .tel-number .hyphen {
  width: 10px;
  background: #000;
  height: 2px;
}

.contact__form .tel-number dd {
  width: 10%;
}

.contact__form .tel-number input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.contact__form .tel-number dd:nth-child(4) {
  margin-left: 10px;
}

.contact__form .tel-number dd:nth-child(6) {
  margin-left: 10px;
}

.contact__form .tel-number dd input {
  width: 90%;
}

/*recruit */
#recruit main article {
  z-index: 0;
}

.recruit-nav {
  padding: 2% 0%;
}

.recruit-nav ul li {
  width: 25%;
  text-align: center;
  border-left: solid #8e8d9f;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.recruit-nav ul li a {
  color: #1d1c3f;
}

.recruit-nav ul li span {
  font-size: 25px;
  font-weight: 600;
}

.sub-bottom_mv .PC_flex_line_B {
  display: flex;
  flex-direction: row-reverse;
  margin-bottom: 3%;
}

.sub-bottom_mv .B_parts_01 {
  width: 50%;
}

.sub-bottom_mv .B_parts_02 {
  width: 50%;
  padding-left: 22%;
  padding-right: 2%;
}

.sub-bottom_mv .midashi-outer {
  display: flex;
  flex-direction: row;
}

.sub-bottom_mv hr.midashi_line {
  width: 10%;
  margin-right: 5%;
  border: 1px black solid;
}

.sub-bottom_mv .midashi span {
  font-size: 17px;
}

.sub-bottom_mv h2.top_h2 {
  font-size: 27px;
  font-family: "ryo-display-plusn";
  margin-top: 15px;
  margin-bottom: 30px;
}

.recruit-lower .voices-left {
  width: 49%;
}

.recruit-lower .voices2 .voices-left .title-voices {
  padding-right: 0;
  padding-left: 45px;
}

.recruit-lower .voices2 .voices-left .details-voices {
  padding-right: 0;
  padding-left: 45px;
}

.recruit-lower .voices-right {
  width: 49%;
  position: relative;
  right: 5%;
  z-index: -1;
}

.recruit-lower .voices2 .voices-right {
  right: 0;
  left: 5%;
}

.recruit-lower .blue-bg {
  background-color: #1d1c3f;
  padding: 8% 5% 8% 5%;
}

.recruit-lower .blue-bg p {
  color: #fff;
  font-family: "ryo-display-plusn";
}

.recruit-lower h2 {
  font-family: "ryo-display-plusn";
}

.recruit-lower .title-voices {
  padding-right: 45px;
  align-items: center;
}

.recruit-lower .title-voices h2 {
  color: #1d1c3f;
  font-size: 27px;
  font-family: "ryo-display-plusn";
  margin-top: 15px;
  margin-bottom: 30px;
}

.recruit-lower .title-voices span {
  font-size: 20px;
  font-weight: 600;
  padding-right: 10px;
}

.recruit-lower .details-voices {
  padding-right: 45px;
  padding-top: 3%;
}

.application-req .requirements {
  border: solid 1px;
}

.application-req h2 {
  font-family: "ryo-display-plusn";
}

.application-req .apply-btn {
  background-color: #fc2c21;
  height: 54px;
  display: flex;
  align-items: center;
}

.application-req .apply-btn a {
  color: #fff;
  padding: 2px 20px 3px 45px;
  background-image: url(../img/arrow-circle.png);
  background-position: center left 13px;
  background-size: 24px;
  background-repeat: no-repeat;
}

.application-req .req-label {
  border-bottom: solid 1px;
  height: 55px;
  align-items: center;
  padding: 0 0 0 2%;
}

.application-req .req-details {
  padding: 2%;
  justify-content: start;
}

.application-req .req-details ul {
  width: 40%;
}

.application-req .req-details ul li {
  padding: 0 0 5% 0;
}

/* sherwin start */
#recruit .overview {
  display: flex;
  justify-content: right;
  padding-left: 21%;
}

.overview .inner {
  margin: initial;
  max-width: 100%;
}

.overview .app-desc {
  max-width: 1080px;
  font-weight: bold;
  font-size: 16px;
}

.overview .app-desc p:nth-child(1) {
  margin-bottom: 15px;
}

.overview .overview_items h5 {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 30px;
}

.overview .overview_items h5 span {
  width: 15px;
  height: 15px;
  background-color: #0457cf;
}

.overview .overview_items .item {
  width: 100%;
  padding: 0 3% 25px 3%;
  border-left: 1px solid black;
  border-bottom: 1px solid black;
  border-bottom-left-radius: 40px;
  font-weight: bold;
  font-size: 16px;
}

.overview .overview_items .item ul li {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 15px;
  margin-bottom: 15px;
}

#works {
  overflow-x: hidden;
}

.common-works {
  width: 100%;
}

.common-works .inner {
  max-width: 1200px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 50px;
  row-gap: 30px;
}

.common-works.mb100 {
  margin-bottom: 100px;
}

.common-works h2 {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}

.common-works .card-item {
  width: 500px;
  /* margin-bottom: 30px; */
}

.common-works .cards .inner-item .img_box {
  width: 100%;
  height: 250px;
  background-color: #999;
}

.common-works .inner-item .cm-desc {
  background-color: #0457cf;
  padding: 20px 5% 20px 5%;
  border-bottom-left-radius: 30px;
  color: #fff;
}

.common-works .cards p {
  padding: 10px 5% 10px 5%;
  font-size: 16px;
}

/*jun changes*/

/* #business .lower-mv .inner {
  background-color: #0457CF;
} */

.company_inner {
  display: flex;
  justify-content: space-between;
  padding: 0 0 0 0;
}

.company_info {
  width: 47%;
}

.company_inner .company_info .blue-bg {
  background-color: #0457cd;
  color: #fff;
  height: 73px;
  border-radius: 0px 0px 0px 20px;
  padding: 0 40px;
  display: flex;
  align-items: center;
}

.company_inner .company_info .blue-bg span {
  font-size: 20px;
  margin-left: 20px;
}

.company_profile ul li {
  display: flex;
  border-bottom: solid 1px;
  padding: 20px 35px;
}

.company_profile ul label {
  width: 25%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.company_lower-inner {
  padding: 50px 0 50px 0;
}

.business_inner {
  background-image: url(../img/business_line.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 50px;
  gap: 50px 0px;
}

.business_inner .business_info {
  width: 49%;
}

.business_inner .business_text h3 {
  color: #0457cd;
}

.business_inner h3 {
  font-size: 20px;
}

/* jun end */

/* jen */

/* hover */

.btn-shine {
  position: relative;
  overflow: hidden;
}

.btn-shine:hover:after {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 10%;
  height: 150%;
  background: #fff;
  transform: rotate(45deg);
  animation: reflect 1s ease-in-out;
}

.btn-shine.blue:hover:after {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 10%;
  height: 150%;
  background: #0457cf;
  transform: rotate(45deg);
  animation: reflect 1s ease-in-out;
}

@keyframes reflect {
  0% {
    transform: rotate(45deg) scale(0);
    opacity: 1;
  }
  100% {
    transform: rotate(45deg) scale(100);
    opacity: 0;
  }
}
/* hover end */

.br-30 {
  border-bottom-left-radius: 30px;
}

.dummy_inner_2 .nav-menu ul li {
  padding: 0 20px;
}

.dummy_inner_2 .nav-menu ul li:not(:last-child) {
  border-right: 1px solid #000;
}

.dummy_inner_3,
.header .header__navi--box,
.header__contact {
  height: 100%;
}

.news__pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-top: 30px;
}

.news__pagination a {
  padding: 6px;
  color: grey;
}

.news__pagination .prev-page,
.news__pagination .next-page {
  color: #000;
  font-size: 18px;
  font-weight: 700;
}

.news__pagination a:where([aria-current]) {
  font-weight: 700;
  color: #000;
  border-bottom: 2px solid #0457cf;
}

.news__pagination a:where(:focus, :hover) {
  opacity: 0.7;
}

/* jen end */

@media screen and (max-width: 1700px) {
  /* .header__logo {
    padding-left: 5%;
  } */
}

@media (max-width: 1600px) {
  main {
    padding-top: 100px;
  }

  .lower-mv {
    /* margin-top: 90px; */
    margin-left: 5%;
  }

  .lower-mv .inner {
    padding: 0 3% 0 10%;
  }

  #recruit .overview {
    padding-left: 14%;
  }

  .header .inner {
    height: 100px;
  }

  .header__logo .h1_logo {
    width: 250px;
  }

  .dummy_inner_2 .nav-menu ul li {
    padding: 0 10px;
  }

  .header__contact > .header__conatct--mail,
  .header__contact > .header__conatct--tel {
    width: 250px;
  }

  .header__contact > div .wrapper {
    top: 0;
    height: 125%;
  }

  .header__contact .header__conatct--tel .wrapper {
    width: calc(100% + 18px);
    right: 18px;
  }

  .header__contact .header__conatct--tel .wrapper .numb {
    font-size: 22px;
  }
}

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

@media screen and (max-width: 1520px) {
  .header__navi--list li {
    margin: 0 25px 0 0;
  }
}

@media screen and (max-width: 1360px) {
  /* .header__logo {
    width: 30%;
  } */

  .lower-technology .factory h3,
  .lower-technology .factory ul {
    max-width: 768px;
  }

  .lower-technology .factory .wrapper {
    /* flex-direction: column;
    align-items: center; */
    align-items: center;
    margin-bottom: 40px;
  }

  .lower-technology .factory .wrapper .text {
    width: 50%;
    min-width: unset;
    padding: 0 40px;
  }

  .lower-technology .factory--1 .wrapper {
    background: linear-gradient(to right, #fff 10%, #cb2d2e 10%);
  }

  .lower-technology .factory--1 .wrapper.reverse {
    background: linear-gradient(to left, #fff 10%, #cb2d2e 10%);
  }

  .lower-technology .factory--2 .wrapper {
    background-image: linear-gradient(transparent 100px, white 100px),
      linear-gradient(to right, #fff 10%, #cb2d2e 10%);
    position: relative;
  }

  .lower-technology .factory--2 .wrapper .text {
    padding: 90px 40px;
  }

  .lower-technology .factory--3 .wrapper {
    padding-bottom: 40px;
    padding-top: 0;
    margin-bottom: 0;
  }

  .lower-technology .factory--3 .wrapper.reverse {
    padding-top: 40px;
    padding-bottom: 0;
  }

  .lower-technology .factory--3 .wrapper img,
  .lower-technology .factory--3 .wrapper.reverse img {
    position: static;
  }

  .lower-technology .factory--3 .wrapper .text,
  .lower-technology .factory--3 .wrapper.reverse .text,
  .lower-technology .factory--4 .wrapper .text {
    padding: 20px 40px;
  }

  .lower-technology .factory--4 .wrapper.reverse {
    padding-top: 40px;
    padding-bottom: 0;
  }

  .lower-technology .factory--4 .wrapper {
    margin: 0;
    padding-bottom: 40px;
    padding-top: 0;
  }
}

@media screen and (max-width: 1260px) {
  /* .header__contact {
    width: 270px;
  } */

  .header__navi--list {
    font-size: 16px;
  }

  .company_inner {
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
    gap: 20px;
  }

  .company_info {
    max-width: 600px;
  }

  .company_info.text {
    width: 100%;
    max-width: unset;
  }
}

@media (min-width: 1200px) {
  .hamburger-menu {
    display: none;
  }
}

@media (max-width: 1200px) {
  main {
    padding-top: 60px;
  }

  .overview .inner {
    max-width: 1000px;
  }

  .header .inner.flex {
    justify-content: space-between;
    height: 60px;
  }

  .dummy_inner_2,
  .dummy_inner_3 {
    display: none;
  }

  .hamburger-menu {
    display: block;
    width: 90px;
    height: 100%;
    position: relative;
  }

  .menu-btn {
    position: fixed;
    top: 0;
    right: 0;
    display: flex;
    width: 100%;
    max-width: 90px;
    height: 90px;
    justify-content: center;
    align-items: center;
    z-index: 9000;
    background: #0457cf;
    border-bottom-left-radius: 20px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
  }

  .menu-btn span,
  .menu-btn span:before,
  .menu-btn span:after {
    content: "";
    display: block;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background-color: #fff;
    position: absolute;
  }

  .menu-btn span:before {
    bottom: 8px;
  }

  .menu-btn span:after {
    top: 8px;
  }

  #menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);
    /*メニューオープン時は真ん中の線を透明にする*/
  }

  #menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
  }

  #menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
  }

  #menu-btn-check {
    display: none;
  }

  .menu-content {
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 8000;
    /* background-color: #3584bb; */
  }

  .menu-content ul {
    padding: 120px 10px 0;
  }

  .menu-content ul li {
    border-bottom: solid 1px #ffffff;
    list-style: none;
  }

  .menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color: #ffffff;
    text-decoration: none;
    padding: 9px 15px 10px 0;
    position: relative;
  }

  .menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 16px;
  }

  .menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;
    /*leftの値を変更してメニューを画面外へ*/
    z-index: 80;
    background-color: #0457cf;
    transition: all 0.5s;
    /*アニメーション設定*/
  }

  #menu-btn-check:checked ~ .menu-content {
    left: 0;
    /*メニューを画面内へ*/
  }

  .menu-content ul .menu-content--icons {
    display: flex;
    align-items: center;
    gap: 20px;
  }

  .menu-content ul .menu-content--cta {
    display: flex;
    gap: 20px;
    padding: 20px 0;
    border-bottom: none;
  }

  .menu-content ul .menu-content--cta a {
    display: block;
    width: 50%;
    border: 1px solid #fff;
    background: #fff;
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }

  .menu-content ul .menu-content--cta a img {
    width: 30px;
  }

  .menu-content ul .menu-content--cta a .numb {
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
  }

  .menu-content ul .menu-content--cta a,
  .menu-content ul .menu-content--cta a p,
  .menu-content ul .menu-content--cta a small {
    color: #0457cf;
  }

  .menu-content ul .menu-content--cta a::after {
    display: none;
  }

  .menu-content ul .menu-content--cta a:hover {
    border: 1px solid #fff;
  }

  .menu-content ul .menu-content--cta a::before {
    display: none;
  }

  .menu-content--icons a img {
    width: 40px;
    height: auto;
    filter: brightness(10);
  }

  .menu-content--icons a::before {
    display: none;
  }

  .header__contact.sp {
    display: block;
    width: calc(100% - 10%);
    margin-top: -170px;
  }
}

@media screen and (max-width: 1170px) {
  /* .header__logo {
    width: 25%;
  } */

  /*
    .header__tel {
        font-size: 23px;
        padding: 2px 0 3px 57px;
        background-position: center left 15px;
    }
*/

  /* .h1_logo {
    width: 350px;
  } */

  a.header__tel {
    letter-spacing: 0px;
  }

  .header__mail {
    font-size: 16px;
    padding: 12px 0 12px 54px;
    background-position: center left 12px;
  }

  /*
    .header__contact {
        width: 210px;
    }
}
*/
}

@media screen and (max-width: 1188px) {
  .common-works .inner {
    justify-content: space-evenly;
  }

  .common-works .card-item {
    width: 400px;
  }
}

@media screen and (max-width: 1000px) {
  .header {
    /* padding: 20px 0 21px; */
    z-index: 99;
  }

  .header__navi--box {
    position: absolute;
    top: 73px;
    background: #fff;
    display: none;
    width: 100%;
  }

  .header__navi--list {
    padding: 20px 3% 20px;
  }

  .header__navi--list li {
    width: 48%;
    margin: 0 0 14px;
    padding: 0 0 10px;
    border-bottom: 1px solid #6a3c2c;
  }

  .header__contact {
    width: 100%;
  }

  .header__conatct--tel {
    background-color: #109988;
  }

  .header__tel {
    max-width: 225px;
    margin: 0 auto;
  }

  .header__contact--mail {
    background: #beaa13;
  }

  .header__mail {
    max-width: 215px;
    margin: 0 auto;
  }

  .header .sp-menu.sp {
    display: block;
  }
}

/*jun */
.select-type dd select {
  width: 50%;
  background-position: 85% center;
}

.business {
  gap: 20px;
}

.staff_01::after,
.staff_02::after,
.staff_03::after {
  right: 10px;
  top: 52px;
  font-size: 17px;
}

.engineers .engr_info p {
  font-size: 16px;
}

.footer {
  background: #fff;
}

.footer__text {
  color: #000;
}

.footer__item--left .copyright {
  color: #000;
}

.footer__nav--item .footer__nav--link {
  color: #000;
}

.footer .footer__item {
  flex-direction: column-reverse;
  align-items: center;
}

a.footer__logo.small_sns_logo {
  width: 23px;
  margin-top: 5%;
  /*    margin-left: 3%;*/
}

.footer__nav .footer__nav--list {
  display: grid;
  grid-template-columns: repeat(5, auto);
}

.contactbnr__item--right img {
  margin-bottom: 1%;
}

.dummy_inner {
  width: 25%;
}

.header__navi--box {
  align-items: center;
  /* padding-left: 18%;
  padding-right: 18%; */
}

.inner.flex {
  display: flex;
  flex-wrap: nowrap;
  margin-top: 2%;
}

span.small_tel_font {
  font-size: 20px;
}

/* re humberger */

@media screen and (max-width: 1001px) {
  /* .dummy_inner_1 {
    display: none;
  } */

  .dummy_inner_3 {
    display: none;
  }

  .inner.flex {
    justify-content: center;
  }

  .lower-mv .inner {
    padding: 0 0 0 0;
  }
}

/* re humberger*/

article {
  position: relative;
  /* z-index: -50; */
}

@media screen and (max-width: 769px) {
  .menu-btn {
    /*        top: 0px;*/
  }
}

.dummy_inner_2 {
  /* width: 27vw;
    margin-right: 36vw;
    margin-left: 36vw; */
  width: 100%;
  max-width: 600px;
}

.dummy_inner_2 .nav-menu ul {
  display: flex;
  align-items: center;
  justify-content: center;
}

.B_parts_02 {
  width: 50%;
  padding-left: 20%;
  padding-right: 2%;
}

.dummy_inner_3 {
  /* position: absolute;
	right: 0; */
}

.otoiawase-flex-line {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  gap: 30px;
}

/*.h1_logo img {
    width: 28vw;
}*/

.insta_sns img {
  max-width: 50px;
}

@media screen and (max-width: 1130px) {
  .contactbnr__mail {
    font-size: 19px;
  }
}

@media screen and (max-width: 1000px) {
  .recruitbnr .inner.flex {
    flex-direction: column;
  }

  .recruitbnr h3 {
    font-size: 28px;
  }

  .entry-content .mb90 {
    margin-bottom: 50px;
  }

  .lower-technology .factory {
    margin-bottom: 100px;
  }

  .lower-technology .factory .wrapper {
    flex-direction: column;
    align-items: center;
    padding: 30px 0;
    margin-bottom: 30px;
  }

  .lower-technology .factory .wrapper .text {
    padding: 20px 3% !important;
  }

  .lower-technology .factory .wrapper .text h4 {
    text-align: center;
  }

  .lower-technology .factory .wrapper .text {
    width: 100%;
  }

  .lower-technology .factory--1 .wrapper,
  .lower-technology .factory--1 .wrapper.reverse {
    background-image: linear-gradient(white 10%, #cb2d2e 10%);
  }

  .lower-technology .factory--2 .wrapper {
    background: #fff;
  }

  .lower-technology .factory--2 .wrapper .text h4 {
    position: static;
    background: #cb2d2e;
    padding: 20px 3%;
  }

  .lower-technology .factory--3 .wrapper img {
    border-bottom: 30px solid #cb2d2e;
  }

  /* .lower-technology .factory--4 .wrapper {
    margin-bottom: 0;
  } */

  .otoiawase-flex-line {
    flex-direction: column;
    margin: 0;
  }

  .contactbnr__item--left,
  .contactbnr__item--right {
    width: 100%;
  }

  a.contactbnr__tel {
    white-space: pre;
  }

  .contactbnr__mail {
    max-width: 100% !important;
    margin-right: 10%;
    margin-left: 10%;
  }

  .contactbnr__item--right {
    margin-top: 5%;
  }

  .contactbnr__item--right img {
    min-width: 9%;
  }

  .footer__logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .footer__item .footer__nav {
    width: 100%;
  }

  .footer__nav .footer__nav--list {
    margin: 0 auto;
    margin-bottom: 60px;
  }

  .footer__item .footer__item--left {
    text-align: center;
  }

  .footer__list--icons {
    justify-content: center;
    margin-bottom: 60px;
  }

  .copyright {
    text-align: center;
  }

  /* jen 1000px */

  .dummy_inner_3 {
    display: none;
  }

  .footer__nav .footer__nav--list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    row-gap: 20px;
  }

  .footer__nav--list .footer__nav--item {
    grid-column: span 2;
  }

  .footer__nav--list .footer__nav--item.construction {
    border: none;
  }

  .footer__nav--list .footer__nav--item.recruit,
  .footer__nav--list .footer__nav--item.privacy {
    grid-column: span 3;
  }
  /* jen end 1000px */

  /*jun */
  .submit_wap .btn01 {
    width: 35%;
  }
}

@media screen and (max-width: 769px) {
  .footer {
    background-position: right -20% top 10%;
    background-blend-mode: soft-light;
  }
}

@media screen and (max-width: 375px) {
  /*jun*/
  .contact__form .tel-number dd input {
    width: 100%;
  }

  .contact__form .tel-number dd {
    width: 26.5%;
  }

  .contact__form .tel-number dd:nth-child(4) {
    margin-left: 0;
  }

  .contact__form .tel-number dd:nth-child(6) {
    margin-left: 0;
  }

  .contact__form .tel-number .hyphen {
    margin: 10px 10px;
  }

  .submit_wap .btn01 {
    width: 85% !important;
  }

  /*jun end*/
}

@media screen and (max-width: 320px) {
  .contact__form .tel-number {
    justify-content: center;
    flex-direction: column;
  }
}
