@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap');

:root{
  --vw-small: 390;
}

#header {
  background-color: #204ca0;
}

.sp-none {
  display: none;
}

.pc-none {
  display: block;
}

.main {
  background-color: #f6f6f6;
  font-feature-settings: "palt";
  color: #333333;
  overflow: hidden;
}

.container {
  padding: 0 calc((100vw / var(--vw-small)) * 20);
  box-sizing: border-box;
}

.common-title {
  font-size: calc((100vw / var(--vw-small)) * 20);
  font-weight: 600;
  color: #2a9ace;
  position: relative;
}

.common-title::before {
  content: '';
  display: block;
  position: absolute;
  bottom: calc((100vw / var(--vw-small)) * -18);
  left: 50%;
  transform: translateX(-50%);
  width: calc((100vw / var(--vw-small)) * 84);
  height: calc((100vw / var(--vw-small)) * 2);
  border: calc((100vw / var(--vw-small)) * 3) solid #2a9ace;
  background-color: #2a9ace;
  box-sizing: border-box;
}

.main-visual {
  position: relative;
  margin-inline: calc(50% - 50vw);
}

.main-visual-figure {
  height: calc((100vw / var(--vw-small)) * 248);
  display: block;
}

.main-visual-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.main-visual-text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%,-50%);
  color: #ffffff;
  font-size: calc((100vw / var(--vw-small)) * 26);
  line-height: 1.6;
  font-weight: 600;
}

.cta {
  position: relative;
  padding: calc((100vw / var(--vw-small)) * 32) 0;
}

.cta::before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: calc((100vw / var(--vw-small)) * -20);
  width: 100vw;
  background-color: #0e3b8c;
  height: 100%;
}

.cta-buttons {
  display: flex;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 26) 0;
  position: relative;
  z-index: 2;
}

.cta-button-link {
  display: block;
  border-radius: calc((100vw / var(--vw-small)) * 8);
  padding: calc((100vw / var(--vw-small)) * 16) 0;
  font-size: calc((100vw / var(--vw-small)) * 20);
  font-weight: 600;
  box-sizing: border-box;
  letter-spacing: .05em;
  text-decoration: none;
  position: relative;
}

.cta-button-link::before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: calc((100vw / var(--vw-small)) * 8);
  z-index: -1;
  top: calc((100vw / var(--vw-small)) * 5);
}

.cta-button-link.reserve {
  background-color: #f89044;
  border: 2px solid #f89044;
  color: #ffffff;
}

.cta-button-link.reserve::before {
  background-color: #cc6d28;
}

.cta-button-link.apply {
  background-color: #ffffff;
  color: #000000;
  border: 2px solid #000000;
}

.cta-button-link.apply::before {
  background-color: #ffffff;
}

.info {
  position: relative;
  padding: calc((100vw / var(--vw-small)) * 40) 0;
}

.info::before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: calc((100vw / var(--vw-small)) * -20);
  width: 100vw;
  background-color: #ffffff;
  height: 100%;
}

.info::after {
  position: absolute;
  display: block;
  content: '';
  bottom: calc((100vw / var(--vw-small)) * -48);
  left: 50%;
  transform: translateX(-50%);
  width: calc((100vw / var(--vw-small)) * 137);
  height: calc((100vw / var(--vw-small)) * 55);
  background: url(../images/arrow.png) center/cover no-repeat;
}

.info-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  background-color: #46abd9;
  border-radius: calc((100vw / var(--vw-small)) * 12);
  padding: calc((100vw / var(--vw-small)) * 28) calc((100vw / var(--vw-small)) * 20);
  color: #ffffff;
  font-weight: 600;
  position: relative;
  line-height: 1.7;
}

.info-minds {
  list-style: none;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: calc((100vw / var(--vw-small)) * 40) 0;
  padding-left: calc((100vw / var(--vw-small)) * 16);
  margin-top: calc((100vw / var(--vw-small)) * 36);
}

.info-mind {
  background-color: #dae0e2;
  border-radius: calc((100vw / var(--vw-small)) * 16);
  width: calc((100vw / var(--vw-small)) * 220);
  padding: calc((100vw / var(--vw-small)) * 16) 0;
  font-size: calc((100vw / var(--vw-small)) * 12);
  position: relative;
  line-height: 1.5;
}

