@charset "UTF-8";
/* -- Color -- */
/* -- Fonts -- */
/* -- Margin -- */
/* -- @font-face -- */
/* -- Font around -- */
/* -- Prefix -- */
/* -- Media Screen -- */
/* -- Retina -- */
/* -- Flex -- */
/* -- Placeholder -- */
/* 共通設定及びモバイル用
------------------------------------------------------------*/
:root { --vw: 1svw; }

body { width: 100%; }
body.is-open { height: 100%; overflow: hidden; }

.pc_view { display: none; }
@media screen and (min-width: 980px) { .pc_view { display: block; } }

@media screen and (min-width: 980px) { .sp_view { display: none; } }

.inner { width: 90%; max-width: 1024px; margin-right: auto; margin-left: auto; }

.logo .logo__link { display: flex; align-items: center; gap: 0 clamp(10px, calc( var(--vw) * 2.666 ), 20px); color: inherit; text-decoration: none; }
.logo .logo__link .logo__mark { width: clamp(24px, calc( var(--vw) * 6.4 ), 54px); }
.logo .logo__link .logo__name { font-size: clamp(16px, calc( 16px + ( 24 - 16 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 24px); font-family: "A1 Mincho", "Hiragino Mincho ProN", "YuMincho", "Yu Mincho", "MS PMincho", serif; font-weight: bold; letter-spacing: 0.06em; }

/* ヘッダー
*****************************************************/
#header { position: fixed; top: 0; right: 0; z-index: 100; width: 100%; background-color: transparent; transition: 0.4s transform linear; }
#header .head_inner { display: flex; justify-content: space-between; padding-left: min(calc( var(--vw) * 5 ), 40px); }
#header .head_inner .head_logo { flex-shrink: 0; margin: auto auto auto 0; }
@media screen and (min-width: 980px) { #header .head_inner .head_logo .logo__link .logo__mark { width: clamp(24px, calc( var(--vw) * 2.448 ), 54px); }
  #header .head_inner .head_logo .logo__link .logo__name { font-size: clamp(16px, calc( 16px + ( 24 - 16 ) * ( ( 100dvw - 980px ) / ( 1920 - 980 ) ) ), 24px); } }
#header .head_inner .head_navi { flex-shrink: 1; flex-grow: 1; margin-left: min(calc( var(--vw) * 5 ), 40px); }
#header .head_inner .head_navi .head_navi__menu { display: flex; justify-content: flex-end; list-style: none; height: 100%; padding-left: 0; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item { font-size: clamp(12px, calc( 12px + ( 16 - 12 ) * ( ( 100dvw - 980px ) / ( 1920 - 980 ) ) ), 16px); position: relative; width: min(100%, 220px); }
#header .head_inner .head_navi .head_navi__menu .head_navi__item::after { position: absolute; top: 0; right: 0; bottom: 0; content: ''; width: 1px; height: 50%; margin: auto; background-color: rgba(255, 255, 255, 0.5); }
#header .head_inner .head_navi .head_navi__menu .head_navi__item:last-child::after { display: none; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__item__link { display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 1.0em 0; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; color: #FFFFFF; text-align: center; text-decoration: none; height: 100%; background-color: #00284c; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__item__link i { font-size: 1.25em; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__item__link .head_navi__item__txt { font-size: 1.0em; letter-spacing: 0.06em; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu { position: absolute; top: 100%; left: 0; z-index: 100; list-style: none; width: 100%; height: 0; padding-left: 0; overflow: hidden; background-color: #0b7fcc; transition: 0.4s height linear; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li { border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li a { position: relative; display: block; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; color: #FFFFFF; line-height: 1.4; letter-spacing: 0.06em; text-decoration: none; padding: 1.0em 1.0em 1.0em 2.5em; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li a::before { position: absolute; top: 1.0em; left: 1.0em; content: '\f105'; font-family: 'Font Awesome 6 Free'; font-weight: 900; transition: 0.4s ease-out; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li a::after { position: absolute; bottom: -1px; left: 0; z-index: 1; content: ''; width: 100%; height: 1px; background-color: #ff3b00; transform: scale(0, 1); transform-origin: right center; transition: 0.4s transform linear; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li a:hover { color: #ff3b00; background-color: #FFFFFF; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li a:hover::after { transform: scale(1); transform-origin: left center; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item .head_navi__submenu li:last-child { border-bottom: none; }
#header .head_inner .head_navi .head_navi__menu .head_navi__item:hover .head_navi__item__link { background-color: #0b7fcc; }
#header .head_inner #head_menu { display: none; }
#header .head_inner #head_menu + [for="head_menu"] { position: relative; z-index: 999; display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 6px; color: #FFFFFF; width: 50px; height: 50px; background-color: #ff3b00; cursor: pointer; transition: 0.4s ease-out; }
@media screen and (min-width: 980px) { #header .head_inner #head_menu + [for="head_menu"] { gap: 10px; width: 80px; min-height: 80px; height: 100%; } }
#header .head_inner #head_menu + [for="head_menu"] .hamburger { position: relative; display: block; width: 25px; height: 16px; }
#header .head_inner #head_menu + [for="head_menu"] .hamburger span { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 2px; margin: auto; background-color: #FFFFFF; border-radius: 25em; -webkit-transition: 0.4s ease-out; -moz-transition: 0.4s ease-out; -ms-transition: 0.4s ease-out; -o-transition: 0.4s ease-out; transition: 0.4s ease-out; }
#header .head_inner #head_menu + [for="head_menu"] .hamburger span:first-child { bottom: auto; }
#header .head_inner #head_menu + [for="head_menu"] .hamburger span:last-child { top: auto; }
#header .head_inner #head_menu + [for="head_menu"] .text { display: block; font-size: 10px; font-weight: bold; line-height: 1.0; letter-spacing: 0.06em; text-align: center; }
@media screen and (min-width: 980px) { #header .head_inner #head_menu + [for="head_menu"] .text { font-size: 12px; } }
#header .head_inner #head_menu + [for="head_menu"] .text::before { content: 'MENU'; }
#header .head_inner #head_menu:checked + [for="head_menu"] .hamburger span:not(:first-child):not(:last-child) { background-color: transparent; }
#header .head_inner #head_menu:checked + [for="head_menu"] .hamburger span:first-child { bottom: 0; transform: rotate(45deg); }
#header .head_inner #head_menu:checked + [for="head_menu"] .hamburger span:last-child { top: 0; transform: rotate(-45deg); }
#header .head_inner #head_menu:checked + [for="head_menu"] .text::before { content: 'CLOSE'; }
#header .head_inner #head_menu:checked ~ .head_drawer { opacity: 1.0; visibility: visible; }
#header .head_inner #head_menu:checked ~ .head_drawer .head_drawer__inner { transform: translateX(0); }
#header .head_inner .head_drawer { position: fixed; top: 0; right: 0; z-index: 100; width: 100%; height: 100%; overflow: hidden; opacity: 0; visibility: hidden; transition: 0.4s ease; }
#header .head_inner .head_drawer .head_drawer__inner { width: min(90%, 400px); height: 100%; margin-left: auto; padding: 50px min(5%, 20px); overflow-y: auto; background-color: #FFFFFF; transform: translateX(100%); transition: 0.4s transform ease; -ms-overflow-style: none; scrollbar-width: none; }
@media screen and (min-width: 980px) { #header .head_inner .head_drawer .head_drawer__inner { padding-top: 100px; } }
#header .head_inner .head_drawer .head_drawer__inner::-webkit-scrollbar { display: none; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__buttons { flex-wrap: nowrap; gap: 1px 10px; margin-bottom: 20px; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__buttons .button { flex-basis: 100%; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__buttons .button .button__link { flex-direction: column; width: 100%; min-width: 0; padding: 20px; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list { list-style: none; padding-left: 0; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item { margin-bottom: 1px; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__link { font-size: clamp(16px, calc( 16px + ( 20 - 16 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 20px); position: relative; display: flex; align-items: center; gap: 0 1.0em; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; color: inherit; line-height: 1.2; letter-spacing: 0.06em; text-decoration: none; padding: 0.75em 0; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__link[href="javascript:void(0);"]::after { position: absolute; top: 0; right: 0; font-family: 'Font Awesome 6 Free'; font-size: 12px; font-weight: 900; content: '\f107'; display: flex; justify-content: center; align-items: center; width: 32px; height: 100%; background-color: #f7f7f7; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__link[href="javascript:void(0);"].is-active::after { content: '\f106'; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu { list-style: none; height: 0; padding-left: 0; overflow: hidden; transition: 0.4s height linear; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu.is-active { transition-duration: 1.2s; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) { transition-duration: 0.4s; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list).is-active { transition-duration: 0.4s; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li { border-bottom: 1px solid #DDDDDD; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li a { position: relative; display: flex; align-items: center; color: inherit; text-decoration: none; padding: 1.0em; background-color: #f7f7f7; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li a::after { position: absolute; bottom: 0; left: 0; z-index: 1; content: ''; width: 100%; height: 1px; background-color: #ff3b00; transform: scale(0, 1); transform-origin: right center; transition: 0.4s transform linear; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li a:hover { color: #ff3b00; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li a:hover::after { transform: scale(1); transform-origin: left center; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li .sub-menu { list-style: none; padding-left: 0; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li .sub-menu li { border-bottom: none; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li .sub-menu li a { padding-left: 2.0em; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__list .head_drawer__item .head_drawer__submenu:not(.rinri_list) li:last-child { border-bottom: none; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__contact { margin-top: 20px; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__contact .button__link { width: 100%; padding: 20px; }
#header .head_inner .head_drawer .head_drawer__inner .head_drawer__search { margin-top: 20px; }
#header .head_inner .head_drawer .head_drawer__overlay { position: absolute; top: 0; right: 0; z-index: -1; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.8); }
#header.is-hide { transform: translateY(-100%); }

/* コンテンツ
*****************************************************/
.week { font-family: "YakuHanJP", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 14px; font-weight: bold; color: #00284c; line-height: 24px; text-align: center; width: 24px; height: 24px; background-color: #c7e9f2; border-radius: 50%; }

.post_data { display: flex; align-items: center; gap: 10px; }

.post_time { display: flex; align-items: center; gap: 6px; }
.post_time .year_month span { display: block; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; line-height: 1.0; letter-spacing: 0.06em; }
.post_time .year_month span.year { font-size: 0.75em; }
.post_time .year_month span.month { font-size: 16px; }
.post_time .day { font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 32px; font-weight: bold; line-height: 1.0; letter-spacing: 0.06em; }

.post_info { display: flex; flex-direction: column; line-height: 1.0; }
.post_info .time { font-size: clamp(12px, calc( 12px + ( 14 - 12 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 14px); font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; }
.post_info .price { font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 12px; font-weight: bold; }
.post_info .price span { font-size: 1.333em; }

.post_icon { font-size: 24px; }
.post_icon.fa-sun { color: #ff3b00; }
.post_icon.fa-moon { color: #f6cf4a; }

.post_cat { display: inline-block; font-size: 12px; font-weight: 500; color: #000000; line-height: 1.0; text-decoration: none; text-align: center; padding: 1.0em 1.5em; background-color: #DDDDDD; border-radius: 25em; }

.post_tag { display: flex; align-items: center; gap: 0 0.5em; font-family: "YakuHanJP", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 12px; font-weight: bold; color: #0b7fcc; line-height: 1.0; text-decoration: none; width: fit-content; }

.post_thumbnail { position: relative; width: 100%; overflow: hidden; aspect-ratio: 3 / 2; }
.post_thumbnail img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; transition: 0.4s ease-out; }

.post_place { font-size: clamp(14px, calc( 14px + ( 18 - 14 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 18px); display: flex; align-items: center; gap: 0.5em; line-height: 1.0; width: fit-content; margin-left: auto; }
.post_place .post_place__name { font-family: "YakuHanJP", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; }

.buttons { display: flex; justify-content: center; flex-wrap: wrap; gap: 20px clamp(20px, calc( var(--vw) * 5 ), 40px); }
.buttons .button { margin: 0; }

.button { margin: clamp(32px, calc( var(--vw) * 8.5 ), 80px) auto 0; }
.button:first-child { margin-top: 0; }
.button .button__label { display: flex; justify-content: center; align-items: center; gap: 0 1.0em; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; line-height: 1.2; text-align: center; margin-bottom: 1.0em; }
.button .button__label::before, .button .button__label::after { content: ''; flex-shrink: 1; flex-grow: 1; display: block; height: 1px; background-color: #000000; }
.button .button__link { display: flex; justify-content: center; align-items: center; gap: 5px 1.0em; color: #FFFFFF; text-decoration: none; width: fit-content; min-width: 280px; min-height: clamp(60px, calc( var(--vw) * 13.333 ), 100px); margin: auto; padding: 10px clamp(20px, calc( var(--vw) * 5.333 ), 44px); background-color: #00284c; }
.button .button__link i { font-size: clamp(12px, calc( 12px + ( 20 - 12 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 20px); display: flex; justify-content: center; align-items: center; color: #0b7fcc; width: 2.8em; height: 2.8em; background-color: #FFFFFF; border-radius: 50%; aspect-ratio: 1 / 1; transition: 0.4s ease-out; }
.button .button__link .button__txt { font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 1.111em; font-weight: bold; line-height: 1.2; letter-spacing: 0.06em; }
.button .button__link[target="_blank"] .button__txt { display: flex; align-items: center; gap: 0 0.5em; }
.button .button__link[target="_blank"] .button__txt::after { font-family: 'Font Awesome 6 Free'; font-weight: 900; content: '\f08e'; }
.button .button__link:hover { background-color: #0b7fcc; }
.button[data-color="contact"] .button__link { background-color: #ff3b00; }
.button[data-color="contact"] .button__link i { color: #ff3b00; }
.button[data-color="contact"] .button__link:hover { background-color: #d92117; }
.button[data-color="contact"] .button__link:hover i { color: #d92117; }

.readmore { margin-top: clamp(40px, calc( var(--vw) * 10.666 ), 80px); }
.readmore .readmore__link { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 0 1.0em; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 1.111em; font-weight: bold; color: inherit; line-height: 1.4; letter-spacing: 0.2em; text-decoration: none; max-width: 472px; margin: auto; padding-bottom: 0.6em; }
.readmore .readmore__link i { color: #ff3b00; }
.readmore .readmore__link::after { position: absolute; bottom: 0; left: 0; content: ''; width: 100%; height: 1px; background-color: #ff3b00; transform-origin: right center; transition: 0.4s transform linear; }
.readmore .readmore__link:hover { color: #ff3b00; }
.readmore .readmore__link:hover::after { animation: hide-line 0.4s forwards, show-line 0.4s 0.4s forwards; }

@keyframes hide-line { 0% { transform: scale(1); transform-origin: right center; }
  100% { transform: scale(0, 1); transform-origin: right center; } }
@keyframes show-line { 0% { transform: scale(0, 1); transform-origin: left center; }
  100% { transform: scale(1); transform-origin: left center; } }
.rinri_list { line-height: 1.0; list-style: none; padding-left: 0; }
.rinri_list .rinri_list__item dt { display: flex; align-items: flex-end; gap: 0 14px; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; letter-spacing: 0; padding: 15px 10px 10px 20px; background-color: #f7f7f7; border-left-width: 5px; border-left-style: solid; }
.rinri_list .rinri_list__item dt span.block { font-size: 12px; }
.rinri_list .rinri_list__item dt span.area { font-size: 1.111em; }
.rinri_list .rinri_list__item .rinri_list__menu { list-style: none; padding-left: 0; }
.rinri_list .rinri_list__item .rinri_list__menu li { position: relative; border-bottom: 1px dashed #DDDDDD; }
.rinri_list .rinri_list__item .rinri_list__menu li a { display: flex; align-items: center; color: inherit; gap: 0 0.5em; line-height: 1.2; letter-spacing: 0.06em; text-decoration: none; padding: 1.111em 0; }
.rinri_list .rinri_list__item .rinri_list__menu li a .tankai { border-left: none; }
.rinri_list .rinri_list__item .rinri_list__menu li a::after { position: absolute; bottom: -1px; left: 0; content: ''; width: 100%; height: 1px; background-color: #ff3b00; transform: scale(0, 1); transform-origin: right center; transition: 0.4s transform linear; }
.rinri_list .rinri_list__item .rinri_list__menu li a:hover { color: #ff3b00; }
.rinri_list .rinri_list__item .rinri_list__menu li a:hover::after { transform: scale(1); transform-origin: left center; }
.rinri_list .rinri_list__item .rinri_list__menu li:last-child { border-bottom: none; }
.rinri_list.is-note { display: flex; flex-wrap: wrap; gap: clamp(12px, calc( var(--vw) * 3.2 ), 24px); }
.rinri_list.is-note .rinri_list__item { position: relative; width: 100%; padding: clamp(20px, calc( var(--vw) * 10 ), 40px) clamp(10px, calc( var(--vw) * 5 ), 20px) clamp(10px, calc( var(--vw) * 5 ), 20px); border: 1px solid #DDDDDD; border-radius: 0 0 0 6px; }
@media screen and (min-width: 768px) { .rinri_list.is-note .rinri_list__item { width: calc( 50% - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) * 0.5 ) ); } }
@media screen and (min-width: 980px) { .rinri_list.is-note .rinri_list__item { width: calc( 33.33% - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) * 0.333 ) ) ); } }
.rinri_list.is-note .rinri_list__item::before, .rinri_list.is-note .rinri_list__item::after { position: absolute; top: -1px; right: -1px; z-index: 1; content: ''; width: clamp(10px, calc( var(--vw) * 5 ), 20px); height: clamp(10px, calc( var(--vw) * 5 ), 20px); }
.rinri_list.is-note .rinri_list__item::before { background-color: #FFFFFF; clip-path: polygon(100% 0, 0 0, 100% 100%); }
.rinri_list.is-note .rinri_list__item::after { background-color: #DDDDDD; clip-path: polygon(0 0, 0 100%, 100% 100%); }

.seminer_list { list-style: none; padding-left: 0; }
.seminer_list .seminer_list__item a { display: block; color: inherit; text-decoration: none; }
.seminer_list .seminer_list__item a .post_thumbnail { background-color: #FFFFFF; aspect-ratio: 12 / 11; }
.seminer_list .seminer_list__item a .post_thumbnail img { padding: clamp(5px, calc( var(--vw) * 1.333 ), 10px); object-fit: contain; }
.seminer_list .seminer_list__item a .post_data { position: relative; width: fit-content; margin-bottom: 5px; }
.seminer_list .seminer_list__item a .post_data::before { position: absolute; top: -20px; left: 0; content: ''; width: calc( 100% + 20px ); height: 20px; background-color: #FFFFFF; border-radius: 0 6px 0 0; }
.seminer_list[data-color="white"] .seminer_list__item .post_data::before { background-color: #00284c; }

.members_list { list-style: none; padding-left: 0; }
.members_list .members_list__item { margin: 0; }
.members_list .members_list__item a { display: flex; flex-direction: column; color: inherit; text-decoration: none; height: 100%; }
.members_list .members_list__item a .post_thumbnail { aspect-ratio: 150 / 53; }
.members_list .members_list__item a .members_list__rows { display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; flex-shrink: 1; flex-grow: 1; gap: 5px 20px; margin-top: clamp(12px, calc( var(--vw) * 1.458 ), 28px); }
.members_list .members_list__item a .members_list__rows .members_list__title { display: flex; align-items: flex-end; flex-wrap: wrap; flex-shrink: 1; flex-grow: 1; gap: 0.5em 1.0em; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; line-height: 1.4; margin-bottom: auto; }
.members_list .members_list__item a .members_list__rows .members_list__title span.company { font-size: clamp(12px, calc( 12px + ( 18 - 12 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 18px); }
.members_list .members_list__item a .members_list__rows .members_list__title span.name { font-size: clamp(16px, calc( 16px + ( 24 - 16 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 24px); }
.members_list .members_list__item a .members_list__rows .post_place { flex-shrink: 0; }
.members_list.company .members_list__item a .post_thumbnail { aspect-ratio: 512 / 147; }

.members_list:not(.home_members__list) { display: flex; justify-content: center; flex-wrap: wrap; gap: 40px clamp(12px, calc( var(--vw) * 3.2 ), 20px); }
.members_list:not(.home_members__list) .members_list__item { width: 100%; }
@media screen and (min-width: 768px) { .members_list:not(.home_members__list) .members_list__item { width: calc( 50% - ( clamp(12px, calc( var(--vw) * 3.2 ), 20px) * 0.5 ) ); } }

.magazine_list { display: flex; flex-wrap: wrap; gap: 40px clamp(12px, calc( var(--vw) * 3.2 ), 24px); list-style: none; padding-left: 0; }
.magazine_list .magazine_list__item { width: calc( 50% - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) * 0.5 ) ); margin: 0; }
.magazine_list .magazine_list__item a { color: inherit; text-decoration: none; }
.magazine_list .magazine_list__item .post_title { font-family: "YakuHanJP", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 0.875em; font-weight: bold; text-align: center; margin-bottom: 10px; }
.magazine_list .magazine_list__item .post_thumbnail { border: 1px solid #DDDDDD; aspect-ratio: 1058 / 1497; }

.magazine_list:not(.home_magazine__list) .magazine_list__item { height: 100%; }
@media screen and (min-width: 768px) { .magazine_list:not(.home_magazine__list) .magazine_list__item { width: calc( 33.33% - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) * 0.333 ) ) ); } }
@media screen and (min-width: 980px) { .magazine_list:not(.home_magazine__list) .magazine_list__item { width: calc( 25% - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) - ( clamp(12px, calc( var(--vw) * 3.2 ), 24px) * 0.25 ) ) ); } }

.search_form { position: relative; }
.search_form input[type="text"] { padding-right: 44px; background-color: #f7f7f7; border-radius: 25em; }
.search_form button[type="submit"] { position: absolute; top: 0; right: 0; font-size: 16px; line-height: 1.0; text-indent: 100%; white-space: nowrap; width: 44px; height: 44px; padding: 0; overflow: hidden; background: none; border: none; appearance: none; }
.search_form button[type="submit"]::after { position: absolute; top: 50%; left: 50%; content: '\f002'; font-family: 'Font Awesome 6 Free'; font-weight: 900; color: #999; text-indent: 0; transform: translate(-50%, -50%); }

.swiper .swiper-button-prev, .swiper .swiper-button-next { top: 0; bottom: 0; color: #00284c; width: fit-content; height: fit-content; margin-top: auto; margin-bottom: auto; }
.swiper .swiper-button-prev::after, .swiper .swiper-button-next::after { font-size: clamp(32px, calc( 32px + ( 44 - 32 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 44px); font-family: 'Font Awesome 6 Free'; font-weight: 900; }
.swiper .swiper-button-prev::after { content: '\f0a8'; }
.swiper .swiper-button-next::after { content: '\f0a9'; }
.swiper .swiper-horizontal > .swiper-scrollbar, .swiper .swiper-scrollbar.swiper-scrollbar-horizontal { bottom: -14px; background-color: #DDDDDD; }
.swiper .swiper-horizontal > .swiper-scrollbar .swiper-scrollbar-drag, .swiper .swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag { background-color: #919191; }
.swiper .swiper-controls { display: flex; justify-content: center; align-items: center; gap: 0 16px; margin-top: clamp(16px, calc( var(--vw) * 4.266 ), 28px); }
.swiper .swiper-controls .swiper-button-prev, .swiper .swiper-controls .swiper-button-next { position: static; color: #FFFFFF; }
.swiper .swiper-controls .swiper-horizontal > .swiper-scrollbar, .swiper .swiper-controls .swiper-scrollbar.swiper-scrollbar-horizontal { position: static; }
.swiper .swiper-controls[data-color="white"] .swiper-horizontal > .swiper-scrollbar, .swiper .swiper-controls[data-color="white"] .swiper-scrollbar.swiper-scrollbar-horizontal { background-color: rgba(255, 255, 255, 0.4); }
.swiper .swiper-controls[data-color="white"] .swiper-horizontal > .swiper-scrollbar .swiper-scrollbar-drag, .swiper .swiper-controls[data-color="white"] .swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag { background-color: #FFFFFF; }

/* フッター
*****************************************************/
#footer { margin-top: clamp(60px, calc( var(--vw) * 16 ), 140px); }
#footer .foot_buttons { margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 100px); }
#footer .foot_buttons .foot_buttons__rows { display: flex; justify-content: center; flex-wrap: wrap; gap: 40px clamp(12px, calc( var(--vw) * 5 ), 80px); margin: 0 calc( ( 50% - ( var(--vw) * 50 ) ) + min( calc( var(--vw) * 5 ), 40px ) ); }
#footer .foot_buttons .foot_buttons__rows .foot_button { flex-grow: 1; flex-basis: 420px; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link { position: relative; display: block; color: inherit; text-decoration: none; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link .foot_button__icon { font-size: clamp(32px, calc( 32px + ( 66 - 32 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 66px); position: absolute; top: -0.5em; right: 0; left: 0; z-index: 1; display: flex; justify-content: center; align-items: center; color: #0b7fcc; width: 1.0em; height: 1.0em; margin: auto; background-color: #FFFFFF; border: clamp(2px, calc( var(--vw) * 0.5 ), 5px) solid #00284c; border-radius: 50%; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link .foot_button__icon::before { font-size: 0.333em; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link .post_thumbnail { aspect-ratio: 11 / 4; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link .foot_button__text { font-size: clamp(14px, calc( 14px + ( 24 - 14 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 24px); display: block; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; letter-spacing: 0.06em; text-align: center; margin-top: 1.0em; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link[target="_blank"] .foot_button__text { display: flex; justify-content: center; align-items: center; gap: 0 0.5em; }
#footer .foot_buttons .foot_buttons__rows .foot_button .foot_button__link[target="_blank"] .foot_button__text::after { content: '\f08e'; font-family: 'Font Awesome 6 Free'; font-weight: 900; }
#footer .foot_content { position: relative; z-index: 1; padding-bottom: clamp(60px, calc( var(--vw) * 16 ), 320px); }
#footer .foot_content .foot_sitedata .foot_logo { width: fit-content; margin: 0 auto; }
#footer .foot_content .foot_sitedata .foot_address { display: flex; justify-content: center; flex-wrap: wrap; gap: 0 0.5em; font-style: normal; margin-top: clamp(16px, calc( var(--vw) * 4.266 ), 28px); }
#footer .foot_content .foot_sitedata .foot_address span { line-height: 1.6; letter-spacing: 0.06em; }
#footer .foot_content .foot_infomation { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 40px clamp(12px, calc( var(--vw) * 5 ), 80px); margin-top: clamp(40px, calc( var(--vw) * 10.666 ), 60px); }
#footer .foot_content .foot_infomation .foot_infomation__item { flex-grow: 1; flex-basis: 406px; }
#footer .foot_content .foot_infomation .foot_infomation__item dt { display: flex; justify-content: center; align-items: center; gap: 0 1.0em; font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; line-height: 1.6; text-align: center; letter-spacing: 0.06em; margin-bottom: 1.0em; }
#footer .foot_content .foot_infomation .foot_infomation__item dt::before, #footer .foot_content .foot_infomation .foot_infomation__item dt::after { content: ''; flex-shrink: 1; flex-grow: 1; height: 1px; background-color: #000000; }
#footer .foot_content .foot_infomation .foot_infomation__item dd { display: flex; flex-wrap: wrap; gap: 1.0em; }
#footer .foot_content .foot_infomation .foot_infomation__item dd p { line-height: 1.6; margin: 0; }
#footer .foot_content .foot_infomation .foot_infomation__item dd p a { color: inherit; text-decoration: none; }
#footer .foot_content .foot_infomation .foot_infomation__item dd p a[href*="mailto:"] { display: flex; align-items: center; gap: 0.5em; width: fit-content; }
#footer .foot_content .foot_infomation .foot_infomation__item dd p a[href*="mailto:"]::before { content: '\f0e0'; font-family: 'Font Awesome 6 Free'; font-weight: 900; }
#footer .foot_content .foot_infomation .foot_infomation__item dd .button { width: 100%; }
#footer .foot_content .foot_infomation .foot_infomation__item dd .button .button__link { width: 100%; }
#footer .foot_content .foot_bottom { margin-top: clamp(40px, calc( var(--vw) * 10.666 ), 80px); }
#footer .foot_content .foot_bottom .foot_bottom__rows { display: flex; align-items: center; flex-direction: column; gap: 1em clamp(20px, calc( var(--vw) * 5.333 ), 80px); }
@media screen and (min-width: 768px) { #footer .foot_content .foot_bottom .foot_bottom__rows { justify-content: space-between; flex-direction: row-reverse; } }
#footer .foot_content .foot_bottom .foot_bottom__rows p { font-size: 14px; line-height: 1.6; margin: 0; }
#footer .foot_content .foot_content__background { position: absolute; right: 0; bottom: 0; z-index: -1; width: 100%; height: 100%; }
#footer .foot_content .foot_content__background img { width: 100%; height: 100%; opacity: 0.25; object-fit: cover; object-position: top center; }
#footer .foot_content .foot_content__background::before { position: absolute; right: 0; bottom: 0; z-index: 1; content: ''; width: 100%; height: 100%; background-image: linear-gradient(to bottom, #FFFFFF 15%, transparent 100%); }
