/*============================================
============================================*/

@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

:root {
    --key-color1: #0B8100;
    --key-color2: #9CC31B;

    --logo-color1: #EA607A;
    --logo-color2: #002B60;
    --logo-color3: #00A100;

    --font-size-html: 16px; 
    --font-size-body: 0.875rem; 
    --font-size-9: 0.5625rem; /* 9px */
    --font-size-10: 0.625rem; /* 10px */
    --font-size-11: 0.6875rem; /* 11px */
    --font-size-12: 0.75rem; /* 12px */
    --font-size-13: 0.8125rem; /* 13px */
    --font-size-14: 0.875rem; /* 14px */
    --font-size-15: 0.9375rem; /* 15px */
    --font-size-16: 1rem; /* 16px */
    --font-size-17: 1.0625rem; /* 17px */
    --font-size-18: 1.125rem; /* 18px */
    --font-size-19: 1.1875rem; /* 19px */
    --font-size-20: 1.25rem; /* 20px */
    --font-size-21: 1.3125rem; /* 21px */
    --font-size-22: 1.375rem; /* 22px */
    --font-size-23: 1.4375rem; /* 23px */
    --font-size-24: 1.5rem; /* 24px */
    --font-size-25: 1.5625rem; /* 25px */
    --font-size-26: 1.625rem; /* 26px */
    --font-size-27: 1.6875rem; /* 27px */
    --font-size-28: 1.75rem; /* 28px */
    --font-size-29: 1.8125rem; /* 29px */
    --font-size-30: 1.875rem; /* 30px */
}

/* init */
html { font-size: var(--font-size-html); /*scroll-behavior: smooth;*/ }
body { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: <weight>; font-style: normal; }
body * { box-sizing: border-box; }
body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,figure { margin:0; padding:0; list-style:none; }
h1,h2,h3,h4,h5 { font-weight:600; }
a { text-decoration:none; color:#333333; transition: all,0.2s; }
img { width: 100%; vertical-align: top; }
em { font-style: normal; font-weight: bold; }
p { line-height: 2; }

.dis_pc { display:block; }
.dis_sp { display:none; }

[data-font="gl-ft"] { font-family: "Zen Maru Gothic", serif; font-weight:540; }
[data-cl-sw="cl1"] { color:var(--key-color1); }
[data-cl-sw="cl2"] { color:var(--key-color2); }

/* hdg */
.hdg_l1 { text-align:center; color:var(--key-color1); margin:0 auto 20px; }
.hdg_l1 span { padding-bottom: 5px; display:inline-block; border-bottom:2px solid var(--key-color2);line-height:1.6; }
.hdg_l2 { font-size:var(--font-size-26); }
.hdg_l3 { font-size:var(--font-size-23); text-align:center; }

/* nav */
.nav { border-radius: 10px; overflow: hidden; background: linear-gradient(to right, rgba(156,195,27,1) 0%, rgba(11,129,0,1) 100%); }
.nav a { padding: 20px 20px 22px; display: block; color: white; font-size:var(--font-size-17); position:relative; transition:0.2s; }
.nav a::after { content: url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/icon_arrow_01.svg); position:absolute; top:calc(50% - 11px); right:15px; }
.nav a:hover { background-color:var(--key-color1); }