.info-mind::before {
  content: '';
  display: block;
  position: absolute;
}

.info-mind:first-child:before {
  background: url(../images/human01_sp.png) center/cover no-repeat;
  width: calc((100vw / var(--vw-small)) * 90);
  height: calc((100vw / var(--vw-small)) * 112);
  top: 0;
  right: -44%;
}

.info-mind:nth-child(2):before {
  background: url(../images/human02_sp.png) center/cover no-repeat;
  width: calc((100vw / var(--vw-small)) * 87);
  height: calc((100vw / var(--vw-small)) * 107);
  top: 0;
  right: -44%;
}

.info-mind:last-child:before {
  background: url(../images/human03_sp.png) center/cover no-repeat;
  width: calc((100vw / var(--vw-small)) * 86);
  height: calc((100vw / var(--vw-small)) * 110);
  top: 0;
  right: -44%;
}

.info-question {
  margin-top: calc((100vw / var(--vw-small)) * 64);
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: #f8d285;
  text-decoration-thickness: calc((100vw / var(--vw-small)) * 10);
  text-underline-offset: calc((100vw / var(--vw-small)) * -4);
  line-height: 1.7;
  position: relative;
}

.about {
  padding: calc((100vw / var(--vw-small)) * 94) 0 0;
}

.about-appeal {
  color: #ea6f17;
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  line-height: 1.5;
  position: relative;
  margin-inline: auto;
  max-inline-size: max-content;
}

.about-appeal::before {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: calc((100vw / var(--vw-small)) * -30);
  width: calc((100vw / var(--vw-small)) * 5);
  height: calc((100vw / var(--vw-small)) * 48);
  transform: rotate(-35deg);
  background-color: #f19c5f;
}

.about-appeal::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  right: calc((100vw / var(--vw-small)) * -26);
  width: calc((100vw / var(--vw-small)) * 5);
  height: calc((100vw / var(--vw-small)) * 48);
  transform: rotate(35deg);
  background-color: #f19c5f;
}

.about-appeal--small {
  font-size: calc((100vw / var(--vw-small)) * 16);
}

.about-items {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 16) 0;
  margin-top: calc((100vw / var(--vw-small)) * 34);
}

.about-item {
  background-color: #46abd9;
  position: relative;
  border-radius: calc((100vw / var(--vw-small)) * 8);
  padding: calc((100vw / var(--vw-small)) * 20) calc((100vw / var(--vw-small)) * 16);
}

.about-item::before {
  display: block;
  content: '';
  position: absolute;
}

.about-item:first-child::before {
  background: url(../images/shine01.png) center/cover no-repeat;
  left: calc((100vw / var(--vw-small)) * -9);
  top: calc((100vw / var(--vw-small)) * -25);
  width: calc((100vw / var(--vw-small)) * 43);
  height: calc((100vw / var(--vw-small)) * 48);
}

.about-item:last-child::before {
  background: url(../images/shine02.png) center/cover no-repeat;
  right: calc((100vw / var(--vw-small)) * -9);
  bottom: calc((100vw / var(--vw-small)) * -25);
  width: calc((100vw / var(--vw-small)) * 38);
  height: calc((100vw / var(--vw-small)) * 43);
}

.about-item-text {
  color: #ffffff;
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  line-height: 1.6;
}

.about-item-text--small {
  display: block;
  font-weight: 500;
  font-size: calc((100vw / var(--vw-small)) * 16);
  margin-bottom: calc((100vw / var(--vw-small)) * 8);
  color: #333333;
}

.about-text {
  margin-top: calc((100vw / var(--vw-small)) * 34);
  font-size: calc((100vw / var(--vw-small)) * 20);
  color: #ea6f17;
  line-height: 1.5;
  font-weight: 600;
}

.about-cautions {
  list-style: none;
  margin-top: calc((100vw / var(--vw-small)) * 10);
}

.about-caution {
  font-size: calc((100vw / var(--vw-small)) * 10);
  line-height: 1.7;
  text-align: left;
}

