@charset "UTF-8";

:root {
  --color-main: #2e4393;
  --color-white: #fff;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%; /* iPhone¤ÎSafari¤Ç×Ô„ÓÕ{Õû¤òŸo„¿¤Ë¤¹¤ë */
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  color: var(--color-main);
}

img {
  width: 100%;
  vertical-align: top;
}

ul,
li {
  list-style: none;
}


/* layout */
.l-main {
  position: relative;
}

.l-color {
  position: relative;
  background-color: var(--color-main);
  z-index: 10;
}

.l-container {
  position: relative;
  width: calc(1280vw / 1440 * 100);
  margin: auto;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .l-container {
    width: 100%;
  }
}


/* common */
.c-title {
  width: auto;
  height: calc(86vw / 1440 * 100);
  text-align: center;
  margin-top: calc(88vw / 1440 * 100);
}

.c-title img {
  width: auto;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .c-title {
    width: auto;
    height: calc(40vw / 375 * 100);
    margin-top: calc(32vw / 375 * 100);
  }
}

.c-text {
  margin-top: calc(50vw / 1440 * 100);
  font-size: calc(20vw / 1440 * 100);
  line-height: 1.4;
  text-align: center;
}

.c-text-left {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-top: calc(50vw / 1440 * 100);
  font-size: calc(20vw / 1440 * 100);
  line-height: 1.4;
  text-align: left;
}

.c-text_small {
  display: block;
  font-size: calc(16vw / 1440 * 100);
  line-height: 1.4;
  text-align: center;
}

.c-text-left_small {
  font-size: calc(16vw / 1440 * 100);
  line-height: 1.4;
}

.c-text-left_strong {
  font-weight: 900;
}

.c-text_todl{
  color: #f05e5e;
  margin-top: 0.75em;
  margin-left: calc(85vw / 1440 * 100);
  font-size: calc(16vw / 1440 * 100);
  line-height: 1.4;
  text-align: left;
}
.c-text_todl_link{
  color: #f05e5e;
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .c-text {
    margin-top: calc(20vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
  }

  .c-text-left {
    margin-top: calc(20vw / 375 * 100);
    margin-left: calc(15vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
  }

  .c-text_small {
    font-size: calc(12vw / 375 * 100);
  }

  .c-text-left_small {
    font-size: calc(12vw / 375 * 100);
  }

  .c-text-left_strong {
    font-weight: 900;
  }

  .c-text_todl {
  margin-left: calc(15vw / 375 * 100);
  font-size: calc(10vw / 375 * 100);
  }
}

.c-band {
  width: 100%;
  background-color: var(--color-main);
  text-align: center;
  margin-bottom: calc(30vw / 1440 * 100);
  padding: calc(12vw / 1440 * 100) 0 calc(14vw / 1440 * 100);
}

.c-band img {
  width: calc(1189vw / 1440 * 100);
}

@media screen and (max-width: 768px) {
  .c-band {
    width: 100%;
    background-color: var(--color-main);
    text-align: center;
    margin-bottom: calc(30vw / 375 * 100);
    padding: calc(5vw / 375 * 100) 0 calc(5vw / 375 * 100);
  }

  .c-band img {
    width: calc(350vw / 375 * 100);
  }
}

.c-dia {
  width: calc(40vw / 1440 * 100);
  margin: 0 auto;
}

.c-dia-white {
  width: calc(40vw / 1440 * 100);
  margin: 0 auto;
  filter: brightness(10);
}

@media screen and (max-width: 768px) {
  .c-dia {
    width: calc(20vw / 375 * 100);
  }

  .c-dia-white {
    width: calc(20vw / 375 * 100);
  }
}

.c-bg {
  position: absolute;
  top: calc(75vw / 1440 * 100);
  right: 0;
  left: 0;
  width: calc(1360vw / 1440 * 100);
  height: calc(100% - 75vw / 1440 * 100);
  margin: auto;
  pointer-events: none;
}

.c-bg-white {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: calc(1360vw / 1440 * 100);
  height: 100%;
  margin: auto;
  pointer-events: none;
  filter: brightness(50);
}

.c-bg_side-left {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(54vw / 1440 * 100);
  height: 100%;
  background-image: url(/scholarship_selection/assets/img/side_text.png);
  background-size: 100% auto;
  background-position: top center;
}

.c-bg_side-right {
  position: absolute;
  top: 0;
  right: 0;
  width: calc(54vw / 1440 * 100);
  height: 100%;
  background-image: url(/scholarship_selection/assets/img/side_text.png);
  background-size: 100% auto;
  background-position: bottom center;
  transform: rotate(180deg);
}

.c-float {
  position: fixed;
  bottom: 10vh;
  left: 0;
  z-index: 50;
}

.c-float_link01 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: calc(20vw / 1440 * 100);
  letter-spacing: .02em;
  width: calc(60vw / 1440 * 100);
  height: calc(200vw / 1440 * 100);
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: var(--color-white);
  background-color: var(--color-main);
  text-decoration: none;
  transition: padding .2s;
}

.c-float_link01:hover {
  padding-left: calc(5vw / 1440 * 100);
}

.c-float_link02 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: calc(20vw / 1440 * 100);
  width: calc(60vw / 1440 * 100);
  height: calc(205vw / 1440 * 100);
  margin-top: 3px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: var(--color-white);
  background-color: #c7a063;
  text-decoration: none;
  transition: padding .2s;
}

.c-float_link02:hover {
  padding-left: calc(5vw / 1440 * 100);
}

