@charset "UTF-8";

/*
Theme Name: 大阪府社会福祉協議会 1.00
Theme URI:
Author: 大阪府社会福祉協議会
Author URI:
Description: 大阪府社会福祉協議会 WordPress Themes
Version: 1.00
License:
License URI:
*/
/**
 * Reset
 * https://unpkg.com/modern-css-reset/dist/reset.min.css
 * ==========================================================================
 */
*,
*::before,
*::after {
 box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
 margin: 0;
}

body {
 min-height: 100vh;
 text-rendering: optimizeSpeed;
 line-height: 1.5;
}

a {
 text-decoration: none;
 color: inherit;
}

a:not([class]) {
 -webkit-text-decoration-skip: ink;
 text-decoration-skip-ink: auto;
}

img,
picture {
 max-width: 100%;
 display: block;
}

input,
button,
textarea,
select {
 font: inherit;
}

button {
 outline: none;
 border: none;
 cursor: pointer;
}

a {
 text-decoration: none;
 color: inherit;
}

ul {
 margin: 0;
 padding: 0;
 list-style: none;
}

/**
 * Mixin
 * ==========================================================================
 */
/**
 * Base
 * ==========================================================================
 */
/**
 * Variable
 */
:root {
 --color-main: #0D519F;
 --color-text: #333333;
 --color-white: #ffffff;
 --color-gray: #9CA3AF;
 --color-yellow: #F0B73C;
 --color-light_blue: #E6F0F9;
}

/**
 * WordPress
 */
@media screen and (max-width: 600px) {
 html #wpadminbar {
  position: fixed;
 }
}

/**
 * General
 */
html {
 scroll-behavior: smooth;
 scroll-padding-top: 8rem;
 font-size: 62.5%;
 -webkit-text-size-adjust: 100%;
 -moz-text-size-adjust: 100%;
 text-size-adjust: 100%;
}

@media (max-width: 1279px) {
 html {
  scroll-padding-top: 6rem;
 }
}

@media (prefers-reduced-motion: reduce) {
 html:focus-within {
  scroll-behavior: auto;
 }

 *,
 *::before,
 *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
 }
}

body {
 width: 100%;
 min-width: 320px;
 margin: 0 auto;
 overflow-x: hidden;
 word-wrap: break-word;
 line-height: 1.6;
 letter-spacing: 0.04em;
 font-size: 1.6rem;
 font-weight: 500;
 font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
 font-feature-settings: "palt";
 color: var(--color-text);
}

::-moz-selection {
 color: #7D7D7D;
 background: var(--color-main);
}

::selection {
 color: #7D7D7D;
 background: var(--color-main);
}

::-moz-placeholder {
 color: #7D7D7D;
}

::placeholder {
 color: #7D7D7D;
}

/**
 * Utilities
 * ==========================================================================
 */
.u-inside {
 max-width: calc(1080px + 20rem);
 position: relative;
 margin: 0 auto;
 padding: 0 10rem;
}

@media (max-width: 1279px) {
 .u-inside {
  padding: 0 6rem;
 }
}

@media (max-width: 768px) {
 .u-inside {
  padding: 0 2rem;
 }
}

.u-show-mobile {
 display: none;
}

@media (max-width: 768px) {
 .u-show-mobile {
  display: block;
 }
}

@media (max-width: 768px) {
 .u-hide-mobile {
  display: none;
 }
}

.u-illust {
 pointer-events: none;
}

/**
 * Components
 * ==========================================================================
 */
/**
* Button
*/
.c-button {
 min-height: 3.8em;
 padding: 0.8rem 5.4rem;
 display: flex;
 justify-content: center;
 align-items: center;
 text-align: center;
 line-height: 1.4;
 font-size: inherit;
 font-weight: 600;
 border: 2px solid;
 border-radius: 5.6rem;
 box-shadow: 0 0 0.6rem 0 rgba(0, 0, 0, 0.15);
 transition: opacity 0.3s ease;
}

.c-button:hover {
 opacity: 0.7;
}

.c-button.--small {
 min-height: 3.2em;
 padding: 0.4em 2.4em;
}

.c-button.--blue {
 color: var(--color-white);
 background-color: var(--color-main);
 border-color: var(--color-main);
}

.c-button.--blue-rev {
 color: var(--color-main);
 background-color: var(--color-white);
 border-color: var(--color-main);
}

.c-button.--yellow {
 color: var(--color-white);
 background-color: var(--color-yellow);
 border-color: var(--color-yellow);
}

.c-button.--yellow-rev {
 color: var(--color-yellow);
 background-color: var(--color-white);
 border-color: var(--color-yellow);
}

.c-button.--mail::before {
 content: "";
 width: 1.85em;
 height: 1.85em;
 display: inline-block;
 background: url(images/icon-mail.png) no-repeat center/contain;
 margin-right: 0.8rem;
}

.c-button.--tel::before {
 content: "";
 width: 1.85em;
 height: 1.85em;
 display: inline-block;
 background: url(images/icon-tel.png) no-repeat center/contain;
 margin-right: 0.8rem;
}

.c-button.--tel-yellow::before {
 content: "";
 width: 1.85em;
 height: 1.85em;
 display: inline-block;
 background: url(images/icon-tel-yellow.png) no-repeat center/contain;
 margin-right: 0.8rem;
}

.c-button.--search::after {
 content: "";
 width: 1.85em;
 height: 1.85em;
 display: inline-block;
 background: url(images/icon-search.png) no-repeat center/contain;
 margin-left: 1.4rem;
}

.c-button.--arrow::after {
 content: "";
 width: 2em;
 height: 2em;
 display: inline-block;
 background: url(images/icon-arrow.png) no-repeat center/contain;
 margin-left: 2rem;
}

/**
 * Check_list
 */
.c-check_list li {
 display: flex;
 align-items: center;
 gap: 1.2rem;
}

@media (max-width: 1279px) {
 .c-check_list li {
  gap: 1rem;
  font-size: 1.6rem;
 }
}

@media (max-width: 768px) {
 .c-check_list li {
  font-size: 1.5rem;
 }
}

.c-check_list li:not(:first-child) {
 margin-top: 1rem;
}

@media (max-width: 425px) {
 .c-check_list li:not(:first-child) {
  margin-top: 0.4rem;
 }
}

.c-check_list li::before {
 content: "";
 width: 2.4rem;
 height: 2.4rem;
 display: block;
 flex-shrink: 0;
 background: no-repeat center/contain;
}

@media (max-width: 1279px) {
 .c-check_list li::before {
  width: 2rem;
  height: 2rem;
 }
}

.c-check_list.--blue li::before {
 background-image: url(images/icon-check-blue.png);
}

.c-check_list.--yellow li::before {
 background-image: url(images/icon-check-yellow.png);
}

/**
 * CTA
 */
.c-cta {
 display: flex;
 gap: 0.8rem 2.4rem;
 font-size: 1.6rem;
}

@media (max-width: 1279px) {
 .c-cta {
  font-size: 1.5rem;
 }
}