.worry {
  margin-top: calc((100vw / var(--vw-small)) * 64);
  padding: calc((100vw / var(--vw-small)) * 56) 0;
  position: relative;
}

.worry::before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc((100vw / var(--vw-small)) * 1900);
  background-color: #e0ebf1;
  height: 100%;
  border-radius: 50%;
}

.worry::after {
  position: absolute;
  display: block;
  content: '';
  bottom: calc((100vw / var(--vw-small)) * -40);
  left: 50%;
  transform: translateX(-50%);
  width: calc((100vw / var(--vw-small)) * 137);
  height: calc((100vw / var(--vw-small)) * 55);
  background: url(../images/arrow.png) center/cover no-repeat;
}

.worry-question--strong {
  font-size: calc((100vw / var(--vw-small)) * 24);
  font-weight: 600;
  margin-top: calc((100vw / var(--vw-small)) * 64);
  position: relative;
}

.worry-question {
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  margin-top: calc((100vw / var(--vw-small)) * 14);
  position: relative;
  line-height: 1.5;
}

.worry-items {
  list-style: none;
  margin-top: calc((100vw / var(--vw-small)) * 124);
  display: flex;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 188);
}

.worry-item {
  position: relative;
}

.worry-item::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: calc((100vw / var(--vw-small)) * 253);
  height: calc((100vw / var(--vw-small)) * 253);
  background: url(../images/worry_bg.png) center/cover no-repeat;
}

.worry-item-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 600;
  position: relative;
  line-height: 1.5;
}

.worry-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 600;
  margin-top: calc((100vw / var(--vw-small)) * 116);
  position: relative;
  line-height: 1.7;
}

.worry-text--strong {
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  margin-top: calc((100vw / var(--vw-small)) * 34);
  position: relative;
}

.resolve {
  margin-top: calc((100vw / var(--vw-small)) * 72);
  padding-bottom: calc((100vw / var(--vw-small)) * 190);
}

.resolve-title {
  font-size: calc((100vw / var(--vw-small)) * 26);
  font-weight: 600;
  line-height: 1.5;
  color: #ea6f17;
  position: relative;
}

.resolve-title::before {
  content: '';
  display: block;
  position: absolute;
  bottom: calc((100vw / var(--vw-small)) * 9);
  left: calc((100vw / var(--vw-small)) * 15);
  width: calc((100vw / var(--vw-small)) * 31);
  height: calc((100vw / var(--vw-small)) * 31);
  background: url(../images/shine03.png) center/cover no-repeat;
}

.resolve-title::after {
  content: '';
  display: block;
  position: absolute;
  top: calc((100vw / var(--vw-small)) * -32);
  right: calc((100vw / var(--vw-small)) * 5);
  width: calc((100vw / var(--vw-small)) * 48);
  height: calc((100vw / var(--vw-small)) * 55);
  background: url(../images/shine04.png) center/cover no-repeat;
}

.resolve-texts {
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 24) 0;
  margin-top: calc((100vw / var(--vw-small)) * 40);
}

.resolve-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 500;
}

.resolve-appeal {
  margin-top: calc((100vw / var(--vw-small)) * 48);
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  line-height: 1.6;
  text-decoration: underline;
  text-decoration-color: #f8d285;
  text-decoration-thickness: calc((100vw / var(--vw-small)) * 10);
  text-underline-offset: calc((100vw / var(--vw-small)) * -4);
  position: relative;
}

.resolve-appeal::before {
  content: '';
  display: block;
  position: absolute;
  left: 12%;
  bottom: calc((100vw / var(--vw-small)) * -190);
  width: calc((100vw / var(--vw-small)) * 135);
  height: calc((100vw / var(--vw-small)) * 167);
  background: url(../images/man.png) center/cover no-repeat;
}

.resolve-appeal::after {
  content: '';
  display: block;
  position: absolute;
  right: 14%;
  bottom: calc((100vw / var(--vw-small)) * -190);
  width: calc((100vw / var(--vw-small)) * 106);
  height: calc((100vw / var(--vw-small)) * 161);
  background: url(../images/woman.png) center/cover no-repeat;
}

.safe {
  margin-top: calc((100vw / var(--vw-small)) * 56);
  padding-bottom: calc((100vw / var(--vw-small)) * 60);
}

