/* ---------------------------------------------------
	common
------------------------------------------------------ */
#pagetit {
  background: url(../img/concept/pagetit_bg.jpg) center;
  background-size: cover;
}

#lead {
  padding-bottom: 0;
}

@media screen and (max-width: 810px) {
  #pagetit {
    background: url(../img/concept/pagetit_bg_sp.jpg) center;
    background-size: cover;
  }
}
/* ---------------------------------------------------
	point
------------------------------------------------------ */
#point {
  padding-top: 152px;
  background: url(../img/concept/point_bg.png) no-repeat center top 40px;
}
#point .point_tit {
  margin-bottom: 72px;
  color: #0056b1;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.095em;
  text-align: center;
}
#point .point_tit .num {
  padding: 0 8px;
  font-size: 6.4rem;
  line-height: 1;
}

.point_sec {
  padding: 92px 0 96px;
}
.point_sec .point_tit02 {
  margin-bottom: 250px;
  color: #fff;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.095em;
  text-align: center;
}
.point_sec .point_tit02 .en {
  display: block;
  margin-bottom: 32px;
  font-size: 6.4rem;
  letter-spacing: 0.12em;
  line-height: 1;
  opacity: 0.8;
  text-shadow: none;
}
.point_sec .caption {
  color: currentColor;
}
.point_sec .point_col .col_pic {
  width: 60%;
}
.point_sec .point_col .col_pic > img {
  min-height: 450px;
  object-fit: cover;
}
.point_sec .point_col .col_pic .pic_wide {
  width: 65%;
}
.point_sec .point_col .col_pic .pic_wide img {
  width: 100%;
}
.point_sec .point_col .col_pic .pic_min {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 33.6%;
}
.point_sec .point_col .col_pic .pic_min img {
  width: 100%;
}
.point_sec .point_col .col_txt {
  width: 40%;
  padding: 0 3.5% 0 8%;
}
.point_sec .point_col02 {
  margin-top: 64px;
}
.point_sec .point_col02 .col_pic {
  width: 60%;
  text-align: right;
}
.point_sec .point_col02 .col_pic img {
  min-height: 500px;
  object-fit: cover;
}
.point_sec .point_col02 .col_txt {
  width: 40%;
  padding: 0 8% 0 3.5%;
}
.point_sec .point_btn {
  margin-top: 48px;
  text-align: center;
}