/* header 
.header > * { position:absolute; z-index:10; }
.header_logo { left:0; top:0; background-color:white; padding:25px 25px 5px 20px; border-radius:0 0 20px; box-shadow: 0px 0px 15px -10px #777777; }
.header_links { right:40px; top:30px; }
.header_links_list > * { display:inline-block; }
.header_links_list a { color:white; font-size:var(--font-size-14); transition:0.2s; line-height: 26px; }
.header_links_list a:hover { opacity:0.6; }
.header_links_list li + li { margin-left:20px; }
.header_links_list li:first-child a::before,
.header_links_list li:last-child a::before { display: inline-block; height: 26px; vertical-align:bottom; margin-right:10px; }
.header_links_list li:first-child a::before { content:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/icon_nav01.svg); }
.header_links_list li:last-child a::before { content:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/icon_nav02.svg); }
*/
/* main_mv */
.main_wrap { background: url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/bg_main.png) no-repeat center top -100px / 1050px auto,linear-gradient(to right, rgba(156,195,27,1) 0%, rgba(11,129,0,1) 100%); }
.main_mv { max-width: 1242px; margin: 0 auto -50px; position: relative; width: 100%; padding: 110px 0 75px; /*background:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/bg_mv.png) no-repeat center bottom / 1200px auto;*/ }
.main_mv_hdg { text-align:center; }
.main_mv_hdg_r { font-size:var(--font-size-26); display:block; margin-bottom:10px;line-height: 1.6;color:#a2181f; }
.main_mv_hdg_s { font-size:var(--font-size-22); display:block; margin-bottom:10px;line-height: 1.8; }
.main_mv_hdg_b { font-size:2.5rem; color:var(--key-color1);line-height: 2; }
.main_mv_hdg_b b { font-size:3.4375rem; display:block; line-height:1.3; font-weight:600; }
.main_mv_img { position:absolute; bottom:5px; left: 5%; width:380px; transition:0.3s; }
.main_mv_img:hover { opacity:0.7; }

/* arrow */
.scrolldown { position:absolute; left:10px; bottom:45px; z-index:3; transform: rotate(90deg); font-size:9px; }
.scrolldown::before{ content: ""; position: absolute; top: 20px; left: 0; width: 130px; height: 1px; background: white; animation: pathmove 2s ease-in-out infinite; opacity:0; }
.scrolldown::after{ content: ""; position: absolute; top: 17px; left: -8px; width: 10px; height: 1px; background: white; transform: rotate(30deg); animation: pathmove2 2s ease-in-out infinite; }
.scrolldown b { position: relative; left:0; animation: pathmove3 2s ease-in-out infinite; opacity:0; color:white; }
@keyframes pathmove {
    0%{ width:0; opacity:0; left: -10px; }
    80%{ width:110px; opacity:1; left: 0; }
    100%{ width:110px; opacity:0; left: 20px; }
}
@keyframes pathmove2 {
    0%{ left: -18px; opacity:0; }
    80%{ left: 100px; opacity:1; }
    100%{ left: 120px; opacity:0; }
}
@keyframes pathmove3 {
    0%{ left: 0; opacity:0; }
    80%{ left: 5px; opacity:1; }
    100%{ left: 10px; opacity:0; }
}

/* news */
.news { position: relative; top: 50px; max-width: 1150px; margin: 0 auto; padding: 30px 50px; background-color: rgba(255, 255, 255, 0.9); }
.news li { font-size:var(--font-size-14); font-weight:700; position:relative; padding-left:30px; }
.news li::before { content:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/icon_news.svg); position:absolute; left:0; top:0; }
.news li + li { margin-top:10px; }
.news a { color:var(--key-color1); text-decoration:underline; }

/* service */
.service { padding-top: 50px; background: linear-gradient(to bottom,  rgba(255,255,255,0.7) 0%,rgba(255,255,255,1) 38%,rgba(255,255,255,1) 100%); }
.service_lead { font-size:var(--font-size-18); line-height:1.8; text-align:center;margin-bottom: 70px;font-weight: 500; }
.service_lead b { font-size:var(--font-size-20); color:var(--key-color1); }
.service_area { background:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/bg_line.svg) no-repeat center top 16px; margin:70px auto 40px; padding:100px 50px;font-size: 16px; }
.service_area_inner { display:flex; max-width:1150px; margin: 0 auto; gap:20px; }
.service_area_inner > * { width:calc(100% / 3); }
.service_box { position:relative; }
.service_box::before { position: absolute; content:""; width:14px; height:14px; border-radius:50%; top:-65px; left:calc(50% - 7px); }

.service_box[data-cl="sv1"]::before { background-color:var(--logo-color1); }
.service_box[data-cl="sv2"]::before { background-color:var(--logo-color2); top:-90px; }
.service_box[data-cl="sv3"]::before { background-color:var(--logo-color3); }