.safe-examples {
  list-style: none;
  margin-top: calc((100vw / var(--vw-small)) * 70);
  display: flex;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 64) 0;
}

.safe-example {
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 20) 0;
  text-align: left;
}

.safe-example-title {
  font-size: calc((100vw / var(--vw-small)) * 18);
  color: #959595;
  font-weight: 600;
}

.safe-example-contents {
  display: flex;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 20) 0;
}

.safe-example-summary {
  background-color: #ffffff;
  padding: calc((100vw / var(--vw-small)) * 32) calc((100vw / var(--vw-small)) * 16);
  border-radius: calc((100vw / var(--vw-small)) * 16) calc((100vw / var(--vw-small)) * 16) 0 0;
  font-weight: 500;
  font-size: calc((100vw / var(--vw-small)) * 16);
}

.safe-example-summary--strong {
  font-weight: 600;
  font-size: calc((100vw / var(--vw-small)) * 18);
  margin-top: calc((100vw / var(--vw-small)) * 12);
  display: block;
}

.safe-example-detail {
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 24) 0;
  padding: calc((100vw / var(--vw-small)) * 32) calc((100vw / var(--vw-small)) * 16);
  border-radius: 0 0 calc((100vw / var(--vw-small)) * 16) calc((100vw / var(--vw-small)) * 16);
  background-color: #f89044;
}

.safe-example-detail-lists {
  list-style: none;
}

.safe-example-detail-list {
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  color: #ffffff;
}

.safe-example-text {
  font-size: calc((100vw / var(--vw-small)) * 20);
  font-weight: 600;
  color: #ffffff;
}

.safe-example-figure {
  width: calc((100vw / var(--vw-small)) * 101);
  aspect-ratio: 1;
}

.safe-example-image {
  width: 100%;
  height: auto;
}

.explain {
  padding: calc((100vw / var(--vw-small)) * 60) 0 calc((100vw / var(--vw-small)) * 40);
  position: relative;
}

.explain::before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: calc((100vw / var(--vw-small))* -20);
  width: 100vw;
  background-color: #ffffff;
  height: 100%;
}

.explain-contents {
  margin-top: calc((100vw / var(--vw-small)) * 72);
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 64) 0;
  position: relative;
}

.explain-content {
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 24) 0;
}

.explain-title {
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  line-height: 1.5;
}

.explain-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 500;
}

.explain-url {
  display: block;
  word-break: break-all;
  color: #959595;
  width: 66%;
  text-align: justify;
  font-size: calc((100vw / var(--vw-small)) * 10);
}

.explain-url-link {
  color: #959595;
  text-decoration: none;
}

.explain-cases {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 12) 0;
}

.explain-case {
  padding: calc((100vw / var(--vw-small)) * 16) calc((100vw / var(--vw-small)) * 20);
  background-color: #2a9ace;
  border-radius: calc((100vw / var(--vw-small)) * 12);
  color: #ffffff;
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
}

.explain-appeal {
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
  line-height: 1.6;
  text-decoration: underline;
  text-decoration-color: #f8d285;
  text-decoration-thickness: calc((100vw / var(--vw-small)) * 14);
  text-underline-offset: calc((100vw / var(--vw-small)) * -4);
}

.nocase {
  background-color: #20759d;
}

.bottom-cta-text {
  display: none;
}

.howto {
  margin-top: calc((100vw / var(--vw-small)) * 48);
  padding-bottom: calc((100vw / var(--vw-small)) * 64);
}

.howto-reserve {
  margin-top: calc((100vw / var(--vw-small)) * 96);
}

.howto-apply {
  margin-top: calc((100vw / var(--vw-small)) * 40);
}

.howto-subtitle {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 600;
  text-align: left;
}

.howto-subtitle.reserve {
  color: #f89044;
}

.howto-subtitle.apply {
  color: #17a1e1;
}

.howto-lists {
  list-style: none;
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 12) 0;
  margin-top: calc((100vw / var(--vw-small)) * 20);
}

