@charset "UTF-8";

/* splide */
.splide__slide img {
    height: auto;
    width: 100%;
}

.splide__pagination button {
    width: min(var(--vw8), 12px);
    height: min(var(--vw8), 12px);
    border-radius: 100px;
    background: #ccc;
}

.splide__pagination {
    gap: min(var(--vw12), 20px);
}

.splide__pagination .is-active {
    background: var(--navy);
}

/* slider-main */
.slider-main {
    background: url(../img/main-slide-fixed-bg.svg) no-repeat center left / contain;
}

.slider-main .splide__track {
    min-height: 124px;
    z-index: -1;
}

.slider-main .splide__list {
    min-height: 124px;
}

.slider-main .splide__slide {
    position: relative;
}

.slider-main .splide__slide img {
    height: 100%;
    object-fit: cover;
}

.slider-main .splide__slide .sub-tx {
    right: 12px;
    bottom: min(var(--vw8), 20px);
    font-size: min(var(--vw8), 12px);
}

.slider-main-pagination {
    width: 100%;
    position: absolute;
    bottom: min(var(--vw8), 20px);
}

/*  */
.slider-main-title {
    height: 100%;
    text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5);
    line-height: 1.3;
    font-size: min(var(--vw18), 36px);
}

.page-english .slider-main-title {
    font-size: min(var(--vw14), 26px);
}

/* -------------------------------- */
/* front-greeting */
/* -------------------------------- */
.front-greeting-header-inner {
    height: 100%;
}

.front-greeting-header {
    height: min(calc(150 / 375 * 100vw), 350px);
    background: url(../img/bg-img-01.jpg) no-repeat center center / cover;
}

.front-greeting-title {
    height: 100%;
    text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5);
    line-height: 1.3;
    font-size: min(var(--vw26), 36px);
}

.front-greeting-source {
    right: 0;
    bottom: min(var(--vw5), 10px);
    font-size: min(var(--vw10), 12px);
}

/* -------------------------------- */
/* front-service-list */
/* -------------------------------- */
.front-service-list .item img {
    opacity: .5;
}

.front-service-list .item p {
    width: 100%;
    background: rgb(1 62 146 / .8);
    padding: min(var(--vw15), 25px) min(var(--vw10), 15px);
    bottom: 0;
    font-size: clamp(var(--rem18), var(--vw20), var(--rem24));
}

.front-service-list .item p .tx {
    margin: 0 auto;
}

/* -------------------------------- */
/* common-notice-list */
/* -------------------------------- */
.common-notice-list {
    gap: 15px 0;
}

.common-notice-list .item {
    border-bottom: 1px solid #CECECE;
    padding: 0 0 15px;
}

.common-notice-list .item-inner {
    gap: 0 min(var(--vw30), 30px);
}

.common-notice-list .item-meta {
    flex-shrink: 0;
}

/* -------------------------------- */
/* common-magazine-list */
/* -------------------------------- */
.common-magazine-list {
    gap: min(var(--vw15), 30px) min(var(--vw30), 110px);
}

.common-magazine-list .item {
    max-width: 210px;
    height: 100%;
    margin: auto;
    border-bottom: 1px solid #CECECE;
    padding: 0 0 15px;
}

.common-magazine-list .img img {
    height: auto;
}

.common-magazine-list .heading {
    margin: 10px auto 0;
}

.magazine-backnumber .common-magazine-list .item {
    border: none;
}

/* single */
.magazine-single-body {
    gap: min(var(--vw40), 50px);
}

.magazine-single-body .magazine-newest {
    margin: 0 auto 10px;
}

.magazine-single-body .img {
    width: min(90%, 300px);
    margin: 0 auto;
}

.magazine-single-body .img img {
    height: auto;
}

.magazine-single-body .content {
    width: 100%;
}

/* -------------------------------- */
/* block-media-attachment-custom */
/* -------------------------------- */
.attached-file-item {
    width: fit-content;
    border-radius: 5px;
    border: 2px solid var(--navy);
}

.attached-file-item a {
    padding: 10px 20px;
    text-decoration: none;
    color: inherit;
}

.attached-file-item-solo {}

.attached-file-item-inner {
    gap: min(var(--vw20), 56px);
}

.attached-file-item-inner .file-icon {
    flex-shrink: 0;
}