@charset "UTF-8";
/* -- Color -- */
/* -- Fonts -- */
/* -- Margin -- */
/* -- @font-face -- */
/* -- Font around -- */
/* -- Prefix -- */
/* -- Media Screen -- */
/* -- Retina -- */
/* -- Flex -- */
/* -- Placeholder -- */
/* メイン
------------------------------------------------------------*/
.main_visual { position: relative; }
.main_visual .main_visual__text { position: absolute; top: 0; bottom: 0; left: min(calc( var(--vw) * 5 ), 80px); z-index: 1; width: fit-content; height: fit-content; margin: auto; }
.main_visual .main_visual__text span { display: block; width: fit-content; margin-bottom: 0.48em; background-color: #FFFFFF; }
.main_visual .main_visual__text span:last-child { margin-bottom: 0; }
.main_visual .main_visual__text h2 { font-size: clamp(24px, calc( 24px + ( 54 - 24 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 54px); font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; letter-spacing: 0.2em; }
.main_visual .main_visual__text p { font-size: clamp(14px, calc( 14px + ( 20 - 14 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 20px); font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; margin-top: 2.0em; }
@media screen and (min-width: 980px) { .main_visual .main_visual__text p { display: flex; flex-wrap: wrap; gap: 0.48em 0; }
  .main_visual .main_visual__text p span { margin-bottom: 0; } }
.main_visual .main_visual__slider { z-index: 0; width: calc( var(--vw) * 90 ); height: 100svh; margin-right: 0; }
@media screen and (min-width: 980px) { .main_visual .main_visual__slider { width: calc( var(--vw) * 75 ); } }
.main_visual .main_visual__slider .swiper-wrapper { height: 100%; }
.main_visual .main_visual__slider .swiper-wrapper .swiper-slide { height: 100%; }
.main_visual .main_visual__slider .swiper-wrapper .swiper-slide img { width: 100%; height: 100%; object-fit: cover; }
.main_visual .main_visual__buttons { position: absolute; right: 0; bottom: 0; z-index: 1; flex-wrap: nowrap; gap: 0; width: min(100%, 560px); }
.main_visual .main_visual__buttons .button { position: relative; flex-basis: 100%; }
.main_visual .main_visual__buttons .button .button__link { width: 100%; min-width: 0; padding: 20px; }
.main_visual .main_visual__buttons .button::after { position: absolute; top: 0; right: 0; bottom: 0; content: ''; width: 1px; height: 56%; margin: auto; background-color: rgba(255, 255, 255, 0.5); }
.main_visual .main_visual__buttons .button:last-child::after { display: none; }

/* コンテンツ共通
------------------------------------------------------------*/
.headline { display: flex; justify-content: center; align-items: center; flex-direction: column; gap: clamp(12px, calc( var(--vw) * 3.2 ), 20px); 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.2em; text-align: center; margin-bottom: clamp(32px, calc( var(--vw) * 8.5 ), 48px); }
.headline i { font-size: clamp(32px, calc( 32px + ( 56 - 32 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 56px); background-image: linear-gradient(to bottom, #444444 0%, #9b9b9b 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.headline .en { font-size: clamp(24px, calc( 24px + ( 40 - 24 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 40px); }
.headline .ja { font-size: clamp(14px, calc( 14px + ( 20 - 14 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 20px); display: flex; justify-content: center; align-items: center; gap: 0.5em; }
.headline .ja::before { content: '［'; }
.headline .ja::after { content: '］'; }
.headline + p { width: fit-content; margin-right: auto; margin-bottom: clamp(32px, calc( var(--vw) * 8.533 ), 60px); margin-left: auto; }
.headline + p em { font-family: "YakuHanJP", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-size: 1.333em; font-weight: bold; font-style: normal; color: #ff3b00; }
.headline[data-color="white"] { color: #FFFFFF; }
.headline[data-color="white"] i { background-image: linear-gradient(to bottom, #FFFFFF 0%, rgba(255, 255, 255, 0.66) 100%); }

/* ピックアップ
------------------------------------------------------------*/
.home_pickup { margin-top: 40px; margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); }
.home_pickup .home_pickup__rows { display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(10px, calc( var(--vw) * 2.666 ), 50px); padding-right: min(calc( var(--vw) * 5 ), 40px); padding-left: min(calc( var(--vw) * 5 ), 40px); }
.home_pickup .home_pickup__rows .home_pickup__col { width: min(100%, 580px); }
.home_pickup .home_pickup__rows .home_pickup__col img { margin: auto; }
@media screen and (min-width: 980px) { .home_pickup .home_pickup__rows .home_pickup__col img { width: 100%; } }
@media screen and (min-width: 768px) { .home_pickup .home_pickup__rows .home_pickup__col { flex-grow: 1; width: 320px; } }

/* 入会のご案内
------------------------------------------------------------*/
.home_join { position: relative; z-index: 1; margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); overflow: hidden; }
@media screen and (min-width: 980px) { .home_join .home_join__rows { display: flex; flex-direction: row-reverse; gap: 0 clamp(40px, calc( var(--vw) * 4 ), 80px); } }
.home_join .home_join__rows .home_join__content { position: relative; z-index: 1; background-color: #FFFFFF; }
@media screen and (min-width: 980px) { .home_join .home_join__rows .home_join__content { display: flex; justify-content: center; flex-direction: column; flex-shrink: 0; width: min(46.1%, 472px); padding: 0; } }
@media screen and (min-width: 1440px) { .home_join .home_join__rows .home_join__content::before { position: absolute; top: 0; right: 100%; content: ''; width: clamp(40px, calc( var(--vw) * 4 ), 80px); height: 100%; background-color: #FFFFFF; } }
.home_join .home_join__rows .home_join__content .home_join__title { font-size: clamp(24px, calc( 24px + ( 40 - 24 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 40px); font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; line-height: 1.8; letter-spacing: 0.2em; margin-bottom: 0.8em; }
.home_join .home_join__rows .home_join__content .home_join__text { margin-bottom: 0; }
.home_join .home_join__rows .home_join__content .home_join__text em { display: inline-block; font-family: "YakuHanJP", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; font-style: normal; color: #ff3b00; }
.home_join .home_join__rows .home_join__content .home_join__text em .all_base_num { font-size: 1.333em; }
.home_join .home_join__rows .home_join__gallery { margin: 40px calc( 50% - ( var(--vw) * 50 ) ); }
.home_join .home_join__rows .home_join__gallery:first-child { margin-top: 0; }
.home_join .home_join__rows .home_join__gallery:last-child { margin-bottom: 0; }
@media screen and (min-width: 980px) { .home_join .home_join__rows .home_join__gallery { flex-shrink: 1; flex-grow: 1; margin-bottom: 0; margin-left: 0; } }
.home_join .home_join__rows .home_join__gallery .home_join__img { width: 100%; height: 100%; }
.home_join .home_join__rows .home_join__gallery .home_join__img img { width: 100%; height: 100%; object-fit: cover; }
.home_join .home_join__rows .home_join__gallery .home_join__gallery__main + .home_join__gallery__sub { display: none; }
@media screen and (min-width: 980px) { .home_join .home_join__rows .home_join__gallery .home_join__gallery__main + .home_join__gallery__sub { display: flex; } }
@media screen and (min-width: 1440px) { .home_join .home_join__rows .home_join__gallery .home_join__gallery__main + .home_join__gallery__sub { display: flex; } }
@media screen and (min-width: 1440px) { .home_join .home_join__rows .home_join__gallery .home_join__gallery__main { height: 100%; } }
.home_join .home_join__rows .home_join__gallery .home_join__gallery__sub { display: flex; justify-content: center; }
@media screen and (min-width: 1440px) { .home_join .home_join__rows .home_join__gallery .home_join__gallery__sub { position: absolute; top: 0; left: 0; z-index: -1; flex-direction: column; width: calc( var(--vw) * 15.98 ); height: 100%; } }

/* ピックアップセミナー
------------------------------------------------------------*/
.home_seminer { color: #FFFFFF; margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); padding-top: clamp(60px, calc( var(--vw) * 16 ), 140px); padding-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); overflow: hidden; background-color: #00284c; }
.home_seminer .home_seminer__carousel { overflow: visible; }

/* 会員企業のご紹介
------------------------------------------------------------*/
.home_members { margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); }
.home_members .home_members__list { display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(20px, calc( var(--vw) * 5.333 ), 40px) clamp(12px, calc( var(--vw) * 3.2 ), 20px); margin: 0 calc( ( 50% - ( var(--vw) * 50 ) ) + min( calc( var(--vw) * 5 ), 40px ) ); }
.home_members .home_members__list .members_list__item { width: 100%; }
@media screen and (min-width: 768px) { .home_members .home_members__list .members_list__item { width: calc( 50% - ( clamp(12px, calc( var(--vw) * 3.2 ), 20px) * 0.5 ) ); } }
@media screen and (min-width: 980px) { .home_members .home_members__list .members_list__item { width: calc( 33.33% - ( clamp(12px, calc( var(--vw) * 3.2 ), 20px) - ( clamp(12px, calc( var(--vw) * 3.2 ), 20px) * 0.333 ) ) ); } }

/* 私の「実践」記録
------------------------------------------------------------*/
.home_practice { position: relative; z-index: 1; margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); padding-top: clamp(60px, calc( var(--vw) * 16 ), 140px); padding-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); clip-path: inset(0); }
.home_practice .home_practice__content { max-width: 472px; }
@media screen and (min-width: 980px) { .home_practice .home_practice__content { width: 46%; } }
.home_practice .home_practice__content .home_practice__title { font-size: clamp(24px, calc( 24px + ( 40 - 24 ) * ( ( 100dvw - 375px ) / ( 1920 - 375 ) ) ), 40px); font-family: "YakuHanJP", "Midashi Go MB31", "YuGothic", "Yu Gothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; font-weight: bold; letter-spacing: 0.2em; margin-bottom: 1.0em; }
.home_practice .home_practice__background { position: fixed; top: 0; right: 0; z-index: -1; width: 100%; height: 100%; opacity: 0.4; }
.home_practice .home_practice__background img { width: 100%; height: 100%; object-fit: cover; }

/* 倫理法人会一覧
------------------------------------------------------------*/
.home_lists { margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); }

/* 広報誌
------------------------------------------------------------*/
.home_magazine { margin-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); padding-top: clamp(60px, calc( var(--vw) * 16 ), 140px); padding-bottom: clamp(60px, calc( var(--vw) * 16 ), 140px); background-color: #f7f7f7; }
@media screen and (min-width: 768px) { .home_magazine .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 ) ) ); } }
