@charset "utf-8";
/* CSS Document */

/*** プラン ***/

.content_plan_info{
  color: #283C64;
  background: url("../images/index/content_bg01.jpg") no-repeat bottom center/cover;
}
.content_plan_info p.read{
  line-height: 2;
}

.plan_link_list{
  display: flex;
  justify-content: space-between;
  margin-top: 6rem;
}
.plan_link_list .plan_link{
  width: 48%;
  padding: 3rem;
  background-color: #fff;
  text-align: center;
  border-radius: 2rem;
}
.plan_link_list .plan_link:hover{
  opacity: 1;
}
.plan_link_list .plan_link h2{
  position: relative;
  font-size: 2.8rem;
  font-weight: 500;
  text-align: left;
}
.plan_link_list .plan_link h2::before{
  position: absolute;
  content: "";
  width: 50px;
  height: 50px;
  right:0;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid #283C64;
  border-radius: 30px;
  transition: 0.3s;
}
.plan_link_list .plan_link h2::after{
  position: absolute;
  content: "↓";
  right:12px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.plan_link_list .plan_link:hover h2::before{
  width: 58px;
  height: 58px;
  right:-4px;
  transition: 0.3s;
}
.plan_link_list .plan_link:hover h2::after{
  transform: translateY(-35%);
  transition: 0.3s;
}
  
.plan_link_list .plan_link img{
  margin-top: 6rem;
}
.plan_link_list .plan_link p{
  margin-top: 6rem;
}

.plan_details_box{
  border: 1px solid #283C64;
  padding: 6rem 4rem;
  text-align: center;
}
.plan_details_box:nth-child(2){
  margin-top: 6rem;
}
.plan_details_box .plan_details_title{
  display: flex;
  justify-content: center;
}
.plan_details_box .plan_details_title h2{
  font-size:3.8rem;
  text-align: left;
  margin-left: 5rem;
}
.plan_details_box .plan_details_title h2 span{
  display: block;
  font-size:2.8rem;
}
.plan_details_box .txt1{
  font-size: 2.0rem;
  margin-top: 3rem;
}
.plan_details_box .txt1 strong{
  font-size: 2.8rem;
}
.plan_details_box .txt2{
  font-size: 2.8rem;
  margin-top: 1rem;
  font-weight: 500;
}
.plan_details_box .txt2 strong{
  font-size: 5.2rem;
}
.plan_details_box .txt3{
  font-size: 1.8rem;
  margin-top: 2rem;
}
.plan_details_box dl{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 3rem
}
.plan_details_box dl dt{
  width: 13rem;
  background-color: #283C64;
  color: #fff;
  font-weight: 700;
  line-height: 3.9rem;
  margin-right: 3rem;
}
.plan_details_box dl dd{
  text-align: left;
}
.plan_details_box .txt4{
  margin-top: 6rem;
  font-weight: 700;
  border-bottom: 1px solid #283C64;
  text-align: left;
  padding-bottom: 1rem;
}
.plan_details_list{
  display: flex;
  justify-content: space-between;
  margin-top: 4rem;
}
.plan_details_list li{
  position: relative;
  width: 23%;
}
.plan_details_list li .plan_details_list_head{
  height: 15rem;
}
.plan_details_list li .plan_details_list_head .step_no{
  text-align: left;
  color: #283C64;
}
.plan_details_list li .plan_details_list_head img{
  margin-top: 1rem;
}
.plan_details_list li .plan_details_explanation{
  background-color: #283C64;
  color: #fff;
  padding: 1rem 1rem;
  min-height: 10rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.plan_details_list li::after{
  position: absolute;
  content: "";
  width: 1.6rem;
  height: 4rem;
  right: -1.6rem;
  top: 6rem;
  background: url("../images/common/arrow_right_blue2.svg") no-repeat right center/contain;
}
.plan_details_list li:last-child::after{
  display: none;
}
.plan_details_box .tokuten{
  display: inline-block;
  background: linear-gradient(to left, #D5F0F8, #DDD9EB);
  padding: 0.5rem 5rem;
  border-radius: 3rem;
  font-weight: 500;
  margin-top: 3rem;
}
.plan_details_box .tokuten strong{
  font-size: 2.8rem;
}
.plan_details_box small{
  font-size: 1.2rem;
}
.attention_txt{
  width: 90%;
  margin: 3rem auto 0;
}
.attention_box{
  width: 85%;
  height: 200px;
  overflow-y: scroll;
  border: 1px solid #E2E8EB;
  padding: 2rem;
  margin: 3rem auto 0;
}
.attention_box p{
  margin-top: 3rem;
}
.attention_box p:first-child{
  margin-top: 0;
}

.photos .container{
  max-width: 112rem;
  padding: 6rem 2rem;
}
.photos ul{
  display: flex;
}

@media screen and (max-width: 768px) {

  .plan_link_list{
    flex-flow: column;
  }
  .plan_link_list .plan_link{
    width: 100%;
    padding: 2rem;
  }
  .plan_link_list .plan_link:last-child{
    margin-top: 2rem;
  }
  .plan_link_list .plan_link h2 {
    font-size: 1.8rem;
    text-align: left;
  }
  
  .plan_link_list .plan_link h2::before{
    width: 28px;
    height: 28px;
  }
  .plan_link_list .plan_link h2::after{
    right:6px;
  }
  .plan_link_list .plan_link:hover h2::before{
    width: 32px;
    height: 32px;
    right:-4px;
  }
  .plan_link_list .plan_link:hover h2::after{
    right:4px;
  }
  .plan_link_list .plan_link_info{
    display: flex;
    margin-top: 2rem;
  }
  .plan_link_list .plan_link img {
    margin-top: 0;
    width: 5.7rem;
    margin-right: 1rem;
  }
  .plan_link_list .plan_link p {
    margin-top: 0;
    text-align: left;
  }
  
  .plan_details_box {
    padding: 3rem 2rem;
  }
  .plan_details_box .plan_details_title {
    flex-flow: column;
  }
  .plan_details_box .plan_details_title img{
    width: 5.7rem;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .plan_details_box .plan_details_title h2 {
    font-size: 2.4rem;
    text-align: center;
    margin-left: 0;
    margin-top: 2rem;
  }
  .plan_details_box .plan_details_title h2 span {
    font-size: 1.8rem;
    font-weight: 500;
  }
  .plan_details_box .txt1 {
    font-size: 1.4rem;
    margin-top: 2rem;
  }
  .plan_details_box .txt1 strong {
    font-size: 2.2rem;
  }
  .plan_details_box .txt2 {
    font-size: 1.6rem;
  }
  .plan_details_box .txt2 strong {
    font-size: 3.2rem;
  }
  .plan_details_box .txt3 {
    font-size: 1.4rem;
    margin-top: 1rem;
  }
  .plan_details_box dl dt {
    font-size: 1.3rem;
    min-width: 8rem;
    max-width: 8rem;
    font-weight: 500;
    line-height: 2.4rem;
    margin-right: 1rem;
  }
  .plan_details_box dl dd {
    font-size: 1.3rem;
  }
  .plan_details_box .txt4 {
    margin-top: 3rem;
    font-size: 1.4rem;
  }
  .plan_details_list {
    flex-flow: column;
    margin-top: 2rem;
  }
  .plan_details_list li{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
  }
  .plan_details_list li .plan_details_list_head{
    width: 10rem;
    margin-right: 2rem;
  }
  .plan_details_list li .plan_details_list_head .step_no {
    font-size: 2.0rem;
  }
  .plan_details_list li .plan_details_explanation{
    width: 100%;
    padding: 0;
    min-height: 7rem;
  }
  .plan_details_list li::after {
    width: 1.6rem;
    height: 4rem;
    right: auto;
    left: 50%;
    top: auto;
    bottom: -2.5rem;
    transform: translateX(-50%) rotate(90deg);
  }
  .plan_details_list li:nth-child(1) .plan_details_list_head img{
    width: 3.76rem;
    height: 6.02rem;
  }
  .plan_details_list li:nth-child(4) .plan_details_list_head img{
    width: 5.71rem;
    height: 4.99rem;
  }
  
  .plan_details_box .tokuten {
    font-size: 1.4rem;
    display: block;
    padding: 0.5rem 0;
    margin-top: 2rem;
    margin-bottom: 1rem;
  }
  .plan_details_box .tokuten strong{
    font-size:2.6rem;
  }
  
  .attention_txt,
  .attention_box{
    width: 100%;
  }
  .photos .container {
    padding: 3rem 2rem;
  }
  
}

.container ul li {
	padding-right:5px;
}

/*240921チラシ挿入*/
.image-container-chirashi {
  display: flex; /* フレックスボックスを使用 */
  flex-wrap: wrap; /* 横幅を超えた場合に折り返す */
  gap: 10px; /* 画像間の隙間 */
	margin-top:50px;
	justify-content: center; 
}

.image-container-chirashi a {
  flex: 1 1 50%; /* リンク要素に対してフレックスボックスを適用 */
  max-width: calc(50% - 10px); /* PCサイズでは3分割して隙間を調整 */
  text-decoration: none; /* リンクの下線を消す */
}

.image-container-chirashi img {
  width: 100%; /* 画像の幅をリンク要素に合わせる */
  height: auto; /* 画像の高さを自動調整 */
}

/* PCサイズ（例: 768px以上）のときは横並び */
@media (min-width: 768px) {
  .image-container-chirashi {
    flex-direction: row; /* 横並び */
  }
}

/* スマホサイズ（例: 768px以下）のときは縦並び */
@media (max-width: 767px) {
  .image-container-chirashi {
    flex-direction: column; /* 縦並び */
    align-items: center; /* 中央揃え */
  }

  .image-container-chirashi a {
    max-width: 100%; /* 幅を親要素に合わせる */
  }
}