@media (max-width: 768px) {
 .c-cta {
  max-width: 33.5rem;
  margin: 0 auto;
  flex-direction: column;
 }
}

.c-cta.--center {
 justify-content: center;
}

/**
 * Paging
 */
.c-paging {
 margin-top: 10rem;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
}

@media (max-width: 768px) {
 .c-paging {
  margin-top: 6rem;
 }
}

.c-paging ul {
 width: 100%;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 align-items: center;
 gap: 1.2rem;
}

@media (max-width: 768px) {
 .c-paging ul {
  gap: 0.6rem;
 }
}

.c-paging li .page-numbers:not(.dots) {
 width: 4rem;
 height: 4rem;
 padding: 1rem;
 display: flex;
 justify-content: center;
 align-items: center;
 font-size: 1.8rem;
 color: var(--color-text);
 background-color: var(--color-white);
 box-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.3);
 border-radius: 100%;
 transition: color ease 0.3s, background-color ease 0.3s;
}

.c-paging li .page-numbers:not(.dots).current {
 color: var(--color-white);
 background-color: var(--color-main);
}

.c-paging li a.page-numbers:not(.dots):hover {
 color: var(--color-white);
 background-color: var(--color-main);
}

.c-paging li .--prev::before,
.c-paging li .prev::before,
.c-paging li .--next::before,
.c-paging li .next::before {
 content: "";
 width: 0.5em;
 height: 0.5em;
 transform: rotate(45deg);
 transition: border-color ease 0.3s;
}

.c-paging li .--prev:hover::before,
.c-paging li .prev:hover::before,
.c-paging li .--next:hover::before,
.c-paging li .next:hover::before {
 border-color: var(--color-white);
}

.c-paging li .--prev::before,
.c-paging li .prev::before {
 margin-left: 0.3rem;
 border-bottom: 2px solid var(--color-main);
 border-left: 2px solid var(--color-main);
}

.c-paging li .--next::before,
.c-paging li .next::before {
 margin-right: 0.3rem;
 border-top: 2px solid var(--color-main);
 border-right: 2px solid var(--color-main);
}

/**
 * Job_listings_posts
 */
.c-job_listings_posts {
 display: flex;
 justify-content: left;
 flex-wrap: wrap;
 gap: 2.4rem;
}

@media (max-width: 768px) {
 .c-job_listings_posts {
  max-width: 34.4rem;
  margin: 0 auto;

 }
}

.c-job_listings_posts .c-job_listings_posts-item {
 width: calc((100% - 4.8rem) / 3);
}

@media (max-width: 1279px) {
 .c-job_listings_posts .c-job_listings_posts-item {
  width: calc((100% - 2.4rem) / 2);
 }
}

@media (max-width: 768px) {
 .c-job_listings_posts .c-job_listings_posts-item {
  width: 100%;
 }
}

.c-job_listings_posts-item {
 overflow: hidden;
 border-radius: 1rem;
}

.c-job_listings_posts-item a {
 display: block;
 transition: opacity 0.3s ease;
}

.c-job_listings_posts-item a:hover {
 opacity: 0.7;
}

.c-job_listings_posts-item__inner {
 height: 100%;
 display: flex;
 flex-direction: column;
}

.c-job_listings_posts-item__image {
 width: 100%;
 position: relative;
}

.c-job_listings_posts-item__image::before {
 content: "";
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0;
 right: 0;
 background-color: var(--color-main);
 opacity: 0.7;
}

.c-job_listings_posts-item__imagetext {
 display: flex;
 align-items: center;
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0;
 right: 0;
 z-index: 2;
}

.c-job_listings_posts-item__imagetext p {
 padding: 2.4rem;
 font-size: 2.4rem;
 font-weight: 500;
 color: var(--color-white);
}

@media (max-width: 1279px) {
 .c-job_listings_posts-item__imagetext p {
  font-size: 2.2rem;
 }
}

.c-job_listings_posts-item__contet {
 width: 100%;
 flex-grow: 1;
 padding: 1.6rem 2.4rem 2.4rem;
 background-color: var(--color-white);
}

@media (max-width: 768px) {
 .c-job_listings_posts-item__contet {
  padding: 1.6rem 1.6rem 2rem;
 }
}

.c-job_listings_posts-item__number {
 margin-bottom: 1.2rem;
 font-size: 1.4rem;
}

.c-job_listings_posts-item h2 {
 letter-spacing: 0.06em;
 font-size: 1.8rem;
 color: var(--color-main);
}

.c-job_listings_posts-item-list {
 margin-top: 1.8rem;
}

.c-job_listings_posts-item-list-item {
 padding-left: 3.6rem;
 position: relative;
 font-size: 1.6rem;
 font-weight: 500;
}

@media (max-width: 768px) {
 .c-job_listings_posts-item-list-item {
  padding-left: 3.2rem;
  font-size: 1.5rem;
 }
}

.c-job_listings_posts-item-list-item:not(:first-child) {
 margin-top: 1rem;
}

.c-job_listings_posts-item-list-item::before {
 content: "";
 width: 2.8rem;
 height: 2.8rem;
 display: block;
 position: absolute;
 top: -0.1rem;
 left: 0;
 background: no-repeat center/contain;
}

@media (max-width: 768px) {
 .c-job_listings_posts-item-list-item::before {
  width: 2.4rem;
  height: 2.4rem;
  top: 0;
 }
}

.c-job_listings_posts-item-list-item.--detail::before {
 background-image: url(images/job_listings_posts_icon-detail.png);
}

.c-job_listings_posts-item-list-item.--area::before {
 background-image: url(images/job_listings_posts_icon-area.png);
}

.c-job_listings_posts-item-list-item.--hourly_wage::before {
 background-image: url(images/job_listings_posts_icon-hourly_wage.png);
}

/**
 * Voice_posts
 */
.c-voice_posts {
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 gap: 2.4rem;
}

@media (max-width: 768px) {
 .c-voice_posts {
  max-width: 34.4rem;
  margin: 0 auto;
 }
}

.c-voice_posts .c-voice_posts-item {
 width: calc((100% - 4.8rem) / 3);
}

@media (max-width: 1279px) {
 .c-voice_posts .c-voice_posts-item {
  width: calc((100% - 2.4rem) / 2);
 }
}

@media (max-width: 768px) {
 .c-voice_posts .c-voice_posts-item {
  width: 100%;
 }
}

.c-voice_posts-item {
 overflow: hidden;
 border-radius: 1rem;
}

.c-voice_posts-item a {
 display: block;
 transition: opacity 0.3s ease;
}

.c-voice_posts-item a:hover {
 opacity: 0.7;
}

.c-voice_posts-item__inner {
 height: 100%;
 display: flex;
 flex-direction: column;
}

.c-voice_posts-item__image {
 width: 100%;
 position: relative;
}

.c-voice_posts-item__contet {
 width: 100%;
 flex-grow: 1;
 padding: 1.6rem 2.4rem 2.4rem;
 background-color: var(--color-white);
}

