@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');
.hummenu ul li.land_readjustment::before {
	width: 50% !important;
}
html { scroll-behavior: smooth; }
/* common */
.top_en_ttl{
	font-family: linotype-didot, serif;
	font-weight: 400;
	font-style: normal;
	text-transform: uppercase;
	text-align: center;
	letter-spacing: 0.4em;
	font-size: 26px;
}
main {
	color: #38383a;
}
/* .mv_area {
	margin-bottom: 130px;
} */

.com_inner_1625 {
	max-width: 1625px;
    padding: 130px 20px 120px;
    margin: 0 auto;
    background-color: #fff;
}


.txt_box_landtop {
    margin-bottom: 60px;
}
.txt_yellow {
	color: #978a62;
}



.rea_sec_lead01 {
    font-size: 20px;
    text-align: center;
    line-height: 2;
	text-align: center;
}
.rea_sec_ttl01 {
    font-size: 28px;
    text-align: center;
    margin-bottom: 40px;
    letter-spacing: 0.25em;
    line-height: 2;
}
.rea_sec_ttl01 span{
	font-size: 36px;
	color: #af8e52;
}
.rea_sec_ttl02{
	font-size: 28px;
	padding-top: 30px;
	text-align: center;
	line-height: 1.5;
}
.rea_sec_ttl02 span{
	color: #af8e52;
}
.rea_sec_ttl02 span.l2_2{
	font-size: 34px;
}
.payment-section {
    background-color: #f8ece9;
    position: relative;
    overflow: hidden;
	border-radius: 20px;
  }
.bg_gy{
	background-color: #eaf0ea;
}
.bg_by{
	background-color: #eaf2f6;
}
  /* ヘッダー部分（ピンク背景） */
  .payment-header {
    background-color: #c65a5e;
    padding: 28px 36px 32px;
    /* グラフ分の余白を右に確保 */
    padding-right: calc(44% + 20px);
  }
.bg_green{
	background: #299369;
}
.bg_blue{
	background-color: #1b98b6;
}
  .payment-header h2 {
    color: #fff;
    font-size: clamp(20px, 3.4vw, 38px);
    line-height: 1.35;
    margin: 0;
    letter-spacing: 0.02em;
  }

  /* メインコンテンツエリア */
  .payment-body {
    padding: 28px 36px 98px 36px;
    padding-right: calc(37% + 5px);
  }
 .payment-body.riyu2{
	padding-bottom: 10%;
}
  /* 左テキスト */
  .payment-lead {
    font-size: clamp(16px, 2vw, 21px);
    font-weight: 700;
    color: #222;
    line-height: 1.6;
    margin: 0 0 10px;
  }

  .payment-lead .highlight-pink {
    color: #c65a5e;
	  font-size: 28px;
  }
.payment-lead .highlight-pink.fc_green{
	color: #299369;
}
.payment-lead .highlight-pink.fc_blue{
	color: #1b98b6;
}
  .payment-lead .highlight-strong {
    color: #c0185a;
    font-weight: 900;
  }

  /* 区切り線 */
  .payment-divider {
    display: flex;
    align-items: center;
    margin: 12px 0 14px;
  }

  /*.payment-divider::before {
    content: '✿';
    color: #b8356a;
    font-size: 14px;
    flex-shrink: 0;
  }*/

  .payment-divider::after {
    content: '';
    display: block;
    flex: 1;
    height: 1px;
    background: #000;
  }

  /* 本文 */
  .payment-desc {
    font-size: clamp(14px, 1.4vw, 18px);
    color: #333;
    line-height: 1.5;
    margin: 0;
	padding-right: 80px;
  }

  .payment-desc .marker {
    background: linear-gradient(transparent 50%, #ffff00 50%);
	font-size: 20px;
	 font-weight: 600;
  }

  /* 右グラフ：セクション右上に絶対配置 */
  .payment-chart-wrap {
    position: absolute;
    top: 12px;
    right: 20px;
    width: 43%;
    max-width: 440px;
  }

  /* 黒丸バッジ（absolute） */
  .payment-badge-fallback {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 80px;
    height: 80px;
    background: #1a1a1a;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    text-align: center;
    color: #fff;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.5;
    padding: 4px;
    box-sizing: border-box;
  }

  .payment-badge {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 80px;
    height: 80px;
    z-index: 3;
  }

  /* グラフ画像 */
  .payment-chart-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
  }
.rea_img5{
	display: block;
	max-width: 1200px;
	margin: 100px auto;
	width: 100%;
}
.rea_note{
	font-size: 10px;
	padding-bottom: 10px;
	text-align: right;
}
.riyu{
	width: 300px;
	display: block;
	margin: 50px auto 30px;
}
.foot_cv_item.raijou.rea_raijo {
    display: block;
    margin: 0 auto;
	font-size: 28px;
}
.payment-chart-wrap.wrap3 {
    top: 40px;
}
.map2{
	margin: 50px auto;
}
 @media (max-width: 1000px) {
	 .payment-body{
		 padding-right: calc(45% + 5px);
	 }	 
}
  /* ===== スマホ ===== */
  @media (max-width: 768px) {
    

    .payment-header {
      padding: 22px 20px 26px;
    }

    .payment-body {
      padding: 24px 20px 28px;
      /* グラフ分余白をリセット */
      padding-right: 20px;
    }

    /* グラフをstaticに戻して下に積む */
    .payment-chart-wrap {
      position: static;
      width: calc(100% - 16px);
      max-width: 100%;
      margin: 0 auto 28px;
    }
	
    .payment-badge-fallback {
      width: 68px;
      height: 68px;
      font-size: 9.5px;
      top: -8px;
      left: -6px;
    }

    .payment-badge {
      width: 68px;
      height: 68px;
      top: auto;
      left:0px;
    }
	  .payment-lead .highlight-pink {
		  font-size: 24px;
	  }
	  .payment-desc{
		  padding-right: 0; 
	  }
	  .payment-lead{
		  line-height: 1.4;
	  }
	  .payment-desc .marker{
		  font-size: 16px;
	  }
	  .rea_note{
		  text-align: left;
	  }
	  .rea_img5{
		  margin: 50px auto;
	  }
	  .foot_cv_item.raijou.rea_raijo{
		  font-size: 20px;
	  }
  }

