@charset "UTF-8";
@media (max-width: 768px) {
  .case07 .case-anchor__ttl span {
    display: block;
  }
}
.case07 .c-rl {
  writing-mode: vertical-rl;
  text-orientation: upright;
}
.case07 .case-main__ttl {
  letter-spacing: 0.25em;
}
.case07 .case-main__img {
  display: flex;
  justify-content: center;
}
.case07 .case-mainMsg {
  max-width: 582px;
}
.case07 .case-mainMsg__txts {
  white-space: nowrap;
}
.case07 .case-mainMsg__txt {
  margin: 0 auto;
  font-family: "Shippori Mincho", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
}
.case07 .case-mainMsgImg__txt {
  letter-spacing: 0.1em;
}
.case07 .case-secs {
  max-width: 1280px;
  margin: 0 auto;
}
.case07 .caseSec:not(:last-child) {
  margin-bottom: 360px;
}
.case07 .caseSecHeading {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-family: "Shippori Mincho", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
}
.case07 .caseSecHeading.-entrance {
  margin-top: 296px;
}
.case07 .caseSecHeading__ttlWrap {
  display: flex;
  justify-content: center;
  text-align: center;
}
.case07 .caseSecHeading__ttl {
  display: inline-block;
  letter-spacing: 0.2em;
}
.case07 .caseSecHeading__ttlLine {
  background-color: #fff;
  display: block;
  height: 1px;
  margin-bottom: -3px;
}
.case07 .caseSecHeading__ttl--en {
  letter-spacing: 0.2em;
}
.case07 .caseSec__item.--flex.--between {
  justify-content: space-between;
}
.case07 .caseSec__item.--flex.--reverse {
  flex-direction: row-reverse;
}
.case07 .caseSec__img {
  position: relative;
}
.case07 .caseSec__txtWrap.--cat {
  font-feature-settings: "palt";
}
.case07 .caseSec__imgTxt.-img07 {
  left: 5.3%;
}
.case07 .caseSec__txt {
  text-align: justify;
}
.case07 .caseSec__txt.--catTtl {
  position: relative;
  font-family: "Shippori Mincho", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
}
.case07 .caseSec__txt.--catTtl::before {
  content: "";
  position: absolute;
  display: block;
  background-color: #fff;
}
.case07 .caseSecPlan {
  max-width: 1120px;
  margin: 0 auto;
}
.case07 .caseSecPlanHeading {
  font-family: "Shippori Mincho", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
  text-align: center;
  letter-spacing: 0.2em;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.case07 .caseSecPlanHeading::before, .case07 .caseSecPlanHeading::after {
  content: "";
  display: block;
  height: 1px;
  background-color: #fff;
  flex: 1;
}
.case07 .caseSecPlan__imgs {
  max-width: 1079px;
  margin: 0 auto;
}
.case07 .w-253 {
  font-feature-settings: "palt";
}

@media (min-width: 769px) {
  .case07 .case-main__ttl {
    margin-bottom: 76px;
  }
}
@media (max-width: 768px) {
  .case07 .case-main__ttl {
    margin-bottom: 33px;
  }
}
@media (min-width: 769px) {
  .case07 .case-main__img {
    margin-bottom: 263px;
  }
}
@media (max-width: 768px) {
  .case07 .case-main__img {
    margin-bottom: 96px;
  }
}
@media (min-width: 769px) {
  .case07 .case-mainMsg {
    margin: 0 auto 358px;
  }
}
@media (max-width: 768px) {
  .case07 .case-mainMsg {
    margin: 0 auto 98px;
  }
}
@media (max-width: 768px) {
  .case07 .case-mainMsgImg {
    width: calc(100% - 90px);
    margin: 46px auto 0;
  }
}
@media (min-width: 769px) {
  .case07 .case-mainMsg__txts {
    display: flex;
  }
}
@media (max-width: 768px) {
  .case07 .case-mainMsg__txts {
    margin-bottom: 18px;
  }
}
@media (min-width: 769px) {
  .case07 .case-mainMsg__txt {
    font-size: clamp(10px, 2.23vmin, 16px);
    letter-spacing: 0.12em;
    line-height: 2.6;
    margin: 0 auto 81px;
  }
}
@media (max-width: 768px) {
  .case07 .case-mainMsg__txt {
    letter-spacing: 0.03em;
    font-size: clamp(14px, 4.73vmin, 16px);
    line-height: 1.5;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    white-space: nowrap;
  }
  .case07 .case-mainMsg__txt:not(:last-child) {
    margin-bottom: 73px;
  }
}
@media (min-width: 769px) {
  .case07 .case-mainMsgImg__txt {
    font-size: 14px;
    margin-top: 9px;
    text-align: right;
  }
}
@media (max-width: 768px) {
  .case07 .case-mainMsgImg__txt {
    font-size: 15px;
    margin-top: 11px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading {
    margin-bottom: 194px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading {
    margin-bottom: 69px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading.-entrance {
    margin-bottom: 295px !important;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading.-entrance {
    margin-bottom: 120px !important;
  }
}
@media (min-width: 769px) {
  .case07 #case-sec02 .caseSecHeading {
    margin-bottom: 300px;
  }
}
@media (max-width: 768px) {
  .case07 #case-sec02 .caseSecHeading {
    margin-bottom: 78px;
  }
}
@media (min-width: 769px) {
  .case07 #case-sec03 .caseSecHeading {
    margin-bottom: 340px;
  }
}
@media (max-width: 768px) {
  .case07 #case-sec03 .caseSecHeading {
    margin-bottom: 104px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__img {
    margin-bottom: 125px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__img {
    width: calc(100% - 160px);
    margin-bottom: 41px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__img.-entrance {
    margin-bottom: 96px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__img.-entrance {
    width: 100%;
    margin-bottom: 69px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__ttlWrap {
    margin-bottom: 61px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__ttlWrap {
    margin-bottom: 69px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__ttlWrap.-entrance {
    margin-bottom: 74px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__ttlWrap.-entrance {
    margin-bottom: 57px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__ttl {
    font-size: 37px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__ttl {
    font-size: 5.5vw;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__ttl.-entrance {
    font-size: 26px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__ttl.-entrance {
    font-size: 5.1vw;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__ttlLine {
    margin-top: 15px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__ttlLine {
    margin-top: 9px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__ttl--en {
    font-size: 17px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__ttl--en {
    font-size: 3vw;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecHeading__txt {
    font-size: clamp(10px, 1.8vmin, 16px);
    letter-spacing: 0.3em;
    line-height: 2.25;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecHeading__txt {
    font-size: clamp(10px, 4.1vmin, 16px);
    letter-spacing: 0.18em;
    line-height: 1.8;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__item:not(:last-child) {
    margin-bottom: 13px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__item:not(:last-child) {
    margin-bottom: 55px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__item.--flex {
    display: flex;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__item.--flex.--between {
    display: block;
  }
  .case07 .caseSec__item.--flex.--between .caseSec__left, .case07 .caseSec__item.--flex.--between .caseSec__right {
    width: 100%;
    max-width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__right.--flex1 {
    flex: 1;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__imgWrap.--flex {
    display: flex;
    justify-content: space-between;
    margin-bottom: 17px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__imgWrap.w-572.--center {
    margin: 95px auto 0;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__imgWrap.w-572.--center {
    margin: 45px auto 0;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__img {
    text-align: center;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__img.-sm {
    width: calc(100% - 222px);
    margin: 0 auto;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__img.-md {
    width: calc(100% - 80px);
    margin: 0 auto;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__img.--flex {
    max-width: 634px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__img.--flex {
    max-width: 480px;
    width: calc(100% - 132px);
    margin: 0 auto;
  }
  .case07 .caseSec__img.--flex:not(:last-child) {
    margin-bottom: 10px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--flex {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--flexWrap01 {
    min-width: 350px;
    padding-right: 9.7%;
    padding-left: 8%;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--flexWrap02 {
    min-width: 350px;
    padding-left: 13.5%;
    padding-right: 9.4%;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--flexWrap03 {
    padding-top: 32px;
    margin-right: 5%;
    margin-left: 3.5%;
    min-width: 430px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--flexWrap04 {
    padding-left: 9.3%;
    padding-right: 5%;
    min-width: 350px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--flexWrap05 {
    padding-left: 15%;
    padding-right: 5%;
    min-width: 350px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--cat {
    display: flex;
    align-items: center;
    margin-left: auto;
    margin-top: 23px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__txtWrap.--cat {
    width: calc(100% - 77px);
    margin: 0 auto;
  }
  .case07 .caseSec__txtWrap.--cat .caseSec__txt {
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txtWrap.--cat.--lg {
    width: calc(100% - 120px);
    margin: 23px auto 0;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__imgTxt {
    position: absolute;
    left: 4.6%;
    bottom: 3.7%;
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__imgTxt {
    text-align: justify;
    display: block;
    width: calc(100% - 76px);
    margin: 0 auto;
    font-size: 4vw;
    line-height: 1.8;
  }
  .case07 .caseSec__imgTxt br {
    display: none;
  }
  .case07 .caseSec__imgTxt span {
    display: block;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__imgTxt.-img07 {
    text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5);
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt {
    font-size: 14px;
    letter-spacing: 0.02em;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__txt {
    width: calc(100% - 76px);
    margin: 0 auto;
    letter-spacing: 0.1em;
    font-size: 4vw;
    line-height: 1.8;
  }
  .case07 .caseSec__txt br {
    display: none;
  }
  .case07 .caseSec__txt span {
    display: block;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.--catTtl {
    font-size: 18px;
    letter-spacing: 0.1em;
    margin-right: 33px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__txt.--catTtl {
    display: inline-block;
    width: auto !important;
    font-size: 3.6vw;
    letter-spacing: 0.2em;
    margin-bottom: 18px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.--catTtl::before {
    width: 1px;
    height: 140%;
    right: -17px;
    top: -3px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSec__txt.--catTtl::before {
    width: 100%;
    height: 1px;
    bottom: -10px;
    left: 0;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecPlanHeading {
    font-size: 35px;
    margin-bottom: 135px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecPlanHeading {
    font-size: 19px;
    margin-bottom: 61px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecPlanHeading::before {
    margin-right: 20px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecPlanHeading::before {
    margin-right: 10px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecPlanHeading::after {
    margin-left: 20px;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecPlanHeading::after {
    margin-left: 10px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecPlan__imgs {
    display: flex;
  }
}
@media (min-width: 769px) {
  .case07 .caseSecPlan__img {
    width: 44.3%;
  }
  .case07 .caseSecPlan__img:first-child {
    margin-right: 9.7%;
  }
}
@media (max-width: 768px) {
  .case07 .caseSecPlan__img {
    max-width: 566px;
    width: calc(100% - 77px);
    margin-left: auto;
    margin-right: auto;
  }
  .case07 .caseSecPlan__img:first-child {
    margin-bottom: 80px;
  }
}
@media (min-width: 769px) {
  .case07 .mb-39 {
    margin-bottom: 39px !important;
  }
  .case07 .mb-55 {
    margin-bottom: 55px !important;
  }
  .case07 .mb-77 {
    margin-bottom: 77px !important;
  }
  .case07 .mb-337 {
    margin-bottom: 337px !important;
  }
  .case07 .mb-354 {
    margin-bottom: 354px !important;
  }
}
@media (max-width: 768px) {
  .case07 .mbSp-10 {
    margin-bottom: 10px !important;
  }
  .case07 .mtSp-55 {
    margin-top: 30px !important;
  }
  .case07 .mbSp-57 {
    margin-bottom: 29px !important;
  }
  .case07 .mtSp-58 {
    margin-top: 30px !important;
  }
  .case07 .mbSp-60 {
    margin-bottom: 32px !important;
  }
  .case07 .mtSp-60 {
    margin-top: 31px !important;
  }
  .case07 .mtSp-68 {
    margin-top: 38px !important;
  }
  .case07 .mbSp-82 {
    margin-bottom: 40px !important;
  }
  .case07 .mbSp-86 {
    margin-bottom: 44px !important;
  }
  .case07 .mbSp-88, .case07 .mbSp-92, .case07 .mbSp-105 {
    margin-bottom: 47px !important;
  }
  .case07 .mbSp-130 {
    margin-bottom: 73px !important;
  }
  .case07 .mbSp-134 {
    margin-bottom: 72px !important;
  }
  .case07 .mbSp-139 {
    margin-bottom: 69px !important;
  }
  .case07 .mbSp-140 {
    margin-bottom: 74px !important;
  }
  .case07 .mbSp-144 {
    margin-bottom: 47px !important;
  }
  .case07 .mbSp-160 {
    margin-bottom: 88px !important;
  }
  .case07 .mbSp-224 {
    margin-bottom: 114px !important;
  }
}
@media (min-width: 769px) {
  .case07 .w-253 {
    max-width: 253px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-270 {
    max-width: 270px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-360 {
    max-width: 360px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-342 {
    max-width: 342px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-432 {
    max-width: 432px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-496 {
    max-width: 496px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-508 {
    max-width: 508px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-550 {
    max-width: 550px;
    width: 43%;
  }
}
@media (min-width: 769px) {
  .case07 .w-572 {
    max-width: 572px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .w-720 {
    max-width: 720px;
    width: 56.3%;
  }
}
@media (min-width: 769px) {
  .case07 .w-884 {
    max-width: 884px;
    width: 100%;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.-top.w-496 {
    margin-top: 20px;
    margin-left: auto;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.-bot.w-342 {
    transform: translateY(4px);
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.-top.w-253 {
    transform: translateY(5px);
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.-bot.w-253 {
    margin-left: auto;
    transform: translateY(6px);
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.w-884 {
    margin-left: 4.5%;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.w-432 {
    margin-left: 9.5%;
    margin-top: 31px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.-top.w-360 {
    margin-top: 29px;
  }
}
@media (min-width: 769px) {
  .case07 .caseSec__txt.-bot.w-270 {
    margin-top: auto;
    transform: translateY(10px);
  }
}
/*# sourceMappingURL=07.css.map */