@charset "UTF-8";
/*
    Template: swell
    Theme Name: LOFIR_DEV
    Theme URI:
    Description:
    Version: 1.0.1
    Author:
    Author URI:

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* WEBフォント
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600&display=swap');
 */
/* @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@700&display=swap');
 }*/

/* WEBフォント */
/* @import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500;700;900&display=swap"); */

/* 色設定（swell本体で設定する内容）
==================================================== */

/* 全体調整
==================================================== */

body {
  font-feature-settings: "palt" 1;
  /* letter-spacing: 0.1em; */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
  font-weight: 700; */
  padding-top: clamp(calc(90px * 0.7), calc(90 * 100vw / 480), 90px);
}
@media screen and (min-width: 961px) {
  body {
    padding-top: 0;
  }
}
html {
  margin-top: 0 !important;
}
@media (min-width: 782px) {
  html {
    margin-top: 0 !important;
  }
}

/* ページ上下の余白を削除 */
.page .l-content {
  padding-top: 0;
}
.w-beforeFooter {
  margin: 0 auto;
}

/* 余白調整 */
@media (min-width: 600px) {
  div.has-background.pd4em {
    padding: 4em;
  }
}
.gap0 {
  gap: 0;
}

/* 角丸 */
.kadomaru{
  border-radius: 1em;
}
.kadomaru_img img{
  border-radius: 1em;
}
.kadomaru_img figure{
  border-radius: 1em;
}
.clip_kadomaru{
  clip-path: inset(0 0 round 1em);
}
.kadomaru .wp-block-group__inner-container{
  padding: 1em;
}
/* 表の角丸調整 */
figure.kadomaru.wp-block-table {
  position: relative;
  border: 1px solid #dcdcdc;
}
figure.kadomaru.wp-block-table table{
  clip-path: inset(1px 1px round 1em);
}


/* フォント・カラー設定 */
.zen-maru {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
}
.post_content h2.is-style-section_ttl {
  font-size: 28px;
}
:root {
  --swl-text_color--black: #443e37;
}
.--first_font {
  font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
}
.--second_font {
  font-family: "Noto Sans JP", sans-serif;
}
.--wight500 {
  font-weight: 500;
}
.--wight900 {
  font-weight: 900;
}
.--main-orange {
  color: #d8740b;
}
.--cta-orange {
  color: #e98318;
}
.--green {
  color: #379655;
}
.--green02 {
  color: #426a4e;
}
.wrapper {
  position: relative;
  width: fit-content;
}
a:hover {
  opacity: 0.8 !important;
}
/* ヘッダー
==================================================== */

/* .c-gnav>.menu-item>a{
    padding: 0 1.5em;
}
.c-gnav>.menu-item>a .ttl{
    font-weight: bold;
}
@media (max-width: 1100px){
    .c-gnav>.menu-item>a{
        padding: 0 1em;
    }
} */
@media (max-width: 959px) {
  .l-header__inner {
    display: none !important;
  }
  .sp_header.is-hide {
    display: none !important;
  }
}
[data-partsid="16667"] .swell-block-box-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  margin-top: 5px !important;
}
[data-partsid="16667"] .swell-block-box-menu__inner {
  justify-content: space-around;
}
[data-partsid="16667"] .swell-block-box-menu__link {
  padding: 10px 0;
}
[data-partsid="16667"]
  .swell-block-box-menu.is-style-default
  .swell-block-box-menu__item {
  border: none;
  border-radius: 12px;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2);
  max-height: clamp(calc(80px * 0.7), calc(80 * 100vw / 480), 80px);
}
[data-partsid="16667"] .swell-block-box-menu.is-style-default .swell-block-box-menu__item.head_menu {
  width: 16.9%;
  background-color: #fff;
}
[data-partsid="16667"] .swell-block-box-menu.is-style-default .swell-block-box-menu__item.head_tel {
  width: 26.8%;
  background-color: #fff;
}
[data-partsid="16667"]
  .swell-block-box-menu.is-style-default
  .swell-block-box-menu__item.head_line {
  width: 26.8%;
  background-color: #15c540;
  color: #fff;
}
[data-partsid="16667"]
  .swell-block-box-menu.is-style-default
  .swell-block-box-menu__item.head_judgment {
  width: 26.8%;
  background-color: #d8740b;
}
[data-partsid="16667"] .sp_header.is-hide {
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
[data-partsid="16667"] .swell-block-box-menu__figure {
  margin-bottom: 0 !important;
}
[data-partsid="16667"] .swell-block-box-menu.is-style-default .swell-block-box-menu__item.head_tel img {
  width: clamp(calc(32px * 0.7), calc(32 * 100vw / 480), 32px);
  aspect-ratio: 1;
  height: auto;
}
[data-partsid="16667"] .swell-block-box-menu.is-style-default .swell-block-box-menu__item.head_judgment img {
  width: clamp(calc(35px * 0.7), calc(35 * 100vw / 480), 35px);
  aspect-ratio: 1;
  height: auto;
}
[data-partsid="16667"] .swell-block-box-menu.is-style-default .swell-block-box-menu__item.head_line img {
  width: clamp(calc(40px * 0.7), calc(40 * 100vw / 480), 40px);
  aspect-ratio: 1;
  margin-top: clamp( -2px, calc(-2 * 100vw / 480), calc(-2px * 0.7));
  height: auto;
}
[data-partsid="16667"] .swell-block-box-menu.is-style-default .swell-block-box-menu__item.head_menu img {
  width: clamp(calc(36px * 0.7), calc(36 * 100vw / 480), 36px);
  aspect-ratio: 1;
  height: auto;
}
[data-partsid="16667"] .swell-block-box-menu__text {
  line-height: 150%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  font-weight: 700;
}

/* モーダル */
.btn_reason,
.btn_white {
  margin-bottom: 6px;
}
.menu_modal {
  padding: 40px 20px;
  margin-bottom: 0;
}
.btn_reason div.has-background {
  padding: 8px 20px;
  border-radius: 16px;
  box-shadow: 3px 3px 20px 0 rgba(106, 97, 78, 0.12);
}
.btn_arrow.wp-block-group.is-row {
  justify-content: space-between;
  align-items: center;
}
div.has-background.menu_modal02 {
  padding: 35px 17.5px 100px;
}
.modal_img {
  width: clamp(calc(70px * 0.7), calc(70 * 100vw / 420), 70px);
  aspect-ratio: 1;
  height: auto;
}
.modal_text {
  font-size: clamp(10px, calc(13 * 100vw / 420), 13px);
  line-height: 150%;
}
.modal_text .under_line {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 420), 16px);
  line-height: 150%;
}
.wp-block-tiptip-hyperlink-group-block:has(.btn_white02){
  max-width: 620px;
  margin: 0 auto;
}
.btn_white02 {
  border-radius: 26.25px;
  border: 3.5px solid #66c082;
  background: #fff;
  box-shadow: 2.625px 2.625px 10.5px 0 rgba(61, 74, 57, 0.14);
  position: relative;
  padding: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 32px) 18px !important;
  max-width: 620px;
  margin: 0 auto;
}
.btn_white02 .green_baloon {
  position: relative;
  z-index: 1;
  line-height: 1.2;
  font-size: clamp(10px, calc(14 * 100vw / 480), 16px);
  padding-left: 0.7em;
}
.btn_white02 .wp-block-media-text__content{
  padding: 0 !important;
}
/* .btn_white02 .green_baloon span {
  padding-left: 0.8em;
} */
/* .btn_white02 .green_baloon::before {
  position: absolute;
  content: "";
  top: clamp(-4px, calc(-4 * 100vw / 480), calc(-4px * 0.7));
  left: 0;
  width: clamp(calc(154px * 0.7), calc(154 * 100vw / 480), 154px);
  aspect-ratio: 154 /33;
  height: auto;
  background: url(asset/img/baloon_green.png)
    no-repeat center center / cover;
  z-index: -1;
} */
.btn_white02 figure {
  position: absolute;
  width: clamp(calc(176px * 0.7), calc(176 * 100vw / 480), 224px);
  aspect-ratio: 193 / 114;
  height: auto;
  right: 3%;
  bottom: 8%;
}
.btn_white02_text {
  line-height: 1.5;
  margin-top: 6px;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 24px);
}
div.has-background.btn_white02.--orange {
  border: 4px solid #e98318;
}
.btn_white02.--orange .green_baloon {
  background: #e98318;
}
.btn_white02.--orange .green_baloon:before {
    border-top-color: #e98318;
}
/* .btn_white02.--orange .green_baloon::before {
  background: url(asset/img/baloon_orange.png)
    no-repeat center center / cover;
} */
/* .btn_white02.--orange figure {
  width: clamp(calc(220px * 0.7), calc(220 * 100vw / 480), 220px);
  pointer-events: none;
} */
/* @media screen and (max-width: 375px) {
  .btn_white02.--orange figure {
    width: clamp( calc(157px * 0.7), calc(157 * 100vw / 375), 157px);
  }
} */
.btn_white02 .--orange {
  font-size: clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 24px);
  line-height: 180%;
  color: #d8740b;
  margin-right: 2px;
}
.--dot_yellow {
  position: relative;
}
.--dot_yellow::after {
  position: absolute;
  content: "••••";
  color: #ffea5c;
  top: -50%;
  left: 6%;
  font-size: clamp(calc(17px * 0.7), calc(17 * 100vw / 480), 20px);
  letter-spacing: 0.7em;
}
.--dot_orange {
  position: relative;
}
.--dot_orange::after {
  position: absolute;
  content: "••••";
  color: #f4b62c;
  top: -50%;
  left: 6%;
  font-size: 17px;
  letter-spacing: 0.7em;
}
.tel_text01 {
  font-size: clamp(calc(17.5px * 0.7), calc(17.5 * 100vw / 480), 17.5px);
  line-height: 120%;
}
.tel_text02 {
  font-size: clamp(calc(35px * 0.7), calc(35 * 100vw / 480), 35px);
  line-height: 1;
}
.tel_text03 {
  font-size: clamp(10px, calc(14 * 100vw / 480), 14px);
  line-height: 120%;
}
div.has-background.btn_tel {
  border-radius: 26.25px;
  padding-block: 10.5px;
}
.btn_tel p {
  line-height: 1.2;
}
.btn_tel .swl-inline-icon::after {
  top: 50%;
  transform: translateY(-40%);
  width: 27px;
  height: 32px;
  left: 15%;
}

