/*!
Theme Name: wp-theme
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp-theme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.
wp-theme is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
- Normalize
- Box sizing
# Base
- Typography
- Elements
- Links
- Forms
## Layouts
# Components
- Navigation
- Posts and pages
- Comments
- Widgets
- Media
- Captions
- Galleries
# plugins
- Jetpack infinite scroll
# Utilities
- Accessibility
- Alignments
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
* 2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  font-size: 100％;
}

html {
  scroll-behavior: smooth;
}

/* Sections
  ========================================================================== */
/**
  * Remove the margin in all browsers.
  */
body {
  margin: 0;
}

/**
  * Render the `main` element consistently in IE.
  */
main {
  display: block;
}

/**
  * Correct the font size and margin on `h1` elements within `section` and
  * `article` contexts in Chrome, Firefox, and Safari.
  */
h1 {
  margin: 0;
}

/* Grouping content
  ========================================================================== */
/**
  * 1. Add the correct box sizing in Firefox.
  * 2. Show the overflow in Edge and IE.
  */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
  ========================================================================== */
/**
  * Remove the gray background on active links in IE 10.
  */
a {
  background-color: transparent;
}

/**
  * 1. Remove the bottom border in Chrome 57-
  * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
  */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
  * Add the correct font weight in Chrome, Edge, and Safari.
  */
b,
strong {
  font-weight: bolder;
}

/**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
  * Add the correct font size in all browsers.
  */
small {
  font-size: 80%;
}

/**
  * Prevent `sub` and `sup` elements from affecting the line height in
  * all browsers.
  */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
  ========================================================================== */
/**
  * Remove the border on images inside links in IE 10.
  */
img {
  border-style: none;
}

/* Forms
  ========================================================================== */
/**
  * 1. Change the font styles in all browsers.
  * 2. Remove the margin in Firefox and Safari.
  */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
  * Show the overflow in IE.
  * 1. Show the overflow in Edge.
  */
button,
input {
  overflow: visible;
}

/**
  * Remove the inheritance of text transform in Edge, Firefox, and IE.
  * 1. Remove the inheritance of text transform in Firefox.
  */
button,
select {
  text-transform: none;
}

/**
  * Correct the inability to style clickable types in iOS and Safari.
  */

button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
}
/**
  * Remove the inner border and padding in Firefox.
  */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
  * Restore the focus styles unset by the previous rule.
  */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
  * Correct the padding in Firefox.
  */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
  * 1. Correct the text wrapping in Edge and IE.
  * 2. Correct the color inheritance from `fieldset` elements in IE.
  * 3. Remove the padding so developers are not caught out when they zero out
  *		`fieldset` elements in all browsers.
  */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
  * Add the correct vertical alignment in Chrome, Firefox, and Opera.
  */
progress {
  vertical-align: baseline;
}

/**
  * Remove the default vertical scrollbar in IE 10+.
  */
textarea {
  overflow: auto;
}

/**
  * 1. Add the correct box sizing in IE 10.
  * 2. Remove the padding in IE 10.
  */
[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}

/**
  * Correct the cursor style of increment and decrement buttons in Chrome.
  */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}

/**
  * 1. Correct the odd appearance in Chrome and Safari.
  * 2. Correct the outline style in Safari.
  */
[type='search'] {
  outline-offset: -2px;
}

/**
  * Remove the inner padding in Chrome and Safari on macOS.
  */
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
  * 1. Correct the inability to style clickable types in iOS and Safari.
  * 2. Change font properties to `inherit` in Safari.
  */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
  ========================================================================== */
/*
  * Add the correct display in Edge, IE 10+, and Firefox.
  */
details {
  display: block;
}

/*
  * Add the correct display in all browsers.
  */
summary {
  display: list-item;
}

/* Misc
  ========================================================================== */
/**
  * Add the correct display in IE 10+.
  */
template {
  display: none;
}

/**
  * Add the correct display in IE 10.
  */
[hidden] {
  display: none;
}

/* Box sizing
  --------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
  @link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
  # Base
  --------------------------------------------------------------*/
/* Typography
  --------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
    Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}
p {
  margin: 0;
}
dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: 'Courier 10 Pitch', courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
  --------------------------------------------- */
body {
  background: #fff;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: none;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/* Links
  --------------------------------------------- */
a {
  color: #000;
}

a:visited {
  color: #000;
}

a:hover,
a:focus,
a:active {
  opacity: 0.6 !important;
}

a:focus {
  outline: thin dotted;
}

a:hover,
a:active {
  outline: 0;
}

/* Forms
  --------------------------------------------- */
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  background: #e6e6e6;
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}

button:hover,
input[type='button']:hover,
input[type='reset']:hover,
input[type='submit']:hover {
  border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type='button']:active,
input[type='button']:focus,
input[type='reset']:active,
input[type='reset']:focus,
input[type='submit']:active,
input[type='submit']:focus {
  border-color: #aaa #bbb #bbb;
}

input[type='text'],
input[type='email'],
input[type='url'],
input[type='password'],
input[type='search'],
input[type='number'],
input[type='tel'],
input[type='range'],
input[type='date'],
input[type='month'],
input[type='week'],
input[type='time'],
input[type='datetime'],
input[type='datetime-local'],
input[type='color'],
textarea {
  border: 1px solid #ccc;
  border-radius: 3px;
  color: #666;
  padding: 3px;
}

input[type='text']:focus,
input[type='email']:focus,
input[type='url']:focus,
input[type='password']:focus,
input[type='search']:focus,
input[type='number']:focus,
input[type='tel']:focus,
input[type='range']:focus,
input[type='date']:focus,
input[type='month']:focus,
input[type='week']:focus,
input[type='time']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input[type='color']:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
  padding: 1.2vh;
}

textarea {
  width: 100%;
}
input,
textarea,
select {
  font-size: 16px;
}
--------------------------------------------------------------*/

/* Navigation
  --------------------------------------------- */
.main-navigation {
  display: block;
}

.main-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  display: block;
  left: auto;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}

.main-navigation li {
  position: relative;
}

.main-navigation {
  display: block;
  text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  flex: 1 0 50%;
  text-align: end;
}

/* Posts and pages
  --------------------------------------------- */
.sticky {
  display: block;
}

.updated:not(.published) {
  display: none;
}

/* Comments
  --------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
  --------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}

.widget select {
  max-width: 100%;
}

/* Media
  --------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/* Captions
  --------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*='wp-image-'] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
  --------------------------------------------- */
.gallery {
  display: grid;
  grid-gap: 1.5em;
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
  # Plugins
  --------------------------------------------------------------*/
/* Jetpack infinite scroll
  --------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
  # Utilities
  --------------------------------------------------------------*/
/* Accessibility
  --------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex='-1']:focus {
  outline: 0;
}

/* Alignments
  --------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  margin-bottom: 1.5em;
  /*rtl:ignore*/
  margin-right: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  margin-bottom: 1.5em;
  /*rtl:ignore*/
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-bottom: 1.5em;
  margin-left: auto;
  margin-right: auto;
}

/*============
  Root
  =============*/
:root {
  /* 100% = 16px が前提 */
  --font-size07: 0.7rem; /* 11.2px */
  --font-size08: 0.8rem; /* 12.8px */
  --font-size09: 0.9rem; /* 14.4px */
  --font-size10: 1rem; /* 16px */
  --font-size11: 1.1rem; /* 17.6px */
  --font-size12: 1.2rem; /* 19.2px */
  --font-size13: 1.3rem; /* 20.8px */
  --font-size14: 1.4rem; /* 22.4px */
  --font-size15: 1.5rem; /* 24px */
  --font-size16: 1.6rem; /* 25.6px */
  --font-size17: 1.7rem; /* 27.2px */
  --font-size18: 1.8rem; /* 28.8px */
  --font-size19: 1.9rem; /* 30.4px */
  --font-size20: 2rem; /* 32px */
  --font-size21: 2.1rem; /* 33.6px */
  --font-size22: 2.2rem; /* 35.2px */
  --font-size23: 2.3rem; /* 36.8px */
  --font-size24: 2.4rem; /* 38.4px */
  --font-size25: 2.5rem; /* 40px */
  --font-size26: 2.6rem; /* 41.6px */
  --font-size27: 2.7rem; /* 43.2px */
  --font-size28: 2.8rem; /* 44.8px */
  --font-size29: 2.9rem; /* 46.4px */
  --font-size30: 3rem; /* 48px */
  --font-size31: 3.1rem; /* 49.6px */
  --font-size32: 3.2rem; /* 51.2px */
  --font-size33: 3.3rem; /* 52.8px */
  --font-size34: 3.4rem; /* 54.4px */
  --font-size35: 3.5rem; /* 56px */
  --font-size36: 3.6rem; /* 57.6px */
  --font-size37: 3.7rem; /* 59.2px */
  --font-size38: 3.8rem; /* 60.8px */
  --font-size39: 3.9rem; /* 62.4px */
  --font-size40: 4rem; /* 64px */
  --font-size41: 4.1rem; /* 65.6px */
  --font-size42: 4.2rem; /* 67.2px */
  --font-size43: 4.3rem; /* 68.8px */
  --font-size44: 4.4rem; /* 70.4px */
  --font-size45: 4.5rem; /* 72px */
  --font-size46: 4.6rem; /* 73.6px */
  --font-size47: 4.7rem; /* 75.2px */
  --font-size48: 4.8rem; /* 76.8px */
  --font-size49: 4.9rem; /* 78.4px */
  --font-size50: 5rem; /* 80px */
  --font-size51: 5.1rem; /* 81.6px */
  --font-size52: 5.2rem; /* 83.2px */
  --font-size53: 5.3rem; /* 84.8px */
  --font-size54: 5.4rem; /* 86.4px */
  --font-size55: 5.5rem; /* 88px */
  --font-size56: 5.6rem; /* 89.6px */
  --font-size57: 5.7rem; /* 91.2px */
  --font-size58: 5.8rem; /* 92.8px */
  --font-size59: 5.9rem; /* 94.4px */
  --font-size60: 6rem; /* 96px */
  --font-size61: 6.1rem; /* 97.6px */
  --font-size62: 6.2rem; /* 99.2px */
  --font-size63: 6.3rem; /* 100.8px */
  --font-size64: 6.4rem; /* 102.4px */
  --font-size65: 6.5rem; /* 104px */
  --font-size66: 6.6rem; /* 105.6px */
  --font-size67: 6.7rem; /* 107.2px */
  --font-size68: 6.8rem; /* 108.8px */
  --font-size69: 6.9rem; /* 110.4px */
  --font-size70: 7rem; /* 112px */
  --font-size71: 7.1rem; /* 113.6px */
  --font-size72: 7.2rem; /* 115.2px */
  --font-size73: 7.3rem; /* 116.8px */
  --font-size74: 7.4rem; /* 118.4px */
  --font-size75: 7.5rem; /* 120px */
  --font-size76: 7.6rem; /* 121.6px */
  --font-size77: 7.7rem; /* 123.2px */
  --font-size78: 7.8rem; /* 124.8px */
  --font-size79: 7.9rem; /* 126.4px */
  --font-size80: 8rem; /* 128px */
  --font-size81: 8.1rem; /* 129.6px */
  --font-size82: 8.2rem; /* 131.2px */
  --font-size83: 8.3rem; /* 132.8px */
  --font-size84: 8.4rem; /* 134.4px */
  --font-size85: 8.5rem; /* 136px */
  --font-size86: 8.6rem; /* 137.6px */
  --font-size87: 8.7rem; /* 139.2px */
  --font-size88: 8.8rem; /* 140.8px */
  --font-size89: 8.9rem; /* 142.4px */
  --font-size90: 9rem; /* 144px */
  --font-size91: 9.1rem; /* 145.6px */
  --font-size92: 9.2rem; /* 147.2px */
  --font-size93: 9.3rem; /* 148.8px */
  --font-size94: 9.4rem; /* 150.4px */
  --font-size95: 9.5rem; /* 152px */
  --font-size96: 9.6rem; /* 153.6px */
  --font-size97: 9.7rem; /* 155.2px */
  --font-size98: 9.8rem; /* 156.8px */
  --font-size99: 9.9rem; /* 158.4px */
  --font-size100: 10rem; /* 160px */
}

ul {
  padding: 0 0 0 0px;
  padding-inline-start: 0px;
  margin: 0;
}

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

.br {
  display: none;
}
.br_sp{
  display: block;
}
@media (max-width: 768px) {
  .br {
    display: block;
  }
  .br_sp{
  display: none;
}
}

/*===========
  body
  =============*/
body {
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
}

/*============
  Header
  =============*/