@media (max-width: 768px) {
 .c-voice_posts-item__contet {
  padding: 1.6rem 1.6rem 2rem;
 }
}

.c-voice_posts-item h2 {
 margin-bottom: 1rem;
 letter-spacing: 0.06em;
 font-size: 1.8rem;
 color: var(--color-main);
}

.c-voice_posts-item p {
 font-size: 1.6rem;
}

@media (max-width: 768px) {
 .c-voice_posts-item p {
  font-size: 1.5rem;
 }
}

/**
 * Layouts
 * ==========================================================================
 */
/**
 * Container
 */
.l-container {
 width: 100%;
 overflow-x: hidden;
}

/**
 * Header
 */
.l-header {
 padding: 0 2.5rem;
 display: flex;
 justify-content: space-between;
 align-items: center;
 position: fixed;
 left: 0;
 right: 0;
 z-index: 100;
 background-color: var(--color-white);
 box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.1);
}

@media (max-width: 768px) {
 .l-header {
  padding: 0 1rem;
 }
}

.l-header__logo a {
 padding: 1.5rem;
 display: block;
 transition: opacity 0.3s ease;
}

.l-header__logo a:hover {
 opacity: 0.7;
}

@media (max-width: 768px) {
 .l-header__logo a {
  padding: 1rem;
 }
}

.l-header__logo img {
 height: 5rem;
 display: block;
}

@media (max-width: 768px) {
 .l-header__logo img {
  height: 4rem;
 }
}

.l-global_navi {
 display: flex;
 align-items: center;
 gap: 2.4rem;
}

@media (max-width: 1279px) {
 .l-global_navi {
  height: calc(100dvh - 8rem);
  display: block;
  position: absolute;
  top: 8rem;
  bottom: 0;
  left: 0;
  right: 0;
  overflow-y: scroll;
  background: var(--color-light_blue);
  opacity: 0;
  pointer-events: none;
  transition: height 0s 0.6s, opacity ease 0.5s;
 }
}

@media (max-width: 1279px) and (max-width: 768px) {
 .l-global_navi {
  height: calc(100dvh - 6rem);
  top: 6rem;
 }
}

@media (max-width: 1279px) {
 .--menu-open .l-global_navi {
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0s, 0.1s;
 }
}

.l-global_navi ul {
 display: flex;
}

@media (max-width: 1279px) {
 .l-global_navi ul {
  max-width: 50rem;
  margin: 0 auto;
  padding: 8rem 4rem 6rem;
  display: block;
 }
}

@media (max-width: 768px) {
 .l-global_navi ul {
  max-width: 37.5rem;
  padding: 4rem;
 }
}

.l-global_navi ul li {
 font-size: 1.4rem;
 font-weight: 600;
}

@media (max-width: 1279px) {
 .l-global_navi ul li {
  font-size: 1.6rem;
 }

 .l-global_navi ul li:not(:first-child) {
  border-top: 1px dashed var(--color-main);
 }
}

@media (max-width: 768px) {
 .l-global_navi ul li {
  font-size: 1.5rem;
 }
}

.l-global_navi ul li a {
 padding: 1.2rem;
 display: block;
 transition: opacity 0.3s ease;
}

.l-global_navi ul li a:hover {
 opacity: 0.7;
}

@media (max-width: 1279px) {
 .l-global_navi ul li a {
  padding: 2.4rem 0;
 }
}

.l-global_navi__cta {
 display: flex;
 gap: 0.8rem;
 font-size: 1.4rem;
}

@media (max-width: 1279px) {
 .l-global_navi__cta {
  max-width: 37.5rem;
  margin: 0 auto;
  padding: 0 2rem 16rem;
  flex-direction: column;
  font-size: 1.6rem;
 }
}

@media (max-width: 768px) {
 .l-global_navi__cta {
  font-size: 1.5rem;
 }
}

.l-burger {
 display: none;
 width: 5.2rem;
 height: 5.2rem;
 margin-right: 1.5rem;
 position: relative;
 z-index: 2;
 background-color: var(--color-main);
 border: none;
 border-radius: 100%;
 cursor: pointer;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}

@media (max-width: 1279px) {
 .l-burger {
  display: block;
 }
}

@media (max-width: 768px) {
 .l-burger {
  width: 4rem;
  height: 4rem;
  margin-right: 1rem;
 }
}

.l-burger span {
 height: 0.2rem;
 margin: auto;
 display: block;
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0.8rem;
 right: 0.8rem;
 background-color: var(--color-white);
 transition: transform ease 0.4s;
}

.l-burger span:nth-child(1) {
 transform: translate3d(0, -0.8rem, 0);
}

@media (max-width: 768px) {
 .l-burger span:nth-child(1) {
  transform: translate3d(0, -0.6rem, 0);
 }
}

.l-burger span:nth-child(2) {
 transform: scale3d(0.85, 1, 1);
 transform-origin: left;
}

.--menu-open .l-burger span:nth-child(2) {
 transform: scale3d(0, 1, 1);
 transition-duration: 0.2s;
}

.l-burger span:nth-child(3) {
 transform: translate3d(0, 0.8rem, 0);
}

@media (max-width: 768px) {
 .l-burger span:nth-child(3) {
  transform: translate3d(0, 0.6rem, 0);
 }
}

.--menu-open .l-burger span:nth-child(1) {
 transform: rotate(30deg) translate3d(0, 0, 0);
}

.--menu-open .l-burger span:nth-child(3) {
 transform: rotate(-30deg) translate3d(0, 0, 0);
}

/**
 * Content
 */
.l-content {
 padding-top: 8rem;
}

@media (max-width: 768px) {
 .l-content {
  padding-top: 6rem;
 }
}

.l-content main {
 position: relative;
}

.l-section {
 padding: 8rem 0;
}

.l-section.--light_blue {
 background-color: var(--color-light_blue);
}

.l-headding {
 margin-bottom: 5rem;
}

@media (max-width: 768px) {
 .l-headding {
  margin-bottom: 2.4rem;
 }
}

.l-headding.--center {
 text-align: center;
}

.l-headding__en {
 margin-bottom: 0.8em;
 padding-bottom: 0.3em;
 display: inline-block;
 line-height: 1.2;
 letter-spacing: 0.2em;
 font-size: 1.6rem;
 font-weight: 600;
 font-family: "Poppins", sans-serif;
 color: var(--color-main);
 border-bottom: 1px dashed currentColor;
}

@media (max-width: 768px) {
 .l-headding__en {
  font-size: 1.2rem;
 }
}

.l-headding__title {
 line-height: 1.6;
 font-size: 4rem;
 font-weight: 500;
}

@media (max-width: 1279px) {
 .l-headding__title {
  font-size: 3.6rem;
 }
}

@media (max-width: 768px) {
 .l-headding__title {
  font-size: 3.2rem;
 }
}

@media (max-width: 425px) {
 .l-headding__title {
  font-size: 2.8rem;
 }
}