/* ページタイトル（サブタイトル）調整 */
.c-pageTitle {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
}
.c-pageTitle__subTitle {
  display: none;
}

/* スマホ開閉メニュー */
.sp_modal {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  z-index: 99999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}
.sp_modal.is-active {
  opacity: 1;
  pointer-events: auto;
}
.sp_modal_inner {
  width: 100%;
  max-height: 100vh;
  overflow-y: auto;
}
.sp_modal .btn_close {
  position: fixed;
  font-size: 30px;
  top: 0px;
  right: 0px;
  padding: 10px 20px;
  z-index: 1000;
}
body.modal-open {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  overflow: hidden;
}
/* フッター
==================================================== */

/* コンタクトCTA */
.footer_cta {
  position: relative;
}
.footer_cta_ttl_image img {
  width: 60px;
  position: absolute;
  top: -2em;
  left: calc(50% - 30px);
}

/* 共通パーツ
==================================================== */

.w-singleBottom, .w-pageBottom {
  padding: 0 var(--swl-pad_post_content, 0);
}

/* 横幅制限 */
.mw900 {
  max-width: 900px;
  margin: 0 auto;
}

/* 背景 */
.bg__dot {
  background-color: #ffffff;
  background-image: radial-gradient(
    #ebebeb 1.1500000000000001px,
    #ffffff 1.1500000000000001px
  );
  background-size: 30px 30px;
}
/* .post_content > * {
  margin-bottom: 0 !important;
} */

/* 見出し */
.post_content h2.styled {
  font-size: 2em;
  padding: 0.2em 0.2em 0.2em 16px;
  border-left: solid 8px var(--color_htag);
  color: var(--color_main);
  line-height: 1;
  font-family: "Poppins", sans-serif;
  letter-spacing: 0.1em;
}
.post_content h2.styled span {
  display: block;
  font-size: 0.5em;
  color: #838ea2;
  padding-top: 0.5em;
  letter-spacing: 0.25em;
}
.post_content h2.styled.white {
  color: #fff;
}
.post_content h2.styled.white span {
  color: #fff;
}

/* 装飾 */
.border-white-top {
  border-top: 8px solid #fff;
}
.border-red-top {
  border-top: 4px solid #d71018;
}
.indent {
  text-indent: 1em;
}
.image-radius img {
  border-radius: 12px;
}
mark.has-inline-color {
  padding: 0.1em 0.3em;
}
.circle img {
  border-radius: 50%;
}
.under_line {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-underline-offset: 4px;
}
.under_line02 {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-underline-offset: 15%; /* 3.464px */
  text-underline-position: from-font;
}
.orange_line {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-color: #f5bf46;
  text-decoration-thickness: 20%; /* 4px */
  text-underline-offset: 12%; /* 2.4px */
  text-underline-position: from-font;
}

/* サポート実績 */
#result.swell-block-fullWide {
  padding-block: 20px 30px !important;
}
.result_wrapper {
  margin-inline: 5%;
}
.result_box {
  border-radius: 20px;
}
.mv_result {
  max-width: 440px;
  margin-inline: auto;
}
div.has-background.result_box {
  padding: 12px 16px 16px;
}
.result_title {
  font-size: clamp(calc(24px * 0.8), calc(24 * 100vw / 480), 24px);
  line-height: 1.2;
  margin-block: clamp( calc(11px * 0.7), calc(11 * 100vw / 480), 11px);
}
.result_item {
  border-radius: 8px;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2),
    2px 2px 8px 0 rgba(106, 97, 78, 0.2);
  justify-content: space-between;
  align-items: center;
  padding-inline: clamp( calc(31px * 0.7), calc(31 * 100vw / 480), 31px) clamp( calc(35px * 0.7), calc(35 * 100vw / 480), 35px) !important;
}
.result_item:last-of-type {
  padding-block: clamp( calc(5px * 0.7), calc(5 * 100vw / 480), 5px) clamp( calc(7px * 0.7), calc(7 * 100vw / 480), 7px) !important;
}
div.has-background.result_item {
  padding-block: 0;
}
.result_content {
  gap: 3px;
}
.result_number {
  font-size: clamp(calc(72px * 0.8), calc(72 * 100vw / 480), 72px);
  font-weight: 900;
  line-height: 120%;
  background: linear-gradient(
    261deg,
    #ffa240 2.29%,
    #e67220 16.49%,
    #d95a10 31.76%,
    #d34f08 55.92%,
    #cc4300 94.91%
  );
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.result_percent {
  gap: 0;
  padding-bottom: clamp( calc(2px * 0.7), calc(2 * 100vw / 480), 2px);
}
.result_number02 {
  line-height: 1;
  background: linear-gradient(
    261deg,
    #d95a10 0%,
    #d34f08 45%,
    #cc4300 100%
  );
  -webkit-background-clip: text;
  color: transparent;
  display: inline-block;
}
.result_number03 {
  font-size: clamp(calc(40px * 0.8), calc(40 * 100vw / 480), 40px);
  margin-right: clamp( calc(3px * 0.7), calc(3 * 100vw / 480), 3px);
  align-self: flex-end;
  background: linear-gradient(
    261deg,
    #ffa240 2.29%,
    #e67220 45%,
    #d95a10 94.91%,
  );

  -webkit-background-clip: text;
  color: transparent;
  display: inline-block;
}
.result_text01 {
  align-self: flex-end;
  padding-bottom: 3px;
}
.result_item:last-of-type .result_text01 {
  padding-bottom: 0;
}
.result_text02 {
  font-size: 13px;
  font-weight: 500;
  line-height: 200%;
}

@media (min-width: 800px) {
  #mv .mv_result {
    margin-inline: auto 10%;
  }
}
@media screen and (max-width: 360px) {
  .result_item {
    flex-direction: column;
  }
  .result_item:first-of-type .result_number {
    line-height: 1;
    padding-bottom: 8px;
  }
  .result_number.result_number02 {
    line-height: 1;
  }
}

/* ボタン */
.wp-block-tiptip-hyperlink-group-block{
	text-decoration:none;
}
.btn_white.is-style-btn_line {
  position: relative;
}
.btn_white.is-style-btn_line::after {
  position: absolute;
  content: "";
  top: 50%;
  right: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background: url(https://stg.matsuyama-shogai.com/wp-content/uploads/2025/11/scroll_down.png)
    no-repeat center center / contain;
}
.btn_white.is-style-btn_line a {
  background-color: #fff;
  border: none;
  padding: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 16px;
  box-shadow: 3px 3px 20px 0 rgba(106, 97, 78, 0.12);
}
.btn_white.is-style-btn_line a:hover {
  color: #443e37 !important;
  opacity: 0.8;
}
.btn_line_wrapper02 {
  display: flex;
  justify-content: flex-end;
}
.btn_line_wrapper .wp-block-group-is-layout-constrained,
.btn_line_wrapper02 .wp-block-group-is-layout-constrained {
  position: relative;
}
.btn_line_wrapper .cta_img01 {
  position: absolute;
  top: clamp(-25px, calc(-25 * 100vw / 420), calc(-25px * 0.7));
  left: 50%;
  width: clamp(calc(122px * 0.7), calc(122 * 100vw / 420), 122px);
  aspect-ratio: 122 / 44;
  height: auto;
  transform: translateX(-50%);
  z-index: 10;
  pointer-events: none;
}
#cta .btn_line_wrapper .cta_img01 {
  width: clamp( calc(207px * 0.7), calc(207 * 100vw / 480), 207px);
  aspect-ratio: 207 / 45;
}
.btn_line_wrapper .cta_img02 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: clamp(calc(87px * 0.7), calc(87 * 100vw / 420), 87px);
  aspect-ratio: 87 / 96;
  height: auto;
  z-index: 10;
  pointer-events: none;
}

