@charset "UTF-8";

@font-face {
  font-family: 'Local Noto Sans JP';
  src:
    local('Noto Sans JP'),
    /* Windows用 */
    local('Noto Sans CJK JP Regular')
    /* Android用 */
  ;
}

body {
  margin: 0;
  font-family: "Local Noto Sans JP", "Noto Sans JP", sans-serif;
overflow-x: hidden;
}

* {
  color: #333;
}
p {
    line-height: 1.75;
}
a {
    color: #5488c8;
    transition: 0.3s;
}
a:hover {
  opacity: 0.7;
}

/*--------------------------------------
 * Header
 * -------------------------------------*/
.site-header {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 1.875rem 1.245rem;
  gap: 1.8rem;
  background: #fff;
  justify-content: center;
}

h1.site-logo {
  max-width: 240px;
  margin: 0;
  line-height: 0;
}

h1.site-logo img {
  width: 100%;
}

.home header.site-header {
  position: absolute;
  top: calc(100vh + 0.025rem);
  width: 100%;
  box-sizing: border-box;
  z-index: 10;
  justify-content: center;
}

@media(782px > width) {
  header.site-header {
    padding: 1.245rem;
  }

  .home header.site-header {
    position: relative;
    top: 0;
  }
}

/*グローバルナビ*/
ul#menu-gl-navi {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

ul#menu-gl-navi li {
  border-right: 1px solid #d3d3d3;
}

ul#menu-gl-navi a {
  text-decoration: none;
  font-family: "Noto Serif JP", serif;
  color: #b09a59;
  font-size: 1.6875rem;
  padding-right: 1.25rem;
  display: block;
  transition: 0.2s;
}

ul#menu-gl-navi a span {
  color: #333;
  font-size: 1.125rem;
  display: block;
  transition: 0.2s;
}

ul#menu-gl-navi a:hover {
  color: #a0883e;
}

ul#menu-gl-navi a:hover span {
  color: #b09a59;
}

ul#menu-gl-navi li:nth-child(2) a,
ul#menu-gl-navi li:nth-child(3) a,
ul#menu-gl-navi li:nth-child(4) a {
  padding-left: 1.25rem;
}

ul#menu-gl-navi li:last-child {
  border-right: none;
}

ul#menu-gl-navi li:last-child a {
  padding-right: 0;
}

/*--------------------------------------
 * SP-navi
 * -------------------------------------*/

/* PCナビ */
.gl-navi {
  display: block;
}

/* SPメニューは初期非表示 */
.gl-navi-sp.is-open {
  right: 0;
  overflow-y: auto;
  background: #fff;
  display: flex;
  align-items: center;
}

/* overlay */
.gl-navi-sp {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  max-width: 40vw;
  height: 100vh;
  background: #fff;
  transition: right .25s ease;
  z-index: 2001;
  /* ←ボタンより下 */
  padding: 0 1.25rem;
  box-sizing: border-box;
}

.sp-menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(176, 154, 89, .95);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease;
  z-index: 2000;
  /* ←一番下 */
}

.sp-menu-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}

/* body固定（メニュー開いてるとき） */
body.is-fixed {
  overflow: hidden;
}

/* hamburger */
.hamburger {
  display: none;
  width: 44px;
  height: 44px;
  border: none;
  background: transparent;
  position: absolute;
  right: 1rem;
  background: #fff;
  z-index: 2002;
  /* ←重要：メニューより上に */
  cursor: pointer;
}

.hamburger span {
  display: block;
  position: absolute;
  left: 10px;
  width: 24px;
  height: 2px;
  background: #333;
  transition: transform .25s ease, top .25s ease;
  transition: 0.2s;
}

.hamburger:hover span {
  background: #b09a59;
}

ul#menu-gl-navi-sp {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

ul#menu-gl-navi-sp li {
  margin-bottom: 2rem;
}

ul#menu-gl-navi-sp li:last-child {
  margin-bottom: 0;
}

