@charset "UTF-8";

html.no-scroll {
    overflow: hidden;
}

.header,
.footer,
.top_main,
.custom_main {
    line-height: 1.15;
}

.f_fut {
    font-family: "futura-pt", sans-serif;
}

.f_sip {
    font-family: "Shippori Mincho", serif;
}

body {
    background-image: url("/penguin/resources/image/alf_housing/kani/background.jpg");
    background-size: cover;
    background-position: center center;
    height: 100vh;
    font-family: "Noto Sans JP", sans-serif;
    color: #1a1a1a;
    font-size: 16px;
    font-weight: 400;
}

a {
    transition: 0.3s;
}

a:hover {
    opacity: 0.6;
}

.wrap {
    max-width: 1140px;
    margin: 0 auto;
}

.pc {
    display: block;
}

.sp {
    display: none !important;
}

/* common */
.title .en_title {
    font-family: "futura-pt", sans-serif;
    font-style: italic;
    font-weight: 500;
    font-size: 22px;
    color: #8b6e64;
    font-style: italic;
    text-transform: uppercase;
}

.title .ja_title {
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 300;
    color: #1a1a1a;
}

.title {
    padding-left: 40px;
    border-left: 1px solid #453029;
    position: relative;
}

.title::before {
    content: "";
    position: absolute;
    top: 0;
    left: -3px;
    width: 5px;
    height: 5px;
    background-color: #453029;
}

.btn_wrap {
    width: 230px;
    position: relative;
    text-align: center;
    padding: 1.2em;
    display: block;
    text-decoration: none;
    z-index: 1;
}

.btn_wrap::before,
.btn_wrap::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.btn_wrap::before {
    top: -2px;
    right: -2px;
}

.btn_wrap::after {
    left: -2px;
    bottom: -2px;
}

.btn_wrap a:hover img {
    filter: brightness(0) invert(1);
}

.btn {
    display: inline-flex;
    align-items: center;
    font-size: 18px;
    font-family: "futura-pt", sans-serif;
    text-transform: uppercase;
    color: #324571;
    transition: background-color 0.6s ease, color 0.6s ease;
}

.btn:hover {
    opacity: 1;
}

.btn .arrow {
    margin-left: 8px;
    display: flex;
    align-items: center;
}

.btn .arrow img {
    width: 43px;
}

.btn .clipped_rectangle_btn {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: -1;
}

.btn .clipped_rectangle_btn:before,
.btn .clipped_rectangle_btn:after {
    content: "";
    position: absolute;
    width: 14.14px;
    height: 1px;
    background: #324571;
}

.btn .clipped_rectangle_btn:before {
    left: -2px;
    top: 3px;
    transform: rotate(-45deg);
}

.btn .clipped_rectangle_btn:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
}

.btn .clipped_rectangle_btn {
    transition: background 0.3s;
}

.btn:hover .clipped_rectangle_btn {
    background: #324571;
    opacity: 1;
}

.btn:hover p,
.btn:hover .arrow {
    color: #fff;
}

/* header */
.header {
    min-width: 1440px;
    width: 100%;
    height: 126px;
    transition: background-color 0.3s ease;
    z-index: 100;
}

.header .inner {
    margin: auto;
    max-width: 1440px;
    width: 100%;
    overflow: hidden;
}

.header_white {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1001;
}

.header_black {
    position: fixed;
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: 10;
    transition: transform 0.3s ease;
}

.header .inner_white,
.header .inner_black {
    margin: auto;
    padding: 0 50px;
    width: 100%;
    height: 126px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header .logo img {
    max-width: 112px;
    object-fit: contain;
    display: block;
}

.header .nav_list:nth-child(n + 2) {
    margin-top: 16px;
}

.header .nav_list,
.header .nav_btn_list {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50%;
}

.header .nav_list:first-child {
    justify-content: end;
}

.header .nav_item {
    height: 100%;
}

.header .nav_item a {
    position: relative;
    color: #fff;
}

.header .nav_item a::after {
    position: absolute;
    content: "";
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: #fff;
    transition: all 0.3s ease 0s;
}

.header .nav_item a::before {
    position: absolute;
    content: "";
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    background: #fff;
    transition: all 0.3s ease 0s;
    opacity: 0;
}

.header .nav_item a:hover {
    opacity: inherit;
}

.header .nav_item a:hover::after {
    width: 70%;
}

.header .nav_item a:hover::before {
    opacity: 1;
    width: 4px;
    height: 4px;
    left: 85%;
}

.header .nav_item_black a {
    color: #324571;
}

.header .nav_item_black a::after {
    background: #324571;
}

.header .nav_item_black a::before {
    background: #324571;
}

.header .nav_item_black a {
    color: #383838;
}

.header .nav_item_tel .tel {
    display: flex;
    align-items: center;
    font-family: "futura-pt", sans-serif;
    font-style: italic;
    color: #fff;
    height: 100%;
}

.header .nav_item_tel_black .tel {
    color: #1a1a1a;
}

.header .nav_item_tel img {
    width: 35px;
    height: 35px;
}

.header .nav_item_tel span {
    padding-left: 5px;
    font-size: 40px;
    letter-spacing: 0.001em;
}

.header .nav_item_tel p {
    font-size: 14px;
    text-align: center;
    color: #fff;
}

.header .nav_item_tel_black p {
    color: #626262;
}

.header .nav_item_other {
    margin-left: 8.5px;
}

.header .nav_item_other img {
    width: 18px;
    height: 18px;
}

.header .nav_item_other span {
    padding-left: 6px;
    font-size: 15px;
}

.header .nav_item_other {
    height: 100%;
}

.header .nav_item_other a span {
    position: relative;
    color: #fff;
}

.header .nav_item_other a span::after {
    position: absolute;
    content: "";
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: #fff;
    transition: all 0.3s ease 0s;
}

.header .nav_item_other a span::before {
    position: absolute;
    content: "";
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    background: #fff;
    transition: all 0.3s ease 0s;
    opacity: 0;
}

.header .nav_item_other a span:hover::after {
    width: 70%;
}

.header .nav_item_other a span:hover::before {
    opacity: 1;
    width: 4px;
    height: 4px;
    left: 85%;
}

.header .nav_item_other a:hover {
    opacity: inherit;
}

.header .nav_item_other_black a span {
    color: #324571;
}

.header .nav_item_other_black a span::after {
    background: #324571;
}

.header .nav_item_other_black a span::before {
    background: #324571;
}

.header .nav_item_other_black a span {
    color: #383838;
}

.header .nav_item:nth-child(n + 2) {
    margin-left: 24px;
}

.header .nav_item a {
    display: flex;
    align-items: center;
    color: #fff;
    height: 100%;
}

.header .nav_item_black a {
    color: #383838;
}

.header .nav_item:not(:first-child) {
    padding-left: 24px;
    border-left: 1px solid #c6c6c6;
}

.header .nav_btn_list {
    padding-left: 30px;
    border-left: 1px solid #c6c6c6;
}

.header .nav_btn_item {
    width: 130px;
    text-align: center;
}

.header .nav_btn_item a {
    position: relative;
    text-align: center;
    padding: 1em;
    display: block;
    color: #fff;
    text-decoration: none;
    z-index: 2;
}

.header .nav_btn_item:nth-child(1) a {
    padding-top: 18px;
}

.header .nav_btn_item_black a {
    color: #324571;
}

.header .nav_btn_item a::before,
.header .nav_btn_item a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #fff;
}

.header .nav_btn_item_black a::before,
.header .nav_btn_item_black a::after {
    background: #324571;
}

.header .nav_btn_item a::before {
    top: -2px;
    right: -2px;
}

.header .nav_btn_item a::after {
    left: -2px;
    bottom: -2px;
}

.header .nav_btn_item:not(:first-child) {
    margin-left: 10px;
}

.header .nav_btn_item img {
    width: 17px;
}

.header .nav_btn_item:first-child img {
    width: 18px;
}

.header .nav_btn_item:nth-child(3) img {
    height: 18px;
}

.header .nav_btn_item p {
    padding-top: 17px;
    color: #fff;
    font-size: 15px;
    white-space: nowrap;
}

.header .nav_btn_item:nth-child(3) p {
    padding-top: 20px;
}

.header .nav_btn_item_black p {
    color: #324571;
}

.header .nav_btn_item a:hover {
    opacity: inherit;
}

.header .clipped_rectangle {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    transition: 0.2s;
    z-index: -1;
}

.header .clipped_rectangle_black {
    border: 1px solid #324571;
}

.header .clipped_rectangle:before,
.header .clipped_rectangle:after {
    content: "";
    position: absolute;
    width: 14.14px;
    height: 1px;
    background: #fff;
}

.header .clipped_rectangle_black:before,
.header .clipped_rectangle_black:after {
    background: #324571;
}

.header .clipped_rectangle:before {
    left: -3px;
    top: 4px;
    transform: rotate(-45deg);
}

.header .clipped_rectangle:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
}

.header .nav_btn_item a .clipped_rectangle {
    transition: background 0.3s;
}

.header .nav_btn_item a:hover .clipped_rectangle {
    background: #0fa27a;
}

.header.header_black .nav_btn_item a:hover .clipped_rectangle {
    background: var(--sub-color);
}

.header_hamburger,
.header_drawer {
    display: none;
}

/* page_header */
.page_header {
    height: 130px;
    z-index: 100;
}

/* top_fv */
.top_fv {
    position: relative;
    min-width: 1440px;
    min-height: 720px;
    height: 100vh;
    z-index: 11;
    width: 100%;
    overflow: hidden;
}

.top_fv .inner {
    margin: 0 auto;
    height: inherit;
    width: 100%;
    overflow: hidden;
}

.top_fv .fv_wrap {
    height: inherit;
    overflow: hidden;
}

.top_fv .fv_swiper {
    height: inherit;
    padding: 0;
}

.fv_swiper,
.fv_swiper .swiper-img,
.fv_swiper .swiper-img img {
    height: inherit;
}

.top_fv .fv_wrap {
    height: inherit;
    position: relative;
}

.top_fv .swiper-wrapper {
    height: inherit;
    position: relative;
}

.top_fv .swiper-slide {
    height: inherit;
    position: relative;
}

.top_fv .slide1 {
    background-image: url("/penguin/resources/image/alf_housing/kani/fv-1.jpg");
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: 100vh;
    object-fit: cover;
    display: block;
    clip-path: polygon(0 0, 100% 0, 100% 88.8%, 63.8% 88.88%, 62.1% 100%, 0 100%);
}

.top_fv .slide2 {
    background-image: url("/penguin/resources/image/alf_housing/kani/fv-2.jpg");
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: 100vh;
    object-fit: cover;
    display: block;
    clip-path: polygon(0 0, 100% 0, 100% 88.8%, 63.8% 88.88%, 62.1% 100%, 0 100%);
}

.top_fv .slide3 {
    background-image: url("/penguin/resources/image/alf_housing/kani/fv-3.jpg");
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: 100vh;
    object-fit: cover;
    display: block;
    clip-path: polygon(0 0, 100% 0, 100% 88.8%, 63.8% 88.88%, 62.1% 100%, 0 100%);
}

.top_fv .swiper-slide::before {
    content: "";
    background: rgba(6, 6, 6, 0.3);
    clip-path: polygon(0 0, 78% 0, 62% 100%, 0% 100%);
    display: block;
    width: 100%;
    height: 960px;
    position: absolute;
    top: 0px;
    left: 0;
    z-index: 2;
}