.btn_line a {
  min-height: clamp(calc(80px * 0.7), calc(80 * 100vw / 420), 80px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 4.8em;
  border-radius: 17.5px;
  border: 1.75px solid #379655;
}
.btn_line a span {
  text-shadow: 5.25px 5.25px 17.5px rgba(106, 97, 78, 0.15),
    5.25px 5.25px 17.5px rgba(106, 97, 78, 0.15);
  font-size: clamp(calc(21px * 0.7), calc(21 * 100vw / 420), 21px);
  line-height: 150%;
  position: relative;
}
.btn_line a > span::before {
  position: absolute;
  content: "";
  top: 50%;
  left: clamp(-42px, calc(-42 * 100vw / 420), calc(-42px * 0.7));
  width: clamp(calc(42px * 0.7), calc(42 * 100vw / 420), 42px);
  height: clamp(calc(42px * 0.7), calc(42 * 100vw / 420), 42px);
  transform: translateY(-50%);
  background: url("asset/img/common/line.png") no-repeat center / contain;
}
.btn_line.btn_line--small a {
  padding-block: 8.5px;
  height: auto;
  border: none;
  border-radius: 12px;
  min-width: clamp(calc(194px * 0.7), calc(194 * 100vw / 480), 194px);
  min-height: clamp(calc(44px * 0.7), calc(44 * 100vw / 480), 44px);
}
.btn_line.btn_line--small {
  text-align: right;
}
.btn_line.btn_line--small a span {
  font-size: clamp(10px, calc(14 * 100vw / 480), 14px);
}
.btn_line.btn_line--small a span .--large {
  font-size: clamp(calc(18px * 0.7), calc(18 * 100vw / 480), 18px);
}
.btn_line.btn_line--small a span::before {
  left: -34px;
  width: 32px;
  height: 32px;
}
.btn_line_wrapper02 .cta_img03 {
  position: absolute;
  top: clamp( -25px, calc(-25 * 100vw / 480), calc(-25px * 0.7));
  left: 50%;
  width: clamp( calc(129px * 0.7), calc(129 * 100vw / 480), 129px);
  aspect-ratio: 129 / 28;
    height: auto;
  transform: translateX(-50%);
  z-index: 10;
}
.btn_green.swell-block-button .swell-block-button__link[data-has-icon] {
  border-radius: 16px;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2);
  gap: 7px;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  width: 100%;
}
div.has-background.btn_white03 {
  border-radius: 20px;
  border: 4px solid #66c082;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2),
    3px 3px 20px 0 rgba(106, 97, 78, 0.12);
  position: relative;
  padding: 3px clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  justify-content: space-between;
  max-width: 440px;
  margin-inline: auto;
}
.btn_white03 p {
  font-size: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  color: #426a4e;
  line-height: 150%;
  align-self: center;
}
.btn_white03_img {
  width: clamp(calc(180px * 0.7), calc(180 * 100vw / 480), 180px);
}
.btn_white03_arrow {
  position: absolute;
  bottom: 20px;
  right: 14px;
  width: 20px;
  height: 20px;
}
.cta01 {
  max-width: 440px;
  margin-inline: auto;
}
.cta01 .btn_line a span {
  font-size: clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 24px);
  margin-right: clamp( calc(17px * 0.7), calc(17 * 100vw / 480), 17px);
}
.btn_line_wrapper.cta01 .cta_img01 {
  width: clamp(calc(214px * 0.7), calc(214 * 100vw / 480), 214px);
  aspect-ratio: 214 / 50;
}
.btn_line_wrapper.cta01 .cta_img02 {
  width: clamp(calc(84px * 0.7), calc(84 * 100vw / 480), 84px);
  aspect-ratio: 214 / 157;
  top: 50%;
  transform: translateY(-50%);
  bottom: unset;
}

/* PC用フローティングボタン */
.btn_pc {
  position: fixed;
  max-width: 210px;
  right: -145px;
  bottom: 30%;
  z-index: 99999;
  background-color: #FFF;
  padding: 16px;
  border-radius: 8px;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2),
    3px 3px 20px 0 rgba(106, 97, 78, 0.12);
  transition: all 0.5s ease;
}
.btn_pc:hover {
  right: -10px;
}
.btn_pc .swell-block-button {
  width: fit-content;
  margin-right: 0;
}
.btn_pc .swell-block-button .swell-block-button__link[data-has-icon]{
  gap: 0.5em 0.75em;
}
.btn_pc a {
  text-align: left;
  padding-right: 12px;
  padding-block: 10px;
  line-height: 1.2;
  min-width: 190px;
  justify-content: flex-start !important;
}
.btn_pc .--small {
  font-size: 12px;
}
.btn_pc_line a {
  position: relative;
  padding-left: 52px;
}
.btn_pc_line a::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 21px;
  width: 22px;
  height: 22px;
  transform: translateY(-50%);
  background: url(https://stg.matsuyama-shogai.com/wp-content/uploads/2025/11/line-1.png) no-repeat center/cover;
}

/* flickity */
.flickity-viewport {
  overflow: visible;
}
.flickity-parent .p-postList__thumb {
  display: none;
}
.flickity-carousel.p-postList.-type-card,
.flickity-carousel.p-postList.-type-thumb {
  display: block;
  position: relative;
  width: 88vw;
  /* margin: 0 calc(50% - 44vw); */
  margin: 0 auto;
}
.flickity-carousel li {
  width: 100%;
  list-style-type: none;
}
.case_list .flickity-carousel .p-postList__item a {
  transition: transform 0.25s ease;
}
.case_list .flickity-carousel .p-postList__item a:hover {
  transform: translateY(-7px);
}
#letter .case_list .flickity-carousel .p-postList__item {
  width: 64.3% !important;
  padding-inline: 0.2em;
}
.flickity-prev-next-button {
  top: 50%;
  width: clamp(40px, calc(40 * 100vw / 480), 64px);
  height: clamp(40px, calc(40 * 100vw / 480), 64px);
  border-radius: 50%;
  transform: translateY(-60%);
  background: #66c082;
  z-index: 100;
}
#letter .flickity-prev-next-button {
  top: 50%;
  width: clamp(40px, calc(40 * 100vw / 480), 64px);
  height: clamp(40px, calc(40 * 100vw / 480), 64px);
}
.flickity-button-icon {
  fill: #fff !important;
  transition: 0.3s;
}
.flickity-button:hover {
  background: #66c082 !important;
  opacity: 0.8;
  transition: 0.3s;
}
.flickity-prev-next-button.next {
  right: 8px;
}
#letter .flickity-prev-next-button.next {
  right: -4%;
}
.flickity-prev-next-button.previous {
  left: 8px;
}
#letter .flickity-prev-next-button.previous {
  left: -4%;
}
.flickity-carousel.swell-block-columns__inner {
  display: block;
}
.case_list li.p-postList__item .p-postList__title,
.post-type-archive-works
  .l-mainContent
  .-type-card
  .p-postList__item
  .p-postList__title,
.post-type-archive-cat
  .l-mainContent
  .-type-card
  .p-postList__item
  .p-postList__title,
.post-type-archive-tag
  .l-mainContent
  .-type-card
  .p-postList__item
  .p-postList__title {
  font-size: 0.8em;
}
.case_list li.p-postList__item .feature-table th,
.post-type-archive-works
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  th,
.archive.tax-works_cat
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  th,
.archive.tax-works_tag
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  th {
  width: 12vw;
}
.case_list li.p-postList__item .feature-table th,
.case_list li.p-postList__item .feature-table td,
.post-type-archive-works
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  th,
.post-type-archive-works
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  td,
.archive.tax-works_cat
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  th,
.archive.tax-works_cat
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  td,
.archive.tax-works_tag
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  th,
.archive.tax-works_tag
  .l-mainContent
  .-type-card
  .p-postList__item
  .wp-block-table.feature-table
  td {
  padding: 0.3em 0.5em;
  vertical-align: middle;
}
.flickity-prev-next-button .flickity-button-icon {
  left: 38%;
  top: 32%;
  width: 26%;
  height: 39%;
}
.p-postList__item:hover,
.p-postList__item:hover * {
  opacity: 1 !important;
}

.flickity-slider .p-postList__item {
  opacity: 0.7;
  transition: opacity 0.3s ease;
}
.flickity-slider .p-postList__item.is-selected {
  opacity: 1;
}
.flickity-slider .p-postList__item.is-selected + .p-postList__item {
  opacity: 1;
}
.flickity-slider .p-postList__item:has(+ .is-selected) {
  opacity: 1;
}

@media screen and (max-width: 449px) {
  #case_new .flickity-prev-next-button.next {
    right: 0;
  }
  #case_new .flickity-prev-next-button.previous {
    left: 0;
  }
}
@media screen and (max-width: 375px) {
  #letter .case_list .flickity-carousel .p-postList__item {
    width: 70% !important;
  }
  #case_new .flickity-prev-next-button.next {
    right: 0;
  }
  #case_new .flickity-prev-next-button.previous {
    left: 0;
  }
  #letter .flickity-prev-next-button.next {
    right: 11%;
  }
  #letter .flickity-prev-next-button.previous {
    left: 11%;
  }
  #letter .flickity-prev-next-button {
    top: 45%;
  }
}
@media (min-width: 750px) {
  .-col4 .-type-card.-pc-col3 .p-postList__item,
  .-col4 .-type-thumb.-pc-col3 .p-postList__item {
    width: calc(100% / 2 - 1vw);
  }
  #letter .-col5 .-type-card.-pc-col3 .p-postList__item,
  .-col5 .-type-thumb.-pc-col3 .p-postList__item {
    width: calc(100% / 2 - 1vw) !important;
  }
  #letter .flickity-prev-next-button.previous {
    left: 0;
  }
  #letter .flickity-prev-next-button.next {
    right: 0;
  }
}
@media (min-width: 1000px) {
  .-col5 .-type-card.-pc-col3 .p-postList__item,
  #letter .-col5 .-type-card.-pc-col3 .p-postList__item,
  .-col5 .-type-thumb.-pc-col3 .p-postList__item {
    width: calc(100% / 3 - 1vw) !important;
  }
  #case_new .flickity-carousel.p-postList.-type-card {
    width: initial;
  }
  #case_new .-sidebar-off .-type-card.-pc-col3 .p-postList__item {
    padding-inline-start: 0;
  }
}
@media (min-width: 1320px) {
  .flickity-carousel.p-postList.-type-card {
    width: initial;
  }
  .-sidebar-on.post-type-archive-works
    .l-mainContent
    .-type-card.-pc-col3
    .p-postList__item,
  .-sidebar-on.archive.tax-works_cat
    .l-mainContent
    .-type-card.-pc-col3
    .p-postList__item,
  .-sidebar-on.archive.tax-works_tag
    .l-mainContent
    .-type-card.-pc-col3
    .p-postList__item {
    width: calc(33.33333% - 1vw);
  }
}

/* サイドバー */
.side-accordion-menu .swell-block-accordion__title{
  background-color: #FFF;
  font-weight: bold;
  font-size: 1.1em;
}
.side-accordion-menu, .side-accordion-menu .swell-block-accordion__title{
  background-color: #FFF;
}