.inner--rogo {
  font-size: var(--font-size1);
  position: fixed;
  top: 30px;
  z-index: 2;
}
img.logo {
    max-width: 220px;
    width: 100%;
    margin: 15px 0 0 0;
}
.site-header__inner__branding {
  padding-bottom: 20px;
  width: 96%;
  margin: 0 auto;
}
header {
  align-items: center;
  position: fixed;
  top: 0;
  transition: 0.3s;
  width: 100%;
  z-index: 2;
}

#header {
  animation: fadeIn 0.7s ease 0s 1 normal;
  background-color: #20a3ea;
  height: 50px;
  margin: 200px 0;
  text-align: center;
  width: 200px;
}

.site-branding {
  margin: 0 0 0 0;
  z-index: 4;
  position: relative;
}

img.custom-logo {
  margin: 20px 0 0 0px;
  z-index: 99999999;
  position: relative;
}

@media screen and (max-width: 768px) {
  header {
    display: block;
  }

  img.custom-logo {
    max-width: 200px;
    width: 100%;
  }
	img.logo {
    max-width: 200px;
    width: 100%;
    margin: 10px 0 0 0;
}
}

/*============
  Nav
  =============*/

.open .main-navigation__inner {
  background-color: #f3eae8;
  bottom: 0;
  display: block;
  left: 0;
  opacity: 1;
  top: 0;
  transition: all 0.5s;
  width: 100%;
  z-index: 3;
  position: fixed;
  -webkit-overflow-scrolling: touch;
  overflow: scroll;
  padding: 0 0 60px 0;
}

ul#primary-menu {
  display: none;
}

.open ul#primary-menu {
  display: block;
}

/* ========== 基本リスト設定 ========== */
.main-navigation__inner ul {
  list-style: none;
  margin: 11vh auto 0;
  padding: 0;
  max-width: 600px;
  width: 90%;
}

/* ========== 親メニュー ========== */
.main-navigation__inner ul > li {
  position: relative;
  border-top: 1px solid #000;
}

/* 親メニューリンク */
.main-navigation__inner ul > li > a {
  font-weight: bold;
  color: #000;
  display: block;
  padding: 1em;
  text-decoration: none;
  font-size: var(--font-size10);
  position: relative;
}

/* 親メニューhover時 */
.main-navigation__inner ul > li > a:hover {
  background: #ffaeae3d;
}

/* 親メニューの矢印 */
.main-navigation__inner ul > li > a::after {
  content: '→';
  background-color: #2c2fae;
  color: #fff;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  font-size: var(--font-size10);
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
}

/* 最後の親メニューの下線 */
.main-navigation__inner ul > li:last-child {
  border-bottom: 1px solid #000 !important;
  border-top: 1px solid #000;
}

/* ========== 子メニュー ========== */
.main-navigation__inner ul li ul {
  list-style: none;
  margin: 0;
  width: 100%;
}

/* 子メニュー各項目 */
.main-navigation__inner ul li ul li {
  border-bottom: 1px dashed #999;
  position: relative;
  width: 95%;
  margin: 0 0 0 5%;
  justify-content: flex-end;
  border-top: none;
}

/* 子メニューリンク */
.main-navigation__inner ul li ul li a {
  font-weight: normal !important;
  font-size: var(--font-size10);
  color: #000;
  display: flex;
  align-items: center;
  text-decoration: none;
  padding: 0.75em 3em 0.75em 2.5em;
  position: relative;
}

/* 子メニューhover */
.main-navigation__inner ul li ul li a:hover {
  background: #eee;
}

/* 子メニュー左の「-」 */
.main-navigation__inner ul li ul li a::before {
  content: '-';
  display: inline-block;
  margin-right: 0.5em;
  font-size: 1rem;
  line-height: 1;
  position: relative;
  top: 1px;
  color: #000;
}

/* 子メニュー矢印（少し右寄せ） */
.main-navigation__inner ul li ul li a::after {
  content: '→';
  background-color: #2c2fae;
  color: #fff;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  font-size: var(--font-size10);
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
}

.main-navigation__inner ul li ul li:first-child {
  margin-top: -1px;
  /* ← 線かぶり防止 */
  border-top: none;
}

.main-navigation__inner ul li ul li:last-child {
  border-bottom: none !important;
  position: relative;
  border-top: none;
}

.sub-menuul ul li:last-child {
  border-bottom: none;
  position: relative;
}

/* ========== 不要なテーマ継承サブメニューの無効化 ========== */
ul li.has-sub .sub,
ul li.has-sub .sub.slidedown {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.menu-item-has-children > a[href='#'] {
  pointer-events: none;
  cursor: default;
  color: #000; /* 任意の色に変更 */
  text-decoration: none;
}
/* 採用情報リンクの中の矢印も非表示にする */
.menu-item-has-children > a[href='#'] .arrow,
.menu-item-has-children > a[href='#']::after {
  display: none !important;
}
/*============
  Toggle_btn
  =============*/

.toggle_btn {
  cursor: pointer;
  display: block;
  height: 40px;
  position: fixed;
  right: 30px;
  top: 2vh;
  transition: all 0.5s;
  width: 40px;
  z-index: 3;
  background-color: #242b34;
  border-radius: 8px;
}

.toggle_btn span {
  background-color: #fff;
  border-radius: 4px;
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  transition: all 0.5s;
  width: 30px;
}

.toggle_btn span:nth-child(1) {
  top: 12px;
  left: 50%;
  transform: translate(-50%, -50%);
}

.toggle_btn span:nth-child(2) {
  top: 21px;
  left: 50%;
  transform: translate(-50%, -50%);
}

.toggle_btn span:nth-child(3) {
  top: 30px;
  left: 50%;
  transform: translate(-50%, -50%);
}

.open .toggle_btn {
  cursor: pointer;
  display: block;
  height: 40px;
  position: fixed;
  right: 20px;
  top: 2vh;
  transition: all 0.5s;
  width: 40px;
  z-index: 3;
  background-color: #f3eae8;
  border-radius: 8px;
}

.open .toggle_btn span {
  background-color: #000;
}

.open .toggle_btn span:nth-child(1) {
  transform: translateY(8px) translatex(-15px) rotate(315deg);
}

.open .toggle_btn span:nth-child(2) {
  transform: translateY(2px) translatex(-12px) rotate(-450deg);
  display: none;
}

.open .toggle_btn span:nth-child(3) {
  transform: translateY(-10px) translatex(-15px) rotate(226deg);
}

.toggle_btn--p {
  font-family: 'Noto Sans', sans-serif;
  margin: 51px auto 0;
  font-size: var(--font-size09);
  text-align: center;
  margin: 50px auto 0;
}

.open .toggle_btn--p {
  display: none;
}

.main-navigation a {
  display: block;
  text-decoration: none;
  font-family: 'Noto Sans', sans-serif;
  font-size: var(--font-size08);
}
@media screen and (max-width: 768px) {
.toggle_btn {
top: 2vh;
}
}

/*============
  Mask
  =============*/

#mask {
  display: none;
  transition: all 0.5s;
}

.open #mask {
  background: #000;
  cursor: pointer;
  display: block;
  height: 100%;
  left: 0;
  opacity: 0.8;
  position: fixed;
  top: 0;
  width: 100%;
}
/*--------------------------------------------------------------
  # index
  --------------------------------------------------------------*/
/*============
  Front
  =============*/
.site-main.main-visual {
  position: relative;
}

.main-visual__image {
  display: block;
  margin: 10vh auto 0;
  width: 100%;
  max-width: 2560px;
  position: relative;
}
.main-visual--text {
  width: 14vh;
  position: absolute;
  top: 9vh;
  right: 18%;
}
.main-visual__image--sp {
  display: none;
}
.main_view {
    position: relative;
    
    height: 100%;
}
main h1 {
  font-family: Noto Sans JP;
  font-weight: 400;
}

.anim-box {
  background: linear-gradient(to right, #362ae0 0%, #3b79cc 50%, #42d3ed 100%);
  border-radius: 5px;
  height: 250px;
  max-width: 400px;
}

@media screen and (max-width: 768px) {
  .main-visual__image {
    display: none;
  }

  .main-visual__image--sp {
    margin: 147px auto 0;
    width: 100%;
    display: block;
  }
  .main-visual--text {
    width: 9vh;
    position: absolute;
    top: 22vh;
    right: 15%;
  }
}

.main-navigation__inner__sub {
  display: none;
}

.main-navigation__inner__sub {
  display: none;
}

.open .main-navigation__inner__sub {
  display: flex;
  z-index: 0;
  position: relative;
  list-style: none;
  margin: 30px auto 0;
  padding: 0;
  max-width: 600px;
  width: 90%;
  justify-content: space-evenly;
  align-items: stretch;
}

.open a.main-navigation__inner__sub--a {
  border: 1px solid #000;
  border-radius: 31px;
  padding: 16px 53px;
  background: #2e3192;
  color: #fff;
  font-size: clamp(0.56rem, calc(0.48rem + 0.33vw), 1rem);
}

.main-navigation__inner__sub__text {
  display: none;
}

.open .main-navigation__inner__sub__text {
  display: block;
  margin: 6vh 0 0 0;
}

.main-navigation__inner__sub--a2 {
  text-align: center;
  font-size: var(--font-size08);
}

/*============
  News
  =============*/

.news {
  margin: 0px 7%;
}

.news__box {
  position: relative;
  border: 3px solid #746f9a;
  padding: 40px;
  background: #fff;
  max-width: 800px;
  margin: 40px auto;
  border-radius: 8px;
  max-width: 1238px;
}

/* 角の装飾くるん画像 */
.corner {
  position: absolute;
  pointer-events: none;
}

.corner.tl {
  top: -17px;
  left: -9px;
  display: block;
}

.corner.tr {
  top: -18px;
  right: -8px;
  display: block;
}

.corner.bl {
  bottom: -18px;
  left: -9px;
  display: block;
}

.corner.br {
  bottom: -19px;
  right: -9px;
  display: block;
}

.news__box__pc {
  display: block;
}

.news__box__sp {
  display: none;
}

@media screen and (max-width: 430px) {
  .news__box__pc {
    display: none;
  }

  .news__box__sp {
    display: block;
  }

  .corner.tl {
    top: -10px;
    left: -20px;
    display: block;
  }

  .corner.tr {
    top: -9px;
    right: -19px;
    display: block;
  }

  .corner.bl {
    bottom: -9px;
    left: -20px;
    display: block;
  }

  .corner.br {
    bottom: -10px;
    right: -19px;
    display: block;
  }
}

/* 中身 */
.news__box__content__section {
  display: flex;
  gap: 40px;
  max-width: 960px;
  margin: 0 auto;
  padding: 0px;
  align-content: flex-start;
  align-items: stretch;
}

.news__box__left {
  width: 200px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.news__box__left h2 {
  font-size: var(--font-size20);
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  margin: 0;
}
.news__box__left p {
  font-size: var(--font-size10);
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
}
.news__box__left {
  font-size: var(--font-size09);
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
}

.news__box__left-link {
  margin: 0 0 20px 0;
}

.news__box__left .news-link {
  margin-top: 20px;
}

.news__box__left .news-link a {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: var(--font-size10);
  text-decoration: none;
  font-weight: bold;
  color: #000;
}

.news__box__left-link a::after {
  content: '→';
  background-color: #000000;
  color: #fff;
  width: 26px;
  height: 26px;
  line-height: 24px;
  text-align: center;
  font-size: var(--font-size10);
  display: inline-block;
  margin-left: 8px;
  position: absolute;
  border-radius: 50%;
}

.news__box__left .news-link span {
  display: inline-block;
  margin-left: 4px;
}

.news__box__right {
  flex: 1;
}

.news__box__right__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.news__box__right__list li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
  font-size: var(--font-size08);
}
.news__box__right__list li:last-child {
  border-bottom: none;
}
.news-date {
  font-size: var(--font-size09);
  color: #555;
  min-width: 70px;
  font-weight: 600;
}

.news-date strong {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: var(--font-size15);
  margin-left: 4px;
  font-weight: 600;
}

.news-label {
  font-size: var(--font-size09);
  padding: 4px 10px;
  color: white;
  white-space: nowrap;
  margin: 0vh;
  position: relative;
  top: -0.5vh;
  background-color: #29abe2;
}

.news-label.green {
  background-color: #00b894;
}

.news-label.blue {
  background-color: #0984e3;
}

.news-label.gray {
  background-color: #636e72;
}

.news-text {
  flex: 1;
}

@media (max-width: 768px) {
  .news__box__content__section {
    display: flex;
    gap: 0px;
    margin: 0 auto;
    padding: 0px;
    align-content: flex-start;
    align-items: center;
    flex-direction: column;
  }

  .news__box {
    padding: 24px;
    margin: 119px auto 52px;
  }

  .news__box__left h2 {
    font-size: var(--font-size21);
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    margin: 0;
    text-align: center;
  }

  .news__box__left {
    font-size: var(--font-size10);
    margin: 0;
    font-family: 'Noto Sans JP', sans-serif;
    text-align: center;
    font-weight: 200;
  }

  .news__box__right {
    flex: 1;
    width: 100%;
  }

  .news__box__right__list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid #eee;
    font-size: var(--font-size10);
    flex-direction: column;
  }
}