.mb60 {
	margin-bottom: 60px;
}
.mb70 {
	margin-bottom: 70px;
}
.col2_flex_box02 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-end;
}
.dn1250 {
	display: none;
}
.db550 {
	display: none;
}
.db768 {
	display: none;
}
.db850 {
	display: none;
}
.db1150 {
	display: none;
}
.dn1150 {
	display: block;
}
.dn1000 {
	display: block;
}
.mb20 {
    margin-bottom: 20px;
}



@media(max-width: 1300px){
}

@media(max-width: 1250px){
	.dn1250 {
		display: none;
	}
}
@media(max-width: 1210px){
	.dn1210 {
		display: none;
	}
    .land_sec_ttl01 {
        font-size: 23px;
        margin-bottom: 20px;
    }
	.land_sec_ttl02 {
		font-size: 18px;
		margin-bottom: 20px;
		text-align: center;
	}
	.rea_sec_lead01 {
        font-size: 14px;
    }
	.land_sec_lead02 {
		font-size: 12px;
		margin-bottom: 30px;
	}
	.kukaku_ttl {
		font-size: 13px;
	}
	.mg_border {
		margin: 60px 0;
	}
	.mb20 {
		margin-bottom: 10px;
	}
	.land_sec_lead02.mb0_1210 {
		margin-bottom: 0;
	}
}



@media(max-width: 1150px){
	.col2_flex_item01a {
		width: 100%;
	}
	.col2_flex_item02a {
        width: 100%;
        margin-top: 40px;
        max-width: 650px;
        margin: 40px auto 0;
	}
	.wd100 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
		margin-top: 20px;
		gap: 10px;
	}
	.wd165 {
		/* max-width: 225px; */
		width: 48%;
		margin: 0 
	}
	.wd95 {
		/* width: 32.9%; */
		width: 48%;
        max-width: 262px;
		margin-bottom: 0;
	}
	.db1150 {
		display: block;
	}
	.dn1150 {
		display: none;
	}
}

@media(max-width: 1040px){
	/* .mv_area {
		margin-bottom: 90px;
	} */
	 .com_inner_1625 {
        max-width: 1625px;
        padding: 90px 0 80px;
        margin: 0 auto;
        background-color: #fff;
	}
	.txt_box_landtop {
        margin-bottom: 40px;
    }
	
@media(max-width: 1000px){
	.col2_flex_item01 {
        width: 100%;
        max-width: 480px;
        margin: 40px auto 0;
	}
	.col2_flex_item02 {
        width: 100%;
        margin: 0 auto;
        max-width: 650px;
	}
	.col2_flex_item03 {
		width: 100%;
		max-width: 650px;
		margin: 0 auto;
	}
	.col2_flex_item04{
		width: 100%;
		max-width: 650px;
        margin: 40px auto 0;
	}
	.col2_flex_item01b {
		width: 100%;
		max-width: 650px;
        margin: 40px auto 0;
	}

	.col3_flex_box {
		margin-bottom: 0;
	}
	.dn1000 {
		display: none;
	}
}
@media(max-width: 850px){
	.db850 {
		display: block;
	}
}
@media(max-width: 768px){
	.db768 {
		display: block;
	}
}
@media(max-width: 650px){
	/* .mv_area {
		margin-bottom: 70px;
	} */
	.rea_sec_ttl01 {
        font-size: 18px;
        line-height: 1.8;
        margin-bottom: 15px;
    }
	.land_sec_ttl02 {
		font-size: 14px;
		margin-bottom: 15px;
	}
	.rea_sec_lead01 {
        font-size: 13px;
    }
	.kukaku_ttl {
		font-size: 12px;
	}
	.mg_border {
		margin: 40px 0;
	}
	.col3_flex_item {
		width: 100%;
		margin-bottom: 20px;
	}
	.col3_flex_item:last-child {
		margin-bottom: 0;
	}
	/* .db650_mt40 {
		margin-top: 40px;
	} */
	.mb20 {
        margin-bottom: 5px;
    }
	.wd165 {
		/* max-width: 225px; */
		width: 48%;
		margin: 0 
	}
	.wd95 {
		/* width: 32.9%; */
		width: 48%;
        max-width: 262px;
	}
    .wd95 {
        width: 100%;
        max-width: 446px;
        margin-top: 20px;
    }
	.wd100 {
		gap: 0;
	}
}
@media(max-width: 550px){
	.db550 {
		display: block;
	}
}

