  /*------------------------------------------
  
    specialty-archives / 講師一覧
  
  ------------------------------------------*/
.specialty-archives {
    padding: 58px 0 180px;
}
  
.specialty-archives_inner {
    max-width: 1024px;
    margin-inline: auto;
}

.specialty-archives_head,
.search-result_head {
    text-align: center;
}

.specialty-archives_head .specialty-archives_title,
.search-result_head .search-result_title {
    font-size: calc(28 * var(--rem));
    font-weight: var(--font-weight-bold);
    border: 1px solid var(--line-color2);
    padding: 8px 39px;
    border-radius: 4px;
    display: inline-block;
}

.specialty-archives_head .specialty-archives_text,
.search-result_head .search-result_text {
    --gap-size: 11px;
    font-size: calc(20 * var(--rem));
    font-weight: var(--font-weight-bold);
    margin-top: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: var(--gap-size);
}

.specialty-archives_head .specialty-archives_text span,
.search-result_head .search-result_text span {
    display: grid;
    column-gap: var(--gap-size);
    grid-template-columns: repeat(2, auto);
    align-items: center;
}


.specialty-archives_head .specialty-archives_text span + span::before {
    content: "";
    width: 1px;
    height: 90%;
    border-left: 1px solid var(--text-color);
    margin-right: var(--gap-size);
    transform: rotate(30deg);
}

.search-result_head .search-result_text {
    --gap-size: 8px;
}

.search-result_head .search-result_text span + span::before {
    content: "";
    width: 12px;
    height: 1px;
    border-top: 1px solid var(--text-color);
    margin-right: var(--gap-size);
}

.specialty-archives_head .specialty-archives_text small {
    font-size: calc(18 * var(--rem));
    margin-left: 5px;
}

.specialty-list {
    --gap-size: 20px;
    display: grid;
    row-gap: var(--gap-size);
    column-gap: var(--gap-size);
    grid-template-columns: repeat(2, minmax(502px, 1fr));
    margin-top: 60px;
}

.specialty-card {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
}

.specialty-card a {
    position: relative;
    color: var(--text-color);
    padding: 10px;
    height: 100%;
    display: inherit;
    grid-template-rows: inherit;
    grid-row: inherit;
}

.specialty-card a::before {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 7px;
    background: var(--body-bg-color);
    z-index: 2;
}
  
.specialty-card a::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 12px;
    background: var(--border-gradient);
}


.specialty-card_head {
    --gap-size: 20px;
    --img-size: 190px;
    position: relative;
    z-index: 4;
    display: grid;
    grid-template-columns: var(--img-size) auto;
    column-gap: var(--gap-size);
    padding: 10px 14px 15px 10px;
    align-items: center;
}

.specialty-card_img {
    width: var(--img-size);
    aspect-ratio: 1 / 1;
    border-radius: var(--border-rounded);
    overflow: hidden;
    border: 5px solid var(--body-bg-color);
    position: relative;
    z-index: 10;
}

.specialty-card_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.specialty-card_title {
    font-weight: var(--font-weight-bold);
    word-break: break-all;
    margin-top: -27px;
}

.specialty-card_name {
    font-size: calc(26 * var(--rem));
    line-height: calc(28 / 26);
    -webkit-box-orient: vertical;
    line-clamp: 3;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    overflow: hidden;
}

.specialty-card_ruby {
    font-size: calc(12 * var(--rem));
    font-weight: var(--font-weight-semiBold);
    margin-bottom: 3px;
}

.specialty-card_post {
    font-size: calc(14 * var(--rem));
    font-weight: var(--font-weight-medium);
    margin-top: 5px;
}

.specialty-card_department {
    font-size: calc(12 * var(--rem));
    margin-top: 7px;
}

.specialty-card_body {
    position: relative;
    z-index: 2;
    display: grid;
    min-height: 251px;
    grid-template-columns: 220px 192px;
    align-items: flex-start;
    justify-content: space-between;
    padding: 23px 20px 83px;
    margin-top: -54px;
    background-color: #f5f5f5;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-top: 1px solid var(--line-color2);
}

.specialty-card_body .specialty-card_info dt {
    font-size: calc(12 * var(--rem));
    background-color: var(--body-bg-color);
    border: 1px solid var(--text-color);
    display: inline-block;
    padding: 0 5px;
    margin-top: 9px;
}

.specialty-card_body .specialty-card_info dd {
    font-size: calc(14 * var(--rem));
    font-weight: var(--font-weight-bold);
    margin-top: 5px;
}

.specialty-card_body .specialty-card_field {
    margin-top: 5px;
}

.specialty-card_body .specialty-card_tags {
    background-color: var(--body-bg-color);
    padding: 10px 14px 23px;
    border-radius: 7px;
    border: 1px solid var(--line-color2);
}

.specialty-card_body .specialty-card_tags dt {
    margin-top: 0;
}

.specialty-card_body .specialty-card_tags dd {
    font-size: calc(12 * var(--rem));
    display: flex;
    column-gap: 8px;
    row-gap: 3px;
    flex-wrap: wrap;
    font-weight: var(--font-weight-regular);
} 

.specialty-card_icon {
    --icon-size: 56px;
    position: absolute;
    right: 30px;
    bottom: 40px;
    z-index: 4;
    display: grid;
    place-items: center;
    width: var(--icon-size);
    height: var(--icon-size);
    border-radius: var(--border-rounded);
    background-color: var(--body-bg-color);
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1);
}