/*============
  Scroll
  =============*/

.scroll-indicator {
  display: none;
}

@media (max-width: 768px) {
  .scroll-indicator {
    display: block;
    writing-mode: vertical-rl;
    text-align: center;
    font-family: sans-serif;
    font-size: var(--font-size09);
    letter-spacing: 0.2em;
    color: #000;
    animation: bounce 1.5s ease-in-out infinite;
    position: absolute;
    top: 73%;
    left: 4%;
  }

  .scroll-indicator:before {
    content: '';
    position: absolute;
    bottom: -63px;
    left: 5px;
    width: 1px;
    height: 13px;
    background: #000;
    transform: skewX(218deg);
  }

  .scroll-indicator:after {
    content: '';
    position: absolute;
    bottom: -63px;
    left: 2vw;
    width: 1px;
    height: 57px;
    background: #000;
  }

  @keyframes bounce {
    0%,
    100% {
      transform: translateY(0);
    }

    50% {
      transform: translateY(8px);
    }
  }
}

/*============
  thoughts
  =============*/

.thoughts--img {
  margin: 0 auto;
  max-width: 385px;
  display: block;
}

.thoughts--h3 {
  font-family: Noto Sans JP;
  font-size: clamp(
    0.75rem,
    calc(0.71rem + 0.18vw),
    1rem
  );
  line-height: 38px;
  letter-spacing: 0.32px;
  font-weight: 600;
  max-width: 1020px;
  margin: 0 auto;
  text-align: center;
}

.thoughts {
  position: relative;
}

.thoughts__inner {
  display: flex;
  align-items: center;
  justify-content: center;
}

.thoughts__section--p {
  font-size: var(--font-size16);
  text-align: center;
  font-family: 'Noto Sans', sans-serif;
}

.thoughts__section--h3 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(2.5rem, calc(2.3rem + 0.63vw), 3.375rem);
  font-weight: 600;
  margin: 0 auto;
}

.thoughts--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 33px auto 0px;
  display: flex;
  text-align: center;
  top: -175px;
  font-weight: 600;
  height: 58px;
}

.thoughts--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
  font-weight: 600;
}

.st0 {
  fill: #e6e6e6;
}

.st1 {
  isolation: isolate;
}

.thoughts__svg__sp {
  display: none;
}

@media (max-width: 768px) {
  .thoughts {
    position: relative;
    padding: 0px 0 165px 0;
  }
  .thoughts--img {
    margin: 0 auto;
    max-width: 212px;
    display: block;
  }

  .thoughts--h3 {
    text-align: left;
    width: calc(100% - 10%);
    font-size: clamp(0.56rem, calc(7.49rem + 0.31vw), 1rem);
    line-height: 2;
    letter-spacing: 0.32px;
  }

  .thoughts__svg {
    display: none;
  }

  .thoughts__svg__sp {
    display: block;
    position: absolute;
    top: 0vh;
    left: -18%;
    z-index: -1;
    width: 22vh;
  }

  .thoughts--btn {
    top: 12vh;
    margin: 0 auto;
  }
}

#layer {
  max-width: 910px;
  margin: 0 auto;
  display: block;
  width: 100%;
}

/*============
  event
  =============*/
.event {
  position: relative;
}
.event__section {
  padding: 120px 0 0 0;
  background-color: #f3eae8;
  background: linear-gradient(
    180deg,
    #f3eae8 0,
    #f3eae8 60%,
    #fff 60%,
    #fff 100%
  );
}

.event__section__wrap {
  position: relative;
  z-index: 1;
}

.cls-1 {
  fill: #f3eae8;
}
.cls-2 {
  fill: #fff;
}
.event__section--p {
  font-size: var(--font-size16);
  text-align: center;
  font-family: 'Noto Sans', sans-serif;
}

.event__section--h3 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(2.5rem, calc(2.3rem + 0.63vw), 3.375rem);
  font-weight: 600;
  margin: 0 auto;
}

.event__section--p2 {
  font-size: var(--font-size10);
  font-weight: 600;
  text-align: center;
  font-family: 'Noto Sans', sans-serif;
}

.event__section--swiper {
  max-width: 1050px;
  width: 100%;
}

#layer2 {
  max-width: 706px;
  margin: -61px auto 0;
  display: block;
}
.event--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  width: 100%;
  max-width: 318px;
  display: flex;
  text-align: center;
  font-weight: 600;
  position: absolute;
  top: 93%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 58px;
}

.event--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);

  font-weight: bold;
  transition: 0.3s;
}

@media (max-width: 768px) {
  .event__section {
    background: #f3eae8;
    position: relative;
    padding: 50px 0 141px 0;
    overflow: hidden;
  }
  .event__section--h3 {
    margin: 0 auto 40px;
  }
  .event__section--p {
    font-size: var(--font-size10);
  }
}

/*============
  Swiper
  =============*/

.swiper {
  overflow: visible;
}

#swiper1 {
  max-width: 1050px;
  margin-top: 93px;
}

#swiper2 {
  margin-top: 39px;
  position: relative;
}

.swiper__wrap {
  position: relative;
  max-width: 318px;
  margin: 0 auto;
  top: -239px;
}

.event__section--img-wrap {
  position: relative;
  text-align: center;
}

.event__section--img {
  width: 100%;
  height: auto;
}

.event__section--label {
  color: #ed1e79;
  padding: 4px 12px;
  font-size: var(--font-size09);
  border-radius: 20px;
  border: 1px solid #ed1e79;
}

.event__section--title {
  margin-top: 10px;
  font-size: var(--font-size11);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  font-family: Noto Sans JP;
  max-width: 300px;
  margin: 30px auto;
  font-weight: 600;
}

.event__section--img {
  margin: 0 auto;
  display: block;
  max-width: 300px;
}

.custom-button-prev,
.custom-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 40px;
  height: 40px;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 20px;
  cursor: pointer;
}

.custom-button-prev {
  left: -10px;
}

.custom-button-next {
  right: -10px;
}

/* 矢印全体の共通スタイル */
.custom-button-prev::before,
.custom-button-next::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 16px;
  height: 2px;
  background-color: white;
  transform: translate(-50%, -50%);
}

/* 矢印の「くの字」 */
.custom-button-prev::after,
.custom-button-next::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  border-top: 2px solid white;
  border-right: 2px solid white;
  transform: translate(-50%, -50%) rotate(225deg);
}

.custom-button-next::after {
  transform: translate(-50%, -50%) rotate(45deg);
}

.custom-button-next,
.custom-button-prev {
  pointer-events: auto;
  z-index: 10;
  cursor: pointer;
}

.event__svg {
  display: block;
}

.event__svg__sp {
  display: none;
}

@media (max-width: 768px) {
  .event__svg__sp {
    display: block;
    position: absolute;
    top: 0vh;
    right: -2%;
    width: 13.5vh;
  }
  .cls-1 {
    fill: #fff;
  }
  .cls-2 {
    fill: #f3eae8;
  }
  .event__svg {
    display: none;
  }

  .event--btn {
    position: absolute;
    top: 86%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

/*============
  Crosstalk
  =============*/

.crosstalk__section {
  padding: 68px 0 0 0;
  background-color: #f3eae8;
  background: linear-gradient(
    180deg,
    #f3eae8 0,
    #f3eae8 60%,
    #fff 60%,
    #fff 100%
  );
  overflow: hidden;
}

.crosstalk {
  position: relative;
  margin: 70px 0 0 0;
}

.crosstalk__section--p {
  font-size: var(--font-size13);
  text-align: center;
  font-family: 'Noto Sans', sans-serif;
  font-weight: 600;
}

.crosstalk__section--h3 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(3.5rem, calc(2.3rem + 0.63vw), 3.375rem);
  font-weight: 600;
  margin: 0px auto 10px;
  letter-spacing: 23px;
}

/* スワイパー本体は横いっぱいに広げる */
.crosstalk-swiper {
  width: 100vw;
  /* ← 画面幅いっぱい */
  margin-left: calc(-50vw + 50%);
  /* ← 中央から左右にはみ出す */
}

/* 各スライドの左右余白（見た目は20px） */
.crosstalk-swiper .swiper-slide {
  box-sizing: border-box;
  transition: transform 0.3s ease;
}

/* 偶数スライド段差 */
.crosstalk-swiper .swiper-slide:nth-child(odd) {
  transform: translateY(80px);
}

/* 画像 */

.crosstalk-thumb {
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0;
  margin: 0;
}

.crosstalk-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* タイトル（キャプション） */

.crosstalk-title {
  font-size: var(--font-size08);
  line-height: 1.4;
  color: #000;
  font-weight: normal;
  text-align: center;
  font-weight: 600;
}

/* カスタムナビゲーション矢印 */
.custom-button-prev2,
.custom-button-next2 {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 32px;
  height: 32px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: var(--font-size20);
  cursor: pointer;
}

.custom-button-prev2 {
  left: -16px;
}

.custom-button-next2 {
  right: -16px;
}

#layer3 {
  max-width: 1328px;
  width: 100%;
  margin: 0px auto 0;
  display: block;
}

.crosstalk--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

.crosstalk--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  width: 100%;
  max-width: 318px;
  display: flex;
  text-align: center;
  font-weight: 600;
  position: absolute;
  top: 92%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#layer3__sp {
  display: none;
}

@media (max-width: 768px) {
  .crosstalk__section {
    padding: 0px 0 0 0;
    background: #fff;
    overflow: hidden;
  }

  .crosstalk-swiper {
    width: 100%;
    margin-left: 0;
    padding: 20px 0;
  }

  .crosstalk-swiper .swiper-slide {
    width: 80%;
    margin: 0 auto;
  }

  #layer3 {
    display: none;
  }

  #layer3__sp {
    display: block;
  }

  .crosstalk__section--p {
    font-size: var(--font-size10);
  }
  .crosstalk--btn {
    position: absolute;
    top: 87%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

/*============
  Oneday
  =============*/
.oneday {
  position: relative;
}
.oneday__section {
  position: relative;
  margin: 115px 0 0 0;
}

.oneday-caption {
  min-height: 72px;
  /* すべてのスライドに共通の高さ */
  padding: 10px 0 20px 0;
}

.oneday__section--p {
  font-size: var(--font-size13);
  text-align: center;
  font-family: 'Noto Sans', sans-serif;
  font-weight: 600;
}

.oneday__section--h3 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(2.5rem, calc(2.3rem + 0.6vw), 3.375rem);
  font-weight: 600;
  margin: 0 auto;
}

/* Swiper 全体 */
.oneday-swiper {
  padding: 40px 0 120px 0;
  position: relative;
  overflow: hidden;
}

.oneday-swiper .swiper-slide {
  /* aspect-ratio: 1 / 1; */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 30px 0 0 0;
  text-align: center;
  background-color: #f3dfd7;
}

/* 偶数スライドの背景色変更 */
.oneday-swiper .swiper-slide:nth-child(even) {
  background-color: #f3eae8;
}

/* サムネイル画像（正方形） */
.oneday-thumb {
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  margin-bottom: 10px;
}

.oneday-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  max-width: 298px;
}

/* タイトル */
.oneday-title {
  font-size: clamp(0.75rem, calc(0.71rem + 0.18vw), 1rem);
  color: #333;
  margin: 0;
  font-weight: 600;
}

/* 入社年 */
.oneday-entry {
  font-size: var(--font-size09);
  color: #666;
  margin-top: 4px;
  font-weight: 600;
}

/* ナビゲーションボタン */

.custom-button-prev3,
.custom-button-next3 {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  /* コンテンツより上に表示するため */
}

/* 左ボタン（prev） */
.custom-button-prev3 {
  left: 32.5%;
}

/* 右ボタン（next） */
.custom-button-next3 {
  right: 32.5%;
  /* 任意の余白調整 */
}

/* 共通スタイル */
.custom-button-prev3,
.custom-button-next3 {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 40px;
  height: 40px;
  background: #000;
  color: #fff;
  border-radius: 50%;
  font-size: var(--font-size20);
  line-height: 40px;
  text-align: center;
  cursor: pointer;
  user-select: none;
}

/* 左矢印（←） */
.custom-button-prev3::before {
  content: '←';
  display: inline-block;
}