.l-headding__title.--small {
 font-size: 3.2rem;
}

@media (max-width: 1279px) {
 .l-headding__title.--small {
  font-size: 3rem;
 }
}

@media (max-width: 768px) {
 .l-headding__title.--small {
  font-size: 2.8rem;
 }
}

@media (max-width: 425px) {
 .l-headding__title.--small {
  font-size: 2.4rem;
 }
}

.l-headding.--white .l-headding__en {
 color: var(--color-white);
}

.l-headding__text {
 max-width: 88rem;
 margin: 4rem auto 0;
 text-align: left;
 line-height: 1.8;
 font-size: 1.6rem;
}

@media (max-width: 768px) {
 .l-headding__text {
  margin: 3rem auto 0;
  font-size: 1.5rem;
 }
}

.l-cta {
 padding: 8rem 0;
 background-color: var(--color-main);
}

@media (max-width: 1279px) {
 .l-cta {
  padding: 6rem 0;
 }
}

@media (max-width: 768px) {
 .l-cta {
  padding: 4rem 0;
 }
}

.l-cta-box {
 max-width: 92rem;
 margin: 0 auto;
 padding: 7.4rem 0 6rem;
 position: relative;
 z-index: 2;
 background-color: var(--color-white);
 border-radius: 30rem;
}

@media (max-width: 768px) {
 .l-cta-box {
  border-radius: 1rem;
 }
}

.l-cta-box::before {
 content: "";
 position: absolute;
 top: 0.8rem;
 bottom: 0.8rem;
 left: 0.8rem;
 right: 0.8rem;
 border: 1px dashed var(--color-main);
 border-radius: 30rem;
 pointer-events: none;
}

@media (max-width: 768px) {
 .l-cta-box::before {
  top: 0.4rem;
  bottom: 0.4rem;
  left: 0.4rem;
  right: 0.4rem;
  border-radius: 1rem;
 }
}

@media (max-width: 768px) {
 .l-cta-box {
  padding: 4rem 3rem;
 }
}

.l-cta-box__illust-1,
.l-cta-box__illust-2 {
 width: auto;
 height: 16rem;
 position: absolute;
 top: 8rem;
 z-index: -1;
}

@media (max-width: 1279px) {

 .l-cta-box__illust-1,
 .l-cta-box__illust-2 {
  height: 14rem;
 }
}

@media (max-width: 768px) {

 .l-cta-box__illust-1,
 .l-cta-box__illust-2 {
  height: 8.5rem;
  top: -2rem;
 }
}

.l-cta-box__illust-1 {
 left: 7rem;
}

@media (max-width: 768px) {
 .l-cta-box__illust-1 {
  display: none;
 }
}

.l-cta-box__illust-2 {
 right: 7rem;
}

@media (max-width: 768px) {
 .l-cta-box__illust-2 {
  right: 3rem;
  z-index: 2;
 }
}

@media (max-width: 425px) {
 .l-cta-box__illust-2 {
  right: 2rem;
 }
}

.l-lower_main {
 padding: 8rem 0 10rem;
 background-color: var(--color-light_blue);
}

@media (max-width: 768px) {
 .l-lower_main {
  padding: 4rem 0 6rem;
 }
}

/**
 * Footer
 */
.l-footer {
 position: relative;
 color: var(--color-white);
 background-color: var(--color-main);
}

.l-footer-top {
 padding: 4rem 0;
 position: relative;
 border-bottom: 1px dashed var(--color-white);
}

@media (max-width: 768px) {
 .l-footer-top {
  padding-bottom: 2.4rem;
 }
}

.l-footer-top__to_top {
 width: 6rem;
 position: absolute;
 top: 4rem;
 right: 0;
 transition: opacity 0.3s ease;
}

.l-footer-top__to_top:hover {
 opacity: 0.7;
}

@media (max-width: 768px) {
 .l-footer-top__to_top {
  width: 4rem;
  top: 2rem;
 }
}

.l-footer-top h2 {
 margin-bottom: 2.4rem;
 text-align: center;
 font-size: 2rem;
}

@media (max-width: 768px) {
 .l-footer-top h2 {
  margin-bottom: 1.6rem;
  font-size: 1.8rem;
 }
}

.l-footer-top p {
 margin-top: 0.8rem;
 text-align: center;
 font-size: 1.6rem;
 font-weight: 400;
}

@media (max-width: 768px) {
 .l-footer-top p {
  font-size: 1.5rem;
 }
}

.l-footer-navi {
 padding: 3rem 0 2rem;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 gap: 0 2rem;
 position: relative;
}

@media (max-width: 768px) {
 .l-footer-navi {
  justify-content: flex-start;
  gap: 0;
 }
}

.l-footer-navi li {
 font-size: 1.6rem;
 font-weight: 600;
}

@media (max-width: 768px) {
 .l-footer-navi li {
  font-size: 1.5rem;
 }
}

.l-footer-navi li a {
 padding: 1rem;
 display: block;
 transition: opacity 0.3s ease;
}

@media (max-width: 768px) {
 .l-footer-navi li a {
  padding: 0.6rem;
 }
}

.l-footer-navi li a:hover {
 opacity: 0.7;
}

.l-footer-bottom {
 padding-bottom: 3rem;
 display: flex;
 justify-content: center;
 align-items: center;
 font-size: 1.2rem;
 font-weight: 400;
}

@media (max-width: 768px) {
 .l-footer-bottom {
  flex-direction: column;
 }
}

.l-footer-bottom ul {
 display: flex;
}

@media (max-width: 768px) {
 .l-footer-bottom ul {
  flex-direction: column;
 }
}

.l-footer-bottom ul li {
 position: relative;
}

.l-footer-bottom ul li::after {
 content: "";
 height: 1em;
 position: absolute;
 top: 50%;
 right: 0;
 border-right: 1px solid var(--color-white);
 transform: translateY(-50%);
}

@media (max-width: 768px) {
 .l-footer-bottom ul li::after {
  display: none;
 }
}

.l-footer-bottom ul li a {
 padding: 1rem 2.4rem;
 display: block;
 transition: opacity 0.3s ease;
}

.l-footer-bottom ul li a:hover {
 opacity: 0.7;
}

.l-footer-bottom small {
 margin-left: 2.4rem;
 display: block;
}

@media (max-width: 768px) {
 .l-footer-bottom small {
  margin-left: 0;
 }
}

/**
 * Posts
 * ==========================================================================
 */
/**
 * Posts-archive
 */
#paging .page-numbers:not(.dots) {
 color: #fff;
 background: var(--color-main);
}

#paging .page-numbers:not(.dots).current {
 color: var(--color-main);
 background: #fff;
}

#paging .dots {
 vertical-align: sub;
}

/**
 * Front
 * ==========================================================================
 */
/**
 * Front-view
 */
.p-front-view {
 padding: 8rem 0 6.8rem;
 background: url(images/front/view-bg.webp) no-repeat center/cover;
}