.specialty-card_icon img {
    width: 12px;
}

.specialty-list  + .pagination {
    padding-top: 0;
    margin-top: 80px;
    border-top: none;
}

/*------------------------------------------
  
    specialty-post / 講師詳細
  
------------------------------------------*/

.specialty-post {
    padding: 82px 0 180px;
    overflow: hidden;
}
  
.specialty-post_inner {
    max-width: 1024px;
    margin-inline: auto;
    position: relative;
    padding: 5px;
}

.specialty-post_inner::before {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 7px;
    background: var(--body-bg-color);
    z-index: 2;
}
  
.specialty-post_inner::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 12px;
    background: var(--border-gradient);
}

.specialty-post_inner > * {
    position: relative;
    z-index: 2;
}

.specialty-post_head {
    display: grid;
    grid-template-columns:480px 1fr;
    column-gap: 89px;
    align-items: center;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    overflow: hidden;
    border-bottom: 5px solid var(--line-color2);
}

.specialty-post_head .specialty-post_img {
    display: block grid;
    place-items: center;
    order: 1;
}

.specialty-post_head .specialty-post_img img {
    object-fit: cover;
    max-height: 320px;
    width: auto;
}

.specialty-post_head .specialty-post_title {
    order: 2;
    padding-right: 27px;
}

.specialty-post_head .specialty-post_name {
    font-size: calc(38 * var(--rem));
    line-height: calc(42 / 38);
    font-weight: var(--font-weight-bold);
    margin-top: 4px;
}

.specialty-post_head .specialty-post_post {
    font-size: calc(16 * var(--rem));
    font-weight: var(--font-weight-medium);
    margin-top: 10px;
}

.specialty-post_head .specialty-post_name:has(ruby) {
    display: inline-block;
    vertical-align: bottom;
    margin-right: 10px;
}

.specialty-post_head .specialty-post_name:has(ruby) + .specialty-post_post {
    display: inline-block;
}

.specialty-post_head .specialty-post_department {
    font-size: calc(16 * var(--rem));
    margin-top: 14px;
    font-weight: var(--font-weight-bold);
}

.specialty-post_status {
    display: grid;
    grid-template-columns:480px 1fr;
    padding: 38px 0;
    column-gap: 24px;
    max-width: 960px;
    margin-inline: auto;
}

.specialty-post_status .specialty-post_info {
    padding: 0 37px;
}

.specialty-post_status .specialty-post_info dl + dl{
    margin-top: 16px;
}

.specialty-post_status .specialty-post_info dt {
    font-size: calc(14 * var(--rem));
    background-color: var(--body-bg-color);
    border: 1px solid var(--text-color);
    line-height: 1;
    display: inline-block;
    padding: 3px 7px 5px;

}

.specialty-post_status .specialty-post_info dd {
    font-size: calc(16 * var(--rem));
    font-weight: var(--font-weight-bold);
    margin-top: 10px;
    line-height: calc(25 / 16);
}

.specialty-post_status .specialty-post_info dd a {
    font-size: calc(14 * var(--rem));
    font-weight: var(--font-weight-medium);
    display: inline-block;
    margin-top: 7px;
    text-decoration: underline;
    color: var(--theme-color);
}

.specialty-post_status .specialty-post_info dd a:hover {
    text-decoration: none;
    opacity: 1;
}

.specialty-post_status .specialty-post_info dd a .icon-blank {
    width: 14px;
    display: inline-block;
    margin-left: 5px;
}

.specialty-post_status .specialty-post_tags {
    margin-top: 2px;
}

.specialty-post_status .specialty-post_tags > div {
    --gap-size: 5px;
    display: flex;
    column-gap: var(--gap-size);
    row-gap: var(--gap-size);
    flex-wrap: wrap;
}


.specialty-post_status .specialty-post_tags a {
    font-size: calc(16 * var(--rem));
    color: var(--text-color);
    font-weight: var(--font-weight-bold);
    background-color: var(--line-color2);
    border: 1px solid var(--line-color2);
    padding: 3px 15px 5px;
    border-radius: 4px;
}

@media (hover: hover) {
    .specialty-post_status .specialty-post_tags a:hover {
        background-color: var(--body-bg-color);
        border-color: var(--theme-color);
        color: var(--theme-color);
        text-decoration: underline;
        opacity: 1;
    }
}

.specialty-post_status .specialty-post_tag2 {
    margin-top: 20px;
}

.specialty-post_status .specialty-post_tag2 a {
    font-size: calc(16 * var(--rem));
    font-weight: var(--font-weight-bold);
    background-color: var(--body-bg-color);
    border: 1px solid var(--text-color);
}

.specialty-post_slide {
    margin-inline: calc(50% - 50vi);
    z-index: 3;
    margin-top: 40px;
}
.specialty-post_slide .gallery-swiper {
    position: relative;
    overflow: visible;
    margin-inline: auto;
    max-width: 1120px;
}

.specialty-post_slide .gallery-swiper .swiper-wrapper {
    margin-inline: auto;
    width: 100%;
}

.specialty-post_slide .swiper-slide {
    display: block grid;
    place-items: center;
}

.specialty-post_slide .swiper-slide img {
    border-radius: 4px;
    aspect-ratio: 3 /2;
    object-fit: cover;
}

.specialty-post_slide .swiper-pagination {
    position: relative;
    margin-top: 40px;
}
.specialty-post_slide .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 7px;
    background-color: #ddd;
    opacity: 1;
}