.w-fixSide.-multiple .widget_swell_index {
        background: #FFF;
        padding: 1em;
        border-radius: 1em;
}
@media (min-width: 600px) {
    .l-sidebar .wp-block-group {
        --swl-box_padding: 1em;
    }
}

/* 丸い背景 */
/* #cta {
  position: relative;
}
#cta::before {
  content: "";
  position: absolute;
  width: 100%;
  aspect-ratio: 480 /28;
  height: auto;
  max-height: 75px;
  top: 0;
  transform: translateY(-99%);
  left: 0;
  background: url("asset/img/common/bg_white.svg") no-repeat center/cover;
}
#cta.--blue::before {
  background: url("asset/img/common/bg_blue.svg") no-repeat center/cover;
}
#cta::after {
  content: "";
  position: absolute;
  width: 100%;
  aspect-ratio: 480 /28;
  height: auto;
  max-height: 75px;
  bottom: 0;
  transform: translateY(99%) rotate(180deg);
  left: 0;
  background: url("asset/img/common/bg_white.svg") no-repeat center/cover;
  z-index: 10;
}
#cta.--blue::after {
  background: url("asset/img/common/bg_blue.svg") no-repeat center/cover;
} */

/* トップページ
==================================================== */

/* メインビジュアル */
.p-mainVisual__textLayer{
  text-shadow: none !important;
}
.post_content>:first-child.swell-block-fullWide#mv {
  margin-top: clamp( -80px, calc(-80 * 100vw / 480), calc(-80px * 0.7)) !important;
  padding-top: clamp( calc(24px * 0.7), calc(24 * 100vw / 480), 40px) !important;
  margin-bottom: 0 !important;
}

.top #content {
  padding-top: 0;
}
.mv .swell-block-fullWide__inner.l-article {
  padding-inline: 16px;
}
.mv_wrapper {
  position: relative;
  overflow: visible;
  z-index: 1;
  /* padding-block: clamp( calc(19px * 0.7), calc(19 * 100vw / 480), 19px) clamp( calc(45px * 0.7), calc(45 * 100vw / 480), 45px); */
}
.mv_wrapper::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 146%;
  aspect-ratio: 1321 /1454;
  height: auto;
  max-height: 95%;
  background: url(asset/img/mv_background.png)
    no-repeat top center / contain;
  pointer-events: none;
  z-index: 0;
}
.mv .swell-block-columns__inner {
  justify-content: space-between;
  align-items: center;
}
.swell-block-columns .swell-block-column.logo_wrapper {
  margin-top: -1em !important;
}
.top_logo{
  align-items: center;
  gap: 0.5em;
}
.top_copy {
  margin: 0 auto;
}
.top_logo figure {
  width: clamp(calc(65px * 0.7), calc(65 * 100vw / 480), 80px);
}
.post_content .is-style-section_ttl.logo_text {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 24px);
  line-height: 130%;
}
.logo_text02 {
  line-height: 130%;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 24px);
}
.top_area img {
  position: absolute;
  top: -1.5em;
  right: 0;
  z-index: 100;
  width: clamp(calc(96px * 0.7), calc(96 * 100vw / 480), 120px);
}
@media (min-width:960px){
  .top_area img{
    top: -4.5em;
    right: -3em;
  }
}

.mv_text01 {
  border-radius: 10.496px;
  width: fit-content;
  line-height: 150%;
  font-size: clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 32px);
}
p.has-background.mv_text01 {
  padding: clamp( calc(6px * 0.7), calc(6 * 100vw / 480), 6px) clamp(calc(24px * 0.7), calc(18 * 100vw / 480), 18px) clamp( calc(3px * 0.7), calc(6 * 100vw / 480), 6px) clamp( calc(24px * 0.7), calc(24 * 100vw / 480), 24px);
}
.mv_text01 img {
  margin-right: 5px;
}
.mv_img01 {
  width: clamp(calc(109px * 0.7), calc(109 * 100vw / 480), 109px);
  position: absolute;
  top: 0;
  right: clamp(-128px, calc(-128 * 100vw / 480), calc(-128px * 0.7));
}
.mv_text02 {
  letter-spacing: -0.01em;
  font-size: clamp(calc(32px * 0.7), calc(32 * 100vw / 480), 48px);
  line-height: 150%;
}
.mv_img02 {
  width: clamp(calc(309px * 0.85), calc(309 * 100vw / 480), 309px);
  aspect-ratio: 309 / 151;
  height: auto;
  margin-inline: auto;
  position: relative;
  z-index: 10;
}
.result_img {
  width: clamp(calc(401px * 0.7), calc(401 * 100vw / 480), 401px);
  aspect-ratio: 401 / 128;
  height: auto;
  margin-inline: auto;
  position: relative;
  z-index: 10;
}
.mv .post_content[data-partsid="16827"] {
  margin-top: -10px !important;
}

@media (min-width: 960px) {
  .mv_wrapper::before {
    width: 80%;
    top: 0;
  }
}
@media screen and (max-width: 335px) {
  .mv_img01 {
    width: 70px;
    right: -80px;
  }
}

#cta .cta01 {
  margin-block: clamp( calc(46px * 0.7), calc(46 * 100vw / 480), 46px);
}
#cta .about-intro_wrapper {
  border-radius: 30px;
  border: 4px solid #66C082;
  padding: clamp( calc(10px * 0.7), calc(10 * 100vw / 480), 10px) clamp( calc(40px * 0.7), calc(40 * 100vw / 480), 40px);
  min-width: clamp( calc(440px * 0.7), calc(440 * 100vw / 480), 440px);
}
#cta .is-vertically-aligned-bottom>.wp-block-media-text__content {
  padding-bottom: clamp( calc(8px * 0.7), calc(8 * 100vw / 480), 8px);
}
#cta .about-intro {
  max-width: 360px;
  margin-inline: auto;
}
#cta .about-intro p {
  font-size: clamp( calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  line-height: 1.8;
}
#cta .about-intro_wrapper .btn_green.swell-block-button .swell-block-button__link[data-has-icon] {
  min-height: clamp( calc(48px * 0.7), calc(48 * 100vw / 480), 48px);
}
#cta.--blue.swell-block-fullWide {
  padding-block: 38px 41px !important;
}
#cta.--blue.blue02.swell-block-fullWide {
  padding-block: 40px 41px !important;
}
@media screen and (min-width: 650px) {
  #cta.--blue.blue02.swell-block-fullWide {
    padding-block: 0 !important;
  }
}
#cta.--blue div.has-background.menu_modal02 {
  padding: 0;
  max-width: 440px;
  margin-inline: auto;
}
#cta.--blue .btn_line a {
  min-height: clamp( calc(90px * 0.7), calc(90 * 100vw / 480), 90px);
  padding-right: clamp( calc(42px * 0.7), calc(42 * 100vw / 480), 42px);
}
#cta.--blue .btn_line a span {
  font-size: clamp( calc(24px * 0.7), calc(24 * 100vw / 480), 24px);
}
#cta.--blue .btn_line_wrapper .cta_img02 {
  width: clamp( calc(100px * 0.7), calc(100 * 100vw / 480), 100px);
  aspect-ratio: 100/109;
}
#cta.--blue .btn_line_wrapper .cta_img02 img {
  width: 100%;
}
#cta.--blue div.has-background.btn_tel {
  padding-block: 12px;
}

.btn_white02 .green_baloon {
  font-size: clamp( calc(16.5px * 0.7), calc(16.5 * 100vw / 480), 20px);
  background: #66c082;
  color: #fff;
  padding:0.25em 0.5em;
  border-radius: 1em;
  display: inline-block;
  position: relative;
}
.btn_white02 .green_baloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 15%;
  transform: translateX(-50%);
  border: 8px solid transparent;
  border-top-color: #66c082;
}

/* #cta.--blue .btn_white02 .green_baloon::before {
  top: -8px;
} */
.btn_white02_text {
  font-size: clamp( calc(19.8px * 0.7), calc(19.8 * 100vw / 480), 24px);
}
/* .btn_white02 figure {
  width: clamp( calc(221px * 0.7), calc(221 * 100vw / 480), 266px);
  aspect-ratio: 221 / 130;
} */
/* #cta.--blue .btn_white02 .green_baloon::before {
  width: clamp( calc(176px * 0.7), calc(176 * 100vw / 480), 176px);
  aspect-ratio: 176 /38.5;
} */
#cta.--blue .tel_text01 {
  font-size: clamp( calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
}
#cta.--blue .tel_text02 {
  font-size: clamp( calc(40px * 0.7), calc(40 * 100vw / 480), 40px);
}
#cta.--blue .tel_text03 {
  font-size: clamp( calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
}

/* 選ばれる3つの理由 */