@media (max-width: 1279px) {
 .p-front-view {
  padding: 6rem 0 4.8rem;
 }
}

@media (max-width: 768px) {
 .p-front-view {
  padding: 2rem 0 1rem;
 }
}

.p-front-view .u-inside {
 z-index: 1;
}

.p-front-view__illust {
 width: 30rem;
 position: absolute;
 bottom: 10rem;
 left: 44rem;
 z-index: -1;
}

@media (max-width: 1279px) {
 .p-front-view__illust {
  width: 24rem;
 }
}

@media (max-width: 1024px) {
 .p-front-view__illust {
  bottom: 15rem;
  left: 10rem;
 }
}

@media (max-width: 768px) {
 .p-front-view__illust {
  display: none;
 }
}

.p-front-view__image {
 height: 54rem;
 position: absolute;
 top: 0;
 right: -10rem;
 z-index: -2;
}

@media (max-width: 1279px) {
 .p-front-view__image {
  height: 46rem;
  right: 0;
 }
}

@media (max-width: 1024px) {
 .p-front-view__image {
  max-width: 62rem;
  height: auto;
  margin-top: -24rem;
  margin-left: auto;
  margin-right: 0;
  position: relative;
  right: -6rem;
 }

 .p-front-view__image::after {
  content: "";
  display: block;
  clear: both;
 }
}

@media (max-width: 768px) {
 .p-front-view__image {
  margin-top: 2rem;
  right: -2rem;
 }
}

@media (max-width: 425px) {
 .p-front-view__image {
  margin-top: 1.6rem;
 }
}

.p-front-view__image img {
 height: 100%;
}

@media (max-width: 1024px) {
 .p-front-view__image img {
  width: calc(100% + 6rem);
  max-width: calc(100% + 6rem);
  float: right;
  height: auto;
 }
}

@media (max-width: 1024px) {
 .p-front-view__image img {
  width: calc(100% + 2rem);
  max-width: calc(100% + 2rem);
 }
}

.p-front-view .c-cta {
 margin-top: 4rem;
}

@media (max-width: 1279px) {
 .p-front-view .c-cta {
  margin-top: 3rem;
 }
}

@media (max-width: 1024px) {
 .p-front-view .c-cta {
  justify-content: center;
 }
}

@media (max-width: 768px) {
 .p-front-view .c-cta {
  margin-top: 2rem;
 }
}

.p-front-view-title {
 line-height: 1.4;
 letter-spacing: 0.06em;
 font-size: 5rem;
 font-weight: 600;
 color: var(--color-main);
}

@media (max-width: 1279px) {
 .p-front-view-title {
  font-size: 4rem;
 }
}

@media (max-width: 768px) {
 .p-front-view-title {
  font-size: 3rem;
 }
}

@media (max-width: 425px) {
 .p-front-view-title {
  font-size: 2.8rem;
 }
}

.p-front-view-title__dot {
 display: inline-block;
 border-bottom: 2px dotted currentColor;
}

.p-front-view-title__dot:not(:first-child) {
 margin-top: 0.2em;
}

.p-front-view-title .--l {
 font-size: 1.7em;
 font-weight: 700;
}

.p-front-view-title .--m {
 font-size: 1.4em;
}

.p-front-view-text {
 margin-top: 4rem;
}

@media (max-width: 768px) {
 .p-front-view-text {
  margin-top: 3rem;
 }
}

@media (max-width: 425px) {
 .p-front-view-text {
  margin-top: 2.6rem;
 }
}

.p-front-view-text p {
 margin-bottom: 0.8rem;
 font-size: 1.6rem;
 font-weight: bold;
 color: var(--color-main);
}

.p-front-view-text .c-check_list {
 font-weight: 600;
}

/**
 * Front-news
 */
.p-front-news {
 padding: 4rem 0;
}

.p-front-news_box {
 padding: 2.4rem 4rem;
 display: flex;
 align-items: center;
 gap: 12rem;
 background-color: rgba(255, 255, 255, 0.5);
 border-radius: 1rem;
 box-shadow: 0 0 1.6rem 0 rgba(0, 0, 0, 0.06);
}

@media (max-width: 1279px) {
 .p-front-news_box {
  gap: 8rem;
 }
}

@media (max-width: 1024px) {
 .p-front-news_box {
  display: block;
 }
}

@media (max-width: 768px) {
 .p-front-news_box {
  padding: 2rem;
 }
}

.p-front-news_box .l-headding {
 margin-bottom: 0;
}

@media (max-width: 1024px) {
 .p-front-news_box .l-headding {
  margin-bottom: 2rem;
 }
}

@media (max-width: 768px) {
 .p-front-news_box .l-headding {
  margin-bottom: 1rem;
 }
}

.p-front-news_box ul {
 flex-grow: 1;
}

.p-front-news_box ul li {
 padding: 1.6rem 0;
 display: flex;
 gap: 0 3.2rem;
}

@media (max-width: 768px) {
 .p-front-news_box ul li {
  flex-direction: column;
 }
}

.p-front-news_box ul li:not(:first-child) {
 border-top: 1px dashed var(--color-main);
}

.p-front-news_box ul li time {
 padding-top: 0.1em;
 display: block;
 font-size: 1.5rem;
 font-weight: 600;
 font-family: "Poppins", sans-serif;
 color: var(--color-main);
}

@media (max-width: 768px) {
 .p-front-news_box ul li time {
  font-size: 1.3rem;
 }
}

.p-front-news_box ul li p {
 font-size: 1.6rem;
}

@media (max-width: 768px) {
 .p-front-news_box ul li p {
  font-size: 1.5rem;
 }
}

/**
 * Front-business
 */
.p-front-business {
 padding: 12rem 0;
}

@media (max-width: 1279px) {
 .p-front-business {
  padding: 8rem 0;
 }
}

@media (max-width: 768px) {
 .p-front-business {
  padding: 4rem 0;
 }
}

.p-front-business .c-cta {
 margin-top: 8rem;
}

@media (max-width: 768px) {
 .p-front-business .c-cta {
  margin-top: 7rem;
 }
}

.p-front-business-column {
 display: flex;
 gap: 8rem;
}

@media (max-width: 1279px) {
 .p-front-business-column {
  gap: 4rem;
 }
}

@media (max-width: 1024px) {
 .p-front-business-column {
  flex-direction: column;
 }
}

@media (max-width: 768px) {
 .p-front-business-column {
  gap: 2rem;
 }
}

.p-front-business-column.--reverse {
 flex-direction: row-reverse;
}

@media (max-width: 1024px) {
 .p-front-business-column.--reverse {
  flex-direction: column;
 }
}

.p-front-business-column+.p-front-business-column {
 margin-top: 8rem;
}

@media (max-width: 1024px) {
 .p-front-business-column+.p-front-business-column {
  margin-top: 6rem;
 }
}

@media (max-width: 768px) {
 .p-front-business-column+.p-front-business-column {
  margin-top: 4rem;
 }
}

.p-front-business-column__content {
 flex-grow: 1;
}

