:root {
  --index_font_20: max(20px, 1.33vw);
  --index_font_21: max(21px, 1.54vw);
  --index_font_25: max(25px, 1.67vw);
  --index_font_55: max(55px, 4.03vw);
  --index_font_15: max(15px, 1.10vw);
  --index_margin_50: max(50px, 3.66vw);
  --index_font_65: max(65px, 4.76vw);
  --index_margin_70: max(70px, 4.67vw);
  --index_margin_120: max(120px, 8vw);
  --index_font_17: max(17px, 1.24vw);
  --index_font_27: max(27px, 1.98vw);
  --index_margin_40: max(40px, 2.93vw);
  --index_margin_160: max(160px, 11.71vw);
  --button_area_17: max(17px, 1.24vw);
  --button_area_10: max(10px, 0.67vw);
  --button_area_65: max(65px, 4.76vw);
}
@media screen and (max-width: 770px) {
  :root {
    --index_font_20: max(15px, 4vw);
    --index_font_21: max(13px, 3.47vw);
    --index_font_25: max(20px, 5.33vw);
    --index_font_55: max(29px, 7.73vw);
    --index_font_15: max(13px, 3.47vw);
    --index_margin_50: max(40px, 10.68vw);
    --index_font_65: max(55px, 14.67vw);
    --index_margin_70: max(40px, 10.67vw);
    --index_font_17: max(17px, 3.73vw);
    --index_margin_120: max(60px, 16vw);
    --index_font_27: max(20px, 5.33vw);
    --index_margin_40: max(40px, 10.67vw);
    --index_margin_120: max(60px, 16vw);
    --index_margin_160: max(80px, 21.33vw);
    --button_area_17: max(14px, 3.73vw);
    --button_area_10: max(7px, 1.87vw);
    --button_area_65: max(55px, 14.67vw);
  }
}

main {
  position: relative;
  z-index: 0;
}
main img,
main picture {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
main section {
  width: 100%;
  height: auto;
}
main .container {
  width: 93%;
  max-width: max(1100px, 73.33vw);
  margin: 0 auto;
}
main .topArea {
  width: 100%;
  margin-bottom: var(--index_margin_120);
}
@media screen and (max-width: 770px) {
  main .topArea {
    margin-bottom: var(--index_margin_70);
  }
}
main .topArea .img {
  height: auto;
  position: relative;
  margin: 0 auto;
  margin-right: 0;
}
main .topArea .container {
  margin-top: -130px;
}
@media screen and (max-width: 770px) {
  main .topArea .container {
    justify-content: start;
    margin-top: 0;
  }
}
main .topArea .textAreaPhi.reverseText {
  display: flex;
  justify-content: end;
}
@media screen and (max-width: 770px) {
  main .topArea .textAreaPhi.reverseText {
    justify-content: start;
  }
}
main .topArea .textAreaPhi h3 span {
  display: block;
  font-size: var(--index_font_25);
  line-height: 1.75;
}
main .topArea .textAreaPhi h3 span.en {
  font-size: var(--index_font_20);
  line-height: 1;
  margin-bottom: 6px;
}
main .topArea.left .img {
  margin-left: 0;
}
main .bottomArea h4 {
  font-size: var(--index_font_20);
  margin-bottom: var(--list_margin);
  line-height: 1.77;
}
main .bottomArea p {
  font-size: var(--base_font);
}
@media screen and (max-width: 770px) {
  main .bottomArea p {
    margin-bottom: var(--title_margin);
  }
}
main .spborder {
  display: flex;
  align-items: center;
  justify-content: center;
}
main .spborder span {
  width: 2px;
  height: 10vh;
  background-color: #1C1C1C;
  margin-top: var(--index_margin_120);
}
main .firstView {
  width: 100%;
  height: 85dvh;
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 0;
}
@media screen and (max-width: 770px) {
  main .firstView {
    height: auto;
    flex-direction: column;
    padding-top: var(--section_margin);
    margin-bottom: var(--index_margin_120);
  }
}
main .firstView .title {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
main .firstView h1 {
  font-size: var(--index_font_55);
}
main .firstView p {
  font-size: var(--index_font_21);
}
main .firstSectionArea {
  margin-bottom: var(--section_margin);
}
main .firstSectionArea .topArea .img {
  width: 54.25vw;
}
main .secondArea {
  margin-bottom: var(--section_margin);
}
main .secondArea .topArea .img {
  width: 54.25vw;
}
main .thirdArea {
  margin-bottom: var(--section_margin);
}
main .thirdArea .topArea .img {
  width: 45.28vw;
}
main .lastPart {
  margin-bottom: var(--section_margin);
}
main .lastPart .contentArea h3 {
  margin-bottom: var(--list_margin);
}
main .lastPart .contentArea h3 span {
  display: block;
  font-size: var(--index_font_25);
  line-height: 1.75;
}
main .lastPart .contentArea h3 span.en {
  font-size: var(--index_font_20);
  line-height: 1;
  margin-bottom: 6px;
}
main .lastPart img {
  width: 100%;
  height: auto;
  margin-bottom: var(--list_margin);
}
main .buttonArea {
  margin-bottom: var(--section_margin);
}
main .buttonArea .arrowLinkArea {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  line-height: 1;
}
main .buttonArea .arrowLinkArea .arrowLink {
  width: fit-content;
  display: flex;
  align-items: center;
  text-decoration: none;
  margin: 0;
  margin-bottom: var(--list_margin);
}
main .buttonArea .arrowLinkArea .arrowLink img {
  width: var(--button_area_65);
  object-fit: contain;
  transition: opacity 0.35s ease;
  margin-left: var(--base_font);
  margin-bottom: 10px;
}
main .buttonArea .arrowLinkArea .arrowLink:hover span {
  color: #B0B2AF;
}
main .buttonArea .arrowLinkArea .arrowLink:hover img {
  opacity: 0.6;
}
main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea {
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
}
main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea p {
  font-size: var(--button_area_17);
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea p:first-child::after {
  content: "";
  display: block;
  width: 2px;
  height: var(--button_area_17);
  background-color: #000000;
  margin: 0 var(--small_font);
  transition: background-color 0.35s ease;
}
main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea:hover p {
  color: #B0B2AF;
}
main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea:hover p:first-child:after {
  background: #B0B2AF;
}
@media screen and (max-width: 770px) {
  main .buttonArea .arrowLinkArea .arrowLink {
    align-items: end;
  }
  main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea {
    flex-direction: column;
    align-items: end;
  }
  main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea p:first-child::after {
    content: unset;
  }
  main .buttonArea .arrowLinkArea .arrowLink .buttonTitleArea p:first-child {
    margin-bottom: var(--button_area_10);
  }
}/*# sourceMappingURL=index.css.map */