/* 右矢印（→） */
.custom-button-next3::before {
  content: '→';
  display: inline-block;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  display: none;
}

.oneday--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  width: 100%;
  max-width: 318px;
  display: flex;
  text-align: center;
  z-index: 1;
  position: absolute;
  top: 71%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: 600;
  height: 58px;
}

.oneday--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

#layer4 {
  max-width: 934px;
  margin: 0 auto;
  display: block;
  position: relative;
  top: -132px;
  z-index: 1;
}

#layer4__sp {
  display: none;
}

.cls-4 {
  fill: #f3eae8;
}

.cls-5 {
  fill: #f3eae8;
}

@media (max-width: 768px) {
  .oneday {
    position: relative;
    margin: 0px 0 -4px 0;
  }

  .oneday__section {
    margin: 80px 0 0 0;
  }
  .oneday__section--p {
    font-size: 1rem;
  }
  .oneday__swiper__arrow {
    display: none;
  }
  .oneday-swiper {
    padding: 40px 0 177px 0;
  }
  .oneday--btn {
    top: 96%;
  }

  #layer4 {
    display: none;
  }

  #layer4__sp {
    display: block;
    position: absolute;
    top: 13vh;
    left: -10%;
    z-index: 2;
    width: 17vh;
  }
}

/*============
  Footer
  =============*/

.footer__section {
  display: flex;
}

.footer__section__inner {
  position: relative;
  margin: 0 0 -7px 0;
}

a.footer__section__inner--a {
  color: #fff;
  font-family: 'Noto Sans', sans-serif;
  font-size: clamp(1rem, calc(0.9rem + 0.27vw), 1.375rem);
  letter-spacing: 5px;
  border: 1px solid #fff;
  border-radius: 30px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 8px 30px;
  font-weight: 600;
}

.footer__section__inner--01 {
  position: relative;
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/footer_01.jpg');
  background-size: cover;
  background-position: center;
  height: 78vh;
  width: 100%;
  /* 横幅も確保 */
}

.footer__section__inner--02 {
  position: relative;
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/footer_02.jpg');
  background-size: cover;
  background-position: center;
  height: 78vh;
  width: 100%;
  /* 横幅も確保 */
}

.footer__section__inner--03 {
  position: relative;
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/footer_03.jpg');
  background-size: cover;
  background-position: center;
  height: 78vh;
  width: 100%;
  /* 横幅も確保 */
}

@media (max-width: 768px) {
  .footer__section {
    display: flex;
    flex-direction: column;
  }

  .footer__section__inner--01 {
    position: relative;
    background-image: url('https://palglad.net/recruit/wp-content/uploads/images/footer_01_sp.jpg');
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
    height: 197px;
    width: 100%;
  }

  .footer__section__inner--02 {
    position: relative;
    background-image: url('https://palglad.net/recruit/wp-content/uploads/images/footer_02_sp.jpg');
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
    height: 197px;
    width: 100%;
  }

  .footer__section__inner--03 {
    position: relative;
    background-image: url('https://palglad.net/recruit/wp-content/uploads/images/footer_03_sp.jpg');
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
    height: 197px;
    width: 100%;
  }
}

.section-group {
  display: flex;
}

/* PCでは元の順序のまま */
.section-item {
  order: initial;
}

/* 768px以下で順番を入れ替え */
@media (max-width: 996px) {
  .item-company {
    order: 3;
  }

  .item-job {
    order: 2;
  }
}

footer {
  background: #2e3192;
  padding: 30px 0;
}

.footer__inner {
  width: calc(100% - 6%);
  padding: 4px 0 0 0;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.footer--logo {
    width: 100%;
    max-width: 220px;
}

.section-copy--small {
  font-family: 'Noto Sans', sans-serif;
  color: #fff;
  font-size: clamp(0.5625rem, calc(0.55rem + 0.045vw), 0.625rem);
  margin: 0 0 0 1rem;
}

.section-copy--p {
  font-family: 'Noto Sans', sans-serif;
  color: #fff;
  font-size: clamp(0.5625rem, calc(0.55rem + 0.045vw), 0.625rem);
  margin: 12px 0 0 1rem;
  font-weight: 400;
}
.section-copy--p a {
  color: #fff;
}
.footer-columns {
  display: flex;
  justify-content: center;
  gap: 4vw;
  padding-top: 1rem;
  margin: 0 auto;
}

.footer-columns ul {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 1rem;
}

.footer-columns li {
  margin-bottom: 0.5rem;
  white-space: nowrap;
  color: #fff;
  font-family: 'Noto Sans', sans-serif;
  font-size: clamp(0.625rem, calc(0.6rem + 0.09vw), 0.75rem);
}
.footer-columns li a {
  color: #fff;
}
.section-copy__sp {
  display: none;
}

@media (max-width: 996px) {
  .footer__inner {
    width: calc(100% - 6%);
    padding: 4px 0 0 0;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
  }
  .footer__inner__right {
    width: 100%;
  }
  .footer-columns {
    display: flex;
    gap: 4vw;
    padding-top: 1rem;
    margin: 0 auto;
    width: 100%;
    justify-content: space-around;
  }
  .section-copy__pc {
    display: none;
  }

  .section-copy__sp {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 90%;
    margin: 34px auto 0px;
    gap: 10px;
  }

  .section-copy--p {
    margin: 0;
  }

  .section-copy--small {
    margin: 0;
  }
}

/*============
  Entry
  =============*/

.entry {
  font-family: 'Noto Serif JP', serif;
  background-color: #9e291b;
  bottom: 27vh;
  color: #fff;
  opacity: 0;
  padding: 20px 15px;
  position: fixed;
  right: 30px;
  text-align: center;
  text-decoration: none;
  transition: 0.2s;
  border-radius: 50%;
  width: 148px;
  height: 148px;
  z-index: -1;
  right: 9px;
}

.entry__wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.entry-p {
  color: #fff;
  font-size: clamp(0.75rem, calc(0.71rem + 0.18vw), 1rem);
  margin: 0;
  font-weight: 600;
}

.entry-p2 {
  color: #fff;
  font-size: clamp(0.75rem, calc(0.71rem + 0.17vw), 1rem);
  margin: 0;
}

@media (max-width: 768px) {
  .entry {
    width: 100px;
    height: 100px;
  }
}

/* デフォルト（Swiper用） */
.oneday-swiper .swiper-wrapper {
  display: flex;
}

.oneday-swiper .swiper-slide {
  width: auto;
}

/* モバイル用：Swiper無効化 + 縦並び */
.oneday-swiper.is-mobile .swiper-wrapper {
  display: block !important;
}

.oneday-swiper.is-mobile .swiper-slide {
  width: 100% !important;
}

/*--------------------------------------------------------------
  # index end
  --------------------------------------------------------------*/

/*============
  Thoughts contents
  =============*/

.thoughts-contents__section__first {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 0px 0;
}

#layer5 {
  max-width: 1208px;
  width: 100%;
  margin: 0 auto;
  display: block;
  position: relative;
  top: -21vh;
}

.cls-5 {
  fill: #e5dcd1;
}

.thoughts-contents__section__first--image {
  max-width: 690px;
  margin: 0px auto 0;
  display: block;
  width: 80%;
}

.thoughts-contents__section__secound__inner {
  margin: 9vh auto;
}

.thoughts-contents__section__secound {
  width: calc(100% - 10%);
  margin: 0 auto;
  max-width: 1000px;
}

.thoughts-contents__section__secound__inner--h1 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(3.1rem, calc(3.3rem + -0.94vw), 1.8rem);
  font-weight: 600;
  margin: 0 auto;
}

.secound__inner--h2 {
  font-family: 'Noto Serif JP', serif;
  text-align: left;
  color: #2e3192;
  font-size: clamp(1.6rem, calc(1.5rem + 0.3vw), 2rem);
  font-weight: 600;
  margin: 71px auto;
}

.thoughts-contents__section__secound__inner__wrap {
  max-width: 1000px;
  margin: 0 auto;
}

.secound__inner--p {
  font-size: clamp(0.75rem, calc(0.7rem + 0.18vw), 1rem);
  line-height: 2;
  margin: 0 0 20px 0;
}

.thoughts-contents__section__third--image {
  max-width: 200px;
  width: 100%;
}

.thoughts-contents__section__third {
  display: flex;
  align-items: center;
  gap: 1vw;
}

@media (max-width: 768px) {
  #layer5 {
    max-width: 1208px;
    width: 84%;
    margin: 0 auto;
    display: block;
    position: relative;
    top: -2vh;
  }

  .thoughts-contents__section__third {
    display: flex;
    align-items: center;
    gap: 2vw;
    justify-content: flex-end;
  }
}

/*============
  Crosstalk__archive
  =============*/

.crosstalk__archive-section__main {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 116px 0;
}
.crosstalk__archive-section {
  position: relative;
}
.crosstalk__archive-section--h3 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(3.5rem, calc(2.3rem + 0.63vw), 3.375rem);
  font-weight: 600;
  margin: 44px auto 10px;
  letter-spacing: 23px;
}
.crosstalk__single__wrap--text {
  position: absolute;
  width: 100%;
  top: 55%;
  left: 0%;
}

.crosstalk__section__main--img {
  width: 100%;
  margin: 0 auto;
  display: block;
}

.crosstalk__archive-section--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  line-height: 25px;
  letter-spacing: 1.44px;
  color: #000000;
  text-align: center;
  width: 80%;
  font-weight: 600;
  margin: 0 auto;
  position: relative;
  top: -103px;
}
.crosstalk__archive-section--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 60px auto;
  display: flex;
  text-align: center;
  z-index: 1;
  font-weight: 600;
  height: 58px;
}

.crosstalk__archive-section--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

.crosstalk__interview {
  position: relative;
  margin: 12vh auto 0;
  max-width: 1000px;
  width: calc(100% - 15%);
}

.crosstalk__image {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  display: block;
}

.crosstalk__interview-container {
  max-width: 600px;
  margin: 0 auto;
  position: relative;
}

.crosstalk__interview-number {
  font-family: Noto Sans;
  position: absolute;
  top: -101px;
  right: -53px;
  font-size: clamp(4.8rem, calc(3.1rem + 5.3vw), 11.6rem);
  color: #ccc;
  letter-spacing: -13px;
}
.crosstalk .crosstalk__interview:nth-of-type(odd) .crosstalk__interview-number {
  left: -53px;
}
.crosstalk__interview-image {
  width: 100%;
  height: auto;
}
.crosstalk__interview-names {
  margin: 20px 0;
  font-size: var(--font-size18);
}
.crosstalk__interview-names span {
  display: inline-block;
  margin: 0 20px;
}
.crosstalk__interview-names .title {
  display: block;
  font-size: var(--font-size09);
  color: #555;
}
.crosstalk__interview-label {
  display: inline-block;
  background-color: #2b348c;
  color: white;
  padding: 10px 20px;
  margin-top: 10px;
  font-size: var(--font-size14);
  border-radius: 3px;
}
.crosstalk__names {
  display: flex;
  align-items: center;
  margin: 4vh auto;
  width: 90%;
  justify-content: center;
  gap: 1vw;
}
.crosstalk__degree {
  font-size: clamp(0.5rem, calc(0.35rem + 0.6vw), 1.3rem);
  font-family: 'Noto Serif JP', serif;
  margin: 0;
  text-align: center;
  display: block;
}
.crosstalk__name {
  font-size: clamp(1rem, calc(0.6rem + 1.9vw), 3.2rem);
  font-family: 'Noto Serif JP', serif;
  margin: 0;
  text-align: center;
  letter-spacing: 8px;
  min-width: 300px;
}

.cross--img {
  max-width: 98px;
  width: 100%;
}
.cross--img03 {
  max-width: 98px;
  width: 100%;
  margin: 0 auto;
}
.crosstalk__subtitle {
  text-align: center;
  font-size: clamp(1.18rem, calc(0.84rem + 1.9vw), 2.6rem);
  margin: 0 auto;
  background: #2e3192;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  padding: 1vh 0px;
  font-weight: 100;
  max-width: 70%;
}

@media (max-width: 768px) {
  .crosstalk__archive-section__main {
    padding: 22vh 0 5vh 0;
  }
  .crosstalk__archive-section--p {
    position: relative;
    top: -24px;
  }
  .cross--img {
    max-width: 54px;
    width: 100%;
    margin: 0 auto;
  }
  .crosstalk__subtitle {
    max-width: 100%;
  }
  .crosstalk__interview-number {
    top: -8vh;
    right: -6vw;
    letter-spacing: 1px;
  }
  .crosstalk__name {
    max-width: 114px;
    min-width: 100%;
    letter-spacing: 4px;
  }
  .crosstalk__interview {
    position: relative;
    margin: 12vh auto 0;
  }
  .crosstalk__archive-section--btn {
    margin: 37px auto;
  }
}

