
@charset "UTF-8";
* {
  box-sizing: border-box;
}

:root {
  --YuGothic: "Yu Gothic","游ゴシック体","游ゴシック","メイリオ",Meiryo,Verdana,sans-serif;
  --s-font-helvetica: "Helvetica Neue", Arial, sans-serif;
}

html {
  font-size: 16px; /* ルート要素 */
}
@media (max-width: 1346px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 959px) {
  html {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  html {
    font-size: 13px;
  }
}
html body {
  color: #1a1a1a;
  line-height: 1.5;
  font-feature-settings: "palt";
  font-family: var(--YuGothic, sans-serif);
}
@media (max-width: 1100px) {
  html body.over {
    overflow: hidden;
  }
  html body.over header {
    background: #1a1a1a;
  }
}
html body a, html body img {
  display: block;
}
html body img {
  width: 100%;
  height: auto;
}
html body span.red {
  color: #FF3838;
}
html body span.point {
  border: 2px solid #000;
  padding: 0.25rem 1rem;
  display: inline-block;
  text-align: center;
  border-radius: 5rem;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 600;
  margin-bottom: 0.5rem;
  font-family: var(--s-font-helvetica);
}
html body span.point.blue {
  border: 2px solid #29ADFF;
  color: #29ADFF;
}
html body span.point.red {
  border: 2px solid #FF7C7C;
  color: #FF7C7C !important;
}
html body span.cell {
  display: table-cell;
}
html body span.cell:first-of-type {
  padding-right: 0.4em;
}
html body .mt_none {
  margin-top: 0 !important;
}
html body .mb_none {
  margin-bottom: 0 !important;
}
html body .pt_none {
  padding-top: 0 !important;
}
html body .pb_none {
  padding-bottom: 0 !important;
}
html body .mt_1 {
  margin-top: 1rem !important;
}
html body .mb_1 {
  margin-bottom: 1rem !important;
}
html body .pt_1 {
  padding-top: 1rem !important;
}
html body .pb_1 {
  padding-bottom: 1rem !important;
}
html body .mt_2 {
  margin-top: 2rem !important;
}
html body .mb_2 {
  margin-bottom: 2rem !important;
}
html body .pt_2 {
  padding-top: 2rem !important;
}
html body .pb_2 {
  padding-bottom: 2rem !important;
}
html body .mt_3 {
  margin-top: 3rem !important;
}
html body .mb_3 {
  margin-bottom: 3rem !important;
}
html body .pt_3 {
  padding-top: 3rem !important;
}
html body .pb_3 {
  padding-bottom: 3rem !important;
}
html body .serviceFlex {
  display: flex;
  justify-content: space-between;
  margin: 2rem 0 0 0;
}
html body .serviceFlex .box {
  width: calc((100% - 2rem) / 2);
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
@media (max-width: 1346px) {
  html body .serviceFlex .box {
    width: calc((100% - 1rem) / 2);
  }
}
@media (max-width: 767px) {
  html body .serviceFlex .box {
    width: 50%;
  }
}
html body .serviceFlex .box .a_btn {
  margin-bottom: 0;
}
html body .serviceFlex .box .a_btn .btn {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  html body .serviceFlex .box .a_btn .btn {
    margin: 0 0.5rem;
    font-size: 1rem;
    white-space: nowrap;
  }
}
@media (max-width: 400px) {
  html body .serviceFlex .box .a_btn .btn {
    font-size: 0.9rem;
  }
}
html body .serviceFlex .box .titleBlock {
  padding-bottom: 0;
  margin-bottom: 0;
}
html body .serviceFlex .box .titleBlock p.title {
  padding-bottom: 0;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  html body .serviceFlex .box .titleBlock p.title.flex .logo {
    max-width: 68%;
    height: auto;
  }
  html body .serviceFlex .box .titleBlock p.title.flex .logo.rebro {
    max-width: 60%;
  }
}
html body .serviceFlex .box ul {
  background-color: #AEE0FF;
  padding: 1.25rem;
  border-radius: 0.8rem;
  margin-bottom: 2rem;
  position: relative;
  flex-grow: 1;
}
html body .serviceFlex .box ul::after {
  content: "";
  position: absolute;
  bottom: -2.9rem;
  left: 50%;
  transform: translateX(-50%);
  width: 5rem;
  height: 2rem;
  min-width: 5rem;
  min-height: 3rem;
  background-color: #AEE0FF;
  -webkit-clip-path: polygon(0px 0px, 100% 0px, 50% 100%);
          clip-path: polygon(0px 0px, 100% 0px, 50% 100%);
}
html body .serviceFlex .box ul.red {
  background-color: #FFE2E2;
}
html body .serviceFlex .box ul.red::after {
  background-color: #FFE2E2;
}
html body .serviceFlex .box ul.red li {
  box-shadow: rgba(255, 161, 161, 0.5) 0px 0px 10px 4px;
}
@media (max-width: 767px) {
  html body .serviceFlex .box ul {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
    padding: 1rem 0.8rem;
  }
}
html body .serviceFlex .box ul li {
  background-color: #fff;
  padding: 1rem;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  margin-bottom: 1.25rem;
  font-weight: 600;
  font-size: 1.125rem;
  word-break: break-all;
  box-shadow: rgba(110, 188, 255, 0.5) 0px 0px 10px 4px;
}
@media (max-width: 767px) {
  html body .serviceFlex .box ul li {
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 0;
    min-height: 10em;
    padding: 1rem 0.5rem;
    font-size: 1rem;
  }
  html body .serviceFlex .box ul li p {
    flex-grow: 1;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media (max-width: 450px) {
  html body .serviceFlex .box ul li p br {
    display: none;
  }
}
html body .serviceFlex .box ul li:last-of-type {
  margin-bottom: 0;
}
html body .serviceFlex .box ul li .icon {
  width: 4rem;
  height: 4rem;
  min-width: 4rem;
  min-height: 4rem;
  margin: 0 1rem 0 0;
}
@media (max-width: 767px) {
  html body .serviceFlex .box ul li .icon {
    width: 3.5rem;
    height: 3.5rem;
    min-width: 3.5rem;
    min-height: 3.5rem;
    margin: 0 0 0.5rem 0;
  }
}
html body .serviceFlex .box ul.red {
  background-color: #FFE2E2;
}
html body .service_head {
  padding: 3rem 0;
}
@media (max-width: 767px) {
  html body .service_head {
    padding: 2.5rem 0 2rem 0;
  }
}
html body .service_head.blue {
  background-color: #E2F4FF;
}
html body .service_head.red {
  background-color: #FFE2E2;
}
html body .service_head .pageWidth {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  html body .service_head .pageWidth {
    display: block;
  }
}
html body .service_head .pageWidth .a_btn {
  margin: 0;
  width: 13rem;
}
@media (max-width: 767px) {
  html body .service_head .pageWidth .a_btn {
    justify-content: flex-end;
    width: 100%;
  }
}
html body .service_head .pageWidth .a_btn .btn {
  margin: 0 0 0 1rem;
}
@media (max-width: 767px) {
  html body .service_head .pageWidth .a_btn .btn {
    margin: 1rem 0 0 0;
  }
}
html body .service_head h2 {
  display: flex;
  font-weight: 600;
  align-items: flex-end;
  font-size: 1.25rem;
  width: 100%;
  max-width: 65%;
}
@media (max-width: 767px) {
  html body .service_head h2 {
    max-width: 100%;
  }
}
html body .service_head h2 .logo {
  height: 3rem;
  width: auto;
  margin-right: 0.5rem;
  margin-bottom: 0.25rem;
}
@media (max-width: 767px) {
  html body .service_head h2 .logo {
    height: 2.5rem;
  }
}
html body .titleBlock {
  padding-bottom: 1rem;
  width: 100%;
  color: #1a1a1a;
}
html body .titleBlock span.b_line {
  display: inline-block;
  position: relative;
}
html body .titleBlock span.b_line::after {
  position: absolute;
  width: 100%;
  height: 3px;
  content: "";
  bottom: 2px;
  left: 0;
  background-color: #29ADFF;
}
html body .titleBlock span.box {
  display: inline-block;
  margin: 0 auto 0.5rem auto;
  text-align: center;
  font-weight: 600;
  padding: 0.5rem;
  background-color: #fff;
  color: #29ADFF;
  line-height: 1;
}
html body .titleBlock h1 {
  color: #1a1a1a;
  font-weight: 600;
}
html body .titleBlock h2 {
  color: #1a1a1a;
  font-size: 1.875rem;
  font-weight: 600;
}
@media (max-width: 767px) {
  html body .titleBlock h2 {
    font-size: 1.75rem;
  }
}
@media (max-width: 380px) {
  html body .titleBlock h2 {
    font-size: 1.5rem;
  }
}
html body .titleBlock h2 span.b_line::after {
  bottom: 0;
}
html body .titleBlock h2.big {
  font-size: min(4.5vw, 2.8rem);
  line-height: 1.2;
}
@media (max-width: 767px) {
  html body .titleBlock h2.big {
    font-size: min(9vw, 3.5rem);
  }
}
html body .titleBlock h2.line {
  position: relative;
  padding-bottom: 1rem;
}
html body .titleBlock h2.line::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translatex(-50%);
  content: "";
  width: 5rem;
  height: 4px;
  background: linear-gradient(to right, #0066FF, #FF0909);
}
html body .titleBlock h3, html body .titleBlock p.title {
  color: #1a1a1a;
  font-size: 1.5rem;
  font-weight: 600;
  padding-bottom: 0.5rem;
}
html body .titleBlock h3.flex, html body .titleBlock p.title.flex {
  display: flex;
  align-items: flex-end;
  line-height: 2;
}
html body .titleBlock h3.flex .logo, html body .titleBlock p.title.flex .logo {
  display: inline-block;
  margin-right: 0.5rem;
  height: 2rem;
  width: auto;
  margin-bottom: 0.5rem;
}
@media (max-width: 767px) {
  html body .titleBlock h3.flex .logo, html body .titleBlock p.title.flex .logo {
    height: 1.8rem;
  }
}
html body .titleBlock h3.flex.wrap, html body .titleBlock p.title.flex.wrap {
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
@media (max-width: 767px) {
  html body .titleBlock h3.flex.wrap, html body .titleBlock p.title.flex.wrap {
    font-size: 1.25rem;
  }
}
html body .titleBlock h3.flex.wrap .logo, html body .titleBlock p.title.flex.wrap .logo {
  height: 2.8rem;
}
@media (max-width: 767px) {
  html body .titleBlock h3.flex.wrap .logo, html body .titleBlock p.title.flex.wrap .logo {
    height: 2rem;
  }
}
html body .titleBlock h3.flex.wrap span:last-of-type, html body .titleBlock p.title.flex.wrap span:last-of-type {
  display: block;
  width: 100%;
}
html body .titleBlock h3.line, html body .titleBlock p.title.line {
  position: relative;
  padding: 0.5rem 0 0.5rem 1rem;
}
html body .titleBlock h3.line::after, html body .titleBlock p.title.line::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 4px;
  height: 100%;
  background-color: #29ADFF;
}
html body .titleBlock h3.line.red::after, html body .titleBlock p.title.line.red::after {
  background-color: #FF7C7C;
}
html body .titleBlock b {
  line-height: 1;
}
html body .titleBlock b.sub {
  font-family: var(--s-font-helvetica);
}
html body .titleBlock p {
  font-size: 1.125rem;
  line-height: 1.8;
  margin: 1.5rem 0;
  margin-bottom: 1rem;
}
@media (max-width: 767px) {
  html body .titleBlock p {
    font-size: 1rem;
    line-height: 2;
  }
}
html body .titleBlock.white h2, html body .titleBlock.white p, html body .titleBlock.white h3, html body .titleBlock.white h4, html body .titleBlock.white b {
  color: #fff;
}
html body .titleBlock.center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
html body .titleBlock.center h2, html body .titleBlock.center p, html body .titleBlock.center h3, html body .titleBlock.center h4, html body .titleBlock.center b {
  text-align: center;
}
html body .color_anime {
  position: relative;
  overflow: hidden;
}
html body .color_anime::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(to right, #0066FF, #FF0909);
  z-index: 2;
  transition: 0.8s;
  transition-delay: 0.2s;
}
html body .color_anime.blue::before {
  background: linear-gradient(to right, #06C1FF, #0066FF);
}
html body .color_anime.red::before {
  background: linear-gradient(to right, #FF7171, #FF0909);
}
html body .color_anime img {
  opacity: 0;
  transition: 0.8s;
}
html body .color_anime.animated::before {
  transform: translateX(101%);
}
html body .color_anime.animated img {
  opacity: 1;
}
html body .color_anime_text {
  overflow: hidden;
}
html body .color_anime_text h3 span {
  position: relative; /* 追加 */
  color: #1a1a1a;
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 0.5s, transform 0.5s;
  transition-delay: 0.5s;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
}
html body .color_anime_text h3 span::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: linear-gradient(to right, #0066FF, #FF0909);
  transition: transform 0.5s;
  transition-delay: 1s;
  transform: translateX(0); /* 初期位置を左端に */
  z-index: 1;
}
html body .color_anime_text h3.blue span::before {
  background: linear-gradient(to right, #06C1FF, #0066FF);
}
html body .color_anime_text h3.red span::before {
  background: linear-gradient(to right, #FF7171, #FF0909);
}
html body .color_anime_text.animated h3 span {
  opacity: 1;
  transform: translateX(0);
}
html body .color_anime_text.animated h3 span::before {
  transform: translateX(101%); /* 右へスライド */
}
html body .leftSlide {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
  transition: 1s cubic-bezier(0.37, 0, 0.63, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
  opacity: 0;
}
html body .leftSlide.animated {
  opacity: 1;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
html body .rightSlide {
  -webkit-clip-path: inset(0 0 0 100%);
          clip-path: inset(0 0 0 100%);
  transition: 1s cubic-bezier(0.37, 0, 0.63, 1);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
  opacity: 0;
}
html body .rightSlide.animated {
  opacity: 1;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
html body .line_anime {
  display: inline-block !important;
  overflow: hidden;
  position: relative;
  transition: all ease 0.7s;
  -webkit-clip-path: polygon(0% 0, 0% 0%, 0% 100%, 0 100%);
          clip-path: polygon(0% 0, 0% 0%, 0% 100%, 0 100%);
}
html body .line_anime::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  position: absolute;
  right: 0;
  background: rgba(0, 0, 0, 0);
  transition: all ease 0.7s;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
html body .animated .line_anime {
  -webkit-clip-path: polygon(0% 0, 100% 0%, 100% 100%, 0 100%);
          clip-path: polygon(0% 0, 100% 0%, 100% 100%, 0 100%);
}
html body .animated .line_anime::after {
  width: 100%;
  -webkit-animation: h2SpanAnimation 0.7s linear forwards;
          animation: h2SpanAnimation 0.7s linear forwards;
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}
@-webkit-keyframes h2SpanAnimation {
  from {
    right: 0;
  }
  to {
    width: 0;
  }
}
@keyframes h2SpanAnimation {
  from {
    right: 0;
  }
  to {
    width: 0;
  }
}
html body .line_anime2 {
  display: inline-block !important;
  overflow: hidden;
  position: relative;
  transition: all ease 0.7s;
  -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
          clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
}
html body .line_anime2::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  position: absolute;
  left: 0;
  background: rgba(0, 0, 0, 0);
  transition: all ease 0.7s;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
html body .animated .line_anime2 {
  -webkit-clip-path: polygon(0% 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0% 0, 100% 0, 100% 100%, 0% 100%);
}
html body .animated .line_anime2::after {
  width: 100%;
  -webkit-animation: h2SpanAnimation2 0.7s linear forwards;
          animation: h2SpanAnimation2 0.7s linear forwards;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
@-webkit-keyframes h2SpanAnimation2 {
  from {
    left: 0;
  }
  to {
    width: 0;
  }
}
@keyframes h2SpanAnimation2 {
  from {
    left: 0;
  }
  to {
    width: 0;
  }
}
html body br.sp {
  display: none;
}
@media (max-width: 767px) {
  html body br.sp {
    display: inline-block;
  }
}
html body br.pc_none {
  display: inline-block;
}
@media (max-width: 1346px) {
  html body br.pc_none {
    display: none;
  }
}
html body br.tb_none {
  display: inline-block;
}
@media (max-width: 959px) {
  html body br.tb_none {
    display: none;
  }
}
html body br.sp_none {
  display: inline-block;
}
@media (max-width: 767px) {
  html body br.sp_none {
    display: none;
  }
}
html body figure.pc {
  max-width: 50rem;
  margin: 0 auto;
}
html body figure.sp_change img.pc {
  display: block;
}
@media (max-width: 959px) {
  html body figure.sp_change img.pc {
    display: none;
  }
}
html body figure.sp_change img.sp {
  display: none;
}
@media (max-width: 959px) {
  html body figure.sp_change img.sp {
    display: block;
  }
}
html body .media-video {
  width: 100%;
  max-width: 55rem;
  margin: 0 auto;
  padding: 1rem 0;
}
html body .video_width {
  width: 100%;
  max-width: 55rem;
  margin: 0 auto;
  padding: 1rem 0;
}
html body .video_width .video_padding {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
  height: 0;
  overflow: hidden;
}
html body .video_width .video_padding iframe, html body .video_width .video_padding img, html body .video_width .video_padding video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
html body .formDl å .text p {
  font-size: 0.75rem;
}
@media (max-width: 767px) {
  html body .formDl å .text p {
    font-size: 0.875rem;
  }
}
html body .formDl .smpForm {
  padding: 0;
}
@media (max-width: 767px) {
  html body .formDl .smpForm {
    width: 100%;
  }
}
html body .formDl .smpForm form input,
html body .formDl .smpForm form button,
html body .formDl .smpForm form select,
html body .formDl .smpForm form textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  margin: 0;
  font: inherit;
  outline: none;
}
html body .formDl .smpForm form input, html body .formDl .smpForm form textarea {
  background-color: #F8F8F8;
  border: 1px solid #C3C3C3;
  width: 100%;
  font-size: 16px !important;
  padding: 0.4rem 0.5rem;
  border-radius: 2px;
}
html body .formDl .smpForm form select {
  background-color: #F8F8F8;
  border: 1px solid #C3C3C3;
  width: 100%;
  font-size: 16px !important;
  padding: 0.4rem 0.5rem;
  border-radius: 2px;
}
html body .formDl .smpForm form textarea {
  field-sizing: content;
  min-height: 5lh;
  width: 100%;
}
html body .formDl .smpForm form input[type=checkbox], html body .formDl .smpForm form input[type=radio] {
  width: 1.75rem;
  height: 1.75rem;
  min-width: 1.75rem;
  min-height: 1.75rem;
  border-radius: 0;
  accent-color: #707070;
  margin-right: 0.5rem;
  position: relative;
  cursor: pointer;
}
html body .formDl .smpForm form input[type=checkbox]:checked, html body .formDl .smpForm form input[type=radio]:checked {
  background-color: #707070;
  border: 1px solid #707070;
}
html body .formDl .smpForm form input[type=checkbox]:checked::after, html body .formDl .smpForm form input[type=radio]:checked::after {
  position: absolute;
  top: 0.5rem;
  left: 0.3rem;
  content: "";
  width: 1rem;
  height: 0.5rem;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
}
html body .formDl .smpForm form input[type=checkbox]:focus, html body .formDl .smpForm form input[type=radio]:focus {
  outline: none;
}
html body .formDl .smpForm form input[name="Public::EmbeddedApplication::Userenquete_D__P__D_Enquete.attribute5202"]:checked[value="1"] {
  background: linear-gradient(to right, #06C1FF, #0066FF);
  border: 1px solid #0066FF;
}
html body .formDl .smpForm form input[name="Public::EmbeddedApplication::Userenquete_D__P__D_Enquete.attribute5202"]:checked[value="2"] {
  background: linear-gradient(to right, #FF7171, #FF0909);
  border: 1px solid #FF0909;
}
html body .formDl .smpForm form input[type=radio] {
  border-radius: 20rem;
}
html body .formDl .smpForm form input[type=button] {
  border: none;
  cursor: pointer;
  color: #fff;
  font-weight: 600;
  border-radius: 20rem;
  margin: 0.5rem auto;
  font-size: 1.25rem;
  max-width: 25rem;
  width: 100%;
  padding: 1rem;
  background: linear-gradient(to right, #0066FF, #FF0909);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease 0.5s;
  font-size: 1.125rem;
}
html body .formDl .smpForm form input[type=button]:hover {
  opacity: 0.8;
}
html body .formDl .smpForm form .ss_container .ss_contents {
  padding: 1rem 0.25rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset {
  margin-top: 0;
  background: none;
  border: none;
  padding: 0 0 1.5rem 0 !important;
  display: flex;
}
@media (max-width: 767px) {
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset {
    display: block;
  }
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_form_title, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_enquete_title, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_form_title, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_enquete_title {
  font-size: 1rem;
  padding: 0.45rem 1em 0.25rem 0;
  font-weight: 600;
  width: 10em;
}
@media (max-width: 767px) {
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_form_title, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_enquete_title, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_form_title, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_enquete_title {
    width: 100%;
    padding: 0 0 0.4rem 0;
  }
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_form_title .ss_user_notnull, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_enquete_title .ss_user_notnull, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_form_title .ss_user_notnull, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_enquete_title .ss_user_notnull {
  font-weight: 600;
  transform: scale(0.8);
  display: inline-block;
  color: #FF3838;
  margin-left: 0.25rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: calc(100% - 10em);
}
@media (max-width: 767px) {
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid {
    width: 100%;
  }
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 0.875rem;
}
@media (max-width: 767px) {
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input {
    font-size: 1rem;
  }
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=checkbox], html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=radio], html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input input[type=checkbox], html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input input[type=radio] {
  margin-left: 1rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=checkbox]:first-of-type, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input input[type=radio]:first-of-type, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input input[type=checkbox]:first-of-type, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input input[type=radio]:first-of-type {
  margin-left: 0;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_warning_label, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input .ss_warning_label {
  margin: 0 0.25rem 0.25rem 0;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_error_msg, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .errorMsg, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input .ss_error_msg, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input .errorMsg {
  margin: 0 0 0.5rem 0;
  width: calc(100% - 1.5rem);
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input .ss_upComment {
  margin: 0 0 0.5rem 0;
  width: 100%;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_leftComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input .ss_leftComment {
  margin: 0 0.25rem 0 0;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset .ss_grid .ss_input .ss_rightComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset .ss_grid .ss_input .ss_rightComment {
  margin: 0 0 0 0.25rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset.ss_required_field .ss_input .ss_upComment {
  display: flex;
  flex-wrap: wrap;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment br, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset.ss_required_field .ss_input .ss_upComment br {
  display: none;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment font, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment a, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset.ss_required_field .ss_input .ss_upComment font, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset.ss_required_field .ss_input .ss_upComment a {
  margin: 0.5rem 0.25rem 0.5rem 0 !important;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment a, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset.ss_required_field .ss_input .ss_upComment a {
  margin: 0.5rem 0;
  color: #173D8C;
  text-decoration: underline;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset.ss_required_field .ss_input .ss_upComment a:hover, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset.ss_required_field .ss_input .ss_upComment a:hover {
  text-decoration: none;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_tel .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_tel .ss_input {
  max-width: 20rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_zip .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_zip .ss_input {
  max-width: 12rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_prefecture_master_id .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_prefecture_master_id .ss_input {
  position: relative;
  max-width: 12rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_prefecture_master_id .ss_input::after, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_prefecture_master_id .ss_input::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: solid 2px #707070;
  border-right: solid 2px #707070;
  position: absolute;
  transform: translateY(-50%) rotate(135deg);
  right: 0.5rem;
  top: 50%;
  pointer-events: none;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_prefecture_master_id .ss_input select, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_prefecture_master_id .ss_input select {
  padding-right: 1.5rem;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_company_name .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_tel .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_company_name .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_tel .ss_input .ss_upComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input .ss_upComment {
  display: none;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_grid, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_grid {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: calc((100% - 0.5rem) / 2);
}
@media (max-width: 959px) {
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input {
    width: 100%;
  }
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input:first-of-type, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input:first-of-type {
    padding-bottom: 0.5rem;
  }
}
@media (max-width: 767px) {
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input {
    width: calc((100% - 0.5rem) / 2);
  }
  html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input:first-of-type, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input:first-of-type {
    padding-bottom: 0;
  }
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name .ss_input .ss_rightComment, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name .ss_input .ss_rightComment {
  display: none;
}
html body .formDl .smpForm form .ss_container .ss_contents .ss_visitor_form fieldset#ss_name input, html body .formDl .smpForm form .ss_container .ss_contents .ss_enquete_form fieldset#ss_name input {
  width: calc(100% - 1.5em);
}
html body .contentInclude *:first-child {
  margin-top: 0 !important;
}
html body .contentInclude *:last-child {
  margin-bottom: 0 !important;
}
html body .contentInclude p a, html body .contentInclude ol li a, html body .contentInclude ul li a {
  color: #29ADFF;
  display: inline;
  text-decoration: underline;
}
html body .contentInclude p a:hover, html body .contentInclude ol li a:hover, html body .contentInclude ul li a:hover {
  text-decoration: none;
}
html body .contentInclude p.red, html body .contentInclude ol li.red, html body .contentInclude ul li.red {
  color: #FF3838;
}
html body .contentInclude ol li h2, html body .contentInclude ol li h3, html body .contentInclude ol li h4, html body .contentInclude ol li h5, html body .contentInclude ol li h6, html body .contentInclude ul li h2, html body .contentInclude ul li h3, html body .contentInclude ul li h4, html body .contentInclude ul li h5, html body .contentInclude ul li h6 {
  margin-bottom: 0.5rem;
  font-size: 1rem;
}
html body .contentInclude ol li P, html body .contentInclude ul li P {
  margin: 0 0 1.5rem 0 !important;
}
html body .contentInclude h3 {
  font-weight: 600;
  font-size: 1.5rem;
  white-space: pre-wrap;
}
html body .contentInclude p {
  line-height: 2;
  margin: 1.5rem 0;
}
html body .contentInclude p.center {
  text-align: center;
}
html body .contentInclude ul {
  margin: 1.5rem 0 0 0;
  text-align: left;
}
html body .contentInclude ul li {
  margin: 0.5rem 0;
  padding-left: 1.5em;
  position: relative;
  font-size: 0.875rem;
}
html body .contentInclude ul li:first-of-type {
  margin: 0 0 0.5rem 0;
}
html body .contentInclude ul li:last-of-type {
  margin: 0.5rem 0 0 0;
}
html body .contentInclude ul li::before {
  position: absolute;
  top: 0.51em;
  left: 0.05rem;
  content: "";
  background-color: #29ADFF;
  border-radius: 50%;
  height: 0.5em;
  width: 0.5em;
  min-height: 0.5em;
  min-width: 0.5em;
}
html body .contentInclude ul.white {
  color: #fff;
}
html body .contentInclude ul.white li::before {
  background-color: #fff;
}
html body .contentInclude ul.big li {
  font-size: 1.125rem;
}
html body .contentInclude ul.icon_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin: 1rem 0 0 0;
}
@media (max-width: 767px) {
  html body .contentInclude ul.icon_list {
    grid-template-columns: repeat(1, 1fr);
  }
}
html body .contentInclude ul.icon_list li {
  padding: 1rem;
  background-color: #E2F4FF;
  margin: 0;
  border-radius: 0.5rem;
}
html body .contentInclude ul.icon_list li b {
  font-weight: 500;
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
}
html body .contentInclude ul.icon_list li b::before {
  display: block;
  content: "";
  width: 2rem;
  height: 2rem;
  min-width: 2rem;
  min-height: 2rem;
  background-image: url(/SS/picts/building_02.svg);
  background-size: contain;
  background-position: left center;
  background-repeat: no-repeat;
  margin-right: 0.5rem;
}
html body .contentInclude ul.icon_list li p {
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.5;
}
html body .contentInclude ul.icon_list li::before {
  content: none;
}
html body .contentInclude ul.icon_list.red li {
  background-color: #FFF5F5;
}
html body .contentInclude ul.icon_list.red li b::before {
  background-image: url(/SS/picts/building_01.svg);
}
html body .contentInclude ul.card_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin: 1rem 0 0 0;
}
@media (max-width: 959px) {
  html body .contentInclude ul.card_list {
    gap: 1rem;
  }
}
@media (max-width: 767px) {
  html body .contentInclude ul.card_list {
    grid-template-columns: repeat(1, 1fr);
    gap: 1.5rem;
  }
}
html body .contentInclude ul.card_list li {
  padding: 0;
  margin: 0;
}
html body .contentInclude ul.card_list li::before {
  content: none;
}
html body .contentInclude ul.card_list li a {
  overflow: hidden;
  display: block;
  background-color: #fff;
  margin: 0;
  border-radius: 0.5rem;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  text-decoration: none;
  color: #1a1a1a;
}
html body .contentInclude ul.card_list li a .text {
  padding: 1rem;
}
@media (max-width: 767px) {
  html body .contentInclude ul.card_list li a .text {
    padding: 1.5rem 1rem;
  }
}
html body .contentInclude ul.card_list li a .text p {
  font-size: 0.875rem;
  line-height: 1.8;
}
@media (max-width: 767px) {
  html body .contentInclude ul.card_list li a .text p {
    font-size: 1rem;
  }
}
html body .text_img_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin: 4rem 0;
}
html body .text_img_flex .text {
  width: 50%;
}
@media (max-width: 767px) {
  html body .text_img_flex .text {
    width: 100%;
  }
}
html body .text_img_flex .text p {
  white-space: pre-wrap;
}
html body .text_img_flex .text.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 5rem;
  right: 0;
}
@media (max-width: 767px) {
  html body .text_img_flex .text.sticky {
    position: static;
  }
}
html body .text_img_flex .text h3 {
  line-height: 1.3;
}
html body .text_img_flex .text h3 span.b_line {
  display: inline-block;
  position: relative;
}
html body .text_img_flex .text h3 span.b_line::after {
  position: absolute;
  width: 100%;
  height: 3px;
  content: "";
  bottom: 2px;
  left: 0;
  background-color: #29ADFF;
}
html body .text_img_flex .text h3.hojokin {
  font-size: min(4vw, 2.5rem);
}
@media (max-width: 767px) {
  html body .text_img_flex .text h3.hojokin {
    font-size: min(7vw, 3rem);
  }
}
html body .text_img_flex .text h3.hojokin span.b_line::after {
  height: 6px;
}
@media (max-width: 767px) {
  html body .text_img_flex .text h3.hojokin span.b_line::after {
    height: 5px;
  }
}
html body .text_img_flex .text h3.hojokin span.red {
  width: 100%;
  display: block;
  font-size: min(8vw, 5rem);
}
@media (max-width: 767px) {
  html body .text_img_flex .text h3.hojokin span.red {
    font-size: min(14vw, 6rem);
  }
}
html body .text_img_flex figure {
  overflow: hidden;
  margin-top: 0;
  width: calc((100% - 2rem) / 2);
  border-radius: 0.5rem;
}
html body .text_img_flex figure.round_none {
  border-radius: 0;
}
@media (max-width: 767px) {
  html body .text_img_flex figure {
    width: 100%;
    margin-top: 1.5rem;
  }
}
html body .text_img_flex figure.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 5em;
  right: 0;
}
@media (max-width: 767px) {
  html body .text_img_flex figure.sticky {
    position: static;
  }
}
@media (max-width: 767px) {
  html body .text_img_flex figure.sp_max80 {
    max-width: 80%;
    margin: 1.5rem auto 0 auto;
  }
}
html body .jump_id {
  display: block;
  margin-top: -4rem;
  padding-top: 4rem;
  pointer-events: none;
}
html body section {
  padding: 5.5rem 0;
}
@media (max-width: 767px) {
  html body section {
    padding: 3.5rem 0;
  }
}
html body section.top {
  padding-top: 0;
}
html body section.hidden {
  display: none !important;
}
html body section.back_gray {
  background-color: #F5F5F5;
}
html body section.back_image, html body section .back_image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
html body section.back_image.attach, html body section .back_image.attach {
  background-attachment: fixed;
}
@media (max-width: 767px) {
  html body section.back_image.attach, html body section .back_image.attach {
    background-attachment: inherit;
  }
}
html body section.back_image.f_white, html body section .back_image.f_white {
  position: relative;
}
html body section.back_image.f_white::after, html body section .back_image.f_white::after {
  position: absolute;
  content: "";
  background-color: #fff;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0.4;
  display: block;
  pointer-events: none;
}
html body section.back_image.f_white .pageWidth, html body section .back_image.f_white .pageWidth {
  position: relative;
  z-index: 5;
}
html body section.fv {
  margin-bottom: 5rem;
  position: relative;
  padding: 2rem 0 0 0;
}
@media (max-width: 767px) {
  html body section.fv {
    padding: 1.5rem 0 0 0;
    margin-bottom: 4rem;
  }
}
html body section.fv .back_image.f_white {
  position: absolute;
  height: calc(100% - 5rem);
  width: 100%;
  left: 0;
  top: 0;
  z-index: 2;
}
@media (max-width: 767px) {
  html body section.fv .back_image.f_white {
    height: 100%;
  }
}
html body section.fv .back_image.f_white::after {
  z-index: 3;
}
html body section.fv .pageWidth {
  max-width: 1400px;
  position: static !important;
}
@media (max-width: 767px) {
  html body section.fv .pageWidth {
    padding: 0;
  }
}
html body section.fv h1.img {
  position: relative;
  z-index: 5;
}
html body section.fv h1.img img {
  max-width: 50rem;
  width: 100%;
  height: auto;
}
@media (max-width: 767px) {
  html body section.fv h1.img {
    padding: 0 1rem;
  }
}
html body section.fv .fv_img {
  display: flex;
  justify-content: space-between;
  padding: 1rem 0;
}
@media (max-width: 767px) {
  html body section.fv .fv_img {
    display: block;
    padding: 1rem;
  }
}
html body section.fv .fv_img .diagonal-box {
  position: absolute;
  width: 100%;
  height: 5rem;
  overflow: hidden;
  bottom: 0;
  left: 0;
  z-index: 4;
}
@media (max-width: 767px) {
  html body section.fv .fv_img .diagonal-box {
    display: none;
  }
}
html body section.fv .fv_img .diagonal-box .left, html body section.fv .fv_img .diagonal-box .right {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 60%;
}
html body section.fv .fv_img .diagonal-box .left {
  left: -5%;
  background-color: #AEE0FF; /* 左側：水色 */
  -webkit-clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%);
}
html body section.fv .fv_img .diagonal-box .right {
  right: -7%;
  background-color: #FFE2E2; /* 右側：ピンク */
  -webkit-clip-path: polygon(10% 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(10% 0, 100% 0, 100% 100%, 0% 100%);
}
html body section.fv .fv_img .block {
  width: calc((100% - 1rem) / 2);
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block::after {
    background-color: #AEE0FF;
    width: calc(100% + 2rem);
    bottom: 0;
    left: -1rem;
    height: 5rem;
    content: "";
    position: absolute;
    -webkit-clip-path: polygon(20% 0%, 100% 0, 80% 100%, 0% 100%);
            clip-path: polygon(20% 0%, 100% 0, 80% 100%, 0% 100%);
  }
}
html body section.fv .fv_img .block .text {
  position: absolute;
  width: 18%;
  top: -0.5rem;
}
@media (max-width: 959px) {
  html body section.fv .fv_img .block .text {
    width: 20%;
  }
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block .text {
    width: 18%;
  }
}
html body section.fv .fv_img .block .point {
  position: absolute;
  width: 15%;
  transform: translateY(-50%);
  top: 50%;
  display: flex;
  flex-direction: column;
  z-index: 7;
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block .point {
    width: 18%;
    transform: inherit;
    top: inherit;
    bottom: 1rem;
  }
}
html body section.fv .fv_img .block .point img:first-of-type {
  margin-bottom: 10%;
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block .point img:first-of-type {
    margin-bottom: 7%;
  }
}
html body section.fv .fv_img .block .a_btn {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0.5rem;
  z-index: 7;
}
html body section.fv .fv_img .block .a_btn .btn {
  max-width: 14rem;
}
@media (max-width: 959px) {
  html body section.fv .fv_img .block .a_btn {
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block .a_btn {
    font-size: 1rem;
    bottom: 0.5rem;
  }
  html body section.fv .fv_img .block .a_btn .arrow {
    right: 0.6rem;
    transform: translateY(-50%) scale(0.8);
  }
  html body section.fv .fv_img .block .a_btn .btn {
    max-width: 11rem;
    font-size: 1rem;
  }
}
html body section.fv .fv_img .block.fs {
  padding: 0 0 0 7%;
}
html body section.fv .fv_img .block.fs .text {
  left: 2%;
}
html body section.fv .fv_img .block.fs .point {
  right: 1%;
}
html body section.fv .fv_img .block.fs .a_btn {
  left: 0;
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block.fs {
    padding: 0 0 1rem 0;
  }
  html body section.fv .fv_img .block.fs .text {
    left: 0;
  }
  html body section.fv .fv_img .block.fs .a_btn {
    left: 0.25rem;
  }
  html body section.fv .fv_img .block.fs .point {
    right: 0;
  }
}
html body section.fv .fv_img .block.rd {
  padding: 0 7% 0 0;
}
html body section.fv .fv_img .block.rd .text {
  right: 2%;
}
html body section.fv .fv_img .block.rd .point {
  left: 1%;
}
html body section.fv .fv_img .block.rd .a_btn {
  right: 0;
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block.rd {
    padding: 0 0 1rem 0;
  }
  html body section.fv .fv_img .block.rd::after {
    background-color: #FFE2E2;
  }
  html body section.fv .fv_img .block.rd .text {
    right: 0;
  }
  html body section.fv .fv_img .block.rd .a_btn {
    right: 0.25rem;
  }
  html body section.fv .fv_img .block.rd .point {
    left: 0;
  }
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block {
    width: 100%;
    margin: 1rem 0 2rem 0;
  }
  html body section.fv .fv_img .block:last-of-type {
    margin: 0;
  }
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block figure {
    max-width: 78%;
    margin: 0 auto;
    padding-bottom: 1rem;
    position: relative;
    z-index: 6;
  }
}
html body section.fv .fv_img .block .logo {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.5rem;
  flex-grow: 1;
}
html body section.fv .fv_img .block .logo img {
  height: 5rem;
  width: auto;
  margin-left: 10%;
}
@media (max-width: 1000px) {
  html body section.fv .fv_img .block .logo img {
    height: 4.5rem;
  }
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block .logo img {
    height: auto;
    max-width: 52%;
    height: auto;
    width: 100%;
    margin-left: 9%;
    position: relative;
    z-index: 6;
  }
}
html body section.fv .fv_img .block .logo.rebro img {
  height: 5.5rem;
  margin-bottom: 0;
  margin-left: 0;
}
@media (max-width: 1000px) {
  html body section.fv .fv_img .block .logo.rebro img {
    height: 5rem;
  }
}
@media (max-width: 767px) {
  html body section.fv .fv_img .block .logo.rebro img {
    max-width: 42%;
    margin: 0 auto;
    width: 100%;
    height: auto;
  }
}
html body section.fv .a_btn.top {
  position: absolute;
  bottom: -5rem;
  left: 0;
  width: 100%;
  padding: 0;
  margin: 0;
  z-index: 5;
}
@media (max-width: 767px) {
  html body section.fv .a_btn.top {
    bottom: -4rem;
  }
}
html body section.fv .a_btn.top .btn {
  margin: 0;
  border-radius: 0;
  width: 100%;
  max-width: 100%;
  height: 5rem;
  font-size: 1.25rem;
  padding-left: 3rem;
  color: #1a1a1a;
  background: #fff;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}
@media (max-width: 767px) {
  html body section.fv .a_btn.top .btn {
    height: 4rem;
  }
}
html body section.fv .a_btn.top .btn .arrow {
  position: static;
  margin: 0 0 0 1rem;
  transform: inherit;
  border-color: #1a1a1a;
}
@media (max-width: 767px) {
  html body section.fv .a_btn.top .btn .arrow {
    margin: 0 0 0 0.5rem;
  }
}
html body section.fv .a_btn.top .btn .arrow::after, html body section.fv .a_btn.top .btn .arrow::before {
  border-color: #1a1a1a;
}
html body .img_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
html body .img_flex figure {
  width: 45%;
}
html body .img_flex figure:last-of-type {
  width: 53%;
}
@media (max-width: 767px) {
  html body .img_flex figure:last-of-type {
    width: 100%;
    margin-top: 2rem;
  }
}
@media (max-width: 767px) {
  html body .img_flex figure {
    width: 100%;
  }
}
html body .whiteBox {
  background-color: #fff;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
  border-radius: 0.5rem;
  padding: 2rem;
  margin: 2rem 0;
}
html body .whiteBox.blue {
  box-shadow: rgba(110, 188, 255, 0.5) 0px 0px 10px 4px;
}
@media (max-width: 959px) {
  html body .whiteBox {
    padding: 2rem 1rem;
  }
}
html body .whiteBox table, html body .whiteBox td, html body .whiteBox th, html body .whiteBox tr {
  margin: 0;
  padding: 0;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  background: none;
  background-image: none;
  vertical-align: middle;
  text-align: left;
}
html body .whiteBox table {
  max-width: 60rem;
  margin: 0 auto;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0.5rem 1rem;
}
@media (max-width: 767px) {
  html body .whiteBox table {
    transform: scale(1.04);
  }
}
html body .whiteBox table tr {
  gap: 1rem;
}
html body .whiteBox table tr th {
  width: 40%;
}
html body .whiteBox table tr th:first-of-type {
  width: calc(20% - 1rem);
}
html body .whiteBox table tr th .logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
html body .whiteBox table tr th:nth-of-type(2) .logo img {
  width: 90%;
}
html body .whiteBox table tr th:nth-of-type(3) .logo img {
  width: 70%;
}
html body .whiteBox table tr td {
  background-color: #F0F0F0;
  padding: 0.8rem 1rem;
  text-align: center;
}
@media (max-width: 767px) {
  html body .whiteBox table tr td {
    padding: 0.8rem 0.5rem;
  }
}
html body .whiteBox table tr td .mark {
  display: flex;
  align-items: center;
  justify-content: center;
}
html body .whiteBox table tr td .mark img {
  width: 3rem;
  height: auto;
}
@media (max-width: 767px) {
  html body .whiteBox table tr td .mark img {
    width: 2.5rem;
  }
}
html body .whiteBox table tr td small {
  padding-top: 0.5rem;
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1.2;
}
html body .whiteBox table tr td:first-of-type {
  font-weight: 600;
  line-height: 1.2;
  padding: 0.5rem;
  font-size: min(2.8vw, 1.125rem);
}
html body .whiteBox table tr td:nth-of-type(2) {
  background-color: #E2F4FF;
}
html body .whiteBox table tr td:nth-of-type(3) {
  background-color: #FFF5F5;
}
html body .whiteBox .text_img_flex {
  max-width: 55rem;
  margin: 0 auto;
  padding: 2rem 0;
}
@media (max-width: 767px) {
  html body .whiteBox .text_img_flex {
    padding: 1rem 0;
  }
}
html body .whiteBox .text_img_flex figure {
  width: 53%;
}
@media (max-width: 767px) {
  html body .whiteBox .text_img_flex figure {
    width: 100%;
    margin-top: 2rem;
    padding-bottom: 1rem;
  }
}
html body .whiteBox .text_img_flex .text {
  width: 45%;
}
@media (max-width: 767px) {
  html body .whiteBox .text_img_flex .text {
    width: 100%;
  }
}
html body .whiteBox.shadow_none {
  box-shadow: inherit;
  background: rgba(255, 255, 255, 0.85);
}
html body .headerSpacer {
  padding-top: 8rem;
  background-color: #707070;
}
html body .pageWidth {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (min-width: 1800px) {
  html body .pageWidth {
    max-width: 1160px;
  }
}
html body .pageWidth.medi {
  max-width: 960px;
}
html body .pageWidth.narrow {
  max-width: 780px;
}
html body .a_btn {
  margin: 1rem 0;
  display: flex;
  flex-wrap: wrap;
}
html body .a_btn.center {
  justify-content: center;
}
html body .a_btn.center a.btn, html body .a_btn.center div.btn, html body .a_btn.center button.btn {
  margin: 0.8rem 1rem;
}
html body .a_btn.right {
  justify-content: flex-end;
}
html body .a_btn.right a.btn, html body .a_btn.right div.btn, html body .a_btn.right button.btn {
  margin: 0.5rem 0 0.5rem 1rem;
}
@media (max-width: 767px) {
  html body .a_btn.sp_center {
    justify-content: center;
  }
  html body .a_btn.sp_center a.btn, html body .a_btn.sp_center div.btn, html body .a_btn.sp_center button.btn {
    margin: 0.8rem 1rem;
  }
}
html body .a_btn a.btn, html body .a_btn div.btn, html body .a_btn button.btn {
  max-width: 18rem;
  border: none;
  cursor: pointer;
  color: #fff;
  width: 100%;
  font-weight: 600;
  padding: 0.8rem 2.8rem 0.8rem 1rem;
  border-radius: 20rem;
  margin: 0.5rem 1rem 0.5rem 0;
  background: linear-gradient(to right, #0066FF, #FF0909);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease 0.5s;
  font-size: 1.125rem;
  position: relative;
}
html body .a_btn a.btn .arrow, html body .a_btn div.btn .arrow, html body .a_btn button.btn .arrow {
  position: absolute;
  right: 0.6rem;
  transform: translateY(-50%);
  top: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 2rem;
  border: 2px solid #fff;
  width: 1.75rem;
  height: 1.75rem;
}
html body .a_btn a.btn .arrow::after, html body .a_btn div.btn .arrow::after, html body .a_btn button.btn .arrow::after {
  content: "";
  width: 0.65rem;
  height: 0.65rem;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  position: absolute;
  margin-bottom: 0.2rem;
  transform: rotate(135deg);
}
html body .a_btn a.btn:hover, html body .a_btn div.btn:hover, html body .a_btn button.btn:hover {
  opacity: 0.8;
}
html body .a_btn a.btn.blue, html body .a_btn div.btn.blue, html body .a_btn button.btn.blue {
  background: none;
  background: linear-gradient(to right, #06C1FF, #0066FF);
  color: #fff;
}
html body .a_btn a.btn.red, html body .a_btn div.btn.red, html body .a_btn button.btn.red {
  background: none;
  background: linear-gradient(to right, #FF7171, #FF0909);
  color: #fff;
}
html body .a_btn a.btn.small, html body .a_btn div.btn.small, html body .a_btn button.btn.small {
  max-width: 11rem;
  font-size: 1rem;
  padding: 0.7rem 2.8rem 0.7rem 1rem;
}
html body .a_btn a.btn.small .arrow, html body .a_btn div.btn.small .arrow, html body .a_btn button.btn.small .arrow {
  right: 0.5rem;
  transform: translateY(-50%) scale(0.8);
}
html body header {
  margin: 0 auto;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  background: rgba(0, 0, 0, 0.8);
  position: fixed;
  height: 8rem;
}
html body header .headerInner {
  display: flex;
  height: 4rem;
  justify-content: space-between;
  padding: 0 0 0 1rem;
}
@media (min-width: 2000px) {
  html body header .headerInner {
    margin-left: 220px;
  }
}
@media (max-width: 1100px) {
  html body header .headerInner {
    padding: 0 4rem 0 1rem;
    position: relative;
  }
}
html body header .logoFlex {
  display: flex;
  align-items: center;
  margin-right: 0.5rem;
}
html body header .logo {
  display: flex;
  align-items: center;
}
html body header .logo img {
  height: 2rem;
  margin-right: 1rem;
  position: relative;
  z-index: 210;
}
@media (max-width: 767px) {
  html body header .logo img {
    height: 1.8rem;
  }
}
@media (max-width: 440px) {
  html body header .logo img {
    height: 1.28rem;
  }
}
html body header .headerNav {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 1100px) {
  html body header .headerNav .menuBlock {
    display: none;
  }
}
html body header .headerNav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
html body header .headerNav ul li {
  font-size: 0.875rem;
  font-weight: 600;
  margin-right: 1rem;
}
@media (max-width: 767px) {
  html body header .headerNav ul li {
    font-size: 1.125rem;
  }
}
html body header .headerNav ul li a, html body header .headerNav ul li div.a {
  cursor: pointer;
  padding: 0.25rem 0;
}
@media (max-width: 1100px) {
  html body header .headerNav ul li a, html body header .headerNav ul li div.a {
    padding: 0.5rem;
  }
}
html body header .headerNav ul li a span, html body header .headerNav ul li div.a span {
  color: #fff;
}
@media (max-width: 1100px) {
  html body header .headerNav ul li div.a {
    cursor: inherit;
    padding-bottom: 0 !important;
  }
}
html body header .a_btn.contact {
  margin: 0;
}
html body header .a_btn.contact a.btn, html body header .a_btn.contact div.btn {
  margin: 0;
  font-size: 1rem;
  white-space: nowrap;
  border-radius: 0;
  padding: 0.8rem 0;
  text-align: center;
  height: 4rem;
  min-width: 10em;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: inherit;
  opacity: 1;
}
@media (max-width: 767px) {
  html body header .a_btn.contact a.btn, html body header .a_btn.contact div.btn {
    min-width: 9em;
    font-size: 0.875rem;
  }
}
@media (max-width: 400px) {
  html body header .a_btn.contact a.btn, html body header .a_btn.contact div.btn {
    font-size: 0.75rem;
  }
}
html body header #menu_trigger {
  display: none;
}
html body header .menu_trigger {
  display: none;
}
@media (max-width: 1100px) {
  html body header .menu_trigger {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    z-index: 99;
    transform: translateY(-50%);
    top: 50%;
    right: 0;
    width: 4rem;
    height: 4rem;
    min-width: 4rem;
    min-height: 4rem;
    background-color: #F0F0F0;
  }
}
html body header .menu_trigger div {
  position: relative;
  width: 2.5rem;
  height: 2rem;
  background: none;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  transition: all 0.4s;
  box-sizing: border-box;
  z-index: 250;
  transform: scale(0.7);
}
html body header .menu_trigger div span {
  position: absolute;
  left: 0;
  height: 1px;
  background-color: #1a1a1a;
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}
html body header .menu_trigger div span:first-of-type {
  top: 0;
  width: 100%;
}
html body header .menu_trigger div span:nth-of-type(2) {
  top: 1rem;
  width: 100%;
}
html body header .menu_trigger div span:nth-of-type(2)::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #1a1a1a;
  border-radius: 4px;
  transition: all 0.4s;
}
html body header .menu_trigger div span:last-of-type {
  bottom: 0;
  width: 100%;
}
html body header #menu_trigger:checked + label span:first-of-type {
  transform: translateY(0.95rem) scale(0);
}
html body header #menu_trigger:checked + label span:first-of-type::after {
  background-color: #fff;
}
html body header #menu_trigger:checked + label span:nth-of-type(2) {
  transform: rotate(-45deg);
  width: 100%;
}
html body header #menu_trigger:checked + label span:nth-of-type(2)::after {
  transform: rotate(90deg);
}
html body header #menu_trigger:checked + label span:last-of-type {
  transform: translateY(-0.95rem) scale(0);
}
html body header #menu_trigger:checked + label span:last-of-type::after {
  background-color: #fff;
}
html body header #menu_trigger:checked ~ .headerNav .menuBlock {
  display: block;
  position: absolute;
  top: 4em;
  right: 0;
  width: 20rem;
  height: 100vh;
  background-color: #fff;
  padding: 1rem 0;
}
@media (max-width: 1100px) {
  html body header #menu_trigger:checked ~ .headerNav .menuBlock {
    width: 30%;
  }
}
@media (max-width: 959px) {
  html body header #menu_trigger:checked ~ .headerNav .menuBlock {
    width: 50%;
  }
}
@media (max-width: 767px) {
  html body header #menu_trigger:checked ~ .headerNav .menuBlock {
    width: 100%;
  }
}
html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu {
  display: block;
}
html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li {
  margin-bottom: 0.25rem;
}
html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li a, html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li div.a {
  padding: 1rem 1rem 1rem 2.5rem;
  position: relative;
}
html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li a::before, html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li div.a::before {
  content: "";
  width: 0.75rem;
  height: 0.75rem;
  border-top: solid 3px #29ADFF;
  border-right: solid 3px #29ADFF;
  position: absolute;
  transform: translateY(-50%) rotate(45deg);
  top: 50%;
  left: 1rem;
}
html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li a span, html body header #menu_trigger:checked ~ .headerNav .menuBlock ul.menu li div.a span {
  color: #1a1a1a;
}
html body .daikin_head {
  background-color: #fff;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
  padding: 0 0.45rem;
  display: flex;
  align-items: center;
  height: 4rem;
  padding-left: 6px;
}
@media (min-width: 2000px) {
  html body .daikin_head {
    padding-left: 227px;
  }
}
html body .daikin_head #site-header-logo img {
  max-width: 13rem;
}
@media (max-width: 767px) {
  html body .daikin_head #site-header-logo img {
    max-width: 12rem;
  }
}
html body #site-footer .inner {
  max-width: 1160px;
  margin: 0 auto;
  padding: 2rem 1rem;
  font-size: 0.875rem;
}
@media (max-width: 767px) {
  html body #site-footer .inner {
    font-size: 1rem;
  }
}
html body #site-footer #site-footer-column {
  display: flex;
}
@media (max-width: 959px) {
  html body #site-footer #site-footer-column {
    flex-wrap: wrap;
  }
}
html body #site-footer #site-footer-column #site-footer-logo {
  margin-right: 3rem;
}
@media (max-width: 959px) {
  html body #site-footer #site-footer-column #site-footer-logo {
    width: 100%;
    margin-right: 0;
  }
}
html body #site-footer #site-footer-column #site-footer-logo img {
  max-width: 13rem;
}
@media (max-width: 767px) {
  html body #site-footer #site-footer-column #site-footer-logo img {
    margin: 0 auto 1rem auto;
  }
}
html body #site-footer .copyright {
  text-align: center;
  font-size: 0.75rem;
  padding: 1rem;
  width: 100%;
  display: block;
}
html body #site-footer #site-footer-info {
  margin-right: 1.5rem;
  padding-right: 1.5rem;
  margin-top: 1rem;
  border-right: 1px solid #C3C3C3;
}
@media (max-width: 767px) {
  html body #site-footer #site-footer-info {
    padding-right: 0;
    width: 100%;
    margin-bottom: 0;
    padding-bottom: 1rem;
    border-right: none;
    border-bottom: 1px solid #C3C3C3;
  }
}
html body #site-footer #site-footer-info h2 {
  font-size: 1.125rem;
  font-weight: 600;
  position: relative;
  padding-left: 0.8rem;
}
html body #site-footer #site-footer-info h2::before {
  content: "";
  position: absolute;
  height: 100%;
  width: 3px;
  background-color: #29ADFF;
  display: block;
  top: 0;
  left: 0;
}
html body #site-footer #site-footer-info p {
  line-height: 2;
  margin: 1rem 0 0 0;
}
html body #site-footer #site-footer-info p a {
  display: inline;
  color: #1a1a1a;
  text-decoration: none;
}
html body #site-footer #site-footer-nav {
  margin-top: 1rem;
}
@media (max-width: 767px) {
  html body #site-footer #site-footer-nav {
    width: 100%;
  }
}
html body #site-footer #site-footer-nav ul li {
  margin-bottom: 0.25rem;
}
html body #site-footer #site-footer-nav ul li a {
  position: relative;
  padding: 0.25rem 0.5rem 0.25rem 1.5rem;
}
html body #site-footer #site-footer-nav ul li a::before {
  content: "";
  width: 0.75rem;
  height: 0.75rem;
  border-top: solid 3px #29ADFF;
  border-right: solid 3px #29ADFF;
  position: absolute;
  transform: translateY(-50%) rotate(45deg);
  top: 50%;
  left: 0;
}
/*# sourceMappingURL=fr_lp.css.map */



