@charset "utf-8";
/*a {
  pointer-events: none;
}*/
img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*main_sd*/
#main_sd {
  width: 100%;
  height: 100vh;
  position: relative;
  min-height: 500px;
  z-index: 0;
  margin-bottom: 6.5rem;
}
@media screen and (min-width: 1200px) {
  #main_sd {
    margin-bottom: 8.15rem;
  }
}
.fv-slider_block {
  position: relative;
  height: 100%;
}
.fv-slider {
  width: 100%;
  height: 100%;
  margin-bottom: 0;
  position: relative;
  z-index: 0;
}
.fv-slider div {
  width: 100%;
  height: 100%;
}
.fv-slider .fv-slider-img {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 0;
  overflow: hidden; /* 画像がはみ出ないようにする */
}
.fv-slider-overlay::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.20);
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
.fv-slider-img img {
  height: 100%;
  object-fit: cover;
}
.fv-slider {
  display: none;
}
.fv-slider.slick-initialized {
  display: block;
}
@media screen and (min-width: 1200px) {
  .fv-slider-overlay03::before {
    background-color: rgba(0, 0, 0, 0.1);
  }
}
/**************************************
/* fv_title_block
***************************************/
.fv_title_block {
  width: 90%;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.fv_title {
  font-size: 1.92rem;
  letter-spacing: 0;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 0;
}
.fv_title span {
  display: block;
  font-size: 1.07rem;
  letter-spacing: 0;
  margin-top: 0.7rem;
}
@media screen and (min-width: 768px) {
  .fv_title {
    font-size: 2.5rem;
  }
  .fv_title span {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 1200px) {
  .fv_title {
    font-size: 3rem;
  }
  .fv_title span {
    font-size: 1.5625rem;
    margin-top: 1.2rem;
  }
}
/***************************************
lineup_container
***************************************/
.lineup_container {
  margin-bottom: 6.2rem;
}
.lineup_container .section_title_box {
  margin-bottom: 4.3rem;
}
.lineup_block {
  width: 84%;
  margin: 0 auto;
}
.lineup_block > ul > li {
  margin-bottom: 2.1rem;
}
.lineup_block > ul > li:last-child {
  margin-bottom: 0;
}
.lineup_item {
  display: block;
  color: #282828;
  transition: all 0.5s;
}
.lineup_item:hover {
  opacity: 0.7;
  transition: all 0.5s;
}
.lineup_unit01 {
  margin-bottom: 10px;
}
.lineup_unit02 {
  position: relative;
  padding: 3.5rem 0 4rem;
}
.lineup_type02 .lineup_unit02 {
  padding: 3rem 0 4.5rem;
}
.lineup_type04 .lineup_unit02 {
  padding: 3.9rem 0 3rem;
}
.lineup_block > ul > li:nth-child(2n + 1) .lineup_unit02 {
  background-color: #f5f5f5
}
.lineup_block > ul > li:nth-child(2n) .lineup_unit02 {
  background-color: #e9e1d3
}
.lineup_unit02_inner {
  width: 81%;
  margin: 0 auto;
}
.lineup_title {
  font-size: 1.85rem;
  text-align: center;
  margin-bottom: 1.45rem;
}
.lineup_type02 .lineup_title {
  font-size: 2.57rem;
}
.lineup_type03 .lineup_title {
  width: 111px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.7rem;
  mix-blend-mode: multiply;  
}
.lineup_sub_txt {
  font-size: 1.28rem;
  line-height: 1.66;
  text-align: center;
  margin-bottom: 1.6rem;
}
.lineup_txt {
  font-size: 0.928rem;
  line-height: 1.61;
  text-align: justify;
  margin-bottom: 0;
}
.lineup_type01_list {
  margin-top: 1.7rem;
}
.lineup_type01_list > ul {
  display: flex;
  gap: 2%;
}
.lineup_type01_list > ul > li {
  width: calc((100% - 4%) / 3);
}
.lineup_type01_item {
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lineup_type01_item01 {
  background-color: #8f9ea9;
}
.lineup_type01_item02 {
  background-color: #405a6d;
}
.lineup_type01_item03 {
  background-color: #282828;
}
.lineup_type01_title span {
  font-size: 1rem;
  margin-bottom: 2px;
}
.lineup_type01_title {
  font-size: 7px;
  line-height: 1;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding-bottom: 4px;
}
.lineup_type02_block {
  margin-top: 1.4rem;
}
.lineup_type02_price_wrap {
  line-height: 1;
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin-bottom: 10px;
}
.lineup_type02_price {
  font-size: 3.57rem;
  color: #082942;
  margin-right: 6px;
  position: relative;
  z-index: 0;
}
.lineup_type02_price::before {
  content: "";
  display: block;
  width: 100%;
  height: 16px;
  position: absolute;
  bottom: -1px;
  left: 0;
  z-index: -1;
}
.lineup_block > ul > li:nth-child(2n) .lineup_type02_price::before {
  background-color: #fff;
}
.lineup_block > ul > li:nth-child(2n + 1) .lineup_type02_price::before {
  background-color: #dbd1c3;
}
.lineup_type02_tsx {
  font-size: 1.214rem;
  letter-spacing: 0.05em;
  color: #082942;
}
.lineup_type02_note {
  font-size: 0.928rem;
  text-align: center;
}
.lineup_arrow {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid rgba(40, 40, 40, 1);
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  transition: all 0.5s;
}
a:hover .lineup_arrow {
  background-color: rgba(40, 40, 40, 1);
}
.lineup_arrow::before {
  content: "";
  display: block;
  width: 10px;
  height: 9px;
  background-image: url("../images/arrow_black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.5s;
}
a:hover .lineup_arrow::before {
  filter: invert(100%);
  transition: all 0.5s;
}
@media screen and (min-width: 768px) {
  .lineup_container {
    margin-bottom: 8.2rem;
  }
  .lineup_item {
    display: flex;
    justify-content: space-between;
  }
  .lineup_unit01 {
    width: calc(52% - 5px);
    margin-bottom: 0;
  }
  .lineup_block > ul > li:nth-child(2n) .lineup_unit01 {
    order: 2;
  }
  .lineup_unit02 {
    width: calc(48% - 5px);
  }
  .lineup_block > ul > li:nth-child(2n) .lineup_unit02 {
    order: 1;
  }
  .lineup_type02_price {
    color: #282828;
  }
  .lineup_type02_tsx {
    color: #282828;
  }
}
@media screen and (min-width: 1200px) {
  .lineup_container {
    margin-bottom: 10rem;
  }
  .lineup_container .section_title_box {
    margin-bottom: 5.3rem;
  }
  .lineup_block {
    width: 88%;
  }
  .lineup_block > ul > li {
    margin-bottom: 3.2rem;
  }
  .lineup_unit01 {
    width: calc(59.7% - 5px);
  }
  .lineup_unit02 {
    width: calc(40.3% - 5px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
  .lineup_type02 .lineup_unit02 {
    padding: 3rem 0 4.5rem;
  }
  .lineup_type03 .lineup_unit02 {
    padding: 3.5rem 0 4.5rem;
  }
  .lineup_type04 .lineup_unit02 {
    padding: 4.6rem 0 4.5rem;
  }
  .lineup_unit02_inner {
    width: 75%;
  }
  .lineup_title {
    font-size: 2.375rem;
    margin-bottom: 2.5rem;
  }
  .lineup_type02 .lineup_title {
    font-size: 3rem;
    margin-bottom: 2.4rem;
  }
  .lineup_type03 .lineup_title {
    width: 134px;
    margin-bottom: 3rem;
  }
  .lineup_sub_txt {
    font-size: 1.3125rem;
  }
  .lineup_txt {
    font-size: 0.9375rem;
    line-height: 1.83;
  }
  .lineup_type01_list {
    margin-top: 2rem;
  }
  .lineup_type01_title span {
    font-size: 1.5625rem;
    margin-bottom: 4px;
  }
  .lineup_type01_title {
    font-size: 0.75rem;
  }
  .lineup_type02_block {
    margin-top: 2rem;
  }
  .lineup_arrow {
    width: 41px;
    height: 41px;
    bottom: 1.8rem;
    right: 1.7rem;
  }
  .lineup_arrow::before {
    width: 16px;
    height: 14px;
  }
}
@media screen and (min-width: 1500px) {
  .lineup_type02_price_wrap {
    margin-bottom: 11px;
  }
  .lineup_type02_price {
    font-size: 4.21875rem;
    margin-right: 10px;
  }
  .lineup_type02_price::before {
    height: 20px;
  }
  .lineup_type02_tsx {
    font-size: 1.4375rem;
  }
  .lineup_type02_note {
    font-size: 1.0625rem;
  }
}

/***************************************
concept_container
***************************************/
.concept_container {
  margin-bottom: 7.3rem;
  position: relative;
  z-index: 0;
}
.concept_container::before {
  content: "CONCEPT";
  font-size: 7.64rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #f5f5f5;
  display: block;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  white-space: nowrap;
  /*width: 100%;
  height: 100%;*/
  position: absolute;
  top: -1.4%;
  left: -4%;
  z-index: -1;
  line-height: 1;
}
.concept_block {
  margin-bottom: 5.08rem;
}
.concept_unit01 {
  width: 46%;
  margin-left: auto;
  margin-right: 8%;
  margin-bottom: 3.2rem;
}
.concept_unit02 {
  width: 84%;
  margin: 0 auto;
}
.concept_head {
  font-size: 1.07rem;
  margin-bottom: 2.7rem;
}
.concept_title {
  font-size: 1.5rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
.concept_txt {
  font-size: 0.928rem;
  line-height: 2;
  margin-bottom: 1.8rem;
}
.concept_txt_last {
  margin-bottom: 3.1rem;
}
.concept__bottom_block {
  width: 71%;
  margin-left: auto;
  margin-right: 8%;
}
@media screen and (min-width: 768px) {
  .concept_container {
    margin-bottom: 8.5rem;
  }
  .concept_container::before {
    left: -2%;
  }
  .concept_block {
    display: flex;
    align-items: flex-start;
  }
  .concept_unit01 {
    width: 37%;
    order: 2;
    margin: 0;
  }
  .concept_unit02 {
    width: 63%;
    padding-left: 5%;
    order: 1;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .concept__bottom_block {
    margin-left: 8%;
    margin-right: auto;
  }
}
@media screen and (min-width: 992px) {
  .concept_container::before {
    font-size: 9.64rem;
    left: 2%;
  }
  .concept_unit01 {
    padding-top: 6rem;
  }
  .concept_title {
    font-size: 1.75rem;
  }
  .concept__bottom_block {
    margin-left: 8%;
    margin-right: auto;
    width: 47%;
    margin-top: -14rem;
  }
}
@media screen and (min-width: 1200px) {
  .concept_container {
    margin-bottom: 10.7rem;
  }
  .concept_container::before {
    font-size: 9.31rem;
    left: 1.1%;
    top: -0.2%;
  }
  .concept_unit01 {
    width: 30.6%;
    padding-top: 12.2rem;
  }
  .concept_unit02 {
    width: 69.4%;
    padding-left: 10%;
  }
  .concept_head {
    font-size: 1.25rem;
    margin-bottom: 5rem;
  }
  .concept_title {
    font-size: 1.875rem;
    line-height: 1.66;
    margin-bottom: 2.5rem;
  }
  .concept_txt {
    font-size: 1.0625rem;
    margin-bottom: 2.1rem;
  }
  .concept_txt_last {
    margin-bottom: 3.3rem;
  }
  .concept__bottom_block {
    margin-left: 6%;
    width: 54%;
    margin-top: -5rem;
  }
}
@media screen and (min-width: 1400px) {
  .concept__bottom_block {
    margin-top: -9rem;
  }
}
@media screen and (min-width: 1500px) {
  .concept_container::before {
    font-size: 13.31rem;
  }
  .concept__bottom_block {
    margin-top: -12rem;
  }
}
	@media screen and (min-width: 1700px) {
	  .concept__bottom_block {
    margin-top: -16rem;
  }	
}

/***************************************
other_container
***************************************/
.other_container {
  width: 90%;
  margin: 0 auto 6.6rem;
  padding: 5.45rem 0 6.7rem;
  background-color: #f5f5f5;
  /*background-color: #00f;*/
}
.other_block {
  width: 88%;
  margin: 0 auto;
}
.other_container .section_title_box {
  margin-bottom: 4.3rem;
}
.other_container .section_title span {
  font-size: 2.5rem;
}
.other_list > ul > li {
  margin-bottom: 10px;
}
.other_list > ul > li:last-child {
  margin-bottom: 0;
}
.other_item {
  display: flex;
  justify-content: space-between;
  background-color: #fff;
  color: #282828;
  padding: 0.92rem;
  transition: all 0.5s;
}
.other_item:hover {
  background-color: #1e283c;
  color: #fff;
  transition: all 0.5s;
}
.other_unit01 {
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.other_title span {
  display: block;
  font-size: 1.28rem;
  margin-bottom: 10px;
}
.other_title {
  font-size: 0.714rem;
  line-height: 1;
  text-align: center;
  margin-bottom: 0;
}
.other_unit02 {
  width: 40%;
}
@media screen and (min-width: 768px) {
  .other_container {
    width: 84%;
    margin: 0 auto 8.2rem;
    padding: 6.45rem 0 7.7rem;
  }
  .other_list > ul {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
  .other_list > ul > li {
    width: calc((100% - 20px) / 2);
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1200px) {
  .other_container {
    width: 88%;
    padding: 8.7rem 0 9.4rem;
    margin: 0 auto 8.6rem;
  }
  .other_container .section_title_box {
    margin-bottom: 5.3rem;
  }
  .other_container .section_title span {
    font-size: 3.75rem;
  }
  .other_block {
    width: 80.5%;
  }
  .other_item {
    padding: 20px;
  }
  .other_unit01 {
    width: 53%;
  }
  .other_title span {
    font-size: 1.75rem;
    margin-bottom: 1.1rem;
  }
  .other_title {
    font-size: 0.9375rem;
    padding-top: 0.5rem;
  }
  .other_unit02 {
    width: 42%;
  }
}

/***************************************

***************************************/