/*============
  Custam pagination
  =============*/

.pagination {
  font-size: var(--font-size07);
  font-family: 'Noto Sans', sans-serif;
  text-align: center;
  margin: 46px auto 74px;
}

.pagination a,
.pagination span {
  display: inline-block;
  padding: 8px 12px;
  text-decoration: none;
  color: #ed1e79;
}

.pagination .current {
  color: #000000;
}

.arrow {
  font-size: 3.6em;
  position: relative;
  top: 9px;
}

.pagination.event-arrow a {
  color: #0075c2;
}

.pagination.event-arrow .arrow {
  color: #0075c2;
  font-family: 'Noto Serif JP', serif;
}

@media (max-width: 768px) {
  .pagination {
    font-size: var(--font-size07);
    font-family: 'Noto Sans', sans-serif;
    text-align: center;
    margin: 40px auto;
  }
}
/*============
  Crosstalk_single
  =============*/

.crosstalk__single {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 50px 0;
  position: relative;
}

.crosstalk__single__wrap {
  position: relative;
}

.crosstalk__single__wrap--img {
  width: 100%;
  position: relative;

  object-position: center;
  max-width: 2000px;
  margin: 0 auto;
  display: block;
}

.crosstalk__single__wrap--title {
  position: absolute;
  width: 900px;
  bottom: 0px;
  left: 0%;
}

.crosstalk__single__names {
  display: flex;
  align-items: center;
  margin: 4vh auto;
  width: 100%;
  max-width: 1000px;
  justify-content: center;
  /* gap: 2vw; */
}
.crosstalk__single__subtitle {
  text-align: center;
  font-size: clamp(1.18rem, calc(0.94rem + 1.9vw), 2.6rem);
  margin: 0 auto;
  background: #2e3192;
  color: #fff;
  font-family: 'Noto Serif JP', serif;
  padding: 1vh 0px;
  font-weight: 100;
  max-width: 760px;
  width: calc(100% - 20%);
}

.crosstalk-detail__section {
  margin: 72px auto 0px auto;
  width: 100%;
}

.crosstalk-detail__block {
  margin: 0 auto;
  width: 80%;
}

.crosstalk-detail__inner {
  width: 50%;
}

.crosstalk-detail__block__r {
  margin-bottom: 6vh;
  width: 90%;
  margin: 0 0 0 auto;
}
.crosstalk-detail__block__l {
  margin-bottom: 6vh;
  width: 90%;
  margin: 0 auto 0 0;
}
.crosstalk-detail__block-title {
  font-size: clamp(1.4rem, 1.2rem + 0.8vw, 2rem);
  font-weight: 600;
  color: #2e3192;
  margin-bottom: 6vh;
  font-family: 'Noto Serif JP', serif;
}

.crosstalk-detail__block__wrap__l {
  display: flex;
  justify-content: space-between;
  gap: 2vw;
  flex-direction: row-reverse;
}
.crosstalk-detail__block__wrap__r {
  display: flex;
  justify-content: space-between;
  gap: 2vw;
  margin: 96px 0 0 0;
  align-items: flex-start;
}
.crosstalk-detail__conversation {
  flex: 1 1 50%;
  display: flex;
  flex-direction: row;
  gap: 2vh;
  margin: 0 0 6vh 0;
  align-items: flex-start;
}
.crosstalk-detail__block__wrap__half {
  display: flex;
  justify-content: space-between;
  gap: 6vw;
  flex: 1 1 100%;
  align-items: flex-start;
  align-content: stretch;
}

.crosstalk-detail__block__wrap__full {
  display: flex;
  justify-content: space-between;
  gap: 2vw;
  align-items: start;
}

.crosstalk-detail__block__wrap__half > div {
  flex: 1; /* 左右幅を均等に */
  display: flex;
  flex-direction: column;
  gap: 30px; /* 会話の段ごとの間隔（お好みで） */
}

.crosstalk-detail__person-icon {
  width: 110px;
  height: 110px;
}

.crosstalk-detail__person-name {
  font-size: var(--font-size10);
  font-weight: bold;
  margin-top: 0.5em;
  text-align: center;
}

.crosstalk-detail__bubble {
  padding: 0 1em;
  font-size: var(--font-size09);
  line-height: 2;
  font-family: 'Noto Sans JP';
}

.crosstalk-detail__photo-row {
  flex-shrink: 0;
  max-width: 400px;
}

.crosstalk-detail__photo-row img {
  width: 100%;
  height: auto;
}

.crosstalk-detail__conversation-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* 高さに合わせて分散配置 */
}

.crosstalk-detail__photo-col {
  display: flex;
  justify-content: center;
}

.crosstalk-detail__photo-col img {
  height: auto;
  object-fit: cover;
  max-width: 560px;
  width: 100%;
}

.crosstalk-detail__photo--img {
  width: 100%;
  display: block;
  margin: 0 auto;
}

.crosstalk-detail--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 33px auto 0px;
  display: flex;
  text-align: center;
  font-weight: 600;
  height: 58px;
}

.crosstalk-detail--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

.crosstalk__single__body__btn {
  position: relative;
  height: 200px;
}
.crosstalk__single__btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  width: 100%;
  max-width: 318px;
  display: flex;
  text-align: center;
  font-weight: 600;
  position: absolute;
  top: 51%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 768px) {
  .crosstalk__single {
    padding: 17vh 0 11vh 0;
  }
  .crosstalk__single__body {
    margin: 73px 0 0 0;
  }
  .crosstalk__single__wrap--img {
    height: auto;
    object-fit: contain;
  }
  .crosstalk__single__wrap--title {
    width: 72%;
  }
  .crosstalk-detail__block-title {
    margin-bottom: 30px;
  }
  .crosstalk__single__names {
    width: calc(100% - 18%);
    white-space: nowrap;
  }
}
@media (max-width: 768px) {
  .crosstalk-detail__block__wrap {
    align-items: center;
    display: flex;
    flex-direction: column-reverse;
  }
  .crosstalk-detail__section {
    margin: 0 auto;
    width: 90%;
  }
  .crosstalk-detail__conversation {
    flex: 1 1 100%;
    margin: 10px 0 3vh 0;
  }
  .crosstalk-detail__conversation {
    flex: 1 1 100%;
    display: flex;
    flex-direction: row;
    gap: 2vh;
    align-items: flex-start;
  }

  .crosstalk-detail__block {
    margin: 0 auto;
    width: 100%;
  }

  .crosstalk-detail__block__l {
    margin-bottom: 6vh;
    width: 100%;
    margin: 0 auto;
  }

  .crosstalk-detail__block__r {
    margin-bottom: 6vh;
    width: 100%;
    margin: 0 auto;
  }
  .crosstalk-detail__photo-row {
    max-width: 100%;
    margin-top: 20px;
  }
  .crosstalk-detail__bubble::before {
    content: '';
    position: absolute;
    left: 10px;
    top: -10px;
    border: 8px solid transparent;
    border-bottom-color: #f3f3f3;
    transform: rotate(45deg);
  }

  .crosstalk-detail__block__wrap__l {
    display: flex;
    justify-content: space-between;
    gap: 2vw;
    flex-direction: column-reverse;
  }
  .crosstalk-detail__block__wrap__r {
    margin: 20px 0 0 0;
    flex-direction: column-reverse;
  }
  .crosstalk-detail__inner {
    width: 100%;
  }
  .crosstalk-detail__block__wrap__half {
    grid-template-columns: 1fr;
    display: flex;
    flex-direction: column;
  }
  a.crosstalk--btn.crosstalk__single__btn {
    top: 96px;
  }
  .crosstalk-detail__photo--img {
    width: 90%;
  }
  .crosstalk-detail__photo-col img {
    height: auto;
    object-fit: cover;
    max-width: 560px;
    margin: 20px auto;
    width: 90%;
  }
}

.sp_flex {
  display: flex;
  gap: 2vw;
}

@media (max-width: 768px) {
  .sp_flex {
    display: flex;
    gap: 2vw;
    flex-direction: column;
  }
  .cross--img {
    max-width: 54px;
    width: 100%;
    margin: 0 auto;
  }
  .cross--img03 {
    display: none;
  }
  .oneday__subtitle {
    max-width: 316px;
  }
  .oneday__interview-number {
    top: -8vh;
    right: -6vw;
    letter-spacing: 1px;
  }
}

/*============
  Oneday_single
  =============*/

.oneday__single {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 226px 0;
  position: relative;
}

.oneday__single__body {
  margin: 10vh 0 0 0;
}

.oneday__single__body--h2 {
  font-family: Noto Serif JP;
  font-weight: bold;
  font-size: var(--font-size20);
  letter-spacing: 1.92px;
  color: #000000;
  margin: 0 auto 2vh;
}

.oneday__single__body--img {
  max-width: 1000px;
  width: 100%;
  margin: 30px auto;
}

.oneday__single__body--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size09);
  line-height: 27px;
  letter-spacing: 1.04px;
  color: #231815;
  margin: 0;
}

.oneday__single__inner {
  max-width: 1100px;
  width: calc(100% - 10%);
  margin: 76px auto 58px;
}

.oneday__single__inner--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size19);
  letter-spacing: 2.4px;
  color: #000000;
  margin: 0;
  font-weight: 400;
}

.oneday__single__inner--sapn {
  font-family: Noto Sans JP;
  font-size: var(--font-size09);
  font-weight: 400;
  line-height: 32px;
}

.oneday__single__inner__degree {
  font-family: Noto Sans JP;
  font-size: var(--font-size09);
  line-height: 24px;
  letter-spacing: 1.28px;
  color: #000000;
  margin: 0;
}

.oneday__single__inner__name {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}
.oneday__single__names {
  position: relative;
  top: 108px;
}
.oneday__single__names--p {
  text-align: center;
  font-size: var(--font-size16);
  text-align: center;
  font-family: 'Noto Sans', sans-serif;
}
.oneday__single__names--h1 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(1.8rem, 1.6rem + 1.1vw, 3.4rem);
  font-weight: 600;
  letter-spacing: 5px;
  line-height: 1.4;
}

.oneday__single__wrap {
  position: relative;
}

.oneday__single__wrap--img {
  width: 100%;
  position: relative;
  height: 490px;
  object-fit: cover;
}

.oneday__single__wrap--title {
  position: absolute;
  width: 626px;
  bottom: -40px;
  left: 0%;
}

.oneday__single--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);

  font-weight: bold;
  transition: 0.3s;
}

.oneday__single--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  display: flex;
  text-align: center;
  font-weight: 600;
  margin: 70px auto 130px;
  height: 58px;
}

@media (max-width: 768px) {
  .oneday__single {
    padding: 132px 0 70px 0;
  }
  .oneday__single__wrap--img {
    height: auto;
    object-fit: contain;
  }
  .oneday__single__names {
    position: relative;
    top: 39px;
  }
  .oneday__single__wrap--title {
    width: 72%;
    bottom: -15px;
  }
  .oneday__single__names--h1 {
    top: 55px;
  }
}

/*============
  Oneday__archive
  =============*/

.oneday__archive-section__main {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 90px 0;
  position: relative;
}

.oneday__section__main--img {
  width: 100%;
}
.oneday__section__main--txt {
  position: absolute;
  bottom: -16%;
  width: 80%;
  z-index: 0;
  left: 0;
}

.oneday__archive-section__main__title {
  margin: 78px 0 0 0;
}

.oneday__archive__wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 10vh 0;
}
.oneday__archive__wrap__inner {
  width: calc(33.333%); /* 3列にするための幅調整 */
  box-sizing: border-box;
}
.oneday__archive--h1 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(2.5rem, calc(2.36rem + 0.63vw), 3.375rem);
  font-weight: 100;
  margin: 0 auto;
  font-weight: 600;
}
.oneday__archive__wrap__inner__names {
  margin: 2vh 0 0 0;
}

.oneday__archive__degree {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  font-size: clamp(0.75rem, calc(0.71rem + 0.18vw), 1rem);
  line-height: 24px;
  letter-spacing: 1.28px;
  color: #000;
  text-align: center;
  margin: 0;
}
.oneday__archive__year {
  font-family: Noto Sans JP;
  font-size: clamp(0.6875rem, calc(0.65rem + 0.13vw), 0.875rem);
  letter-spacing: 1.28px;
  color: #000;
  text-align: center;
  margin: 0;
}
.oneday__archive__wrap__inner:nth-child(odd) {
  background-color: #e2c6bb;
  padding: 4% 4% 2% 4%;
}
.oneday__archive__wrap__inner:nth-child(even) {
  background-color: #f3eae8;
  padding: 4% 4% 2% 4%;
}
.oneday__image {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  display: block;
  object-fit: cover;
}