.p-front-business-column__content h3 {
 margin-bottom: 4rem;
 padding: 0.4em 1rem;
 text-align: center;
 line-height: 1.4;
 font-size: 2.4rem;
 font-weight: 500;
 color: var(--color-main);
 background-color: var(--color-white);
}

@media (max-width: 768px) {
 .p-front-business-column__content h3 {
  margin-bottom: 1.6rem;
  padding: 0.4em 0.6rem;
  font-size: 2rem;
 }
}

.p-front-business-column__content p {
 line-height: 1.8;
 font-size: 1.6rem;
}

@media (max-width: 768px) {
 .p-front-business-column__content p {
  font-size: 1.5rem;
 }
}

.p-front-business-column__content p:not(:first-child) {
 margin-top: 2.4rem;
}

@media (max-width: 768px) {
 .p-front-business-column__content p:not(:first-child) {
  margin-top: 0.8rem;
 }
}

.p-front-business-column__image {
 width: 48rem;
 flex-shrink: 0;
}

@media (max-width: 1279px) {
 .p-front-business-column__image {
  width: 40rem;
 }
}

@media (max-width: 1024px) {
 .p-front-business-column__image {
  width: 100%;
 }
}

.p-front-business-recommend {
 margin-top: 8rem;
 padding: 3.2rem 8.5rem;
 display: flex;
 align-items: center;
 gap: 1.2rem 4rem;
 position: relative;
 z-index: 2;
 background-color: var(--color-white);
 border-radius: 1rem;
}

@media (max-width: 768px) {
 .p-front-business-recommend {
  border-radius: 1rem;
 }
}

.p-front-business-recommend::before {
 content: "";
 position: absolute;
 top: 0.8rem;
 bottom: 0.8rem;
 left: 0.8rem;
 right: 0.8rem;
 border: 1px dashed var(--color-main);
 border-radius: 1rem;
 pointer-events: none;
}

@media (max-width: 768px) {
 .p-front-business-recommend::before {
  top: 0.4rem;
  bottom: 0.4rem;
  left: 0.4rem;
  right: 0.4rem;
  border-radius: 1rem;
 }
}

@media (max-width: 1024px) {
 .p-front-business-recommend {
  flex-direction: column;
  align-items: flex-start;
 }
}

@media (max-width: 768px) {
 .p-front-business-recommend {
  margin-top: 4rem;
  padding: 2.4rem;
 }
}

.p-front-business-recommend__title {
 width: auto;
 height: 2.4rem;
}

@media (max-width: 768px) {
 .p-front-business-recommend__title {
  height: 2rem;
 }
}

.p-front-business-recommend .c-check_list {
 color: var(--color-main);
}

.p-front-business-recommend__illust {
 width: 4.5rem;
 position: absolute;
 bottom: -2rem;
 left: 2rem;
}

@media (max-width: 768px) {
 .p-front-business-recommend__illust {
  width: 3.3rem;
  bottom: -5rem;
  left: auto;
  right: -0.5rem;
 }
}

/**
 * Front-seminars-counseling
 */
.p-front-seminars-counseling {
 padding: 10rem 0;
 background: url(images/front/seminars-counseling-bg.webp) no-repeat bottom/100%;
}

@media (max-width: 1279px) {
 .p-front-seminars-counseling {
  padding: 8rem 0;
 }
}

@media (max-width: 768px) {
 .p-front-seminars-counseling {
  padding: 4rem 0;
 }
}

.p-front-seminars-counseling__illust {
 width: 20rem;
 position: absolute;
 top: 0;
 right: 10rem;
}

@media (max-width: 1279px) {
 .p-front-seminars-counseling__illust {
  width: 18rem;
  right: 6rem;
 }
}

@media (max-width: 768px) {
 .p-front-seminars-counseling__illust {
  width: 12rem;
  margin-top: -2rem;
  margin-left: auto;
  margin-right: 0;
  position: static;
 }
}

.p-front-seminars-counseling .c-cta {
 margin-top: 8rem;
}

@media (max-width: 768px) {
 .p-front-seminars-counseling .c-cta {
  margin-top: 7rem;
 }
}

.p-front-seminars-counseling-box {
 padding: 8rem;
 border-radius: 2rem;
 background-color: var(--color-light_blue);
}

@media (max-width: 1279px) {
 .p-front-seminars-counseling-box {
  padding: 6rem;
 }
}

@media (max-width: 1024px) {
 .p-front-seminars-counseling-box {
  padding: 3rem;
 }
}

@media (max-width: 768px) {
 .p-front-seminars-counseling-box {
  margin-top: 2rem;
  padding: 2rem;
 }
}

.p-front-seminars-counseling-card {
 display: flex;
 gap: 4rem;
}

@media (max-width: 1024px) {
 .p-front-seminars-counseling-card {
  gap: 2rem;
 }
}

@media (max-width: 768px) {
 .p-front-seminars-counseling-card {
  flex-direction: column;
  gap: 4rem;
 }
}

.p-front-seminars-counseling-card li {
 width: 100%;
 overflow: hidden;
 background-color: var(--color-white);
 border-radius: 1rem;
}

.p-front-seminars-counseling-card li h3 {
 margin-bottom: 1.6rem;
 padding-bottom: 0.3em;
 line-height: 1.4;
 font-size: 2.4rem;
 font-weight: 400;
 color: var(--color-main);
 border-bottom: 1px dashed currentColor;
}

@media (max-width: 1279px) {
 .p-front-seminars-counseling-card li h3 {
  font-size: 2rem;
 }
}

.p-front-seminars-counseling-card li p {
 line-height: 1.8;
 font-size: 1.6rem;
}

@media (max-width: 1279px) {
 .p-front-seminars-counseling-card li p {
  font-size: 1.5rem;
 }
}

.p-front-seminars-counseling-card li p strong {
 font-weight: 500;
 color: var(--color-main);
}

.p-front-seminars-counseling-card__content {
 padding: 2.4rem 4rem 4rem;
}

@media (max-width: 1024px) {
 .p-front-seminars-counseling-card__content {
  padding: 1.8rem 2rem 2rem;
 }
}

/**
 * Front-recruit
 */
.p-front-recruit {
 margin-top: -2rem;
 padding: 8rem 0 12rem;
 background-color: var(--color-main);
 border-radius: 2rem;
}

@media (max-width: 1279px) {
 .p-front-recruit {
  padding: 8rem 0;
 }
}

@media (max-width: 768px) {
 .p-front-recruit {
  margin-top: -1rem;
  padding: 4rem 0;
  border-radius: 1rem;
 }
}

.p-front-recruit__illust {
 width: 14rem;
 position: absolute;
 top: -1rem;
 left: calc(50% - 30rem);
}

@media (max-width: 1279px) {
 .p-front-recruit__illust {
  width: 12rem;
  top: 0;
  left: calc(50% - 25rem);
 }
}

@media (max-width: 768px) {
 .p-front-recruit__illust {
  width: 10rem;
  left: calc(50% - 20rem);
 }
}