.howto-list {
  border-radius: calc((100vw / var(--vw-small)) * 12);
  background-color: #ffffff;
  position: relative;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: calc((100vw / var(--vw-small)) * 20) 0;
  padding: calc((100vw / var(--vw-small)) * 20) calc((100vw / var(--vw-small)) * 16) calc((100vw / var(--vw-small)) * 20) calc((100vw / var(--vw-small)) * 32);
}

.howto-list::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: calc((100vw / var(--vw-small)) * 10);
  height: 100%;
  border-radius: calc((100vw / var(--vw-small)) * 12) 0 0 calc((100vw / var(--vw-small)) * 12);
}

.howto-list.reserve::before {
  background-color: #f89044;
}

.howto-list.apply::before {
  background-color: #17a1e1;
}

.howto-list-texts {
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 12) 0;
}

.howto-list-title {
  font-size: calc((100vw / var(--vw-small)) * 18);
  font-weight: 600;
}

.howto-list-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 500;
  line-height: 1.7;
}

.howto-list-number {
  color: #959595;
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-family: 'Inter', sans-serif;
}

.howto-list-number--large {
  font-size: calc((100vw / var(--vw-small)) * 26);
}

.insurance {
  position: relative;
  padding: calc((100vw / var(--vw-small)) * 48) 0;
}

.insurance::before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: calc((100vw / var(--vw-small)) * -20);
  width: 100vw;
  background-color: #0e3b8c;
  height: 100%;
}

.common-title.request {
  color: #ffffff;
}

.common-title.request::before {
  background-color: #ffffff;
  border: calc((100vw / var(--vw-small))* 3) solid #ffffff;
}

.insurance-text {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 500;
  line-height: 1.6;
  color: #ffffff;
  position: relative;
  margin-top: calc((100vw / var(--vw-small)) * 72);
}

.insurance-text:last-of-type {
  margin-top: calc((100vw / var(--vw-small)) * 28);
}

.insurance-button {
  position: relative;
  z-index: 2;
  margin-top: calc((100vw / var(--vw-small)) * 24);
}

.cta-button-link.transition {
  background-color: #f89044;
  border: 2px solid #f89044;
  color: #ffffff;
}

.cta-button-link.transition::before {
  background-color: #cc6d28;
}

.faq {
  position: relative;
  padding: calc((100vw / var(--vw-small)) * 48) 0 calc((100vw / var(--vw-small)) * 68);
}

.faq::before {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: calc((100vw / var(--vw-small)) * -20);
  width: 100vw;
  background-color: #ffffff;
  height: 100%;
}

.faq-items {
  margin-top: calc((100vw / var(--vw-small)) * 72);
  display: grid;
  gap: calc((100vw / var(--vw-small)) * 20) 0;
  position: relative;
}

.faq-item {
  padding: calc((100vw / var(--vw-small)) * 24) calc((100vw / var(--vw-small)) * 16) 0;
  background-color: #c6e5f3;
  text-align: left;
  border-radius: calc((100vw / var(--vw-small)) * 12);
}

summary::-webkit-details-marker {
  display: none;
}

.faq-question {
  font-size: calc((100vw / var(--vw-small)) * 16);
  font-weight: 600;
  cursor: pointer;
  position: relative;
  list-style: none;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  padding-right: calc((100vw / var(--vw-small)) * 70);
  padding-bottom: calc((100vw / var(--vw-small)) * 24);
}

.faq-question::before {
  content: '+';
  position: absolute;
  right: calc((100vw / var(--vw-small)) * 10);
  top: 50%;
  transform: translateY(calc(-50% - calc((100vw / var(--vw-small)) * 12)));
  font-size: calc((100vw / var(--vw-small)) * 24);
  color: #268dbb;
  font-weight: 400;
}

.faq-question::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(calc(-50% - calc((100vw / var(--vw-small)) * 12)));
  border: 2px solid #268dbb;
  border-radius: 50%;
  width: calc((100vw / var(--vw-small)) * 32);
  aspect-ratio: 1;
}

details[open] .faq-question::before {
  content: 'ー';
  font-size: calc((100vw / var(--vw-small)) * 16);
  transform: translateY(calc(-50% - calc((100vw / var(--vw-small)) * 10)));;
}