@media (max-width: 768px) {
  .oneday__archive__wrap__inner {
    width: calc(100%);
    box-sizing: border-box;
  }

  .oneday__archive__wrap__inner:nth-child(odd) {
    padding: 58px 58px 33px 58px;
  }
  .oneday__archive__wrap__inner:nth-child(even) {
    padding: 58px 58px 33px 58px;
  }
}

/*============
  Event_single
  =============*/

.event__single {
  padding: 22vh 0 3vh 0;
  position: relative;
  margin: 0 auto;
  max-width: 1000px;
}

.event__single__body {
  margin: 10vh auto 15vh;
  width: calc(100% - 10%);
  line-height: 2;
}

.event__single__body--h2 {
  font-family: Noto Serif JP;
  font-weight: bold;
  font-size: var(--font-size32);
  letter-spacing: 1.92px;
  color: #000000;
  margin: 0 auto 2vh;
}

.event__single__body--img {
  max-width: 1000px;
  width: 100%;
  margin: 5vh auto 10vh;
}

.event__single__body--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);

  line-height: 27px;
  letter-spacing: 1.04px;
  color: #231815;
  margin: 0;
}

.event__single__inner {
  max-width: 1100px;
  width: 100%;
  margin: 76px auto 0;
}

.event__single__inner--p {
  font-family: Noto Sans JP;

  font-size: var(--font-size30);
  letter-spacing: 2.4px;
  color: #000000;
  margin: 0;
}

.event__single__inner--sapn {
  font-family: Noto Sans JP;
  font-size: var(--font-size20);
}

.event__single__inner__degree {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  line-height: 24px;
  letter-spacing: 1.28px;
  color: #231815;
  margin: 0;
}

.event__single__inner__name {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}

.event__single__names--h1 {
  font-family: Noto Sans JP;
  text-align: left;
  color: #000000;
  font-size: clamp(1.25rem, calc(1.13rem + 0.54vw), 2rem);
  font-weight: 400;
  letter-spacing: 5px;
  line-height: 1.4;
}

.event__single__wrap {
  margin: 84px 0 0 0;
  padding: 0 0 17vh 0;
  position: relative;
  background: #e6e6e6;
  background: linear-gradient(
    180deg,
    #fffefe 0%,
    #ffffff 20%,
    #e6e6e6 20%,
    #e6e6e6 100%
  );
}

.event__single__wrap--img {
  width: 100%;
  position: relative;
  object-fit: cover;
  max-width: 690px;
  margin: 0 auto;
  display: block;
}

.event__single__wrap--title {
  position: absolute;
  width: 626px;
  bottom: -40px;
  left: 0%;
}

.event__single__inner--h2 {
  font-family: Noto Sans JP;
  text-align: center;
  color: #000000;
  font-size: var(--font-size21);
  font-size: clamp(1.3125rem, calc(1.2rem + 0.49vw), 2rem);
  font-weight: 600;
  letter-spacing: 3px;
  line-height: 1.4;
}
.event__single--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

.event__single--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 18vh auto 12vh;
  display: flex;
  text-align: center;
  font-weight: 600;
}

@media (max-width: 768px) {
  .event__single {
    padding: 17vh 0 0vh 0;
  }

  .event__single__wrap--img {
    height: auto;
    object-fit: contain;
    width: 80%;
  }

  .event__single__wrap--title {
    width: 72%;
  }
  .event__single__names--h1 {
    text-align: center;
  }
  .event__single__wrap {
    padding: 0 0 10vh 0;
  }
}

.event__single__names--h3 {
  font-family: Noto Sans JP;
  text-align: center;
  color: #000000;
  font-size: clamp(1.3125rem, calc(1.2rem + 0.49vw), 2rem);
  font-weight: 600;
  letter-spacing: 3px;
  line-height: 1.4;
}

.event__single__reserveform {
  width: 100%;
  background-color: #e6e6e6;
  padding: 63px 0 90px;
}

.event__single__reserveform--p {
  font-size: var(--font-size08);
  text-align: center;
  margin: 0 auto;
  font-weight: 600;
}

.event__single__reserveform--hr {
  max-width: 1200px;
  width: 90%;
  border: none;
  height: 1px;
  background-color: #000;
  margin: 40px auto 0;
}

/*ContactForm7カスタマイズ*/
table.CF7_table {
  width: 80%;
  margin: 0 auto;
  border: 3px solid #e5e5e5;
}

table.CF7_table tr {
  border-top: 1px solid #e5e5e5;
}

.single .entry-content table.CF7_table,
.page .entry-content table.CF7_table {
  display: table;
}

/*入力欄*/
.CF7_table input,
.CF7_table textarea {
  border: 1px solid #d8d8d8;
  padding: 1.2vh;
}

.CF7_table ::placeholder {
  color: #797979;
}

/*「必須」文字*/
.CF7_req {
  font-size: 0.9em;
  padding: 5px;
  background: #f79034; /*オレンジ*/
  color: #fff;
  border-radius: 3px;
  margin-right: 1em;
}

/*「任意」文字*/
.CF7_unreq {
  font-size: 0.9em;
  padding: 5px;
  background: #bdbdbd; /*グレー*/
  color: #fff;
  border-radius: 3px;
  margin-right: 1em;
}
textarea.wpcf7-textarea.wpcf7-validates-as-required {
  width: 70%;
}
/* タイトル列 */
@media screen and (min-width: 768px) {
  .CF7_table th {
    font-size: var(--font-size11);
    font-family: Noto Sans JP;
    width: 30%;
    padding: 3vh;
    text-align: right;
    vertical-align: top;
    font-weight: 400;
  }
  .CF7_table .message th {
    font-size: var(--font-size11);
    font-family: Noto Sans JP;
    width: 30%;
    padding: 3vh;
    text-align: right;
    font-weight: 100;
  }
  span.event_reserve--span.message {
    text-align: left;
    display: block;
  }
}

/* レスポンシブ */
@media screen and (max-width: 768px) {
  table.CF7_table {
    width: 95%;
  }
  .CF7_table tr,
  .CF7_table td,
  .CF7_table th {
    display: block;
    width: 100%;
    line-height: 2.5em;
    text-align: left;
  }
}

.event_reserve--p {
  margin: 0;
  font-size: var(--font-size08);
  text-align: left;
}

/* 「送信する」ボタン */

.wpcf7 input.wpcf7-submit {
  background-color: #00ffff;
  border: 0;
  color: #000000;
  font-size: var(--font-size10);
  font-weight: 800;
  margin: 0 auto;
  font-family: Noto Sans JP;
  border-radius: 0;
  max-width: 500px;
  height: 7vh;
  width: 100%;
}

.wpcf7-spinner {
  width: 0;
  margin: 0;
}

span.star {
  color: #ff0000;
  margin: 0 0 0 2px;
}

.event_reserve--acceptance {
  font-size: var(--font-size09);
  margin: 26px 0 56px 0;
}
.event_reserve--acceptance a {
  text-decoration: underline;
}
/*============
  Event__archive
  =============*/

.event__archive-section__main {
  padding: 22vh 0 11vh 0;
}
.event__archive--h1 {
  text-align: center;
}
.event__section__main--img {
  width: 100%;
  margin: 0 auto;
  max-width: 1068px;
  display: block;
}

.event__archive-section--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  line-height: 25px;
  letter-spacing: 1.44px;
  color: #000000;
  text-align: center;
}

.event__archive-section--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 96px auto 110px;
  display: flex;
  text-align: center;
  z-index: 1;
  font-weight: 600;
  height: 58px;
}

.event__archive-section--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}
.event__archive__wrap {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 30px;
  margin: 40px auto;
  max-width: 1000px;
}

.event__archive__wrap__inner {
  text-align: center;
}

.event__image {
  width: 100%;
  height: auto;
  display: block;
}

.event__archive__status {
  display: inline-block;
  padding: 4px 22px;
  border-radius: 24px;
  font-size: var(--font-size08);
  color: #fff;
}

.event__archive__wrap__inner__status {
  display: flex;
  justify-content: flex-start;
  gap: 1vw;
  align-items: center;
}

.event__archive__status.reception {
  background-color: #fff;
  border: 1px solid #ed1e79;
  color: #ed1e79;
}
.event__archive__status.end {
  background-color: #e6e6e6;
  border: 1px solid #000000;
  color: #000;
}

.event__archive__wrap__inner--h3 {
  font-size: var(--font-size10);
  font-weight: 100;
}

@media (max-width: 768px) {
  .event__archive__wrap {
    width: calc(100% - 10%);
  }
  .event__archive-section__main {
    padding: 22vh 0 0vh 0;
  }
}

/*============
  Recruit
  =============*/

.recruit-contents__section__first {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 220px 0;
  position: relative;
}

.recruit-contents {
  margin: 0 auto;
}

.recruit-contents__section__first--image {
  margin: 0px auto 0;
  display: block;
  width: 100%;
}

.recruit-contents__section__second__inner {
  margin: 9vh auto;
}

.recruit-contents__section__first--txt {
    position: absolute;
    top: 62%;
    width: 60%;
    z-index: 0;
    left: 0px;
}
.recruit-contents__section__second {
  width: calc(100% - 10%);
  margin: 0 auto;
  max-width: 1000px;
}
.recruit-contents__section__second__inner--h1 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(2rem, calc(1.8rem + 0.9vw), 3.25rem);
  font-weight: 600;
  position: absolute;
  top: 88%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.recruit-contents__section__second__inner__wrap {
  max-width: 1000px;
  margin: 0 auto;
}

.recruit-contents__section__third--image {
  max-width: 200px;
  width: 100%;
}

.recruit-contents__section__third {
  display: flex;
  align-items: center;
  gap: 1vw;
}

@media (max-width: 768px) {
  .recruit-contents__section__third {
    display: flex;
    align-items: center;
    gap: 2vw;
    justify-content: flex-end;
  }
.recruit-contents__section__second__inner--h1 {
    top: 78%;
    white-space: nowrap;
}
}

.recruit--img {
  margin: 0 auto;
  max-width: 385px;
  display: block;
}

.recruit--h3 {
  font-family: Noto Sans JP;
  font-size: clamp(0.75rem, calc(0.71rem + 0.18vw), 1rem);
  line-height: 38px;
  letter-spacing: 0.32px;
  font-weight: 400;
  max-width: 1020px;
  margin: 0 auto;
  text-align: center;
}

.recruit {
  position: relative;
}

.recruit--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 33px auto 0px;
  display: flex;
  text-align: center;
  top: -22vh;
  font-weight: 600;
  height: 58px;
}

.recruit--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

@media (max-width: 768px) {
  .recruit {
    position: relative;
    padding: 0px 0 34vh 0;
  }

  .recruit--img {
    margin: 0 auto;
    max-width: 212px;
    display: block;
  }

  .recruit--h3 {
    text-align: left;
    width: calc(100% - 10%);
    font-size: clamp(0.56rem, calc(7.49rem + 0.31vw), 1rem);
    line-height: 2;
    letter-spacing: 0.32px;
  }
}

.recruit-contents__pillar {
  text-align: center;
  margin: 4rem auto;
  max-width: 800px;
}

.recruit-contents__pillar__item {
  margin-bottom: 3rem;
}

.recruit-contents__pillar__number {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  font-weight: 100;
  border: 2px solid #0033cc;
  border-radius: 50%;
  background-color: #0033cc;
  color: #fff;
  width: 2rem;
  height: 2rem;
  line-height: 1.5rem;
  display: inline-block;
  margin-bottom: 1rem;
}

.recruit-contents__pillar__title {
  font-family: Noto Sans JP;
  font-size: var(--font-size19);
  font-weight: bold;
  color: #2e3192;
  margin-bottom: 0.5rem;
}

.recruit-contents__pillar__text {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  color: #000;
  line-height: 1.7;
}

.recruit-contents__benefits--sapn2 {
  font-family: Noto Sans JP;
  font-size: clamp(1rem, calc(0.92rem + 0.36vw), 1.5rem);
  letter-spacing: 4px;
  font-weight: 400;
  white-space: nowrap;
}
.recruit-contents__pillar--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  color: #2e3192;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
}

/*============
 Qa
  =============*/

.recruit-contents__qa__answer {
  display: none;
  padding: 1rem;
  background: #f9f9f9;
}
.recruit-contents__qa__answer.is-open {
  display: flex;
}
.recruit-contents__qa__answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease;
  background-color: #f9f9f9;
  padding: 0 1rem;
}