.post_content h2.reason_heading {
  font-size: 28px;
  line-height: 1;
  margin-bottom: 68px;
}
.reason_heading .--white {
  color: #fff;
  text-shadow: 0 2px 3.1px rgba(127, 110, 71, 0.3);
  font-size: 20px;
  line-height: 160%;
  border-radius: 8px;
  background: #f4b62c;
  padding: 4px 8px;
  margin-right: 3px;
}
.reason_heading .--small {
  font-size: 20px;
}
.reason_heading .--big {
  color: #426a4e;
  font-size: 60px;
  font-weight: 900;
}
.reason_container > .swell-block-columns__inner {
  row-gap: clamp( calc(51px * 0.7), calc(51 * 100vw / 480), 51px);
  margin-inline: auto;
}
@media (max-width: 959px){
  .reason_container > .swell-block-columns__inner > .swell-block-column {
    margin-left: 0;
    width: 100%;
  }
  .reason_container > .swell-block-columns__inner {
    row-gap: clamp( calc(51px * 0.7), calc(51 * 100vw / 480), 51px);
    max-width: 600px;
    margin-inline: auto;
  } 
}
@media (min-width: 960px){
  .reason_item{
    flex-direction: column;
    align-items: center;
  }
}
.reason_item {
  border-radius: 30px;
  justify-content: flex-start;
  gap: 30px;
  position: relative;
  padding: clamp( calc(20px * 0.7), calc(20 * 100vw / 480), 40px) clamp( calc(20px * 0.7), calc(20 * 100vw / 480), 20px) clamp( calc(16px * 0.7), calc(16 * 100vw / 480), 32px) !important;
  max-width: 600px;
}
.reason_number {
  position: absolute;
  background: url(asset/img/reason_number.png)
    no-repeat center/contain;
  padding: 9px 26px 21px 28px;
  color: #fff;
  font-size: 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  top: -69px;
  line-height: 1;
}
.reason_number .--big {
  font-size: 36px;
  font-weight: 900;
  line-height: 100%;
  letter-spacing: 1.8px;
}
.reason_img img {
  border-radius: 20px;
}
.reason_right {
  flex: 1;
}
.reason_right > .wp-block-group {
  width: 100%;
}
.reason_text {
  font-size: clamp(calc(18px * 0.7), calc(18 * 100vw / 480), 24px);
  margin-bottom: 15px !important;
}
.orange_line .no-border {
  text-decoration: none;
}
.reason_no1 {
  position: absolute;
  top: 0;
  right: 1em;
}
@media (min-width: 960px) {
  .post_content h2.reason_heading {
    margin-bottom: 76px;
  }
  .reason_container > .swell-block-columns__inner {
    row-gap: 55px;
  }
}
@media screen and (max-width: 453px) {
  .reason_heading .--white {
    font-size: clamp(calc(20px * 0.8), calc(20 * 100vw / 480), 20px);
  }
  .post_content h2.reason_heading {
    font-size: clamp(calc(28px * 0.8), calc(28 * 100vw / 480), 28px);
    margin-block: clamp(calc(76px * 0.8), calc(76 * 100vw / 480), 76px);
  }
  .reason_heading .--big {
    font-size: clamp(calc(60px * 0.8), calc(60 * 100vw / 480), 60px);
  }
  .reason_item {
    padding-inline: 14px !important;
    gap: 18px;
  }
  .reason_number {
    font-size: 12px;
    top: -60px;
    padding-inline: 23px;
  }
  .reason_number .--big {
    font-size: 26px;
  }
  .reason_img img {
    width: 90px;
  }
  .reason_text {
    font-size: clamp(calc(15px * 0.9), calc(15 * 100vw / 480), 15px);
  }
  .reason_no1 {
    width: 48px;
    aspect-ratio: 63 / 50;
    height: auto;
    right: 6px;
  }
}
/* 最新の受給事例 */

#case_new .swell-block-fullWide__inner.l-container {
  padding-inline: 0;
}
.case_list .flickity-carousel .p-postList__item {
  width: 88% !important;
  padding-inline: 0.3em;
}
.case_new_heading {
  position: relative;
  margin-bottom: 8px;
}
.case_new_heading h2 {
  margin-top: 0;
}
.case_new_heading figure {
  position: absolute;
  top: -93%;
  left: 50%;
  transform: translateX(-50%);
}
.case-card {
  background-color: #fff;
  padding: 24px 32px;
  font-family: "Noto Sans JP", sans-serif;
  border-radius: 30px;
  box-shadow: 3px 3px 20px 0 rgba(106, 97, 78, 0.12);
}
.case-card_head {
  display: flex;
  justify-content: space-between;
}
.case-card_disease {
  font-size: 16px;
  line-height: 160%;
  border-radius: 999px;
  padding-inline: 12px;
  color: #fff;
  background: #d8740b;
  max-width: 61%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.case-card_date {
  font-size: 16px;
  font-weight: 500;
  color: #cac4bf;
}
.post_content h3.case-card_title {
  margin-block: 24px;
  text-align: left;
  font-size: 16px;
  line-height: 1.8em;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1.8em * 4);
}
.case-card_body {
  display: flex;
  justify-content: flex-start;
  gap: 4%;
  padding-top: 24px;
  padding-left: 12px;
  position: relative;
}
.case-card_body::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  top: 0;
  left: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='296' height='1' viewBox='0 0 296 1' fill='none'%3E%3Cpath d='M0 0.5H296' stroke='%2366C082' stroke-miterlimit='3.99393' stroke-dasharray='2 2'/%3E%3C/svg%3E");
}
.case-card_img {
  width: 20.53%;
  min-width: 60px;
  aspect-ratio: 1;
}
.case-card_img img {
  pointer-events: none;
}
.case-card_items {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.case-card_item {
  display: flex;
  align-items: center;
  gap: 8px;
}
.case-card_label {
  border-radius: 1066.385px;
  border: 1.067px solid #66c082;
  color: #379655;
  padding: 4px 8px;
  font-size: 12px;
  min-width: 60px;
  text-align: center;
}
.case-card_label.--price {
  align-self: baseline;
}
.case-card_text {
  font-size: 14px;
  color: #d8740b;
}
.case-card_text.--black {
  color: #443e37;
}
.case-card_text.--price {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4em;
  min-height: calc(1.4em * 2);
  align-self: baseline;
}
@media screen and (max-width: 449px) {
  .case-card {
    padding-inline: 18px;
  }
  .case-card_disease,
  .case-card_date,
  .post_content h3.case-card_title {
    font-size: 14px;
  }
  .case-card_body {
    padding-left: 5px;
  }
  .case-card_label {
    padding: 2px 4px;
    font-size: 11px;
    min-width: 50px;
  }
  .case-card_text {
    font-size: 12px;
  }
}
@media screen and (max-width: 375px) {
  .case-card_body {
    gap: 11%;
  }
  .case-card_disease {
    width: 55%;
  }
  .case-card_items {
    gap: 8px;
  }
  .case-card_item {
    align-items: flex-start;
    flex-direction: column;
    gap: 0;
  }
}
@media screen and (min-width: 961px) {
  .case-card_body {
    padding-left: 0;
  }
  .case-card_disease {
    max-width: 55%;
  }
}
/* 受給事例を探す */
#case_search.swell-block-fullWide {
  padding-block: 55px !important;
}
.custom-acc_wrap {
  padding-top: 8px;
}
.acc_items {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 2px;
  padding-left: 0 !important;
  list-style: none;
}
.post_content li.acc_item {
  width: 100%;
  border-radius: 16px;
  box-shadow: 3px 3px 12px 0 rgba(61, 74, 57, 0.14);
  color: #426a4e;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding-block: 9px 22px;
  margin-top: 0;
}
.post_content li.acc_item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 100%;
}
.acc_items:first-of-type .acc_item,
.acc_items:first-of-type .acc_item a {
  background: #379655;
  color: #fff;
}
.post_content .acc_item.is-open,
.acc_items:first-of-type .acc_item.is-open {
  color: #426a4e;
  background-color: #d3efc9;
  box-shadow: none;
  position: relative;
  padding-top: 15px;
}
.acc_item.is-open::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 40px;
  bottom: -20px;
  left: 0;
  background-color: #d3efc9;
  z-index: -1;
}
.acc_header {
  font-family: "Noto Sans JP", sans-serif;
}
.acc_arrow {
  position: relative;
}
.acc_item .acc_arrow::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  bottom: -13px;
  left: 50%;
  background: url("asset/img/search/search_arrow03.png") no-repeat center /
    contain;
  transform: translateX(-50%);
  transition: 0.3s;
}
.acc_item.is-open .acc_arrow::after,
.acc_items:first-of-type .acc_item.is-open .acc_arrow::after {
  background: url("asset/img/search/search_arrow01.png") no-repeat center /
    contain;
}
.acc_items:first-of-type .acc_arrow::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  bottom: -13px;
  left: 50%;
  transform: translateX(-50%);
  background: url("asset/img/search/search_arrow02.png") no-repeat center /
    contain;
  transition: 0.3s;
}
.acc_body-container {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transform: translateY(-10px);
  transition: all .2s ease;
  background-color: #d3efc9;
  border-radius: 0 0 16px 16px;
}
.acc_body-container.is-open {
  max-height: 700px;
  opacity: 1;
  transform: translateY(0);
  margin-bottom: 4px;
}
.acc_body {
  display: none;
  flex-wrap: wrap;
  gap: clamp(calc(11px * 0.7), calc(11 * 100vw / 480), 11px)
    clamp(calc(8px * 0.7), calc(8 * 100vw / 480), 8px);
  padding: 12px 8px !important;
  justify-content: space-between;
}
.pill {
  list-style: none;
  width: calc(50% - 8px);
  background: #fff;
  border-radius: 8px;
  text-align: center;
  margin-block: 0 !important;
  border-radius: 16px;
  box-shadow: 3px 3px 12px 0 rgba(106, 97, 78, 0.12);
}
.pill a {
  color: #426a4e;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 1.5em;
  display: block;
  width: 100%;
  height: 100%;
  padding: 11px 8px;
}
@media screen and (min-width: 961px) {
  .acc_body {
    justify-content: flex-start;
}
  .pill {
    width: calc(33.3333% - 6px);
  }
}