@media screen and (max-width: 768px) {
  .c-float {
    position: fixed;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
  }

  .c-float_link01 {
    font-size: calc(18vw / 375 * 100);
    letter-spacing: .02em;
    width: 50%;
    height: calc(40vw / 375 * 100);
    -ms-writing-mode: unset;
    writing-mode: unset;
    color: var(--color-white);
    background-color: var(--color-main);
    text-decoration: none;
    transition: padding .2s;
  }

  .c-float_link01:hover {
    padding-left: calc(5vw / 375 * 100);
  }

  .c-float_link02 {
    font-size: calc(18vw / 375 * 100);
    width: 50%;
    height: calc(40vw / 375 * 100);
    margin-top: 0;
    -ms-writing-mode: unset;
    writing-mode: unset;
    color: var(--color-white);
    background-color: #c7a063;
    text-decoration: none;
    transition: padding .2s;
  }

  .c-float_link02:hover {
    padding-left: unset;
  }
}

/* kv */
.p-kv {
  position: relative;
  padding: calc(24vw / 1440 * 100) 0 calc(24vw / 1440 * 100);
}

.p-kv_main {
  width: calc(1360vw / 1440 * 100);
  margin: auto;
}

.p-kv_bg {
  position: absolute;
  top: calc(110vw / 1440 * 100);
  right: 0;
  left: 0;
  width: calc(1360vw / 1440 * 100);
  height: calc(857vw / 1440 * 100);
  margin: auto;
}

.p-kv_bg_side-left {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(54vw / 1440 * 100);
  height: 100%;
  background-image: url(/scholarship_selection/assets/img/side_text.png);
  background-size: auto 100%;
  background-position: top center;
  background-repeat: no-repeat;
}

.p-kv_bg_side-right {
  position: absolute;
  top: 0;
  right: 0;
  width: calc(54vw / 1440 * 100);
  height: 100%;
  background-image: url(/scholarship_selection/assets/img/side_text.png);
  background-size: auto 100%;
  background-position: top center;
  background-repeat: no-repeat;
  transform: rotate(180deg);
}

@media screen and (max-width: 768px) {
  .p-kv {
    padding: calc(24vw / 375 * 100) 0 calc(24vw / 375 * 100);
  }

  .p-kv_main {
    width: calc(315vw / 375 * 100);
    margin: auto;
  }

  .p-kv_bg {
    top: calc(20vw / 375 * 100);
    top: calc(65vw / 375 * 100);
    width: calc(365vw / 375 * 100);
    height: calc(580vw / 375 * 100);
    margin: auto;
  }

  .p-kv_bg_side-left {
    width: calc(54vw / 1440 * 100);
    background-image: url(/scholarship_selection/assets/img/side_text.png);
    background-size: 100% auto;
    background-repeat: repeat;
  }

  .p-kv_bg_side-right {
    width: calc(54vw / 1440 * 100);
    height: 100%;
    background-image: url(/scholarship_selection/assets/img/side_text.png);
    background-size: 100% auto;
    background-repeat: repeat;
  }
}


/* index */
.p-index {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  margin: calc(70vw / 1440 * 100) auto calc(64vw / 1440 * 100);
}

.p-index_link {
  width: calc(300vw / 1440 * 100);
  transition: transform .3s;
}

.p-index_link:hover {
  transform: translateY(2%);
}

@media screen and (max-width: 768px) {
  .p-index {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    margin: calc(40vw / 375 * 100) auto calc(32vw / 375 * 100);
  }

  .p-index_link {
    width: calc(300vw / 375 * 100);
  }

  .p-index_link:not(:first-child) {
    margin-top: calc(40vw / 375 * 100);
  }
}

/* point */
.p-point {
  position: relative;
}

.p-point_box {
  position: relative;
  margin: calc(15vw / 1440 * 100) auto calc(15vw / 1440 * 100);
  padding: calc(5vw / 1440 * 100);
  border: calc(6vw / 1440 * 100) solid var(--color-main);
  box-sizing: border-box;
  border-radius: calc(10vw / 1440 * 100);
  background-color: var(--color-white);
}

.p-point_box:first-child {
  margin-top: calc(56vw / 1440 * 100);
}

.p-point_box::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: calc(4vw / 1440 * 100);
  height: 100%;
  background-color: var(--color-main);
  z-index: 0;
}

.p-point_box_deco {
  position: absolute;
  top: calc(-20vw / 1440 * 100);
  left: calc(35vw / 1440 * 100);
  width: calc(134vw / 1440 * 100);
  z-index: 10;
}

.p-point_box_wrapper {
  position: relative;
  border: calc(3vw / 1440 * 100) solid var(--color-main);
  border-radius: calc(3vw / 1440 * 100);
  padding: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  z-index: 5;
}

.p-point_box_wrapper>.p-point_box_wrapper {
  background-color: var(--color-white);
  background-image: url(/scholarship_selection/assets/img/point_bg.png);
  background-position: top calc(15vw / 1440 * 100) right calc(15vw / 1440 * 100);
  background-repeat: no-repeat;
  background-size: calc(287vw / 1440 * 100) auto;
  padding-bottom: calc(45vw / 1440 * 100);
}

.p-point_box_head01 {
  width: auto;
  height: calc(142vw / 1440 * 100);
  margin-top: calc(46vw / 1440 * 100);
  text-align: center;
}

.p-point_box_head01 img {
  width: auto;
  height: 100%;
}

.p-point_box_head02 {
  width: auto;
  height: calc(142vw / 1440 * 100);
  margin-top: calc(46vw / 1440 * 100);
  text-align: center;
}

.p-point_box_head02 img {
  width: auto;
  height: 100%;
}

.p-point_box_head03 {
  width: auto;
  height: calc(63vw / 1440 * 100);
  margin-top: calc(46vw / 1440 * 100);
  text-align: center;
}

.p-point_box_head03 img {
  width: auto;
  height: 100%;
}