.service_logo { margin-bottom:45px; }
.service_txt { background-color:#F5F5F5; padding:30px 35px 25px; position:relative; border-radius:10px; }
.service_txt::before { position:absolute; top: -25px; left: calc(50% - 15px); content:""; background: #F5F5F5;
  height: calc(tan(60deg) * 30px / 2);
  width: 30px;
  clip-path: polygon(50% 0, 100% 100%, 0 100%); }
.service_txt > p { line-height:1.4; letter-spacing:1px; margin-bottom:15px; }

/* cv */
.service_rel { background:url(/common-id/img/bg_circle.svg) no-repeat right bottom var(--key-color1); padding:50px 50px; }
.service_rel .hdg_l2 { text-align:center; color:white; margin-bottom:30px; font-weight:500; }
.service_rel .service_area { display:flex; background:none; max-width:1150px; margin: 0 auto; gap:20px; padding:0; }
.service_rel .service_box { width: calc(100% / 3); position:relative; background-color:white; border-radius:10px; padding:30px; }
.service_rel .service_logo { margin-bottom:15px; }
.service_rel .service_txt { background-color:none; padding:0; }
.service_rel .service_txt::before,
.service_rel .service_box::before { content:initial; }

/* nav */
.sup_nav { background: linear-gradient(to right, rgba(156,195,27,1) 0%, rgba(11,129,0,1) 100%); padding:30px 50px; }
.sup_nav_list { display:flex; max-width:1150px; margin: 0 auto; gap:30px; }
.sup_nav_list li { width:50%; }
.sup_nav_list li a { position: relative; display: block; background-color:white; padding:40px 40px; border-radius:10px; font-size:var(--font-size-20); font-weight:bold; color:var(--key-color1); transition:0.2s; }
.sup_nav_list li a::after { content: url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/icon_arrow_02.svg); position: absolute; right:20px; top:calc(50% - 20px); }
.sup_nav_list li a:hover { color:white; background-color:var(--key-color1); }