.recruit-contents__qa__item.is-open .recruit-contents__qa__answer {
  /* paddingはJSでmax-heightに含まれないので、常に設定 */
  padding: 1rem;
}
/* 必須 */
.recruit-contents__accordion-content {
  display: none;
}
.recruit-contents__accordion-header:nth-child(4n + 1),
.recruit-contents__accordion-header:nth-child(4n + 2) {
  background-color: #f5ebdd; /* 奇数行 */
}

.recruit-contents__accordion-header:nth-child(4n + 3),
.recruit-contents__accordion-header:nth-child(4n + 4) {
  background-color: #e2c6bb; /* 偶数行：お好みで色変更 */
}
.recruit-contents__accordion-header {
  padding: 12px 45px 10px 20px;
  margin: 10px 0 0;
  transition: background 0.3s ease;
  cursor: pointer;
  position: relative;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto 10px;
  height: 134px;
  display: flex;
  align-content: center;
  align-items: center;
  gap: 3vw;
}
.recruit-contents__accordion-content {
  padding: 12px 45px 10px 20px;
  margin: 10px 0 0;
  transition: background 0.3s ease;
  cursor: pointer;
  position: relative;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto 10px;
  align-content: center;
  align-items: center;
}
.recruit-contents__accordion-content--flex {
  display: flex;
  align-items: center;
}

.recruit-contents__accordion-header::before,
.recruit-contents__accordion-header::after {
  position: absolute;
  content: '';
  top: 1px;
  right: 20px;
  bottom: 0;
  width: 30px;
  height: 2px;
  margin: auto;
  background: #151e2f;
}
.recruit-contents__accordion-header::after {
  transform: rotate(-90deg);
  transition: transform 0.3s;
}
.recruit-contents__accordion-header.active::after {
  transform: rotate(0deg);
}

.recruit-contents__accordion-content {
  background-color: #fff;
  padding: 12px 20px 10px;
  gap: 3vw;
}

.recruit-contents__accordion-header--q {
  font-size: var(--font-size19);
  font-family: 'Noto Serif JP', serif;
  position: relative;
  color: #2e3192;
}
.recruit-contents__accordion-header--qtext {
  font-size: var(--font-size09);
  font-family: 'Noto Serif JP', serif;
  padding-left: 25px;
  position: relative;
  color: #2e3192;
}
.recruit-contents__accordion-header--a {
  font-size: var(--font-size19);
  font-family: 'Noto Serif JP', serif;
  position: relative;
  color: #c1272d;
}

.recruit-contents__accordion-header--atxt {
  font-size: var(--font-size09);
  font-family: Noto Sans JP;
  padding-left: 25px;
  position: relative;
  color: #000;
}

/* hover */
.recruit-contents__accordion-header:hover {
  background-color: #f2f2f2;
}

.recruit-contents__benefits {
  font-size: var(--font-size19);
  max-width: 998px;
  margin: 70px auto 0;
  text-align: center;
  border: 2px solid #e2c6bb;
  border-radius: 12px;
  padding: 44px;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
  gap: 3vw;
}

.recruit-contents__benefits--sapn {
  letter-spacing: 5px;
  font-size: 42px;
}
.recruit-contents__benefits--img {
  display: block;
  width: 100%;
}

.recruit-contents__qa--img {
  max-width: 168px;
  margin: 2.9vh auto 0;
  display: block;
  width: 100%;
}

p.recruit-contents__qa--p {
  text-align: center;
}
.recruit-contents__qa {
  margin: 8vh auto 0;
}

.recruit-contents__accordion {
  margin: 2vh 0 0 0;
}

.recruit-contents__btnwrap {
  margin: 13vh 0;
}
.recruit-contents__btnwrap--btn {
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #e889a4;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 33px auto 0px;
  display: flex;
  text-align: center;
  z-index: 1;
  font-weight: 600;
  height: 58px;
}

.recruit-contents__btnwrap--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

.oneday--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}
/*============
  Benefits
  =============*/

.benefits-contents__section__first {
  padding: 22vh 0 6vh 0;
  max-width: 1000px;
  margin: 0 auto;
  width: calc(100% - 10%);
}
.benefits-contents__section__first__inner--h1 {
  font-family: 'Noto Serif JP', serif;
  text-align: left;
  color: #2e3192;
  font-size: clamp(2.5rem, calc(2.36rem + 0.63vw), 3.375rem);
  font-weight: 600;
  margin: 0 auto;
}

.benefits-contents__section__first__inner--p {
  font-family: Noto Sans JP;
  text-align: left;
  color: #000;
  font-size: var(--font-size09);
  font-weight: 400;
  margin: 0 auto;
}

.benefits-contents {
  margin: 0 auto;
}

.benefits-contents__section__secound {
  width: calc(100% - 10%);
  margin: 0 auto;
  max-width: 1000px;
}

.benefits-contents__section__secound__inner {
  margin: 9vh auto;
}

.benefits-contents__section__secound__inner--h2 {
  font-family: Noto Sans JP;
  text-align: left;
  color: #000000;
  font-size: var(--font-size18);
  font-weight: 400;
}

.benefits-contents__section__secound__inner__wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 1000px;
  margin: 0 auto;
}

.benefit-card {
  background-color: #fefaf5;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
  width: calc(50% - 15px);
  box-sizing: border-box;
  max-width: 480px;
}

.benefit-card__icon {
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  flex-shrink: 0;
}

.benefit-card__icon--transport {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-train.png');
}

.benefit-card__icon--night {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-night.png');
}

.benefit-card__icon--position {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-position.png');
}

.benefit-card__icon--qualification {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-license.png');
}

.benefit-card__content {
  flex: 1;
}

.benefit-card__title {
  font-family: Noto Sans JP;
  font-size: var(--font-size14);
  margin-bottom: 5px;
  font-weight: 400;
  margin: 0;
}

.benefit-card__text {
  margin: 0;
  font-size: var(--font-size09);
}

.benefit-card__list__wrap {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}

.benefit-card__list {
  margin: 0;
  font-size: var(--font-size08);
}

.benefit-card__list-item {
  margin-bottom: 4px;
}

@media (max-width: 768px) {
  .benefit-card {
    width: 100%;
  }
}

.benefits-contents__section__third {
  width: calc(100% - 10%);
  margin: 0 auto;
  max-width: 1000px;
  padding-top: 5vh;
}

.benefits-contents__section__third__inner--h2 {
  font-family: Noto Sans JP;
  text-align: left;
  color: #000000;
  font-size: var(--font-size18);
  font-weight: 400;
}

.benefits-contents__section__third__wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(474px, 1fr));
  gap: 20px;
}

.system-card {
  background-color: #fefaf5;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.system-card__icon {
  width: 153px;
  width: 60px;
  height: 60px;
  background-size: cover;
  background-repeat: no-repeat;
  background-size: contain;
}

/* それぞれアイコンを設定（画像は任意パスに差し替え） */
.system-card__icon--housing {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-housing.png');
}

.system-card__icon--meal {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-meal.png');
}

.system-card__icon--ai {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-ai.png');
}

.system-card__icon--training {
  background-image: url('https://palglad.net/recruit/wp-content/uploads/images/icon-training.png');
}

.system-card__text {
  font-size: var(--font-size09);
  line-height: 1.6;
  font-family: Noto Sans JP;
}

.benefits-contents__section__fourth {
  margin: 111px 0;
}

.benefits-event-btn {
  align-items: center;
  justify-content: center;
  padding: 14px 24px;
  font-size: var(--font-size09);
  color: #fff;
  text-decoration: none;
  background-color: #e889a4;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 0px auto 0px;
  display: flex;
  text-align: center;
}

.benefits-event-btn__icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

@media (max-width: 768px) {
  .benefits-contents__section__third__wrap {
    grid-template-columns: 1fr;
  }
}
/*============
  Company
  =============*/

.company-contents__section__first {
  background: linear-gradient(
    to right,
    #f7ebdf 0%,
    #f7ebdf 50%,
    #fff 50%,
    #fff 100%
  );
  padding: 140px 0 74px 0;
  position: relative;
}

.company-contents {
  margin: 0 auto;
}

.company-contents__section__first--image {
  margin: 0px auto 0;
  display: block;
  width: 100%;
}
.company-contents__section__first--txt {
  position: absolute;
  bottom: 255px;
  width: 80%;
}

.company-contents__section__second__inner {
  margin: 9vh auto 0;
}

.company-contents__section__second {
  width: calc(100% - 10%);
  margin: 0 auto;
  max-width: 1000px;
}
.company-contents--name {
  margin: 143px 0 0 0;
}
.company-contents__section--p {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-size: var(--font-size16);
}

.company-contents__section__second__inner--h1 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  color: #2e3192;
  font-size: clamp(2rem, calc(1.8rem + 0.9vw), 3.25rem);
  font-weight: 600;
  margin: 10px auto 0;
  letter-spacing: 4px;
}

.company-contents__section__second__inner__wrap {
  max-width: 1000px;
  margin: 0 auto;
}

.company-contents__section__third--image {
  max-width: 200px;
  width: 100%;
}

.company-contents__section__third {
  display: flex;
  align-items: center;
  gap: 1vw;
}

@media (max-width: 768px) {
  .company-contents__section__third {
    display: flex;
    align-items: center;
    gap: 2vw;
    justify-content: flex-end;
  }
}
.company--img {
  margin: 0 auto;
  max-width: 385px;
  display: block;
}

.company--h3 {
  font-family: Noto Sans JP;
  font-size: clamp(0.75rem, calc(0.71rem + 0.18vw), 1rem);
  line-height: 38px;
  letter-spacing: 0.32px;
  font-weight: 400;
  max-width: 1020px;
  margin: 0 auto;
  text-align: center;
}

.company {
  position: relative;
}

.company--btn {
  align-items: center;
  justify-content: center;
  border: 1px solid #2c2fae;
  padding: 12px 24px;
  font-size: var(--font-size09);
  color: #000;
  text-decoration: none;
  background-color: #fff;
  transition: 0.3s;
  gap: 16px;
  position: relative;
  width: 100%;
  max-width: 318px;
  margin: 33px auto 0px;
  display: flex;
  text-align: center;
  top: -22vh;
  font-weight: 600;
  height: 58px;
}

.company--btn--icon {
  display: inline-block;
  background: #000;
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-size: var(--font-size10);
  font-weight: bold;
  transition: 0.3s;
}

@media (max-width: 768px) {
  .company {
    position: relative;
    padding: 0px 0 34vh 0;
  }

  .company--img {
    margin: 0 auto;
    max-width: 212px;
    display: block;
  }
  .company-contents__section__first--txt {
    bottom: 290px;
  }
  .company--h3 {
    text-align: left;
    width: calc(100% - 10%);
    font-size: clamp(0.56rem, calc(7.49rem + 0.31vw), 1rem);
    line-height: 2;
    letter-spacing: 0.32px;
  }
}

.company-contents__pillar {
  text-align: center;
  margin: 4rem auto;
  max-width: 800px;
}

.company-contents__pillar__item {
  margin-bottom: 3rem;
}

.company-contents__pillar__number {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  font-weight: 100;
  border: 2px solid #0033cc;
  border-radius: 50%;
  background-color: #0033cc;
  color: #fff;
  width: 2rem;
  height: 2rem;
  line-height: 1.5rem;
  display: inline-block;
  margin-bottom: 1rem;
}

.company-contents__pillar__title {
  font-family: Noto Sans JP;
  font-size: var(--font-size19);
  font-weight: bold;
  color: #2e3192;
  margin-bottom: 0.5rem;
}

.company-contents__pillar__text {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  color: #000;
  line-height: 1.7;
}

.company-contents__benefits--sapn2 {
  font-family: Noto Sans JP;
  font-size: clamp(1rem, calc(0.92rem + 0.36vw), 1.5rem);
  letter-spacing: 4px;
  font-weight: 400;
  white-space: nowrap;
}
.company-contents__pillar--p {
  font-family: Noto Sans JP;
  font-size: var(--font-size10);
  color: #2e3192;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
}

.company-contents__overview {
  margin: 4rem 1rem 0;
}

.company-contents__overview__wrap {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}

.company-contents__overview--title {
  font-size: var(--font-size20);
  font-family: 'Noto Serif JP', serif;
  color: #2e3192;
  font-weight: 600;
  margin: 0 0 24px 0;
}

.company-contents__overview--list {
  font-family: Noto Sans JP;
  display: grid;
  grid-template-columns: max-content 1fr;
  row-gap: 0rem;
  column-gap: 0rem;
  font-weight: 400;
width: 100%;
}