.p-point_box_head04 {
  width: auto;
  height: calc(63vw / 1440 * 100);
  margin-top: calc(46vw / 1440 * 100);
  text-align: center;
}

.p-point_box_head04 img {
  width: auto;
  height: 100%;
}

.p-point_box_image {
  width: calc(1060vw / 1440 * 100);
  margin: calc(40vw / 1440 * 100) auto 0;
}

.p-point_box_link {
  display: block;
  width: calc(240vw / 1440 * 100);
  margin: calc(30vw / 1440 * 100) calc(30vw / 1440 * 100) 0 auto;
  transition: transform .3s;
}

.p-point_box_link:hover {
  transform: translateX(2%);
}

.p-point_box_tab {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  width: calc(1080vw / 1440 * 100);
  margin: calc(40vw / 1440 * 100) auto 0;
}

.p-point_box_tab_radio {
  display: none;
}

.p-point_box_tab_group {
  display: block;
  padding: calc(5vw / 1440 * 100) calc(20vw / 1440 * 100);
  font-size: calc(20vw / 1440 * 100);
  box-sizing: border-box;
  color: var(--color-main);
  border: calc(2vw / 1440 * 100) solid var(--color-main);
  border-radius: calc(infinity * 1px);
  opacity: .5;
  transition: .2s;
  cursor: pointer;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group01"]:checked) .p-point_box_tab_group01 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group02"]:checked) .p-point_box_tab_group02 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group03"]:checked) .p-point_box_tab_group03 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group04"]:checked) .p-point_box_tab_group04 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group05"]:checked) .p-point_box_tab_group05 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group06"]:checked) .p-point_box_tab_group06 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group07"]:checked) .p-point_box_tab_group07 {
  color: var(--color-white);
  background-color: var(--color-main);
  opacity: 1;
  cursor: unset;
}

.p-point_box_table_select {
  display: none;
  opacity: 0;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group01"]:checked) .p-point_box_table_select01 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group02"]:checked) .p-point_box_table_select01 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group03"]:checked) .p-point_box_table_select01 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group04"]:checked) .p-point_box_table_select01 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group05"]:checked) .p-point_box_table_select01 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group06"]:checked) .p-point_box_table_select02 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_select_wrap:has(.p-point_box_tab_radio[id="point_box_tab_group07"]:checked) .p-point_box_table_select03 {
  display: block;
  opacity: 1;
  animation-name: point_box_table_select;
  animation-duration: .2s;
  animation-fill-mode: both;
  animation-iteration-count: 1;
}

.p-point_box_map_wrap{
  position: relative;
}

.p-point_box_map_wrap_coution{
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(960vw / 1440 * 100);
  height: calc(560vw / 1440 * 100);
  background-color: #ff0000;
  opacity: 0.925;
  z-index: 10;
}

.p-point_box_map_wrap_coution_txt{
  color: #fff;
  font-weight: 400;
  font-size: calc(42vw / 1440 * 100);
  text-align: center;
  line-height: 1.4;
}

.p-point_box_map_wrap_coution_txt span{
  text-decoration: underline calc(3vw / 1440 * 100);
  text-underline-offset: calc(10vw / 1440 * 100);

}