/* お客様からの感謝のお手紙 */
#letter .wrapper {
  width: unset;
  margin-inline: 20px;
  padding-bottom: 20px;
}
#letter .wrapper figure {
  position: absolute;
  right: 10px;
  bottom: 0;
  aspect-ratio: 180 / 100;
  width: 45%;
  max-width: 180px;
}
#letter h2.is-style-section_ttl {
  text-align: left;
  font-weight: 900;
  font-size: clamp(calc(28px * 0.7), calc(28 * 100vw / 480), 28px);
  letter-spacing: 0.07em;
}
#letter .case_list {
  width: 100%;
}
#letter .-type-card .p-postList__body {
  padding-top: 0;
}
.uservoice-card {
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  padding: clamp(calc(32px * 0.7), calc(32 * 100vw / 480), 32px)
    clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px) clamp( calc(40px * 0.7), calc(40 * 100vw / 480), 40px);
  filter: drop-shadow(6px 6px 20px rgba(106, 97, 78, 0.15));
  clip-path: polygon(
    100% 0,
    100% calc(100% - 31px),
    calc(100% - 33px) 100%,
    0 100%,
    0 0
  );
  position: relative;
}
.uservoice-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 33px;
  height: 31px;
  background-color: #379655;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}
.post_content h3.uservoice_title.is-style-section_ttl {
  color: #d8740b;
  font-size: 16px;
  line-height: 180%;
  text-align: left;
  margin-bottom: 16px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 57px;
}
.uservoice-card_excerpt {
  font-size: 15px;
  font-weight: 500;
  line-height: 160%;
  margin-bottom: 24px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.uservoice-card_body {
  display: flex;
  align-items: center;
  gap: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  padding-top: 20px;
  position: relative;
}
.uservoice-card_body::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  top: 0;
  left: 0;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="210" height="1" viewBox="0 0 210 1" fill="none"><path d="M0 0.5H210" stroke="%23F4B62C" stroke-miterlimit="3.99393" stroke-dasharray="2 2"/></svg>');
}
.uservoice-card_icon {
  width: 40px;
  aspect-ratio: 1;
}
.uservoice-card_person {
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
}
.uservoice-card_disease {
  color: #d8740b;
  font-size: clamp(calc(14px * 0.7), calc(14 * 100vw / 480), 14px);
  margin-top: 5px;
}
@media screen and (min-width: 550px) {
  #letter .wrapper {
    max-width: 450px;
    margin-inline: auto;
  }
}
@media screen and (max-width: 375px) {
  .post_content h3.uservoice_title.is-style-section_ttl {
    font-size: 14px;
    line-height: 150%;
    min-height: 45px;
  }
  .uservoice-card_excerpt {
    font-size: 13px;
    line-height: 140%;
  }
}

/* 障害年金について */
.post_content h2.--wight900 {
  font-weight: 900;
}
.post_content .is-style-section_ttl.about_heading {
  padding-left: 1em;
  margin-bottom: 20px;
}
.about_heading span {
  position: relative;
}
.about_heading span::before {
  position: absolute;
  content: "";
  width: 27px;
  aspect-ratio: 21 / 29;
  height: auto;
  top: 50%;
  left: -30px;
  transform: translateY(-50%);
  background: url("asset/img/about_icon.png") no-repeat center/contain;
}
.about-intro_wrapper {
  max-width: 370px;
  margin-inline: auto;
  margin-bottom: 34px;
}
.about-intro {
  transform: translateX(11px);
  gap: 3px;
}
.about-intro p {
  font-size: clamp(calc(18px * 0.7), calc(18 * 100vw / 480), 18px);
  line-height: 100%;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-color: #66c082;
  text-decoration-thickness: 20%; /* 3.6px */
  text-underline-offset: 12%; /* 2.16px */
  text-underline-position: from-font;
  line-height: 2;
  text-align: center;
}
.about-intro_wrapper .btn_green.swell-block-button .swell-block-button__link[data-has-icon] {
  max-width: 360px;
  min-height: clamp( calc(48px * 0.7), calc(48 * 100vw / 480), 48px);
  font-size: 14px;
  line-height: 1.5;
  margin-inline: auto;
}
.about_lists.swell-block-box-menu.is-style-default .swell-block-box-menu__item {
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2);
  border: none;
  width: calc(50% - 4px);
}
.about_lists .swell-block-box-menu__link {
  padding: 32px 20px 16px;
}
.about_lists.swell-block-box-menu[data-direction=vertical] .swell-block-box-menu__figure {
  margin-bottom: 10px;
}
.about_lists
  .swell-block-box-menu[data-direction="vertical"]
  .swell-block-box-menu__figure {
  margin-bottom: 0.5em;
}
.about_lists .swell-block-box-menu__text {
  color: #426a4e;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 150%; /* 24px */
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 4%; /* 0.64px */
  text-underline-offset: auto;
  text-underline-position: from-font;
  text-align: left;
  position: relative;
}
.about_lists .swell-block-box-menu__text::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Ccircle cx='10' cy='10' r='10' transform='rotate(180 10 10)' fill='%2366C082'/%3E%3Cpath d='M9.08985 13.4006L12.8789 10.0958C13.0031 9.98754 13.0014 9.79408 12.8754 9.68798L9.08985 6.50015' stroke='white' stroke-width='1.34284' stroke-linecap='round'/%3E%3C/svg%3E")
    no-repeat center/contain;
}
.about_lists .swell-block-box-menu__inner {
  justify-content: space-between;
  gap: 8px;
}
.about_lists .popular {
  position: relative;
}
.about_lists .popular::after {
  position: absolute;
  content: "よく見られています！";
  top: -6px;
  right: 0;
  width: clamp(calc(174px * 0.7), calc(174 * 100vw / 480), 174px);
  color: #fff;
  background-color: #d8740b;
  border-radius: 8px;
  padding-inline: clamp(calc(7px * 0.7), calc(7 * 100vw / 480), 7px);
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  font-family: "Zen Maru Gothic", "Noto Sans JP", sans-serif;
}

@media screen and (min-width: 961px) {
  /* .about_lists.swell-block-box-menu.is-style-default
    .swell-block-box-menu__item {
    width: calc(33.3333% - 5px);
  } */
  .about-intro_wrapper
    .btn_green.swell-block-button
    .swell-block-button__link[data-has-icon] {
    max-width: unset;
  }
}

.orange_baloon {
  font-size: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  font-weight: 900;
  padding-inline: 5px;
  min-width: clamp(calc(158px * 0.7), calc(158 * 100vw / 480), 158px);
  aspect-ratio: 158 / 44;
  text-align: center;
  background: url("asset/img/orange_baloon.png") no-repeat center/cover;
}
.orange_baloon .--white {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  color: #fff;
  margin-left: 3px;
}

/* 障碍者手帳をお持ちですか？ */
.handbook_wrapper {
  max-width: 500px;
  margin-inline: auto;
}
@media (min-width:959px) {
  .handbook_column .swell-block-columns__inner{
    flex-direction: row-reverse;
  }
}

div.has-background.handbook_heading {
  padding: clamp(12px, calc(12 * 100vw / 480), 24px);
  border-radius: 20px;
  position: relative;
  z-index: 1;
}
.handbook_heading::after {
  position: absolute;
  content: "";
  width: clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 32px);
  aspect-ratio: 24 /23;
  bottom: clamp(-17px, calc(-17 * 100vw / 480), calc(-17px * 0.7));
  left: 50%;
  transform: translateX(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='25' viewBox='0 0 24 25' fill='none'%3E%3Cpath d='M12.6338 24.0176C14.6446 15.8585 16.6555 8.20503 24 0.0334473L2.38546e-05 -9.16045e-05C9.10057 8.20516 10.6228 15.8585 12.6338 24.0176Z' fill='white'/%3E%3C/svg%3E")
    no-repeat center/cover;
  z-index: -1;
}
.handbook_heading p {
  padding-left: 1.5em;
  position: relative;
  font-size: clamp(calc(18px * 0.7), calc(18 * 100vw / 480), 24px);
  line-height: 150%;
}
.handbook_heading p::before {
  position: absolute;
  content: "";
  width: 14px;
  height: 14px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M7 0C3.1402 0 0 3.1402 0 7C0 10.8598 3.1402 14 7 14C10.8598 14 14 10.8598 14 7C14 3.1402 10.8598 0 7 0ZM5.6007 10.0891L3.0016 7.4956L3.99 6.5044L5.5993 8.1109L9.3051 4.4051L10.2949 5.3949L5.6007 10.0891Z' fill='%23F4B62C'/%3E%3C/svg%3E")
    no-repeat center/contain;
}
.handbook_text01 {
  font-size: clamp(calc(18px * 0.7), calc(18 * 100vw / 480), 24px);
  line-height: 1;
}
.handbook_text02 {
  font-size: clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 32px);
  padding-top: 8px;
  line-height: 180%;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 12%;
  text-underline-offset: 12%;
  text-underline-position: from-font;
}
.handbook_img01 {
  width: 26.7%;
}
.hanbbook_box.swell-block-box-menu.is-style-default
  .swell-block-box-menu__item {
  border-radius: 20px;
  border: 4px solid #66c082;
  background: #fff;
  box-shadow: 2px 2px 8px 0 rgba(106, 97, 78, 0.2),
    3px 3px 20px 0 rgba(106, 97, 78, 0.12);
}
.hanbbook_box .swell-block-box-menu__link {
  padding-block: clamp( calc(12px * 0.7), calc(12 * 100vw / 480), 24px) clamp( calc(16px * 0.7), calc(16 * 100vw / 480), 24px);
}
.hanbbook_box.swell-block-box-menu[data-direction=vertical] .swell-block-box-menu__figure {
  margin-bottom: clamp( calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
}
.hanbbook_box .swell-block-box-menu__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(10px, calc(14 * 100vw / 480), 16px);
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 4%; /* 0.56px */
  text-underline-offset: auto;
  text-underline-position: from-font;
  width: fit-content;
  margin-inline: auto;
  padding-right: 28px;
  position: relative;
}
.hanbbook_box .swell-block-box-menu__text::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: url(https://stg.matsuyama-shogai.com/wp-content/uploads/2025/11/scroll_down.png)
    no-repeat center/cover;
}
.handbook_text03 {
  font-size: clamp(10px, calc(14 * 100vw / 480), 14px);
  padding-left: 1.3em;
  position: relative;
  width: fit-content;
  margin-inline: auto;
}
.handbook_text03::before {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: url("asset/img/how_img03.png") no-repeat center/cover;
}