ul#menu-gl-navi-sp a {
  text-align: center;
  color: #b09a59;
  font-size: 1.55rem;
  text-decoration: none;
  font-family: "Noto Serif JP", serif;
  line-height: 1.7;
  transition: 0.2s;
  display: block;
  width: 100%;
}

ul#menu-gl-navi-sp a span {
  font-size: 1rem;
  display: block;
  color: #333;
}

ul#menu-gl-navi-sp a:hover {
  color: #a0883e;
}

ul#menu-gl-navi-sp a:hover span {
  color: #b09a59;
}

/* 2本線 */
.hamburger span:nth-child(1) {
  top: 17px;
}

.hamburger span:nth-child(2) {
  top: 25px;
}

/* 開いたら× */
.hamburger.is-open span:nth-child(1) {
  top: 21px;
  transform: rotate(45deg);
}

.hamburger.is-open span:nth-child(2) {
  top: 21px;
  transform: rotate(-45deg);
}

/* レスポンシブ：1410px以下はSP */
@media (1410px > width) {
  .gl-navi {
    display: none;
  }

  .hamburger {
    display: block;
  }
}

@media (769px > width) {
  .gl-navi-sp {
    max-width: 80vw;
  }
}

@media (440px > width) {
  h1.site-logo {
    max-width: 11.25rem;
  }

  .gl-navi-sp {
    max-width: 100vw;
  }
}
/*--------------------------------------
 * Main
 * -------------------------------------*/
body.wp-singular:not(.home) main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.25rem;
}
/*--------------------------------------
 * Footer
 * -------------------------------------*/
footer {
  border-top: 1px solid #dddddd;
  padding: 2.5rem 0;
}

ul#menu-foot-navi {
  list-style: none;
  margin: 0 0 1.875rem;
  padding: 0 1.25rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
}

ul#menu-foot-navi li a {
  text-decoration: none;
  color: #333;
  transition: 0.2s;
}

ul#menu-foot-navi li a:hover {
  color: #999;
}

footer p {
  margin: 0 0 1rem;
}

footer p a {
  max-width: 11.25rem;
  display: block;
  margin: 0 auto;
}

footer p a img {
  width: 100%;
  transition: 0.3s;
}

footer p a:hover img {
  opacity: 0.6;
}

footer small {
  display: block;
  text-align: center;
}

@media(660px > width) {
  ul#menu-foot-navi {
    flex-direction: column;
    gap: 0.6rem;
    text-align: center;
  }
}

@media(440px > width) {
  ul#menu-foot-navi {
    display: none;
  }
}


/*--------------------------------------
 * Index
 * -------------------------------------*/
.gb-video-wrap {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

div#a-fv {
  gap: 0;
  margin: 0;
}

.fv {
  min-height: auto;
  height: 50vh;
  padding: 0 1.25rem;
  ;
}

div#c-a figure {
  max-width: 27rem;
  margin: 0 auto;
}

div#c-a figure+p {
  font-family: "Noto Serif JP", serif;
  color: #6b572a;
  font-size: 1.55rem;
  letter-spacing: 0.3rem;
  text-align: center;
  margin: 0.8rem 0 0;
}

div#c-a figure+p+p a {
  display: block;
  text-decoration: none;
  font-family: "Noto Serif JP", serif;
  font-size: 1.15rem;
  width: fit-content;
  margin: 0 auto;
  color: #6b572a;
  background: url(https://atowan.com/wp-content/uploads/2026/02/bg-fv-c-a.png) no-repeat bottom center;
  padding: 0px 0.8rem 0.3rem 0.3rem;
  letter-spacing: 0.1rem;
  transition: 0.3s;
}

div#c-a figure+p+p a:hover {
  letter-spacing: 0.2rem;
}

div#c-l figure {
  max-width: 27rem;
  margin: 0 auto;
}

div#c-l figure+p {
  font-family: "Noto Serif JP", serif;
  color: #fff;
  font-size: 1.55rem;
  letter-spacing: 0.2rem;
  text-align: center;
  margin: 0.8rem 0 0;
}