@media (max-width: 425px) {
 .p-front-recruit__illust {
  width: 9rem;
  top: 0.5rem;
  left: calc(50% - 16rem);
 }
}

.p-front-recruit section:not(:first-child) {
 margin-top: 12rem;
}

@media (max-width: 1279px) {
 .p-front-recruit section:not(:first-child) {
  margin-top: 8rem;
 }
}

@media (max-width: 768px) {
 .p-front-recruit section:not(:first-child) {
  margin-top: 4rem;
 }
}

.p-front-recruit .l-headding {
 color: var(--color-white);
}

.p-front-recruit .l-headding__en {
 color: var(--color-white);
}

.p-front-recruit-form {
 padding: 4rem 8rem;
 background-color: rgba(255, 255, 255, 0.5);
 border-radius: 1rem;
}

@media (max-width: 1279px) {
 .p-front-recruit-form {
  padding: 4rem;
 }
}

@media (max-width: 768px) {
 .p-front-recruit-form {
  padding: 3rem;
 }
}

@media (max-width: 425px) {
 .p-front-recruit-form {
  padding: 2rem;
 }
}

.p-front-recruit-form__inputs {
 display: flex;
 gap: 1.6rem;
}

@media (max-width: 1024px) {
 .p-front-recruit-form__inputs {
  flex-wrap: wrap;
  gap: 1.2rem;
 }
}

@media (max-width: 768px) {
 .p-front-recruit-form__inputs {
  gap: 0.8rem;
 }
}

.p-front-recruit-form__select {
 position: relative;
}

.p-front-recruit-form__select:nth-child(1) {
 width: 32%;
}

@media (max-width: 1024px) {
 .p-front-recruit-form__select:nth-child(1) {
  width: 100%;
 }
}

.p-front-recruit-form__select:nth-child(2) {
 width: 26%;
}

@media (max-width: 1024px) {
 .p-front-recruit-form__select:nth-child(2) {
  width: 100%;
 }
}

.p-front-recruit-form__select select {
 width: 100%;
 appearance: none;
 -webkit-appearance: none;
 -moz-appearance: none;
 padding: 1.6rem 3.6rem 1.6rem 1.6rem;
 color: var(--color-main);
 background-color: var(--color-white);
 border: 1px solid var(--color-main);
 border-radius: 0.4rem;
 cursor: pointer;
}

.p-front-recruit-form__select::before {
 content: "";
 width: 1rem;
 height: 1rem;
 display: block;
 position: absolute;
 top: calc(50% - 0.75rem);
 right: 2rem;
 border-right: 2px solid var(--color-main);
 border-bottom: 2px solid var(--color-main);
 transform: rotate(45deg);
}

.p-front-recruit-form__input {
 flex-grow: 1;
}

.p-front-recruit-form__input input {
 width: 100%;
 padding: 1.6rem;
 background-color: var(--color-white);
 border: 1px solid var(--color-main);
 border-radius: 0.4rem;
}

.p-front-recruit-form .c-button {
 margin: 4rem auto 0;
}

@media (max-width: 768px) {
 .p-front-recruit-form .c-button {
  margin: 3rem auto 0;
 }
}

@media (max-width: 425px) {
 .p-front-recruit-form .c-button {
  margin: 2rem auto 0;
 }
}

.p-front-recruit-posts {
 position: relative;
}

.p-front-recruit-posts .c-cta {
 margin-top: 6.4rem;
}

@media (max-width: 768px) {
 .p-front-recruit-posts .c-cta {
  margin-top: 4rem;
 }
}

/**
 * Front-access
 */
.p-front-access {
 padding: 8rem 0;
}

@media (max-width: 768px) {
 .p-front-access {
  padding: 4rem 0;
 }
}

.p-front-access-box {
 display: flex;
 overflow: hidden;
 color: var(--color-white);
 background-color: var(--color-main);
 border-radius: 1rem;
}

@media (max-width: 1024px) {
 .p-front-access-box {
  flex-direction: column;
 }
}

.p-front-access-box__content {
 padding: 4rem 8rem 4rem 4rem;
 flex-grow: 1;
 border-radius: 1rem;
}

@media (max-width: 1279px) {
 .p-front-access-box__content {
  padding: 4rem;
 }
}

@media (max-width: 768px) {
 .p-front-access-box__content {
  padding: 2rem;
 }
}

.p-front-access-box__content .l-headding {
 margin-bottom: 3rem;
}

.p-front-access-box__detail li {
 padding: 1.6rem 0;
 display: flex;
 align-items: center;
 gap: 2rem;
 font-size: 1.6rem;
 border-bottom: 1px dashed currentColor;
}

@media (max-width: 768px) {
 .p-front-access-box__detail li {
  display: block;
  font-size: 1.5rem;
 }
}

.p-front-access-box__detail li:first-child {
 border-top: 1px dashed currentColor;
}

.p-front-access-box__detail li p:first-child {
 width: 8rem;
 flex-shrink: 0;
}

.p-front-access-box__detail li p+p {
 font-weight: 400;
}

@media (max-width: 768px) {
 .p-front-access-box__detail li p+p {
  margin-top: 0.8rem;
 }
}

.p-front-access-box img {
 width: 43.8rem;
 flex-shrink: 0;
}

@media (max-width: 1024px) {
 .p-front-access-box img {
  width: 100%;
 }
}

/**
 * Front-voice
 */
.p-front-voice {
 padding: 8rem 0;
}

@media (max-width: 768px) {
 .p-front-voice {
  padding: 4rem 0;
 }
}

.p-front-voice__illust {
 width: 19rem;
 position: absolute;
 top: 0;
 right: 10rem;
}

@media (max-width: 1279px) {
 .p-front-voice__illust {
  width: 16rem;
  right: 6rem;
 }
}

@media (max-width: 768px) {
 .p-front-voice__illust {
  width: 12rem;
  right: 4rem;
 }
}

@media (max-width: 425px) {
 .p-front-voice__illust {
  width: 11rem;
  top: 1rem;
  right: 1rem;
 }
}

.p-front-voice-posts {
 position: relative;
}

/**
 * Lower pages
 * ==========================================================================
 */
/**
 * job-search-result
 */
.p-job-search-result__resulttext {
 margin-bottom: 4rem;
 text-align: center;
 font-size: 1.6rem;
}

@media (max-width: 768px) {
 .p-job-search-result__resulttext {
  margin-bottom: 4rem;
 }
}

.p-job-search-result .c-job_listings_posts-item {
 border: 1px solid var(--color-main);
}

/**
 * Editor-area
 * ==========================================================================
 */
/**
 * Editor root
 */
.editor-area {
 max-width: 1440px;
 margin: 0 auto;
 line-height: 2;
 font-feature-settings: "pwid" 1;
}

.editor-area>p {
 margin: 2em auto;
}

/**
 * Wide & Full & align
 */
