@charset "utf-8";

/* スマホ（〜767px） */
@media (max-width: 767px) {
  /* スマホ専用スタイル */
}

/* タブレット（768px〜1024px） */
@media (min-width: 768px) and (max-width: 1024px) {
  /* タブレット専用スタイル */
}

/* PC（1025px〜） */
@media (min-width: 1025px) {
  /* PC専用スタイル */
}

body {  font-family: "Zen Kaku Gothic New", sans-serif;font-weight:400; font-style:normal; color:#222222; font-size:16px; line-height:1.7em; overflow-x: hidden; letter-spacing:0.05em; }
*, *::before, *::after {box-sizing: border-box;}

main { border-top:1px solid #DADADA; }
/*PCスマホ表示切り替え用*/
.br_pc {display: none !important;}
.pc {display: none;}
.sp {display: block;}
.inline_sp { display:inline; }
.inline_pc { display:none; }
.inline_pc_only { display:none; }

@media screen and (min-width: 768px) {
    .sp {display: none !important;}
    .pc {display: block;}
    .br_sp {display: none !important;}
    .br_pc {display: inline !important;}
    .inline_sp { display:none; }
    .inline_pc { display:inline; }
    .inline_pc_only { display:none; }
}
@media screen and (min-width: 1200px) {
  .inline_pc_only { display:inline; }
}


  .inline_sp_pad { display:none; }
@media (max-width: 1024px) {
  .inline_sp_pad { display:inline; }
}


/*ページ*/
.contents_wrap { width:100%; }
.contents { width:min(90%, 1320px); margin:0 auto; padding: 50px 0;}
.contents .contents_inner { width:min(100%, 1000px); margin:0 auto; }
.contents.nopadding { padding:0; }
@media (min-width:768px) {
  .contents {padding: 80px 0;}
}

/*ニュース*/
.news_wrap_item { width:100%; display:flex; flex-wrap:wrap; padding:20px 0; border-bottom:1px solid #DDDBDB; }
.news_wrap_item dt { width:100%; margin-bottom:10px; }
.news_wrap_item dd { width:100%; }
.news_wrap_item dd a:hover { text-decoration:underline;}
.flag_shop { width:55px; height:20px; line-height:20px; font-size:12px; background:#8DD3F6; color:#fff; text-align:center; }
@media (min-width:768px) {
  .news_wrap_item { width:100%; max-width:1000px; margin:0 auto; padding:30px 0; border-bottom:1px solid #DDDBDB; }
  .news_wrap_item dt { width:20%; margin-bottom:0; }
  .news_wrap_item dd { width:80%; }
}


.flag_shop.honten { background:#FDBB61; }
.flag_shop.ishikiten { background:#4EC4AD;}
.flag_shop.taniyamaten { background:#3EA6DD;}


/*横幅いっぱい背景*/
.contents_bg_contact { background:#FDFD8A; }  /*お問い合わせ用黄色*/
.contents_bg_basic { background:#EDF5FD; }  /*基本水色*/
.contents_bg_else { background:#8DD3F6; }  /*その他用水色*/
.contents_bg_excursion { background:#E1F6FC; } /*回遊用薄水色*/

.contents_bg_excursion_wave_top { height:50px; background:url(/img/common/wave_excursion_sp.svg) repeat-x; background-size:100% auto; } /*回遊用薄水色の上波*/
.contents_bg_excursion_wave_bottom { height:50px; background:url(/img/common/wave_excursion_sp.svg) repeat-x; background-size:100% auto; transform:scale(1, -1); z-index:1; } /*回遊用薄水色の下波*/

@media (min-width:768px) {
.contents_bg_excursion_wave_top { height:45px; background:url(/img/common/wave_excursion.svg) repeat-x; background-size:400px 45px; } 
.contents_bg_excursion_wave_bottom { height:45px; background:url(/img/common/wave_excursion.svg) repeat-x; background-size:400px 45px;  } 
}

/*フォント*/
p,strong,span,small { display:inline-block; }
.bold { font-weight:700; }
/*.contents p { text-align: justify;}*/
@media screen and (max-width: 768px) {
  p { line-height:1.7em; }
}
p { line-height:2em; letter-spacing:0.05;}

/*注釈*/
.note { font-size:14px; line-height:1.5em; }
@media screen and (max-width: 768px) {
  .note { font-size:16px; }
}

/*色_フォント*/
.color_w { color:#fff; }
.color_b { color:#000; }
.color_light_b { color: #848484 }
.color_navy { color:#004680; }

/*フォント_位置*/
.text_center { width:100%; text-align:center; display:inline-block; }
.text_left { width:100%; text-align:left; display:inline-block; }
.text_right { width:100%; text-align:right; display:inline-block; }

/*フォント_サイズ*/
.text_ll { font-size:24px; letter-spacing:0.1em; line-height:1.56; }
.text_lm { font-size:20px; }
.text_l { font-size:20px; letter-spacing:0.05em; line-height:1.45; }
.text_m { font-size:18px; letter-spacing:0.05em; line-height:1.9; }
.text_normal { font-size:16px; letter-spacing:0.05em; line-height:2.1; }
.text_s { font-size:14px; letter-spacing:0.05em; line-height:2.5; }
@media screen and (min-width: 768px) {
.text_ll { font-size:32px; }
.text_lm { font-size:28px; }
.text_l { font-size:24px; }
}

/*フォント_太さ*/
.text_bold { font-weight:700; }
.text_medium { font-weight:500; }

/*フォント_字間*/
.letterspace1 { letter-spacing:0.1em; }
.letterspace05 { letter-spacing:0.05em; }

/*フラグ*/
.flag_wrap { width:100%; display:flex; gap:8px; }
.flag_new { width:55px; font-size:12px; text-align:center; line-height:20px; background:#FC5942; color:#fff; }
.flag_type { width:100px; height:20px; font-size:13px; text-align:center; line-height:20px; color:#fff; display:inline-block;font-weight: bold;}
.flag_type.new { width:55px; background:#FC5942; }
.flag_type.land { background:#FACA03; }
.flag_type.nhouse { background:#7AC600; }
.flag_type.uhouse { background:#3AC4C2; }
.flag_type.mansion { background:#FC5F6B; }
.flag_type.profit { background:#31960C; }/*収益*/
.flag_type.others { background:#31960C; }/*収益*/
.flag_type.reform { font-size:12px; line-height:20px; background:#FF952C; color:#fff; }
.flag_type.members { font-size:12px; line-height:20px; background:#0870C6; color:#fff; padding:0 3px; }
.flag_type.member { background:#0870C6; }
.flag_type.pd { background:#7777D3; }
.flag_type.oh { background:#2CB6F7; }


/*マージン*/
.margin-bottom32 { margin-bottom:32px; }
.margin-bottom40 { margin-bottom:40px; }

/*ボタン共通*/
.button { width:min(100%, 400px); height:70px; margin:0 auto; display:flex; align-items:center; justify-content:center; position:relative; transition:0.3s; letter-spacing:0.1em; }

/*普通のボタン*/
.button_normal { border:1px solid #c4c4c6; border-radius:5px; background:#fff; }
.button_normal:hover { background:#EDF5FD; }
.button_normal img { position:absolute; right:5%; }

/*検索用オレンジ_a*/
.button_search { border:2px solid #FC5942; border-radius:10px; background:#fff; box-shadow:0 3px 6px rgba(0,0,0,0.3); color:#FC5942; font-weight:700; }
.button_search:hover { background:#FFEBEB; }
.button_search img { position:absolute; right:5%; }

/*検索用オレンジ_input*/
.input_search { border:2px solid #FC5942; border-radius:10px; background:#fff url(/img/common/arrow_search.svg) no-repeat; background-position:95% 50%; box-shadow:0 3px 6px rgba(0,0,0,0.3); color:#FC5942; font-weight:700; }
.input_search:hover { background-color:#FFEBEB; }

/*問い合わせ水色ベタ_a*/
.button_form_bg { font-size: 18px;border:1px solid #2CB6F7; border-radius:35px; background:#2CB6F7; color:#fff; font-weight:bold; }
.button_form_bg:hover { /*transform:scale(1.05); */background:#2c93c3; border:1px solid #2c93c3; }
.button_form_bg img { margin:0 5% 0 0; }

/*問い合わせ水色ベタ_input*/
.input_send { font-size: 18px;border:1px solid #2CB6F7; border-radius:35px; background:#2CB6F7; color:#fff; font-weight:700; }
.input_send:hover { background:#2c93c3; border:1px solid #2c93c3; }
.button_form_bg img { margin:0 5% 0 0; }

/*問い合わせ水色ベタ文字2行*/
.button_form_long { border:1px solid #c4c4c6; border-radius:35px; background:#2CB6F7; color:#fff; font-weight:700; font-size:14px; line-height:1.5em; }
.button_form_long:hover { /*transform:scale(1.05); */ background:#2c93c3; border:1px solid #2c93c3; }
.button_form_long img { width: 45px;margin:0 2.5% 0 0; }
.button_form_long img.icon_mail { width:45px; }

/*問い合わせ水色線白抜き*/
.button_form_frame { font-size: 18px;border:1px solid #2CB6F7; border-radius:35px; background:#fff; color:#2CB6F7; font-weight:700; }
.button_form_frame:hover { /*transform:scale(1.05); */ background:#2c93c3; border:1px solid #2c93c3; }
.button_form_frame img {margin:0 5% 0 0; mix-blend-mode:multiply; width: 45px;}

/*会員登録オレンジベタ*/
.button_register { border:1px solid #FC5942; border-radius:35px; background:#FC5942; color:#fff; font-weight:700; font-size:20px; }
.button_register:hover { background:#2c93c3; border:1px solid #2c93c3; }
.button_register img { margin:0 5% 0 0; width: 24px;}

/*ログインオレンジ線白抜き*/
.button_login { font-size: 18px;border:1px solid #FC5942; border-radius:35px; background:#fff; color:#FC5942; font-weight:700; }
.button_login:hover { background:#fdccc6;}
.button_login img { width:50px; margin:0 5% 0 0; mix-blend-mode:multiply; }

/*電話*/
.button_tel { width:min(100%, 360px); height:70px; margin:0 auto; display:flex; align-items:center; justify-content:center; border:1px solid #2CB6F7; border-radius:35px; background-color:#fff; position:relative; color:#2CB6F7; font-weight:700; letter-spacing:0.05em; }
.button_tel img { width: 50px;margin:0 5% 0 0; }
@media (min-width: 768px) {
  .button_tel { height:80px; padding:0 0 0 2%; justify-content:left; border-radius:0; pointer-events: none; }
  .button_tel img { width: 45px;margin:0 5% 0 0; }
  .button_tel span { width:auto;line-height: 12px; margin-top: -5px;}
  .button_tel_nm { font-weight:700px; font-size:34px; line-height:1.2; }
  .button_tel_time { font-size:12px; line-height:1.2; white-space:nowrap; }
  .tel_link { pointer-events: none; }
}



@media (min-width: 768px) {
  .tel-link { pointer-events:none; text-decoration:none; cursor:default;}
}

.input_search { border:2px solid #FC5942; border-radius:10px; background:#fff url(/img/common/arrow_search.svg) no-repeat; background-position:95% 50%; box-shadow:0 3px 6px rgba(0,0,0,0.3); color:#FC5942; font-weight:700; }
.input_send { border:1px solid #2CB6F7; border-radius:35px; background:#2CB6F7; color:#fff; font-weight:700; }
.input_bar { width:100%; min-width:180px; height:50px; margin:0; border-radius:10px; background:#FDFD9A url(/img/buy/icon_megane.svg) no-repeat; background-position:18% 50%; border:2px solid #004680; border-radius:10px; box-shadow:0 3px 6px rgba(0,0,0,0.3); color:#004680; font-weight:700; }
.input_set { width:100%; height:50px; margin:0; border-radius:10px; background:#FFF; border:2px solid #004680; border-radius:10px; box-shadow:0 3px 6px rgba(0,0,0,0.3); color:#004680; font-weight:700; }
.close-modal .search-open { width:100%; height:50px; margin:0; border-radius:10px; background:#FFF; border:2px solid #004680; border-radius:10px; box-shadow:0 3px 6px rgba(0,0,0,0.3); color:#004680; font-weight:700; }
.button_form_bg img { width:45px; margin:0 5% 0 0; }

/* 売却問い合わせ */
.baikyaku_contact_contents{padding: 40px 0;}
.baikyaku_contact_title{text-align: center;margin-bottom: 20px;}
.baikyaku_contact_title_j{font-size: 23px;letter-spacing: 0.1em;line-height: 1.56;}
.baikyaku_contact_title_e{color: #FC5942;}
.baikyaku_contact_inner{background: white;border-radius: 20px;padding-bottom: 10px;}
.baikyaku_contact_inner_img{width: 300px;margin: 0 auto;}
.baikyaku_contact_inner_img img{width: 100%;}
.baikyaku_contact_inner_text{text-align: center;font-size: 18px;margin: 20px 0;}
.baikyaku_contact_inner a{width: 75vw;}
@media (min-width:768px) {
      .baikyaku_contact_inner a{width: 50vw;}
}
@media (min-width:950px) {
    .baikyaku_contact_contents{display: flex;flex-direction: row;padding: 80px 0;justify-content: space-between;}
    .baikyaku_contact_title{width: min(490px,30vw);text-align: left;display: flex;flex-direction: column-reverse;}
    .baikyaku_contact_title_j{font-size: min(2vw,32px);}
    .baikyaku_contact_title_e{font-size: min(5vw,72px);font-weight: bold;color: rgba(0,70,128,0.1);line-height: initial;}
    .baikyaku_contact_inner{width: min(800px,60vw);display: flex;flex-direction: row;justify-content: center;align-items: center;}
    .baikyaku_contact_inner_img{margin: 0;margin-right: 25px;width: min(22vw,300px);}
    .baikyaku_contact_inner a{width: min(28vw,350px);}
    .baikyaku_contact_inner_text{font-size: 20px;}
    .baikyaku_contact_inner_text{font-size: min(2vw,20px);}
}

/* ページ内リンク */
.page_link_wrap{width: 90vw;margin: 0 auto;}
.page_link{background:#EDF5FD;display: flex;align-items: center;margin-bottom: 15px;position: relative;}
.page_link:hover{background: #cfe6fe;transition: 0.3s;}
.page_link_img{width: 30vw;margin-right: 15px;}
.page_link_img img{width: 100%;}
.page_link_text{font-weight: bold;}
.area_arrow_down{position: absolute;right: 5%;}
.page_link_img img,.area_arrow_down img {  display: block;}

@media (min-width:768px) {
    .page_link_wrap{width: min(90vw,1320px);display: flex;flex-direction: row;justify-content: flex-start;gap: 20px;flex-wrap: wrap;}
    .page_link_wrap3{width: min(70vw,1200px);}
    .page_link_img{width: 160px;}
    .page_link{width: calc(calc(100% - 20px) / 2);}
}
@media (min-width:1100px) {
      .page_link{width: calc(calc(100% - 40px) / 3);}
}

/*パンクズ*/
.breadcrumb_list { width:90%; height:auto; display:flex; margin:0 auto; font-size:13px; letter-spacing:0.1em; align-items:center;white-space: nowrap;overflow: scroll;}
.breadcrumb_list li::before { content: ""; display: inline-block; width:7px; height:7px; background: url('/img/common/icon_arrow_left_b.svg') no-repeat center / contain; margin-left:5px; }
.breadcrumb_list li:first-child::before { display:none; }
.breadcrumb_list li a { width:100%; display:inline-block; }
.breadcrumb_list li a:hover { text-decoration:underline; }
@media screen and (min-width: 768px) {
  .breadcrumb_list { width:90%; max-width:1320px; position:absolute; top:110px; left:50%; transform:translateX(-50%);z-index: 1; overflow: initial;}
}


/* ========== 下層ページトップのタイトル周り（画像・背景あり） ========== */
.page_title { width:100%; height:auto; aspect-ratio: 340 / 225;margin-bottom:50px; display:flex; /*align-items:center; justify-content:center;*/ position: relative; }
.page_title .page_title_image { width:87%; height:55vw; margin-left:auto;border-bottom-left-radius:30px;  overflow:hidden; display:flex; align-items:flex-start;}
.page_title .page_title_image .inline_sp { width:100%; aspect-ratio:340 / 225; object-fit: cover; display:block; }
.page_title .page_title_image .inline_pc { display:none; }
.page_title_text { width:auto; position: absolute; top:50%;  transform: translateY(-50%); left:5%; }
.page_title_text .page_title_en { font-size:40px; letter-spacing:0.15em; font-weight:700; font-family: 'Zen Kaku Gothic New', sans-serif; line-height:40px; letter-spacing:0.15em; }
.page_title_text .page_title_ja { color:#FC5942; font-size:16px; line-height:20px; }
.page_title_en,
.page_title_ja {position: relative;display: inline-block;overflow: hidden; }
.page_title_text span {position: relative;display: inline-block;overflow: hidden;}
.page_title_text span::before {content: "";position: absolute;top: 0;left: 0;width: 100%; height: 100%;background: #fff;z-index: -1;transform: scaleX(0);transform-origin: left;transition: transform 0.6s ease-in-out;}
.page_title_text span.page_title_en::before { top:5px; }
.page_title_text span.animate::before {transform: scaleX(1);}
.page_title_bg { width:100%; height:100%; background:#8DD3F6; position:absolute; top:0; z-index:-1; }
@media (min-width:768px) {
    .page_title { height:470px; /*margin-top:100px; */margin-bottom:120px; }
    .page_title .page_title_image { width:68%; height:400px; }
    .page_title .page_title_image .inline_pc { width:100%; height:100%;  object-fit:cover; display:block; }
    .page_title .page_title_image .inline_sp { display:none; }
    .page_title_text { margin-left:11%; }
    .page_title_text .page_title_en { font-size:72px; line-height:72px; }
    .page_title_text .page_title_ja { font-size:24px; line-height:24px; margin-top:20px; padding:10px; }
     .page_title_text .page_title_ja br { display:none; }
    .page_title_text span.page_title_en::before { top:10px; }
    .page_title_bg { width:68%; border-bottom-right-radius: 30px; }
    
}

  /* なん丸吹き出し */
.page_title_nanmaru { width:22%; position:absolute; bottom:0; right:5%; }
.page_title_nanmaru .page_title_nanmaru_illust { width:100%; }
.page_title_fukidashi { display:none; }
@media (min-width:768px) {
  .page_title_nanmaru { width:150px; display:flex; right: 20%; }
  .page_title_nanmaru .page_title_nanmaru_illust { flex-shrink: 0; }
  .page_title_fukidashi { width:130px; height:130px; flex-shrink: 0; display:flex; align-items:center; justify-content:center; color:#FC5942; position:relative; margin-left:12px; }
  .page_title_fukidashi::before {content:""; position: absolute; inset:0; background: url(/img/common/illust_top_fukidashi.svg) no-repeat center center; background-size:contain; animation: spin 10s linear infinite; z-index: 0; left:-3px; }
  @keyframes spin {
    0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  .page_title_fukidashi > * { position:relative;z-index:1; }
  .page_title_fukidashi small { font-size:16px; font-weight:bold; letter-spacing:0.05em; line-height:1.27em; text-align:center; }
  .page_title_nanmaru_illust { height:auto; } 
}
@media (min-width:1050px) {
    .page_title_nanmaru {right: 15%; }
}

/*イラストループ*/
.page_title_bg .loop-stack {display:flex; flex-direction: column; gap:10px;}
.page_title_bg .loop-row { position:relative; width:100%; height:120px; overflow:hidden;}
@media (min-width:768px) {
.page_title_bg .loop-row { height:150px; }
}
.page_title_bg .loop-row::before { content: ""; position: absolute; width:200%; height:100%; background:url('/img/common/illust_title_town.svg') repeat-x;background-size:auto 100%; animation:slide-ltr 40s linear infinite;}
.page_title_bg .row2::before { animation: slide-rtl 40s linear infinite;}
.page_title_bg .row1::before, .page_title_bg .row3::before {animation: slide-ltr 40s linear infinite;}

@keyframes slide-ltr {
  0%   { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}
@keyframes slide-rtl {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ========== 下層ページトップのタイトル周り（画像・背景なし） ========== */
.page_title.simple { height:auto; aspect-ratio:initial; margin-top: 80px; margin-bottom:40px; }
.page_title.simple .page_title_image { display:none; }
.page_title.simple .page_title_bg { display:none; }
.page_title.simple .page_title_nanmaru  { display:none; }
.page_title.simple .page_title_text { width: min(90%, 1320px); margin: 0 auto; text-align:left; position:relative; display:block; left:initial; top:initial; transform:initial;}
.page_title.simple .page_title_text .page_title_en { font-size:40px; letter-spacing:0.15em; font-weight:700; font-family: 'Zen Kaku Gothic New', sans-serif; line-height:40px; padding-left:0; }
.page_title.simple .page_title_text .page_title_ja { color:#FC5942; font-size:16px; line-height:20px; letter-spacing:0.05em; padding-left:0; }
.page_title.simple .page_title_text .page_title_en::before {display: none; }
.page_title.simple .page_title_text .page_title_ja::before {display: none; }
@media (min-width:768px) {
    .page_title.simple { margin-top: 120px; margin-bottom:80px; }
    .page_title.simple .page_title_text { text-align:center; }
    .page_title.simple .page_title_text .page_title_en { font-size:72px; line-height:72px; margin-bottom:20px; }
    .page_title.simple .page_title_text .page_title_ja { font-size:24px; line-height:24px; letter-spacing:0.1em; }
}
/* タイトル下_キャプション文 */
.page_title_caption { padding-bottom: 40px; }
@media (min-width:768px) {
  .page_title_caption { padding-bottom: 80px; }
}

/* ========== 下層ページ 主にh2（英字背景があるもの） ========== */
.section_title.bgtext { width:100%; display:flex; flex-direction:column-reverse; margin-bottom:20px; }
.section_title_ja  { width:100%; font-size:24px; font-weight:700; letter-spacing:0.1em; }
.section_title_en { width:100%; color:#FC5942; font-weight:500; letter-spacing:0.1em; text-align:center; margin-top:5px; } 
.section_title_ja.center { width:100%; text-align:center; position:relative;}
@media (min-width:768px) {
  .section_title.bgtext { height:90px; display:block; align-items:center; margin-bottom:80px; position:relative; }
  .section_title_ja { line-height:90px; display:block; }
  .section_title_en { font-size:90px; font-weight:700; display:block; line-height:80px; color:rgba(0, 70, 128, 0.2); position:absolute; top:0; margin-top:0; } 
  .section_title_en.center { width:100%; text-align:center; }
}

.columns { width:100%; display:flex; justify-content:space-between;}
.columns .columns_2 { width:100%; }
.columns .columns_item { width:100%; }
@media (min-width:768px) {
  .columns .columns_2 { width:50%; }
}


/* ========== 動き ========== */

/* 英語タイトル、下から上にふわっと */
.section_title_en{ opacity: 0; transform: translate3d(0, 60px, 0);  transition: transform .8s cubic-bezier(.22,.61,.36,1), opacity .6s ease; will-change: transform, opacity; backface-visibility: hidden;}
.section_title_en.is-inview{opacity: 1;transform: translate3d(0, 0, 0);}
@media (prefers-reduced-motion: reduce){
  .section_title_en{ transform:none; transition:opacity .3s ease; }
}
@media (min-width:768px) {
  .section_title_en.is-inview{opacity: 0.3;}
}

/*青い影付きの画像*/
.photo_wrap { width:100%; height:auto; overflow:hidden; margin-bottom:40px; }
.photo_wrap img { width:100%; height:100%; object-fit:cover;}
@media (min-width:768px) {
.photo_wrap{position: relative;z-index: 0;overflow: visible;        }
.photo_wrap img{display:block;position: relative;}
.photo_wrap::after{content:"";position:absolute;inset:0; background: rgba(0,70,128,1);transform: translate(-14px, 14px);   opacity: 0;  z-index: -1;
  transition:transform .7s cubic-bezier(.2,.65,.2,1) .2s,opacity  .7s ease .2s;  /* 0.2s遅らせて“ふわっ” */pointer-events: none;}
.photo_wrap.is-inview::after{transform: translate(-24px, 24px);  opacity: 1;}


}

/* ========== スライダー ========== */
.slick-slide{ margin:0 5px; transition:all .3s ease-in-out; opacity:1; position:relative; }
.slick-active,.slick-current{ opacity:1; }
.slick-prev,.slick-next{ z-index:10; background:transparent; border:none; width:auto; height:auto; line-height:0; padding:0; }
.slick-prev:before,.slick-next:before{ content:none!important; }
.center-zoom .slick-prev,.center-zoom .slick-next{ background:transparent; border:none; width:auto; height:auto; line-height:0; padding:0; }
.center-zoom .slick-prev:before,.center-zoom .slick-next:before{ content:none!important; }
.slider_wrap{ max-width:100%; margin:0 auto; padding-bottom:250px; }
.button_staff{ margin-bottom:120px; position:relative; z-index:10; }
 .sliderArea{ width:100%; margin-bottom:0; }
@media (min-width:768px) {
  .sliderArea{ width:100%; margin-bottom:80px; }
}

.full-screen.slider{ max-width:70vw; margin:0 auto; }
@media (min-width:768px) {
.full-screen.slider{ max-width:400px; }
}
.full-screen.slider div img { width:100%; }
.full-screen .slick-list{ overflow:visible; }

a .photo_staff_wrap{ width:100%; height:250px; overflow:hidden; }
a .photo_staff_wrap img{ width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
a:hover .photo_staff_wrap img{ transform:scale(1.1); }
.photo_staff_wrap img{ width:100%; height:auto; display:block; margin-bottom:10px; }
.full-screen.slider span.flag_shop{ width:62px; height:22px; font-size:13px; line-height:22px; position:absolute; top:0; left:0; color:#fff; background:#8DD3F6; z-index:1; display:inline-block; }
.full-screen.slider span { width:100%; display:inline-block; font-size:20px; }
.full-screen.slider small { width:100%; display:inline-block; }

.contents_bg_excursion.staff  { width:100%; padding:40px 0 0 0; position:relative; }
@media (min-width:768px) {
  .contents_bg_excursion.staff { width:100%; padding-top:80px; }
}
.contents_bg_excursion.staff .contents { position:relative; z-index:1; }
.contents_bg_excursion.staff .bg_staff_sp  { width:100%; position:absolute; bottom:0; z-index:0; display:block; }
.contents_bg_excursion.staff .bg_staff_pc { display:none; }
.contents_bg_excursion.staff .slider_wrap { padding-bottom:100px; z-index:1; position:relative; }
@media (min-width:768px) {
  .contents_bg_excursion.staff .bg_staff_sp { display:none; }
  .contents_bg_excursion.staff .bg_staff_pc { width:100%; position:absolute; bottom:0; z-index:0; display:block; }
}
.contents_bg_excursion.staff .bg_staff{ width:100%; position:absolute; bottom:0; z-index:-1; }

.full-screen .slick-prev { width:44px; top:40%; left:2.5%; }
.full-screen .slick-next { width:44px; top:40%; right:2.5%; }
.full-screen .slick-prev img,.full-screen .slick-next img { width: 100%; }
@media (min-width:768px) {
  .full-screen .slick-prev { left:-35vw; }
  .full-screen .slick-next { right:-35vw; }
}
.full-screen .slick-prev:before,.full-screen .slick-next:before { content:none!important; }


label:hover {cursor:pointer;}



/*フォーム用アラート*/
.flash-message { width:90%; height:100px; margin:-50px 0 0 -45%; display:flex; justify-content:center; align-items:center; position:fixed; top:50vh; left:50vw; padding: 12px 20px; background-color:#fff; color:#004680; font-weight:700; border-radius:5px; box-shadow: 0 4px 8px rgba(0,0,0,0.2); z-index: 9999; opacity:1; transition: opacity 0.5s ease, transform 0.5s ease; }
@media (min-width:768px) {
  .flash-message { width:50%; height:150px; margin:-75px 0 0 -25%; font-size:24px; }
}

/*お気に入り登録時ポップアップ*/
.favorite-popup { width:100vw; height:100vh; display:flex; justify-content:center; align-items:center; position:fixed; bottom:0; left:0; background: rgba(0,0,0,0.5); opacity: 0; pointer-events: none; transition: opacity 0.3s ease; z-index: 10000; }
.favorite-popup.show { opacity: 1; pointer-events: auto; }
.popup-inner { width:80%; max-width:720px; height:80%; max-height:390px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap: 8px; background:#fff; border:1px solid #2CB6F7; position:relative; }
.popup-strong { color:#004680; font-weight:700; }
.popup-nanmaru { width:120px; margin:20px auto; }
.popup-text { text-align:center; font-size: 14px; }
.popup-icon { width:20px; color:#FF4D4F; }
.popup-close { position:absolute; top:8px; right:10px; border:none; background:transparent; color:#004680; font-weight:700; font-size:28px; line-height:1; cursor:pointer; }
.popup-close:hover { opacity:0.7; }
@media (min-width:768px) {
  .popup-strong { font-size:24px; }
  .popup-nanmaru { width:160px; margin:20px auto; }
  .popup-text { display:flex; font-size: 16px; }
  .popup-text br { display:none; }
  .popup-icon { width:30px; margin:0 5px; }
}

/*退会ポップアップ*/
.withdrawModal { display:none; justify-content:center; align-items:center; position:fixed; transition: opacity 0.3s ease; inset:0; z-index: 9999; }
.withdrawModal.active { display:flex; }
.withdrawModal-bg { width:100vw; height:100vh; display:flex; justify-content:center; align-items:center; position:absolute; bottom:0; left:0; background:rgba(0,0,0,0.5); inset:0; }
.withdrawModal-box { width:80%; max-width:720px; height:260px; position: relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap: 8px; background:#fff; border:1px solid #2CB6F7; }
.withdrawModal-title { color:#004680; font-weight:700; }
.withdrawModal-actions { width:100%; margin-top:20px; display:flex; gap:12px; justify-content:center; }
.withdrawCancel { width:40%; height:50px; display:block; background:#2CB6F7; border:1px solid #2CB6F7; border-radius:25px; color:#fff; }
.withdrawConfirm { width:40%; height:50px; display:block; background:#fff; border:1px solid #2CB6F7; border-radius:25px; color:#2CB6F7; }
@media (min-width:768px) {
  .withdrawModal-title { font-size:24px; }
  .withdrawModal-actions { margin-top:30px; }
  .withdrawCancel { width:35%; height:70px; border-radius:35px; }
  .withdrawConfirm { width:35%; height:70px; border-radius:35px; }
}