/* こんなときどうする？ */
#how.swell-block-fullWide {
  padding-block:0 40px !important;
}
.how_img01 {
  max-width: 318px;
  aspect-ratio: 318 / 116;
  margin-inline: auto;
  margin-inline: auto;
  padding-top: 17px;
  padding-right: clamp( calc(17px * 0.7), calc(17 * 100vw / 480), 17px);
}
.how_btn_wrapper {
  max-width: 440px;
  margin-inline: auto;
  margin-bottom: 7px !important;
}
#how .btn_white.is-style-btn_line a {
  font-family: "Noto Sans JP", sans-serif;
  color: #426a4e;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 420), 16px);
  line-height: 160%;
  padding-right: clamp(calc(47px * 0.7), calc(47 * 100vw / 420), 47px);
  text-align: left;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-thickness: 4%; /* 0.64px */
  text-underline-offset: auto;
  text-underline-position: from-font;
  min-height: 80px;
  margin-bottom: 8px !important;
}
#how .btn_white.is-style-btn_line a:hover {
  color: #426a4e !important;
}
div.has-background.btn_white02.--green {
  border: 4px solid #66c082;
  padding: clamp(calc(8px * 0.7), calc(8 * 100vw / 480), 8px)
    clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 24px);
  min-height: clamp(calc(120px * 0.8), calc(120 * 100vw / 480), 120px);
  margin-top: 12px;
  max-width: 620px;
  margin-inline: auto;
}
.post_content div > :first-child.btn_white02.--green {
  margin-top: 12px !important;
}
.btn_white02.--green p {
  font-size: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  font-weight: 900;
  line-height: 1.5em;
  padding-top: 4px;
}
.btn_white02.--green p .--small {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
}
.btn_white02.--green figure {
  /* width: clamp(calc(180px * 0.7), calc(180 * 100vw / 480), 180px);
  right: 4.5%; */
}
#how .btn_white02.--green::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  bottom: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  right: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  background: url(https://stg.matsuyama-shogai.com/wp-content/uploads/2025/11/scroll_down.png)
    no-repeat center/cover;
}
.editor-styles-wrapper .arrow::after {
  content: none !important;
}

/* 障害年金Q&A */

.qa_heading img {
  width: 31px;
  height: 26px;
  transform: translateY(2px);
  margin-right: 2px;
}
#qa .swell-block-accordion__title {
  border-radius: 10px;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 1.6em;
  padding: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px)
    clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px)
    clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px)
    clamp(calc(64px * 0.7), calc(64 * 100vw / 480), 64px);
  position: relative;
}
#qa .swell-block-accordion__title::before {
  content: "";
  position: absolute;
  width: clamp(calc(36px * 0.7), calc(36 * 100vw / 480), 36px);
  height: clamp(calc(36px * 0.7), calc(36 * 100vw / 480), 36px);
  top: 50%;
  left: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  transform: translateY(-50%);
  background: url("asset/img/qa/icon_q02.png") no-repeat center/cover;
}
#qa .swell-block-accordion__label {
  font-weight: 700;
}
#qa .is-opened .swell-block-accordion__title {
  background: #e98318;
  color: #fff;
  border-radius: 10px 10px 0 0;
}
#qa .is-opened .swell-block-accordion__title::before {
  background: url("asset/img/qa/icon_q01.png") no-repeat center/cover;
}
#qa .swell-block-accordion__body {
  border-radius: 0 0 10px 10px;
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 1.6em;
  padding: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px)
    clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px)
    clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px)
    clamp(calc(64px * 0.7), calc(64 * 100vw / 480), 64px);
  position: relative;
}
#qa .swell-block-accordion__body::before {
  content: "";
  position: absolute;
  width: clamp(calc(36px * 0.7), calc(36 * 100vw / 480), 36px);
  height: clamp(calc(36px * 0.7), calc(36 * 100vw / 480), 36px);
  top: 50%;
  left: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  transform: translateY(-50%);
  background: url("asset/img/qa/icon_a.png") no-repeat center/cover;
}
#qa .icon-caret-up:before {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  background-color: #fff;
}
#qa .icon-caret-down:before {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  background-color: #e98318;
}
#qa .icon-caret-down::after {
  content: "";
  display: block;
  width: 16px;
  height: 2px;
  margin-top: -1.7px;
  background-color: #e98318;
  transform: rotate(90deg);
}
#qa .btn_green.swell-block-button .swell-block-button__link[data-has-icon] {
  max-width: 360px;
  width: 82%;
}

/* 障害年金コラム */
#column.swell-block-fullWide {
  padding-top: 40px;
  padding-bottom: 40px clamp( calc(68px * 0.7), calc(68 * 100vw / 480), 68px) !important;
}
@media screen and (min-width: 650px) {
  #column.swell-block-fullWide {
    padding-bottom: clamp( calc(143px * 0.7), calc(256 * 100vw / 1280), 256px);
  }
}
.column_heading img {
  width: 38px;
  height: 23px;
  margin-right: 2px;
}
#column .p-postList.-type-simple,
#news .p-postList.-type-simple {
  border-top: none;
}
#column .-type-simple .p-postList__link,
#news .-type-simple .p-postList__link {
  border: none;
  padding: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px)
    clamp(calc(60px * 0.7), calc(60 * 100vw / 480), 60px)
    clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px)
    clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  background-color: #fff;
  border-radius: 20px;
  position: relative;
}
#column .-type-simple .p-postList__link::after,
#news .-type-simple .p-postList__link::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: 50%;
  right: clamp(calc(8px * 0.7), calc(8 * 100vw / 480), 8px);
  transform: translateX(-50%);
  background: url(https://stg.matsuyama-shogai.com/wp-content/uploads/2025/11/scroll_down.png)
    no-repeat center/cover;
}
#column .p-postList__item:not(:first-child),
#news .p-postList__item:not(:first-child) {
  margin-top: 12px;
}
.postlist_items {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.postlist_tags {
  max-width: 70%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.postlist_tag {
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  line-height: 160%;
  color: #fff;
  padding-inline: clamp(calc(12px * 0.7), calc(12 * 100vw / 480), 12px);
  border-radius: 999px;
  background: #d8740b;
  display: inline-block;
}
.postlist_tag:not(:first-child) {
  margin-left: 3px;
}
.postlist_date {
  color: #cac4bf;
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  font-weight: 500;
  position: relative;
}
.post_content h3.postlist_heading {
  margin-top: 16px;
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 160%;
  text-align: left;
}
#column .btn_green.swell-block-button .swell-block-button__link[data-has-icon],
#news .btn_green.swell-block-button .swell-block-button__link[data-has-icon] {
  max-width: 360px;
  width: 82%;
}

/* 代表者メッセージ */
.message_heading {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
}
.message_heading img {
  width: 30px;
  height: 40px;
  padding-bottom: 10px;
}
div.has-background.message_wrapper {
  border-radius: 30px;
  box-shadow: 3px 3px 20px 0 rgba(106, 97, 78, 0.12);
  padding: clamp(calc(32px * 0.7), calc(32 * 100vw / 480), 32px)
    clamp(calc(19px * 0.7), calc(19 * 100vw / 480), 19px);
}

.message_wrapper p {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 210%;
}
.message_wrapper .message_text {
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  line-height: 160%;
}
.message_wrapper .message_text .--big {
  font-size: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
}
.message_wrapper figure {
  padding-bottom: clamp(calc(10px * 0.7), calc(10 * 100vw / 480), 10px);
  max-width: 146px;
}
.btn_white02.--green02 {
  border: 4px solid #379655;
  min-height: clamp(calc(142px * 0.7), calc(142 * 100vw / 480), 142px);
  max-width: 440px;
  margin-inline: auto;
}
.btn_white02.--green02 .case_img_text {
  font-size: clamp(calc(28px * 0.7), calc(28 * 100vw / 480), 28px);
  font-weight: 900;
  color: #443e37;
  align-self: center;
}

@media screen and (max-width: 377px) {
  .message_wrapper .message_text {
    font-size: clamp(10px, calc(11 * 100vw / 377), 11px);
  }
}
@media screen and (min-width: 961px) {
  .btn_white02.--green02 figure {
    width: clamp(calc(220px * 0.7), calc(220 * 100vw / 480), 220px);
  }
  #message .wp-block-media-text.has-media-on-the-right {
    grid-template-columns: auto 18% !important;
  }
  #message
    .wp-block-media-text.has-media-on-the-right
    > .wp-block-media-text__content {
    width: fit-content;
    margin-left: auto;
  }
  #message
    .wp-block-media-text.has-media-on-the-right
    > .wp-block-media-text__media {
    margin-left: auto;
  }
}

/* 出張相談会 */
.event_heading img {
  width: 30px;
  height: 30px;
  margin-right: 3px;
}
.event_wrapper {
  max-width: 440px;
  margin-inline: auto;
}
p.has-background.event_place {
  border-radius: 20px 20px 0 0;
  font-size: clamp(calc(20px * 0.7), calc(20 * 100vw / 480), 20px);
  line-height: 180%;
  padding: clamp(calc(8px * 0.7), calc(8 * 100vw / 480), 8px)
    clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  margin-bottom: 0 !important;
}
.event_details {
  background-color: #fff;
  padding: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  border-radius: 0 0 20px 20px;
}
.event_details .swell-block-columns__inner {
  row-gap: 10px;
}
.event_tag {
  border-radius: 8px;
  border: 2px solid #f4b62c;
  padding-inline: clamp(calc(10px * 0.7), calc(10 * 100vw / 480), 10px);
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  line-height: 140%;
  min-width: 42px;
  width: fit-content;
  margin: auto;
}
.event_text {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 180%;
  margin-left: 8px !important;
}
#event .btn_green.swell-block-button .swell-block-button__link[data-has-icon] {
  max-width: 360px;
  width: 82%;
}