.company-contents__overview--list dt {
  font-weight: 400;
  border-top: 1px solid #000;
  padding: 20px 0;
  font-size: var(--font-size08);
}
.company-contents__overview--list dd {
  margin: 0;
  padding: 20px 0 20px 24px;
  font-size: var(--font-size08);
  border-top: 1px solid #000;
}
.underline{
border-bottom: 1px solid #000;
}
.company-contents__offices {
  margin: 0rem 1rem;
  font-family: Noto Sans JP;
  font-size: var(--font-size08);
  border: 1px solid #000;
  padding: 20px;
  border-radius: 12px;
}
.company-contents__offices--title {
  margin-bottom: 2rem;
  border-left: 5px solid #333;
  padding-left: 1rem;
}

.company-contents__offices--grid {
  display: grid;
  gap: 0.5rem;
  margin-bottom: 0rem;
}
.company-contents__offices--grid.grid-2 {
  grid-template-columns: repeat(3, 1fr);
  padding: 0 0 20px 0;
}
.company-contents__offices
  > .company-contents__offices--grid.grid-2:first-of-type {
  border-bottom: 1px solid #000;
}
.company-contents__offices--grid.grid-3 {
  grid-template-columns: repeat(3, 1fr);
  border-bottom: 1px solid #000;
  padding: 0 0 20px 0;
}

.office-block__title {
  margin-bottom: 0.5rem;
  font-weight: 400;
  font-size: var(--font-size08);
}

.office-block ul {
  margin: 0;
   padding-left: 0rem;
}
.office-block li {
  margin-bottom: 0.5rem;
}
.company-contents__history {
  margin: 4rem 1rem;
}
.company-contents__history--title {
  font-size: var(--font-size20);
  font-family: 'Noto Serif JP', serif;
  color: #2e3192;
  font-weight: 600;
  margin: 0 0 24px 0;
}
.company-contents__history--list {
  font-family: Noto Sans JP;
  font-size: var(--font-size08);
  list-style: none;
  padding: 0;
  margin: 0;
}
.company-contents__history--list li {
  padding: 2rem 0;
  border-top: 1px solid #ccc;
  display: flex;
  gap: 2rem;
}

.company-contents__history--list li:last-child {
  border-bottom: 1px solid #ccc;
}

.company-contents__history--list .year {
  display: inline-block;
  width: 3rem;
  font-weight: 400;
}

/* スマホ対応（任意） */
@media screen and (max-width: 768px) {
  .company-contents__offices--grid.grid-2,
  .company-contents__offices--grid.grid-3 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .company-contents__overview__wrap {
    gap: 0px;
    align-items: flex-start;
    flex-direction: column;
  }
.company-contents__overview__wrap > .company-contents__overview--list:first-of-type {
margin:0 0 0 0;
}
.company-contents__overview--list {
    margin: 0 0 40px 0;
}

}

/*============
  Policy
  =============*/

.policy-contents__section__second__inner {
  max-width: 990px;
  margin: 0 auto;
}

.policy-contents {
  max-width: 990px;
  margin: 260px auto 0;
}
.policy-contents__section__second__inner--h1 {
  font-family: Noto Sans JP;
  font-size: var(--font-size20);
  text-align: center;
}

.policy-content--h3 {
  font-family: Noto Sans JP;
  margin: 0 auto;
  font-weight: 400;
  font-size: var(--font-size10);
}

.policy-content__title {
  margin-bottom: 1rem;
  font-family: Noto Sans JP;
  margin: 28px auto 6px;
  font-weight: 400;
  font-size: var(--font-size10);
}

.policy-content {
  font-size: var(--font-size10);
  max-width: 800px;
  margin: 0 auto;
  padding: 2rem 1rem;
  font-family: 'Helvetica Neue', Arial, sans-serif;
  line-height: 1.8;
  color: #333;
}

.policy-content__section {
  margin-bottom: 2.5rem;
}

.policy-content__text {
  font-size: var(--font-size10);
  margin-top: 1rem;
  margin: 1rem 0 0.5rem;
}

.policy-content__list {
  padding-left: 1.5rem;
  list-style-type: disc;
  margin: 0;
}

.policy-content__list-item {
  margin-bottom: 0.2rem;
  font-size: var(--font-size10);
}
@media (max-width: 768px) {
  .policy-contents {
    margin: 160px auto 0;
  }
}

/*============
  News
  =============*/

.post-single {
  max-width: 1000px;
  margin: 10rem auto 0;
  width: calc(100% - 10%);
  padding: 0rem 0 5em 0;
}

 {
  font-family: Noto Sans JP;
  background-color: #29abe2;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
  margin: 10px auto;
}

.recruit_news {
  font-family: Noto Sans JP;
  background-color: #00a99d;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
  margin: 10px auto;
}

.post-title {
  font-family: Noto Sans JP;
  font-weight: 400;
  text-align: left;
  margin: 0 auto 2rem;
}

.entry-meta {
  font-size: 1rem;
  margin: 0 0 1rem 0;
  letter-spacing: 1px;
}

.post-navigation {
  margin: 100px 0 1.5em;
}

.nav-previous a {
  font-family: Noto Sans JP;
  color: #0075c2;
}
.nav-next a {
  font-family: Noto Sans JP;
  color: #0075c2;
}
.news-archive {
  max-width: 1000px;
  width: calc(100% - 10%);
  margin: 145px auto 100px;
  padding: 0px 0 33px 0;
}

.news--h1 {
  font-family: Noto Sans JP;
  font-weight: 400;
  text-align: left;
  font-size: var(--font-size19);
  margin: 0 0 138px 0;
}

.news-archive .entry-title.post-title {
  font-family: Noto Sans JP;
  font-weight: 400;
  text-align: left;
  margin: 0 auto 1rem;
  font-size: var(--font-size11);
}
.news-archive .entry-meta {
  font-size: 1rem;
  margin: 0 0 1rem 0;
  letter-spacing: 0px;
  display: flex;
  align-items: center;
  gap: 2vw;
}

.category-recruit_news {
  margin: 0 0 69px 0;
  border-bottom: 1px solid #000;
  padding: 0 0 35px 0;
}

.category-news {
  margin: 0 0 69px 0;
  border-bottom: 1px solid #000;
  padding: 0 0 35px 0;
}

p.category-name.recruit_news {
  font-family: Noto Sans JP;
  background-color: #00a99d;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
  margin: 10px 0;
}

span.entry-meta--date {
  font-family: Noto Sans JP;
  font-size: var(--font-size14);
  margin: 0 0 0px 10px;
}

p.category-name.news {
  font-family: Noto Sans JP;
  background-color: #29abe2;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
  margin: 0 0 10px 0;
}

.news-archive__wrap .category-recruit_news.entry-title.post-title {
  font-family: Noto Sans JP;
  font-weight: 400;
  text-align: left;
  margin: 0 auto 1rem;
  font-size: var(--font-size10);
}

.news-archive__wrap .entry-content {
  font-size: var(--font-size09);
}

span.news-pagination--arrow {
  font-family: Noto Sans JP;
  display: inline-block;
  padding: 0px 12px 0;
  text-decoration: none;
  color: #0075c2;
  font-size: 30px;
  font-weight: 100;
}
.news-pagination a {
  color: #0075c2;
  display: flex;
  align-items: center;
}
.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
}

span.news-pagination--text {
  color: #0075c2;
}

/*============
 contact
  =============*/

.contact-contents {
  max-width: 1000px;
  width: calc(100% - 10%);
  margin: 175px auto 0;
}
.contact-contents__section__second__inner {
  border-bottom: 1px solid #000;
}
.contact-contents__section__second__inner--h3 {
  text-align: center;
  margin: 30px auto;
  font-size: var(--font-size09);
  padding: 20px 0;
  border-bottom: 1px solid #000;
}

/* フォーム全体 */

.contact-form {
  max-width: 600px;
  margin: 0 auto;
  font-family: 'Helvetica Neue', sans-serif;
  font-size: var(--font-size09);
  color: #333;
}

.contact-form__inner {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 30px auto;
}
.contact-form__inner2 {
  display: flex;
  justify-content: center;
}
.contact-form__inner3 {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 30px auto;
}

.contact-form__inner__title {
  width: 190px;
  text-align: right;
}

/* ラベルと各項目の間隔 */

.contact-form__inner__title2 {
  width: 190px;
  position: relative;
  left: -90px;
}

.contact-form--span {
  font-size: var(--font-size09);
  font-weight: 600;
}
span.required {
  font-size: var(--font-size09);
  color: #ff0000;
}
.contact-form--p {
  font-size: var(--font-size08);
  text-align: left;
  margin: 10px 0 0 0;
  font-weight: 600;
}

/* テキスト、メール、電話、テキストエリアの共通スタイル */
.contact-form input[type='text'],
.contact-form input[type='email'],
.contact-form input[type='tel'],
.contact-form textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  transition: border-color 0.3s ease;
}

.contact-form input[type='text']:focus,
.contact-form input[type='email']:focus,
.contact-form input[type='tel']:focus,
.contact-form textarea:focus {
  border-color: #e91e63;
  outline: none;
}

/* 郵便番号部分：横並び */
.contact-form .zip {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 20px;
}

.contact-form .zip input {
  width: 90px;
  text-align: center;
   font-size: var(--font-size12);
}
/* 都道府県・市区町村・番地 */
.contact-form input.p-region,
.contact-form input.p-locality,
.contact-form input.p-extended-address {
  width: 100%;
}

/* チェックボックス同意 */
.contact-form .wpcf7-acceptance {
  display: flex;
  align-items: center;
  margin-top: 10px;
}

.contact-form .wpcf7-acceptance label {
  margin-left: 6px;
  font-size: var(--font-size08);
}

.contact-form .wpcf7-acceptance a {
  color: #0000ff;
  text-decoration: underline;
}
span.policy-span {
  color: #000;
}
/* テキストエリア */
.contact-form textarea {
  min-height: 140px;
  resize: vertical;
}

.contact-form input[type='submit'] {
  background-color: #e91e63;
  color: #fff;
  font-size: 14px;
  padding: 16px 24px;
  border: none;
  cursor: pointer;
  width: 100%;
  transition: background-color 0.3s ease;
  max-width: 450px;
  margin: 110px 0 110px auto;
  height: 80px;
}

.contact-form input[type='submit']:hover {
  background-color: #c2185b;
}

input::placeholder,
textarea::placeholder {
  color: #999;
  font-size: 14px;
  opacity: 1; /* Firefox用 */
}

/* フォーカス時に薄くする例（任意） */
input:focus::placeholder,
textarea:focus::placeholder {
  color: #ccc;
}
.wpcf7-list-item {
  display: inline-block;
  margin: 0 !important;
}

select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required {
  color: #ed1e79;
}
@media (max-width: 768px) {
  .contact-form__inner {
    display: flex;
    gap: 10px;
    margin: 30px auto;
    flex-direction: column;
    align-items: flex-start;
  }
  .contact-form__inner__title {
    width: 140px;
    text-align: left;
  }
  .contact-form__inner3 {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 30px auto 0;
    flex-direction: column;
  }
  .contact-form__inner__title2 {
    width: 160px;
    text-align: left;
    position: relative;
    left: 0px;
  }
  .contact-form__inner2 {
    display: flex;
    justify-content: flex-start;
  }
}


.contact--thanks {
    border: 1px solid #000;
    padding: 20px;
    margin: 40px 0;
}

.contact--thanks__wrap{

}

.contact--thanks__wrap--h1 {
font-family: Noto Sans JP;
    text-align: center;
    font-size: var(--font-size11);
}

h2.contact--thanks__wrap--h2 {
font-family: Noto Sans JP;
    text-align: center;
}

.contact--thanks__wrap--p {
    font-family: Noto Sans JP;
    font-size: var(--font-size08);
    text-align: center;
    margin: 40px auto;
}

.contact--thanks--btn__wrap{
margin: 4vh 0;
}

a.contact--thanks--btn {
    display: block;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    max-width: 238px;
    width: 100%;
    margin: auto;
    padding: 2rem 4rem;
   font-weight: bold; 
    color: #fff;
    transition: 0.5s;
    font-size: var(--font-size11);
    background-color: #999999;
}

a.contact--thanks--btn:hover {
	color: #fff;
	background: #d2d2d2;
}


/*============
 404
  =============*/

section.error-404.not-found {
  max-width: 1000px;
  width: calc(100% - 10%);
  margin: 160px auto;
}

/*============
  Margin
  =============*/

.mt_60 {
  margin-top: 60px !important;
}
.margin_80 {
  margin-top: 80px !important;
}

/*============
  Breakpoint
  =============*/

@media (max-width: 430px) {
}

@media (max-width: 768px) {
}

@media (min-width: 768px) and (max-width: 1024px) {
}

@media (min-width: 1025px) and (max-width: 1279px) {
}

@media (min-width: 1280px) {
}