div#c-l figure+p+p a {
  display: block;
  text-decoration: none;
  font-family: "Noto Serif JP", serif;
  font-size: 1.15rem;
  width: fit-content;
  margin: 0 auto;
  color: #fff;
  background: url(https://atowan.com/wp-content/uploads/2026/02/bg-fv-c-l.png) no-repeat bottom center;
  padding: 0px 0.8rem 0.3rem 0.3rem;
  letter-spacing: 0.1rem;
  transition: 0.3s;
}

div#c-l figure+p+p a:hover {
  letter-spacing: 0.2rem;
}

@media(782px > width) {
  div#a-fv {
    flex-direction: column-reverse;
  }
  div#fv-c {
    display: flex;
  }

  .fv {
    height: 40vh;
    width: 50vw;
  }

  div#c-a figure+p,
  div#c-l figure+p {
    font-size: 1.05rem;
  }

  div#c-a figure+p+p a,
  div#c-l figure+p+p a {
    font-size: 1rem;
  }
}

@media(440px > width) {

  div#c-a figure+p+p a,
  div#c-l figure+p+p a {
    padding: 0px 1rem 0.3rem 0.3rem;
  }
}

/* INDEXコンテンツ */
.wp-block-group.bg-full {
  background: linear-gradient(to right, #f2f0ec 0%, #e6ddcc 100%);
}
.wp-block-group.bg-full.white {
	background: #fff;
}

div.bg-full .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
  margin-inline: auto;
  max-width: 1200px;
  padding: 1.25rem 0 3.75rem;
}

h2.wp-block-heading {
  font-size: 2.5rem;
  font-family: "Noto Serif JP", serif;
  color: #b09a59;
  font-weight: normal;
  margin-bottom: 1rem;
}

h3.wp-block-heading {
  font-size: 1.375rem;
  font-family: "Noto Serif JP", serif;
  font-weight: normal;
  margin-bottom: 1rem;
}

.snss {
  max-width: 70px;
  margin: 0 auto;
}