.specialty-post_slide .swiper-pagination-bullet-active {
    background-color: var(--theme-color);
} 

.specialty-post_slide .swiper-button-next,
.specialty-post_slide .swiper-button-prev {
    --inline-postion: -26;
    width: 56px;
    height: 56px;
    background-color: var(--body-bg-color);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px auto;
    border-radius: var(--border-rounded);
    box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1);
    top: calc(50% - 38px);
}

.specialty-post_slide .swiper-button-next span,
.specialty-post_slide .swiper-button-prev span {
    visibility: hidden;
}

.specialty-post_slide .swiper-button-next {
    right: calc(var(--inline-postion) * var(--max-fluid-ratio));
    background-image: url(../images/shared/icon-arrow-blue-right.svg);
}

.specialty-post_slide .swiper-button-prev {
    left: calc(var(--inline-postion) * var(--max-fluid-ratio));
    background-image: url(../images/shared/icon-arrow-blue-left.svg);
}

.specialty-post_slide .swiper-button-next::after,
.specialty-post_slide .swiper-button-prev::after {
  content: none;
}


.specialty-post_body {
    background-color: #F5F5F5;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding-top: 196px;
    margin-top: -189px;
}

.specialty-post-section .specialty-post-section_inner {
    max-width: 960px;
    padding: 60px 8px 60px 7px;
    margin-inline: auto;
    display: grid;
    grid-template-columns: 120px 1fr;
    column-gap: 30px;
}

.specialty-post-section + .specialty-post-section .specialty-post-section_inner {
    border-top: 1px solid var(--line-color2);
}

.specialty-post-section:nth-of-type(2n) {
    background-color: var(--body-bg-color);
}

.specialty-post-section:last-child {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}
.specialty-post-section .specialty-post-section_title {
    font-size: calc(20 * var(--rem));
    font-weight: var(--font-weight-bold);
}

.specialty-post-section .specialty-post-section_title span {
    border-bottom: 4px solid var(--theme-color);
    padding-bottom: 14px;
}

.specialty-post-section .specialty-post-section_text {
    font-size: calc(16 * var(--rem));
    line-height: calc(32 / 16);
    margin-top: -4px;
}

.specialty-post-section .profile-wrap {
    background-color: var(--body-bg-color);
    border: 1px solid var(--line-color2);
    border-radius: 6px;
    margin-top: 15px;
    padding: 30px 30px 27px;
}

.specialty-post-section .profile-wrap .profile {
    font-size: calc(16 * var(--rem));
}

/* .specialty-post-section .profile-wrap .profile {
    display: grid;
    --gap-size: 14px;
    grid-template-columns: max-content auto;
    column-gap: var(--gap-size);
    font-size: calc(16 * var(--rem));
}

.specialty-post-section .profile-wrap .profile + .profile {
    margin-top: 10px;
}

.specialty-post-section .profile-wrap .profile dt {
    font-weight: var(--font-weight-semiBold);
}


.specialty-post-section .profile-wrap .profile dt::after {
    content: "";
    display: inline-block;
    width: 1px;
    height: 14px;
    border-left: 1px solid #999;
    margin-left: var(--gap-size);
    vertical-align: middle;
    font-weight: var(--font-weight-semiBold);
} */

/* 
.specialty-post-section .biography-list {
    font-size: calc(16 * var(--rem));
}

.specialty-post-section .biography-list .biography-list_item {
    display: grid;
    grid-template-columns: max-content 1fr;
    column-gap: 25px;
}

.specialty-post-section .biography-list .biography-list_item + .biography-list_item {
    margin-top: 10px;
}

.specialty-post-section .biography-list .biography-list_item .date {
    font-weight: var(--font-weight-semiBold);
}

.specialty-post-section .achievements-list {
    font-size: calc(16 * var(--rem));
}

.specialty-post-section .achievements-list + .achievements-list {
    margin-top: 26px;
}

.specialty-post-section .achievements-list dd {
    line-height: calc(32 / 16);
    margin-top: 6px;
} */

.specialty-post-section.specialty-post-achievements .specialty-post-section_inner{
    padding-bottom: 52px;
}

.specialty-post .btn-back {
    margin-top: 80px;
}