@keyframes point_box_table_select {
  0% {
    opacity: 0;
    transform: translateY(3%);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.p-point_box_table {
  width: calc(1056vw / 1440 * 100);
  margin: calc(50vw / 1440 * 100) auto 0;
  font-size: calc(16vw / 1440 * 100);
  line-height: 1.4;
  color: #231815;
}

.p-point_box_table_body {
  border: calc(2vw / 1440 * 100) solid #231815;
}

.p-point_box_table_heading {
  background-color: #C19B61;
  border: calc(2vw / 1440 * 100) solid #231815;
  color: var(--color-white);
  padding: calc(6vw / 1440 * 100) calc(10vw / 1440 * 100);
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
}

.p-point_box_table_heading-sub {
  background-color: #F8EEDC;
  width: calc(165vw / 1440 * 100);
  border: calc(2vw / 1440 * 100) solid #231815;
  text-align: center;
  vertical-align: middle;
}

.p-point_box_table_heading-sub_inner01 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(5vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(18vw / 1440 * 100);
  font-weight: 400;
  color: var(--color-white);
  background-color: #F7AE54;
}

.p-point_box_table_heading-sub_inner02 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(5vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(18vw / 1440 * 100);
  font-weight: 400;
  color: var(--color-white);
  background-color: #DEB972;
}

.p-point_box_table_heading-sub_inner03 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(5vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(18vw / 1440 * 100);
  font-weight: 400;
  color: var(--color-white);
  background-color: #8F81BD;
}

.p-point_box_table_heading-sub_inner04 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(5vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(18vw / 1440 * 100);
  font-weight: 400;
  color: var(--color-white);
  background-color: #F19EB4;
}

.p-point_box_table_heading-sub_inner05 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(5vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(18vw / 1440 * 100);
  font-weight: 400;
  color: var(--color-white);
  background-color: #FAC158;
}

.p-point_box_table_heading-sub_inner06 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(10vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(18vw / 1440 * 100);
  font-weight: 400;
  text-align: center;
  color: var(--color-white);
  background-color: #72BAE7;
}

.p-point_box_table_heading-sub_inner06 small {
  display: block;
  margin-top: 1em;
  font-size: calc(11vw / 1440 * 100);
}

.p-point_box_table_heading-sub_inner06 sup {
  font-size: calc(5vw / 1440 * 100);
  vertical-align: top;
}

.p-point_box_table_heading-sub_inner07 {
  width: calc(150% / 174 * 100);
  margin: calc(8vw / 1440 * 100) auto;
  padding: calc(10vw / 1440 * 100) calc(5vw / 1440 * 100);
  border-radius: calc(5vw / 1440 * 100);
  box-sizing: border-box;
  font-size: calc(16vw / 1440 * 100);
  font-weight: 400;
  text-align: left;
  color: var(--color-white);
  background-color: #DF7F6E;
}

.p-point_box_table_cell {
  border-top: calc(2vw / 1440 * 100) solid #231815;
  border-right: calc(2vw / 1440 * 100) solid #231815;
  border-left: calc(2vw / 1440 * 100) solid #231815;
  padding: calc(6vw / 1440 * 100) calc(10vw / 1440 * 100);
  text-align: center;
  vertical-align: middle;
  min-width: calc(80vw / 1440 * 100);
}

.p-point_box_table_cell-dotted {
  border-top: calc(2vw / 1440 * 100) dotted #231815;
  border-right: calc(2vw / 1440 * 100) solid #231815;
  border-left: calc(2vw / 1440 * 100) solid #231815;
  padding: calc(4vw / 1440 * 100) calc(20vw / 1440 * 100);
  text-align: center;
  vertical-align: middle;
}

.p-point_box_table_cell-left {
  border-top: calc(2vw / 1440 * 100) solid #231815;
  border-right: calc(2vw / 1440 * 100) solid #231815;
  border-left: calc(2vw / 1440 * 100) solid #231815;
  padding: calc(15vw / 1440 * 100) calc(20vw / 1440 * 100);
  text-align: left;
  vertical-align: middle;
}

.p-point_box_table_cell-left-dotted {
  border-top: calc(2vw / 1440 * 100) dotted #231815;
  border-right: calc(2vw / 1440 * 100) solid #231815;
  border-left: calc(2vw / 1440 * 100) solid #231815;
  padding: calc(4vw / 1440 * 100) calc(20vw / 1440 * 100);
  text-align: left;
  vertical-align: middle;
}

.p-point_box_table_cell_inner {
  margin: calc(40vw / 1440 * 100) auto;
}

.p-point_box_table_notes {
  display: block;
  width: calc(1056vw / 1440 * 100);
  margin: calc(12vw / 1440 * 100) auto 0;
  font-size: calc(10vw / 1440 * 100);
  text-align: right;
  color: #231815;
}

.p-point_box_map {
  margin: calc(40vw / 1440 * 100) auto 0;
  width: calc(1120vw / 1440 * 100);
  color: #000000;
}

.p-point_box_map_head {
  font-size: calc(22vw / 1440 * 100);
  font-weight: 600;
  transform: scaleY(1.1);
}

.p-point_box_map_container {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  width: 100%;
}

.p-point_box_map_box {
  margin-top: calc(25vw / 1440 * 100);
  width: calc(246vw / 1440 * 100);
}

.p-point_box_map_box:not(:nth-child(4n)) {
  margin-right: calc(45vw / 1440 * 100);
}

.p-point_box_map_container:has(.p-point_box_map_box:nth-child(-n+6):last-child) .p-point_box_map_box:nth-child(4) {
  margin-right: calc(45vw / 1440 * 100);
}

.p-point_box_map_name {
  background-color: #009FE8;
  text-align: center;
  padding: calc(10vw / 1440 * 100);
  border-radius: calc(10vw / 1440 * 100);
}

.p-point_box_map_name_inner {
  display: block;
  font-size: calc(20vw / 1440 * 100);
  color: #fff;
  transform: scaleY(1.15);
}

.p-point_box_map_campus {
  margin-top: calc(5vw / 1440 * 100);
  font-size: calc(14vw / 1440 * 100);
  font-weight: 600;
  line-height: 1.2;
  color: #009FE8;
}

.p-point_box_map_address {
  margin-top: calc(5vw / 1440 * 100);
  font-size: calc(12vw / 1440 * 100);
  line-height: 1.2;
}


@media screen and (max-width: 768px) {
  .p-point_box {
    width: calc(354vw / 375 * 100);
    margin: calc(22vw / 375 * 100) 0 calc(15vw / 375 * 100) auto;
    padding: calc(2vw / 375 * 100) 0 calc(2vw / 375 * 100) calc(2vw / 375 * 100);
    border: calc(4vw / 375 * 100) solid var(--color-main);
    border-right: none;
    border-radius: calc(10vw / 375 * 100) 0 0 calc(10vw / 375 * 100);
    background-color: var(--color-white);
  }

  .p-point_box:first-child {
    margin-top: calc(22vw / 375 * 100);
  }

  .p-point_box::before {
    right: 0;
    left: auto;
    width: calc(5vw / 375 * 100);
  }

  .p-point_box_deco {
    top: calc(-11vw / 375 * 100);
    left: calc(20vw / 375 * 100);
    width: calc(75vw / 375 * 100);
  }

  .p-point_box_wrapper {
    border: calc(3vw / 375 * 100) solid var(--color-main);
    border-right: none;
    border-radius: calc(5vw / 375 * 100) 0 0 calc(5vw / 375 * 100);
    padding: calc(2vw / 375 * 100) 0 calc(2vw / 374 * 100) calc(2vw / 374 * 100);
  }

  .p-point_box_wrapper>.p-point_box_wrapper {
    background-size: calc(136vw / 375 * 100) auto;
    background-position: top calc(15vw / 375 * 100) right calc(15vw / 375 * 100);
    padding-bottom: calc(33vw / 375 * 100);
  }

  .p-point_box_head01 {
    height: calc(124vw / 375 * 100);
    margin-top: calc(30vw / 375 * 100);
  }

  .p-point_box_head02 {
    height: calc(90vw / 375 * 100);
    margin-top: calc(30vw / 375 * 100);
  }

  .p-point_box_head03 {
    height: calc(60vw / 375 * 100);
    margin-top: calc(30vw / 375 * 100);
    margin-left: calc(20vw / 375 * 100);
  }

  .p-point_box_head04 {
    height: calc(60vw / 375 * 100);
    margin-top: calc(30vw / 375 * 100);
  }

  .p-point_box_image {
    width: calc(286vw / 375 * 100);
    margin: calc(15vw / 375 * 100) auto 0;
  }

  .p-point_box_link {
    width: calc(152vw / 375 * 100);
    margin: calc(20vw / 375 * 100) calc(15vw / 375 * 100) 0 auto;
  }

  .p-point_box_link:hover {
    transform: translateX(2%);
  }

  .p-point_box_tab {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap;
    width: calc(286vw / 375 * 100);
    margin: calc(10vw / 375 * 100) auto 0;
  }

  .p-point_box_tab_radio {
    display: none;
  }

  .p-point_box_tab_group {
    display: block;
    margin-top: calc(16vw / 375 * 100);
    padding: calc(5vw / 375 * 100) calc(20vw / 375 * 100);
    font-size: calc(14vw / 375 * 100);
    border: calc(2vw / 375 * 100) solid var(--color-main);
  }

  .p-point_box_table_select {
    overflow-x: scroll;
    padding-left: calc(17vw / 375 * 100);
    padding-bottom: calc(3vw / 375 * 100);
  }

  .p-point_box_table {
    width: calc(1000vw / 480 * 100);
    margin: calc(25vw / 375 * 100) calc(25vw / 375 * 100) 0 0;
    font-size: calc(16vw / 480 * 100);
    border-top: calc(2vw / 480 * 100) solid #231815;
    line-height: 1.4;
    color: #231815;
  }

  .p-point_box_table_body {
    border: calc(2vw / 480 * 100) solid #231815;
  }

  .p-point_box_table_heading {
    background-color: #C19B61;
    border: calc(2vw / 480 * 100) solid #231815;
    color: var(--color-white);
    padding: calc(6vw / 480 * 100) calc(10vw / 480 * 100);
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
  }

  .p-point_box_table_heading-sub {
    background-color: #F8EEDC;
    width: calc(165vw / 480 * 100);
    border: calc(2vw / 480 * 100) solid #231815;
    text-align: center;
    vertical-align: middle;
  }

  .p-point_box_table_heading-sub_inner01 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(5vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(18vw / 480 * 100);
    font-weight: 400;
    color: var(--color-white);
    background-color: #F7AE54;
  }

  .p-point_box_table_heading-sub_inner02 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(5vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(18vw / 480 * 100);
    font-weight: 400;
    color: var(--color-white);
    background-color: #DEB972;
  }

  .p-point_box_table_heading-sub_inner03 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(5vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(18vw / 480 * 100);
    font-weight: 400;
    color: var(--color-white);
    background-color: #8F81BD;
  }

  .p-point_box_table_heading-sub_inner04 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(5vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(18vw / 480 * 100);
    font-weight: 400;
    color: var(--color-white);
    background-color: #F19EB4;
  }

  .p-point_box_table_heading-sub_inner05 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(5vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(18vw / 480 * 100);
    font-weight: 400;
    color: var(--color-white);
    background-color: #FAC158;
  }

  .p-point_box_table_heading-sub_inner06 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(10vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(18vw / 480 * 100);
    font-weight: 400;
    text-align: center;
    color: var(--color-white);
    background-color: #72BAE7;
  }

  .p-point_box_table_heading-sub_inner06 small {
    display: block;
    margin-top: 1em;
    font-size: calc(11vw / 480 * 100);
  }

  .p-point_box_table_heading-sub_inner06 sup {
    font-size: calc(5vw / 480 * 100);
    vertical-align: top;
  }

  .p-point_box_table_heading-sub_inner07 {
    width: calc(150% / 174 * 100);
    margin: calc(8vw / 480 * 100) auto;
    padding: calc(10vw / 480 * 100) calc(5vw / 480 * 100);
    border-radius: calc(5vw / 480 * 100);
    box-sizing: border-box;
    font-size: calc(16vw / 480 * 100);
    font-weight: 400;
    text-align: left;
    color: var(--color-white);
    background-color: #DF7F6E;
  }

  .p-point_box_table_cell {
    border-top: calc(2vw / 480 * 100) solid #231815;
    border-right: calc(2vw / 480 * 100) solid #231815;
    border-left: calc(2vw / 480 * 100) solid #231815;
    padding: calc(6vw / 480 * 100) calc(10vw / 480 * 100);
    text-align: center;
    vertical-align: middle;
    min-width: calc(80vw / 480 * 100);
  }

  .p-point_box_table_cell-dotted {
    border-top: calc(2vw / 480 * 100) dotted #231815;
    border-right: calc(2vw / 480 * 100) solid #231815;
    border-left: calc(2vw / 480 * 100) solid #231815;
    padding: calc(4vw / 480 * 100) calc(20vw / 480 * 100);
    text-align: center;
    vertical-align: middle;
  }

  .p-point_box_table_cell-left {
    border-top: calc(2vw / 480 * 100) solid #231815;
    border-right: calc(2vw / 480 * 100) solid #231815;
    border-left: calc(2vw / 480 * 100) solid #231815;
    padding: calc(15vw / 480 * 100) calc(20vw / 480 * 100);
    text-align: left;
    vertical-align: middle;
  }

  .p-point_box_table_cell-left-dotted {
    border-top: calc(2vw / 480 * 100) dotted #231815;
    border-right: calc(2vw / 480 * 100) solid #231815;
    border-left: calc(2vw / 480 * 100) solid #231815;
    padding: calc(4vw / 480 * 100) calc(20vw / 480 * 100);
    text-align: left;
    vertical-align: middle;
  }

  .p-point_box_table_cell_inner {
    margin: calc(40vw / 480 * 100) auto;
  }

  .p-point_box_table_notes {
    display: block;
    width: auto;
    margin: calc(12vw / 375 * 100) auto 0;
    font-size: calc(10vw / 375 * 100);
    text-align: left;
    color: #231815;
  }

  .p-point_box_map_wrap {
    padding-left: calc(17vw / 375 * 100);
    overflow-x: scroll;
    padding-bottom: calc(07vw / 375 * 100);
  }

  .p-point_box_map_wrap_coution{
    width: calc(306vw / 375 * 100);
    height: calc(630vw / 375 * 100);
  }

  .p-point_box_map_wrap_coution_txt{
    font-size: calc(16.8vw / 375 * 100);
  }

  .p-point_box_map_wrap_coution_txt span{
    text-decoration: underline calc(1.2vw / 375 * 100);
    text-underline-offset: calc(2vw / 375 * 100);

  }


  .p-point_box_map {
    margin: calc(40vw / 375 * 100) auto 0;
    width: calc(860vw / 375 * 100);
  }

  .p-point_box_map_head {
    font-size: calc(18vw / 375 * 100);
  }

  .p-point_box_map_container {
    width: 100%;
  }

  .p-point_box_map_box {
    margin-top: calc(20vw / 375 * 100);
    width: calc(195vw / 375 * 100);
  }

  .p-point_box_map_box:not(:nth-child(4n)) {
    margin-right: calc(20vw / 375 * 100);
  }

  .p-point_box_map_container:has(.p-point_box_map_box:nth-child(-n+6):last-child) .p-point_box_map_box:nth-child(4) {
    margin-right: calc(20vw / 375 * 100);
  }

  .p-point_box_map_name {
    padding: calc(7vw / 375 * 100);
    border-radius: calc(10vw / 375 * 100);
  }

  .p-point_box_map_name_inner {
    font-size: calc(14vw / 375 * 100);
  }

  .p-point_box_map_campus {
    margin-top: calc(5vw / 375 * 100);
    font-size: calc(13vw / 375 * 100);
  }

  .p-point_box_map_address {
    margin-top: calc(5vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
  }
}

/* summary */
.p-summary {}

.p-summary_label {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  width: calc(1120vw / 1440 * 100);
  margin: calc(80vw / 1440 * 100) auto;
}

.p-summary_label_box {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: calc(19vw / 1440 * 100);
  line-height: 1.4;
  text-align: center;
  padding: calc(30vw / 1440 * 100) calc(27vw / 1440 * 100);
  border: 1px dashed #6ba3ca;
}

.p-summary_flow {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  width: calc(1170vw / 1440 * 100);
  margin: calc(46vw / 1440 * 100) auto 0;
}

.p-summary_flow_box {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  width: calc(224vw / 1440 * 100);
  border: calc(3vw / 1440 * 100) solid var(--color-main);
  box-sizing: border-box;
}

.p-summary_flow_box:not(:first-child)::before {
  content: "";
  position: absolute;
  bottom: calc(67vw / 1440 * 100);
  left: calc(-33vw / 1440 * 100);
  display: block;
  width: calc(46vw / 1440 * 100);
  height: calc(46vw / 1440 * 100);
  background-image: url(/scholarship_selection/assets/img/icon_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.p-summary_flow_box-wide {
  position: relative;
  width: calc(454vw / 1440 * 100);
  border: calc(3vw / 1440 * 100) solid var(--color-main);
  box-sizing: border-box;
}

.p-summary_flow_box-wide:not(:first-child)::before {
  content: "";
  position: absolute;
  bottom: calc(67vw / 1440 * 100);
  left: calc(-33vw / 1440 * 100);
  display: block;
  width: calc(46vw / 1440 * 100);
  height: calc(46vw / 1440 * 100);
  background-image: url(/scholarship_selection/assets/img/icon_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.p-summary_flow_box_heading {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  width: 100%;
  height: calc(90vw / 1440 * 100);
  color: var(--color-white);
  font-size: calc(24vw / 1440 * 100);
  line-height: 1.4;
  font-weight: 300;
  text-align: center;
  background-color: var(--color-main);
}

.p-summary_flow_box_heading-small {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  width: 100%;
  height: calc(48vw / 1440 * 100);
  color: var(--color-white);
  font-size: calc(24vw / 1440 * 100);
  line-height: 1.4;
  font-weight: 300;
  text-align: center;
  background-color: var(--color-main);
}

.p-summary_flow_box_heading-xsmall {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  width: 100%;
  height: calc(40vw / 1440 * 100);
  color: var(--color-white);
  font-size: calc(20vw / 1440 * 100);
  line-height: 1.4;
  font-weight: 300;
  text-align: center;
  background-color: var(--color-main);
}

.p-summary_flow_box_details-sprit {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
}

.p-summary_flow_box_included {
  margin-top: calc(3vw / 1440 * 100);
  width: 50%;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
}

.p-summary_flow_box_included+.p-summary_flow_box_included {
  margin-left: calc(3vw / 1440 * 100);
}

.p-summary_flow_box_details {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: calc(30vw / 1440 * 100) 0;
  box-sizing: border-box;
  font-size: calc(20vw / 1440 * 100);
  line-height: 1.4;
  text-align: center;
  font-feature-settings: "palt";
}

.p-summary_flow_box_included+.p-summary_flow_box_included .p-summary_flow_box_details::before {
  content: "";
  display: block;
  position: absolute;
  right: 100%;
  width: calc(3vw / 1440 * 100);
  height: 100%;
  background-color: var(--color-main);
}

.p-summary_flow_notes {
  display: block;
  margin: calc(24vw / 1440 * 100) auto 0;
  width: calc(1170vw / 1440 * 100);
  font-size: calc(16vw / 1440 * 100);
  text-align: right;
}

@media screen and (max-width: 768px) {
  .p-summary {}

  .p-summary_label {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    width: calc(270vw / 375 * 100);
    margin: calc(20vw / 375 * 100) auto;
  }

  .p-summary_label_box {
    width: calc(150vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
    padding: calc(5vw / 375 * 100) 0;
    margin-top: calc(10vw / 375 * 100);
  }

  .p-summary_label_box:nth-child(2n) {
    width: calc(86vw / 375 * 100);
  }

  .p-summary_flow {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
    width: calc(334vw / 375 * 100);
    margin: calc(33vw / 375 * 100) auto 0;
  }

  .p-summary_flow_box {
    width: calc(105vw / 375 * 100);
    border: calc(3vw / 375 * 100) solid var(--color-main);
  }

  .p-summary_flow_box:not(:first-child)::before {
    content: "";
    position: absolute;
    bottom: calc(34vw / 375 * 100);
    left: calc(-18vw / 375 * 100);
    width: calc(20vw / 375 * 100);
    height: calc(20vw / 375 * 100);
  }

  .p-summary_flow_box-wide {
    width: calc(300vw / 375 * 100);
    border: calc(3vw / 375 * 100) solid var(--color-main);
    margin: calc(5vw / 375 * 100) auto 0;
  }

  .p-summary_flow_box-wide:not(:first-child)::before {
    top: calc(-18vw / 375 * 100);
    bottom: unset;
    left: unset;
    right: calc(8vw / 375 * 100);
    width: calc(20vw / 375 * 100);
    height: calc(20vw / 375 * 100);
    transform: rotate(90deg);
  }

  .p-summary_flow_box_heading {
    height: calc(38vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
    line-height: 1.4;
  }

  .p-summary_flow_box_heading-small {
    height: calc(24vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
    line-height: 1.4;
  }

  .p-summary_flow_box_heading-xsmall {
    height: calc(24vw / 375 * 100);
    font-size: calc(12vw / 375 * 100);
    line-height: 1.4;
  }

  .p-summary_flow_box_details-sprit {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
  }

  .p-summary_flow_box_included {
    margin-top: calc(3vw / 375 * 100);
    width: 50%;
    height: auto;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }

  .p-summary_flow_box_included+.p-summary_flow_box_included {
    margin-left: calc(3vw / 375 * 100);
  }

  .p-summary_flow_box_details {
    padding: calc(10vw / 375 * 100) 0;
    font-size: calc(12vw / 375 * 100);
    line-height: 1.4;
  }

  .p-summary_flow_box_included+.p-summary_flow_box_included .p-summary_flow_box_details::before {
    content: "";
    display: block;
    position: absolute;
    right: 100%;
    width: calc(3vw / 1440 * 100);
    height: 100%;
    background-color: var(--color-main);
  }

  .p-summary_flow_notes {
    font-size: calc(10vw / 375 * 100);
    margin: calc(10vw / 375 * 100) auto 0;
    width: 100%;
    text-align: center;
  }
}

/* question */
.p-question {
  margin-top: calc(70vw / 1440 * 100);
  padding: calc(90vw / 1440 * 100) 0 0;
}

.p-question_title {
  width: auto;
  height: calc(86vw / 1440 * 100);
  text-align: center;
}

.p-question_title img {
  width: auto;
  height: 100%;
}

.p-question_container {
  position: relative;
  width: calc(1120vw / 1440 * 100);
  margin: calc(90vw / 1440 * 100) auto calc(60vw / 1440 * 100);
  z-index: 1;
}

.p-question_box {
  display: block;
}

.p-question_box:not(:first-child) {
  margin-top: calc(65vw / 1440 * 100);
}

.p-question_question {
  display: block;
  font-size: calc(25vw / 1440 * 100);
  line-height: 1.4;
  color: var(--color-white);
}

.p-question_question::-webkit-details-marker {
  display: none;
}

.p-question_answer {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: calc(30vw / 1440 * 100);
  height: calc(165vw / 1440 * 100);
  font-size: calc(20vw / 1440 * 100);
  line-height: 1.3;
  padding: 0 calc(30vw / 1440 * 100);
  box-sizing: border-box;
  background-color: var(--color-white);
  visibility: visible;
}


@media screen and (max-width: 768px) {
  .p-question {
    margin-top: calc(40vw / 375 * 100);
    padding: calc(50vw / 375 * 100) 0 0;
  }

  .p-question_title {
    height: calc(48vw / 375 * 100);
  }

  .p-question_container {
    width: calc(340vw / 375 * 100);
    margin: calc(34vw / 375 * 100) auto calc(60vw / 375 * 100);
  }

  .p-question_box:not(:first-child) {
    margin-top: calc(50vw / 375 * 100);
  }

  .p-question_question {
    position: relative;
    padding: calc(9vw / 375 * 100) calc(60vw / 375 * 100) calc(9vw / 375 * 100) calc(11vw / 375 * 100);
    font-size: calc(16vw / 375 * 100);
    line-height: 1.4;
    box-sizing: border-box;
    background-color: var(--color-main);
    border: 1px solid var(--color-white);
    color: var(--color-white);
  }

  .p-question_question::before {
    content: "";
    position: absolute;
    top: 0;
    right: calc(13vw / 375 * 100);
    bottom: 0;
    margin: auto;
    display: block;
    width: calc(36vw / 375 * 100);
    height: 1px;
    background-color: var(--color-white);
  }

  .p-question_question::after {
    content: "";
    position: absolute;
    top: 0;
    right: calc(13vw / 375 * 100);
    bottom: 0;
    margin: auto;
    display: block;
    width: calc(36vw / 375 * 100);
    height: 1px;
    background-color: var(--color-white);
    transform: rotate(90deg);
    transition: transform .2s;
  }

  .p-question_box[open] .p-question_question::after {
    transform: rotate(0deg);
  }

  .p-question_answer {
    margin-top: 0;
    height: unset;
    font-size: calc(14vw / 375 * 100);
    line-height: 1.4;
    box-sizing: border-box;
    background-color: var(--color-white);
    max-height: 0;
    overflow: hidden;
    animation-name: p-question_answer_rev;
    animation-duration: .3s;
    animation-delay: .1s;
    animation-iteration-count: 1;
    animation-fill-mode: both;
  }

  .p-question_box[open] .p-question_answer {
    animation-name: p-question_answer;
    animation-duration: .3s;
    animation-delay: .1s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
  }

  @keyframes p-question_answer {
    0% {
      max-height: 0;
      padding: calc(0vw / 375 * 100) calc(16vw / 375 * 100);
    }

    100% {
      max-height: 20em;
      padding: calc(16vw / 375 * 100) calc(16vw / 375 * 100);
    }
  }

  @keyframes p-question_answer_rev {
    0% {
      max-height: 20em;
      padding: calc(16vw / 375 * 100) calc(16vw / 375 * 100);
    }

    100% {
      max-height: 0;
      padding: calc(0vw / 375 * 100) calc(16vw / 375 * 100);
    }
  }
}

.p-footer {
  background-color: var(--color-main);
  padding: calc(90vw / 1440 * 100) 0 calc(115vw / 1440 * 100);
}

.p-footer_container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: calc(1280vw / 1440 * 100);
  margin: auto;
}

.p-footer_block {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: column;
  color: var(--color-white);
}

.p-footer_logo {
  width: calc(364vw / 1440 * 100);
}

.p-footer_name {
  font-size: calc(36vw / 1440 * 100);
  text-align: justify;
  margin-top: 1.3em;
}

.p-footer_address {
  font-size: calc(24vw / 1440 * 100);
  line-height: 1.4;
}

.p-footer_tel {}

.p-footer_tel_main {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  margin-top: calc(26vw / 1440 * 100);
  color: var(--color-white);
  text-decoration: none;
}

.p-footer_tel_logo {
  width: calc(50vw / 1440 * 100);
  margin-right: calc(12vw / 1440 * 100);
}

.p-footer_tel_num {
  font-size: calc(32vw / 1440 * 100);
}

.p-footer_tel_small {
  font-size: calc(14vw / 1440 * 100);
}

.p-footer_tel_sub {
  font-size: calc(16vw / 1440 * 100);
  line-height: 1.4;
  margin-top: calc(10vw / 1440 * 100);
  font-feature-settings: "palt";
}

.p-footer_link {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: calc(300vw / 1440 * 100);
  color: var(--color-white);
  text-decoration: none;
  margin-bottom: 1.25em;
}

.p-footer_link_icon {
  width: calc(70vw / 1440 * 100);
  margin-right: calc(20vw / 1440 * 100);
}

.p-footer_link_text {
  font-size: calc(24vw / 1440 * 100);
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .p-footer {
    padding: calc(90vw / 375 * 100) 0 calc(115vw / 375 * 100);
  }

  .p-footer_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    width: 100%;
    margin: auto;
  }

  .p-footer_block {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
    width: calc(260vw / 375 * 100);
    color: var(--color-white);
  }

  .p-footer_logo {
    width: calc(260vw / 375 * 100);
    margin: auto;
  }

  .p-footer_name {
    margin-top: calc(60vw / 375 * 100);
    font-size: calc(24vw / 375 * 100);
    letter-spacing: .02em;
    width: 100%;
  }

  .p-footer_address {
    margin-top: calc(22vw / 375 * 100);
    font-size: calc(20vw / 375 * 100);
    line-height: 1.4;
  }

  .p-footer_tel {}

  .p-footer_tel_main {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    margin-top: calc(26vw / 375 * 100);
    color: var(--color-white);
    text-decoration: none;
  }

  .p-footer_tel_logo {
    width: calc(50vw / 375 * 100);
    margin-right: calc(12vw / 375 * 100);
  }

  .p-footer_tel_num {
    font-size: calc(28vw / 375 * 100);
  }

  .p-footer_tel_small {
    font-size: calc(12vw / 375 * 100);
  }

  .p-footer_tel_sub {
    font-size: calc(10vw / 375 * 100);
    line-height: 1.4;
    margin-top: calc(10vw / 375 * 100);
    font-feature-settings: "palt";
  }

  .p-footer_link {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: calc(30vw / 375 * 100);
    margin-bottom: 0;
    width: calc(300vw / 375 * 100);
    color: var(--color-white);
    text-decoration: none;
  }

  .p-footer_link:first-child {
    margin-top: calc(80vw / 375 * 100);
  }

  .p-footer_link_icon {
    width: calc(70vw / 375 * 100);
    margin-right: calc(20vw / 375 * 100);
  }

  .p-footer_link_text {
    font-size: calc(24vw / 375 * 100);
    line-height: 1.4;
  }
}

/* unit */
.u-indent {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

.u-indent-half {
  display: block;
  padding-left: .25em;
  text-indent: -.25em;
}

.u-sup {
  font-size: 0.65em;
  vertical-align: top;
}

.u-rotate-90 {
  display: block;
  transform: rotate(90deg);
}

@media screen and (max-width: 768px) {
  .u-pc {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .u-sp {
    display: none;
  }
}