.top_fv .swiper-slide::after {
    content: "";
    background: linear-gradient(180deg, rgba(49, 13, 1, 0.67), rgba(123, 123, 123, 0.3));
    clip-path: polygon(0 0, 100% 0, 100% 88.8%, 63.8% 88.88%, 62.1% 100%, 0 100%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.top_fv .swiper-img {
    height: inherit;
    display: block;
}

.top_fv .text_wrap {
    position: relative;
    z-index: 115;
    width: 1100px;
    overflow: hidden;
    padding: 312px 60px 0 150px;
}

.top_fv .text {
    color: #fff;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-size: 50px;
    font-weight: 300;
    letter-spacing: 0.04em;
    line-height: 1.5;
}

.top_fv .scroll_down_wrap {
    position: absolute;
    top: 77%;
    left: 7%;
    transform: translate(-50%, -50%);
    z-index: 3;
}

.top_fv .scroll_down {
    position: relative;
    color: #fff;
    text-transform: uppercase;
}

.top_fv .scroll_down span {
    position: relative;
    top: 41px;
    left: -40px;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    display: inline-block;
    font-family: "futura-pt", sans-serif;
    font-style: italic;
}

.top_fv .scroll_down::after {
    content: "";
    position: absolute;
    bottom: -55px;
    right: 22px;
    width: 1px;
    height: 358px;
    background: #fff;
    animation: scroll-down 2s infinite;
}

.top_fv .scroll_down::before {
    content: "";
    position: absolute;
    bottom: -55px;
    right: 19px;
    width: 6px;
    height: 6px;
    background: #fff;
    animation: scroll-down-box 2s infinite;
}

@keyframes scroll-down {
    0% {
        transform: scale(1, 0);
        transform-origin: 0 0;
    }

    50% {
        transform: scale(1, 1);
        transform-origin: 0 0;
    }

    50.1% {
        transform: scale(1, 1);
        transform-origin: 0 100%;
    }

    100% {
        transform: scale(1, 0);
        transform-origin: 0 100%;
    }
}

@keyframes scroll-down-box {
    0% {
        transform: translateY(-358px);
    }

    50% {
        transform: translateY(0);
    }

    50.1% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(0);
    }
}

.top_fv .comment_wrap {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 5;
}

.top_fv .comment {
    font-size: 127px;
    writing-mode: vertical-rl;
    line-height: 1.1;
    letter-spacing: 0.01em;
    font-style: italic;
    text-transform: uppercase;
    color: rgba(43, 16, 7, 0.2);
}

.swiper-pagination {
    padding-right: 32.5px;
    text-align: right;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 39px;
}

.swiper-pagination .swiper-pagination-bullet {
    margin: 0 17.5px;
    background: #453029;
    width: 9px;
    height: 9px;
    border-radius: 0;
}

.swiper-pagination .swiper-pagination-bullet-active {
    background: #453029;
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 17.5px;
}

/* footer */
.footer {
    margin-top: 160px;
    padding: 99px 0 59px;
    background-image: url("/penguin/resources/image/alf_housing/kani/footer.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    min-width: 1440px;
    width: 100%;
    position: relative;
    z-index: 2;
}

.footer::before {
    content: "";
    background: linear-gradient(180deg, rgba(50, 69, 113, 0.7) 0%, rgba(32, 45, 75, 1) 90%);
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.footer .inner {
    margin: 0 auto;
    color: #fff;
    position: relative;
    max-width: 1240px;
}

.footer .contact {
    text-align: center;
}

.footer .logo {
    margin: 0 auto;
    max-width: 335px;
    width: 100%;
}

.footer .logo a {
    display: block;
}

.footer .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.footer .company {
    margin-top: 22px;
    color: #fff;
    font-size: 14px;
    font-weight: 300;
}

.footer .address {
    margin-top: 11px;
    font-style: normal;
}

.footer .tel_text {
    margin-top: 40px;
    font-size: 18px;
}

.footer .tel_number {
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .tel_number img {
    width: 35px;
    height: 35px;
}

.footer .tel_number .tel {
    display: flex;
    align-items: center;
}

.footer .tel_number span {
    margin-left: 6px;
    letter-spacing: 0.001em;
    font-family: "futura-pt", sans-serif;
    font-style: italic;
}

.footer .tel {
    font-size: 44px;
    letter-spacing: 0.001em;
}

.footer .time {
    margin-left: 5px;
    font-size: 15px;
    letter-spacing: 0.12em;
    font-weight: 300;
}

.footer .contact_other {
    margin-top: 34px;
    text-align: center;
    font-size: 20px;
    letter-spacing: 0.06em;
}

.footer .contact_other span {
    display: inline;
}

.footer .contact_other_items {
    margin-top: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .contact_other_item {
    width: 204px;
    text-align: left;
}

.footer .contact_other_item p {
    margin-left: 22px;
    font-size: 16px;
}

.footer .contact_other_item:not(:first-child) {
    margin-left: 20px;
}

.footer .contact_other_item a {
    position: relative;
    padding-left: 18px;
    height: 60px;
    display: flex;
    align-items: center;
    color: #fff;
    text-decoration: none;
    z-index: 1;
}

.footer .contact_other_item a::before,
.footer .contact_other_item a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #fff;
}

.footer .contact_other_item a::before {
    top: -2px;
    right: -2px;
}

.footer .contact_other_item a::after {
    left: -2px;
    bottom: -2px;
}

.footer .contact_other_item span {
    white-space: nowrap;
}

.footer .contact_other_item img {
    width: 20px;
}

.footer .contact_other_item span {
    margin-left: 37px;
}

.footer .clipped_rectangle_footer {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    transition: 0.2s;
    z-index: -1;
}

.footer .clipped_rectangle_footer_black {
    border: 1px solid #fff;
}

.footer .clipped_rectangle_footer:before,
.footer .clipped_rectangle_footer:after {
    content: "";
    position: absolute;
    width: 14.14px;
    height: 1px;
    background: #fff;
}

.footer .clipped_rectangle_footer_black:before,
.footer .clipped_rectangle_footer_black:after {
    background: #fff;
}

.footer .clipped_rectangle_footer:before {
    left: -3px;
    top: 4px;
    transform: rotate(-45deg);
}

.footer .clipped_rectangle_footer:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
}

.footer .contact_other_item a:hover .clipped_rectangle_footer {
    background: #0fa27a;
}

.footer .contact_other_item a:hover {
    opacity: 1;
}

.footer .other_btn {
    display: flex;
    align-items: center;
}

.footer .menu_wrap {
    margin-top: 46px;
    border-top: 1px solid #a5938d;
}

.footer .nav {
    margin-top: 49px;
}

.footer .nav .items,
.footer .nav_area .items,
.footer .nav_station .items {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .nav .item:not(:first-child) {
    padding-left: 32px;
    border-left: 1px solid #a3a1a1;
}

.footer .nav .item:not(:last-child) {
    margin-right: 32px;
}

.footer .area_wrap {
    margin-top: 46px;
}

.footer .nav_area,
.footer .nav_station {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .station_wrap {
    margin-top: 44px;
}

.footer .nav_area .items,
.footer .nav_station .items {
    margin-left: 31px;
    border-left: 1px solid #a3a1a1;
}

.footer .nav_area .item,
.footer .nav_station .item {
    margin-left: 30px;
}

.footer .content_wrap {
    margin-top: 56px;
}

.footer .content_items,
.footer .content_item {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .content_item:not(:first-child) {
    margin-left: 56px;
}

.footer .content_item img {
    width: 18.5px;
}

.footer .content_item a {
    margin-left: 6px;
    font-size: 15px;
}

.footer .container_wrap {
    margin-top: 61px;
}

.footer .container_items {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .container_item {
    font-size: 14px;
}

.footer .container_item:not(:first-child) {
    margin-left: 41px;
}

.footer .copyright {
    margin-top: 33px;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer .nav .item a,
.footer .nav_area .item a,
.footer .nav_station .item a,
.footer .content_item a,
.footer .container_item a {
    position: relative;
    color: #fff;
}

.footer .nav .item a::after,
.footer .nav_area .item a::after,
.footer .nav_station .item a::after,
.footer .content_item a::after,
.footer .container_item a::after {
    position: absolute;
    content: "";
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 1px;
    background: #fff;
    transition: all 0.3s ease 0s;
}

.footer .nav .item a::before,
.footer .nav_area .item a::before,
.footer .nav_station .item a::before,
.footer .content_item a::before,
.footer .container_item a::before {
    position: absolute;
    content: "";
    bottom: -9px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    background: #fff;
    transition: all 0.3s ease 0s;
    opacity: 0;
}

.footer .nav .item a:hover::after,
.footer .nav_area .item a:hover::after,
.footer .nav_station .item a:hover::after,
.footer .content_item a:hover::after,
.footer .container_item a:hover::after {
    width: 70%;
}

.footer .nav .item a:hover::before,
.footer .nav_area .item a:hover::before,
.footer .nav_station .item a:hover::before,
.footer .content_item a:hover::before,
.footer .container_item a:hover::before {
    opacity: 1;
    width: 4px;
    height: 4px;
    left: 85%;
}

.footer .nav_area .item a,
.footer .nav_station .item a,
.footer .container_item a,
.copyright {
    font-weight: 300;
}

/* page_footer */
.page_footer {
    margin-top: 146px;
}

/* assessment */
.top_assessment {
    margin-top: 140px;
    padding: 0 150px;
    min-width: 1440px;
    width: 100%;
}

/* top_about */
.top_about {
    margin-top: 219px;
    min-width: 1440px;
    width: 100%;
}

.top_about .top_about_wrap {
    position: relative;
}

.top_about .top_about_map {
    background-image: url("/penguin/resources/image/alf_housing/kani/map.svg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    width: 553px;
    height: 650px;
    position: absolute;
    right: 200px;
    bottom: 0;
}

.top_about .top_about_bg {
    position: absolute;
    right: 0;
    top: 75px;
    width: 87.5%;
    height: 490px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 3% 100%, 0 93%);
    background: linear-gradient(180deg, #faf5f2 0%, #f0e0d6 100%);
    z-index: -100;
}

.top_about .inner {
    margin: auto;
    max-width: 1440px;
    width: 100%;
    position: relative;
}

.top_about .content_wrap {
    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    align-items: center;
}

.top_about .about_title {
    margin-left: 100px;
}

.top_about .ja_title {
    margin-top: 14px;
    font-size: 48px;
    line-height: 1.3;
    letter-spacing: 0.08em;
    white-space: nowrap;
}

.top_about .ja_title .brown {
    color: #324571;
}

.top_about .ja_title .small {
    font-size: 42px;
}

.top_about .about_title_img {
    margin-top: 56px;
    max-width: 740px;
    position: relative;
}

.top_about .about_title_img::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    bottom: 19px;
    right: -10px;
    background: #324571;
}

.top_about .clipped_rectangle_about1 {
    clip-path: polygon(720px 0, 100% 29.5px, 100% 100%, 0 100%, 0 0);
    position: absolute;
    top: -5px;
    left: -1.5px;
    width: 101.3%;
    height: 94.5%;
    border-top: 1px solid #324571;
    border-right: 1px solid #324571;
    border-bottom: 1px solid #324571;
    transition: 0.2s;
    z-index: 1;
}

.top_about .clipped_rectangle_about1:after {
    content: "";
    position: absolute;
    width: 14.14px;
    height: 1px;
    background: #324571;
}

.top_about .clipped_rectangle_about1:after {
    transform: rotate(-135deg);
    right: -12px;
    top: 5px;
    width: 69px;
}

.top_about .about_title_img img {
    width: 100%;
    aspect-ratio: 700/280;
    object-fit: cover;
    display: block;
}

.top_about .text_img_wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.top_about .about_text_img {
    position: absolute;
    top: -180px;
    right: 0;
    max-width: 350px;
    width: 100%;
}

.top_about .about_text_img::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    bottom: 26px;
    left: -16px;
    background: #324571;
}

.top_about .clipped_rectangle_about2 {
    clip-path: polygon(35px 0, 100% 0, 100% 100%, 0 100%, -51px 33%);
    position: absolute;
    top: -5px;
    left: -13px;
    width: 104%;
    height: 92%;
    border-top: 1px solid #324571;
    border-left: 1px solid #324571;
    border-bottom: 1px solid #324571;
    transition: 0.2s;
    z-index: 1;
}

.top_about .clipped_rectangle_about2:before,
.top_about .clipped_rectangle_about2:after {
    content: "";
    position: absolute;
    width: 14.14px;
    height: 1px;
    background: #324571;
}

.top_about .clipped_rectangle_about2:before {
    left: -10px;
    top: 8px;
    width: 69px;
    transform: rotate(-45deg);
}

.top_about .about_text_img img {
    width: 100%;
    aspect-ratio: 370/300;
    object-fit: cover;
    display: block;
}

.top_about .text {
    margin-top: 160px;
    color: #454545;
    font-weight: 300;
    line-height: 1.87;
    letter-spacing: 0.06em;
}

.top_about .btn_wrap {
    margin-top: 27px;
}

.top_about .comment_wrap {
    position: absolute;
    right: 0;
    top: 454px;
    z-index: 1;
    overflow: hidden;
}

.top_about .comment {
    position: relative;
    text-align: right;
    right: 0;
    width: 1240px;
    height: 184px;
}

/* top_search */
.top_search {
    margin-top: 230px;
    min-width: 1440px;
    position: relative;
}

.top_search .top_search_bg {
    position: absolute;
    left: 0;
    top: 116px;
    width: 44.09%;
    height: 455px;
    background: linear-gradient(180deg, #faf5f2 0%, #f0e0d6 100%);
    z-index: -10;
}

.top_search .content_wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 90px;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.top_search .title_text_wrap {
    margin-top: -35px;
    max-width: 370px;
    width: 100%;
}

.top_search .ja_title {
    margin-top: 10px;
    font-size: 54px;
}

.top_search .text p {
    margin-top: 39px;
    color: #6f6f6f;
    line-height: 1.78;
    letter-spacing: 0.14em;
    font-weight: 300;
}

.top_search .search_btn_wrap {
    margin: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    align-items: center;
    text-align: center;
}

.top_search .search_btn_wrap img {
    max-width: 100px;
    width: 100%;
}

.top_search .search_btn_wrap .img2 {
    max-width: 80px;
    width: 100%;
}

.top_search .search_btn_wrap .text1 {
    margin-top: 38px;
    font-size: 20px;
}

.top_search .search_btn_wrap .text2 {
    margin-top: 48px;
    font-size: 20px;
}

.top_search .search_btn_wrap a {
    padding: 61px 47px 34px;
    position: relative;
    width: 330px;
    height: 220px;
}

.top_search .search_btn_wrap a:not(:first-child) {
    margin-left: 20px;
}

.top_search .search_btn_wrap a::before,
.top_search .search_btn_wrap a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.top_search .search_btn_wrap a::before {
    top: -2px;
    right: -2px;
}

.top_search .search_btn_wrap a::after {
    left: -2px;
    bottom: -2px;
}

.top_search .clipped_rectangle_search {
    clip-path: polygon(20px 0, calc(100% - 20px) 0, 100% 0px, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0px 100%, 0 calc(100% - 20px), 0 20px);
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: -1;
}

.top_search .clipped_rectangle_search_black {
    border: 1px solid #324571;
}

.top_search .clipped_rectangle_search:before,
.top_search .clipped_rectangle_search:after {
    content: "";
    position: absolute;
    width: 28px;
    height: 1px;
    background: #324571;
}

.top_search .clipped_rectangle_search:before {
    left: -5px;
    top: 10px;
    transform: rotate(-45deg);
}

.top_search .clipped_rectangle_search:after {
    transform: rotate(-45deg);
    right: -5px;
    bottom: 10px;
}

.top_search .search_btn_wrap a .clipped_rectangle_search {
    transition: background 0.3s;
}

.top_search .search_btn_wrap a:hover .clipped_rectangle_search {
    background: #453029;
}

.top_search .search_btn_wrap a:hover .text1,
.top_search .search_btn_wrap a:hover .text2 {
    color: #fff;
}

.top_search .search_btn_wrap a:hover {
    opacity: 1;
}

.top_search .search_btn_wrap a:hover img {
    filter: brightness(0) invert(1);
}

.top_search .search_free_container {
    margin-top: 30px;
}

.top_search .search_free_title {
    font-size: 18px;
    font-family: "futura-pt", sans-serif;
    font-weight: 500;
    color: #8b6e64;
    font-style: italic;
    text-transform: uppercase;
}

.top_search .search_wrap {
    margin-top: 8px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.top_search .search_wrap p {
    margin-top: 0;
    font-size: 20px;
    font-family: "m-plus-rounded-2p", sans-serif;
}

.top_search .keyword_items {
    margin-left: 24px;
    display: flex;
    align-items: center;
}

.top_search .keyword_items .item:not(:first-child) {
    margin-left: 34px;
}

.top_search .item a {
    font-size: 14px;
    color: #5a5a5a;
    font-weight: 300;
}

.top_search .search_input_wrap {
    margin-top: 10px;
    display: flex;
    justify-content: center;
    border: solid 1px #324571;
    width: 100%;
    height: 60px;
    background-color: #fff;
}

.top_search .search_input_wrap .input {
    margin-right: auto;
    padding: 0 25px;
    width: 100%;
    border-radius: initial;
    background: transparent;
    border: none;
    outline: 0;
    font-weight: 300;
}

.top_search .search_input_wrap .btn {
    padding-right: 24px;
    width: 50px;
    background: transparent;
    border-radius: initial;
    border: none;
    color: #c1c1c1;
    cursor: pointer;
}

.top_search .search_input_wrap .btn img {
    width: 24px;
}

.top_search .feature {
    margin-top: 29px;
}

.top_search .sub_title_wrap .en_title {
    font-size: 18px;
    font-family: "futura-pt", sans-serif;
    color: #8b6e64;
    font-style: italic;
    font-weight: 500;
    text-transform: uppercase;
}

.top_search .sub_title_wrap .title {
    margin-top: 6px;
    font-size: 40px;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 300;
}

.top_search .feature .items {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    column-gap: 30px;
    align-items: center;
}

.top_search .feature .item a {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top_search .feature .item a:hover {
    opacity: 1;
}

.top_search .feature .item:hover .img img {
    width: 140px;
    transform: scale(1.1);
}

.top_search .feature .img {
    width: 140px;
    overflow: hidden;
}

.top_search .feature .img img {
    transition: transform 0.6s ease;
}

.top_search .feature .text_wrap {
    margin-left: 25px;
}

.top_search .feature p {
    display: block;
}

.top_search .feature .label {
    font-size: 18px;
    color: #8b6e64;
    text-transform: uppercase;
    font-family: "futura-pt", sans-serif;
    font-style: italic;
}

.top_search .feature .text {
    margin-top: 10px;
    font-size: 20px;
}

.top_search .feature .item:hover .text {
    color: #324571;
}

.top_search .feature .border {
    margin-top: 24px;
    border-bottom: 1px solid #d5d5d5;
    width: 195px;
    position: relative;
}

.top_search .feature .border::after,
.top_search .feature .border::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    background: #324571;
    transition: all 0.6s ease;
}

.top_search .feature .border::after {
    width: 0;
}

.top_search .feature .border::before {
    width: 4px;
    height: 4px;
    background: #324571;
    top: -2.5px;
    left: 0;
    opacity: 0;
    transform: translateX(-50%);
}

.top_search .feature .item:hover .border::after {
    width: 100%;
}

.top_search .feature .item:hover .border::before {
    opacity: 1;
    left: 100%;
    transform: translateX(-50%);
}

/* top_news */
.top_news {
    margin-top: 195px;
    min-width: 1440px;
    position: relative;
}

.top_news .title_btn_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top_news .ja_title {
    margin-top: 36px;
    font-size: 52px;
}

.top_news .btn_wrap {
    margin-top: 31px;
}

.top_news .content_wrap {
    margin-top: 32px;
}

.top_news .items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    column-gap: 30px;
    align-items: center;
}

.top_news .item {
    position: relative;
    width: 360px;
    height: auto;
}

.top_news .item:hover a {
    opacity: 1;
}

.top_news .item::before,
.top_news .item::after,
.top_news .item2 a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.top_news .item::before {
    top: -2px;
    right: -2px;
    z-index: 1;
}

.top_news .item::after {
    left: -2px;
    bottom: -2px;
}

.top_news .item2 a::after {
    top: -2px;
    left: -2px;
}

.top_news .item_body {
    padding: 0 20px;
    padding-bottom: 27px;
    background-color: #fff;
}

.top_news .item img {
    width: 100%;
    aspect-ratio: 360/190;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.top_news .item:hover img {
    overflow: hidden;
}

.top_news .item:hover .img img {
    transform: scale(1.1);
}

.top_news .item .date {
    margin-top: 20px;
    display: inline-block;
    color: #ac938b;
    font-family: "futura-pt", sans-serif;
    letter-spacing: 0.01em;
    transition: transform 0.6s ease;
}

.top_news .item a:hover .date {
    color: #324571;
}

.top_news .item .item_title {
    margin-top: 10px;
    padding-bottom: 16px;
    font-size: 20px;
    letter-spacing: 0.1em;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background-size: 2px 2px;
    background-image: linear-gradient(to right, #cccccc 1px, transparent 1px);
    background-repeat: repeat-x;
    background-position: left bottom;
    transition: background-image 0.6s ease, color 0.6s ease, transform 0.6s ease;
}

.top_news .item a:hover .item_title {
    background-image: linear-gradient(to right, #324571 1px, transparent 1px);
    color: #324571;
}

.top_news .item .text {
    margin-top: 12px;
    font-size: 15px;
    line-height: 1.7;
    color: #747474;
    font-weight: 300;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.top_news .frame1 {
    clip-path: polygon(10px 0, 100% 0, 100% 100%, 0 100%, 0% 10px);
    border: 1px solid #324571;
    position: relative;
}

.top_news .frame2 {
    clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    border: 1px solid #324571;
    position: relative;
}

.top_news .frame3 {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    border: 1px solid #324571;
    position: relative;
}

.top_news .item1 a {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
}

.top_news .item2 a {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
}

.top_news .item3 a {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
}

.top_news .frame:before,
.top_news .frame:after {
    content: "";
    position: absolute;
    width: 14px;
    height: 1px;
    background: #324571;
}

.top_news .frame1:before {
    left: -2.8px;
    top: 4px;
    transform: rotate(-45deg);
}

.top_news .frame2:before {
    background: none;
}

.top_news .frame2:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
    z-index: 1;
}

.top_news .frame3:before {
    left: -2.7px;
    top: 4px;
    transform: rotate(-45deg);
}

.top_news .frame3:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
    z-index: 1;
}

.page_fv {
    margin-top: 130px;
    background: url(/penguin/resources/image/alf_housing/kani/fv-information.jpg) center center/cover;
    min-width: 1440px;
    height: 280px;
    position: relative;
}

.page_fv::before {
    content: "";
    background: linear-gradient(90deg, rgba(38, 12, 3, 0.8) 30%, rgba(119, 100, 93, 0.3) 80%);
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.page_fv .inner {
    height: inherit;
    position: relative;
}

.page_fv .title_wrap {
    padding-left: 100px;
    position: absolute;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    color: #fff;
}

.page_fv .sub_title {
    font-size: 22px;
    font-family: "futura-pt", sans-serif;
    font-weight: 500;
    font-style: italic;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.page_fv .main_title {
    margin-top: 12px;
    font-size: 60px;
    letter-spacing: 0.07em;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 300;
}

.breadcrumb {
    padding: 0;
    min-width: 1440px;
    list-style: none;
}

.breadcrumb .items {
    margin-top: 21px;
    padding-right: 100px;
    text-align: right;
}

.breadcrumb .item {
    display: inline;
    list-style: none;
    color: #6f6f6f;
    font-size: 14px;
    font-weight: 300;
}

.breadcrumb .item:after {
    content: ">";
    padding: 0 0.2em;
}

.breadcrumb .item:last-child:after {
    content: "";
}

.breadcrumb .item a {
    text-decoration: none;
}

.breadcrumb_sub {
    margin-top: 150px;
}

/* page_store_message */
.page_store_message {
    margin-top: 83px;
    min-width: 1440px;
}

.page_store_message .text {
    text-align: center;
    font-size: 49px;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 300;
    letter-spacing: 0.08em;
    line-height: 1.3;
}

.page_store_message .text .brown {
    color: #324571;
}

.page_store_message .text .small {
    font-size: 43px;
}

.page_about {
    margin-top: 72px;
    min-width: 1440px;
    position: relative;
}

.page_about .bg {
    position: absolute;
    right: 0;
    top: -100px;
    width: 68.05%;
    height: 1145px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_about .img_text_wrap {
    display: flex;
    align-items: start;
    justify-content: space-between;
    flex-direction: row-reverse;
}

.page_about .text_wrap {
    margin-top: 44px;
    max-width: 565px;
}

.page_about .img_wrap,
.page_about .img_wrap2 {
    max-width: 493px;
}

.page_about .img_wrap img,
.page_about .img_wrap2 img {
    width: 100%;
    aspect-ratio: 493/370;
    object-fit: cover;
    display: block;
}

.page_about .keyword_items {
    margin-top: 19px;
    display: flex;
    flex-wrap: wrap;
    gap: 17px 25px;
    max-width: 480px;
}

.page_about .keyword_items .item {
    color: #324571;
    font-weight: 300;
}

.page_about .text_wrap .store_name {
    font-size: 44px;
    font-family: "m-plus-rounded-2p", sans-serif;
    font-weight: 300;
    letter-spacing: 0.06em;
}

.page_about .text_wrap .store_name span {
    color: #324571;
}

.page_about .text_wrap p {
    margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid #c6c6c6;
    font-weight: 300;
    color: #454545;
    letter-spacing: 0.07em;
    line-height: 1.8;
}

.page_about .category_map_wrap {
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.page_about .category_title {
    font-size: 18px;
}

.page_about .category_items {
    margin-top: 11px;
    padding-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 22px 38px;
    border-top: 1px solid #324571;
}

.page_about .category_items .item a {
    color: #324571;
    font-weight: 300;
    border-bottom: 1px solid #324571;
}

.page_about .area_category {
    margin-top: 36px;
}

.page_about .map {
    margin-top: 8px;
    margin-left: 75px;
    aspect-ratio: 500/350;
    max-width: 500px;
    width: 100%;
}

.page_about .map iframe {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}

.page_about .image_wrap {
    margin-top: 90px;
}

.page_about .image_wrap .items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.page_about .image_wrap .item {
    max-width: 360px;
}

.page_about .image_wrap .item img {
    width: 100%;
    aspect-ratio: 360/240;
    object-fit: cover;
    display: block;
}

.page_about .image_wrap .item p {
    margin-top: 5px;
    padding: 0 4px;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 300;
    color: #454545;
}

.page_about .img_wrap {
    position: relative;
}

.page_about .img_wrap::before,
.page_about .img_wrap::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.page_about .img_wrap::before {
    top: -7px;
    left: 17px;
}

.page_about .img_wrap::after {
    bottom: 22px;
    right: -6px;
}

.page_about .clipped_rectangle_sub_about1 {
    clip-path: polygon(434px 0, 100% 44px, 100% 100%, 0 100%, 0 0);
    position: absolute;
    top: -5px;
    left: 19px;
    width: 97%;
    height: 94.5%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: 1;
}

.page_about .clipped_rectangle_sub_about1::after {
    content: "";
    position: absolute;
    transform: rotate(-135deg);
    width: 85px;
    height: 1px;
    right: -12px;
    top: 12px;
    background: #324571;
}

.page_about .page_about_tazimi {
    margin-top: 160px;
    position: relative;
}

.page_about .bg2 {
    position: absolute;
    left: 0;
    bottom: 100px;
    width: 68.05%;
    height: 1145px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_about .img_wrap2 {
    position: relative;
}

.page_about .img_wrap2::before,
.page_about .img_wrap2::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.page_about .img_wrap2::before {
    top: -12px;
    right: 16px;
}

.page_about .img_wrap2::after {
    bottom: 15px;
    left: -10px;
}

.page_about .clipped_rectangle_sub_about2 {
    clip-path: polygon(43.5px 0%, 100% 0, 100% 100%, 0 100%, 0% 43px);
    position: absolute;
    top: -10px;
    left: -8px;
    width: 98%;
    height: 98%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: 1;
}

.page_about .clipped_rectangle_sub_about2::after {
    content: "";
    position: absolute;
    transform: rotate(-45deg);
    width: 85px;
    height: 1px;
    right: 406px;
    top: 12px;
    background: #324571;
}

.page_about .img_text_wrap2 {
    flex-direction: row;
}

.page_about .category_map_wrap2 {
    flex-direction: row-reverse;
}

.page_about .category_wrap {
    width: 565px;
}

.page_about .map2 {
    margin-left: 0;
}

/* page_job */
.page_job {
    margin-top: 81px;
    min-width: 1440px;
    position: relative;
}

.page_job .bg {
    position: absolute;
    right: 0;
    top: 30px;
    width: 68.05%;
    height: 1145px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_job .page_job_title_wrap {
    text-align: center;
}

.page_job .message1_title,
.page_job .message2_title,
.page_job .message3_title,
.page_job .page_job_description_title,
.page_job .application_title {
    font-size: 44px;
    color: #324571;
    font-family: "m-plus-rounded-2p", sans-serif;
    font-weight: 300;
}

.page_job .message1 {
    margin-top: 60px;
}

.page_job .img_message {
    display: flex;
    align-items: center;
}

.page_job .img_wrap {
    max-width: 256px;
}

.page_job .img_wrap img {
    clip-path: polygon(213px 0, 100% 43px, 100% 100%, 0 100%, 0 0);
    width: 100%;
    aspect-ratio: 256/256;
    object-fit: cover;
    display: block;
}

.page_job .img_wrap {
    position: relative;
}

.page_job .img_wrap::before,
.page_job .img_wrap::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.page_job .img_wrap::before {
    top: -12px;
    left: 8px;
}

.page_job .img_wrap::after {
    bottom: 8px;
    right: -12px;
}

.page_job .clipped_rectangle_job {
    clip-path: polygon(213px 0, 100% 43px, 100% 100%, 0 100%, 0 0);
    position: absolute;
    top: -10px;
    left: 10px;
    width: 100%;
    height: 100%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: 1;
}

.page_job .clipped_rectangle_job::after {
    content: "";
    position: absolute;
    transform: rotate(-135deg);
    width: 83px;
    height: 1px;
    right: -12px;
    top: 12px;
    background: #324571;
}

.page_job .message1_1 {
    margin-left: 65px;
}

.page_job .message1_2 {
    margin-top: 20px;
}

.page_job .img_message {
    margin-top: 100px;
}

.page_job .message2,
.page_job .message3,
.page_job .page_job_description,
.page_job .application {
    margin-top: 147px;
}

.page_job .message1_1 p,
.page_job .message1_2 p,
.page_job .message2 p,
.page_job .message3 p,
.page_job .page_job_description p {
    margin-top: 20px;
    line-height: 1.8;
    color: #454545;
    font-weight: 300;
}

.page_job .application p {
    line-height: 1.8;
    color: #454545;
    font-weight: 300;
}

.page_job .message2 .text:first-of-type,
.page_job .message3 .text:first-of-type,
.page_job .page_job_description .text:first-of-type,
.page_job .application .text {
    margin-top: 35px;
}

.page_job .message1_1 p:first-child {
    margin-top: 0;
}

.page_job .bg2 {
    position: absolute;
    left: 0;
    bottom: 80px;
    width: 68.05%;
    height: 1145px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_tenant {
    margin-top: 81px;
    min-width: 1440px;
    position: relative;
}

.page_tenant .bg {
    position: absolute;
    right: 0;
    top: 30px;
    width: 68.05%;
    height: 1000px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_tenant .contact_wrap .contact_title {
    font-size: 40px;
    display: inline-block;
    color: #324571;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 300;
}

.page_tenant .contact_wrap .contact_title:not(:first-child) {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 1px solid #324571;
    display: block;
}

.page_tenant .contact_item_wrap {
    margin-top: 35px;
}

.page_tenant .contact_item_wrap p {
    font-size: 18px;
    line-height: 1.8;
    color: #454545;
    font-weight: 300;
}

.page_tenant .contact_item_wrap a {
    margin-top: 8px;
    display: inline-block;
}

.page_tenant .contact_item_wrap a:hover {
    opacity: 1;
}

.page_tenant .bg2 {
    position: absolute;
    left: 0;
    bottom: 80px;
    width: 68.05%;
    height: 1000px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

/* page_company_info */
.page_company_info {
    margin-top: 81px;
    min-width: 1440px;
    position: relative;
}

.page_company_info .bg {
    position: absolute;
    right: 0;
    top: -30px;
    width: 68.05%;
    height: 1000px;
    background: linear-gradient(180deg, #e1e7f4 0%, #bfc6d7 100%);
    z-index: -100;
}

.page_company_info .table {
    min-width: 1140px;
}

.page_company_info .table_wrap {
    margin-top: 60px;
    background-color: rgba(255, 255, 255, 0.8);
}

.page_company_info tr:nth-child(odd) {
    background-color: #a0b3de;
}

.page_company_info th,
.page_company_info td {
    border-bottom: 1px solid rgb(200, 200, 200);
    padding: 10px 14px;
    font-size: 14px;
    line-height: 1.8;
    vertical-align: middle;
}

.page_company_info td {
    font-weight: 300;
    color: #454545;
}

.page_company_info th {
    font-weight: 500;
}

.page_company_info .table_title1 {
    width: 130px;
    letter-spacing: 0.06em;
}

.page_company_info .table_title2 {
    width: 170px;
}

.page_company_info_sub_title_wrap {
    margin-top: 100px;
    text-align: center;
}

.page_company_info_sub_title {
    font-size: 44px;
    color: #324571;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 300;
}

.page_company_info .bg2 {
    position: absolute;
    left: 0;
    bottom: -30px;
    width: 68.05%;
    height: 390px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_staff {
    margin-top: 81px;
    min-width: 1440px;
    position: relative;
}

.page_staff .bg {
    position: absolute;
    right: 0;
    top: -40px;
    width: 68.05%;
    height: 570px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_staff .page_staff_title_wrap {
    text-align: center;
}

.page_staff .page_staff_title {
    padding-left: 40px;
    display: inline-block;
    font-size: 60px;
    font-family: "m-plus-rounded-2p", sans-serif;
    border-left: 1px solid #453029;
    position: relative;
}

.page_staff .page_staff_title::before {
    content: "";
    position: absolute;
    top: 0;
    left: -3px;
    width: 5px;
    height: 5px;
    background-color: #453029;
}

.page_staff .items_wrap {
    margin-top: 60px;
}

.page_staff .items {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    align-items: center;
}

.page_staff .item {
    position: relative;
    max-width: 277px;
    width: 100%;
    height: auto;
}

.page_staff .item a:hover {
    opacity: 1;
}

.page_staff .item_body {
    margin: auto;
    margin-top: -50px;
    padding: 10px 20px;
    width: 250px;
    background-color: rgba(255, 255, 255, 0.95);
    position: relative;
    z-index: 0;
}

.page_staff .item .img img {
    clip-path: polygon(11px 1px, calc(100% - 11px) 1px, calc(100% - 1px) 1px, calc(100% - 1px) calc(100% - 11px), calc(100% - 11px) calc(100% - 1px), 1px calc(100% - 1px), 1px calc(100% - 11px), 1px 11px);
}

.page_staff .item img {
    width: 100%;
    aspect-ratio: 277/360;
    object-fit: cover;
    z-index: -2;
    transition: transform 0.6s ease, clip-path 0.6s ease;
    will-change: transform, clip-path;
}

.page_staff .item .img {
    overflow: hidden;
    clip-path: polygon(11px 1px, calc(100% - 11px) 1px, calc(100% - 1px) 1px, calc(100% - 1px) calc(100% - 11px), calc(100% - 11px) calc(100% - 1px), 1px calc(100% - 1px), 1px calc(100% - 11px), 1px 11px);
}

.page_staff .item:hover .img img {
    transform: scale(1.1);
}

.page_staff .item .store_name {
    padding: 5px;
    display: block;
    text-align: center;
    color: #fff;
    background-color: #324571;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: 0.01em;
}

.page_staff .item .main_name {
    margin-top: 14px;
    font-size: 20px;
    letter-spacing: 0.1em;
}

.page_staff .item .main_name span {
    margin-left: 14px;
    font-size: 14px;
    color: #747474;
}

.page_staff .item .sub_name {
    margin-top: 6px;
    font-size: 14px;
    color: #747474;
    font-family: "futura-pt", sans-serif;
    text-transform: uppercase;
}

.page_staff .item .text {
    margin-top: 12px;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 300;
}

.page_staff .frame {
    position: relative;
    z-index: 0;
}

.page_staff .frame::before,
.page_staff .frame::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.page_staff .frame::before {
    top: -2px;
    right: -2px;
    z-index: 1;
}

.page_staff .frame::after {
    left: -2px;
    bottom: -2px;
}

.page_staff .clipped_rectangle_page_staff {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: 1;
}

.page_staff .clipped_rectangle_page_staff:before,
.page_staff .clipped_rectangle_page_staff:after {
    content: "";
    position: absolute;
    width: 14px;
    height: 1px;
    background: #324571;
}

.page_staff .clipped_rectangle_page_staff:before {
    left: -2.7px;
    top: 4px;
    transform: rotate(-45deg);
}

.page_staff .clipped_rectangle_page_staff:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
    z-index: 1;
}

/* page_owner_reason */
.page_owner_reason {
    margin-top: 81px;
    min-width: 1440px;
    position: relative;
}

.page_owner_reason .bg {
    position: absolute;
    right: 0;
    top: 30px;
    width: 68.05%;
    height: 500px;
    background: linear-gradient(180deg, #e1e7f4 0%, #a0b3de 100%);
    z-index: -100;
}

.page_owner_reason .inner {
    max-width: 1240px;
    margin: 0 auto;
}

.page_owner_reason .page_owner_reason_title_wrap {
    text-align: center;
}

.page_owner_reason .page_owner_reason_title {
    display: inline-block;
    color: #324571;
    font-size: 49px;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 700;
}

.page_owner_reason .items_wrap {
    margin-top: 78px;
}

.page_owner_reason .items {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-top: 40px;
}

.page_owner_reason .item {
    position: relative;
    max-width: 264px;
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
}

.page_owner_reason .item .img {
    aspect-ratio: 264/215;
}

.page_owner_reason .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    transition: transform 0.6s ease;
}

.page_owner_reason .item:hover img {
    overflow: hidden;
}

.page_owner_reason .item_body {
    padding: 20px 13px;
    background-color: #fff;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}

.page_owner_reason .item .item_title {
    font-size: 15px;
    letter-spacing: 0.05em;
    transition: transform 0.6s ease;
    font-weight: 700;
    color: var(--main-color);
    border-left: 3px solid currentColor;
    padding-left: 0.5em;
    line-height: 1.6;
}

.page_owner_reason .item .item_text {
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.8;
    font-weight: 300;
}

.page_owner_reason .item .block {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
    height: 100%;
    position: relative;
}

.page_owner_reason .frame:before,
.page_owner_reason .frame:after {
    content: "";
    position: absolute;
    width: 14px;
    height: 1px;
    background: #324571;
}

.page_owner_reason .frame:before {
    left: -2.7px;
    top: 4px;
    transform: rotate(-45deg);
}

.page_owner_reason .frame:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
    z-index: 1;
}

.page_owner_reason .frame {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    border: 1px solid #324571;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.page_owner_reason .frame .img {
    overflow: hidden;
}

.page_owner_business {
    margin-top: 147px;
    min-width: 1440px;
    position: relative;
}

.page_owner_business .bg2 {
    position: absolute;
    left: 0;
    top: 270px;
    width: 68.05%;
    height: 760px;
    background: linear-gradient(180deg, #faf5f2 0%, #f0e0d6 100%);
    z-index: -100;
}

.page_owner_business .inner {
    max-width: 1340px;
    margin: 0 auto;
}

.page_owner_business .page_owner_business_title_wrap {
    text-align: center;
}

.page_owner_business .page_owner_business_title {
    display: inline-block;
    color: #324571;
    font-size: 49px;
    font-family: "m-plus-rounded-2p", sans-serif;
    font-weight: 300;
}

.page_owner_business .items_wrap {
    margin-top: 68px;
}

.page_owner_business .items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
    column-gap: 50px;
    margin-bottom: 150px;
}

.page_owner_business .item_content {
    padding: 30px 20px;
    text-align: center;
    max-width: 430px;
    background-color: #fff;
    clip-path: polygon(11px 1px, calc(100% - 11px) 1px, calc(100% - 1px) 1px, calc(100% - 1px) calc(100% - 11px), calc(100% - 11px) calc(100% - 1px), 1px calc(100% - 1px), 1px calc(100% - 11px), 1px 11px);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.page_owner_business .item_content .img {
    margin-top: auto;
}

.page_owner_business .item .item_title {
    font-size: 20px;
    font-weight: 700;
}

.page_owner_business .item .item_text {
    margin-top: 24px;
    color: #747474;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 300;
}

.page_owner_business .item img {
    margin-top: 24px;
    width: 100%;
    aspect-ratio: 330/162;
    max-width: 330px;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.page_owner_business .item img {
    overflow: hidden;
}

.page_owner_business .item .block:hover {
    opacity: 1;
}

.page_owner_business .item .block {
    position: relative;
    height: 100%;
}

.page_owner_business .item .block::before,
.page_owner_business .item .block::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.page_owner_business .item .block::before {
    top: -2px;
    right: -2px;
    z-index: 1;
}

.page_owner_business .item .block::after {
    left: -2px;
    bottom: -2px;
}

.page_owner_business .clipped_rectangle_owner_business {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #324571;
    transition: 0.2s;
    z-index: -1;
}

.page_owner_business .clipped_rectangle_owner_business:before,
.page_owner_business .clipped_rectangle_owner_business:after {
    content: "";
    position: absolute;
    width: 14.14px;
    height: 1px;
    background: #324571;
}

.page_owner_business .clipped_rectangle_owner_business:before {
    left: -3px;
    top: 4px;
    transform: rotate(-45deg);
}

.page_owner_business .clipped_rectangle_owner_business:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
}

.page_owner_contact .contact_sec .ttl_box {
    margin-bottom: 50px;
}

.page_owner_contact .contact_sec .ttl_box .ttl {
    color: #324571;
    font-size: 49px;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.03em;
}

.page_owner_contact .contact_sec .contact_list ul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.page_owner_contact .contact_sec .contact_list ul li {
    position: relative;
}

.page_owner_contact .contact_sec .contact_list ul li::before,
.page_owner_contact .contact_sec .contact_list ul li::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #324571;
}

.page_owner_contact .contact_sec .contact_list ul li::before {
    top: -2px;
    right: -2px;
}

.page_owner_contact .contact_sec .contact_list ul li::after {
    bottom: -2px;
    left: -2px;
}

.page_owner_contact .contact_sec .contact_list ul li .link {
    display: flex;
    width: 200px;
    position: relative;
    min-block-size: 80px;
    align-items: center;
    justify-content: center;
    gap: 20px;
    border: 1px solid #324571;
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    transition: 0.3s;
}

.page_owner_contact .contact_sec .contact_list ul li .link::before,
.page_owner_contact .contact_sec .contact_list ul li .link::after {
    content: "";
    position: absolute;
    width: 15px;
    height: 1px;
    background-color: #324571;
}

.page_owner_contact .contact_sec .contact_list ul li .link:before {
    left: -3px;
    top: 4px;
    transform: rotate(-45deg);
}

.page_owner_contact .contact_sec .contact_list ul li .link::after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
}

.page_owner_contact .contact_sec .contact_list ul li .link:hover {
    background-color: var(--sub-color);
    opacity: inherit;
    color: #fff;
}

.page_owner_contact .contact_sec .contact_list ul li .link .img {
    width: 30px;
}

.page_owner_contact .contact_sec .contact_list ul li .link .img img {
    width: 100%;
}

.page_owner_contact .contact_sec .contact_list ul li .link .text {
    font-size: 16px;
    letter-spacing: 0.03em;
    color: #324571;
}

.page_staff_detail_cont .flex_box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.page_staff_detail_cont .flex_box .staff_main_img {
    height: 400px;
}

.page_staff_detail_cont .flex_box .staff_main_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page_staff_detail_cont .flex_box .text_area {
    padding-top: 30px;
}

.page_staff_detail_cont .flex_box .text_area .name_box {
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--main-color);
    display: flex;
    align-items: flex-end;
    gap: 20px;
}

.page_staff_detail_cont .flex_box .text_area .name_box .staff_name {
    font-size: 24px;
}

.page_staff_detail_cont .flex_box .text_area .name_box .en_name {
    font-size: 18px;
    color: #747474;
}

.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table {
    margin-bottom: 20px;
}

.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table table,
.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table th,
.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table td {
    border-collapse: collapse;
}

.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table th,
.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table td {
    font-size: 16px;
}

.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table th {
    white-space: nowrap;
    font-weight: 400;
    color: var(--main-color);
    padding-right: 1em;
}

.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table tr+tr th,
.page_staff_detail_cont .flex_box .text_area .detail_area .detail_table tr+tr td {
    padding-top: 1em;
}

.page_staff_detail_cont .flex_box .text_area .detail_area .comment {
    font-size: 18px;
    line-height: 1.7;
}

.occupancy_rate_sec {
    margin: 120px 0;
    background-color: #bfc6d7;
    padding: 60px 0;
    position: relative;
    outline: solid 2px #fff;
    outline-offset: -10px;
}

.occupancy_rate_sec .text_area {
    text-align: center;
}

.occupancy_rate_sec .text_area .text {
    font-size: 27px;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.occupancy_rate_sec .text_area .text .num {
    font-size: 1.6em;
    font-weight: 700;
    margin-left: 0.3em;
    color: var(--main-color);
}

.occupancy_rate_sec .text_area .note {
    font-size: 18px;
    margin-top: 1em;
    letter-spacing: 0.04em;
}

.common_sec_ttl_box {
    width: 80%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin: 0 auto 40px;
}

.common_sec_ttl_box::before,
.common_sec_ttl_box::after {
    content: "";
    width: 100%;
    height: 2px;
    background-color: var(--main-color);
}

.common_sec_ttl {
    font-size: 34px;
    font-weight: 700;
    flex-shrink: 0;
    letter-spacing: 0.06em;
    color: var(--main-color);
}

.common_sec_ttl .num {
    margin-right: 0.2em;
}

.attract_customers_point1 {
    margin: 40px 0;
}

.common_point_ttl {
    font-size: 26px;
    letter-spacing: 0.06em;
    font-weight: 600;
    margin-bottom: 1.5em;
    text-align: center;
}

.common_point_ttl .en {
    display: block;
    width: fit-content;
    border-radius: 100vmax;
    background-color: var(--main-color);
    color: #fff;
    padding: 0.2em 2em;
    margin-bottom: 0.3em;
    font-size: 0.8em;
    margin: 0 auto 0.3em;
    font-weight: 700;
}

.attract_customers_point1 .cont {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: center;
    margin-top: 30px;
}

.attract_customers_point1 .cont .text_area .text {
    text-align: left;
}

.attract_customers_point1 .cont .img_box {
    flex-shrink: 0;
    display: flex;
    gap: 15px;
    justify-content: center;
}

.attract_customers_point1 .cont .img_box .img {
    width: 300px;
    height: 250px;
}

.attract_customers_point1 .cont .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.attract_customers_point1 .cont .text_area {
    flex-grow: 1;
}

.attract_customers_point2 .slick-track {
    display: flex;
}

.attract_customers_point2 .slick_item .link {
    display: block;
    margin: 0 10px;
    width: 180px;
    height: 90px;
    background: #fff;
    border: solid 1px #1a1a1a;
    padding: 15px;
}

.attract_customers_point2 .slick-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.attract_customers_point2 .slider_wrapper {
    margin: 40px 0;
}

.attract_customers_point2 .text_area {
    text-align: center;
}

.attract_customers_point .text_area .text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.8;
    text-align: center;
}

.attract_customers_point .text_area .text.center {
    text-align: center;
}

.attract_customers_point3 .cont .img_box {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin: 40px 0;
}

.attract_customers_point3 .cont .img_box .img {
    width: 400px;
    flex-shrink: 0;
}

.attract_customers_point3 .cont .img_box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.attract_customers_point+.attract_customers_point {
    margin-top: 80px;
}

.attract_customers_point3 .promotion_box {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 50px;
    margin-top: 20px;
}

.attract_customers_point3 .promotion_box .item {
    border: 2px solid #324571;
    padding: 20px;
}

.attract_customers_point3 .promotion_box .item ul li {
    font-size: 16px;
    line-height: 1.7;
}

.attract_customers_point3 .promotion_box .item ul li+li {
    margin-top: 0.2em;
}

.attract_customers_point3 .promotion_box .item .ttl {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: var(--main-color);
    margin-bottom: 0.5em;
    line-height: 1.5;
}

.page_owner_reason .num {
    font-size: 50px;
    position: absolute;
    left: 0.1em;
    top: -0.6em;
    color: #324571;
    z-index: 1;
    font-weight: 700;
}

.page_owner_reason .intro_text_box .text {
    text-align: center;
    color: #747474;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 500;
}

.page_owner_reason .intro_text_box {
    margin-top: 40px;
}

.page_owner_reason .items_wrap .ttl_box .text {
    font-size: 24px;
    letter-spacing: 0.05em;
    font-weight: 700;
    padding-bottom: 0.2em;
    border-bottom: dotted 3px var(--main-color);
    color: var(--main-color);
    width: fit-content;
    margin: 0 auto;
}

.profit_improvement_point .cont .text_area .text {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.7;
    text-align: center;
}

.profit_improvement_point1 .cont .image_lists {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    justify-content: center;
    gap: 40px;
    margin: 40px 0;
}

.profit_improvement_point1 .cont .image_lists .img_box {
    background-color: #fff;
    padding: 50px;
}

.profit_improvement_point1 .cont .image_lists .img_box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.profit_improvement_point1 .cont .image_lists .inner_box .img_ttl {
    text-align: center;
    margin-top: 15px;
    font-size: 18px;
    font-weight: 600;
}

.profit_improvement_point+.profit_improvement_point {
    margin-top: 80px;
}

.profit_improvement_point2 .img_box {
    width: 80%;
    margin: 0 auto;
}

.profit_improvement_point2 .img_box img {
    filter: grayscale(1);
}

.profit_improvement {
    padding-top: 120px;
}

.profit_improvement_point3 .cont+.cont {
    margin-top: 40px;
}

.profit_improvement_point3 .product_name {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.7;
    color: var(--main-color);
    width: fit-content;
    margin-bottom: 0.5em;
}

.profit_improvement_point3 .layout_box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.profit_improvement_point3 .layout_box .explanation_box {
    margin-top: 10px;
}

.profit_improvement_point3 .layout_box .explanation_box .text {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.6;
}

.profit_improvement_point3 .common_recommendation_box {
    margin: 40px 0;
}

.common_recommendation_box .text {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.7;
    text-align: center;
}

.common_recommendation_box .text+.text {
    margin-top: 1em;
}

.common_recommendation_box .text.center {
    text-align: center;
}

.profit_improvement_point4 .layout_box {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}

.profit_improvement_point4 .layout_box .item {
    border: solid 2px var(--main-color);
}

.profit_improvement_point4 .layout_box .item .ttl {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.7;
    background-color: var(--main-color);
    color: #fff;
    text-align: center;
    padding: 0.5em;
}

.profit_improvement_point4 .layout_box .item .text_area {
    padding: 15px;
}

.profit_improvement_point4 .layout_box .item .text_area .text {
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.04em;
    line-height: 1.4;
    text-align: left;
}

.profit_improvement_point4 .common_recommendation_box {
    margin-bottom: 20px;
}

.management_system {
    padding-top: 120px;
}

.management_system_point1 .cont {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
}

.management_system_point1 .cont .text {
    text-align: left;
}

.management_system_point1 .cont .common_recommendation_box {
    flex-shrink: 0;
}

.management_system_point1 .cont .image_lists {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    justify-content: center;
    gap: 30px;
    margin: 40px 0;
}

.management_system_point1 .cont .image_lists .img_box {
    background-color: #fff;
    padding: 45px;
}

.management_system_point1 .cont .image_lists .img_box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.management_system_point1 .cont .image_lists .inner_box .img_ttl {
    text-align: center;
    margin-top: 15px;
    font-size: 18px;
    font-weight: 600;
}

.management_system_point+.management_system_point {
    margin-top: 80px;
}

.management_flow ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    margin: 40px 0;
}

.management_flow ul li {
    font-size: 18px;
    letter-spacing: 0.03em;
    font-weight: 700;
    color: #fff;
    padding: 2em 1em 2em 2em;
    text-align: center;
    display: grid;
    place-content: center;
    position: relative;
}

.management_flow ul li:nth-child(1),
.management_flow ul li:nth-child(1)::after {
    background: var(--main-color);
}

.management_flow ul li:nth-child(2),
.management_flow ul li:nth-child(2)::after {
    background: #3e4d71;
}

.management_flow ul li:nth-child(3),
.management_flow ul li:nth-child(3)::after {
    background: #4a5877;
}

.management_flow ul li:nth-child(4),
.management_flow ul li:nth-child(4)::after {
    background: #616d88;
}

.management_flow ul li:nth-child(5),
.management_flow ul li:nth-child(5)::after {
    background: #7c8598;
}

.management_flow ul li:nth-child(6),
.management_flow ul li:nth-child(6)::after {
    background: #929aab;
}

.management_flow ul li:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -20px;
    width: 20px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    z-index: 1;
}

.management_system_point3 .cont {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
}

.management_system_point3 .cont .text {
    text-align: left;
}

.management_system_point3 .cont .img {
    flex-shrink: 0;
    width: 640px;
}

.management_system_point3 .cont .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.management_system_point3 .cont .common_recommendation_box {
    flex-grow: 1;
}

.owners_club_sec .ttl {
    width: fit-content;
    margin: 0 auto;
    color: #324571;
    font-size: 49px;
    /* font-family: "m-plus-rounded-2p", sans-serif; */
    font-weight: 700;
}

.owners_club_sec {
    padding-top: 120px;
}

.owners_club_sec .common_recommendation_box {
    margin: 50px 0;
}

.owners_club_sec .img {
    margin: 50px 0;
}

.common_link_btn {
    width: 300px;
    line-height: 35px;
    background-color: #fff;
    border: solid 2px var(--main-color);
    margin: 0 auto;
    text-align: center;
}

.common_link_btn .link {
    display: block;
    font-size: 20px;
    letter-spacing: 0.04em;
    font-weight: 700;
    color: var(--main-color);
    transition: 0.3s;
    padding: 10px;
}

.common_link_btn .link:hover {
    background-color: var(--main-color);
    color: #fff;
}

/* ALFオーナークラブページ */
.common_owners_club {
    padding: 100px 0;
}

.common_service_sec .service_box {
    margin-top: 70px;
}

.common_service_sec .service_box ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 30px;
}

.common_service_sec .service_box ul li {
    border: 2px solid #324571;
    background-color: #fff;
}

.common_service_sec .service_box ul li .img img {
    width: 100%;
    aspect-ratio: 2/1;
    min-width: 0;
    object-fit: cover;
}

.common_service_sec .service_box ul li .text_box {
    padding: 20px 30px 30px;
}

.common_service_sec .service_box ul li .text_box .index {
    border-radius: 100vmax;
    background-color: #324571;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-align: center;
    padding: 0.5em;
}

.common_service_sec .service_box ul li .text_box .index.color {
    background-color: #ddce4f;
}

.common_service_sec .service_box ul li .text_box .index:not(:first-child) {
    margin-top: 1em;
}

.common_service_sec .service_box ul li .text_box .text {
    margin-top: 1em;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

.common_service_sec .service_box ul li .text_box .text .size {
    font-size: 1.1em;
    color: #e42e2e;
    font-weight: 700;
    text-align: center;
}

.common_strong_sec {
    background-color: #bfc6d7;
}

.common_strong_sec .strong_list ul {
    display: grid;
    grid-template-columns: repeat(3, 300px);
    justify-content: center;
    gap: 0 50px;
}

.common_strong_sec .strong_list ul li {
    border-radius: 100%;
    background-color: #fff;
    aspect-ratio: 1;
    min-width: 0;
    display: grid;
    place-content: center;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.common_strong_sec .strong_list ul li .icon {
    width: 80px;
    margin-inline: auto;
}

.common_strong_sec .strong_list ul li .icon img {
    width: 100%;
}

.common_strong_sec .strong_list ul li .text {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: center;
}

.common_strong_sec .point_box {
    margin-top: 60px;
}

.common_strong_sec .point_box .text {
    text-align: center;
    font-size: 24px;
    line-height: 1.7;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.owners_point_sec .head_box {
    background-color: #bfc6d7;
    padding: 40px 30px;
}

.owners_point_sec .head_box .text {
    text-align: center;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.owners_point_sec .head_box .text .size {
    font-size: 1.3em;
}

.owners_point_sec .point_list {
    margin-top: 50px;
}

.owners_point_sec .point_list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 120px;
}

.owners_point_sec .point_list li {
    position: relative;
}

.owners_point_sec .point_list li:not(:first-child)::before {
    content: "";
    width: 30px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: -30px;
    translate: -100% -50%;
    background-color: #324571;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.owners_point_sec .point_list li .icon {
    background-color: #fff;
    padding: 50px;
    text-align: center;
}

.owners_point_sec .point_list li .icon img {
    width: 100px;
}

.owners_point_sec .point_list li .label {
    margin-top: 1em;
}

.owners_point_sec .point_list li .label .text {
    text-align: center;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.05em;
}

.owners_point_sec .point_list li .label .text .small {
    font-size: 0.75em;
}

.owners_point_sec .point_list li .label .text .line {
    display: inline-block;
    font-size: 1.3em;
    background: linear-gradient(to bottom, transparent 65%, #ddce4f 65%);
}

.owners_point_sec .img_box {
    margin-top: 50px;
}

.common_info_sec {
    background-color: #bfc6d7;
}

.common_info_sec .info_cont ul li {
    display: flex;
    align-items: center;
    gap: 0 80px;
}

.common_info_sec .info_cont ul li+li {
    margin-top: 60px;
}

.common_info_sec .info_cont ul li:nth-child(even) {
    flex-direction: row-reverse;
    justify-content: space-between;
}

.common_info_sec .info_cont ul li .img {
    width: 500px;
    flex-shrink: 0;
}

.common_info_sec .info_cont ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.common_info_sec .info_cont ul li .text_box .text {
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

.common_info_sec .info_cont ul li .text_box .label {
    border-bottom: 2px solid #324571;
    font-size: 20px;
    line-height: 1.7;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 1em;
}

.common_info_sec .info_cont ul li .text_box .label .num {
    background-color: #324571;
    color: #fff;
    letter-spacing: 0;
    font-size: 22px;
    display: inline-block;
    padding-inline: 0.5em;
    margin-right: 0.5em;
}

.common_info_sec .info_cont ul li .text_box .text+.text {
    margin-top: 1em;
}

.common_info_sec .info_cont ul li .text_box .text .small {
    font-size: 0.8em;
}

.common_owners_club .common_sec_ttl {
    text-align: center;
}

.common_item_sec.bg {
    background-color: #fff;
}

.common_item_sec .item_box ul li {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 0 60px;
}

.common_item_sec .item_box ul li+li {
    margin-top: 60px;
}

.common_item_sec .item_box ul li .img {
    width: 480px;
    flex-shrink: 0;
}

.common_item_sec .item_box ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_item_sec .item_box ul li .text_box .text {
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: 0.05em;
}

.common_item_sec .item_box ul li .text_box .text.bg {
    background-color: #bfc6d7;
    padding: 30px;
    font-weight: 700;
    font-size: 0.9em;
}

.common_item_sec .item_box ul li .text_box .text+.text {
    margin-top: 1em;
}

.common_item_sec .point_box {
    margin-top: 60px;
    padding: 50px 30px;
    background-color: #fff;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.16);
}

.common_item_sec .point_box .point {
    display: flex;
    gap: 0 1em;
    justify-content: center;
    align-items: flex-end;
    font-size: 28px;
    line-height: 1.7;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.common_item_sec .point_box .point::before,
.common_item_sec .point_box .point::after {
    content: "";
    width: 4px;
    height: 42px;
    background-color: #2b1007;
}

.common_item_sec .point_box .point::before {
    rotate: -20deg;
}

.common_item_sec .point_box .point::after {
    rotate: 20deg;
}

.common_item_sec .point_box .point .size {
    font-size: 1.2em;
    color: #ddce4f;
}

.common_item_sec .point_box .text_box {
    margin-top: 30px;
}

.common_item_sec .point_box .text_box .text {
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: 0.05em;
    font-weight: 700;
    text-align: center;
}

.page_owner_contact.margin {
    margin-top: 100px;
}

.common_strong_sec .arrow_box {
    width: 300px;
    height: 70px;
    background-color: #324571;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    margin: 50px auto 0;
}

/* TOP 賃貸管理に関するよくある質問 */
.top_main .owners_club_sec {
    padding-top: 150px;
}

.top_main .owners_club_sec .img {
    margin-bottom: 0;
}

.top_faq {
    padding-top: 180px;
}

.top_common_ttl {
    margin-bottom: 30px;
}

.top_common_ttl .ja_title {
    font-size: 40px;
    margin-top: 15px;
}

.top_faq .faq_box dl .item {
    display: flex;
    letter-spacing: 0.04em;
    line-height: 1.7;
    position: relative;
}

.top_faq .faq_box dl+dl {
    margin-top: 30px;
}

.top_faq .faq_box dl .item dt {
    background-color: #324571;
    width: 60px;
    flex-shrink: 0;
    display: grid;
    place-content: center;
    color: #fff;
    font-size: 30px;
    font-family: "futura-pt", sans-serif;
    font-weight: 700;
}

.top_faq .faq_box dl .item dd {
    width: 100%;
    padding: 1em 0.5em;
}

.top_faq .faq_box dl {
    border: solid 1px #324571;
}

.top_faq .faq_box dl .answer {
    border-top: solid 1px #324571;
}

.top_faq .faq_box dl .answer dt {
    background-color: #f0e0d6;
}

.top_faq .faq_box dl .closeBtnHat {
    display: none;
}

.top_faq .faq_box dl .question::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-top: 8px solid #324571;
    border-bottom: 0;
    position: absolute;
    top: 50%;
    right: 20px;
    translate: 0 -50%;
    rotate: 0deg;
    transition: 0.8s;
}

.top_faq .faq_box dl .question.nowOpen::after {
    rotate: 180deg;
}

/* TOP 賃貸管理会社変更の流れ */
.top_change_flow .flow_list li {
    display: flex;
}

.top_change_flow .flow_list li .img {
    width: 300px;
    flex-shrink: 0;
}

.top_change_flow .flow_list li .img img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
}

.top_change_flow .flow_list li+li {
    margin-top: 50px;
}

.top_change_flow .flow_list li .text_box {
    width: 100%;
    padding: 1em 2em;
}

.top_change_flow .flow_list li .text_box .ttl_box .num {
    font-size: 30px;
    font-family: futura-pt, sans-serif;
    font-weight: 700;
    display: block;
    flex-shrink: 0;
    color: #fff;
    background-color: #324571;
    padding: 0.1em 0.2em;
}

.top_change_flow .flow_list li .text_box .ttl_box {
    display: inline-flex;
    align-items: baseline;
    gap: 0 0.5em;
    border-bottom: solid 1px #324571;
    padding-right: 0.5em;
    margin-bottom: 1.5em;
}

/* dt {
    background-color:#324571;
} */

.top_change_flow .flow_list li .text_box .ttl_box .ttl {
    font-size: 24px;
    color: #324571;
    letter-spacing: 0.04em;
}

.top_change_flow .flow_list li .text_box .main_text {
    letter-spacing: 0.04em;
    line-height: 1.7;
}

.top_change_flow .flow_list {
    position: relative;
}

.top_change_flow .flow_list::before {
    content: "";
    width: 10px;
    top: 50px;
    bottom: 50px;
    position: absolute;
    background-color: #324571;
    z-index: -1;
    left: 140px;
}

.top_change_flow {
    padding-top: 150px;
}

/* TOP トラブル対応事例 */
.top_trouble {
    margin-top: 170px;
    position: relative;
}

.top_trouble .title_btn_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top_trouble .ja_title {
    margin-top: 36px;
    font-size: 52px;
}

.top_trouble .btn_wrap {
    margin: 31px auto 0;
}

.top_trouble .content_wrap {
    margin-top: 32px;
}

.top_trouble .items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    column-gap: 30px;
    align-items: center;
}

.top_trouble .item {
    position: relative;
    width: 360px;
    height: auto;
}

.top_trouble .item:hover a {
    opacity: 1;
}

.top_trouble .item::before,
.top_trouble .item::after,
.top_trouble .item2 a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background: #324571;
}

.top_trouble .item::before {
    top: -2px;
    right: -2px;
    z-index: 1;
}

.top_trouble .item::after {
    left: -2px;
    bottom: -2px;
}

.top_trouble .item2 a::after {
    top: -2px;
    left: -2px;
}

.top_trouble .item_body {
    padding: 0 20px;
    padding-bottom: 27px;
    background-color: #fff;
}

.top_trouble .item img {
    width: 100%;
    aspect-ratio: 360/190;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.top_trouble .item:hover img {
    overflow: hidden;
}

.top_trouble .item:hover .img img {
    transform: scale(1.1);
}

.top_trouble .item .date {
    margin-top: 20px;
    display: inline-block;
    color: #ac938b;
    font-family: "futura-pt", sans-serif;
    letter-spacing: 0.01em;
    transition: transform 0.6s ease;
}

.top_trouble .item a:hover .date {
    color: #324571;
}

.top_trouble .item .item_title {
    margin-top: 10px;
    font-size: 20px;
    letter-spacing: 0.1em;
    width: 100%;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.top_trouble .item a:hover .item_title {
    color: #324571;
}

.top_trouble .item .text {
    margin-top: 12px;
    font-size: 15px;
    line-height: 1.7;
    color: #747474;
    font-weight: 300;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.top_trouble .frame1 {
    border: 1px solid #324571;
    position: relative;
    background: #fff;
}

.top_trouble .frame2 {
    clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    border: 1px solid #324571;
    position: relative;
}

.top_trouble .frame3 {
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    border: 1px solid #324571;
    position: relative;
}

.top_trouble .item1 a {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
}

.top_trouble .item2 a {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
}

.top_trouble .item3 a {
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.16));
}

.top_trouble .frame1:before {
    left: -2.8px;
    top: 4px;
    transform: rotate(-45deg);
}

.top_trouble .frame2:before {
    background: none;
}

.top_trouble .frame2:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
    z-index: 1;
}

.top_trouble .frame3:before {
    left: -2.7px;
    top: 4px;
    transform: rotate(-45deg);
}

.top_trouble .frame3:after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
    z-index: 1;
}

.top_trouble .item .img {
    overflow: hidden;
}

.top_trouble_bg {
    position: absolute;
    right: 0;
    top: 66px;
    width: 87.5%;
    height: 540px;
    background: linear-gradient(180deg, #faf5f2 0%, #f0e0d6 100%);
    z-index: -100;
}

.top_trouble .item .ttl_box {
    background-size: 2px 2px;
    background-image: linear-gradient(to right, #cccccc 1px, transparent 1px);
    background-repeat: repeat-x;
    background-position: left bottom;
    transition: background-image 0.6s ease, color 0.6s ease, transform 0.6s ease;
    padding-bottom: 16px;
}

/* TOP 管理を任せられる理由 */
.top_reason .reason_catch {
    margin-bottom: 60px;
}

.top_reason .reason_catch .text {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.7;
    color: #324571;
}

.top_reason {
    padding-top: 150px;
    position: relative;
}

.top_reason .reason_list li {
    display: flex;
    gap: 0 60px;
    align-items: center;
}

.top_reason .reason_list li .img {
    width: 550px;
    flex-shrink: 0;
}

.top_reason .reason_list li .img img {
    width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
}

.top_reason .reason_list li+li {
    margin-top: 60px;
}

.top_reason .reason_list li:nth-child(odd) {
    flex-direction: row-reverse;
}

.top_reason .reason_list li .text_box {
    width: 100%;
}

.top_reason .reason_list li .text_box .ttl_box {
    display: flex;
    align-items: baseline;
    gap: 0 0.5em;
    margin-bottom: 1em;
}

.top_reason .reason_list li .text_box .ttl_box .num {
    display: inline-block;
    font-size: 50px;
    color: #324571;
    font-family: futura-pt, sans-serif;
    flex-shrink: 0;
}

.top_reason .reason_list li .text_box .ttl_box .ttl {
    font-size: 28px;
    letter-spacing: 0.08em;
    font-weight: 700;
}

.top_reason .reason_list li .text_box .main_text {
    letter-spacing: 0.04em;
    line-height: 1.9;
}

.top_reason .top_common_ttl {
    margin-bottom: 50px;
}

.top_reason .btn_wrap {
    margin: 40px auto 0;
}

.top_reason_bg {
    position: absolute;
    left: 0;
    top: 188px;
    width: 44.09%;
    height: 455px;
    background: linear-gradient(180deg, #faf5f2 0%, #f0e0d6 100%);
    z-index: -10;
}

/* TOP お困りですか？ */
.top_worry {
    padding-top: 200px;
}

.top_worry .worry_list ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px 20px;
}

.top_worry .worry_list li {
    display: flex;
    align-items: center;
    gap: 0 0.5em;
    letter-spacing: 0.04em;
    font-weight: 700;
}

.top_worry .worry_list li::before {
    content: "";
    width: 25px;
    aspect-ratio: 25/26;
    min-width: 0;
    background: url(/penguin/resources/image/alf_housing/kani/icon_worry.svg) no-repeat;
    background-size: contain;
    background-position: center;
    flex-shrink: 0;
}

.top_worry .worry_list {
    padding: 39px 20px;
    background-color: #f6f7f7;
    border-radius: 21px;
    margin-bottom: 50px;
}

.top_worry .catch_box {
    text-align: center;
    margin-bottom: 35px;
}

.top_worry .catch_box .text {
    font-size: 28px;
    letter-spacing: 0.04em;
    font-weight: 700;
    line-height: 1.7;
    margin-bottom: 30px;
}

.top_worry .catch_box .text .large {
    display: inline-block;
    font-size: 40px;
    color: #324571;
    line-height: 1.4;
}

.top_worry .catch_box .sub {
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.7;
}

.top_worry .btn_box {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 30px;
}

.common_cta_btn a {
    display: grid;
    place-content: center;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: 0.04em;
    background-color: #8e0000;
    color: #fff;
    border: 1px solid #8e0000;
    transition: 0.3s;
    clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    position: relative;
    min-block-size: 59px;
    width: 325px;
}

.common_cta_btn a:hover {
    opacity: 1;
    background-color: #fff;
    color: #8e0000;
}

.common_cta_btn a::before,
.common_cta_btn a::after {
    content: "";
    position: absolute;
    width: 15px;
    height: 1px;
    background-color: #8e0000;
}

.common_cta_btn a::before {
    left: -3px;
    top: 4px;
    transform: rotate(-45deg);
}

.common_cta_btn a::after {
    transform: rotate(-45deg);
    right: -3px;
    bottom: 4px;
}

/* 立ち退きページ */
#page_eviction .main_lead .text {
    text-align: center;
    line-height: 2.4;
    font-size: 1.1em;
}

#page_eviction .top_worry.gray_back {
    background: #f1f1f1;
    padding: 100px 0;
}

#page_eviction .top_reason {
    padding-bottom: 100px;
}

#page_eviction .section_reason {
    padding: 100px 0;
}

#page_eviction .common_cont_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

#page_eviction .common_cont_list li {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    background-color: #fff;
}

#page_eviction .common_cont_list li .image {
    height: 200px;
    margin-bottom: 10px;
}

#page_eviction .common_cont_list li .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#page_eviction .common_cont_list li .text_area .catch {
    font-size: 1.3em;
    line-height: 1.8;
    text-align: center;
    color: #324571;
    font-weight: 700;
}

#page_eviction .common_cont_list li .text_area .text {
    font-size: 0.85em;
    line-height: 2;
    padding: 1em;
}

#page_eviction .section_reason .reason_box {
    margin-bottom: 80px;
}

#page_eviction .section_reason .proceed_box .main_title {
    font-size: 2em;
    text-align: center;
    margin-bottom: 2em;
    font-weight: bold;
}

#page_eviction .section_reason .proceed_box ul li {
    align-items: center;
    justify-content: space-between;
}

#page_eviction .section_reason .proceed_box ul li+li {
    margin-top: 50px;
}

#page_eviction .section_reason .proceed_box ul li .image {
    width: 35%;
}

#page_eviction .section_reason .proceed_box ul li:nth-child(even) .image {
    order: 2;
}

#page_eviction .section_reason .proceed_box ul li .text_area {
    width: 60%;
}

#page_eviction .section_reason .proceed_box ul li .text_area .catch {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 1em;
    border-left: 4px solid #324571;
    padding-left: 1em;
    color: #324571;
}

#page_eviction .section_reason .proceed_box ul li .text_area .text {
    line-height: 2.2;
}

#page_eviction .page_owner_reason .utilization_box {
    margin-top: 60px;
}

.top_common_ttl .lead {
    margin-top: 1em;
    line-height: 2;
}

#page_eviction .page_owner_reason .items {
    justify-content: space-between;
}