/* 愛媛・松山障害年金センターについて */
#about-us.swell-block-fullWide {
  padding-top: 30px !important;
  padding-bottom: 40px !important;
}
.btn_white.--black.is-style-btn_line a {
  font-size: 16px;
  min-height: 74px;
  line-height: 150%;
  padding: clamp(calc(8px * 0.7), calc(8 * 100vw / 480), 8px)
    clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  text-align: left;
}
@media screen and (max-width: 470px) {
  .btn_white.--black.is-style-btn_line a {
    font-size: 14px;
    min-height: 60px;
  }
}
@media screen and (max-width: 420px) {
  .post_content h2.is-style-section_ttl.about-us_heading {
    font-size: 20px;
  }
  .btn_white.--black.is-style-btn_line a {
    font-size: 14px;
    min-height: 60px;
  }
  .btn_white.--black.is-style-btn_line::after {
    right: 10px;
    width: 15px;
    height: 15px;
  }
}
@media screen and (max-width: 320px) {
  .btn_white.--black.is-style-btn_line a {
    font-size: 11px;
  }
}

/* お知らせ */
#news.swell-block-fullWide {
  padding-block: 40px !important;
}
.news_heading img {
  width: 34px;
  height: 24px;
  margin-right: 3px;
}
#news .-type-simple .p-postList__link {
  box-shadow: 3px 3px 20px 0 rgba(106, 97, 78, 0.12);
  padding-top: clamp( calc(12px * 0.7), calc(12 * 100vw / 480), 12px);
}
.post_content #news h3.postlist_heading {
  margin-top: 10px;
}
#news .postlist_tag {
  background-color: #426a4e;
}

/* フッター */
p.has-background.footer_text01 {
  font-size: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  line-height: 120%;
  text-shadow: 0 2px 3.1px rgba(127, 110, 71, 0.3);
  padding: clamp(calc(10px * 0.7), calc(10 * 100vw / 480), 10px)
    clamp(calc(39px * 0.7), calc(39 * 100vw / 480), 39px);
  border-radius: 9px;
  width: fit-content;
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
.footer_text01::after {
  position: absolute;
  content: "";
  width: 43px;
  height: 23px;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='43' height='23' viewBox='0 0 24 25' fill='none'%3E%3Cpath d='M12.6338 24.0176C14.6446 15.8585 16.6555 8.20503 24 0.0334473L0 -0.0000916045C9.10057 8.20516 10.6228 15.8585 12.6338 24.0176Z' fill='%23379655'/%3E%3C/svg%3E")
    no-repeat center/cover;
  z-index: -1;
}
.footer_logo {
  margin-bottom: 4px;
}
.footer_logo img {
  width: 52px;
  aspect-ratio: 52 / 47;
}
.footer_text02 {
  font-size: clamp(calc(24px * 0.7), calc(24 * 100vw / 480), 24px);
  line-height: 120%;
  margin-bottom: 12px;
}
.footer_text03 {
  font-size: clamp(calc(15px * 0.7), calc(15 * 100vw / 480), 15px);
  font-weight: 500;
  line-height: 120%;
  margin-bottom: 2px;
}
.footer_text03.--access {
  letter-spacing: 0.06em;
}
.footer_text03.--name img {
  width: clamp(calc(12px * 0.7), calc(12 * 100vw / 480), 12px);
  height: clamp(calc(16px * 0.7), calc(16 * 100vw / 480), 16px);
  margin-right: 4px;
}
.footer_text03.--access img {
  width: clamp(calc(13px * 0.7), calc(13 * 100vw / 480), 13px);
  height: clamp(calc(19px * 0.7), calc(19 * 100vw / 480), 19px);
  margin-right: 4px;
  position: relative;
  top: 3px;
}
.post_content #footer iframe {
  border: 6px solid #fff !important;
  border-radius: 20px;
  margin: 16px 0 24px;
  aspect-ratio: 440 / 277;
  height: auto;
}
.footer_btn {
  margin-bottom: 25px;
}
.footer_btn .btn_white.is-style-btn_line a {
  font-size: clamp(calc(14px * 0.7), calc(14 * 100vw / 480), 14px);
  line-height: 150%;
  padding: clamp(calc(6px * 0.7), calc(6 * 100vw / 480), 6px)
    clamp(calc(12px * 0.7), calc(12 * 100vw / 480), 12px);
  border-radius: 8px;
  box-shadow: 1px 1px 8px 0 rgba(106, 97, 78, 0.2);
}
.footer_btn .btn_white.is-style-btn_line::after {
  width: 12px;
  height: 12px;
  right: clamp(calc(12px * 0.7), calc(12 * 100vw / 480), 12px);
}
.footer_text04 {
  font-size: 11px;
  line-height: 120%; /* 13.2px */
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

.l-footer__widgetArea {
  display: none;
}
.l-footer .copyright {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 11px;
  line-height: 120%;
}

/* 【下層】問い合わせフォーム
==================================================== */
/* MW */
.contact_form span.form_required {
  display: inline-block;
  margin-left: 1em;
  font-size: 0.75em;
  padding: 0.25em 1em;
  background-color: var(--color_main);
  color: #ffffff;
  position: absolute;
  right: 1em;
}
.post_content .td_to_th_.contact_form tbody tr > :first-child {
  padding-right: 4em;
}
.gcal-sunday a,
.gcal-sunday span {
  color: #f00 !important;
}
.gcal-saturday a,
.gcal-saturday span {
  color: #0af !important;
}
.special-holiday a,
.special-holiday span {
  color: #f00 !important;
}
.jp-holiday a,
.jp-holiday span {
  color: #f00 !important;
}
.mwform-tel-field input[type="text"] {
  width: 70px !important;
}

.submit_button {
  background: var(--color_main);
  border: 1px solid var(--color_main);
  color: #fff;
  border-radius: 0.25em;
  display: block;
  letter-spacing: 0.1em;
  line-height: 1.5;
  margin: 1.5em auto 0.5em;
  padding: 0.5em;
  position: relative;
  text-decoration: none;
  width: 300px;
}
.submit_button:hover {
  background: #fff;
  border: 1px solid var(--color_main);
  color: var(--color_main);
}
input[name="submitBack"] {
  background: #fff;
  border: 1px solid var(--color_main);
  color: var(--color_main);
  margin-top: 0;
}
input[name="submitBack"]:hover {
  background: #dedede;
  border: 1px solid var(--color_main);
  color: var(--color_main);
}
.contact_form select{
  width: 100%;
}
.contact_form input,
.contact_form textarea {
  padding: 7px 10px;
  font-size: 1em;
  line-height: 1;
  background: #fff;
  border: 1px solid #ddd;
  max-width: 100%;
}

/* SMF */

.contactform dt {
  font-size: 16px;
  font-weight: 600;
  margin: 35px 0 10px;
  color: var(--color_main);
  border-left: 4px solid var(--color_htag);
  padding-left: 1em;
}

.contactform dd input[type="text"],
.contactform dd input[type="email"],
.contactform dd input[type="number"],
.contactform dd select,
.contactform dd textarea {
  padding: 7px 10px;
  font-size: 1em;
  line-height: 1;
  background: #fff;
  border: 1px solid #ddd;
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .contactform dd input.telnum {
    max-width: calc(33% - 11px);
  }
}

/* 投稿のレイアウト調整 */
.single-post .p-articleThumb,
.single-news .p-articleThumb,
.single-case .p-articleThumb,
.single-uservoice .p-articleThumb,
.single-qa .p-articleThumb {
  display: none;
}
.single-post .wp-block-image.--right,
.single-news .wp-block-image.--right,
.single-uservoice .wp-block-image.--right,
.single-qa .wp-block-image.--right {
  float: right;
}
.single.single-post .post_content > p:nth-of-type(1),
.single.single-post .post_content > p:nth-of-type(2),
.single.single-post .post_content > p:nth-of-type(3),
.single.single-news .post_content > p:nth-of-type(1),
.single.single-news .post_content > p:nth-of-type(2),
.single.single-news .post_content > p:nth-of-type(3),
.single.single-uservoice .post_content > p:nth-of-type(1),
.single.single-uservoice .post_content > p:nth-of-type(2),
.single.single-uservoice .post_content > p:nth-of-type(3),
.single.single-qa .post_content > p:nth-of-type(1),
.single.single-qa .post_content > p:nth-of-type(2),
.single.single-qa .post_content > p:nth-of-type(3) {
  clear: none;
}
.single.single-post .post_content .--clear,
.single.single-news .post_content .--clear,
.single.single-uservoice .post_content .--clear,
.single.single-qa .post_content .--clear {
  clear: none;
}

@media screen and (max-width: 961px) {
  .single-post .post_content > .wp-block-image:first-of-type,
  .single-news .post_content > .wp-block-image:first-of-type,
  .single-uservoice .post_content > .wp-block-image:first-of-type,
  .single-qa .post_content > .wp-block-image:first-of-type {
    float: none;
    width: fit-content;
    margin-inline: auto;
  }
}

/* サイドバー余白調整 */
body.-frame-on-sidebar #sidebar .c-widget,
body.-frame-border.-frame-on-sidebar #sidebar .c-widget,
body #sidebar .c-widget {
  --swl-box_padding: 0.5em;
  padding: 0.5em;
}