@media screen and (max-width: 1280px) {
  .point_sec .point_col .col_txt {
    padding-left: 4%;
  }
  .point_sec .point_col02 .col_txt {
    padding-right: 4%;
  }
}
@media screen and (max-width: 810px) {
  #point {
    padding-top: 44px;
    background: url(../img/concept/point_bg_sp@2x.png) no-repeat center top;
    background-size: 570px;
  }
  #point .point_tit {
    margin-bottom: 40px;
    font-size: 2.4rem;
    line-height: 1.3;
    letter-spacing: 0.095em;
  }
  #point .point_tit .num {
    padding: 0 8px;
    font-size: 5.6rem;
  }
  .point_sec {
    padding: 48px 0 48px;
  }
  .point_sec .point_tit02 {
    margin-bottom: 35.2vw;
    font-size: 2.4rem;
    letter-spacing: 0.095em;
    text-shadow: 0 0 6px rgba(0, 0, 0, 0.75);
  }
  .point_sec .point_tit02 .en {
    display: block;
    margin-bottom: 16px;
    font-size: 5.2rem;
    letter-spacing: 0.12em;
  }
  .point_sec .point_col .col_pic {
    width: 100%;
    margin-top: 32px;
  }
  .point_sec .point_col .col_pic > img {
    min-height: 0;
    aspect-ratio: 750/608;
    object-fit: cover;
  }
  .point_sec .point_col .col_pic .pic_wide {
    width: 61.5%;
  }
  .point_sec .point_col .col_pic .pic_wide img {
    aspect-ratio: 462/608;
    object-fit: cover;
  }
  .point_sec .point_col .col_pic .pic_min {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 36.5%;
  }
  .point_sec .point_col .col_pic .pic_min img {
    aspect-ratio: 275/297;
    object-fit: cover;
  }
  .point_sec .point_col .col_txt {
    width: 100%;
    padding: 0 24px;
  }
  .point_sec .point_col02 {
    margin-top: 36px;
  }
  .point_sec .point_col02 .col_pic {
    width: 100%;
    margin-top: 32px;
    padding: 0 24px;
    text-align: center;
    order: 10;
  }
  .point_sec .point_col02 .col_pic img {
    min-height: 0;
    aspect-ratio: 654/554;
  }
  .point_sec .point_col02 .col_txt {
    width: 100%;
    padding: 0 24px;
  }
  .point_sec .point_btn {
    margin-top: 40px;
  }
}
/* ---------------------------------------------------
	point01
------------------------------------------------------ */
#point01 {
  background: url(../img/concept/point01_bg_01.jpg) no-repeat center top, #4887c6;
  color: #fff;
}
@media screen and (min-width: 2001px) {
  #point01 {
    background-size: 100%;
  }
}
#point01 .point01_col {
  margin-bottom: 60px;
  gap: 0 16px;
  flex-wrap: nowrap;
}
#point01 .point01_col img {
  width: 100%;
  height: auto;
}
#point01 .point01_col .col_item01 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
#point01 .point01_col .col_item02 {
  position: relative;
}
#point01 .point01_col .col_item02 .item_caption {
  position: absolute;
  right: 0;
  bottom: 0;
  max-width: 100%;
  padding: 4px 8px;
  color: #000;
  letter-spacing: 0.075em;
  line-height: 1.5;
  text-shadow: 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff;
  text-align: right;
}
#point01 .point01_col .col_item03 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 810px) {
  #point01 {
    display: flex;
    flex-direction: column;
    background: url(../img/concept/point01_bg_01_sp.webp) no-repeat center top, #4887c6;
    background-size: 100%;
  }
  #point01 .point01_col {
    margin-top: 32px;
    margin-bottom: 0;
    gap: 8px;
    flex-wrap: wrap;
    order: 10;
  }
  #point01 .point01_col .col_item01 {
    width: calc(50% - 4px);
    gap: 8px;
    order: 10;
  }
  #point01 .point01_col .col_item01 img {
    aspect-ratio: 367/256;
    object-fit: cover;
  }
  #point01 .point01_col .col_item02 {
    order: -1;
  }
  #point01 .point01_col .col_item02 .item_caption {
    font-size: 1.4rem;
    letter-spacing: 0.075em;
  }
  #point01 .point01_col .col_item03 {
    width: calc(50% - 4px);
    gap: 8px;
  }
  #point01 .point01_col .col_item03 img {
    aspect-ratio: 367/256;
    object-fit: cover;
  }
  #point01 .point_btn {
    order: 100;
  }
}
/* ---------------------------------------------------
		point02
------------------------------------------------------ */
#point02 {
  background: url(../img/concept/point02_bg_01.jpg) no-repeat center top, #ac835e;
  color: #fff;
}
@media screen and (min-width: 2001px) {
  #point02 {
    background-size: 100%;
  }
}

@media screen and (max-width: 810px) {
  #point02 {
    background: url(../img/concept/point02_bg_01_sp.webp) no-repeat center top, #ac835e;
    background-size: 100%;
  }
}
/* ---------------------------------------------------
		point03
------------------------------------------------------ */
#point03 {
  background: url(../img/concept/point03_bg_01.jpg) no-repeat center top, #9aaa94;
  color: #fff;
}
@media screen and (min-width: 2001px) {
  #point03 {
    background-size: 100%;
  }
}

@media screen and (max-width: 810px) {
  #point03 {
    background: url(../img/concept/point03_bg_01_sp.webp) no-repeat center top, #9aaa94;
  }
}
/* ---------------------------------------------------
		point04
------------------------------------------------------ */
#point04 {
  background: url(../img/concept/point04_bg_01.jpg) no-repeat center top, #985149;
  color: #fff;
}
@media screen and (min-width: 2001px) {
  #point04 {
    background-size: 100%;
  }
}

@media screen and (max-width: 810px) {
  #point04 {
    background: url(../img/concept/point04_bg_01_sp.webp) no-repeat center top, #985149;
    background-size: 100%;
  }
}
/* ---------------------------------------------------
		point05
------------------------------------------------------ */
#point05 {
  background: url(../img/concept/point05_bg_01.jpg) no-repeat center top, #6597ad;
  color: #fff;
}
@media screen and (min-width: 2001px) {
  #point05 {
    background-size: 100%;
  }
}

@media screen and (max-width: 810px) {
  #point05 {
    background: url(../img/concept/point05_bg_01_sp.webp) no-repeat center top, #6597ad;
    background-size: 100%;
  }
}