#page_eviction .page_owner_reason .item {
    max-width: unset;
    width: 30%;
}

#page_eviction .top_worry {
    padding-top: 150px;
}

#page_eviction .section_works {
    padding: 100px 0;
}

#page_eviction .section_works ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

#page_eviction .section_works ul li {
    background: #f1f1f1;
    padding: 30px;
}

#page_eviction .section_works ul li .icon {
    margin-bottom: 20px;
}

#page_eviction .section_works ul li .icon img {
    width: 100%;
    aspect-ratio: 3/2;
    min-width: 0;
    object-fit: cover;
}

#page_eviction .section_works ul li .catch {
    font-size: 1.2em;
    margin-bottom: 1em;
    line-height: 1.8;
    text-align: center;
    color: #324571;
    font-weight: 700;
}

#page_eviction .section_works ul li .text {
    line-height: 2;
}

#page_eviction .top_faq {
    padding-top: 100px;
}

#page_eviction .top_faq .faq_box dl {
    background: #fff;
}

#page_eviction .profit_improvement_point {
    margin-top: 150px;
}

#page_eviction .main_lead {
    margin-top: 100px;
}

.top_worry.area_info_sec {
    padding-top: 150px;
}

.common_area_slider_box {
    margin-bottom: 60px;
}

.common_area_slider_box ul li.slick-slide {
    display: flex;
    background: #f5f5f5;
}