p.l-enter a {
  margin: 0 auto;
  padding-right: 1.2rem;
  display: block;
  width: fit-content;
  text-align: center;
  text-decoration: none;
  color: #333;
  background: url(https://atowan.com/wp-content/uploads/2026/02/bg-enter.png) no-repeat right 0.45rem;
  font-family: "Noto Serif JP", serif;
  font-size: 1.05rem;
  transition: 0.2s;
}

p.l-enter a:hover {
  letter-spacing: 0.2rem;
}

p.i-acc {
  background: url(https://atowan.com/wp-content/uploads/2026/02/bg-ci-acc.png) no-repeat left top 6px / 12px;
  padding-left: 1.4rem;
  margin-bottom: 0.5rem;
}

p.i-time {
  background: url(https://atowan.com/wp-content/uploads/2026/02/bg-ci-time.png) no-repeat left top 7px / 14px;
  padding-left: 1.4rem;
  margin-top: 0;
}

p.i-time+p {
  line-height: 1.9;
}

p.l-club a {
  margin: 0;
  padding-right: 1.2rem;
  display: block;
  width: fit-content;
  color: #333;
  background: url(https://atowan.com/wp-content/uploads/2026/02/bg-enter.png) no-repeat right 0.6rem;
  font-size: 1.05rem;
  transition: 0.3s;
}

p.l-club a:hover {
  letter-spacing: 0.2rem;
}

.c-info {
  padding-right: 1.8rem;
}

p.i-acc a {
  transition: 0.3s;
}

p.i-acc a:hover {
  opacity: 0.5;
}

.wp-block-group.recruit {
  background: #fff;
  border-radius: 0.6rem;
  padding: 1.25rem;
}

.wp-block-group.recruit .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 9.4rem;
}

.wp-block-group.recruit figure {
  max-width: 200px;
  margin: 0 auto;
}

.wp-block-group.recruit figure+p {
  margin: 0.6rem 0 0;
}

.wp-block-group.recruit figure+p a {
  background: #f4eddf;
  display: block;
  margin: 0 auto;
  width: fit-content;
  line-height: 1;
  color: #333;
  text-decoration: none;
  padding: 0.5rem;
}

.wp-block-group.recruit figure+p+p {
  text-align: center;
  margin: 0.4rem 0 0;
}

.wp-block-group.recruit figure+p+p a {
  color: #333;
  text-decoration: none;
}

.wp-block-group.recruit p a {
  transition: 0.3s;
}

.wp-block-group.recruit p a:hover {
  opacity: 0.6;
}

p.ag-info {
  padding: 0 1.25rem;
  text-align: center;
}

p.ag-info strong {
  font-weight: normal;
  font-size: 0.85rem;
  display: block;
  margin-bottom: 0.3rem;
}

p.ag-info+p.l-club {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}

@media(1220px > width) {
  .wp-block-group.bg-full {
    padding: 0 1.25rem;
  }
}

@media(782px > width) {
  .wp-block-spacer.d-n-sp {
    display: none;
  }

  .ci-block {
    padding: 0 1.25rem;
  }

  .c-info {
    padding: 0;
  }

  .c-info figure {
    text-align: center;
  }

  .c-info h3 {
    text-align: center;
  }

  p.l-club {
    display: flex;
    justify-content: flex-end;
  }
}

@media(440px > width) {
  h2.wp-block-heading {
    font-size: 1.6rem;
  }

/*   figure#top-g figure:last-child {
    display: none;
  } */

  .ci-block .wp-block-cover {
    min-height: 260px;
  }
}

/*--------------------------------------
 * POST/SINGLE
 * -------------------------------------*/
article.post-content {
    margin: 0 auto 2rem;
}
.post-category a {
    color: #333;
    text-decoration: none;
    font-size: 0.9rem;
}
h1.post-title {
  font-family: "Noto Serif JP", serif;
    font-weight: normal;
    letter-spacing: 0.3rem;
    margin: 0.5rem 0 0.5rem;
}
.single h2.wp-block-heading {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.2rem;
  font-size: 2rem;
}
.single h3.wp-block-heading {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.2rem;
  font-size: 1.8rem;
}
.single h4.wp-block-heading {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.2rem;
  font-size: 1.5rem;
}
.single h5.wp-block-heading {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.2rem;
  font-size: 1.3rem;
}
.single h6.wp-block-heading {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.2rem;
  font-size: 1rem;
}
.nav-links {
    display: flex;
    justify-content: space-between;
    font-size: 0.9rem;
}
/*--------------------------------------
 * NEWS
 * -------------------------------------*/
.post-list {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.25rem;
}
article.post-item {
    display: flex;
    gap: 2rem;
    margin-bottom: 2rem;
    align-items: center;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 2rem;
}
article.post-item:last-child {
    margin-bottom: 0;
    border: none;
}
h1.archive-title {
    font-family: "Noto Serif JP", serif;
    font-weight: normal;
    letter-spacing: 0.3rem;
    margin: 0.5rem auto 1.4rem;
    max-width: 1200px;
    padding: 0 1.25rem;
}
.post-list h2.post-title {
    margin: 0.8rem 0 1rem;
    font-family: "Noto Serif JP", serif;
    font-weight: normal;
}
.post-list h2.post-title a {
    color: #333;
    text-decoration: none;
}
.time-cate {
    display: flex;
    gap: 1rem;
}
.post-list .post-category {
    border-left: 1px solid #e9e9e9;
    padding: 0 0 0.2rem 0.6rem;
}
.post-list .post-link {
    margin: 1rem 0 0;
}
.post-thumb img {
  display: block;
  width: 100%;
  height: auto;
}
h1.archive-title a {
    text-decoration: none;
    color: #333;
}
@media(440px > width) {
article.post-item {
  flex-wrap: wrap;
}

}

/* ===========================
   トップページ動画プレイヤー
   ・前面：100vh固定（拡大なし）
   ・背景：ぼかしで余白補完
=========================== */

/* ルート */
.acf-video-player {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background: #000; /* ロード中対策 */
}


/* ===========================
   背景（ぼかし動画）
=========================== */
.acf-video-bg-wrap {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.acf-video-bg {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;
    object-fit: cover;

    /* ぼかし＋少し暗く */
    filter: blur(30px) brightness(0.6);
    transform: scale(1.2);

    opacity: 0;
    transition: opacity 0.8s ease;

    pointer-events: none;
}

.acf-video-bg.is-active {
    opacity: 1;
}


/* ===========================
   前面動画（ここが修正ポイント）
=========================== */
.acf-video-main-wrap {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
}

/* 全動画を重ねる */
.acf-video {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);

    height: 100vh;   /* ←拡大しない主役 */
    width: auto;

    opacity: 0;
    transition: opacity 0.5s ease;

    pointer-events: none;
}

.acf-video.is-active {
    opacity: 1;
}


/* ===========================
   微調整（任意）
=========================== */

/* 動画が小さすぎる場合の保険 */
.acf-video {
    max-width: 100%;
}


/* ===========================
   パフォーマンス最適化
=========================== */
.acf-video,
.acf-video-bg {
    will-change: opacity, transform;
}

/*--------------------------------------
 * GALLERY
 * -------------------------------------*/
 @media (768px < width) {
    .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) {
        max-width: calc(33.33333% - var(--wp--style--unstable-gallery-gap, 16px) * .66667);
    }
}
 @media (767px > width) {
    .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) {
        max-width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) / 2);
    }
}