.alignwide {
 width: calc(100% + 40rem);
 max-width: calc(100vw - 2rem);
 position: relative;
 left: 50%;
 clear: both;
 transform: translateX(-50%);
}

.alignfull {
 width: 100vw;
 position: relative;
 left: calc(50% - 50vw);
 clear: both;
}

.aligncenter {
 clear: both;
}

.alignleft {
 position: relative;
 left: -8rem;
}

.alignright {
 position: relative;
 right: -8rem;
}

.wp-block-table.alignwide {
 padding: 0 1rem;
}

.wp-block-table.alignfull {
 padding: 0 1rem;
}

.wp-block-table.alignfull table {
 max-width: 1440px;
 margin: 0 auto;
}

.wp-block-table.alignleft {
 float: left;
}

.wp-block-table.alignleft table {
 width: auto;
}

.wp-block-table.alignright {
 float: right;
}

.wp-block-table.alignright table {
 width: auto;
}

.wp-block-table {
 clear: both;
}

.wp-block-table.alignleft,
.wp-block-table.alignright {
 clear: none;
}

/**
 * Styles
 */
.editor-area h1,
.editor-area h2,
.editor-area h3,
.editor-area h4,
.editor-area h5,
.editor-area h6 {
 margin: 1.6em auto;
 line-height: 1.5;
 font-weight: 600;
}

.editor-area h1 {
 margin: 0.4em auto;
}

.editor-area h2 {
 margin: 0.8em auto;
}

.editor-area h3 {
 margin: 1.2em auto;
}

.editor-area .has-drop-cap {
 min-height: 8.4em;
}

.editor-area .has-drop-cap:not(:focus):first-letter {
 margin: 0.25em 0.1em 0 0;
}

.editor-area a {
 text-decoration: underline;
}

.editor-area a:hover {
 text-decoration: none;
}

.editor-area strong {
 font-weight: 600;
}

.editor-area em {
 font-style: italic;
}

.editor-area code {
 padding: 1em 2em;
 display: block;
 color: #fff;
 background: #4a4a4a;
 border-left: 1px solid #1a1a1a;
}

.editor-area img {
 vertical-align: middle;
}

.editor-area kbd {
 background: #eaeaea;
}

.editor-area sup {
 vertical-align: super;
 font-size: smaller;
}

.editor-area sub {
 vertical-align: sub;
 font-size: smaller;
}

.editor-area ul,
.editor-area ol {
 margin: 2em auto;
 padding-left: 0;
}

.editor-area ul {
 list-style: none;
}

.editor-area ol {
 list-style: decimal;
 list-style-position: inside;
}

.editor-area li:not(:first-child) {
 margin-top: 1rem;
}

.editor-area ul li {
 padding-left: 1em;
 position: relative;
}

.editor-area ul li::before {
 content: "・";
 position: absolute;
 top: 0;
 left: 0;
 font-weight: normal;
}

.editor-area .wp-block-quote {
 margin: 2em auto;
}

.editor-area .wp-block-table {
 margin: 2em auto;
}

.editor-area .wp-block-table thead,
.editor-area .wp-block-table tfoot,
.editor-area .wp-block-table th,
.editor-area .wp-block-table td {
 border-color: #ddd;
}

.editor-area .wp-block-table th {
 text-align: left;
 font-weight: 600;
}

.editor-area .wp-block-table figcaption {
 margin: 0.5em auto;
}

.editor-area .wp-block-image {
 margin: 2em auto;
}

.editor-area .wp-block-video {
 margin: 2em auto;
}

/**
* WPCF7
* ==========================================================================
*/
.c-contact {
 width: 100%;
 max-width: 80rem;
 margin: 0 auto;
 padding: 4rem 6rem 1rem;
 line-height: 1.2;
 background-color: var(--color-white);
 border-radius: 1rem;
 box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.1);
}

@media (max-width: 1024px) {
 .c-contact {
  padding: 4rem 4rem 1rem;
 }
}

@media (max-width: 768px) {
 .c-contact {
  padding: 4rem 2rem 0.4rem;
 }
}

.c-contact dl:not(:first-child) {
 margin-top: 2rem;
}

.c-contact dt {
 font-size: 1.8rem;
}

@media (max-width: 1279px) {
 .c-contact dt {
  font-size: 1.6rem;
 }
}

.c-contact dt .required {
 margin-left: 0.8rem;
 padding: 0.3em 0.4em;
 display: inline-block;
 position: relative;
 top: -0.1rem;
 vertical-align: middle;
 line-height: 1;
 font-size: 1.1rem;
 color: var(--color-white);
 background-color: #EE060A;
 border-radius: 0.2rem;
}

.c-contact dd {
 margin-top: 0.8rem;
}

.c-contact input[type=text],
.c-contact input[type=number],
.c-contact input[type=tel],
.c-contact input[type=email],
.c-contact textarea {
 width: 100%;
 padding: 1.6rem;
 font-weight: 400;
 background-color: #F9FAFB;
 border: 1px solid #E5E7EB;
 border-radius: 0.8rem;
}

@media (max-width: 1279px) {

 .c-contact input[type=text],
 .c-contact input[type=number],
 .c-contact input[type=tel],
 .c-contact input[type=email],
 .c-contact textarea {
  font-size: 1.5rem;
 }
}

.c-contact textarea {
 height: 200px;
}

.c-contact .wpcf7-radio {
 padding: 0.4rem 0;
 display: block;
}

@media (max-width: 1279px) {
 .c-contact .wpcf7-radio {
  font-size: 1.5rem;
 }
}

.c-contact .wpcf7-radio .wpcf7-list-item {
 margin: 1.2rem 0;
 display: block;
}

.c-contact .wpcf7-radio input[type=radio] {
 width: 1.2em;
 height: 1.2em;
 margin-top: -0.2rem;
 vertical-align: middle;
}

.c-contact .wpcf7-acceptance .wpcf7-list-item {
 margin: 0;
}

.c-contact .wpcf7-acceptance label {
 display: flex;
 align-items: center;
 gap: 0.6rem;
}

.c-contact .wpcf7-not-valid-tip {
 margin-top: 0.8rem;
 display: inline-block;
}

.c-contact__policy {
 margin-top: 0.8rem;
 font-size: 1.4rem;
}

.c-contact__acceptance {
 margin-top: 2.4rem;
}

@media (max-width: 1279px) {
 .c-contact__acceptance {
  font-size: 1.5rem;
 }
}

.c-contact__continue {
 margin-top: 3rem;
 text-align: center;
 font-size: 1.6rem;
}

.c-contact__continue .c-button {
 width: 28.8rem;
 max-width: 100%;
 margin: 0 auto 1rem;
}

.wpcf7 form .wpcf7-response-output {
 padding: 1.6rem 2rem;
 line-height: 1.5;
}

.wpcf7c-conf {
 background: rgba(0, 0, 0, 0.1);
}

.mail_thanks {
 padding: 30px;
 text-align: center;
 border: 2px solid #000;
}

/*# sourceMappingURL=style.css.map */