.faq-answer {
  border-top: 1px solid #ffffff;
  padding: calc((100vw / var(--vw-small)) * 20) 0;
}

.faq-answer-text {
  line-height: 1.7;
  font-size: calc((100vw / var(--vw-small)) * 16);
}

.faq-answer-list {
  list-style: none;
}

.faq-answer-list-item {
  line-height: 1.7;
  font-size: calc((100vw / var(--vw-small)) * 16);
}

.pc-break {
  display: none;
}

.sp-break {
  display: block;
}

.text--thin {
  font-weight: 400;
}

.text-bold {
  font-weight: 600;
}

.text-left {
  text-align: left;
}

.footer-link {
  background-color: #eeeeee;
}

@media screen and (min-width: 780px) {
  #header {
    background-color: #f6f6f6;
  }
  #header-area {
    background-color: #f6f6f6;
    max-width: 970px;
    box-sizing: border-box;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #header-area li {
    width: 25%;
  }
  #header-area li:last-of-type {
    width: 59%;
  }
  #header-area li img {
    width: 100%;
    height: auto;
  }
  .sp-none {
    display: block;
  }
  .pc-none {
    display: none;
  }
  .container {
    padding: 0 40px;
    max-width: 1283px;
    margin-inline: auto;
  }

  .common-title {
    font-size: 40px;
  }
  
  .common-title::before {
    bottom: -24px;
    width: 124px;
    height: 2px;
    border: 3px solid #2a9ace;
  }

  .main-visual {
    margin-inline: auto;
  }

  .main-visual-figure {
    height: 412px;
  }
  .main-visual-text {
    font-size: 54px;
  }
  .cta {
    padding: 44px 0;
  }

  .cta::before {
    width: 100%;
    left: 0;
  }
  .cta-buttons {
    flex-direction: row;
    justify-content: center;
    gap: 0 40px;
  }
  .cta-button-link {
    padding: 13px 0;
    font-size: 30px;
    width: min(40vw,362px);
    border-radius: 8px;
  }
  .cta-button-link::before {
    border-radius: 8px;
    top: 5px;
  }
  .info {
    padding: 0;
    margin-top: 64px;
  }
  
  .info::before {
    width: 100%;
    left: 0;
    z-index: 0;
    top: 44px;
    border-radius: 16px;
  }

  .info::after {
    bottom: -85px;
    width: 137px;
    height: 55px;
  }
  
  .info-text {
    max-inline-size: max-content;
    font-size: 24px;
    border-radius: 12px;
    padding: 22px 28px;
    max-width: 1000px;
    margin-inline: auto;
    box-sizing: border-box;
    width: 90%;
  }
  
  .info-minds {
    gap: 214px 104px;
    flex-direction: row;
    margin-top: 40px;
    max-width: 1000px;
    margin-inline: auto;
    padding-left: 0;
    width: 90%;
  }
  
  .info-mind {
    border-radius: 16px;
    padding: 36px 20px;
    font-size: 16px;
    width: 244px;
    box-sizing: border-box;
    max-inline-size: none;
  }
  
  .info-mind::before {
    content: '';
    display: block;
    position: absolute;
    top: 88px;
    right: -74px;
  }
  
  .info-mind:first-child:before {
    width: 184px;
    height: 229px;
    top: 103px;
    right: -72px;
    background: url(../images/human01.png) center/cover no-repeat;
  }
  
  .info-mind:nth-child(2):before {
    width: 179px;
    height: 227px;
    top: 105px;
    right: -78px;
    background: url(../images/human02.png) center/cover no-repeat;
  }
  
  .info-mind:last-child:before {
    width: 158px;
    height: 224px;
    top: 102px;
    right: -67px;
    background: url(../images/human03.png) center/cover no-repeat;
  }
  
  .info-question {
    margin-top: 214px;
    font-size: 24px;
    text-decoration-thickness: 10px;
    text-underline-offset: -4px;
    width: 78%;
    margin-inline: auto;
  }
  .about {
    padding: 124px 0 0;
  }
  
  .about-appeal {
    font-size: 32px;
    max-width: 80%;
  }

  .about-appeal::before {
    bottom: -12px;
    left: -42px;
    width: 5px;
    height: 102px;
    transform: rotate(-35deg);
  }

  .about-appeal::after {
    bottom: -12px;
    right: -42px;
    width: 5px;
    height: 102px;
  }
  
  .about-appeal--small {
    font-size: 20px;
  }
  
  .about-items {
    flex-direction: row;
    justify-content: center;
    gap: 0 40px;
    margin-top: 54px;
  }
  
  .about-item {
    border-radius: 16px;
    padding: 20px 65px;
  }

  .about-item:first-child {
    display: flex;
    align-items: center;
  }

  .about-item:first-child::before {
    left: -28px;
    top: auto;
    bottom: -22px;
    width: 71px;
    height: 81px;
  }
  
  .about-item:last-child::before {
    top: -32px;
    right: -18px;
    bottom:auto;
    width: 71px;
    height: 81px;
  }

  .about-item-text {
    font-size: 24px;
  }
  
  .about-item-text--small {
    font-size: 16px;
    margin-bottom: 12px;
  }
  
  .about-item-text--thin {
    font-weight: 400;
  }
  
  .about-text {
    margin-top: 44px;
    font-size: 32px;
  }
  
  .about-cautions {
    margin-top: 10px;
    width: 69%;
    margin-inline: auto;
  }
  
  .about-caution {
    font-size: 14px;
  }

  .worry {
    margin-top: 84px;
    padding: 90px 0;
  }

  .worry::before {
    width: 100%;
  }

  .worry::after {
    bottom: -28px;
    width: 137px;
    height: 55px;
  }

  .worry-question--strong {
    font-size: 40px;
    margin-top: 100px;
  }
  
  .worry-question {
    font-size: 24px;
    margin-top: 14px;
  }
  
  .worry-items {
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 148px;
    gap: 220px 152px;
  }
  
  .worry-item::before {
    width: 337px;
    height: 337px;
  }
  
  .worry-item-text {
    font-size: 24px;
  }
  
  .worry-text {
    font-size: 20px;
    margin-top: 134px;
  }
  
  .worry-text--strong {
    font-size: 24px;
    margin-top: 20px;
  }

  .resolve {
    margin-top: 56px;
    padding-bottom: 0;
  }
  
  .resolve-title {
    font-size: 40px;
    max-inline-size: max-content;
    margin-inline: auto;
  }
  
  .resolve-title::before {
    bottom: -10px;
    left: -52px;
    width: 41px;
    height: 42px;
  }
  
  .resolve-title::after {
    width: 71px;
    height: 81px;
    top: -32px;
    right: -64px;
  }
  
  .resolve-texts {
    gap: 36px 0;
    margin-top: 16px;
  }
  
  .resolve-text {
    font-size: 20px;
    line-height: 1.7;
  }
  
  .resolve-appeal {
    margin-top: 46px;
    font-size: 30px;
    text-decoration-thickness: 14px;
    text-underline-offset: -4px;
    width: 48%;
    min-width: 390px;
    margin-inline: auto;
  }
  
  .resolve-appeal::before {
    left: -186px;
    bottom: -17px;
    width: 155px;
    height: 191px;
  }
  
  .resolve-appeal::after {
    right: -184px;
    bottom: -20px;
    width: 127px;
    height: 192px;
  }

  .safe {
    margin-top: 196px;
    padding-bottom: 130px;
  }
  
  .safe-examples {
    margin-top: 84px;
    gap: 56px 0;
    padding: 0 38px;
  }
  
  .safe-example {
    gap: 40px 0;
  }
  
  .safe-example-title {
    font-size: 24px;
  }
  
  .safe-example-contents {
    flex-direction: row-reverse;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 0 30px;
  }

  .safe-example:nth-child(2n) .safe-example-contents {
    flex-direction: row;
  }

  .safe-example-definition {
    width: calc(100% - 146px);
  }
  
  .safe-example-summary {
    padding: 26px 54px;
    border-radius: 16px 16px 0 0;
    font-size: 20px;
  }
  
  .safe-example-summary--strong {
    font-size: 24px;
    margin-top: 12px;
  }
  
  .safe-example-detail {
    gap: 10px 0;
    padding: 32px 48px;
    border-radius: 0 0 16px 16px;
  }

  .safe-example-detail-lists {
    display: flex;
  }
  
  .safe-example-detail-list {
    font-size: 24px;
  }
  
  .safe-example-text {
    font-size: 32px;
  }
  
  .safe-example-figure {
    width: 146px;
  }

  .explain {
    padding: 86px 0;
  }
  
  .explain::before {
    left: auto;
    margin-inline: calc(50% - 50vw);
  }
  
  .explain-contents {
    margin-top: 74px;
    gap: 64px 0;
  }
  
  .explain-content {
    gap: 18px 0;
  }
  
  .explain-title {
    font-size: 24px;
  }
  
  .explain-text {
    font-size: 16px;
    width: 83%;
    margin-inline: auto;
    line-height: 1.5;
  }
  
  .explain-url {
    width: 83%;
    margin-inline: auto;
    text-align: left;
    font-size: 14px;
  }
  
  .explain-cases {
    flex-direction: row;
    gap: 20px;
    justify-content: center;
  }
  
  .explain-case {
    padding: 28px 20px;
    border-radius: 12px;
    font-size: 18px;
    min-width: 280px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 100px;
  }
  
  .explain-appeal {
    font-size: 24px;
    text-decoration-thickness: 14px;
    text-underline-offset: -4px;
  }

  .bottom-cta {
    padding: 72px 0;
  }

  .bottom-cta-text {
    position: relative;
    display: block;
    font-size: 48px;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 42px;
  }

  .howto {
    margin-top: 78px;
    padding-bottom: 80px;
  }
  
  .howto-reserve {
    margin-top: 72px;
  }
  
  .howto-apply {
    margin-top: 40px;
  }
  
  .howto-subtitle {
    font-size: 28px;
  }
  
  .howto-lists {
    gap: 20px 0;
    margin-top: 32px;
  }
  
  .howto-list {
    border-radius: 12px;
    flex-direction: row;
    gap: 0 28px;
    padding: 40px 40px 40px 52px;
    align-items: center;
  }

  .howto-list.reserve {
    padding-left: 68px;
  }
  
  .howto-list::before {
    width: 16px;
    border-radius: 12px 0 0 12px;
  }

  .howto-list-texts {
    gap: 16px 0;
  }
  
  .howto-list-title {
    font-size: 20px;
  }
  
  .howto-list-text {
    font-size: 16px;
  }
  
  .howto-list-number {
    font-size: 28px;
  }
  
  .howto-list-number--large {
    font-size: 42px;
  }

  .insurance {
    padding: 48px 0;
  }

  .insurance::before {
    width: 100%;
    left: 0;
  }
  
  .common-title.request::before {
    border: 3px solid #ffffff;
  }
  
  .insurance-text {
    font-size: 16px;
    margin-top: 72px;
  }
  
  .insurance-text:last-of-type {
    margin-top: 16px;
  }
  
  .insurance-button {
    margin-top: 28px;
    max-inline-size: max-content;
    margin-inline: auto;
  }

  .faq {
    padding: 120px 0;
  }
  
  .faq::before {
    left: auto;
    margin-inline: calc(50% - 50vw);
  }
  
  .faq-items {
    margin-top: 90px;
    gap: 20px 0;
  }
  
  .faq-item {
    padding: 24px 40px 0;
    border-radius: 12px;
  }
  
  .faq-question {
    font-size: 20px;
    padding-right: 80px;
    padding-bottom: 24px;
  }
  
  .faq-question::before {
    right: 8px;
    transform: translateY(calc(-50% - 12px));
    font-size: 30px;
  }
  
  .faq-question::after {
    transform: translateY(calc(-50% - 12px));
    width: 32px;
  }
  
  details[open] .faq-question::before {
    font-size: 20px;
    transform: translateY(calc(-50% - 10px));;
  }
  
  .faq-answer {
    padding: 20px 0;
  }

  .faq-answer-text {
    font-size: 20px;
  }

  .faq-answer-list-item {
    font-size: 20px;
  }
  
  .pc-break {
    display: block;
  }
  .sp-break {
    display: none;
  }
  #footer .sns span {
    font-size: 14px;
  }
  #footer-text-h2 {
    width: 100%;
  }
}