/*--------------------------------------
 * 会社概要
 * -------------------------------------*/
.page-id-9 {
    overflow-x: hidden;
}
.page-id-9 p {
	color: #435275;
}
div#group-fv {
    padding: 3rem 100vw 5rem;
    margin: 0 -100vw 3rem;
    background: url(https://atowan.com/wp-content/themes/atowan/images/bg-about-fv.webp) no-repeat center center / cover;
}
div#group-fv h2 {
    text-align: center;
    color: #2782cf;
    text-shadow: 0 0 10px #fff,1px 1px 6px #fff,-2px -2px 7px #fff,-13px 8px 7px #fff;
}
div#group-fv p {
    color: #2782cf;
    text-align: center;
    text-shadow: 0 0 10px #fff, 1px 1px 6px #fff, -2px -2px 7px #fff, -13px 8px 7px #fff;
    margin: 0 0 0.4rem;
}
div#group-fv p strong {
    display: block;
    color: #2782cf;
    font-family: "Noto Serif JP", serif;
    letter-spacing: 0.7rem;
	font-size: 2rem;
}
div#group-fv p strong span {
    color: #2782cf;
}
div#about-date table th {
    width: 8em;
    letter-spacing: 0.1rem;
    border-top: none;
    border-left: none;
    border-right: none;
    padding: 1.3rem 1rem;
    box-sizing: border-box;
    border-color: #bad6f1;
    color: #435275;
    vertical-align: top;
}
div#about-date table td {
    border-top: none;
    border-left: none;
    border-right: none;
    padding: 1.3rem 0;
    box-sizing: border-box;
    border-color: #bad6f1;
    color: #435275;
}
div#about-date small {
	color: #435275;
}
div#about-date h3 {
    color: #435275;
    font-size: 1.8rem;
    margin: 0 0 1.6rem;
}
.history-block {
    display: flex;
    flex-wrap: wrap;
    border-left: 1px solid #2782cf;
    padding-bottom: 1.4rem;
}
.history-block p:first-child {
    color: #2782cf;
    width: 5rem;
    display: flex;
    gap: 0.5rem;
    margin: 0;
    position: relative;
    left: -0.3rem;
}
.history-block p:first-child:before {
    content: "";
    width: 10px;
    height: 10px;
    display: block;
    background: #2782cf;
    border-radius: 100px;
    margin-top: 0.6em;
}
.history-block p:last-child {
    width: calc(100% - 5rem);
    margin: 0;
}
div#about-date h3 + .history-block p {
    margin-top: -0.7rem;
}
div#philosophy {
    padding: 3rem 100vw 2rem;
    margin: 0 -100vw;
    background: linear-gradient(182deg, #dcf2ff, #ffffff00);
}
div#philosophy .wp-block-group__inner-container {
    width: fit-content;
    margin: 0 auto;
}
div#philosophy h3 {
    color: #435275;
    font-size: 1.8rem;
    margin: 0;
}
div#philosophy .philosophy-block {
    padding: 0 0 0 80px;
    margin-bottom: 2rem;
}
div#philosophy .philosophy-block:nth-child(2) {
    background: url(https://atowan.com/wp-content/themes/atowan/images/philosophy-01.png) no-repeat 0 0 / 60px;
}
div#philosophy .philosophy-block:nth-child(3) {
    background: url(https://atowan.com/wp-content/themes/atowan/images/philosophy-02.png) no-repeat 0 0 / 60px;
}
div#philosophy .philosophy-block:nth-child(4) {
    background: url(https://atowan.com/wp-content/themes/atowan/images/philosophy-03.png) no-repeat 0 0 / 60px;
}
div#philosophy .philosophy-block:nth-child(5) {
    background: url(https://atowan.com/wp-content/themes/atowan/images/philosophy-04.png) no-repeat 0 0 / 60px;
}
div#philosophy .philosophy-block p:first-child {
    font-size: 1.4rem;
    margin-bottom: 0;
    font-family: "Noto Serif JP", serif;
}
div#philosophy .philosophy-block p:first-child b {
    color: #2782cf;
}
div#philosophy .philosophy-block p:last-child {
    margin-top: 0.4rem;
}
div#thought {
	padding: 3rem 100vw 2rem;
    margin: 0 -100vw 3rem;
    background: url(https://atowan.com/wp-content/themes/atowan/images/bg-about-thought.webp) no-repeat bottom;
	border-top: 1px solid #2782cf;
    border-bottom: 1px solid #2782cf;
}
div#thought h3 {
    color: #2782cf;
    font-size: 1.8rem;
    margin: 0 0 1rem;
    text-align: center;
}
div#thought p {
    text-align: center;
    font-family: "Noto Serif JP", serif;
    font-size: 1.1rem;
	line-height: 1.9;
	color: #2782cf;
}
h3.wp-block-heading.staff {
    color: #435275;
    font-size: 1.8rem;
    text-align: center;
}
.names {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}
.names.woman {
    font-size: 1.4rem;
    font-family: "Noto Serif JP", serif;
}
.names p {
    margin: 0;
}
.names p:first-child b {
    font-size: 1.4rem;
    margin-left: 0.9rem;
    color: #435275;
    font-family: "Noto Serif JP", serif;
}
.names p:last-child {
    font-size: 0.9rem;
}
div#about-recruit {
    padding: 1rem 100vw 2rem;
    margin: 0 -100vw;
    background: linear-gradient(182deg, #dcf2ff, #ffffff00);
}
div#about-recruit h2 {
    color: #2782cf;
    font-size: 1.8rem;
    text-align: center;
}
div#about-recruit h2 + p {
    font-family: "Noto Serif JP", serif;
    text-align: center;
    margin-bottom: 2rem;
}
div#about-recruit h2 + p strong {
    font-size: 1.3rem;
    font-weight: 500;
    color: #435275;
}
@media(821px > width) {
.page-id-9 main {
    overflow-x: hidden;
}
}
@media(781px > width) {
.staffs figure {
	margin: 0 auto;
	max-width: 40%;
}
.names {
    flex-direction: column;
    text-align: center;
}
.names + p {
    text-align: center;
}
}
@media(480px > width) {
div#about-date small span {
    display: block;
}
div#group-fv p strong span {
	display: block;
}
div#group-fv p strong span.kutouten {
	display: none;
}
.history-block p:first-child {
    left: -0.32rem;
}
div#philosophy .philosophy-block {
    background-size: 40px !important;
}
div#philosophy .philosophy-block {
    padding: 0 0 0 55px;
}
div#philosophy .philosophy-block p:first-child {
    line-height: 1.4;
}
div#thought p {
    text-align: left;
}
div#thought p br {
    display: none;
}
.names + p {
	text-align: left;
	background: #f8fcff;
	padding: 1.1rem;
}
div#about-recruit p strong {
    font-size: 1.2rem;
    line-height: 1.4;
    margin-bottom: 1rem;
    display: inline-block;
}
}