.common_area_slider_box ul li .img {
    width: 33%;
    flex-shrink: 0;
}

.common_area_slider_box ul li .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.common_area_slider_box ul li .text_box {
    padding: 40px;
}

.common_area_slider_box ul li .text_box .index {
    font-size: 22px;
    color: #324571;
    font-weight: 700;
    margin-bottom: 0.8em;
    letter-spacing: 0.06em;
    border-bottom: 1px solid #324571;
    padding-bottom: 0.5em;
}

.common_area_slider_box ul li .text_box .text {
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 0.06em;
    color: #474747;
    overflow-y: scroll;
    height: 180px;
}

.common_area_slider_box .slick-arrow {
    width: 60px;
    aspect-ratio: 1/1;
    background: var(--main-color);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    z-index: 1;
    cursor: pointer;
}

.common_area_slider_box .slick-arrow.slick_prev {
    left: -80px;
}

.common_area_slider_box .slick-arrow.slick_next {
    right: -80px;
}

.common_area_slider_box .slick-arrow::before {
    content: "";
    background: url(/penguin/resources/image/alf_housing/kani/icon_arrow_white.svg) no-repeat;
    background-size: contain;
    width: 20px;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.common_area_slider_box .slick-arrow.slick_prev::before {
    rotate: 180deg;
}

/* テストサイト */

.top_about .top_about_map {
    background-image: url(/penguin/resources/image/alf_housing/kani/map_blue.svg);
}

.top_about .top_about_bg {
    background: linear-gradient(180deg, #cdd7ee 0%, #7584a6 100%);
}

.top_about .ja_title .brown {
    color: #324571;
}

.top_reason .reason_catch .text {
    color: #324571;
}

.title .en_title {
    color: #324571;
}

.btn .clipped_rectangle_btn {
    border: 1px solid #324571;
}

.btn .clipped_rectangle_btn:before,
.btn .clipped_rectangle_btn:after {
    background: #324571;
}

.btn_wrap::before,
.btn_wrap::after {
    background: #324571;
}

.btn {
    color: #324571;
}

.btn:hover .clipped_rectangle_btn {
    background-color: #324571;
}

.top_about .clipped_rectangle_about1 {
    border-top: 1px solid #324571;
    border-right: 1px solid #324571;
    border-bottom: 1px solid #324571;
}

.top_about .about_title_img::after {
    background: #324571;
}

.top_about .clipped_rectangle_about1:after {
    background: #324571;
}

.title::before {
    background-color: #324571;
}


.top_worry .catch_box .text .large {
    color: #324571;
}

.common_cta_btn a {
    background-color: #324571;
    border-color: #324571;
}

.common_cta_btn a::before,
.common_cta_btn a::after {
    background-color: #324571;
}

.common_cta_btn a::before,
.common_cta_btn a::after {
    background-color: #324571;
}

.top_reason .reason_list li .text_box .ttl_box .num {
    color: #324571;
}

.top_reason_bg {
    background: linear-gradient(180deg, #cdd7ee 0%, #96a7cd 100%);
}

.top_about .clipped_rectangle_about2 {
    border-color: #324571;
}

.top_about .about_text_img::after {
    background: #324571;
}

.top_about .clipped_rectangle_about2:before,
.top_about .clipped_rectangle_about2:after {
    background: #324571;
}

.top_about .clipped_rectangle_about2:before,
.top_about .clipped_rectangle_about2:after {
    background: #324571;
}

.top_fv .comment {
    color: #32457152;
}

.top_fv .comment {
    color: #32457152;
}

.owners_club_sec .ttl {
    color: #324571;
}

.common_link_btn .link {
    color: #324571;
}

.common_link_btn {
    border-color: #324571;
}

.top_change_flow .flow_list li .text_box .ttl_box .num {
    background-color: #324571;
}

.top_change_flow .flow_list li .text_box .ttl_box .ttl {
    color: #324571;
}

.top_change_flow .flow_list li .text_box .ttl_box {
    border-color: #324571;
}

.top_faq .faq_box dl .item dt {
    background-color: #324571;
}

.top_faq .faq_box dl {
    border-color: #324571;
}

.top_faq .faq_box dl .question::after {
    border-top: 8px solid #324571;
}

.top_faq .faq_box dl .answer {
    border-top: solid 1px #324571;
}

.top_search .search_btn_wrap a::before,
.top_search .search_btn_wrap a::after {
    background: #324571;
}

.top_search .clipped_rectangle_search {
    border-color: #324571;
}

.top_search .clipped_rectangle_search:before,
.top_search .clipped_rectangle_search:after {
    background: #324571;
}

.top_search .search_free_title {
    color: #324571;
}

.top_search .sub_title_wrap .en_title {
    color: #324571;
}

.top_search .feature .label {
    color: #324571;
}

.top_search .search_input_wrap {
    border-color: #324571;
}

.top_search .feature .item:hover .text {
    color: #324571;
}

.top_search .feature .border::before {
    background: #324571;
}

.top_search .feature .border::after,
.top_search .feature .border::before {
    background: #324571;
}

.top_search .top_search_bg {
    background: linear-gradient(180deg, #cdd7ee 0%, #96a7cd 100%);
}

.common_link_btn .link:hover {
    background-color: var(--sub-color);
}

.swiper-pagination .swiper-pagination-bullet-active {
    background: #324571;
}

.swiper-pagination .swiper-pagination-bullet-active {
    background: #324571;
}

.top_search .search_btn_wrap a:hover .clipped_rectangle_search {
    background: #324571;
}

.common_cta_btn a:hover {
    color: #324571;
    background-color: #fff;
}

.title {
    border-left: 1px solid #324571;
}

.header.demo .nav_btn_item_black a::before,
.header.demo .nav_btn_item_black a::after {
    background: #324571;
}

.header.demo .clipped_rectangle_black {
    border: 1px solid #324571;
}

.header.demo .clipped_rectangle_black:before,
.header.demo .clipped_rectangle_black:after {
    background: #324571;
}

.header.demo .nav_btn_item_black p {
    color: #324571;
}

.header.header_black .nav_btn_item a:hover .clipped_rectangle {
    background: #a0b3de;
}

.footer.demo::before {
    background: linear-gradient(180deg, rgba(50, 69, 113, 0.7) 0%, rgba(32, 45, 75, 1) 90%);
}

.footer .menu_wrap {
    border-top: 1px solid #1b253e;
}

.top_property.demo .common_arrivals_list ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.top_property.demo .common_arrivals_list ul li a .imgBox {
    width: 265px;
    height: 175px;
    margin-bottom: 15px;
}

.top_property.demo .common_arrivals_list ul li a .imgBox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_property.demo .common_arrivals_list ul li a .textBox .ttl {
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: 700;
    line-height: 1.5;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    margin-bottom: 0.2em;
}

.top_property.demo .common_arrivals_list ul li a .textBox .yachin {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.5;
}

.top_property.demo .common_arrivals_list ul li a .textBox .access {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

.top_property.demo .common_arrivals_list ul li a .textBox .yachin .color {
    color: #324571;
    font-size: 1.2em;
    font-weight: 700;
}

/* 空室対策ページ */
.page_fv .main_title.long_sentence {
    font-size: 40px;
    line-height: 1.5;
}

.vacancy_back_sec .column {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.vacancy_back_sec.page_owner_reason .intro_text_box {
    margin: 40px 0 60px;
}

.vacancy_back_sec .column:nth-of-type(odd) .img {
    order: 2;
}

.vacancy_back_sec .column+.column {
    margin-top: 60px;
}

.vacancy_back_sec .ja_title {
    margin-top: 10px;
    font-size: 30px;
}

.vacancy_back_sec .column .text {
    margin-top: 39px;
    color: #6f6f6f;
    line-height: 1.78;
    letter-spacing: 0.14em;
}

.vacancy_reason_sec .page_owner_business {
    min-width: auto;
}

.vacancy_reason_sec.page_owner_reason .item {
    max-width: none;
}

.vacancy_reason_sec .page_owner_business .item_content img {
    margin-top: 0;
}

.vacancy_reason_sec .page_owner_business .item .item_text {
    font-size: 16px;
    font-weight: 400;
    margin: 10px 0 20px;
    text-align: start;
}

.vacancy_idea_se.page_owner_reason .intro_text_box .text {
    margin-bottom: 2em;
}

.vacancy_idea_sec.page_owner_reason .item {
    max-width: 320px;
}

.vacancy_idea_sec .items_wrap.owner .summary_text {
    text-align: center;
    color: #747474;
    font-size: 18px;
    line-height: 1.7;
    font-weight: 500;
}

.vacancy_idea_sec .list {
    padding: 39px 20px;
    background-color: #f6f7f7;
    margin: 40px 0;
}

.vacancy_idea_sec .list_title {
    color: var(--main-color);
    font-size: 23px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 1em;
}

.vacancy_idea_sec .list .list_title+.text {
    text-align: center;
    line-height: 1.7;
}

.vacancy_idea_sec .list .list_box {
    display: flex;
    justify-content: center;
    margin-top: 1.5em;
    background: #fff;
    padding: 1.2em;
}

.vacancy_idea_sec .list .list_box .text {
    color: #747474;
    font-weight: 600;
}

.vacancy_idea_sec .list .list_box .text+.text {
    margin-top: 0.6em;
}

.vacancy_idea_sec.page_owner_reason .items_wrap {
    margin-top: 100px;
}

.vacancy_idea_sec .items_wrap.owner .ttl_box {
    margin-bottom: 1em;
}

.vacancy_idea_sec.page_owner_reason .items {
    margin-top: 3em;
}

.vacancy_idea_sec.page_owner_reason .items .item_text {
    font-weight: 400;
}

.vacancy_differen_sec.top_search {
    margin: 130px 0;
}

.vacancy_differen_sec .sub_title_wrap {
    margin-bottom: 2em;
}

.vacancy_differen_sec .sub_title_wrap+.text {
    line-height: 1.8;
    margin-bottom: 3em;
}

.vacancy_differen_sec .list_box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2em;
}

.vacancy_differen_sec .item {
    display: grid;
    grid-template-columns: 30% 1fr;
    gap: 3%;
    align-items: center;
}

.vacancy_differen_sec .list_box .min_title {
    color: var(--main-color);
    border-bottom: 2px solid currentColor;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
}

.vacancy_cost_sec.top_change_flow {
    padding: 100px 0 140px;
    margin: 0;
}

.vacancy_cost_sec.top_change_flow .flow_list::before {
    content: none;
}

.vacancy_cost_sec .sub_title_wrap {
    margin-bottom: 2em;
}

.vacancy_cost_sec .sub_title_wrap+.text {
    line-height: 1.8;
    margin-bottom: 3em;
}

.vacancy_cost_sec.top_change_flow .flow_list li .text_box {
    padding: 0 2em;
}

.vacancy_cost_sec.top_change_flow .flow_list li+li {
    margin-top: 60px;
}

.page_vacancy .top_worry {
    padding-top: 0;
}

.vacancy_example_sec.owners_club_sec {
    padding: 0 0 140px;
}

.vacancy_example_sec .example_title {
    text-align: center;
    margin-top: 1em;
}

.vacancy_example_sec .ttl_box {
    margin-bottom: 3em;
}

.vacancy_example_sec .ttl_box+.text_box .text {
    text-align: center;
    line-height: 1.8;
}

.vacancy_example_sec .ttl_box+.text_box .text+.text {
    margin-top: 1em;
}

.vacancy_example_sec.owners_club_sec .img {
    margin: 0;
}

.vacancy_example_sec .list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2em;
    margin-top: 4em;
}

.vacancy_example_sec .list .sell {
    padding: 2em;
}

.vacancy_example_sec .text_box .text+.text {
    margin-top: 0.5em;
}

.vacancy_example_sec .item .sell_summary {
    display: grid;
    grid-template-columns: 22% 1fr;
    gap: 4%;
    align-items: center;
    padding-bottom: 1.5em;
    margin-bottom: 1em;
    border-bottom: 1px solid var(--main-color);
}

.vacancy_example_sec .item .sell_summary .img {
    aspect-ratio: 1;
    width: 120px;
    height: 100px;
}

.vacancy_example_sec .item .sell_summary .img img {
    width: 100%;
    height: 100%;
    margin: 0;
}

.vacancy_example_sec .item .sell_summary .text_box .text {
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
}

.vacancy_example_sec .page_owner_business {
    min-width: auto;
}

.vacancy_example_sec .page_owner_business .item_content {
    max-width: none;
    text-align: start;
}

.vacancy_example_sec .page_owner_business .item_content .issue,
.vacancy_example_sec .page_owner_business .item_content .measure {
    margin-bottom: 1.5em;
}

.vacancy_example_sec .page_owner_business .item_content .list_title {
    font-size: 18px;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: var(--main-color);
    border-left: 3px solid currentColor;
    margin-bottom: 0.6em;
    padding-left: 0.5em;
    line-height: 1.6;
}

.vacancy_example_sec .page_owner_business .item_content .list_text {
    font-size: 14px;
    line-height: 1.8;
}

.vacancy_example_sec .page_owner_business .item_content .list_text+.list_text {
    margin-top: 0.6em;
    font-weight: 500;
}

/* オーナーの声 */
.top_customer_sec {
    padding: 100px 0 0;
}

.top_customer_sec .ttl {
    width: fit-content;
    margin: 0 auto;
    color: #324571;
    font-size: 49px;
    font-weight: 700;
}

.top_customer_sec .example_title {
    text-align: center;
    margin-top: 1em;
}

.top_customer_sec .ttl_box {
    margin-bottom: 2em;
}

.top_customer_sec .item {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    padding: 1.2em;
    margin: 0 10px;
}

.top_customer_sec .customer_up_inner {
    display: grid;
    grid-template-columns: 80px 1fr;
    align-items: center;
    margin-bottom: 1em;
    gap: 0.5em 1em;
}

.top_customer_sec .customer_up_inner .img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
}

.top_customer_sec .customer_up_inner .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top_customer_sec .name {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin: 0;
}

.top_customer_sec .meta {
    font-size: 13px;
    color: #777;
}

.top_customer_sec .summary {
    font-size: 13px;
    font-weight: 600;
    background: #324571;
    color: #fff;
    display: inline-block;
    padding: 8px 10px;
    border-radius: 4px;
    width: fit-content;
    grid-column: 1 / 3;
    line-height: 1.5;
}

.top_customer_sec .text_wrap {
    position: relative;
}

.top_customer_sec .text_wrap::before {
    content: "“";
    position: absolute;
    left: 0;
    top: -5px;
    font-size: 32px;
    color: #ccc;
    line-height: 1;
}

.top_customer_sec .text_wrap::after {
    content: "”";
    position: absolute;
    right: 10px;
    bottom: -10px;
    font-size: 32px;
    color: #ccc;
    line-height: 1;
}

.top_customer_sec .text {
    font-size: 14px;
    color: #444;
    line-height: 1.7;
    padding: 0 1.5em;
    height: 130px;
    padding: 14px;
    overflow: auto;
}

.top_customer_sec .slick-dots li {
    margin: 0 8px;
}

.top_customer_sec .slick-dots li button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ccc;
    border: none;
    padding: 0;
    text-indent: -9999px;
    cursor: pointer;
}

.top_customer_sec .slick-dots li.slick-active button {
    background: #324571;
    transform: scale(1.3);
}

.top_customer_sec .slick-dots {
    bottom: -50px;
}

.top_customer_sec .customer_wrap {
    position: relative;
}

.top_customer_sec .top_custom_prev,
.top_customer_sec .top_custom_next {
    border-radius: 50%;
    background-color: #324571;
    width: 40px;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.3s;
    z-index: 9;
}

.top_customer_sec .top_custom_prev:hover,
.top_customer_sec .top_custom_next:hover {
    opacity: 0.8;
}

.top_customer_sec .top_custom_prev {
    left: -4%;
}

.top_customer_sec .top_custom_next {
    right: -4%;
}

.top_customer_sec .top_custom_prev svg,
.top_customer_sec .top_custom_next svg {
    width: 80%;
    aspect-ratio: 1;
    stroke: #fff;
}

.vacancy_example_sec .item:nth-child(2) .sell_summary .img {
    height: 100px;
    width: 92px;
    margin: 0 auto;
}

@media (max-width: 750px) {
    .wrap {
        padding: 0 min(5.12vw, 20px);
        max-width: 100%;
    }

    .pc {
        display: none;
    }

    .sp {
        display: block !important;
    }

    a:hover {
        opacity: 1;
    }

    /* common */
    .title h2 {
        font-size: min(5.12vw, 20px);
    }

    .title {
        padding-left: min(7vw, 30px);
    }

    .btn_wrap {
        width: min(58.97vw, 230px);
        padding: 20px min(5.12vw, 20px);
    }

    .btn_wrap a:hover img {
        filter: initial;
    }

    .btn {
        font-size: min(4.61vw, 18px);
    }

    .btn .arrow {
        margin-left: min(2.05vw, 8px);
    }

    .btn .arrow img {
        width: min(11.02vw, 43px);
    }

    .btn .clipped_rectangle_btn {
        clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 1px solid #324571;
        transition: 0.2s;
        z-index: -1;
    }

    .btn .clipped_rectangle_btn:before,
    .btn .clipped_rectangle_btn:after {
        content: "";
        position: absolute;
        width: 14.14px;
        height: 1px;
        background: #324571;
    }

    .btn .clipped_rectangle_btn:before {
        left: -2px;
        top: 3px;
        transform: rotate(-45deg);
    }

    .btn .clipped_rectangle_btn:after {
        transform: rotate(-45deg);
        right: -3px;
        bottom: 4px;
    }

    .btn:hover .clipped_rectangle_btn {
        background: none;
        opacity: inherit;
    }

    .btn:hover p,
    .btn:hover .arrow {
        color: inherit;
    }

    .header {
        min-width: auto;
        width: 100%;
        height: 80px;
    }

    .header .inner {
        padding-left: min(5.12vw, 20px);
        display: flex;
        justify-content: space-between;
    }

    .header .inner_white {
        padding: 0;
        width: 100%;
        height: 80px;
    }

    .header .inner_black {
        padding: 0;
        width: 100%;
        height: 80px;
    }

    .header .inner_white .logo img {
        max-width: min(21.02vw, 82px);
    }

    .header .inner_black .logo img {
        max-width: min(17.94vw, 70px);
    }

    .header .nav,
    .header .nav_btn {
        display: none;
    }

    .header .hamburger_btn_wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .header .tel_img {
        margin-top: -9px;
        width: min(10.25vw, 40px);
    }

    .header_hamburger,
    .header_drawer {
        display: block;
    }

    .header_hamburger {
        margin-left: auto;
        padding: 0;
        padding-right: min(5.12vw, 20px);
        padding-left: min(4.61vw, 18px);
        outline: none;
        border: none;
        position: relative;
        z-index: 1001;
        width: min(18.97vw, 74px);
        height: 74px;
        background-color: transparent;
        cursor: pointer;
        transition: 0.3s;
    }

    .header_hamburger span {
        position: relative;
        right: 0;
        display: block;
        height: 1px;
        background-color: #fff;
        transition: 0.5s;
        margin-left: auto;
    }

    .header_hamburger_black span {
        background-color: #2b1007;
    }

    .header_hamburger span:nth-of-type(1) {
        top: -17px;
        right: 0;
        width: min(9.3vw, 36.27px);
    }

    .header_hamburger span:nth-of-type(2) {
        top: -7px;
        right: 0;
        width: min(5.52vw, 21.53px);
    }

    .header_hamburger span:nth-of-type(3) {
        top: 3px;
        right: 0;
        width: min(6.85vw, 26.74px);
    }

    .header_hamburger span::after {
        content: "";
        position: absolute;
        right: -2.16px;
        top: 14%;
        transform: translateY(-30%);
        width: min(0.76vw, 3px);
        height: 2.5px;
        background-color: #fff;
    }

    .header_hamburger_black span::after {
        background-color: #2b1007;
    }

    .header_hamburger.is_open span:nth-of-type(1) {
        top: -3px;
        right: -15px;
        transform: translateX(-50%) rotate(45deg);
        background-color: #fff;
        width: min(9.3vw, 36.27px);
    }

    .header_hamburger.is_open span:nth-of-type(2) {
        opacity: 0;
    }

    .header_hamburger.is_open span:nth-of-type(3) {
        top: -5px;
        right: -15px;
        transform: translateX(-50%) rotate(-45deg);
        background-color: #fff;
        width: min(9.3vw, 36.27px);
    }

    .header_hamburger.is_open span::after {
        content: normal;
    }

    .header_drawer {
        padding: 100px 0;
        display: none;
        position: absolute;
        z-index: 1000;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: #324571;
        overflow-y: scroll;
        scrollbar-width: none;
    }

    .header_drawer::-webkit-scrollbar {
        display: none;
    }

    .header_drawer .drawer_nav {
        padding: 0 0 10vw;
        text-align: center;
    }

    .header_drawer .drawer_nav_item>a,
    .header_drawer .drawer_nav_item>p {
        padding: 20px 8.2vw;
        display: block;
        color: #fff;
        font-size: min(5.12vw, 20px);
        line-height: 1;
        letter-spacing: 0.05em;
        cursor: pointer;
    }

    .header_drawer .drawer_nav_other {
        margin: auto;
    }

    .header_drawer .drawer_nav_other {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-bottom: 20px;
    }

    .header_drawer .drawer_nav_item_other a {
        color: #fff;
        font-size: min(5.12vw, 20px);
    }

    .header_drawer .drawer_nav_item_other:not(:first-child) {
        margin-left: 18px;
    }

    .header_drawer .drawer_nav_item_other img {
        width: 22px;
    }

    .header_drawer .drawer_nav_item_other span {
        margin-left: 6px;
    }

    .header a:hover {
        opacity: 1;
    }

    /* page_header */
    .page_header {
        height: 80px;
    }

    /* follow_btn */
    .follow_btn {
        position: fixed;
        bottom: 0;
        top: auto;
        right: 0;
        width: 100%;
        z-index: 100;
    }

    .follow_btn.hidden {
        display: none;
    }

    .follow_btn .wrap {
        background: linear-gradient(180deg, #cdd7ee 0%, #7584a6 100%);
        padding: 10px min(5.12vw, 20px);
        display: flex;
        justify-content: center;
    }

    .follow_btn .follow_btn_wrap {
        display: inline-block;
    }

    .follow_btn .follow_btn_list {
        display: flex;
        align-items: center;
        justify-content: space-between;
        max-width: min(153.84vw, 600px);
        width: 100%;
    }

    .follow_btn .follow_btn_item {
        width: 20vw;
        text-align: center;
    }

    .follow_btn .follow_btn_item a {
        position: relative;
        text-align: center;
        padding: 3vw;
        display: block;
        color: #fff;
        text-decoration: none;
        z-index: 2;
    }

    .follow_btn .follow_btn_item a::before,
    .follow_btn .follow_btn_item a::after {
        content: "";
        position: absolute;
        width: 5px;
        height: 5px;
        background: #fff;
    }

    .follow_btn .follow_btn_item a::before {
        top: -2px;
        right: -2px;
    }

    .follow_btn .follow_btn_item a::after {
        left: -2px;
        bottom: -2px;
    }

    .follow_btn .follow_btn_item:not(:first-child) {
        margin-left: 3vw;
    }

    .follow_btn .follow_btn_item img {
        width: min(5.64vw, 22px);
    }

    .follow_btn .follow_btn_item:nth-child(2) img {
        width: min(4.35vw, 17px);
    }

    .follow_btn .follow_btn_item p {
        padding-top: 2vw;
        color: #fff;
        font-size: 2.8vw;
        white-space: nowrap;
    }

    .clipped_rectangle_follow_btn {
        clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 1px solid #fff;
        transition: 0.2s;
        z-index: -1;
    }

    .clipped_rectangle_follow_btn:before,
    .clipped_rectangle_follow_btn:after {
        content: "";
        position: absolute;
        width: 14.14px;
        height: 1px;
        background: #fff;
    }

    .clipped_rectangle_follow_btn:before {
        left: -3px;
        top: 4px;
        transform: rotate(-45deg);
    }

    .clipped_rectangle_follow_btn:after {
        transform: rotate(-45deg);
        right: -3px;
        bottom: 4px;
    }

    .top_fv {
        height: 730px;
        min-width: auto;
        position: relative;
    }

    .top_fv::after {
        content: "";
        background: #fff;
        clip-path: polygon(44.2% 0%, 100% 0, 100% 100%, 39.48% 100%);
        display: block;
        width: 100%;
        height: 100px;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 2;
    }

    .top_fv .swiper-slide::before {
        clip-path: polygon(0 0, 64.12% 0, 41.48% 100%, 0% 100%);
    }

    .top_fv .swiper-slide::after {
        content: "";
        background: linear-gradient(180deg, rgba(39, 10, 0, 0.7), rgba(123, 123, 123, 0.35));
        clip-path: none;
    }

    .top_fv .slide1 {
        background-image: url("/penguin/resources/image/alf_housing/kani/fv-1-sp.webp");
        height: 814px;
        clip-path: none;
    }

    .top_fv .slide2 {
        background-image: url("/penguin/resources/image/alf_housing/kani/fv-2-sp.webp");
        height: 814px;
        clip-path: none;
    }

    .top_fv .slide3 {
        background-image: url("/penguin/resources/image/alf_housing/kani/fv-3-sp.webp");
        height: 814px;
        clip-path: none;
    }

    .top_fv .text_wrap {
        padding: 40vw 3vw 0 4vw;
        width: 100vw;
    }

    .top_fv .text {
        color: #fff;
        /* font-family: "m-plus-rounded-2p", sans-serif; */
        font-size: min(7.69vw, 25px);
        font-weight: 300;
        letter-spacing: 0.06em;
    }

    .top_fv .scroll_down_wrap {
        top: 84.8%;
        left: 20%;
    }

    .top_fv .scroll_down span {
        font-size: min(3.58vw, 14px);
        left: -47px;
    }

    .top_fv .scroll_down::after {
        bottom: -41px;
        right: 36px;
        width: 1px;
        height: 208px;
    }

    .top_fv .scroll_down::before {
        bottom: -41px;
        right: 34px;
    }

    @keyframes scroll-down {
        0% {
            transform: scaleY(0);
            transform-origin: top;
        }

        50% {
            transform: scaleY(1);
            transform-origin: top;
        }

        50.1% {
            transform: scaleY(1);
            transform-origin: bottom;
        }

        100% {
            transform: scaleY(0);
            transform-origin: bottom;
        }
    }

    @keyframes scroll-down-box {
        0% {
            transform: translateY(-208px);
        }

        50% {
            transform: translateY(0);
        }

        50.1% {
            transform: translateY(0);
        }

        100% {
            transform: translateY(0);
        }
    }

    .top_fv .comment_wrap {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 5;
    }

    .top_fv .comment {
        font-size: min(22.34vw, 100px);
    }

    .swiper-pagination {
        padding-right: 5px;
        bottom: 0;
        top: 794px;
    }

    .swiper-pagination .swiper-pagination-bullet {
        margin: 0 15.5px;
    }

    .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
    .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 0 15.5px;
    }

    /* footer */
    .footer {
        margin-top: 96px;
        padding: 56px 0 39px;
        min-width: auto;
        z-index: 1;
    }

    .footer .inner {
        padding: 0 min(3.07vw, 12px);
    }

    .footer .logo {
        margin: 0 auto;
        max-width: 245px;
        width: 100%;
    }

    .footer .company {
        margin-top: 19px;
        font-size: min(3.07vw, 12px);
    }

    .footer .address {
        margin-top: 10px;
    }

    .footer .tel_text {
        margin-top: 38px;
        font-size: min(4.1vw, 16px);
        letter-spacing: -0.05em;
    }

    .footer .tel_number {
        margin-top: 11px;
        display: inline-block;
    }

    .footer .tel_number img {
        width: min(8.46vw, 33px);
        height: 33px;
    }

    .footer .tel {
        font-size: min(10.51vw, 41px);
        letter-spacing: -0.04em;
        color: #fff;
    }

    .footer .time {
        margin-left: 0;
        font-size: min(3.84vw, 15px);
        letter-spacing: 0.001em;
    }

    .footer .contact_other {
        margin-top: 29px;
        font-size: min(4.61vw, 18px);
    }

    .footer .contact_other_items {
        margin-top: 18px;
    }

    .footer .contact_other_item {
        width: auto;
        text-align: center;
    }

    .footer .contact_other_item:not(:first-child) {
        margin-left: min(2.56vw, 10px);
    }

    .footer .contact_other_item {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .footer .contact_other_item a {
        position: relative;
        padding: min(2.56vw, 10px);
        width: min(28.2vw, 110px);
        min-height: 70px;
        white-space: nowrap;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .footer .contact_other_item p {
        margin-left: 0;
        padding-top: 10px;
        font-size: min(3.58vw, 14px);
    }

    .footer .contact_other_item a:hover .clipped_rectangle_footer {
        background: none;
    }

    .footer .contact_other_item img {
        width: min(5.12vw, 20px);
    }

    .footer .other_btn {
        display: block;
    }

    .footer .container_wrap {
        margin-top: 40px;
    }

    .footer .container_item {
        font-size: min(3.076vw, 12px);
    }

    .footer .container_item:not(:first-child) {
        margin-left: min(11.025vw, 43px);
    }

    .footer .copyright {
        margin-top: 20px;
        font-size: min(3.076vw, 12px);
    }

    .footer .container_item a::after {
        content: normal;
    }

    .footer .container_item a::before {
        content: normal;
    }

    /* assessment */
    .top_assessment {
        margin-top: 90px;
        padding: 0;
        text-align: center;
        min-width: auto;
    }

    .top_assessment img {
        display: block;
    }

    .top_about {
        margin-top: 258px;
        min-width: auto;
    }

    .top_about_map_wrap {
        width: 370px;
        overflow: hidden;
    }

    .top_about_map {
        width: 370px;
        height: 485px;
        right: 0;
        top: -38px;
    }

    .top_about_bg {
        top: 70px;
        width: 82.05%;
        height: 440px;
    }

    .top_about .inner {
        padding: 0 min(5.12vw, 20px);
        max-width: 100%;
    }

    .top_about .content_wrap {
        grid-template-columns: none;
    }

    .top_about .about_title {
        margin-top: 10px;
        margin-left: 0;
    }

    .top_about .ja_title {
        margin-top: 17px;
        font-size: min(6.4vw, 34px);
        line-height: 1.2;
        letter-spacing: 0.07em;
    }

    .top_about .ja_title .small {
        font-size: min(5.4vw, 28px);
    }

    .top_about .about_title_img {
        top: 360px;
        left: 0;
        max-width: min(84.61vw, 330px);
        position: absolute;
    }

    .top_about .about_title_img::after {
        width: 0;
    }

    .top_about .clipped_rectangle_about1 {
        clip-path: polygon(0 0, calc(100% - 29px) 0, 100% 29px, 100% 100%, 0 100%);
        top: -13px;
        left: -9px;
        width: 107%;
        height: 100%;
    }

    .top_about .about_title_img img {
        width: 100%;
        aspect-ratio: 330/180;
        object-fit: cover;
        display: block;
    }

    .top_about .text_img_wrap {
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-left: 0;
        position: relative;
    }

    .top_about .about_text_img {
        position: absolute;
        top: -330px;
        right: -20px;
        max-width: min(53.84vw, 210px);
        width: 100%;
    }

    .top_about .about_text_img img {
        width: 100%;
        aspect-ratio: 210/140;
        object-fit: cover;
        display: block;
        clip-path: polygon(28px 0, calc(100% + 15px) 0, 100% 100%, 0 100%, 0 28px);
    }

    .top_about .about_text_img::after {
        width: 0;
    }

    .top_about .clipped_rectangle_about2 {
        clip-path: polygon(28px 0, calc(100% + 15px) 0, 100% 100%, 0 100%, 0 28px);
        top: -14px;
        left: -9px;
        width: 104%;
        height: 100%;
    }

    .top_about .clipped_rectangle_about2:before {
        left: -16px;
    }

    .top_about .text {
        margin-top: 22px;
        font-size: min(3.58vw, 14px);
        line-height: 1.7;
        letter-spacing: 0.1em;
        max-width: min(153.84vw, 600px);
    }

    .top_about .btn_wrap {
        margin-top: 34px;
    }

    .top_about .comment_wrap {
        display: none;
    }

    .top_news {
        margin-top: 70px;
        min-width: auto;
        display: flex;
        justify-content: center;
    }

    .top_news .title_btn_wrap {
        display: inline;
    }

    .top_news .ja_title {
        margin-top: 14px;
        font-size: min(7vw, 40px);
    }

    .top_news .btn_wrap {
        margin-top: 42px;
    }

    .top_news .content_wrap {
        margin-top: 62px;
    }

    .top_news .items {
        grid-template-columns: repeat(1, 1fr);
        gap: 30px;
        column-gap: 0;
    }

    .top_news .item {
        position: relative;
        width: min(92.3vw, 360px);
    }

    .top_news .item_body {
        padding: 0 min(3.07vw, 12px);
        padding-bottom: 32px;
    }

    .top_news .item img {
        aspect-ratio: 360/190;
    }

    .top_news .item:hover .img img {
        transform: none;
    }

    .top_news .item .date {
        margin-top: 16px;
        font-size: min(3.58vw, 14px);
    }

    .top_news .item_title {
        font-size: min(5.12vw, 20px);
    }

    .top_news .item .text {
        font-size: min(3.58vw, 14px);
    }

    .top_news .item a:hover .date {
        color: #ac938b;
    }

    .top_news .item a:hover .item_title {
        background-image: linear-gradient(to right, #cccccc 1px, transparent 1px);
        color: #1a1a1a;
    }

    .top_search {
        margin-top: 25vw;
        min-width: auto;
        display: flex;
        justify-content: center;
    }

    .top_search .top_search_bg {
        top: 60px;
        width: 82.05%;
        height: 420px;
        background: linear-gradient(180deg, #faf5f2 0%, #f0e0d6 100%);
    }

    .top_search .content_wrap {
        display: initial;
    }

    .top_search .title_text_wrap {
        margin-top: 0;
        width: 100%;
    }

    .top_search .ja_title {
        margin-top: 12px;
        font-size: min(10.25vw, 40px);
    }

    .top_search .text p {
        margin-top: 20px;
        font-size: min(3.58vw, 14px);
        color: #6f6f6f;
        line-height: 1.7;
    }

    .top_search .search_container {
        margin-left: 0;
        margin-top: 5vw;
    }

    .top_search .search_btn_wrap {
        margin-top: 3px;
        grid-template-columns: none;
    }

    .top_search .search_btn_wrap img,
    .top_search .search_btn_wrap .img2 {
        margin-right: min(8.2vw, 32px);
        max-width: min(10.5vw, 41px);
        width: 100%;
    }

    .top_search .search_btn_wrap .text1,
    .top_search .search_btn_wrap .text2 {
        margin-top: 0;
        font-size: min(5.12vw, 20px);
        padding-left: min(6.28vw, 32px);
        line-height: 1.8;
        border-left: 1px solid #e0e0e0;
    }

    .top_search .search_btn_wrap a {
        display: flex;
        align-items: center;
        justify-content: start;
        padding: 40px min(6.28vw, 24.5px);
        position: relative;
        width: auto;
        max-width: min(153.84vw, 600px);
        height: 30px;
        font-size: min(5.12vw, 20px);
    }

    .top_search .search_btn_wrap a:not(:first-child) {
        margin-left: 0;
        margin-top: 12px;
    }

    .top_search .search_btn_wrap a:hover .clipped_rectangle_search {
        background: #fff;
    }

    .top_search .search_btn_wrap a:hover .text1,
    .top_search .search_btn_wrap a:hover .text2 {
        color: initial;
    }

    .top_search .search_btn_wrap a:hover img {
        filter: initial;
    }

    .top_search .search_free_container {
        margin-top: 28px;
    }

    .top_search .clipped_rectangle_search {
        clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 0px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0px 100%, 0 calc(100% - 10px), 0 10px);
    }

    .top_search .clipped_rectangle_search:before {
        left: -8px;
        top: 2px;
    }

    .top_search .clipped_rectangle_search:after {
        right: -8px;
        bottom: 2px;
    }

    .top_search .search_free_title {
        font-size: min(3.07vw, 12px);
    }

    .top_search .search_wrap p {
        margin-top: 1px;
        font-size: min(5.38vw, 21px);
    }

    .top_search .keyword_items {
        margin-left: 0;
    }

    .top_search .keyword_items_wrap .keyword_items {
        margin-top: 4px;
    }

    .top_search .keyword_items .item a {
        font-size: min(3.58vw, 14px);
    }

    .top_search .keyword_items .item:not(:first-child) {
        margin-left: min(5.12vw, 20px);
    }

    .top_search .search_input_wrap {
        margin-top: 8px;
        width: auto;
        max-width: min(153.84vw, 600px);
        height: 50px;
    }

    .top_search .search_input_wrap .input {
        padding: 0 min(5.12vw, 20px);
        font-size: min(3.076vw, 12px);
    }

    .top_search .search_input_wrap .btn {
        padding-right: min(2.56vw, 10px);
        width: min(6.66vw, 26px);
    }

    .top_search .search_input_wrap .btn img {
        width: min(4.1vw, 16px);
    }

    .top_search .feature {
        margin: auto;
        margin-top: 62px;
        max-width: min(81.05vw, 316px);
    }

    .top_search .feature .text {
        font-size: min(5.12vw, 20px);
    }

    .top_search .sub_title_wrap h3 {
        font-size: min(4.1vw, 16px);
    }

    .top_search .sub_title_wrap .title {
        margin-top: 4px;
        font-size: min(8.71vw, 34px);
        font-family: "m-plus-rounded-2p", sans-serif;
        font-weight: 300;
    }

    .top_search .feature .items {
        margin-top: 15px;
        grid-template-columns: none;
        gap: 25px;
    }

    .top_search .feature .item:hover .img img {
        width: min(25.64vw, 100px);
        transform: none;
    }

    .top_search .feature .img {
        width: min(25.64vw, 100px);
    }

    .top_search .feature .text_wrap {
        margin-left: 0;
    }

    .top_search .feature .label {
        font-size: min(4.1vw, 16px);
    }

    .top_search .feature .text {
        font-size: min(4.61vw, 18px);
    }

    .top_search .feature .item:hover .text {
        color: initial;
        color: inherit;
        opacity: 1;
        background: none;
        text-decoration: none;
    }

    .top_search .feature .border {
        width: min(48.71vw, 190px);
    }

    .top_search .feature .border::after,
    .top_search .feature .border::before {
        content: none;
    }

    .page_fv {
        margin-top: 80px;
        min-width: auto;
    }

    .page_fv .title_wrap {
        padding: 0 min(5.12vw, 20px);
    }

    .page_fv .sub_title {
        font-size: min(4.1vw, 16px);
    }

    .page_fv .main_title {
        margin-top: 4px;
        font-size: min(9.25vw, 40px);
    }

    .breadcrumb {
        min-width: auto;
    }

    .breadcrumb .items {
        margin-top: 14px;
        max-width: 100%;
        padding-right: min(5.12vw, 20px);
    }

    .breadcrumb .item {
        font-size: min(3.58vw, 14px);
    }

    .page_store_message {
        min-width: auto;
        margin-top: 31px;
        display: flex;
        justify-content: center;
    }

    .page_store_message .text {
        font-size: min(7.69vw, 26px);
        letter-spacing: 0.01em;
        line-height: 1.4;
        text-align: left;
    }

    .page_store_message .text .small {
        font-size: min(6.15vw, 20px);
    }

    .page_about {
        margin-top: 20px;
        min-width: auto;
    }

    .page_about .page_about_kani,
    .page_about .page_about_tazimi {
        display: flex;
        justify-content: center;
    }

    .page_about .bg {
        top: -150px;
        height: 2200px;
    }

    .page_about .img_text_wrap {
        display: block;
    }

    .page_about .text_wrap .store_name {
        font-size: min(7.69vw, 26px);
    }

    .page_about .keyword_items {
        margin-top: 14px;
        gap: 14px 20px;
        max-width: 480px;
    }

    .page_about .keyword_items .item a {
        font-size: min(4.1vw, 16px);
    }

    .page_about .text_wrap p {
        margin-top: 15px;
        padding-top: 20px;
        letter-spacing: 0.06em;
        line-height: 1.4;
        font-size: min(3.84vw, 15px);
        max-width: 600px;
    }

    .page_about .category_map_wrap {
        margin-top: 53px;
        display: block;
        max-width: 560px;
    }

    .page_about .category_title {
        font-size: min(4.1vw, 16px);
    }

    .page_about .category_items {
        gap: 23px 28px;
    }

    .page_about .category_items .item a {
        font-size: min(4.1vw, 16px);
    }

    .page_about .map {
        margin-top: 38px;
        margin-left: 0;
        aspect-ratio: 560/350;
        max-width: 560px;
        width: 100%;
    }

    .page_about .img_keyword_wrap {
        margin-top: 60px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        width: 100%;
    }

    .page_about .image_wrap {
        margin-top: 60px;
    }

    .page_about .image_wrap .items {
        display: block;
    }

    .page_about .image_wrap .item:not(:first-child) {
        margin-top: 40px;
    }

    .page_about .image_wrap .item {
        max-width: 560px;
    }

    .page_about .image_wrap .item img {
        width: 100%;
        aspect-ratio: 560/380;
        object-fit: cover;
        display: block;
    }

    .page_about .image_wrap .item p {
        font-size: min(3.58vw, 14px);
    }

    .page_about .img_wrap::before,
    .page_about .img_wrap::after {
        content: none;
    }

    .page_about .clipped_rectangle_sub_about1 {
        clip-path: polygon(0 0, calc(100% - 34px) 0, 100% 34px, 100% 100%, 0 100%);
        position: absolute;
        top: -8px;
        left: 14px;
        width: 98%;
        height: 97%;
    }

    .page_about .clipped_rectangle_sub_about1::after {
        content: "";
        position: absolute;
        transform: rotate(-135deg);
        width: 85px;
        height: 1px;
        right: -22px;
        top: 12px;
        background: #324571;
    }

    .page_about .page_about_tazimi {
        margin-top: 20px;
    }

    .page_about .bg2 {
        bottom: 100px;
        height: 1800px;
    }

    .page_about .img_wrap2 {
        position: relative;
    }

    .page_about .img_wrap2::before,
    .page_about .img_wrap2::after {
        content: none;
    }

    .page_about .clipped_rectangle_sub_about2 {
        clip-path: polygon(27px 0, 100% 0, 100% 100%, 0 100%, 0 27px);
        position: absolute;
        top: -4px;
        left: -8px;
        width: 98%;
        height: 96%;
        border: 1px solid #324571;
        transition: 0.2s;
        z-index: 1;
    }

    .page_about .clipped_rectangle_sub_about2::after {
        content: "";
        position: absolute;
        transform: rotate(-45deg);
        width: 85px;
        height: 1px;
        left: -29px;
        top: 12px;
        background: #324571;
    }

    .page_about .category_wrap {
        width: 100%;
    }

    .page_job {
        min-width: auto;
    }

    .page_about .bg {
        top: -150px;
        height: 2200px;
    }

    .page_job .page_job_title {
        padding-left: min(7.69vw, 30px);
        font-size: min(15.38vw, 40px);
    }

    .page_job .message1_title,
    .page_job .message2_title,
    .page_job .message3_title,
    .page_job .page_job_description_title,
    .page_job .application_title {
        font-size: min(7.69vw, 26px);
    }

    .page_job .img_message {
        display: block;
    }

    .page_job .img_wrap {
        margin: auto;
        max-width: 256px;
    }

    .page_job .img_wrap img {
        aspect-ratio: 256/200;
    }

    .page_job .message1_1 {
        margin-left: 0;
    }

    .page_job .img_message {
        margin-top: 35px;
    }

    .page_job .message2,
    .page_job .message3,
    .page_job .page_job_description,
    .page_job .application {
        margin-top: 100px;
    }

    .page_job .message1_1,
    .page_job .message2 .text:first-of-type,
    .page_job .message3 .text:first-of-type,
    .page_job .page_job_description .text:first-of-type,
    .page_job .application .text {
        margin-top: 20px;
    }

    .page_job .message1_1,
    .page_job .message1_2,
    .page_job .message2 p,
    .page_job .message3 p,
    .page_job .page_job_description p,
    .page_job .application p {
        font-size: min(3.58vw, 14px);
    }

    .page_job .bg2 {
        bottom: 100px;
        height: 1800px;
    }

    .page_tenant {
        min-width: auto;
    }

    .page_tenant .bg {
        top: 50px;
        height: 800px;
    }

    .page_tenant .contact_wrap .contact_title {
        font-size: min(7.69vw, 26px);
    }

    .page_tenant .contact_wrap .contact_title:not(:first-child) {
        margin-top: 30px;
        padding-top: 30px;
    }

    .page_tenant .contact_item_wrap {
        margin-top: 20px;
    }

    .page_tenant .contact_item_wrap p {
        font-size: min(3.58vw, 14px);
    }

    .page_tenant .bg2 {
        bottom: 100px;
        height: 800px;
    }

    .page_company_info {
        min-width: auto;
        display: flex;
        justify-content: center;
    }

    .page_company_info .bg {
        top: 20px;
        height: 1130px;
    }

    .page_company_info .table {
        min-width: auto;
        max-width: min(153.84vw, 600px);
        width: 100%;
    }

    .page_company_info th,
    .page_company_info td {
        padding: min(2.56vw, 10px);
        font-size: min(3.58vw, 14px);
    }

    .page_company_info .table_title1 {
        width: min(25.64vw, 100px);
    }

    .page_company_info .table_title2 {
        width: min(35.89vw, 140px);
    }

    .page_company_info .page_company_info_sub_title {
        font-size: min(7.69vw, 26px);
    }

    .page_company_info .bg2 {
        bottom: -20px;
        height: 445px;
    }

    .page_staff {
        min-width: auto;
        display: flex;
        justify-content: center;
    }

    .page_staff .bg {
        top: 20px;
        height: 1130px;
    }

    .page_staff .page_staff_title {
        padding-left: min(7.69vw, 30px);
        font-size: min(15.38vw, 40px);
    }

    .page_staff .items {
        grid-template-columns: repeat(2, 1fr);
    }

    .page_staff .item {
        max-width: min(74.35vw, 290px);
        width: auto;
    }

    .page_staff .item_body {
        margin: auto;
        margin-top: -40px;
        padding: 20px min(2.56vw, 10px);
        max-width: min(69.23vw, 270px);
        width: 95%;
    }

    .page_staff .item .store_name {
        padding: min(0.76vw, 3px);
        font-size: min(3.07vw, 12px);
    }

    .page_staff .item .main_name {
        margin-top: min(2.56vw, 10px);
        font-size: min(4.1vw, 16px);
        letter-spacing: 0.06em;
    }

    .page_staff .item .main_name span {
        margin-left: min(2.56vw, 10px);
        font-size: min(3.07vw, 12px);
    }

    .page_staff .item .sub_name {
        margin-top: 6px;
        font-size: min(3.58vw, 14px);
    }

    .page_staff .item .text {
        margin-top: 10px;
        font-size: min(3.58vw, 14px);
        line-height: 1.2;
        font-weight: 300;
    }

    .page_staff .item:hover .img img {
        transform: none;
    }

    .page_owner_reason {
        min-width: auto;
        display: flex;
        justify-content: center;
    }

    .page_owner_reason .bg {
        top: 20px;
        height: 300px;
    }

    .page_owner_reason .inner {
        padding: 0 min(5.12vw, 20px);
    }

    .page_owner_reason .page_owner_reason_title_wrap {
        text-align: left;
    }

    .page_owner_reason .page_owner_reason_title {
        font-size: min(7.69vw, 26px);
        text-align: left;
    }

    .page_owner_reason .items_wrap {
        margin-top: 68px;
    }

    .page_owner_reason .items {
        grid-template-columns: 1fr;
        gap: 7vw;
        display: grid;
    }

    .page_owner_reason .item {
        max-width: unset;
    }

    .page_owner_reason .item_body {
        padding: 3.5vw;
    }

    .page_owner_reason .item .item_title {
        font-size: 4vw;
    }

    .page_owner_reason .item .item_text {
        margin-top: 10px;
        font-size: 3.2vw;
        line-height: 1.5;
    }

    .page_owner_reason .item:hover .img img {
        transform: none;
    }

    .page_owner_reason .item a:hover .item_title {
        color: #1a1a1a;
    }

    .page_owner_business {
        margin-top: 106px;
        min-width: auto;
    }

    .page_owner_business .inner {
        padding: 0 min(5.12vw, 20px);
    }

    .page_owner_business .page_owner_business_title {
        font-size: min(7.69vw, 26px);
        text-align: left;
    }

    .page_owner_business .items {
        grid-template-columns: repeat(2, 1fr);
        gap: 3vw;
        margin-bottom: 15vw;
    }

    .page_owner_business .item_content {
        padding: 4vw 2vw;
        max-width: min(73.07vw, 285px);
    }

    .page_owner_business .item .item_title {
        font-size: 3.6vw;
    }

    .page_owner_business .item .item_text {
        margin-top: 18px;
        display: inline-block;
        font-size: 3vw;
        line-height: 1.4;
    }

    .page_owner_business .item img {
        margin-top: 20px;
        max-width: 275px;
        width: 100%;
    }

    .page_owner_business .bg2 {
        bottom: 70px;
        height: 143vw;
    }

    .page_owner_contact .contact_sec .ttl_box {
        margin-bottom: 10vw;
    }

    .page_owner_contact .contact_sec .ttl_box .ttl {
        font-size: 5.8vw;
    }

    .page_owner_contact .contact_sec .contact_list ul {
        gap: 5vw 0;
        flex-direction: column;
    }

    .page_owner_contact .contact_sec .contact_list ul li .link {
        width: 80vw;
        min-block-size: 15vw;
        gap: 3vw;
    }

    .page_owner_contact .contact_sec .contact_list ul li .link:hover {
        color: #324571;
        background-color: unset;
    }

    .page_owner_contact .contact_sec .contact_list ul li .link .img {
        width: 5.5vw;
    }

    .page_owner_contact .contact_sec .contact_list ul li .link .text {
        font-size: 3.4vw;
    }

    .page_owner_business .item:hover .img img {
        transform: none;
    }

    .footer .nav_area,
    .footer .nav_station {
        display: block;
    }

    .footer .nav_area .items,
    .footer .nav_station .items {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 3vw;
        margin-left: 0;
        border-left: none;
        margin-top: 3vw;
    }

    .footer .nav_area .item,
    .footer .nav_station .item {
        font-size: 3.2vw;
        margin-left: 0;
    }

    .footer .area_wrap {
        margin-top: 10vw;
    }

    .footer .station_wrap {
        margin-top: 7vw;
    }

    .page_staff_detail_cont .flex_box {
        grid-template-columns: 1fr;
        gap: 6vw;
    }

    .page_staff_detail_cont .flex_box .staff_main_img {
        height: 60vw;
    }

    .page_staff_detail_cont .flex_box .text_area {
        padding-top: 0;
    }

    .page_staff_detail_cont .flex_box .text_area .name_box {
        margin-bottom: 5vw;
        padding-bottom: 2vw;
        gap: 4vw;
    }

    .page_staff_detail_cont .flex_box .text_area .name_box .staff_name {
        font-size: 5vw;
    }

    .page_staff_detail_cont .flex_box .text_area .name_box .en_name {
        font-size: 3.4vw;
    }

    .page_staff_detail_cont .flex_box .text_area .detail_area .detail_table {
        margin-bottom: 5vw;
    }

    .page_staff_detail_cont .flex_box .text_area .detail_area .detail_table th,
    .page_staff_detail_cont .flex_box .text_area .detail_area .detail_table td {
        font-size: 3.6vw;
    }

    .page_staff_detail_cont .flex_box .text_area .detail_area .comment {
        font-size: 3.8vw;
    }

    /* ここから */
    .page_owner_reason .num {
        font-size: 10vw;
    }

    .page_owner_reason .intro_text_box .text {
        text-align: left;
        font-size: 3.8vw;
    }

    .page_owner_reason .intro_text_box {
        margin-top: 6.5vw;
    }

    .page_owner_reason .items_wrap.owner {
        margin-top: 7vw;
    }

    .page_owner_reason .items_wrap .ttl_box .text {
        font-size: 5.3vw;
    }

    .profit_improvement_point .cont .text_area .text {
        font-size: 3.6vw;
        text-align: left;
    }

    .occupancy_rate_sec .text_area .note {
        font-size: 3.8vw;
    }

    .common_point_ttl {
        font-size: 5vw;
        text-align: left;
        margin-bottom: 1.2em;
    }

    .common_point_ttl .en {
        margin: 0 auto 0.7em 0;
    }

    .attract_customers_point+.attract_customers_point {
        margin-top: 10vw;
    }

    .attract_customers_point3 .cont .img_box {
        gap: 6vw;
        margin: 7vw 0;
        flex-direction: column;
    }

    .attract_customers_point1 .cont {
        flex-direction: column;
        margin-top: 5vw;
    }

    .attract_customers_point .text_area .text {
        font-size: 3.6vw;
        line-height: 1.4;
        text-align: left;
    }

    .attract_customers_point .text_area .text.center {
        text-align-last: left;
    }

    .attract_customers_point1 .cont .img_box {
        gap: 4vw;
    }

    .attract_customers_point1 .cont .img_box .img {
        width: 100%;
        height: 36vw;
    }

    .attract_customers_point3 .cont .img_box .img {
        width: 100%;
    }

    .attract_customers_point3 .promotion_box .item {
        padding: 3vw;
    }

    .attract_customers_point3 .promotion_box {
        grid-template-columns: repeat(2, 1fr);
        gap: 3vw;
    }

    .attract_customers_point3 .promotion_box .item .ttl {
        font-size: 3.4vw;
    }

    .attract_customers_point3 .promotion_box .item ul li {
        font-size: 3.4vw;
    }

    .common_sec_ttl_box {
        width: 100%;
        gap: 4vw;
        margin: 0 auto 7vw;
    }

    .occupancy_rate_sec .text_area .text {
        font-size: 4.5vw;
    }

    .occupancy_rate_sec {
        margin: 10vw 0;
        padding: 7vw 5vw;
        outline-offset: -2vw;
    }

    .common_sec_ttl {
        font-size: 7vw;
    }

    .profit_improvement_point1 .cont .image_lists {
        gap: 3vw;
        margin: 6.5vw 0;
    }

    .profit_improvement_point1 .cont .image_lists .img_box {
        background-color: #fff;
        padding: 6vw;
    }

    .profit_improvement_point1 .cont .image_lists .inner_box .img_ttl {
        text-align: center;
        margin-top: 3.6vw;
        font-size: 3.6vw;
    }

    .profit_improvement_point+.profit_improvement_point {
        margin-top: 10vw;
    }

    .profit_improvement_point2 .img_box {
        width: 100%;
        overflow: scroll;
    }

    .profit_improvement_point2 .img_box img {
        width: 120vw;
        max-width: unset;
    }

    .profit_improvement {
        padding-top: 15vw;
    }

    .profit_improvement_point3 .cont+.cont {
        margin-top: 7vw;
    }

    .profit_improvement_point3 .product_name {
        font-size: 4vw;
    }

    .profit_improvement_point3 .layout_box {
        grid-template-columns: 1fr;
        gap: 4vw;
    }

    .profit_improvement_point3 .layout_box .explanation_box {
        margin-top: 2vw;
    }

    .profit_improvement_point3 .layout_box .explanation_box .text {
        font-size: 3.6vw;
    }

    .profit_improvement_point3 .common_recommendation_box {
        margin-top: 7vw;
    }

    .common_recommendation_box .text {
        font-size: 3.6vw;
        text-align: left;
    }

    .common_recommendation_box .text.center {
        text-align: left;
    }

    .profit_improvement_point4 .layout_box {
        grid-template-columns: repeat(2, 1fr);
        gap: 4vw;
    }

    .profit_improvement_point4 .layout_box .item {
        border: solid 2px var(--main-color);
    }

    .profit_improvement_point4 .layout_box .item .ttl {
        font-size: 3.8vw;
    }

    .profit_improvement_point4 .layout_box .item .text_area .text {
        font-size: 3.4vw;
    }

    .profit_improvement_point4 .common_recommendation_box {
        margin-bottom: 4vw;
    }

    .management_system {
        padding-top: 10vw;
    }

    .management_system_point1 .cont {
        flex-direction: column;
        gap: 6vw;
    }

    .management_system_point1 .cont .image_lists {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        justify-content: center;
        gap: 4vw;
        margin: 0;
    }

    .management_system_point1 .cont .image_lists .img_box {
        padding: 6.5vw;
    }

    .management_system_point1 .cont .image_lists .inner_box .img_ttl {
        margin-top: 3.5vw;
        font-size: 3.8vw;
    }

    .management_system_point+.management_system_point {
        margin-top: 8vw;
    }

    .management_flow ul {
        margin: 7vw 0;
    }

    .management_flow ul {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        margin: 7vw 0 0;
        overflow: scroll;
    }

    .management_flow ul li {
        font-size: 3.8vw;
        letter-spacing: 0.03em;
        font-weight: 700;
        color: #fff;
        padding: 2em 1em 2em 1.5em;
        text-align: center;
        display: grid;
        place-content: center;
        position: relative;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }

    .management_flow ul li:nth-child(1),
    .management_flow ul li:nth-child(1)::after {
        background: var(--main-color);
    }

    .management_flow ul li:nth-child(2),
    .management_flow ul li:nth-child(2)::after {
        background: #6f5b55;
    }

    .management_flow ul li:nth-child(3),
    .management_flow ul li:nth-child(3)::after {
        background: #6f6562;
    }

    .management_flow ul li:nth-child(4),
    .management_flow ul li:nth-child(4)::after {
        background: #80787b;
    }

    .management_flow ul li:nth-child(5),
    .management_flow ul li:nth-child(5)::after {
        background: #938c90;
    }

    .management_flow ul li:nth-child(6),
    .management_flow ul li:nth-child(6)::after {
        background: #aaa6a9;
    }

    .management_flow ul li:not(:last-child)::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: -3vw;
        width: 3vw;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
        z-index: 1;
    }

    .management_system_point3 .cont {
        flex-direction: column;
        gap: 6vw;
    }

    .management_system_point3 .cont .img {
        width: 100%;
    }

    .owners_club_sec .ttl {
        font-size: 8vw;
        /* font-family: "m-plus-rounded-2p", sans-serif; */
        font-weight: 700;
    }

    .owners_club_sec {
        padding-top: 15vw;
    }

    .owners_club_sec .common_recommendation_box {
        margin: 7vw 0;
    }

    .owners_club_sec .img {
        margin: 7vw 0;
    }

    .common_link_btn {
        width: 80%;
        line-height: 8vw;
    }

    .common_link_btn .link {
        font-size: 4vw;
        padding: 2vw;
    }

    .common_link_btn .link:hover {
        background-color: #fff;
        color: var(--main-color);
    }

    .page_owner_reason .frame .img {
        height: 43vw;
        aspect-ratio: unset;
    }

    /* ALFオーナークラブページ */
    .common_owners_club {
        padding: 20vw 0;
    }

    .common_owners_club .common_sec_ttl {
        text-align: center;
        font-size: 6vw;
    }

    .common_service_sec .service_box {
        margin-top: 8vw;
    }

    .common_service_sec .service_box ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 5vw 0;
    }

    .common_service_sec .service_box ul li .text_box {
        padding: 3vw;
    }

    .common_service_sec .service_box ul li .text_box .index {
        font-size: 3.8vw;
    }

    .common_service_sec .service_box ul li .text_box .text {
        font-size: 3.5vw;
    }

    .common_strong_sec .strong_list ul {
        display: flex;
        gap: 0 6vw;
        overflow-x: scroll;
        justify-content: flex-start;
        padding-bottom: 1em;
    }

    .common_strong_sec .strong_list ul li {
        width: 48vw;
        flex-shrink: 0;
    }

    .common_strong_sec .strong_list ul li .icon {
        width: 12vw;
    }

    .common_strong_sec .strong_list ul li .text {
        margin-top: 4vw;
        font-size: 3.3vw;
    }

    .common_strong_sec .point_box {
        margin-top: 8vw;
    }

    .common_strong_sec .point_box .text {
        font-size: 3.8vw;
    }

    .owners_point_sec .head_box {
        padding: 6vw 4vw;
    }

    .owners_point_sec .head_box .text {
        font-size: 3.8vw;
    }

    .owners_point_sec .point_list {
        margin-top: 8vw;
    }

    .owners_point_sec .point_list ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 15vw 0;
    }

    .owners_point_sec .point_list li:not(:first-child)::before {
        content: "";
        width: 5vw;
        height: 10vw;
        top: 0;
        left: 50%;
        translate: -50% -100%;
        rotate: 90deg;
    }

    .owners_point_sec .point_list li .icon {
        padding: 6vw;
    }

    .owners_point_sec .point_list li .icon img {
        width: 22vw;
    }

    .owners_point_sec .point_list li .label .text {
        font-size: 3.9vw;
    }

    .owners_point_sec .img_box {
        margin-top: 10vw;
    }

    .common_info_sec .info_cont ul li {
        flex-direction: column;
        gap: 5vw 0;
    }

    .common_info_sec .info_cont ul li+li {
        margin-top: 12vw;
    }

    .common_info_sec .info_cont ul li:nth-child(even) {
        flex-direction: column;
    }

    .common_info_sec .info_cont ul li .img {
        width: 100%;
    }

    .common_info_sec .info_cont ul li .img img {
        aspect-ratio: 2/1;
        min-width: 0;
    }

    .common_info_sec .info_cont ul li .text_box .text {
        font-size: 3.8vw;
    }

    .common_item_sec .item_box ul li {
        flex-direction: column;
        gap: 8vw 0;
    }

    .common_item_sec .item_box ul li+li {
        margin-top: 8vw;
    }

    .common_item_sec .item_box ul li .img {
        width: 100%;
    }

    .common_item_sec .item_box ul li .img img {
        aspect-ratio: 2/1;
        min-width: 0;
    }

    .common_item_sec .item_box ul li .text_box .text {
        font-size: 3.6vw;
    }

    .common_item_sec .item_box ul li .text_box .text.bg {
        padding: 3vw;
    }

    .common_item_sec .point_box {
        margin-top: 8vw;
        padding: 6vw 4vw;
    }

    .common_item_sec .point_box .point {
        font-size: 5vw;
    }

    .common_item_sec .point_box .point::before,
    .common_item_sec .point_box .point::after {
        height: 10vw;
    }

    .common_item_sec .point_box .text_box {
        margin-top: 5vw;
    }

    .common_item_sec .point_box .text_box .text {
        font-size: 3.8vw;
    }

    .page_owner_contact.margin {
        margin-top: 20vw;
    }

    .common_strong_sec .arrow_box {
        width: 20vw;
        height: 10vw;
        margin: 8vw auto 0;
    }

    /* TOP 賃貸管理に関するよくある質問 */
    .top_main .owners_club_sec {
        padding-top: 20vw;
    }

    .top_faq {
        padding-top: 20vw;
    }

    .top_common_ttl .ja_title {
        font-size: 36px;
        margin-top: 5px;
    }

    .top_faq .faq_box dl .item dt {
        width: 10vw;
        font-size: 6vw;
    }

    .top_faq .faq_box dl .item dd {
        font-size: 3.6vw;
        padding: 1em 2em 1em 0.5em;
    }

    .top_faq .faq_box dl .question::after {
        border-right: 2vw solid transparent;
        border-left: 2vw solid transparent;
        border-top: 2vw solid #324571;
        right: 2vw;
    }

    .top_common_ttl {
        margin-bottom: 5vw;
    }

    /* TOP 賃貸管理会社変更の流れ */
    .top_change_flow {
        padding-top: 20vw;
    }

    .top_change_flow .flow_list li {
        flex-direction: column;
        gap: 1em 0;
    }

    .top_change_flow .flow_list li .img {
        width: 100%;
    }

    .top_change_flow .flow_list li .img img {
        aspect-ratio: 2/1;
    }

    .top_change_flow .flow_list li .text_box {
        padding: 0;
    }

    .top_change_flow .flow_list::before {
        content: none;
    }

    .top_change_flow .flow_list li .text_box .ttl_box .num {
        font-size: 5.5vw;
    }

    .top_change_flow .flow_list li .text_box .ttl_box .ttl {
        font-size: 4.5vw;
    }

    .top_change_flow .flow_list li .text_box .main_text {
        font-size: 3.6vw;
    }

    .top_change_flow .flow_list li .text_box .ttl_box {
        margin-bottom: 3.5vw;
    }

    .top_change_flow .flow_list li+li {
        margin-top: 10vw;
    }

    /* TOP トラブル対応事例 */
    .top_trouble {
        margin-top: 18vw;
        min-width: auto;
        display: flex;
        justify-content: center;
    }

    .top_trouble .title_btn_wrap {
        display: inline;
    }

    .top_trouble .btn_wrap {
        margin-top: 42px;
    }

    .top_trouble .content_wrap {
        margin-top: 0;
    }

    .top_trouble .items {
        grid-template-columns: repeat(1, 1fr);
        gap: 8vw 0;
        column-gap: 0;
    }

    .top_trouble .item {
        position: relative;
        width: 100%;
    }

    .top_trouble .item_body {
        padding: 0 min(3.07vw, 12px);
        padding-bottom: 32px;
    }

    .top_trouble .item:hover .img img {
        transform: none;
    }

    .top_trouble .item .date {
        margin-top: 16px;
        font-size: min(3.58vw, 14px);
    }

    .top_trouble .item_title {
        font-size: min(5.12vw, 20px);
    }

    .top_trouble .item .text {
        font-size: min(3.58vw, 14px);
    }

    .top_trouble .item a:hover .date {
        color: #ac938b;
    }

    .top_trouble .item a:hover .item_title {
        background-image: linear-gradient(to right, #cccccc 1px, transparent 1px);
        color: #1a1a1a;
    }

    .top_trouble .item .item_title {
        font-size: min(5.12vw, 20px);
    }

    .top_trouble .item .ttl_box {
        padding-bottom: 2.5vw;
    }

    .top_trouble_bg {
        top: 12vw;
        height: 90%;
    }

    /* TOP 管理を任せられる理由 */
    .top_reason {
        padding-top: 20vw;
    }

    .top_reason .top_common_ttl {
        margin-bottom: 5vw;
    }

    .top_reason .top_common_ttl .ja_title {
        font-size: 30px;
    }

    .top_reason .reason_catch {
        margin-bottom: 10vw;
    }

    .top_reason .reason_catch .text {
        font-size: 3.8vw;
    }

    .top_reason .reason_list li {
        flex-direction: column;
        gap: 3vw 0;
    }

    .top_reason .reason_list li:nth-child(odd) {
        flex-direction: column;
    }

    .top_reason .reason_list li .img {
        width: 100%;
    }

    .top_reason .reason_list li .img img {
        aspect-ratio: 2/1;
    }

    .top_reason .reason_list li .text_box .ttl_box .num {
        font-size: 8vw;
    }

    .top_reason .reason_list li .text_box .ttl_box .ttl {
        font-size: 5.5vw;
    }

    .top_reason .reason_list li .text_box .main_text {
        font-size: 3.6vw;
    }

    .top_reason .reason_list li+li {
        margin-top: 15vw;
    }

    .top_reason .btn_wrap {
        margin: 8vw auto 0;
    }

    .top_reason_bg {
        top: 30vw;
        height: 91.8%;
    }

    /* TOP お困りですか？ */
    .top_worry {
        padding-top: 80vw;
    }

    .top_worry .top_common_ttl .ja_title {
        font-size: 28px;
    }

    .top_worry .worry_list {
        padding: 5vw 3.5vw;
        margin-bottom: 5vw;
    }

    .top_worry .worry_list ul {
        grid-template-columns: 1fr;
        gap: 4vw 0;
    }

    .top_worry .worry_list li {
        font-size: 3.8vw;
    }

    .top_worry .worry_list li::before {
        width: 4.5vw;
    }

    .top_worry .catch_box {
        margin-bottom: 8vw;
    }

    .top_worry .catch_box .text {
        font-size: 5.5vw;
        margin-bottom: 5vw;
    }

    .top_worry .catch_box .text .large {
        font-size: 7vw;
    }

    .top_worry .catch_box .sub {
        font-size: 3.6vw;
    }

    .top_worry .btn_box {
        flex-direction: column;
        gap: 5vw 0;
        align-items: initial;
    }

    .common_cta_btn a {
        font-size: 4.5vw;
        min-block-size: 15vw;
        width: 80%;
        margin: 0 auto;
    }

    .common_cta_btn a:hover {
        background-color: #8e0000;
        color: #fff;
    }

    /* 立ち退きページ */
    #page_eviction .main_lead .text {
        line-height: 2;
        font-size: 0.9em;
    }

    #page_eviction .top_worry.gray_back {
        padding: 20vw 0;
    }

    #page_eviction .top_reason {
        padding-bottom: 20vw;
    }

    #page_eviction .section_reason {
        padding: 20vw 0;
    }

    #page_eviction .common_cont_list {
        grid-template-columns: repeat(1, 1fr);
    }

    #page_eviction .common_cont_list li .image {
        height: 40vw;
    }

    #page_eviction .common_cont_list li .text_area .catch {
        font-size: 1.2em;
    }

    #page_eviction .section_reason .reason_box {
        margin-bottom: 15vw;
    }

    #page_eviction .section_reason .proceed_box .main_title {
        font-size: 1.4em;
    }

    #page_eviction .section_reason .proceed_box ul li {
        display: block;
    }

    #page_eviction .section_reason .proceed_box ul li+li {
        margin-top: 10vw;
    }

    #page_eviction .section_reason .proceed_box ul li .image {
        width: 100%;
        margin-bottom: 10px;
    }

    #page_eviction .section_reason .proceed_box ul li:nth-child(even) .image {
        order: -1;
    }

    #page_eviction .section_reason .proceed_box ul li .text_area {
        width: 100%;
    }

    #page_eviction .section_reason .proceed_box ul li .text_area .catch {
        line-height: 1.6;
    }

    #page_eviction .section_reason .proceed_box ul li .text_area .text {
        line-height: 2;
    }

    #page_eviction .page_owner_reason .utilization_box {
        margin-top: 10vw;
    }

    #page_eviction .page_owner_reason .item {
        width: 100%;
    }

    #page_eviction .top_worry {
        padding-top: 20vw;
    }

    #page_eviction .section_works {
        padding: 20vw 0;
    }

    #page_eviction .section_works ul {
        grid-template-columns: repeat(1, 1fr);
    }

    #page_eviction .section_works ul li {
        padding: 5vw;
    }

    #page_eviction .section_works ul li .icon {
        margin-bottom: 10px;
    }

    #page_eviction .section_works ul li .catch {
        font-size: 1.1em;
    }

    #page_eviction .top_faq {
        padding: 20vw 0;
    }

    #page_eviction .page_owner_reason {
        display: block;
    }

    #page_eviction .profit_improvement_point {
        margin-top: 20vw;
    }

    #page_eviction .main_lead {
        margin-top: 20vw;
    }

    .top_worry.area_info_sec {
        padding-top: 20vw;
    }

    .common_area_slider_box {
        margin-bottom: 25vw;
    }

    .common_area_slider_box ul li.slick-slide {
        display: block;
    }

    .common_area_slider_box ul li .img {
        width: 100%;
        flex-shrink: 0;
    }

    .common_area_slider_box ul li .img img {
        height: 40vw;
    }

    .common_area_slider_box ul li .text_box {
        padding: 4vw;
    }

    .common_area_slider_box ul li .text_box .index {
        font-size: 4.2vw;
        line-height: 1.6;
        text-align: center;
    }

    .common_area_slider_box ul li .text_box .text {
        font-size: 3.4vw;
        height: 45vw;
    }

    .common_area_slider_box .slick-arrow {
        width: 10vw;
    }

    .common_area_slider_box .slick-arrow.slick_prev {
        left: 32vw;
        top: 107%;
    }

    .common_area_slider_box .slick-arrow.slick_next {
        right: 32vw;
        top: 107%;
    }

    .common_area_slider_box .slick-arrow::before {
        content: "";
        background: url(/penguin/resources/image/alf_housing/kani/icon_arrow_white.svg) no-repeat;
        background-size: contain;
        width: 20px;
        height: 15px;
        position: absolute;
        top: 50%;
        left: 50%;
        translate: -50% -50%;
    }

    .top_fv .swiper-slide::before {
        height: 740px;
    }

    .follow_btn.demo .wrap {
        background: linear-gradient(180deg, #cdd7ee 0%, #7584a6 100%);
    }

    .top_property.demo .common_arrivals_list ul {
        grid-template-columns: repeat(8, 1fr);
    }

    .top_property .panel.js_panel {
        display: flex;
        overflow-x: scroll;
        gap: 0 1em;
        padding-bottom: 1em;
    }

    .top_property.demo .common_arrivals_list ul li a .imgBox {
        width: 62.7vw;
        height: 42vw;
    }

    .top_property.demo .common_arrivals_list ul li a .textBox .ttl {
        font-size: 4.2vw;
    }

    .top_property.demo .common_arrivals_list ul li a .textBox .yachin {
        font-size: 4.2vw;
    }

    .top_property.demo .common_arrivals_list ul li a .textBox .access {
        font-size: 4.2vw;
    }

    /* 空室対策ページ */
    .vacancy_back_sec.page_owner_reason,
    .vacancy_reason_sec.page_owner_reason,
    .vacancy_idea_sec.page_owner_reason {
        margin: 20vw 0 0;
    }

    .page_fv .main_title.long_sentence {
        margin-top: 4px;
        font-size: min(9.25vw, 40px);
    }

    .vacancy_back_sec.page_owner_reason .page_owner_reason_title_wrap,
    .vacancy_reason_sec.page_owner_reason .page_owner_reason_title_wrap,
    .vacancy_idea_sec.page_owner_reason .page_owner_reason_title_wrap {
        text-align: center;
    }

    .vacancy_back_sec.page_owner_reason .page_owner_reason_title,
    .vacancy_reason_sec.page_owner_reason .page_owner_reason_title,
    .vacancy_idea_sec.page_owner_reason .page_owner_reason_title {
        text-align: center;
        line-height: 1.3;
    }

    .vacancy_back_sec.page_owner_reason .intro_text_box {
        margin: 4vw 0 6vw;
    }

    .vacancy_back_sec .column {
        grid-template-columns: 1fr;
        gap: 6vw;
    }

    .vacancy_back_sec .column:nth-of-type(odd) .img {
        order: inherit;
    }

    .vacancy_back_sec .title .en_title {
        font-size: 5vw;
    }

    .vacancy_back_sec .ja_title {
        font-size: 6vw;
        margin-top: 1vw;
    }

    .vacancy_back_sec .column .text {
        font-size: 3.5vw;
        margin-top: 6vw;
    }

    .vacancy_back_sec .column+.column {
        margin-top: 10vw;
    }

    .vacancy_reason_sec .page_owner_business .inner {
        padding: 0;
    }

    .vacancy_reason_sec .page_owner_business {
        margin-top: 0;
    }

    .vacancy_reason_sec.page_owner_reason .items_wrap {
        margin: 0;
    }

    .vacancy_reason_sec .page_owner_business .items {
        grid-template-columns: 1fr;
        gap: 7vw;
        margin: 10vw 0 0;
    }

    .vacancy_reason_sec .page_owner_business .item_content {
        max-width: none;
        padding: 4vw;
    }

    .vacancy_reason_sec .page_owner_business .item img {
        max-width: none;
    }

    .vacancy_reason_sec .page_owner_business .item .item_title {
        font-size: 4.4vw;
    }

    .vacancy_reason_sec .page_owner_business .item .item_text {
        font-size: 3.5vw;
        line-height: 1.5;
    }

    .vacancy_idea_sec .list {
        padding: 6vw 4vw;
        margin: 6vw 0;
    }

    .vacancy_idea_sec .list_title {
        font-size: 5vw;
        line-height: 1.3;
    }

    .vacancy_idea_sec .list .list_title+.text {
        font-size: 3.5vw;
        text-align: left;
    }

    .vacancy_idea_sec .list .list_box {
        padding: 3vw;
    }

    .vacancy_idea_sec .list .list_box .text {
        font-size: 3.5vw;
        line-height: 1.5;
    }

    .vacancy_idea_sec .list .list_box .text+.text {
        margin-top: 3vw;
    }

    .vacancy_idea_sec.page_owner_reason .items_wrap {
        margin-top: 20vw;
    }

    .vacancy_idea_sec .items_wrap.owner .summary_text {
        font-size: 3.5vw;
        text-align: left;
    }

    .vacancy_idea_sec.page_owner_reason .items {
        margin-top: 2em;
        gap: 10vw;
    }

    .vacancy_idea_sec.page_owner_reason .item {
        max-width: none;
    }

    .vacancy_differen_sec.top_search {
        margin: 20vw 0;
    }

    .vacancy_differen_sec.top_search .sub_title_wrap .title,
    .vacancy_cost_sec.top_search .sub_title_wrap .title {
        font-size: 6vw;
        font-family: "Shippori Mincho", serif;
        font-weight: 300;
    }

    .vacancy_differen_sec .sub_title_wrap {
        margin-bottom: 6vw;
    }

    .vacancy_differen_sec .sub_title_wrap+.text {
        font-size: 3.5vw;
        line-height: 1.5;
        margin-bottom: 8vw;
    }

    .vacancy_differen_sec .list_box {
        grid-template-columns: 1fr;
        gap: 6vw;
    }

    .vacancy_differen_sec .list_box .min_title {
        font-size: 4.5vw;
        margin-bottom: 1.5vw;
        padding-bottom: 1.5vw;
    }

    .vacancy_differen_sec .list_box .text-align {
        font-size: 3.5vw;
    }

    .vacancy_cost_sec.top_change_flow {
        padding: 20vw 0 20vw;
    }

    .vacancy_cost_sec .sub_title_wrap {
        margin-bottom: 6vw;
    }

    .vacancy_cost_sec .sub_title_wrap+.text {
        font-size: 3.5vw;
        line-height: 1.5;
        margin-bottom: 8vw;
    }

    .vacancy_cost_sec.top_change_flow .flow_list li .text_box {
        padding: 0;
    }

    .vacancy_example_sec .ttl_box {
        margin-bottom: 6vw;
    }

    .vacancy_example_sec .ttl_box+.text_box .text {
        font-size: 3.5vw;
        text-align: left;
    }

    .vacancy_example_sec .list {
        grid-template-columns: 1fr;
        margin: 10vw -2vw 0;
    }

    .vacancy_example_sec .list .item {
        margin: 2vw;
    }

    .vacancy_example_sec .item .sell_summary {
        grid-template-columns: 25% 1fr;
    }

    .vacancy_example_sec .item .sell_summary .text_box .text {
        font-size: 4vw;
    }

    .vacancy_example_sec .page_owner_business .item_content .list_title {
        font-size: 4vw;
    }

    .vacancy_example_sec .page_owner_business .item_content .list_text {
        font-size: 3.5vw;
        line-height: 1.5;
    }

    .vacancy_example_sec.owners_club_sec {
        padding-bottom: 20vw;
    }

    .vacancy_example_sec .contents_box {
        height: 90vw;
        padding: 0 1vw;
        overflow: auto;
    }

    /* オーナーの声 */
    .top_customer_sec .slick-dots li {
        margin: 0px 3px;
    }

    .top_customer_sec .ttl {
        font-size: 8vw;
    }

    .top_customer_sec .customer_up_inner .img {
        width: 18vw;
        height: 18vw;
    }

    .top_customer_sec .example_title {
        margin-top: 2vw;
    }

    .top_customer_sec .ttl_box {
        margin-bottom: 6vw;
    }

    .top_customer_sec .name {
        font-size: 4vw;
    }

    .top_customer_sec .meta {
        font-size: 3.6vw;
    }

    .top_customer_sec .summary {
        font-size: 3.6vw;
        padding: 2vw;
    }

    .top_customer_sec .text {
        font-size: 3.4vw;
        padding: 4vw;
    }

    .top_customer_sec .top_custom_prev,
    .top_customer_sec .top_custom_next {
        width: 8vw;
    }

    .top_customer_sec .top_custom_prev {
        left: -2%;
    }

    .top_customer_sec .top_custom_next {
        right: -2%;
    }

    .top_customer_sec .top_custom_prev:hover,
    .top_customer_sec .top_custom_next:hover {
        opacity: 1;
    }

    .vacancy_example_sec .item .sell_summary .img {
    width: 20vw;
    height: 23vw;
    margin: 0 auto;
}

.vacancy_example_sec .item:nth-child(2) .sell_summary .img {
    width: 23vw;
    height: 19vw;
}
}