@media screen and (max-width: 1366px) {
    .specialty-archives {
        padding: calc(58 * var(--max-fluid-ratio)) 0 calc(180 * var(--max-fluid-ratio));
    }
      
    .specialty-archives_inner {
        max-width: calc(1024 * var(--max-fluid-ratio));
    }
        
    .specialty-archives_head .specialty-archives_title,
    .search-result_head .search-result_title {
        font-size: calc(28 * var(--max-fluid-ratio));
        padding: calc(8 * var(--max-fluid-ratio)) calc(39 * var(--max-fluid-ratio));
        border-radius: calc(4 * var(--max-fluid-ratio));
    }
    
    .specialty-archives_head .specialty-archives_text,
    .search-result_head .search-result_text {
        --gap-size: calc(11 * var(--max-fluid-ratio));
        font-size: calc(20 * var(--max-fluid-ratio));
        margin-top: calc(18 * var(--max-fluid-ratio));
    }
    
    
    .specialty-archives_head .specialty-archives_text small {
        font-size: calc(18 * var(--max-fluid-ratio));
        margin-left: calc(5 * var(--max-fluid-ratio));
    }

    .search-result_head .search-result_text {
        --gap-size: calc(8 * var(--max-fluid-ratio));
    }
    
    .search-result_head .search-result_text span + span::before {
        width: calc(12 * var(--max-fluid-ratio));
    }    
    .specialty-list {
        --gap-size: calc(20 * var(--max-fluid-ratio));
        grid-template-columns: repeat(2, minmax(calc(502 * var(--max-fluid-ratio)), 1fr));
        margin-top: calc(60 * var(--max-fluid-ratio));
    }
    
    .specialty-card a {
        padding: calc(10 * var(--max-fluid-ratio));
    }
    
    .specialty-card a::before {
        inset: calc(5 * var(--max-fluid-ratio));
        border-radius: calc(7 * var(--max-fluid-ratio));
    }
      
    .specialty-card a::after {
        border-radius: calc(12 * var(--max-fluid-ratio));
    }
    
    
    .specialty-card_head {
        --gap-size: calc(20 * var(--max-fluid-ratio));
        --img-size: calc(190 * var(--max-fluid-ratio));
        padding: calc(10 * var(--max-fluid-ratio)) calc(14 * var(--max-fluid-ratio)) calc(15 * var(--max-fluid-ratio)) calc(10 * var(--max-fluid-ratio));
    }
    
    .specialty-card_img {
        border-width: calc(5 * var(--max-fluid-ratio));
    }
        
    .specialty-card_title {
        margin-top: calc(-27 * var(--max-fluid-ratio));
    }
    
    .specialty-card_name {
        font-size: calc(26 * var(--max-fluid-ratio));
    }
    
    .specialty-card_ruby {
        font-size: calc(12 * var(--max-fluid-ratio));
        margin-bottom: calc(3 * var(--max-fluid-ratio));
    }

    .specialty-card_post {
        font-size: calc(14 * var(--max-fluid-ratio));
        margin-top: calc(5 * var(--max-fluid-ratio));
    }

    .specialty-card_department {
        font-size: calc(12 * var(--max-fluid-ratio));
        margin-top: calc(7 * var(--max-fluid-ratio));
    }
    
    .specialty-card_body {
        min-height: calc(251 * var(--max-fluid-ratio));
        grid-template-columns: calc(220 * var(--max-fluid-ratio)) calc(192 * var(--max-fluid-ratio));
        padding:calc(23 * var(--max-fluid-ratio)) calc(20 * var(--max-fluid-ratio)) calc(93 * var(--max-fluid-ratio));
        margin-top: calc(-54 * var(--max-fluid-ratio));
        border-bottom-left-radius: calc(5 * var(--max-fluid-ratio));
        border-bottom-right-radius: calc(5 * var(--max-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_info dt {
        font-size: calc(12 * var(--max-fluid-ratio));
        padding: 0 calc(5 * var(--max-fluid-ratio));
        margin-top: calc(9 * var(--max-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_info dd {
        font-size: calc(14 * var(--max-fluid-ratio));
        margin-top: calc(5 * var(--max-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_field {
        margin-top: calc(5 * var(--max-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_tags {
        padding: calc(10 * var(--max-fluid-ratio)) calc(14 * var(--max-fluid-ratio)) calc(23 * var(--max-fluid-ratio));
        border-radius: calc(7 * var(--max-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_tags dd {
        font-size: calc(12 * var(--max-fluid-ratio));
        column-gap: calc(8 * var(--max-fluid-ratio));
        row-gap: calc(3 * var(--max-fluid-ratio));
    } 
    
    .specialty-card_icon {
        --icon-size: calc(56 * var(--max-fluid-ratio));
        right: calc(30 * var(--max-fluid-ratio));
        bottom: calc(40 * var(--max-fluid-ratio));
        box-shadow: 0px calc(1 * var(--max-fluid-ratio)) calc(10 * var(--max-fluid-ratio)) rgba(0, 0, 0, 0.1);
    }
    
    .specialty-card_icon img {
        width: calc(12 * var(--max-fluid-ratio));
    }
    
    .specialty-list + .pagination {
        margin-top: calc(80 * var(--max-fluid-ratio));
    }


/*------------------------------------------
  
    specialty-post / 講師詳細
  
------------------------------------------*/

    .specialty-post {
        padding: calc(82 * var(--max-fluid-ratio)) 0 calc(180 * var(--max-fluid-ratio));
    }
    
    .specialty-post_inner {
        max-width: calc(1024 * var(--max-fluid-ratio));
        padding: calc(5 * var(--max-fluid-ratio));
    }

    .specialty-post_inner::before {
        inset: calc(5 * var(--max-fluid-ratio));
        border-radius: calc(7 * var(--max-fluid-ratio));
    }
    
    .specialty-post_inner::after {
        border-radius: calc(12 * var(--max-fluid-ratio));
    }

    .specialty-post_head {
        grid-template-columns:calc(480 * var(--max-fluid-ratio)) 1fr;
        column-gap: calc(89 * var(--max-fluid-ratio));
        border-top-left-radius: calc(5 * var(--max-fluid-ratio));
        border-top-right-radius: calc(5 * var(--max-fluid-ratio));
        border-bottom-width: calc(5 * var(--max-fluid-ratio));
    }

    .specialty-post_head .specialty-post_name {
        font-size: calc(38 * var(--max-fluid-ratio));
        margin-top: calc(4 * var(--max-fluid-ratio));
    }

    .specialty-post_head .specialty-post_post {
        font-size: calc(16 * var(--max-fluid-ratio));
        margin-top: calc(10 * var(--max-fluid-ratio));
    }

    .specialty-post_head .specialty-post_name:has(ruby) {
        margin-right: calc(10 * var(--max-fluid-ratio));
    }

    .specialty-post_status {
        grid-template-columns:calc(480 * var(--max-fluid-ratio)) 1fr;
        padding: calc(38 * var(--max-fluid-ratio)) 0;
        column-gap: calc(24 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info {
        padding: 0 calc(37 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dl + dl{
        margin-top: calc(16 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dt {
        font-size: calc(14 * var(--max-fluid-ratio));
        padding: calc(3 * var(--max-fluid-ratio)) calc(7 * var(--max-fluid-ratio)) calc(5 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dd {
        font-size: calc(16 * var(--max-fluid-ratio));
        margin-top: calc(10 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dd a {
        font-size: calc(14 * var(--max-fluid-ratio));
        margin-top: calc(7 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dd a .icon-blank {
        width: calc(14 * var(--max-fluid-ratio));
        margin-left: calc(5 * var(--max-fluid-ratio));
    }
    .specialty-post_status .specialty-post_tags {
        margin-top: calc(20 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_tags > div {
        --gap-size: calc(5 * var(--max-fluid-ratio));
    }


    .specialty-post_status .specialty-post_tags a {
        font-size: calc(16 * var(--max-fluid-ratio));
        padding: calc(3 * var(--max-fluid-ratio)) calc(15 * var(--max-fluid-ratio)) calc(5 * var(--max-fluid-ratio));
        border-radius: calc(4 * var(--max-fluid-ratio));
    }

    .specialty-post_status .specialty-post_tag2 {
        margin-top: calc(20 * var(--max-fluid-ratio));
    }


    .specialty-post_slide {
        margin-top: calc(40 * var(--max-fluid-ratio));
    }
    .specialty-post_slide .gallery-swiper {
        max-width: calc(1120 * var(--max-fluid-ratio));
    }

    .specialty-post_slide .swiper-slide img {
        border-radius: calc(4 * var(--max-fluid-ratio));
    }

    .specialty-post_slide .swiper-pagination {
        margin-top: calc(40 * var(--max-fluid-ratio));
    }
    .specialty-post_slide .swiper-pagination-bullet {
        width: calc(10 * var(--max-fluid-ratio));
        height: calc(10 * var(--max-fluid-ratio));
        margin: 0 calc(7 * var(--max-fluid-ratio));
    }

    .specialty-post_slide .swiper-button-next,
    .specialty-post_slide .swiper-button-prev {
        --inline-postion: -26;
        width: calc(56 * var(--max-fluid-ratio));
        height: calc(56 * var(--max-fluid-ratio));
        background-size: calc(12 * var(--max-fluid-ratio)) auto;
        box-shadow: 0px 1px calc(10 * var(--max-fluid-ratio)) rgba(0, 0, 0, 0.1);
        top: calc(50% - calc(38 * var(--max-fluid-ratio)));
    }

    .specialty-post_body {
        border-bottom-left-radius: calc(5 * var(--max-fluid-ratio));
        border-bottom-right-radius: calc(5 * var(--max-fluid-ratio));
        padding-top: calc(196 * var(--max-fluid-ratio));
        margin-top: calc(-189 * var(--max-fluid-ratio));
    }

    .specialty-post-section .specialty-post-section_inner {
        max-width: calc(960 * var(--max-fluid-ratio));
        padding: calc(60 * var(--max-fluid-ratio)) calc(8 * var(--max-fluid-ratio)) calc(60 * var(--max-fluid-ratio)) calc(7 * var(--max-fluid-ratio));
        grid-template-columns: calc(120 * var(--max-fluid-ratio)) 1fr;
        column-gap: calc(30 * var(--max-fluid-ratio));
    }

    .specialty-post-section:last-child {
        border-bottom-left-radius: calc(5 * var(--max-fluid-ratio));
        border-bottom-right-radius: calc(5 * var(--max-fluid-ratio));
    }
    .specialty-post-section .specialty-post-section_title {
        font-size: calc(20 * var(--max-fluid-ratio));
    }

    .specialty-post-section .specialty-post-section_title span {
        border-bottom-width: calc(4 * var(--max-fluid-ratio));
        padding-bottom: calc(14 * var(--max-fluid-ratio));
    }

    .specialty-post-section .specialty-post-section_text {
        font-size: calc(16 * var(--max-fluid-ratio));
        margin-top: calc(-4 * var(--max-fluid-ratio));
    }

    .specialty-post-section .profile-wrap {
        border-radius: calc(6 * var(--max-fluid-ratio));
        margin-top: calc(15 * var(--max-fluid-ratio));
        padding: calc(30 * var(--max-fluid-ratio)) calc(30 * var(--max-fluid-ratio)) calc(27 * var(--max-fluid-ratio));
    }

    .specialty-post-section .profile-wrap .profile {
        font-size: calc(16 * var(--max-fluid-ratio));
    }
    /* .specialty-post-section .profile-wrap .profile {
        --gap-size: calc(14 * var(--max-fluid-ratio));
        font-size: calc(16 * var(--max-fluid-ratio));
    }

    .specialty-post-section .profile-wrap .profile + .profile {
        margin-top: calc(10 * var(--max-fluid-ratio))
    }

    .specialty-post-section .profile-wrap .profile dt::after {
        height: calc(14 * var(--max-fluid-ratio));
    } */


    /* .specialty-post-section .biography-list {
        font-size: calc(16 * var(--max-fluid-ratio));
    }

    .specialty-post-section .biography-list .biography-list_item {
        column-gap: calc(25 * var(--max-fluid-ratio));
    }

    .specialty-post-section .biography-list .biography-list_item + .biography-list_item {
        margin-top: calc(10 * var(--max-fluid-ratio));
    }

    .specialty-post-section .achievements-list {
        font-size: calc(16 * var(--max-fluid-ratio));
    }

    .specialty-post-section .achievements-list + .achievements-list {
        margin-top: calc(26 * var(--max-fluid-ratio));
    }

    .specialty-post-section .achievements-list dd {
        margin-top: calc(6 * var(--max-fluid-ratio));
    } */

    .specialty-post-section.specialty-post-achievements .specialty-post-section_inner{
        padding-bottom: calc(52 * var(--max-fluid-ratio));
    }

    .specialty-post .btn-back {
        margin-top: calc(80 * var(--max-fluid-ratio));
    }    
        
}

@media screen and (max-width: 767px) {
    .specialty-archives {
        padding: calc(55 * var(--min-fluid-ratio)) 0 calc(120 * var(--min-fluid-ratio));
    }
      
    .specialty-archives_inner {
        max-width: none;
        width: calc(335 * var(--min-fluid-ratio));
    }
    
    .specialty-archives_head .specialty-archives_title,
    .search-result_head .search-result_title {
        font-size: calc(18 * var(--min-fluid-ratio));
        padding: calc(5.5 * var(--min-fluid-ratio)) calc(19 * var(--min-fluid-ratio));
        border-radius: calc(4 * var(--min-fluid-ratio));
    }
    
    .specialty-archives_head .specialty-archives_text,
    .search-result_head .search-result_text {
        --gap-size: calc(6 * var(--min-fluid-ratio));
        font-size: calc(14 * var(--min-fluid-ratio));
        margin-top: calc(15 * var(--min-fluid-ratio));
    }
    
    .specialty-archives_head .specialty-archives_text small {
        font-size: calc(12 * var(--min-fluid-ratio));
        margin-left: calc(0 * var(--min-fluid-ratio));
    }

    .search-result_head .search-result_text {
        --gap-size: calc(5 * var(--min-fluid-ratio));
    }
    
    .search-result_head .search-result_text span + span::before {
        width: calc(8 * var(--min-fluid-ratio));
    }    
    .specialty-list {
        --gap-size: calc(11 * var(--min-fluid-ratio));
        column-gap: 0;
        grid-template-columns: 1fr;
        margin-top: calc(55 * var(--min-fluid-ratio));
    }
    
    .specialty-card {
        display: block;
    }
    
    .specialty-card a {
        padding: calc(10 * var(--min-fluid-ratio));
    }
    
    .specialty-card a::before {
        inset: calc(5 * var(--min-fluid-ratio));
        border-radius: calc(7 * var(--min-fluid-ratio));
    }
      
    .specialty-card a::after {
        border-radius: calc(12 * var(--min-fluid-ratio));
    }
    
    .specialty-card_head {
        --gap-size: calc(5 * var(--min-fluid-ratio));
        --img-size: calc(130 * var(--min-fluid-ratio));
        padding: calc(0 * var(--min-fluid-ratio)) calc(0 * var(--min-fluid-ratio)) calc(9 * var(--min-fluid-ratio));
    }
    
    .specialty-card_img {
        border-width: calc(5 * var(--min-fluid-ratio));
    }
    
    .specialty-card_title {
        margin-top: calc(0 * var(--min-fluid-ratio));
    }
    
    .specialty-card_name {
        font-size: calc(18 * var(--min-fluid-ratio));
        line-height: calc(20 / 18);
    }
    
    .specialty-card_ruby {
        font-size: calc(10 * var(--min-fluid-ratio));
        margin-bottom: calc(5 * var(--min-fluid-ratio));
    }

    .specialty-card_post {
        font-size: calc(12 * var(--min-fluid-ratio));
        margin-top: calc(6 * var(--min-fluid-ratio));
    }

    .specialty-card_department {
        font-size: calc(12 * var(--min-fluid-ratio));
        margin-top: calc(3 * var(--min-fluid-ratio));
    }
    
    .specialty-card_body {
        min-height: auto;
        grid-template-columns: 1fr;
        padding: 0 calc(10 * var(--min-fluid-ratio)) calc(10 * var(--min-fluid-ratio));
        margin-top: 0;
        border-bottom-left-radius: calc(5 * var(--min-fluid-ratio));
        border-bottom-right-radius: calc(5 * var(--min-fluid-ratio));
        border-top: 1px solid var(--line-color2);
    }
    
    .specialty-card_body .specialty-card_info dt {
        font-size: calc(12 * var(--min-fluid-ratio));
        padding: 0 calc(5 * var(--min-fluid-ratio));
        margin-top: calc(10 * var(--min-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_info dd {
        font-size: calc(14 * var(--min-fluid-ratio));
        margin-top: calc(5 * var(--min-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_field {
        margin-top: calc(0 * var(--min-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_tags {
        padding: calc(4 * var(--min-fluid-ratio)) calc(14 * var(--min-fluid-ratio)) calc(13 * var(--min-fluid-ratio));
        width: calc(230 * var(--min-fluid-ratio));
        border-radius: calc(7 * var(--min-fluid-ratio));
        margin-top: calc(8 * var(--min-fluid-ratio));
    }
    
    .specialty-card_body .specialty-card_tags dd {
        font-size: calc(12 * var(--min-fluid-ratio));
        column-gap: calc(8 * var(--min-fluid-ratio));
        row-gap: calc(4 * var(--min-fluid-ratio));
    } 
    
    .specialty-card_icon {
        --icon-size: calc(46 * var(--min-fluid-ratio));
        right: calc(20 * var(--min-fluid-ratio));
        bottom: calc(20 * var(--min-fluid-ratio));
        box-shadow: 0px calc(1 * var(--min-fluid-ratio)) calc(10 * var(--min-fluid-ratio)) rgba(0, 0, 0, 0.1);
    }
    
    .specialty-card_icon img {
        width: calc(10 * var(--min-fluid-ratio));
    }
    
    .specialty-list + .pagination {
        margin-top: calc(45 * var(--min-fluid-ratio));
    }


/*------------------------------------------
  
    specialty-post / 講師詳細
  
------------------------------------------*/

    .specialty-post {
        padding: calc(55 * var(--min-fluid-ratio)) 0 calc(120 * var(--min-fluid-ratio));
    }
    
    .specialty-post_inner {
        --padding-inline: calc(15 * var(--min-fluid-ratio));
        max-width: none;
        width: calc(335 * var(--min-fluid-ratio));
        padding: calc(5 * var(--min-fluid-ratio));
    }

    .specialty-post_inner::before {
        inset: calc(5 * var(--min-fluid-ratio));
        border-radius: calc(7 * var(--min-fluid-ratio));
    }
    
    .specialty-post_inner::after {
        border-radius: calc(12 * var(--min-fluid-ratio));
    }

    .specialty-post_head {
        display: grid;
        grid-template-columns:1fr;
        column-gap: 0;
        align-items: center;
        border-top-left-radius:calc(5 * var(--min-fluid-ratio));
        border-top-right-radius: calc(5 * var(--min-fluid-ratio));
        border-bottom-width: 1px;
    }

    .specialty-post_head .specialty-post_img img {
        vertical-align: bottom;
        border-bottom: calc(5 * var(--min-fluid-ratio)) solid var(--line-color2);
        width: 100%;
    }

    .specialty-post_head .specialty-post_title {
        padding: calc(15 * var(--min-fluid-ratio)) var(--padding-inline) calc(16 * var(--min-fluid-ratio));
    }

    .specialty-post_head .specialty-post_name {
        font-size: calc(28 * var(--min-fluid-ratio));
        line-height: calc(30 / 28);
        margin-top: 0;
    }


    .specialty-post_head .specialty-post_post {
        font-size: calc(16 * var(--min-fluid-ratio));
        margin-top: calc(9 * var(--min-fluid-ratio));
    }

    .specialty-post_head .specialty-post_name:has(ruby) {
        margin-right: calc(10 * var(--min-fluid-ratio));
    }

    .specialty-post_head .specialty-post_department {
        font-size: calc(16 * var(--min-fluid-ratio));
        margin-top: calc(9 * var(--min-fluid-ratio));
        line-height: calc(22 / 16);
    }

    .specialty-post_status {
        grid-template-columns: 1fr;
        padding: calc(15 * var(--min-fluid-ratio)) 0 calc(8 * var(--min-fluid-ratio));
        column-gap: 0;
    }

    .specialty-post_status .specialty-post_info {
        padding: 0 var(--padding-inline) calc(13 * var(--min-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dl + dl{
        margin-top: calc(9 * var(--min-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dt {
        font-size: calc(12 * var(--min-fluid-ratio));
        padding: calc(2 * var(--min-fluid-ratio)) calc(5 * var(--min-fluid-ratio)) calc(3 * var(--min-fluid-ratio));
    }

    .specialty-post_status .specialty-post_info dd {
        font-size: calc(14 * var(--min-fluid-ratio));
        margin-top: calc(5 * var(--min-fluid-ratio));
        line-height: calc(22 / 14);
    }

    .specialty-post_status .specialty-post_info dd a {
        font-size: calc(14 * var(--min-fluid-ratio));
        margin-top: 0;
    }

    .specialty-post_status .specialty-post_info dd a .icon-blank {
        width: calc(14 * var(--min-fluid-ratio));
        margin-left: calc(2 * var(--min-fluid-ratio));
    }

    .specialty-post_status .specialty-post_tags {
        padding: calc(20 * var(--min-fluid-ratio)) var(--padding-inline) 0;
        border-top: 1px solid var(--line-color2);
    }

    .specialty-post_status .specialty-post_tags > div {
        --gap-size: calc(6 * var(--min-fluid-ratio));
    }


    .specialty-post_status .specialty-post_tags a {
        font-size: calc(14 * var(--min-fluid-ratio));
        padding: calc(3 * var(--min-fluid-ratio)) calc(10 * var(--min-fluid-ratio)) calc(5 * var(--min-fluid-ratio));
        border-radius: calc(4 * var(--min-fluid-ratio));
    }


    .specialty-post_status .specialty-post_tag2 {
        margin-top: calc(20 * var(--min-fluid-ratio));
    }

    .specialty-post_slide {
        margin-inline: auto;
        margin-top: calc(52 * var(--min-fluid-ratio));
    }
    .specialty-post_slide .gallery-swiper {
        overflow: visible;
        max-width: none;
        width: 100%;
    }

    .specialty-post_slide .swiper-slide {
        padding: 0 calc(15.5 * var(--min-fluid-ratio));
    }

    .specialty-post_slide .swiper-slide img {
        border-radius: calc(4 * var(--min-fluid-ratio));
    }

    .specialty-post_slide .swiper-pagination {
        margin-top: calc(12 * var(--min-fluid-ratio));
    }
    .specialty-post_slide .swiper-pagination-bullet {
        width: calc(8 * var(--min-fluid-ratio));
        height: calc(8 * var(--min-fluid-ratio));
        margin: 0 calc(4 * var(--min-fluid-ratio));
    }

    .specialty-post_slide .swiper-button-next,
    .specialty-post_slide .swiper-button-prev {
        --inline-postion: -10;
        width: calc(46 * var(--min-fluid-ratio));
        height: calc(46 * var(--min-fluid-ratio));
        background-size: calc(10 * var(--min-fluid-ratio)) auto;
        box-shadow: 0px 1px calc(10 * var(--min-fluid-ratio)) rgba(0, 0, 0, 0.1);
        top: calc(50% - calc(20 * var(--min-fluid-ratio)));
    }

    .specialty-post_slide .swiper-button-next {
        right: calc(var(--inline-postion) * var(--min-fluid-ratio));
    }

    .specialty-post_slide .swiper-button-prev {
        left: calc(var(--inline-postion) * var(--min-fluid-ratio));
    }

    .specialty-post_body {
        --padding-inline: calc(10.5 * var(--min-fluid-ratio));
        border-bottom-left-radius: calc(5 * var(--min-fluid-ratio));
        border-bottom-right-radius: calc(5 * var(--min-fluid-ratio));
        padding-top: calc(137 * var(--min-fluid-ratio));
        margin-top: calc(-110 * var(--min-fluid-ratio));
    }

    .specialty-post-section .specialty-post-section_inner {
        max-width: none;
        padding: calc(20 * var(--min-fluid-ratio)) var(--padding-inline) calc(18 * var(--min-fluid-ratio));
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: calc(25 * var(--min-fluid-ratio));
    }

    .specialty-post-section:last-child {
        border-bottom-left-radius:calc(5 * var(--min-fluid-ratio));
        border-bottom-right-radius: calc(5 * var(--min-fluid-ratio));
    }
    .specialty-post-section .specialty-post-section_title {
        font-size: calc(16 * var(--min-fluid-ratio));
    }

    .specialty-post-section .specialty-post-section_title span {
        border-bottom-width: calc(3 * var(--min-fluid-ratio));
        padding-bottom: calc(8 * var(--min-fluid-ratio));
    }

    .specialty-post-section .specialty-post-section_text {
        font-size: calc(14 * var(--min-fluid-ratio));
        line-height: calc(22 / 14);
        margin-top: 0;
    }

    .specialty-post-section .profile-wrap {
        width: calc(300 * var(--min-fluid-ratio));
        border-radius: calc(6 * var(--min-fluid-ratio));
        margin-top: calc(14 * var(--min-fluid-ratio));
        padding: calc(12 * var(--min-fluid-ratio)) calc(12.5 * var(--min-fluid-ratio)) calc(16 * var(--min-fluid-ratio));
    }

    .specialty-post-section .profile-wrap .profile {
        font-size: calc(14 * var(--min-fluid-ratio));
    }
    /* .specialty-post-section .profile-wrap .profile {
        --gap-size: calc(6 * var(--min-fluid-ratio));
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: var(--gap-size);
        font-size: calc(14 * var(--min-fluid-ratio));
    }

    .specialty-post-section .profile-wrap .profile + .profile {
        margin-top: calc(13.5 * var(--min-fluid-ratio));
        padding-top: calc(13.5 * var(--min-fluid-ratio));
        border-top: 1px solid var(--line-color2);
    }

    .specialty-post-section .profile-wrap .profile dt::after {
        content: none;
    }

    .specialty-post-section .profile-wrap .profile dd span {
        display: block;
        
    } */

    /* .specialty-post-section .biography-list {
        font-size: calc(14 * var(--min-fluid-ratio));
        line-height: calc(22/ 14);
        padding: 0;
    }

    .specialty-post-section .biography-list .biography-list_item {
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: calc(0 * var(--min-fluid-ratio));
    }

    .specialty-post-section .biography-list .biography-list_item + .biography-list_item {
        margin-top: calc(9 * var(--min-fluid-ratio));
        padding-top: calc(10 * var(--min-fluid-ratio));
        border-top: 1px solid var(--line-color2);
    }

    .specialty-post-section .achievements-list {
        font-size: calc(14 * var(--min-fluid-ratio));
    }

    .specialty-post-section .achievements-list + .achievements-list {
        margin-top: calc(9 * var(--min-fluid-ratio));
        padding-top: calc(10 * var(--min-fluid-ratio));
        border-top: 1px solid var(--line-color2);
    }

    .specialty-post-section .achievements-list dd {
        line-height: calc(22 / 14);
        margin-top: calc(1 * var(--min-fluid-ratio));
    } */

    .specialty-post-section.specialty-post-achievements .specialty-post-section_inner{
        padding-bottom: calc(45 * var(--min-fluid-ratio));
    }

    .specialty-post .btn-back {
        margin-top: calc(60 * var(--min-fluid-ratio));
        width: calc(335 * var(--min-fluid-ratio));
    }
        
    
}

/* swiper */
/**
 * Swiper 11.1.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 30, 2024
 */
 :host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}