/* Instagram全体 */
#sb_instagram #sbi_images{
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow-x:auto;
  gap:20px;
  padding: 1.3rem 0 0;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling: touch;
}

/* 各投稿 */
#sb_instagram .sbi_item{
  flex:0 0 calc(25% - 15px) !important;

  scroll-snap-align:start;
}

/* 画像 */
#sb_instagram .sbi_photo{
  border-radius:4px;
  overflow:hidden;
}

/* スクロールバー消す */
#sb_instagram #sbi_images::-webkit-scrollbar{
  display:none;
}

/* スマホ */
@media(max-width:767px){

  #sb_instagram .sbi_item{
    flex:0 0 80% !important;
  }

}


/*--------------------------------------
 * RECRUIT
 * -------------------------------------*/
.page-id-11 .wp-block-group.recruit {
	border: 1px solid #d3d3d3;
}
.wp-block-group.rec-section {
    background: #fff;
    padding: 1rem 100vw 2rem;
    margin: 0rem -100vw 0;
}
.wp-block-group.rec-section:nth-child(odd) {
    background: #f5f2ee;
}
.wp-block-group.rec-section h2 {
    text-align: center;
}
div#first.rec-section h2 {
	margin-bottom: 2rem;
}
div#first.rec-section h3,div#first.rec-section p {
	text-align: center;
}
div#first.rec-section p strong {
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: 1.1rem;
}
div#job.rec-section p,
div#job.rec-section ul {
max-width: 43rem;
    margin-left: auto;
    margin-right: auto;
    line-height: 2;
    color: #333;
}
div#job.rec-section h3 {
	text-align: center;
}
div#job.rec-section ul {
    list-style: none;
    margin: 1.5rem auto;
    padding: 0;
    max-width: 43rem;
}
div#job.rec-section ul li {
    font-size: 1.1rem;
    border-bottom: dashed 1px #d1d1d1;
    text-align: center;
    padding-bottom: 0.5rem;
    margin-bottom: 0.4rem;
}
div#job.rec-section ul li:first-child {
	border-top: dashed 1px #d1d1d1;
	padding-top: 0.5rem;
}
div#jobinfo.rec-section table {
    background: #fff;
    max-width: 50rem;
    margin: 1rem auto;
}
div#jobinfo.rec-section th {
    width: 10rem;
    padding: 1.7rem 1.5rem;
    vertical-align: top;
    border: none;
    border-bottom: 3px solid #f5f2ee;
	color: #b09a59;
}
div#jobinfo.rec-section td {
	 padding: 1.7rem 1.5rem;
	    border: none;
    border-bottom: 3px solid #f5f2ee;
}
div#messe.rec-section p {
max-width: 43rem;
    margin-left: auto;
    margin-right: auto;
    line-height: 2;
}
div#line-bar {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
}
div#line-bar p {
    margin: 0;
}
div#line-bar a {
    display: block;
    text-decoration: none;
    color: #fff;
    box-shadow: 0 0 10.4px #06c7557a;
    background: #06C755;
    background: linear-gradient(96deg, #06C755, #06c0c7);
    font-size: 1.2rem;
    width: 230px;
    text-align: center;
    padding: 0.7rem;
    border-radius: 100px;
    box-sizing: border-box;
    transition: 0.2s;
}
div#line-bar a:hover {
    letter-spacing: 0.05rem;
    opacity: 1;
    background: #03a846;
    background: linear-gradient(96deg, #8dc706, #06c7b2);
}
@media( 781px > width) {
	html {
		overflow-x: hidden;
	}
}
@media( 480px > width) {
div#first.rec-section p strong {
    display: block;
}
div#job.rec-section ul li {
    font-size: 1rem;
}
div#jobinfo.rec-section th {
    width: 30%;
    padding: 1.7rem 1rem;
}
div#jobinfo.rec-section td {
    padding: 1.7rem 1rem;
}
	}