@charset "UTF-8";
/*!
    Template: swell
    Theme Name: SWELL CHILD peta
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
body {
  font-weight: 400;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.f_common {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  font-optical-sizing: auto;
  font-style: normal;
}

.f_min {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-optical-sizing: auto;
  font-style: normal;
}


.fw_400 {
  font-weight: 400 !important;
}

.fw_500 {
  font-weight: 500 !important;
}

.fw_600 {
  font-weight: 600 !important;
}

.fw_700 {
  font-weight: 700 !important;
}

.fw_900 {
  font-weight: 900 !important;
}

#body_wrap:not(.logged-in) .logout_invalid a {
  pointer-events: none;
}
#body_wrap:not(.logged-in) .logout_displaynone {
  display: none;
}

a:hover {
  opacity: 0.7;
  cursor: pointer;
}

.link a {
  word-break: break-all;
}

.w100 img {
  width: 100%;
}

@media print, screen and (min-width: 960px) {
  .w100_pc img {
    width: 100%;
  }
}

@media print, screen and (min-width: 600px) {
  .w90 img {
    width: 90%;
  }
  .w80 img {
    width: 80%;
  }
  .w75 img {
    width: 75%;
  }
  .w70 img {
    width: 70%;
  }
  .w60 img {
    width: 60%;
  }
  .w50 img {
    width: 50%;
  }
  .w40 img {
    width: 40%;
  }
  .w30 img {
    width: 30%;
  }
  .w15 img {
    width: 15%;
  }
}
h2.mtno,
h3.mtno,
h4.mtno,
h5.mtno,
h6.mtno {
  margin-top: 0 !important;
}

.c_theme {
  color: var(--color_main);
}

.c_theme2 {
  color: #FF8D1B;
}

.c_inherit {
  color: inherit;
}

.c_white {
  color: #fff;
}

.bg_theme {
  background-color: var(--color_main);
}

.bg_theme2 {
  background-color: #FF8D1B;
}

.bg_theme3 {
  background-color: #84CF4D;
}

.bg_theme4 {
  background: #FFF4CA;
}

.bg_white {
  background-color: #fff;
}

.bg_black {
  background-color: #333;
}

.bg_line {
  background-color: #03C755;
}

.bg_gra {
  background: linear-gradient(232.26deg, #84CF4D 2.98%, #37B858 97.5%);
}

.bg_beige {
  background: #F4F1EE;
}

.ta_c {
  text-align: center;
}

.ta_r {
  text-align: right;
}

.ta_l {
  text-align: left;
}

.ta_j {
  text-align: justify;
}

.ta_c_pc {
  text-align: left;
}
@media print, screen and (min-width: 960px) {
  .ta_c_pc {
    text-align: center;
  }
}

.ta_l_pc {
  text-align: center;
}
@media print, screen and (min-width: 960px) {
  .ta_l_pc {
    text-align: left !important;
  }
}

.ta_l_tapc {
  text-align: center;
}
@media print, screen and (min-width: 600px) {
  .ta_l_tapc {
    text-align: left !important;
  }
}

.ta_r_pc {
  text-align: center;
}
@media print, screen and (min-width: 960px) {
  .ta_r_pc {
    text-align: right !important;
  }
}

.ta_r_pcta {
  text-align: center;
}
@media print, screen and (min-width: 600px) {
  .ta_r_pcta {
    text-align: right !important;
  }
}

@media print, screen and (max-width: 959px) {
  .ta_l_spta {
    text-align: left;
  }
}

@media print, screen and (max-width: 599px) {
  .ta_l_sp {
    text-align: left;
  }
}

.mr10 {
  margin-right: 10px !important;
}

.mbno {
  margin-bottom: 0 !important;
}

.mtno {
  margin-top: 0 !important;
}

.mt1em {
  margin-top: 1em !important;
}

.mb7 {
  margin-bottom: 7px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

@media print, screen and (max-width: 959px) {
  .mb5_spta {
    margin-bottom: 5px !important;
  }
}

@media print, screen and (max-width: 599px) {
  .mb10_sp {
    margin-bottom: 10px !important;
  }
}

.plno {
  padding-left: 0 !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pl1em {
  padding-left: 1em !important;
}

.pr1em {
  padding-right: 1em !important;
}

.padno {
  padding: 0 !important;
}

.pad_s {
  padding: 1em !important;
}

.pad_ss {
  padding: 0.5em !important;
}

.pad_m {
  padding: 2em !important;
}

.ptno {
  padding-top: 0 !important;
}

.pt2em {
  padding-top: 2em !important;
}

.pt4em {
  padding-top: 4em !important;
}

.pbno {
  padding-bottom: 0 !important;
}

.pb2em {
  padding-bottom: 2em !important;
}

.pb2-4em {
  padding-bottom: 2em !important;
}
@media print, screen and (min-width: 960px) {
  .pb2-4em {
    padding-bottom: 4em !important;
  }
}

.pb4 {
  padding-bottom: 4px !important;
}

.pt2-4em {
  padding-top: 2em !important;
}
@media print, screen and (min-width: 960px) {
  .pt2-4em {
    padding-top: 4em !important;
  }
}

.pt2-3em {
  padding-top: 2em !important;
}
@media print, screen and (min-width: 960px) {
  .pt2-3em {
    padding-top: 3em !important;
  }
}

.pt2em_sp {
  padding-top: 0 !important;
}
@media print, screen and (max-width: 959px) {
  .pt2em_sp {
    padding-top: 2em !important;
  }
}

@media print, screen and (min-width: 960px) {
  .pt4em_pc {
    padding-top: 4em !important;
  }
}

.pd2 {
  padding: 2px !important;
}

.pd5 {
  padding: 5px !important;
}

.pd7 {
  padding: 7px !important;
}

.pd10 {
  padding: 10px !important;
}

.pd15 {
  padding: 15px !important;
}

.pd20 {
  padding: 20px !important;
}

.pd5-10 {
  padding: 5px 10px !important;
}

@media print, screen and (min-width: 960px) {
  .pd30_pc {
    padding: 30px !important;
  }
}

.spview {
  display: none;
}
@media print, screen and (max-width: 599px) {
  .spview {
    display: block;
  }
}

.tapcview {
  display: none;
}
@media print, screen and (min-width: 600px) {
  .tapcview {
    display: block;
  }
}

.taview {
  display: none;
}
@media print, screen and (min-width: 600px) and (max-width: 959px) {
  .taview {
    display: block;
  }
}

.sptaview {
  display: none;
}
@media print, screen and (max-width: 959px) {
  .sptaview {
    display: block;
  }
}

.sppcview {
  display: none;
}
@media print, screen and (max-width: 599px) {
  .sppcview {
    display: block;
  }
}
@media print, screen and (min-width: 960px) {
  .sppcview {
    display: block;
  }
}

.pcview {
  display: block;
}
@media print, screen and (max-width: 959px) {
  .pcview {
    display: none;
  }
}

.pc_lview {
  display: block;
}
@media print, screen and (max-width: 1279px) {
  .pc_lview {
    display: none;
  }
}

.talview {
  display: none;
}
@media print, screen and (max-width: 1279px) {
  .talview {
    display: block;
  }
}
@media print, screen and (max-width: 959px) {
  .talview {
    display: none;
  }
}

.op2 {
  opacity: 0.2;
}

.op3 {
  opacity: 0.3;
}

.op7 {
  opacity: 0.7;
}

@media print, screen and (max-width: 959px) {
  .w5_spta {
    width: 5%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w20_spta {
    width: 20%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w30_spta {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w40_spta {
    width: 40%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w50_spta {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w60_spta {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w70_spta {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w80_spta {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w90_spta {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 959px) {
  .w100_spta {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w10_sp {
    width: 10%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w20_sp {
    width: 20%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w30_sp {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w40_sp {
    width: 40%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w50_sp {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w55_sp {
    width: 55%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w60_sp {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w70_sp {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w80_sp {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w90_sp {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 599px) {
  .w100_sp {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w50_content {
    width: 50%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w55_content {
    width: 55%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w60_content {
    width: 60%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w65_content {
    width: 65%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w70_content {
    width: 70%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w75_content {
    width: 75%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w80_content {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w85_content {
    width: 85%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w90_content {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media print, screen and (min-width: 1200px) {
  .w95_content {
    width: 95%;
    margin-right: auto;
    margin-left: auto;
  }
}

.w100_content {
  width: 100%;
}

.max_1280 {
  width: calc(100% + 80px);
  margin-left: -40px;
}
@media (max-width: 1279px) {
  .max_1280 {
    width: 100%;
    margin-left: 0;
  }
}

.max_1000 {
  width: 100%;
  max-width: 1000px !important;
  margin-left: auto;
  margin-right: auto;
}

.max_900 {
  width: 100%;
  max-width: 900px !important;
  margin-left: auto;
  margin-right: auto;
}

.max_800 {
  width: 100%;
  max-width: 800px !important;
  margin-left: auto;
  margin-right: auto;
}

.max_580 {
  max-width: 580px !important;
}

@media print, screen and (min-width: 960px) {
  .w100vw_pc {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
}

#sb_instagram .sbi_follow_btn a {
  margin-top: 0;
}

.tdno,
.tdno a {
  text-decoration: none;
  color: inherit;
}

.td_underline {
  text-decoration: underline;
}

.has-border.-border01._black {
  border-color: #333;
}

ul.liststyle_none {
  list-style: none;
  padding-left: 0;
}

.w_fit {
  width: fit-content;
}
.w_fit._center {
  margin-left: auto !important;
  margin-right: auto !important;
}
.w_fit._left {
  margin-left: 0 !important;
  margin-right: auto !important;
}
.w_fit._right {
  margin-left: auto !important;
  margin-right: 0 !important;
}

@media print, screen and (min-width: 600px) {
  .w_fit_tapc {
    width: fit-content;
  }
}

form input[type=text],
form input[type=email],
form input[type=tel],
form textarea {
  width: 100%;
}
form input[type=submit] {
  display: inline-block;
  width: 440px;
  max-width: 100%;
  padding: 1.1rem 1rem;
  background: #FFF4CA;
  border: 2px solid #fff;
  color: var(--color_main);
  font-weight: bold;
  font-size: 18px;
  border-radius: 36px;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}
@media print, screen and (max-width: 599px) {
  form input[type=submit] {
    width: 100%;
    max-width: 440px;
    padding: 0.8rem 0.5rem;
    font-size: 16px;
  }
}
form textarea {
  resize: vertical;
}

.form_wrap .table_wrap {
  background-color: #f7fbff;
  padding: 1em;
  border-radius: 20px;
  margin-bottom: 0.5em;
}
@media print, screen and (min-width: 768px) {
  .form_wrap .table_wrap {
    padding: 3em;
  }
}
@media print, screen and (min-width: 1264px) {
  .form_wrap .table_wrap {
    padding: 3em 5em;
  }
}
.form_wrap .page_fukidashi_index {
  background-color: var(--color_main);
  color: #fff;
  padding: 5px 30px;
  width: fit-content;
  margin: 1.5em auto;
}
@media print, screen and (min-width: 1264px) {
  .form_wrap .page_fukidashi_index {
    padding: 10px 50px;
  }
}
.form_wrap table {
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
}
.form_wrap table tr {
  display: block;
  margin-bottom: 7px;
}
.form_wrap table th,
.form_wrap table td {
  font-size: 16px;
  display: block;
  width: 100%;
  border: none;
  padding-left: 0;
  padding-top: 0;
}
.form_wrap table th {
  display: flex;
  align-items: flex-start;
  color: #333;
  background: none;
  padding-bottom: 8px;
}
.form_wrap table th:before {
  background: transparent;
}
.form_wrap table td {
  padding-right: 0;
}
.form_wrap table td:last-child {
  border-right: none;
}
.form_wrap table td small {
  display: block;
  line-height: 1.4;
  margin-top: 2px;
  margin-bottom: 2px;
}
.form_wrap table td input[type=text],
.form_wrap table td input[type=email],
.form_wrap table td textarea {
  width: 100%;
}
.form_wrap table td input[type=text], .form_wrap table td input[type=email], .form_wrap table td input[type=tel], .form_wrap table td input[type=number],
.form_wrap table td textarea,
.form_wrap table td select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: #fff;
  padding: 0.25em 0.5em;
  border-radius: 4px;
  font-size: 16px;
  border: 1px solid #666;
}
@media print, screen and (min-width: 960px) {
  .form_wrap table td input[type=text], .form_wrap table td input[type=email], .form_wrap table td input[type=tel], .form_wrap table td input[type=number],
  .form_wrap table td textarea,
  .form_wrap table td select {
    padding: 0.5em;
  }
}
.form_wrap table td input[name=your-postcode] {
  width: 120px;
  margin-bottom: 7px;
}
.form_wrap table td input[type=date] {
  width: 250px;
  margin-bottom: 7px;
  border: none;
  outline: none;
  background: #fff;
  padding: 0.25em 0.5em;
  border-radius: 4px;
  font-size: 16px;
  border: 1px solid #666;
}
@media print, screen and (min-width: 960px) {
  .form_wrap table td input[type=date] {
    padding: 0.5em;
  }
}
.form_wrap table td input[type=number] {
  width: 60px;
  margin: 0 6px;
}
.form_wrap table td input[type=text].your-space,
.form_wrap table td input[type=text].your-age,
.form_wrap table td input[type=text].your-progress {
  width: 5em;
  margin-left: 3px;
  margin-right: 3px;
}
.form_wrap table td .wpcf7-list-item {
  margin-bottom: 4px;
}
.form_wrap table tr:last-child > td {
  border-bottom: none;
}
.form_wrap table .caution {
  font-size: 0.9em;
  display: block;
  margin-bottom: 3px;
}
@media print, screen and (min-width: 960px) {
  .form_wrap .people td {
    display: flex;
    flex-wrap: wrap;
  }
  .form_wrap .people td .adults {
    margin-right: 20px;
  }
  .form_wrap .hope {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .form_wrap .hope input[type=date] {
    margin-right: 20px;
    margin-bottom: 0;
  }
}
.form_wrap .hope, .form_wrap .adults {
  margin-bottom: 10px;
}
.form_wrap .require, .form_wrap .any {
  display: inline-block;
  margin-right: 10px;
  margin-top: 2px;
  opacity: 1;
  padding: 2px 8px;
  font-weight: 500;
  white-space: nowrap;
}
.form_wrap .require {
  background: #C40003;
  color: #fff;
}
.form_wrap .any {
  color: #666;
  background: #fff;
  border: 1px solid #666;
}
.form_wrap input[type=submit] {
  display: inline-block;
  padding: 0.7em 2em;
  background: #FFF4CA;
  border: 2px solid #fff;
  color: var(--color_main);
  border-radius: 50px;
  font-weight: bold;
  width: 100%;
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
}
.form_wrap .submit-btn {
  text-align: center;
}
.form_wrap .submit_wrap > p {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.form_wrap .submit_wrap > p input.wpcf7-previous {
  margin-right: 15px;
}
.form_wrap .wpcf7-spinner {
  display: none !important;
}
.form_wrap .wpcf7-list-item {
  margin-left: 0;
  display: inline-block;
  margin-right: 15px;
}
.form_wrap .mwform-checkbox-field {
  display: block;
}
.form_wrap .wpcf7-previous {
  margin-right: 10px;
}
@media print, screen and (min-width: 960px) {
  .form_wrap table th {
    font-size: 18px;
  }
  .form_wrap table td {
    font-size: 17px;
  }
}

.privacypolicy_wrap {
  height: 300px;
  overflow: scroll;
  border-top: 2px solid var(--color_main);
  border-bottom: 2px solid var(--color_main);
  padding: 2rem;
}
.privacypolicy_wrap h2 {
  font-size: 18px;
  margin-top: 2em;
  margin-bottom: 0.5em;
  color: #333 !important;
  border-top: none;
  border-bottom: none;
  padding: 0;
}
.privacypolicy_wrap p, .privacypolicy_wrap li {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 1.6em !important;
}
.privacypolicy_wrap .wp-block-spacer {
  display: none;
}
@media print, screen and (min-width: 960px) {
  .privacypolicy_wrap {
    height: 400px;
  }
  .privacypolicy_wrap h2 {
    font-size: 20px;
  }
}
@media print, screen and (max-width: 959px) {
  .privacypolicy_wrap {
    padding: 1rem;
  }
}

.wpcf7-spinner {
  display: none !important;
}

.form_caution_text {
  margin-top: 10px;
  font-size: 14px;
}

.pp_text {
  color: #FF8D1B;
}

.pp {
  margin-bottom: 15px;
  text-align: center;
}

#autozip {
  display: none !important;
}

@media print, screen and (max-width: 767px) {
  .mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0;
  }
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.form_caution_text {
  margin-top: 10px;
  font-size: 14px;
}

.pp {
  margin-top: 1rem;
  margin-bottom: 1em;
  text-align: center;
  font-weight: bold;
}

.post_thumb img {
  vertical-align: bottom;
  width: 100%;
  height: 100%;
  aspect-ratio: 6/4;
  object-fit: cover;
}

.bs_gray {
  box-shadow: 0 3px 0 rgba(0, 0, 0, 0.16);
}

.bs_shadow {
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.bs_shadow02 {
  box-shadow: 0px 3px 2px rgba(0, 0, 0, 0.25);
}

figure.bs_shadow img {
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.border_black {
  border: 1px solid #333 !important;
}

.border_black_2 {
  border: 2px solid #333 !important;
}

.border_theme {
  border: 1px solid var(--color_main) !important;
}

.br0 {
  border-radius: 0 !important;
}
.br0 a {
  border-radius: 0 !important;
}

.br5 {
  border-radius: 5px !important;
}

.br10 {
  border-radius: 10px !important;
  overflow: hidden;
}
.br10 a {
  border-radius: 10px !important;
  overflow: hidden;
}

.br15 {
  border-radius: 15px !important;
  overflow: hidden;
}

.br20 {
  border-radius: 20px !important;
  overflow: hidden;
}

.br24 {
  border-radius: 24px !important;
  overflow: hidden;
}

.br30 {
  border-radius: 30px !important;
  overflow: hidden;
}

.br40 {
  border-radius: 40px !important;
  overflow: hidden;
}

.br50 {
  border-radius: 50px !important;
}

.br90 {
  border-radius: 90px !important;
}

.br50p {
  border-radius: 50% !important;
}

@media print, screen and (max-width: 599px) {
  .br20_sp {
    border-radius: 20px !important;
    overflow: hidden;
  }
}

@media print, screen and (max-width: 599px) {
  .br10_sp {
    border-radius: 10px !important;
    overflow: hidden;
  }
}

.flex {
  display: flex;
  flex-wrap: wrap;
}
.flex.fnowrap {
  flex-wrap: nowrap;
}
.flex.c2 .item {
  width: calc((100% - 20px) / 2);
  margin-right: 20px;
}
.flex.c2 .item:nth-child(2n) {
  margin-right: 0;
}
.flex.c3 .item {
  width: calc((100% - 40px) / 3);
  margin-right: 20px;
}
.flex.c3 .item:nth-child(3n) {
  margin-right: 0;
}
.flex.c4 .item {
  width: calc((100% - 60px) / 4);
  margin-right: 20px;
}
.flex.c4 .item:nth-child(4n) {
  margin-right: 0;
}
.flex.c5 .item {
  width: calc((100% - 80px) / 5);
  margin-right: 20px;
}
.flex.c5 .item:nth-child(5n) {
  margin-right: 0;
}
.flex.fdc {
  flex-direction: column;
}
.flex.aifs {
  align-items: flex-start;
}
.flex.ac {
  align-items: center;
}
.flex.jcsb {
  justify-content: space-between;
}
.flex.jcc {
  justify-content: center;
}
.flex.jcfs {
  justify-content: flex-start;
}
.flex.jcfe {
  justify-content: flex-end;
}
.flex.sb {
  justify-content: space-between;
}
.flex.ae {
  align-items: flex-end;
}
.flex.fr {
  flex-direction: row-reverse;
}
@media (max-width: 599px) {
  .flex.jcc_sp {
    justify-content: center;
  }
}
@media print, screen and (min-width: 768px) {
  .flex_pc {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
  }
  .flex_pc.ac {
    align-items: center;
  }
  .flex_pc.sb {
    justify-content: space-between;
  }
  .flex_pc.jcc {
    justify-content: center;
  }
  .flex_pc.ae {
    align-items: flex-end;
  }
  .flex_pc.fr {
    flex-direction: row-reverse;
  }
  .flex_pc.c2 > .item {
    width: calc((100% - 30px) / 2);
    margin-right: 30px;
  }
  .flex_pc.c2 > .item:nth-child(2n) {
    margin-right: 0;
  }
  .flex_pc.c3 > .item {
    width: calc((100% - 60px) / 3);
    margin-right: 30px;
  }
  .flex_pc.c3 > .item:nth-child(3n) {
    margin-right: 0;
  }
  .flex_pc.c4 > .item {
    width: calc((100% - 90px) / 4);
    margin-right: 30px;
  }
  .flex_pc.c4 > .item:nth-child(4n) {
    margin-right: 0;
  }
  .flex_pc.c5 > .item {
    width: calc((100% - 120px) / 5);
    margin-right: 30px;
  }
  .flex_pc.c5 > .item:nth-child(5n) {
    margin-right: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .boxwrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .boxwrap.ac {
    align-items: center;
  }
  .boxwrap.ae {
    align-items: flex-end;
  }
  .boxwrap.fr {
    flex-direction: row-reverse;
  }
  .boxwrap > .item1 {
    width: 10%;
  }
  .boxwrap > .item9 {
    width: calc(90% - 30px);
  }
  .boxwrap > .item2 {
    width: 20%;
  }
  .boxwrap > .item8 {
    width: calc(80% - 30px);
  }
  .boxwrap > .item3 {
    width: 30%;
  }
  .boxwrap > .item7 {
    width: calc(70% - 30px);
  }
  .boxwrap > .item4 {
    width: 40%;
  }
  .boxwrap > .item6 {
    width: calc(60% - 30px);
  }
  .boxwrap > .item5 {
    width: calc((100% - 30px) / 2);
  }
  .boxwrap > .item10 {
    width: 100%;
  }
  .boxwrap img {
    margin-bottom: 0;
  }
}
.boxwrap.bwsp {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.boxwrap.bwsp.ac {
  align-items: center;
}
.boxwrap.bwsp.ae {
  align-items: flex-end;
}
.boxwrap.bwsp.fr {
  flex-direction: row-reverse;
}
.boxwrap.bwsp > .item1 {
  width: 10%;
}
.boxwrap.bwsp > .item9 {
  width: calc(90% - 15px);
}
.boxwrap.bwsp > .item2 {
  width: 20%;
}
.boxwrap.bwsp > .item8 {
  width: calc(80% - 15px);
}
.boxwrap.bwsp > .item3 {
  width: 30%;
}
.boxwrap.bwsp > .item7 {
  width: calc(70% - 15px);
}
.boxwrap.bwsp > .item4 {
  width: 40%;
}
.boxwrap.bwsp > .item6 {
  width: calc(60% - 15px);
}
.boxwrap.bwsp > .item5 {
  width: calc((100% - 15px) / 2);
}
.boxwrap.bwsp > .item10 {
  width: 100%;
}

.tac {
  text-align: center;
}

.d-block {
  display: block;
}
.d-block img {
  display: block;
}

@media (min-width: 600px) {
  .d-md-block {
    display: block;
  }
  .d-md-block img {
    display: block;
  }
}

.d-inline {
  display: inline;
}

.d-inline-block {
  display: inline-block;
}
.d-inline-block img {
  display: inline-block;
}

small.d_block,
span.d_block {
  display: block;
}

@media print, screen and (max-width: 599px) {
  span.d_block_sp {
    display: block !important;
  }
}

@media print, screen and (max-width: 959px) {
  span.d_block_spta {
    display: block !important;
  }
}

.vam {
  vertical-align: middle;
}

.vam_img img {
  vertical-align: middle;
}

.vam_table th, .vam_table td {
  vertical-align: middle;
}

.is-row.ac {
  align-items: center;
}

.mainwrap {
  width: calc(100% - 30px);
  margin: 0 auto;
  max-width: 1200px;
}
.mainwrap .mainwrap {
  max-width: 100%;
}

.fr > .swell-block-columns__inner {
  flex-direction: row-reverse;
}

.sb > .swell-block-columns__inner {
  justify-content: space-between;
}

.jc_c > .swell-block-columns__inner {
  justify-content: center;
}

@media print, screen and (max-width: 959px) {
  .jc_c_spta > .swell-block-columns__inner {
    justify-content: center;
  }
}

.jc_fe > .swell-block-columns__inner {
  justify-content: flex-end;
}

.wrap_map {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.wrap_map iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
.wrap_movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.wrap_movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.c-balloon__icon.-circle img {
  border-radius: 50%;
  overflow: hidden;
}

.c-balloon.-bln-left .c-balloon__text {
  max-width: 97%;
  margin: 0 auto 0 2em;
  line-height: 1.8;
}
.c-balloon.-bln-left .c-balloon__text .u-fz-l {
  line-height: 1.4;
}
@media print, screen and (max-width: 599px) {
  .c-balloon.-bln-left .c-balloon__text {
    margin: 0 auto 0 1em;
  }
}
.c-balloon.-bln-left .c-balloon__body {
  display: block;
  padding: 0;
}
@media print, screen and (min-width: 960px) {
  .c-balloon.-bln-left {
    align-items: center;
  }
  .c-balloon.-bln-left .c-balloon__icon {
    width: 150px;
  }
  .c-balloon.-bln-left .c-balloon__iconImg {
    width: 150px;
    height: 150px;
  }
  .c-balloon.-bln-left .c-balloon__text {
    padding: 1em 2em;
  }
  .c-balloon.-bln-left .c-balloon__shapes {
    top: 46%;
  }
}

.c-balloon.-bln-right .c-balloon__text {
  max-width: 97%;
  margin: 0 2em 0 auto;
  line-height: 1.8;
}
.c-balloon.-bln-right .c-balloon__text .u-fz-l {
  line-height: 1.4;
}
@media print, screen and (max-width: 599px) {
  .c-balloon.-bln-right .c-balloon__text {
    margin: 0 1em 0 auto;
  }
}
.c-balloon.-bln-right .c-balloon__body {
  display: block;
  padding: 0;
}
@media print, screen and (min-width: 960px) {
  .c-balloon.-bln-right {
    align-items: center;
  }
  .c-balloon.-bln-right .c-balloon__icon {
    width: 150px;
  }
  .c-balloon.-bln-right .c-balloon__iconImg {
    width: 150px;
    height: 150px;
  }
  .c-balloon.-bln-right .c-balloon__text {
    padding: 1em 2em;
  }
  .c-balloon.-bln-right .c-balloon__shapes {
    top: 46%;
  }
}

.o_hidden {
  overflow: hidden;
}

.o_visible {
  overflow: visible !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

.me-2 {
  margin-right: 0.5rem !important;
}

.me-3 {
  margin-right: 1rem !important;
}

.me-4 {
  margin-right: 1.5rem !important;
}

.me-5 {
  margin-right: 3rem !important;
}

.me-auto {
  margin-right: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.ms-3 {
  margin-left: 1rem !important;
}

.ms-4 {
  margin-left: 1.5rem !important;
}

.ms-5 {
  margin-left: 3rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

@media (min-width: 600px) {
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
}
@media (min-width: 960px) {
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
}
.z-1 {
  z-index: 1;
  position: relative;
}

.z-2 {
  z-index: 2;
  position: relative;
}

.nowrap {
  white-space: nowrap;
}

.border_none {
  border: none !important;
}

.relative {
  position: relative;
}

.flex1 {
  flex: 1;
}

.mbms05 {
  margin-bottom: -0.5rem !important;
}

.mbms1 {
  margin-bottom: -1rem !important;
}

.mbms15 {
  margin-bottom: -1.5rem !important;
}

.mbms2 {
  margin-bottom: -2rem !important;
}

.mbms3 {
  margin-bottom: -3rem !important;
}

@media (max-width: 959px) {
  .mb-0_ta {
    margin-bottom: 0 !important;
  }
}

@media (max-width: 599px) {
  .mbms1_sp {
    margin-bottom: -1rem !important;
  }
}

@media (max-width: 599px) {
  .mbms3_sp {
    margin-bottom: -3rem !important;
  }
}

@media (max-width: 599px) {
  .mbms4_sp {
    margin-bottom: -4rem !important;
  }
}

@media (max-width: 959px) {
  .cmg1x_spta {
    --swl-clmn-mrgn--x: 1rem !important;
  }
}




.post_content p,
.post_content ul,
.post_content ol {
  font-size: 15px;
}
@media print, screen and (min-width: 960px) {
  .post_content p,
  .post_content ul,
  .post_content ol {
    font-size: 16px;
  }
}
.post_content h2 .mininote,
.post_content h3 .mininote,
.post_content h4 .mininote,
.post_content h5 .mininote,
.post_content h6 .mininote {
  opacity: 1;
  font-size: 0.65em !important;
  padding-bottom: 0.1em;
  padding-top: 0.1em;
}
.post_content .fz10 {
  font-size: 10px;
}
.post_content .fz11 {
  font-size: 11px;
}
.post_content .fz12 {
  font-size: 12px;
}
.post_content .fz13 {
  font-size: 13px;
}
.post_content .fz14 {
  font-size: 14px;
}
.post_content .fz15 {
  font-size: 15px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz15 {
    font-size: 15px;
  }
}
.post_content .fz16 {
  font-size: 16px;
}
.post_content .fz17 {
  font-size: 16px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz17 {
    font-size: 17px;
  }
}
.post_content .fz18 {
  font-size: 17px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz18 {
    font-size: 18px;
  }
}
.post_content .fz20 {
  font-size: 17px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz20 {
    font-size: 20px;
  }
}
.post_content .fz22 {
  font-size: 18px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz22 {
    font-size: 22px;
  }
}
.post_content .fz24 {
  font-size: 18px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz24 {
    font-size: 20px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz24 {
    font-size: 24px;
  }
}
.post_content .fz26 {
  font-size: 18px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz26 {
    font-size: 22px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz26 {
    font-size: 26px;
  }
}
.post_content .fz28 {
  font-size: 18px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz28 {
    font-size: 26px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz28 {
    font-size: 28px;
  }
}
.post_content .fz30 {
  font-size: 20px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz30 {
    font-size: 24px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz30 {
    font-size: 30px;
  }
}
.post_content .fz32 {
  font-size: 20px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz32 {
    font-size: 26px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz32 {
    font-size: 32px;
  }
}
.post_content .fz32_en {
  font-size: 26px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz32_en {
    font-size: 32px;
  }
}
.post_content .fz36 {
  font-size: 22px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz36 {
    font-size: 28px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz36 {
    font-size: 36px;
  }
}
.post_content .fz36_en {
  font-size: 26px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz36_en {
    font-size: 36px;
  }
}

.post_content .fz40 {
  font-size: 24px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz40 {
    font-size: 30px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz40 {
    font-size: 40px;
  }
}
.post_content .fz44 {
  font-size: 24px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz44 {
    font-size: 32px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz44 {
    font-size: 44px;
  }
}
.post_content .fz48 {
  font-size: 26px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz48 {
    font-size: 36px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz48 {
    font-size: 48px;
  }
}
.post_content .fz56 {
  font-size: 24px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz56 {
    font-size: 40px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz56 {
    font-size: 56px;
  }
}
.post_content .fz56_en {
  font-size: 46px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz56_en {
    font-size: 56px;
  }
}
.post_content .fz60 {
  font-size: 24px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz60 {
    font-size: 46px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz60 {
    font-size: 60px;
  }
}
.post_content .fz64 {
  font-size: 26px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz64 {
    font-size: 48px;
  }
}
@media print, screen and (min-width: 1264px) {
  .post_content .fz64 {
    font-size: 64px;
  }
}
.post_content .fz64_en {
  font-size: 54px;
}
@media print, screen and (min-width: 960px) {
  .post_content .fz64_en {
    font-size: 64px;
  }
}
.post_content .fz64_en_s {
  font-size: 30px;
}
@media print, screen and (min-width: 600px) {
  .post_content .fz64_en_s {
    font-size: 44px;
  }
}
@media print, screen and (min-width: 960px) {
  .post_content .fz64_en_s {
    font-size: 64px;
  }
}
@media print, screen and (max-width: 1279px) {
  .post_content .fz13_tal {
    font-size: 13px;
  }
}
@media print, screen and (max-width: 1279px) {
  .post_content .fz14_tal {
    font-size: 14px;
  }
}
@media print, screen and (max-width: 1279px) {
  .post_content .fz18_tal {
    font-size: 18px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz10_sp {
    font-size: 10px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz12_sp {
    font-size: 12px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz13_sp {
    font-size: 13px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz14_sp {
    font-size: 14px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz15_sp {
    font-size: 15px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz16_sp {
    font-size: 16px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz17_sp {
    font-size: 17px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz18_sp {
    font-size: 18px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz20_sp {
    font-size: 20px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz22_sp {
    font-size: 22px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz24_sp {
    font-size: 24px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz30_sp {
    font-size: 30px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz36_sp {
    font-size: 36px;
  }
}
@media print, screen and (max-width: 959px) {
  .post_content .fz38_sp {
    font-size: 38px;
  }
}
@media (min-width: 1280px) {
  .post_content .lh19_pc {
    line-height: 1.9;
  }
}
.post_content .btn_cmn {
  max-width: 100%;
}
.post_content .btn_cmn a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  min-height: 72px;
  max-width: 100%;
  border: 2px solid #fff;
  box-shadow: 0px 3px 2px rgba(0, 0, 0, 0.25);
  line-height: 1.4;
  position: relative;
}
@media (max-width: 959px) {
  .post_content .btn_cmn a {
    min-height: 60px;
  }
}
.post_content .btn_cmn .__icon.-right {
  position: absolute;
  right: 2rem;
}
@media (max-width: 599px) {
  .post_content .btn_cmn .__icon.-right {
    right: 1rem;
  }
}
.post_content .border_gray {
  border: 1px solid #AAAAAA;
}
.post_content .bl_theme3_12 {
  border-left: 12px solid #84CF4D;
}
@media (max-width: 959px) {
  .post_content .bl_theme3_12 {
    border-left: 6px solid #84CF4D;
  }
}
.post_content .bt_theme3 {
  border-top: 1px solid var(--color_main);
}
.post_content .bb_theme {
  border-bottom: 1px solid var(--color_main);
}
.post_content .bb_theme_2 {
  border-bottom: 2px solid var(--color_main);
}
.post_content .bb_theme2 {
  border-bottom: 1px solid #FF8D1B;
}
.post_content .bb_theme3 {
  border-bottom: 1px solid #84CF4D;
}
.post_content .bb_theme2_2 {
  border-bottom: 2px solid #FF8D1B;
}
.post_content .bl_beige {
  border-left: 1px solid #D3CCC5;
}
.post_content .box_p40 {
  padding: 40px;
}
@media (max-width: 959px) {
  .post_content .box_p40 {
    padding: 2rem 1rem;
  }
}
.post_content .box_p60 {
  padding: 60px;
}
@media (max-width: 959px) {
  .post_content .box_p60 {
    padding: 2rem 1rem;
  }
}
.post_content .bs_hukidashi .c-balloon__body {
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}
/*=============================================
  # トップ
============================================= */
.p-mainVisual__textLayer.l-container {
  max-width: 100% !important;
}
.mv-cta-btn{
  position: absolute;
  width: 400px;
  right: 0;
  bottom: 0;
}
@media (max-width: 599px){
  .mv-cta-btn{
    width: 85%;
  }
}
.post_content .google_kuchikomi_hukidashi {
  background: #fff;
  border-radius: 8px;
  position: relative;
  display: flex;
  justify-content: center;
  padding: 5px 12px;
}
@media (max-width: 959px) {
  .post_content .google_kuchikomi_hukidashi {
    padding: 4px 0;
  }
}
.post_content .google_kuchikomi_hukidashi::before {
  content: "";
  height: 12px;
  position: absolute;
  width: 9px;
  right: -8px;
  top: 38%;
  background: #fff;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
}
.post_content .google_kuchikomi_num {
  width: 24px;
  height: 24px;
  font-size: 12px;
  background: #e94235;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border-radius: 50%;
}
@media (max-width: 959px) {
  .post_content .google_kuchikomi_num {
    width: 20px;
    height: 20px;
    font-size: 10px;
  }
}
.post_content .google_kuchikomi_num:last-child {
  margin: 0 0 6px 2px !important;
}
@media (max-width: 599px) {
  .post_content .kv_kuchikomi_wrap {
    position: absolute;
    left: 0;
    bottom: 0;
  }
}
.post_content .top_post_list_wrap .p-postList {
  margin: 0;
  justify-content: space-between;
}
.post_content .top_post_list_wrap .p-postList::after {
  content: "";
  width: 24%;
}
.post_content .top_post_list_wrap .p-postList__item {
  padding: 0;
  width: 23%;
}
@media (max-width: 959px) {
  .post_content .top_post_list_wrap .p-postList__item {
    width: 48%;
  }
}
@media (max-width: 599px) {
  .post_content .top_post_list_wrap .p-postList__item {
    width: 100%;
  }
}
.post_content .top_post_list_wrap .p-postList__body {
  padding-top: 0.5rem;
}
.post_content .top_post_list_wrap .c-postThumb__cat {
  left: -4px;
  right: auto;
  top: -12px;
  min-width: 120px;
  font-size: 14px;
  text-align: center;
  border-radius: 0 12px 12px 0;
  transform: none;
  overflow: visible;
}
.post_content .top_post_list_wrap .c-postThumb__cat::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 4px;
  height: 3px;
  background: #475E53;
  clip-path: polygon(100% 0px, 0px 0px, 100% 100%);
}
.post_content .top_works_wrap {
  position: relative;
}
.post_content .top_works_wrap .works_items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.post_content .top_works_wrap .works_item {
  width: 48%;
  margin-bottom: 40px !important;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .works_item {
    width: 49%;
  }
}
@media (max-width: 599px) {
  .post_content .top_works_wrap .works_item {
    width: 100%;
    margin-bottom: 30px !important;
  }
}
.post_content .top_works_wrap .works_item a {
  display: flex;
  flex-direction: column;
  background: #fff;
  padding: 1.5rem 20px;
  height: 100%;
  border-top: 1px solid #aaa;
  box-shadow: 0px 3px 2px rgba(0, 0, 0, 0.25);
  border-radius: 20px;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .works_item a {
    padding: 1.5rem 1rem;
  }
}
.post_content .top_works_wrap .before_after {
  position: relative;
  height: 274px;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .before_after {
    height: 170px;
  }
}
.post_content .top_works_wrap .before_after .before_ttl {
  position: absolute;
  left: -8px;
  top: -15px;
  width: 93px;
  z-index: 1;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .before_after .before_ttl {
    width: 83px;
  }
}
.post_content .top_works_wrap .before_after .before_img {
  width: 37%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
  border-top: 5px solid #fff;
  border-right: 5px solid #fff;
}
.post_content .top_works_wrap .before_after .before_img .post_thumb {
  position: relative;
}
.post_content .top_works_wrap .before_after .before_img .post_thumb img {
  aspect-ratio: 205/155;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.post_content .top_works_wrap .before_after .before_img .post_thumb::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
  width: 34px;
  height: 37px;
  background: url(./images/common/works_arrow.png) center center/contain no-repeat;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .before_after .before_img .post_thumb::after {
    right: -15px;
    width: 26px;
    height: 28px;
  }
}
.post_content .top_works_wrap .before_after .after_ttl {
  position: absolute;
  left: -15px;
  top: -7px;
  width: 116px;
  z-index: 1;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .before_after .after_ttl {
    width: 100px;
  }
}
.post_content .top_works_wrap .before_after .after_img {
  position: relative;
  width: 68%;
  height: 100%;
  margin: 0 0 0 auto !important;
}
.post_content .top_works_wrap .before_after .after_img .post_thumb {
  height: 100%;
}
.post_content .top_works_wrap .before_after .after_img .post_thumb img {
  aspect-ratio: 365/274;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.post_content .top_works_wrap .only {
  position: relative;
  height: 274px;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .only {
    height: 170px;
  }
}
.post_content .top_works_wrap .only .before_img,
.post_content .top_works_wrap .only .after_img {
  position: relative;
  width: 68%;
  height: 100%;
  margin: 0 0 0 auto !important;
}
.post_content .top_works_wrap .only .before_img .post_thumb,
.post_content .top_works_wrap .only .after_img .post_thumb {
  position: relative;
  height: 100%;
}
.post_content .top_works_wrap .only .before_img .post_thumb img,
.post_content .top_works_wrap .only .after_img .post_thumb img {
  aspect-ratio: 365/274;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.post_content .top_works_wrap .cat {
  position: absolute;
  top: 0;
  left: 0;
}
.post_content .top_works_wrap .cat span {
  display: block;
  width: fit-content;
  font-size: 12px;
  background: #E1E1E1;
  padding: 0 10px;
  text-align: center;
  border-radius: 90px;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .cat span {
    font-size: 10px;
    padding: 0 4px;
  }
}
.post_content .top_works_wrap .cat span + span {
  margin-top: 4px;
}
.post_content .top_works_wrap .works_item_title {
  font-size: 18px;
  text-align: left;
  margin-bottom: 1rem;
  min-height: 51px;
  display: flex;
  align-items: center;
}
@media (max-width: 959px) {
  .post_content .top_works_wrap .works_item_title {
    font-size: 16px;
  }
}
.post_content .top_works_wrap .works_item_text_wrap {
  margin-top: 1rem;
}
.post_content .google_kuchikomi_num_l {
  width: 44px;
  height: 44px;
  font-size: 24px;
  background: #FF8D1B;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border-radius: 50%;
}
@media (max-width: 959px) {
  .post_content .google_kuchikomi_num_l {
    width: 24px;
    height: 24px;
    font-size: 14px;
  }
}
.post_content .google_kuchikomi_num_l:last-child {
  margin: 0 0 6px 2px !important;
}
.post_content .prepared_bg {
  background: url(./images/top/prepared_bg.jpg) center center/cover no-repeat;
}
@media (max-width: 959px) {
  .post_content .prepared_icon_home {
    width: 34px;
  }
}
.post_content .cta_tel_wrap a {
  height: 100px;
  border: 1px solid #aaa;
  box-shadow: 0px 3px 2px rgba(0, 0, 0, 0.25);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media (max-width: 959px) {
  .post_content .cta_tel_wrap a {
    height: 80px;
  }
}
@media (max-width: 959px) {
  .post_content .cta_tel_img {
    width: 24px;
  }
}
.post_content .cta_tel_num {
  font-size: 40px;
}
@media (max-width: 959px) {
  .post_content .cta_tel_num {
    font-size: 28px;
  }
}
.post_content .cta_tel_address,
.post_content .cta_tel_time {
  font-size: 15px;
}
@media (max-width: 959px) {
  .post_content .cta_tel_address,
  .post_content .cta_tel_time {
    font-size: 12px;
  }
}
.post_content .cta_line_wrap a {
  content: "";
  height: 100px;
  background: #06C755;
  box-shadow: 0px 3px 2px rgba(0, 0, 0, 0.25);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media (max-width: 959px) {
  .post_content .cta_line_wrap a {
    height: 80px;
  }
}
@media (max-width: 959px) {
  .post_content .cta_line_text {
    font-size: 14px;
  }
}
@media (max-width: 959px) {
  .post_content .cta_line_img {
    width: 28px;
  }
}
.post_content .cta_mail_wrap a {
  content: "";
  height: 100px;
  background: #FF8D1B;
  box-shadow: 0px 3px 2px rgba(0, 0, 0, 0.25);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media (max-width: 959px) {
  .post_content .cta_mail_wrap a {
    height: 80px;
  }
}
@media (max-width: 959px) {
  .post_content .cta_mail_text {
    font-size: 14px;
  }
}
@media (max-width: 959px) {
  .post_content .cta_mail_img {
    width: 28px;
  }
}
.post_content {
  /*=============================================
  # 施工事例一覧・個別
  ============================================= */
}
.post_content .case_search {
  margin-bottom: 5em !important;
}
.post_content .case_search form .ttl {
  font-weight: bold;
  font-size: 18px;
}
@media print, screen and (max-width: 959px) {
  .post_content .case_search form .ttl {
    font-size: 16px;
  }
}
@media print, screen and (max-width: 599px) {
  .post_content .case_search form .ttl {
    font-size: 14px;
    margin-bottom: 7px;
  }
}
.post_content .case_search form .select {
  position: relative;
}
.post_content .case_search form .select:after {
  content: "";
  position: absolute;
  right: 10px;
  top: 47%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #333;
  border-left: 2px solid #333;
  transform: translateY(-50%) rotate(-135deg);
  font-size: 20px;
  pointer-events: none;
}
.post_content .case_search form select,
.post_content .case_search form input[type=text] {
  appearance: none;
  width: 100%;
  font-size: 18px;
  padding: 7px 10px;
  background: #fff;
  outline: none;
  border: 1px solid #333;
}
@media print, screen and (max-width: 599px) {
  .post_content .case_search form select,
  .post_content .case_search form input[type=text] {
    font-size: 14px;
  }
}
.post_content .case_search form input[type=submit] {
  color: #fff;
  margin-left: auto;
  margin-right: auto;
  display: block;
  border-radius: 80px;
  background: #333;
  font-weight: bold;
  line-height: 1.4;
  padding: 18px 0;
  width: 430px;
  max-width: 100%;
  box-shadow: 0px 3px 0px rgba(0, 0, 0, 0.16);
}
@media print, screen and (max-width: 599px) {
  .post_content .case_search form input[type=submit] {
    padding: 14px 0;
    width: 100%;
    max-width: 430px;
  }
}
.post_content .case_search form input[type=submit]:hover {
  opacity: 0.7;
}
.post_content .case_search .flex_pc {
  margin-bottom: 2em;
}
.post_content .case_search .flex_pc .item:first-child {
  margin-bottom: 1em;
}
.post_content .case_archive .case_items {
  display: block;
}
.post_content .case_archive .case_item {
  width: 100%;
  padding: 2.5em 0;
  border-bottom: 1px solid #ccc;
}
.post_content .case_archive .case_item:first-child {
  padding-top: 0;
}
@media print, screen and (min-width: 768px) {
  .post_content .case_archive .case_item .item7 {
    margin-top: -5px;
  }
}
.post_content .case_archive .case_item .before_img,
.post_content .case_archive .case_item .after_img {
  margin-bottom: 10px !important;
}
.post_content .case_archive .case_item .before_after.archive_gallery {
  position: relative;
}
.post_content .case_archive .case_item .before_after.archive_gallery .before_img {
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  margin-bottom: 0 !important;
  width: 45%;
  position: absolute;
  left: 0;
  bottom: -30px;
  z-index: 1;
}
.post_content .case_archive .case_item .before_after.archive_gallery .after_img {
  width: 90%;
  margin: 0 0 0 auto !important;
}
@media print, screen and (max-width: 767px) {
  .post_content .case_archive .case_item .before_after.archive_gallery {
    margin-bottom: 45px !important;
  }
}
.post_content .case_archive .case_item .cat {
  margin-bottom: 5px;
}
@media (max-width: 599px) {
  .post_content .case_archive .case_item .cat {
    margin-bottom: 10px;
  }
}
.post_content .case_archive .case_item .cat a {
  display: inline-block;
  padding: 4px 14px;
  line-height: 1.4;
  margin-right: 6px;
  margin-bottom: 6px;
  background-color: var(--color_main);
  color: #fff;
  font-size: 12px;
  text-decoration: none;
}
.post_content .case_archive .case_item h2.is-style-section_ttl {
  padding-top: 0;
  font-size: 18px;
  text-align: left;
  margin-bottom: 7px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  padding-bottom: 0.25em;
  overflow: hidden;
}
@media print, screen and (min-width: 1200px) {
  .post_content .case_archive .case_item h2.is-style-section_ttl {
    font-size: 24px;
  }
}
.post_content .case_archive .case_item p {
  margin-bottom: 15px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
}
@media print, screen and (max-width: 767px) {
  .post_content .case_archive .case_item .swell-block-button {
    width: 264px;
    margin: 0 auto;
  }
  .post_content .case_archive .case_item .swell-block-button a {
    width: 100%;
  }
}
.post_content .single_case .cat {
  margin-bottom: 5px;
}
.post_content .single_case .cat a {
  display: inline-block;
  padding: 4px 14px;
  line-height: 1.4;
  margin-right: 6px;
  margin-bottom: 6px;
  background-color: var(--color_main);
  color: #fff;
  font-size: 12px;
  text-decoration: none;
}
@media print, screen and (min-width: 768px) {
  .post_content .single_case .cat a {
    font-size: 15px;
  }
}
.post_content .single_case .single_gallery_wrap {
  margin-top: 2em;
  margin-bottom: 3em;
}
.post_content .single_case .single_gallery_wrap .before_wrap {
  position: relative;
}
.post_content .single_case .single_gallery_wrap .before_wrap .situation {
  position: absolute;
  left: 0;
  top: 5%;
  z-index: 5;
  background-color: #fabb05;
  color: #fff;
  font-weight: 900;
  padding: 3px 6px 3px 10px;
  font-size: 16px;
}
@media print, screen and (min-width: 960px) {
  .post_content .single_case .single_gallery_wrap .before_wrap .situation {
    font-size: 22px;
  }
}
@media print, screen and (max-width: 767px) {
  .post_content .single_case .single_gallery_wrap .before_wrap {
    margin-bottom: 2em;
  }
}
@media print, screen and (min-width: 768px) {
  .post_content .single_case .single_gallery_wrap:not(.before_only, .after_only) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .post_content .single_case .single_gallery_wrap:not(.before_only, .after_only) .before_wrap,
  .post_content .single_case .single_gallery_wrap:not(.before_only, .after_only) .after_wrap {
    width: 48%;
  }
}
.post_content .single_case .single_gallery_wrap.before_only, .post_content .single_case .single_gallery_wrap.after_only {
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.post_content .single_case .before_gallery,
.post_content .single_case .after_gallery {
  margin-bottom: 15px;
}
.post_content .single_case .before_gallery .item,
.post_content .single_case .after_gallery .item {
  position: relative;
}
.post_content .single_case .before_choice-btn .item,
.post_content .single_case .after_choice-btn .item {
  width: 33.3333333333% !important;
  cursor: pointer;
  opacity: 0.7;
}
.post_content .single_case .before_choice-btn .item.slick-current,
.post_content .single_case .after_choice-btn .item.slick-current {
  opacity: 1;
}
.post_content .single_case .before_choice-btn .slick-track,
.post_content .single_case .after_choice-btn .slick-track {
  width: auto !important;
  transform: unset !important;
}
.post_content .single_case .before_index {
  background: var(--color_main);
  color: #fff;
  font-weight: 500;
  text-align: center;
  padding: 4px 10px;
}
.post_content .single_case .after_index {
  background: var(--color_main);
  color: #fff;
  font-weight: 500;
  text-align: center;
  padding: 4px 10px;
}
@media print, screen and (min-width: 960px) {
  .post_content .single_case .before_index,
  .post_content .single_case .after_index {
    font-size: 20px;
  }
}
/* =============================================
ここからPeta
============================================= */
.top #content{
  padding: 0;
  padding-bottom: 40px !important;
}
.l-content{
  margin: 0 auto;
  padding-top: 0;
}
.l-header{
  box-shadow: none;
}
@media screen and (max-width: 599px){
  .l-header{
    background-color: transparent !important;
    position: fixed !important;
    top: 1rem !important;
  }
}
.l-header .c-gnav > .menu-item:not(:first-child){
  border-left: none;
}
.l-header .l-header__inner{
  margin: 32px 32px 0 32px;
  background: rgba(255, 255, 255, 0.75);
  max-width: calc(100% - 64px);
}
@media screen and (max-width: 599px){
  .l-header .l-header__inner{
    margin: 0 1rem;
    max-width: calc(100% - 32px);
    border-radius: 48px;
  }
  .l-topTitleArea{
    min-height: 330px !important;
  }
}
.l-header .c-gnavWrap{
  margin: 0 0 0 auto;
}
.c-gnav>.menu-item>a:after{
  bottom: 14px !important;
}



/* =============================================
共通パーツ
============================================= */
.c-heading-wrapper{
  margin-bottom: 4em !important;
}
@media screen and (max-width: 599px){
  .c-heading-wrapper{
    margin-bottom: 40px !important;
  }
}
.c-heading-wrapper h2{
  display: flex;
  align-items: center;
}
@media screen and (max-width: 599px){
  .c-heading-wrapper h2{
    flex-direction: column;
    align-items: flex-start;
  }
}
.c-heading-en{
  font-size: 38px;
  font-weight: bold;
  margin-right: 24px;
}
@media screen and (max-width: 599px){
  .c-heading-en{
    font-size: 24px;
  }
}
.c-heading-jp{
  font-size: 24px;
  font-weight: bold;
}
@media screen and (max-width: 599px){
  .c-heading-jp{
    font-size: 16px;
  }
}
.c-font-lg{
  font-size: 44px;
  font-weight: bold;
  line-height: 1.4 !important;
}
@media screen and (max-width: 599px){
  .c-font-lg{
    font-size: 9.7vw;
  }
}
.c-btn-common a{
  font-size: 1rem;
  gap: 1rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: right;
  text-decoration: none !important;
}
@media screen and (max-width: 599px){
  .c-btn-common a{
    font-weight: bold;
  }
  .c-btn-common.left_sp a{
    justify-content: left;
  }
}
.c-btn-common a::after{
  background: url(./images/common/icon_btn_common_orange.svg) no-repeat;
  background-size: contain;
  content: "" !important;
  width: 56px;
  height: 56px;
  display: block;
}
@media screen and (max-width: 599px){
  .c-btn-common a::after{
    width: 44px;
    height: 44px;
    background: url(./images/common/icon_btn_common_orange_sp.svg) no-repeat;
    background-size: contain;
  }
}
.c-subpage-en{
  position: absolute;
  font-weight: bold;
  left: 3rem;
  top: -5rem;
}
@media screen and (max-width: 599px){
  .c-subpage-en{
    left: 1.5rem;
    top: -9.5rem;
  }
}
.c-pageTitle{
  color: #222;
  font-size: 44px !important;
  text-shadow: none !important;
  border-bottom: 1px solid #F39800;
  padding-bottom: 74px;
  margin-bottom: 40px;
  padding-top: 100px;
  margin-top: 64px;
  position: relative;
}
@media screen and (max-width: 599px){
  .c-pageTitle{
    font-size: 24px !important;
  }
}
.c-pageTitle::after{
  position: absolute;
  font-size: 16px;
  color: #222;
  font-weight: 700;
  left: 0;
  bottom: 70px;
  display: block;
  visibility: visible !important;
}
/* =============================================
共通：パンくず
============================================= */
.p-breadcrumb{
  position: absolute;
  top: 5rem;
  left: 0;
  max-width: 1140px;
  margin: 0 auto;
  width: 100%;
  right: 0;
  z-index: 100;
}
@media screen and (max-width: 1199px){
  .p-breadcrumb{
    left: 32px;
  }
}
@media screen and (max-width: 599px){
  .p-breadcrumb{
    top: 2rem;
    left: 1rem;
  }
}
.p-breadcrumb__list.l-container{
  padding: 0 !important;
}
.icon-home:before{
  display: none !important;
}
.p-breadcrumb__item a{
  color: #F39800;
}
.c-categoryList__separation:after, .p-breadcrumb__item:after{
  content: "-" !important;
  clip-path: none !important;
  background: transparent !important;
  height: auto !important;
  width: auto !important;
  font-size: 16px;
}
.c-categoryList__separation:last-child::after, .p-breadcrumb__item:last-child::after{
  display: none !important;
}
/* =============================================
共通：お問い合わせセクション
============================================= */
.post_content .p-contact-outer.alignfull{
  padding: 40px 0;
}
.post_content .p-contact-container{
  max-width: 1340px !important;
  margin: 40px auto 40px auto !important;
  border-radius: 24px !important;
  width: 1340px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
@media screen and (max-width: 1019px){
  .post_content .p-contact-container{
    width: 98% !important;
    margin: unset !important;
  }
}
@media screen and (max-width: 599px){
  .post_content .p-contact-container{
    width: 91.8% !important;
  }
}
.p-contact-wrapper{
  padding: 60px !important;
  max-width: 1140px;
  margin: 0 auto;
}
@media screen and (max-width: 1019px){
  .post_content .p-contact-wrapper{
    max-width: 100%;
  }
}
@media screen and (max-width: 599px){
  .post_content .p-contact-container .l-container{
    padding: 0 !important;
  }
  .post_content .p-contact-wrapper{
    padding: 24px 32px !important;
  }
}
.c-contact-heading-wrapper{
  margin-bottom: 24px !important;
}
.c-contact-heading-wrapper h2{
  display: flex;
  align-items: center;
}
@media screen and (max-width: 599px){
  .c-contact-heading-wrapper h2{
    flex-direction: column;
    align-items: flex-start;
  }
}
.c-contact-heading-wrapper .c-heading-en{
  font-size: 38px;
}
@media screen and (max-width: 599px){
  .c-contact-heading-wrapper .c-heading-en{
    font-size: 24px;
  }
}
.c-contact-heading-wrapper .c-heading-jp{
  font-size: 24px;
}
@media screen and (max-width: 599px){
  .c-contact-heading-wrapper .c-heading-jp{
    font-size: 16px;
  }
}

.p-contact-cta-wrapper{
  gap: 40px !important;
}
.p-contact-box{
  padding: 104px 40px 40px !important;
}
@media screen and (max-width: 599px){
  .p-contact-box{
    padding: 68px 0 0 0 !important;
  }
}
.p-contact-web{
  position: relative;
  font-size: 24px !important;
}
@media screen and (max-width: 599px){
  .p-contact-web{
    font-size: 16px !important;
  }
}
.p-contact-web::before{
  content: "" !important;
  background: url(./images/common/icon_email.svg) no-repeat;
  width: 48px;
  height: 48px;
  background-size: contain;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  top: -64px;
}
.p-contact-phone{
  position: relative;
  font-size: 24px !important;
}
@media screen and (max-width: 599px){
  .p-contact-phone{
    font-size: 16px !important;
  }
}
.p-contact-phone::before{
  content: "" !important;
  background: url(./images/common/icon_phone.svg) no-repeat;
  width: 48px;
  height: 48px;
  background-size: contain;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  top: -64px;
}
.p-contact-btn a{
  width: 100% !important;
}


/* =============================================
トップページ
============================================= */
.p-mainVisual__inner .swiper-pagination{
  display: none;
}
.p-top-about-img{
  margin-right: -150px;
}
@media screen and (max-width: 599px){
  .p-top-about-img{
    margin-right: -1rem;
  }
}
.p-top-service-wrapper {
  position: relative;
}
@media screen and (max-width: 599px){
  .p-top-about-heading{
    margin-bottom: 12px !important;
  }
}

.p-top-service-text-wrapper{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 599px){
  .p-top-service-text-wrapper{
    width: 94%;
  }
}
@media screen and (max-width: 599px){
  .p-service-ttl{
    line-height: 1.4 !important;
    margin-bottom: .5em !important;
  }
}

.swiper-slide{

    transform: scale(.8);

    opacity:.5;

    transition:.4s;

}

.swiper-slide-active{

    transform:scale(1);

    opacity:1;

}
/* =============================================
私たちについてページ
============================================= */
.p-about-top-wrapper{
  max-width: 850px;
  margin: 0 auto;
}
.p-about-heading{
  font-size: 38px !important;
  margin-bottom: 50px !important;
}
@media screen and (max-width: 599px){
  .p-about-heading{
    font-size: 24px !important;
    text-align: left !important;
    margin-bottom: 16px !important;
  }
}
.p-about-mvv-wrapper{
  padding: 100px 0;
}
@media screen and (max-width: 599px){
  .p-about-mvv-wrapper{
    padding: 32px 0;
  }
}
.p-about-mvv{
  font-size: 38px !important;
  margin-bottom: 1rem !important;
  position: relative;
}
@media screen and (max-width: 599px){
  .p-about-mvv{
    font-size: 24px !important;
    display: inline-block;
    margin-bottom: 4px !important;
  }
}

/* =============================================
MVV
============================================= */
.p-mvv-card{
  background: #fff;
  border-radius: 24px;
  padding: 48px 40px !important;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.p-mvv-en{
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .2em;
  color: #F39800 !important;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.p-mvv-jp{
  font-size: 32px !important;
  font-weight: 700;
  color: #222;
  margin-bottom: 32px !important;
  margin-top: 0 !important;
  line-height: 1.4;
}

.p-mvv-icon{
  width: 90px;
  height: 90px;
  margin: 0 auto 32px;
  border-radius: 50%;
  background: #FFF7EB;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-mvv-icon img{
  width: 48px;
  height: auto;
}

.p-mvv-ttl{
  font-size: 20px !important;
  font-weight: bold;
  line-height: 2;
  margin-top: 0 !important;
}
@media screen and (max-width: 599px){

  .p-mvv-card{
    border-radius: 16px;
    padding: 32px 20px !important;
  }

  .p-mvv-en{
    font-size: 12px;
    letter-spacing: .15em;
    margin-bottom: 0px;
  }

  .p-mvv-jp{
    font-size: 24px !important;
    margin-bottom: 24px !important;
    line-height: 1.4;
  }

  .p-mvv-icon{
    width: 70px;
    height: 70px;
    margin: 0 auto 24px;
  }

  .p-mvv-icon img{
    width: 36px;
  }

  .p-mvv-ttl{
    font-size: 18px !important;
    line-height: 1.8;
  }

}
/* Orange */

.p-mvv-card-orange .p-mvv-en{

  color: #F39800 !important;

}

.p-mvv-card-orange .p-mvv-icon{

  background: #FFF7EB;

}

/* Blue */

.p-mvv-card-blue .p-mvv-en{

  color: #2563EB !important;

}

.p-mvv-card-blue .p-mvv-icon{

  background: #EEF5FF;

}

/* Green */

.p-mvv-card-green .p-mvv-en{

  color: #16A34A !important;

}

.p-mvv-card-green .p-mvv-icon{

  background: #F1FBF4;

}
/* カルーセル */
.loop-slider {
    display: flex;
    overflow: hidden;
    gap: 40px; /* 画像間の余白を指定 */
}

.loop-slider .wp-block-group__inner-container,
.loop-slider .swell-block-columns {
    display: contents;
}

.loop-slider .swell-block-columns__inner {
    flex-wrap: nowrap;
    animation: infinity-scroll-left 25s infinite linear; /* アニメーションの時間を指定 */
}

.loop-slider .swell-block-column figure {
    width: 600px; /* 画像の横幅を指定（パソコン） */
    position: relative;
}

.loop-slider .swell-block-column figure::before {
    padding-top: 56%; /* 画像の縦横比を指定 */
    display: block;
    content: "";
}

.loop-slider .swell-block-column figure img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 959px) {
    .loop-slider .swell-block-column figure {
        width: 358px; /* 画像の横幅を指定（スマホ） */
    }
}

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

.p-boardmember-heading-wrapper{
  border-bottom: 1px solid #F39800;
  padding-bottom: 40px !important;
  margin-bottom: 140px !important;
}
@media screen and (max-width: 599px){
  .p-boardmember-heading-wrapper{
    margin-bottom: 40px !important;
    border-bottom: 2px solid #F39800;
    padding-bottom: 20px !important;
  }
}
.p-boardmember-heading-wrapper h2{
  font-size: 44px !important;
  margin-bottom: 1rem !important;
}
@media screen and (max-width: 599px){
  .p-boardmember-heading-wrapper h2{
    font-size: 32px !important;
  }
}
.p-member-container{
  border-radius: 24px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.07);
  padding: 40px;
}
@media screen and (max-width: 599px){
  .p-member-container{
    box-shadow: none;
    padding: 0;
  }
}
.p-boardmember-ttl{
  font-size: 14px;
  color: #222;
  margin-bottom: 4px;
}
@media screen and (max-width: 599px){
  .p-bm-ttl{
    font-size: 13px !important;
  }
}
.p-boardmember-name{
  font-size: 36px !important;
  display: inline-block;
  border-bottom: 2px solid #F39800;
  padding-bottom: 24px !important;
}
@media screen and (max-width: 599px){
  .p-boardmember-name{
    font-size: 20px !important;
    padding-bottom: 12px !important;
  }
}
.p-boardmember-gray-bg{
  background-color: #F0F0F0;
  border-radius: 16px;
  padding: 16px;
}
@media screen and (max-width: 599px){
  .p-boardmember-gray-bg{
    background-color: transparent;
    padding: 0;
  }
}
.p-boardmember-quote{
  padding-left: 32px;
  position: relative;
}
@media screen and (max-width: 599px){
  .p-bm-quote{
    font-size: 14px !important;
    padding-left: 24px !important;
  }
  .p-bm-desc{
    font-size: 14px !important;
  }
}

.p-boardmember-quote::before{
  content: "" !important;
  background: url(./images/common/icon_quote.svg) no-repeat;
  width: 20px;
  height: 20px;
  background-size: contain;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
}


/* =============================================
サービスセクション
============================================= */

.p-service-column-wrapper {
  counter-increment: service-count;
  position: relative;
  margin-bottom: 5rem !important;
}

.p-service-column-wrapper .swell-block-columns__inner {
  border-radius: 24px;
  border: 1px solid #F0F0F0;
  box-shadow: 0 16px 32px rgba(153, 153, 153, 0.1);
  overflow: hidden;
  max-width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 599px){
  .p-service-column-wrapper .swell-block-columns__inner{
    flex-direction: column;
  }
}

.p-service-column-wrapper .swell-block-columns__inner .swell-block-column {
  margin-left: 0 !important;
  width: 50% !important;
}
@media screen and (max-width: 599px){
  .p-service-column-wrapper .swell-block-columns__inner .swell-block-column{
    width: 100% !important;
  }
}

.p-service-column-wrapper .swell-block-column > * {
  position: relative;
  z-index: 1;
}
.p-service-img{
  height: 100%;
}
@media screen and (max-width: 599px){
  .p-service-img{
    height: 200px;
  }
}
.p-service-img img{
  height: 100%;
  object-fit: cover;
}

.p-service-column-right{
  padding: 3rem 2rem !important;
  margin-left: 0 !important;
}
@media screen and (max-width: 599px){
  .p-service-column-right{
    padding: 20px !important;
  }
}

.p-service-ttl-en{
  font-size: 14px;
  color: #925B00;
  margin-bottom: 1rem;
}
@media screen and (max-width: 599px){
  .p-service-ttl-en{
    margin-bottom: 8px;
    line-height: 1 !important;
  }
}

.p-service-title-wrapper{
  border-bottom: 1px solid #999;
  padding-bottom: 2rem;
  position: relative;
}
@media screen and (max-width: 599px){
  .p-service-title-wrapper{
    padding-bottom: 24px;
  }
}
.p-service-title-wrapper::before {
  content: counter(service-count, decimal-leading-zero);
  position: absolute;
  top: -38px;
  right: -6px;
  font-size: 64px;
  font-weight: 700;
  color: #222;
  opacity: 0.1;
  line-height: 1;
  z-index: 10;
  pointer-events: none;
}
.p-service-tag{
  background-color: #925B00;
  padding: 0 .5em;
  line-height: 2;
  display: inline-block;
  color: #fff;
  border-radius: 4px;
}

/* =============================================
会社概要ページ
============================================= */

.p-company-wrapper{
  max-width: 850px;
  margin: 0 auto;
}
.swell-block-dl{
  display: flex;
  margin-bottom: 3rem !important;
}
.swell-block-dl__dt{
  width: 18%;
}
@media screen and (max-width: 599px){
  .swell-block-dl__dt{
    width: 30%;
  }
}

.swell-block-dl__dd{
  margin-left: 1rem !important;
  width: 82%;
  padding: 0 !important;
}
@media screen and (max-width: 599px){
  .swell-block-dl__dd{
    width: 75%;
  }
  .swell-block-dl__dd p{
    font-size: 14px !important;
  }
}
.p-company-access-label{
  font-size: 18px;
  margin-bottom: 8px !important;
}
.p-company-btn__board--wrapper{
  max-width: 441px;
  margin: 128px auto 0;
  border: 1px solid #222;
  border-radius: 1rem;
  overflow: hidden;
}
.p-company-btn__txt{
  position: relative;
  display: inline-block;
}
.p-company-btn__txt::before{
  content: "";
  background-color: #F39800;
  width: 3px;
  height: 1rem;
  left: -12px;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
}

/* =============================================
お問い合わせページ
============================================= */
.w850_pc{
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
}
/* フォーム全体のスタイル調整 */
.custom-form {
    max-width: 850px;
    margin: 0 auto;
}

/* 各項目の上下余白 */
.form-item {
    margin-bottom: 48px;
}
@media screen and (max-width: 599px){
  .form-item{
    margin-bottom: 24px;
  }
}

/* ラベル（項目名）のスタイル */
.form-item label {
    display: block;
    font-weight: bold;
    margin-bottom: 16px;
    font-size: 16px;
}

/* 必須の * マークを赤くする */
.form-item .req {
    color: #D92626;
    margin-left: 4px;
}

/* 入力欄（テキストボックス・テキストエリア）のスタイル */
.custom-form input[type="text"],
.custom-form input[type="email"],
.custom-form input[type="tel"],
.custom-form textarea {
    width: 100%;
    padding: 24px 32px;
    border: 2px solid #999999;
    border-radius: 8px;
    background-color: #F0F0F0 !important;
    font-size: 16px;
    box-sizing: border-box;
}
@media screen and (max-width: 599px){
  .custom-form input[type="text"],
  .custom-form input[type="email"],
  .custom-form input[type="tel"],
  .custom-form textarea {
    padding: 16px;
    line-height: 1.4;
    border: 1px solid #999;
  }
}
/* テキストエリア（お問い合わせ内容）の高さ */
.custom-form textarea {
    height: 290px;
}
@media screen and (max-width: 599px){
  .custom-form textarea{
    height: 160px;
  }
}

/* プレースホルダー（例：の文字）の色 */
.custom-form ::placeholder {
    color: #999;
}

/* 送信ボタンのスタイル（中央寄せ・黒背景・丸み） */
.form-submit {
    text-align: center;
    margin-top: 40px;
}
@media screen and (max-width: 599px){
  .form-submit{
    margin-top: 32px;
  }
}

.confirm-btn{
    background-color: #222 !important;
    color: #fff !important;
    font-weight: bold;
    padding: 16px 107px !important;
    border-radius: 50px !important;
    border: none;
    font-size: 16px;
    cursor: pointer;
    transition: opacity 0.3s ease;
}
@media screen and (max-width: 599px){
  .confirm-btn{
    padding: 16px !important;
    line-height: 1.4;
  }
}

/* ボタンホバー時 */
.confirm-btn:hover {
    opacity: 0.8;
}

/* SWELLのデフォルトの枠線を消すための微調整 */
.custom-form input, .custom-form textarea {
    box-shadow: none !important;
}

/* ==========================
確認画面
========================== */

.contact-confirm{
    display:none;
}

.confirm-lead{
    margin-bottom: 48px;
}

.confirm-item{
    margin-bottom:48px;
}

.confirm-item h3{
    font-size: 16px;
    font-weight:bold;
    text-align: left !important;
}

.confirm-item p{
    line-height:2;
    white-space:pre-wrap;
}
h3.req{
  color: #D92626 !important;
}

.privacy-area{
    display:flex;
    gap:16px;
    align-items:center;
    margin-top: 48px;
    justify-content: center;
}

.privacy-area input{
    color: #F39800;
}

.privacy-area a{
    color:#F39800;
    text-decoration: underline;
}
.confirm-button{
  text-align: center;
  margin-top: 48px;
}
.send-btn{
    width: 358px !important;
    height: 54px;
    border-radius:999px;
    font-weight:bold;
    transition:.3s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border: none !important;
    font-size: 16px !important;
}

.send-btn{
    background:#999 !important;
    color:#fff !important;
    pointer-events:none;
}

.send-btn.active{
    background:#F39800 !important;
    pointer-events:auto;
}

/* =============================================
サンクスページ
============================================= */
.p-thanks-img{
  width: 200px;
  margin: 0 auto 48px;
}
.p-thanks-btn a{
  width: 358px;
}


/* =============================================
プライバシーページ
============================================= */

.p-privacy-wrapper{
  background-color: #FEF3E2;
  border-radius: 24px;
  padding: 4rem;
}
@media screen and (max-width: 599px){
  .p-privacy-wrapper{
    padding: 2.4rem;
  }
}
.p-privacy-wrapper h2{
  font-size: 1rem !important;
  margin: 1.5rem 0 1rem !important;
}

/* =============================================
フッター
============================================= */
.l-container.w-footer{
  padding-right: 0 !important;
}
@media screen and (max-width: 599px){
  .l-container.w-footer{
    padding-right: 16px !important;
  }
}
.w-footer{
  align-items: center;
}
.l-footer .w-footer {
  gap: 10rem !important;
}
@media screen and (max-width: 599px){
  .l-footer .w-footer{
    gap: 0 !important;
  }
}
.l-footer__widgetArea{
  padding-top: 64px !important;
}
@media screen and (max-width: 599px){
  .l-footer__widgetArea{
    padding-top: 32px !important;
    padding-bottom: 16px !important;
  }
}
.l-footer__foot {
  padding-bottom: 64px;
}
@media screen and (max-width: 599px){
  .l-footer__foot{
    padding-bottom: 32px;
  }
}

.l-footer-logo{
  width: 146px;
  margin-bottom: .5rem;
}
@media screen and (max-width: 599px){
  .l-footer-logo{
    width: 117px;
    margin-bottom: 16px;
  }
}
.l-footer-info-text{
  font-size: 14px !important;
  max-width: 222px;
  margin-bottom: 3rem;
}
@media screen and (max-width: 599px){
  .l-footer-info-text{
    max-width: 100%;
    margin-bottom: 16px !important;
  }
}
.l-footer-sns{
  gap: 24px;
}
@media screen and (max-width: 599px){
  .l-footer-sns{
    gap: 16px;
    justify-content: flex-end;
  }
}
.l-footer-facebook{
  width: 40px;
  margin-right: 24px;
}
@media screen and (max-width: 599px){
  .l-footer-facebook{
    width: 32px;
    margin-right: 16px;
  }
}
.l-footer-instagram{
  width: 40px;
}
@media screen and (max-width: 599px){
  .l-footer-instagram{
    width: 32px;
  }
}
.c-gnav .sub-menu a:before, .c-listMenu a:before{
  display: none;
}

.l-footer .l-footer__widgetArea {
  padding: 2rem 0;
}
.l-footer .w-footer {
  display: grid;
  grid-template-columns: 450px 1fr;
  gap: 3rem;
}
@media (max-width: 959px) {
  .l-footer .w-footer {
    grid-template-columns: 100%;
    gap: 1.5rem;
  }
}
.l-footer .w-footer__box {
  padding: 0;
}
@media (max-width: 959px) {
  .l-footer .w-footer__box:nth-child(1) .swell-block-columns__inner{
    width: 100%;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 auto;
  }
  .l-footer .swell-block-column{
    margin-left: 0 !important;
  }
}
.l-footer .w-footer__box:nth-child(2) {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}
@media (max-width: 1279px) {
  .l-footer .w-footer__box:nth-child(2) {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
}

.l-footer .w-footer__box:nth-child(2) .c-widget + .c-widget {
  margin-top: 0;
}
.l-footer .w-footer__box:nth-child(2) .c-listMenu a {
  padding: 0.5em 0;
  border-bottom: none;
}
@media (max-width: 599px) {
  .l-footer .w-footer__box:nth-child(2) .c-listMenu a {
    font-size: 14px;
    font-weight: bold;
  }
}
.l-footer .w-footer__box:nth-child(2) .c-listMenu .menu > li:not(.nav_em) > a:before {
  content: none;
}
.l-footer .w-footer__box:nth-child(2) .c-listMenu .menu > li.nav_em > a {
  padding-left: 2em;
}

.l-footer .w-footer__box:nth-child(2) .c-listMenu .sub-menu a {
  font-size: 1em;
  padding-left: 2em;
}
@media (max-width: 599px) {
  .l-footer .w-footer__box:nth-child(2) .c-listMenu .sub-menu a {
    font-size: 13px;
  }
}
.l-footer .w-footer__box:nth-child(2) .c-listMenu .sub-menu a::before {
  content: "ー";
  left: 1em;
}
.l-footer .w-footer__box + .w-footer__box {
  margin-top: 0;
}
@media (max-width: 599px){
  .l-footer .w-footer__box + .w-footer__box{
    margin-top: 16px;
  }
}

.w-beforeFooter {
  overflow: visible;
}
.w-beforeFooter .c-widget .textwidget > :not(:last-child) {
  margin-bottom: 0;
}
.p-footer-wrapper{
  width: 100%;
}
/* ==========================================================
   TOP BLOG
========================================================== */

.topBlog{
	position:relative;
	width:100%;
}

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

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

/* ==========================================================
   PC / SP
========================================================== */

.topBlog__pc{
	display:block;
	padding-bottom:60px;
  margin-top: 115px;
}

.topBlog__sp{
	display:none;
}

/* ==========================================================
   Swiper
========================================================== */
.swiper{
  overflow: visible !important;
}
.topBlogSwiper{
	overflow:visible;
}

.topBlogSwiper .swiper-wrapper{
	align-items:flex-start;
}

.topBlogSwiper .swiper-slide{

    width: 300px;

    transform: scale(1);

    transition: .4s;
    opacity: 1 !important;
    

}

.topBlogSwiper .swiper-slide-active{

    transform: scale(1.5) !important;
    z-index: 5;

}

/* ==========================================================
   Card
========================================================== */

.topBlogCard{
	transition:.35s;
  background-color: rgba(255,255,255,0.5);
  border-radius: 16px;
  padding: 16px;
}

.topBlogCard:hover{
	transform:translateY(-6px);
}

.topBlogCard__img{
	overflow:hidden;
	border-radius:16px;
}

.topBlogCard__img img{
	transition:.4s;
}

.topBlogCard:hover img{
	transform:scale(1.05);
}

/* ==========================================================
   画像サイズ
========================================================== */

.swiper-slide .topBlogCard__img{
	height:150px;
}

/* ==========================================================
   Body
========================================================== */

.topBlogCard__body{
	padding-top: 16px;
}

/* ==========================================================
   日付・カテゴリー
========================================================== */

.topBlogCard__meta{

	display:flex;
	align-items:center;
	justify-content: space-between;

	margin-bottom:16px;

}

.topBlogCard__date{

	font-size:14px;
	color:#222;

}

.topBlogCard__cat{

	display:inline-flex;
	align-items:center;
	justify-content:center;

	padding:4px 8px;

	border-radius: 4px;

	background:#222;
	color:#fff;

	font-size:14px;
	font-weight:700;

	line-height:1;

}

/* ==========================================================
   タイトル
========================================================== */

.topBlogCard__title{

	font-size: 16px;
	font-weight:700;
	line-height:1.4;
  margin-top: 0 !important;
  text-align: left !important;

	margin-bottom:16px !important;

	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;

	overflow:hidden;

}

/* ==========================================================
   本文
========================================================== */

.topBlogCard__text{

	font-size:16px;
	line-height:1.4;
	color:#222;

	display:-webkit-box;
	-webkit-line-clamp:3;
	-webkit-box-orient:vertical;

	overflow:hidden;

}
/* ==========================================================
   Active
========================================================== */

.swiper-slide-active .topBlogCard{
	
}

/* ==========================================================
   Pagination
========================================================== */

.topBlogPagination{
	position:static !important;
	margin-top:90px;
	text-align:center;
}

.topBlogPagination .swiper-pagination-bullet{

	width:12px;
	height:12px;

	margin:0 4px !important;

	border-radius:999px;

	background:#999999;

	opacity:1;

	transition:.3s;

}

.topBlogPagination .swiper-pagination-bullet-active{

	width:24px;

	background:#222;

}


/* ==========================================================
   SP
========================================================== */

@media (max-width:767px){

	.topBlog__pc{
		display:none;
	}

	.topBlog__sp{
		display:block;
	}

	.topBlog__sp .topBlogCard{

		margin-bottom: 16px;

	}

	.topBlog__sp .topBlogCard:last-child{

		margin-bottom:0;

	}

	.topBlog__sp .topBlogCard__img{
    border-radius: 0;
		height: 183px;
		overflow:hidden;

	}

	.topBlog__sp .topBlogCard__body{

		padding-top:16px;

	}

	.topBlog__sp .topBlogCard__meta{

		margin-bottom:16px;

	}

	.topBlog__sp .topBlogCard__date{

		font-size:14px;

	}

	.topBlog__sp .topBlogCard__cat{

		font-size:14px;

		padding: 4px 8px;

	}

	.topBlog__sp .topBlogCard__title{

		font-size: 16px;

		line-height:1.4;

		margin-bottom: 16px;
    margin-top: 0 !important;
    text-align: left !important;

	}

	.topBlog__sp .topBlogCard__text{

		font-size: 16px;

		line-height: 1.4;

	}

}

/* ==========================================================
ブログ一覧
========================================================== */

/* カテゴリーナビ */
.p-category-nav {
    display: flex;
    justify-content: center;
    gap: 20px;
    list-style: none;
    margin-bottom: 64px;
    padding: 0;
    flex-wrap: wrap;
}

.p-category-nav button {
    border: 1px solid #F39800;
    background: #fff;
    padding: 12px 64px;
    border-radius: 999px;
    cursor: pointer;
    transition: 0.3s;
    font-size: 16px;
    font-weight: bold;
}

.p-category-nav button.is-active {
    background-color: #F39800;
    border-color: #f39800;
    color: #fff;
}

/* グリッドレイアウト */
.p-post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

@media (max-width: 768px) {
    .p-post-grid { grid-template-columns: repeat(1, 1fr); }
}

/* カードデザイン */
.p-post-card__img {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 16px;
    margin-bottom: 16px;
}
.p-post-card__img img {
    width: 100%; height: 100%; object-fit: cover;
}

.p-post-card__meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    margin-bottom: 16px;
}

.p-post-card__label {
    background: #222;
    color: #fff;
    padding: 4px 8px;
    font-size: 14px;
    border-radius: 4px;
    line-height: 1;
}

.p-post-card__title {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 16px !important;
    margin-top: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-align: left !important;
}

.p-post-card__excerpt {
    font-size: 16px;
    line-height: 1.4;
}

.p-post-card__link {
    display: block;
    text-decoration: none;
    color: inherit;
    height: 100%;
}

.p-post-card__link:hover {
    text-decoration: none;
    opacity: 1;
}

/* ページネーション */
#js-pagination-output {
    margin-top: 64px;
    display: flex;
    justify-content: center;
    gap: 12px;
}

#js-pagination-output a, 
#js-pagination-output span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #F39800;
    border-radius: 8px;
    text-decoration: none;
    color: #222;
    font-size: 16px;
}

#js-pagination-output .current {
    background-color: #f39800;
    color: #fff;
    border-color: #f39800;
}
.page-numbers{
  margin: 0 !important;
  box-shadow: none !important;
}
.prev, .next{
  color: #F39800 !important;
  border: none !important;
}
#js-pagination-output .dots { border: none; }

/* ローダー */
.p-loader {
    position: fixed; top:0; left:0; width:100%; height:100%;
    background: rgba(255,255,255,0.5);
    z-index: 100; align-items: center; justify-content: center;
}


/* --------------------------------------------------
 * 投稿ヘッダー（single.php）
 * -------------------------------------------------- */
.l-single-article{
  padding: 100px 0;
}
.p-entryHeader {
    margin-bottom: 40px;
}
.p-entryHeader__thumb {
    margin-bottom: 56px;
    width: 100%;
}
.p-entryHeader__thumb img {
    width: 100%;
    height: auto;
    border-radius: 20px;
    object-fit: cover;
}
.p-entryHeader__cat {
    display: inline-block;
    background: #222;
    color: #fff;
    font-size: 16px;
    line-height: 1.4;
    padding: 8px 12px;
    border-radius: 4px;
    margin-bottom: 16px;
}
.p-entryHeader__title {
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 16px;
    line-height: 1.4;
}
.p-entryHeader__meta {
    display: flex;
    gap: 1rem;
    font-size: 16px;
    color: #4D4D4D;
    margin-bottom: 56px;
}

/* --------------------------------------------------
 * 戻るボタン
 * -------------------------------------------------- */
.p-returnBtn {
    margin: 56px auto 0;
    text-align: center;
}
.p-returnBtn a {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    text-decoration: none;
    color: #222;
    font-size: 16px;
    font-weight: 700;
    transition: opacity 0.3s;
}
.p-returnBtn a:hover {
    opacity: 0.7;
}
.p-returnBtn__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
}

.p-articleFoot{
  display: none !important;
}

@media (max-width: 599px) {
    .p-entryHeader__title { font-size: 24px; }
}

/* @media (max-width: 599px){
  *{
    line-height: 1.8 !important;
  }
} */

.p-bm-wrapper .swell-block-columns__inner{
  flex-direction: row !important;
}