/* guide */
.guide { padding:100px 0; background: linear-gradient(to top, rgba(156,195,27,1) 0%, rgba(69,155,57,1) 100%); }
.guide .hdg_l1 { margin-bottom:90px; }
.guide .hdg_l1 span { color:white; border-color:white; }
.guide_hdg { position: relative; top: -30px; padding:15px 20px; background-color:var(--key-color1); color:white; margin:0 10%; border-radius:200px; text-align:center; margin-bottom:30px; }
.guide_hdg_s { font-size:var(--font-size-23); text-align:center; background-color:#FAFAFA; margin-bottom:5px; }
.guide_hdg_s span { display: inline-block; padding-bottom: 6px; border-bottom:1px solid var(--key-color1); }
.guide_hdg_s[data-cl-sw="cl2"] span { border-color:var(--key-color2); font-weight:600; }
.guide_hdg_s_t2 { font-size:var(--font-size-23); text-align:center; background-color:#FAFAFA; margin: 100px auto 10px; color:#059088; }

.guide_inner { max-width:1150px; margin:0 auto; border-radius:20px; background-color:#FAFAFA; padding-bottom:80px; box-shadow: 0px 0px 20px -10px #777777; }
.guide_list_inner h5 { font-size:var(--font-size-22); color:var(--key-color1); margin-bottom:10px; line-height: 1.6; }
.guide_list_inner p { font-size:var(--font-size-16); line-height:1.8; }
.guide_list { position:relative;margin-top:65px; }
.guide_list::before { content: ""; position:absolute; left:50%; top:-50px; height:100%; width:1px; background-color:var(--key-color1); }
.guide_list li { display:flex; gap: 140px; padding:0 100px; }
.guide_list li:last-child { background-color:#FAFAFA; position:relative; z-index:1; }
.guide_list li + li { margin-top:30px; }
.guide_list li > * { width:50%; }
.guide_list_inner { position:relative; }
.guide_list + .guide_hdg_s { margin-top:60px; }

.guide_icon_num { position:absolute; left: -124px; top: -14px; font-size:var(--font-size-18); width:110px; height:110px; border-radius:50%; line-height:1; padding-top: 18px; background-color:var(--key-color1); color:white; text-align:center; font-weight:500; border:15px solid #FAFAFA; }
.guide_icon_num span { display:block; font-size:var(--font-size-30); line-height:1; font-weight:bold; }
.guide_img { position:relative; }
.guide_img img { border-radius:10px; border:2px solid var(--key-color1); }
.guide_img::after { display: block; position: absolute; top: 35px; right: -14px; content:""; height:14px; width: 14px; clip-path: polygon(0% 0, 100% 50%, 0 100%); background-color:var(--key-color1); }
.guide_txt { margin: 30px 100px 0; font-weight:550; font-size:var(--font-size-18); }

.guide_inner + .guide_inner { margin-top:80px; }
.guide_inner + .guide_inner .guide_hdg,
.guide_inner + .guide_inner .guide_list::before,
.guide_inner + .guide_inner .guide_img::after,
.guide_inner + .guide_inner .guide_icon_num { background-color:var(--key-color2); }
.guide_inner + .guide_inner .guide_img img { border-color:var(--key-color2); }
.guide_inner + .guide_inner .guide_list_inner h5 { color:var(--key-color2); }

/* gift */
.gift { background: linear-gradient(to right, rgba(11,129,0,1) 0%, rgba(11,129,0,1) 49.55%, rgba(156,195,27,1) 49.56%), rgba(156,195,27,1) 100%; }
.gift_inner { position: relative; max-width: 1100px; background-color:white; margin:0 auto; padding:60px 100px 100px; }
.gift_inner::before,
.gift_inner::after  { position:absolute; content:""; display:block; }
.gift_inner::before { left: 0; top: 0; height:130px; width: 130px; clip-path: polygon(0% 0, 100% 0%, 0 100%); background-color:var(--key-color1); }
.gift_inner::after { right: -1px; bottom: 0; height:130px; width: 130px; clip-path: polygon(100% 0, 100% 100%, 0 100%); background-color:var(--key-color2); }
.gift_inner .hdg_l1 { margin-left:-30px; }
.gift_box { display:flex; align-items: center; margin-bottom:30px; }
.gift_box h3 { width:200px; text-align:center; background-color:var(--key-color1); font-size: var(--font-size-18); color:white; padding:15px 10px; line-height:1; border-radius:10px; }
.gift_box p { width:calc(100% - 200px); padding-left:30px; font-weight:bold; font-size:var(--font-size-30); line-height:1.6; text-align:center; color:var(--key-color1); font-feature-settings: "palt"; }
.gift_lead { font-size:var(--font-size-18); font-weight:500; line-height:1.8; margin-bottom:15px; }
.gift_list li { font-size:var(--font-size-14); }
.gift_list li + li { margin-top:4px; }
.gift_service { background-color:#F4F3EF; text-align:center; padding:20px; margin:25px 0 40px; }
.gift_service h3 { color:var(--key-color1); font-size:var(--font-size-18); }
.gift_service p { font-size:var(--font-size-18); font-weight:500; }
.gift_detail dt { font-size:var(--font-size-20); border-bottom:2px solid var(--key-color2); font-weight:bold; padding-bottom:8px; margin-bottom:15px; }
.gift_detail dd { font-weight:500; }
.gift_detail dd + dt { margin-top:30px; }
.gift_detail dd:last-child { font-size:var(--font-size-14); font-weight:normal; line-height:1.7; }

/* id-guide */
    .id-guide { background: #fff; padding: 20px 16px 30px; box-sizing: border-box; color: #222; }
    .id-guide__inner { max-width: 1150px; margin: 0 auto 100px; }
    .id-guide__columns { display: flex; gap: 20px; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; }
    .id-guide__box { width: calc((100% - 20px) / 2); box-sizing: border-box; display: flex; flex-direction: column; }
    .id-guide__link { display: flex; align-items: center; justify-content: center; position: relative; height: 120px; padding: 0 68px 0 24px; border: 3px solid #3c9d2f; border-radius: 10px; color: #FFFFFF; text-decoration: none; font-weight: 700; font-size: var(--font-size-22); line-height: 1.4; box-sizing: border-box; background: #3c9d2f; transition: background-color 0.2s ease, opacity 0.2s ease; }
    .id-guide__link:hover { background: #1d5e14;opacity: 0.95; color: #FFFFFF; }
    .id-guide__link:focus { outline: 3px solid #268d05; outline-offset: 3px; color: #FFFFFF; background: #268d05; }
    .id-guide__link-text { text-align: center; }
    .id-guide__link-icon { position: absolute; right: 18px; top: 50%; transform: translateY(-50%); width: 48px; height: 48px; border-radius: 50%; background: #FFFFFF; display: flex; align-items: center; justify-content: center; box-sizing: border-box; flex: 0 0 auto; }
    .id-guide__link-icon::before { content: ""; display: block; width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 14px solid #db3182; margin-top: 2px; }
    .id-guide__text { padding: 14px 0 0; font-weight: 500; line-height: 1.9; text-align: center; color: #222; font-size: 18px; }
    .id-guide__text strong { font-weight: 700; }
    .id-guide__bottom { margin-top: 36px; text-align: center; }
    .id-guide__bottom-link { display: inline-flex; align-items: center; justify-content: center; min-width: 520px; min-height: 60px; padding: 14px 28px; background: #FFFFFF; color: #3c9d2f; text-decoration: none; font-weight: 700; font-size: 1.35rem; line-height: 1.4; border-radius: 999px; border: 5px solid #3c9d2f; box-sizing: border-box; transition: background-color 0.2s ease, opacity 0.2s ease; }
    .id-guide__bottom-note { margin-top: 14px; text-align: center; font-weight: 500; line-height: 1.8; color: #222; font-size: 18px; }
    .id-guide__bottom-note a { text-decoration: underline !important; color: #0062b2; }

/* cta */
  .cta-wrap { 
    text-align: center;
    padding: 20px 16px;
    margin: 40px auto 30px;
}
  .cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    max-width: 640px;
    min-height: 120px;
    padding: 18px 25px 18px 28px; /* 右側にアイコン分の余白 */
    background: #2f9e1d;
    color: #fff;
    text-decoration: none;
    border-radius: 18px;
    box-sizing: border-box;
    font-size: 1.45rem;
    font-weight: 700;
    line-height: 1.4;
    transition: background-color 0.2s ease, transform 0.2s ease;
  }
  .cta-btn:hover {
    background: #238013;
    transform: translateY(-1px);
    color: #FFFFFF;
  }
  .cta-btn:focus {
    outline: 3px solid #8bd47c;
    outline-offset: 4px;
  }
  .cta-btn__text {
    display: inline-block;
    margin-right: 18px;
    text-align: center;
    font-size:24px;
  }
  .cta-btn__arrow {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 700;
  }
 .cta-btn__icon {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #06410b;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    flex: 0 0 auto;
  }
  /* 右向き三角 */
  .cta-btn__icon::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 14px solid #fff;
    margin-left: 3px;
  }

/* cta2 */
  .cta2-wrap_bottom {
  margin-bottom:100px;
  padding-bottom:50px;
}
  .cta2-wrap {
    text-align: center;
    padding: 20px 16px;
    margin: 40px auto 0;
}
  .cta2-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
    max-width: 640px;
    min-height: 120px;
    padding: 18px 25px 18px 28px; /* 右側にアイコン分の余白 */
    background: #85ab07;
    color: #fff;
    text-decoration: none;
    border-radius: 18px;
    box-sizing: border-box;
    font-size: 1.45rem;
    font-weight: 700;
    line-height: 1.4;
    transition: background-color 0.2s ease, transform 0.2s ease;
  }
  .cta2-btn:hover {
    background: #238013;
    transform: translateY(-1px);
    color: #FFFFFF;
  }
  .cta2-btn:focus {
    outline: 3px solid #8bd47c;
    outline-offset: 4px;
  }
  .cta2-btn__text {
    display: inline-block;
    margin-right: 18px;
    text-align: center;
    font-size:24px;
  }
  .cta2-btn__arrow {
    display: inline-block;
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 700;
  }
 .cta2-btn__icon {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #06410b;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    flex: 0 0 auto;
  }
  /* 右向き三角 */
  .cta2-btn__icon::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 14px solid #fff;
    margin-left: 3px;
  }

/* faq */
.faq { padding-top:90px; }
.faq .service_rel { margin-top: 80px; }
.faq_inner { max-width:1050px; margin:60px auto 0; background:#ECF2EA; border-radius:10px; padding:60px 100px; }

.faq_list { margin-top:10px; }
.faq_list dt { margin-bottom:10px; }
.faq_list dd { padding: 10px 30px 15px 60px; margin-bottom:10px;font-size: 16px; }
.faq_list button { position: relative; display: block; width: 100%; text-align: left; background:white; border:none; border-radius:200px; padding:15px 25px 15px 60px; font-weight:bold; font-size:var(--font-size-16); cursor: pointer; }
.faq_list button::before { content: "Q"; font-size: var(--font-size-28); color: var(--key-color1); position:absolute; left:20px; top:calc(50% - 23px); font-family: "Zen Maru Gothic", serif; font-weight:bold; }
.faq_list button::after { content: "＋"; font-size: var(--font-size-18); position:absolute; right:20px; top:calc(50% - 13px); font-family: "Zen Maru Gothic", serif; font-weight:bold; }
.faq_list button[aria-expanded="true"]::after { content: "＋"; }

/* .faq_list button:focus { outline: 2px solid var(--key-color1); } */
.faq_list dd { padding: 0; overflow: hidden; transition: max-height 0.4s ease; max-height: 0; }
.faq_list dd div { padding: 20px 25px 25px 60px; position:relative; }
.faq_list dd div::before { content: "A"; font-size: var(--font-size-28); color: #E80404; position:absolute; left:20px; top:11px; font-family: "Zen Maru Gothic", serif; font-weight:bold; }


/* footer */
.footer_inner { padding: 26px 33px 35px; display: flex; justify-content: space-between; align-items: center; }
.footer_inner small { font-size: var(--font-size-12); line-height: 1.2; }
.footer_logo { align-items: center; display: flex; gap: 14px; }
.footer_logo img { width: 192px; }
.footer_logo img + img { width: 225px; }


/*============================================
============================================*/

@media screen and (max-width: 1000px){
.main_mv_img { position:absolute; bottom:5px; left: 1%; width:340px; }
}




/*============================================
============================================*/

@media screen and (max-width: 767px){

.dis_pc { display:none; }
.dis_sp { display:block; }

/* hdg */
.hdg_l1 { margin:20px auto; font-size:var(--font-size-20); }
.hdg_l1 span { padding-bottom: 5px; border-bottom:2px solid var(--key-color2); }
.hdg_l2 { font-size:var(--font-size-18); }
.hdg_l3 { font-size:var(--font-size-18); }

/* nav */
.nav a { padding: 12px 15px 14px; display: block; font-size:var(--font-size-16); position:relative; transition:0.2s; }
.nav a::after { right:12px; }

/* header */
.header > * { position:initial; }
.header_logo { width: 100%; text-align: center; padding:10px; border-radius:0; box-shadow: 0px 0px 15px -10px #777777; line-height:13px; }
.header_logo img { width:auto; height:13px; }
.header_links { text-align:center; padding:7px 0 9px; background-color:var(--key-color1); }
.header_links_list a { font-size:var(--font-size-13); }
.header_links_list li + li { margin-left:20px; }
.header_links_list li:first-child a::before,
.header_links_list li:last-child a::before { position: relative; top: 0; margin-right:6px; }

/* main_mv */
.main { margin-top:-1px; }
.main_wrap { background: url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/bg_main.png) no-repeat center top -3.5% / 500px auto,linear-gradient(to right, rgba(156,195,27,1) 0%, rgba(11,129,0,1) 100%); }
.main_mv { max-width: 1242px; margin: 0 auto -285px; position: relative; width: 100%; padding: 25px 0 320px; /*background:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/sp_bg_mv.png) no-repeat center bottom 160px / 440px auto;*/ }
.main_mv_hdg_s { font-size:var(--font-size-14); margin-bottom:6px;line-height:1.6; }
.main_mv_hdg_b { font-size:var(--font-size-22);line-height:1.6; }
.main_mv_hdg_b b { font-size:var(--font-size-26); display:block; line-height:1.3; }
.main_mv_img { display: block; position:initial; width:320px; margin:130px auto 0; }

/* arrow */
.scrolldown { display:none; }

/* news */
.news { margin: 0 20px; padding: 17px 20px 20px; }
.news li { font-size:var(--font-size-12); position:relative; padding-left:25px; }
.news li::before { content:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/icon_news.svg); position:absolute; left:0; top:0; }
.news li + li { margin-top:8px; }

/* service */
.service { padding:50px 10px; background: linear-gradient(to bottom,  rgba(255,255,255,0.7) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 100%); }
.service_lead { font-size:var(--font-size-14); line-height:1.6; text-align:center;margin:-20px auto 30px !important; }
.service_lead b { font-size:var(--font-size-15); }
.service_area { background:url(https://www.tokyu-fudosan-hd.co.jp/common-id/img/sp_bg_line.svg) no-repeat top 2px left; margin:0 auto; padding:60px 10px 40px 60px;font-size: 16px; }
.service_area_inner { display:block; }
.service_area_inner > * { width:100%; }

.service_box + .service_box { margin-top:30px; }
.service_box::before { width:10px; height:10px; border-radius:50%; top:30px; left:-43px; }
.service_box[data-cl="sv2"]::before { top:30px; left:-23px; }

.service_logo { margin-bottom:20px; }
.service_txt { padding:20px 20px 20px; }
.service_txt::before { content: ""; top: -12px; left: calc(50% - 10px); height: calc(tan(60deg) * 20px / 2); width: 20px; }
.service_txt > p { font-size: var(--font-size-13); line-height:1.6; margin-bottom:10px; }


/* cv */
.gift .service_rel { margin:0 -10px; }
.faq .service_rel { margin:0 -15px; }
.service_rel { padding:30px 20px; }
.service_rel .hdg_l2 { margin-bottom:20px; }
.service_rel .service_txt::before { content:initial; } 
.service_rel .service_area { display:block; margin: 0 auto; padding:0; }
.service_rel .service_box { width: 100%; border-radius:10px; padding:18px 20px; }
.service_rel .service_logo { margin-bottom:12px; }
.service_rel .service_txt { background-color:none; padding:0; }
.service_rel .service_box + .service_box { margin-top: 10px; }

/* nav */
.sup_nav { background: linear-gradient(to right, rgba(156,195,27,1) 0%, rgba(11,129,0,1) 100%); padding:20px 20px; }
.sup_nav_list { display:block; }
.sup_nav_list li { width:100%; }
.sup_nav_list li + li { margin-top:10px; }
.sup_nav_list li a { padding:25px 20px 27px; font-size:var(--font-size-17); }
.sup_nav_list li a::after { right:15px; top:calc(50% - 24px); }


/* guide */
.guide { padding:50px 0; }
.guide .hdg_l1 { margin-bottom:60px; }
.guide_hdg { top: -30px; padding:10px 20px; font-size: var(--font-size-18); margin-bottom:0; line-height:1.3; }
.guide_hdg_s { font-size:var(--font-size-22); margin-bottom:25px;line-height: 1.5; }
.guide_hdg_s span { display: inline-block; padding-bottom: 6px; border-bottom:1px solid var(--key-color1); }
.guide_hdg_s_t2 { font-size:var(--font-size-22); margin: 60px auto -45px; line-height: 1.5; color:#059088; }

.guide_inner { margin:0 15px; padding-bottom:30px; border-radius:10px; }
.guide_list_inner { padding: 15px 0 0 66px; }
.guide_list_inner h5 { font-size:var(--font-size-20); margin-bottom:5px; }
.guide_list_inner p { font-size:var(--font-size-15); line-height:1.5; }
.guide_list::before { content: initial; }
.guide_list li { display:block; padding:0 20px; }
.guide_list li + li { margin-top:30px; }
.guide_list li > * { width:100%; }
.guide_list_inner { position:relative; }
.guide_list + .guide_hdg_s { margin-top:40px; }

.guide_icon_num { display: block; left: 0; top: 14px; font-size:var(--font-size-11); width:50px; height:50px; padding-top:11px; border:none; line-height:0.9; }
.guide_icon_num span { font-size:var(--font-size-23); line-height:0.9; }
.guide_img { position:relative; }
.guide_img img { border-radius:10px; border:1px solid var(--key-color1); }
.guide_img::after { content:initial; }
.guide_txt { margin: 25px 25px 0; font-size:var(--font-size-13); line-height:1.6; border-top:1px solid #cccccc; padding-top:20px; }
.guide_inner + .guide_inner { margin-top:55px; }


/* gift */
.gift { padding:0 10px; }
.gift_inner { padding:40px 25px 40px; }
.gift_inner::before { left: -1px; height:40px; width: 40px; }
.gift_inner::after { right: -1px; height:40px; width: 40px; }

.gift_inner .hdg_l1 { margin-left:-15px; margin-bottom: 5px; }
.gift_box { display:block; margin-bottom:15px; }
.gift_box h3 { width:100%; margin: 0 auto 8px; font-size: var(--font-size-16); padding:8px 10px 10px; border-radius:8px; }
.gift_box p { width:100%; padding-left:0; font-size:var(--font-size-20); line-height:1.3; }
.gift_lead { font-size:var(--font-size-14); line-height:1.6; margin-bottom:10px; }
.gift_list li { font-size:var(--font-size-12); }
.gift_list li + li { margin-top:4px; }
.gift_service { padding:15px; margin:20px 0 25px; }
.gift_service h3 { font-size:var(--font-size-13); margin-bottom:5px; }
.gift_service p { font-size:var(--font-size-16); line-height:1.4 }
.gift_detail dt { font-size:var(--font-size-16); padding-bottom:6px; margin-bottom:10px; }
.gift_detail dd { font-size:var(--font-size-15); }
.gift_detail dd + dt { margin-top:20px; }
.gift_detail dd:last-child { font-size:var(--font-size-12); line-height:1.6; }

/* id-guide */
    .id-guide { padding: 16px 5px 24px; }
    .id-guide__columns { flex-direction: column; gap: 18px; }
    .id-guide__box { width: 100%; }
    .id-guide__inner { margin: 0 auto 5px; }
    .id-guide__link { height: 78px; padding: 0 56px 0 14px; font-size: 1.15rem; }
    .id-guide__link-icon { right: 14px; width: 32px; height: 32px; }
    .id-guide__link-icon::before { border-left-width: 5px; border-right-width: 5px; border-top-width: 8px; }
    .id-guide__text { font-size: 0.95rem; line-height: 1.8; padding: 12px 6px 0; }
    .id-guide__bottom {margin-top: 28px;}
    .id-guide__bottom-link { min-width: auto; width: 100%; max-width: 520px; min-height: 54px; padding: 12px 18px; font-size: 1.05rem; }
    .id-guide__bottom-note { font-size: 0.9rem; text-align: left; }

/* cta */
    .cta-wrap {
      padding: 16px 12px;
    }
    .cta-btn {
      max-width: 100%;
      min-height: 72px;
      padding: 14px 56px 14px 18px;
      font-size: 1.05rem;
      border-radius: 14px;
    }
  .cta-btn__text {
    display: inline-block;
    margin-right: 0;
    text-align: center;
    font-size:20px;
  }
    .cta-btn__icon {
      right: 14px;
      width: 35px;
      height: 35px;
    }
    .cta-btn__icon::before {
      border-left-width: 15px;
      border-right-width: 0;
      border-top-width: 10px;
    }

/* cta2 */
    .cta2-wrap {
      padding: 16px 12px;
    }
    .cta2-btn {
      max-width: 100%;
      min-height: 72px;
      padding: 14px 56px 14px 18px;
      font-size: 1.05rem;
      border-radius: 14px;
    }
  .cta2-btn__text {
    display: inline-block;
    margin-right: 0;
    text-align: center;
    font-size:20px;
  }
    .cta2-btn__icon {
      right: 14px;
      width: 35px;
      height: 35px;
    }
    .cta2-btn__icon::before {
      border-left-width: 15px;
      border-right-width: 0px;
      border-top-width: 8px;
    }

/* faq */
.faq { padding:50px 15px 0; }
.faq .service_rel { margin-top: 30px; }
.faq_inner { margin:30px auto 0; padding:15px 20px; }

.faq_list { margin-top:10px; }
.faq_list dt { margin-bottom:0; }
.faq_list dd { padding: 0; margin-bottom:10px; font-size:var(--font-size-14); }
.faq_list button { padding:12px 30px 12px 40px; font-size:var(--font-size-14); }
.faq_list button::before { font-size: var(--font-size-24); left:10px; top:calc(50% - 19px); }
.faq_list button::after { font-size: var(--font-size-12); right:12px; top:calc(50% - 9px); }
.faq_list button[aria-expanded="true"]::after { content: "＋"; }

.faq_list dd div { padding: 10px 10px 10px 40px; }
.faq_list dd div::before { content: "A"; font-size: var(--font-size-24); left:10px; top:1px; }


/* footer */
.footer_inner { flex-direction: column-reverse; gap: 30px; justify-content: center; padding: 30px 25px; }
.footer_inner small { display: block; font-size: var(--font-size-10); line-height: 1.2; text-align:center; margin-bottom:10px; }
.footer_logo { flex-direction: column; }
.footer_logo img { width:201px; height:auto; }
.footer_logo img + img { width:229px; height:auto; }

}