@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Color+Emoji&display=swap');
.news-list__top ul {
    display: flex;
    flex-wrap: wrap;
}
.news-list__top li {
    width: calc((100% - min(5vw, 50px))/ 3);
    margin-right: min(2.5vw, 25px);
    margin-top: min(3vw, 30px);
}
.news-list__top li:nth-child(3n) {
    margin-right: 0
}
.news-list__top figure img {
    border-radius: 8px;
    border: 2px solid #0c2e6e;
    width: 100%;
}
.news-list__top li a .news__info {
    transition-duration: 0.3s;
}
.news-list__top li a:hover .news__info {
    text-decoration: underline;
    color: #0f6cb6;
}
.news-list__top li .clamp {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    line-clamp: 4;
    -webkit-line-clamp: 4;
}
.news__info {
    color: #333;
    margin-top: min(.5vw, 5px);
    font-size: min(1.6vw, 16px);
    line-height: 1.6;
}
.news__date {
    color: #0c2e6e;
    font-size: min(1.4vw, 14px);
    margin-top: min(1.5vw, 15px);
}
.news__date span.category {
    display: inline-block;
    margin-left: min(.5vw, 5px);
    background: #FFF;
    border-radius: 100px;
    padding: 0 min(1.5vw, 15px);
    font-weight: 700;
}
@media screen and (max-width:768px) {
    .news-list {
        width: 94%;
    }
    .news-list__top ul {
        width: 100%;
        max-width: auto;
        margin: 0 auto;
        display: block;
        padding-top: 0;
    }
    .news-list__top li {
        width: 100%;
        margin-top: 6.67vw;
    }
    .news-list__top li:first-child {
        margin-top: 4vw;
    }
    .news-list__top li a {
        display: block;
    }
    .news-list__top li a:hover .news__info {
        text-decoration: none;
        color: #333;
    }
    .news-item figure img {
        border-radius: 2.13vw;
        border: 0.53vw solid #0c2e6e;
    }
    .news__date {
        font-size: 4.27vw;
        margin-top: 3.33vw;
    }
    .news__date span.category {
        margin-left: 1.33vw;
        font-size: 4vw;
        padding: 0 4vw;
    }
    .news__info {
        margin-top: 1.33vw;
        font-size: 4.27vw;
    }
}
.pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-top: min(6vw, 60px);
}
.pagination>*+* {
    margin-left: 10px;
}
.pagination li {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 35px;
    height: 35px;
    font-size: 20px;
    font-weight: bold;
    transition: all 0.15s linear;
}
.pagination li a {
    color: #0c2e6e;
    cursor: pointer;
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}
.pagination-icon {
    width: 25px;
}
.pagination-next {
    transform: scale(-1, 1);
}
.pagination li.isActive {
    pointer-events: none;
    color: #0c2e6e;
    text-decoration: underline;
    cursor: default;
}
.pagination li:not(.isActive):hover {
    color: #0c2e6e;
    text-decoration: underline;
}
@media screen and (max-width:768px) {
    .pagination {
        margin-top: 16vw;
    }
}
.mt-10 {
    margin-top: 10px;
}
.mt-20 {
    margin-top: 20px;
}
.mt-30 {
    margin-top: 30px;
}
.mt-40 {
    margin-top: 40px;
}
.mt-50 {
    margin-top: 50px;
}
.mt-60 {
    margin-top: 60px;
}
.mt-80 {
    margin-top: 80px;
}
.mt-100 {
    margin-top: 100px;
}
.line-bottom {
    border-bottom: 1px solid #333;
    padding-bottom: .3em;
}
.img-border{
      border: 1px solid #333;
}
.line-bottom__red {
    border-bottom: 1px solid #e60816;
    padding-bottom: .3em;
}
.img-border__red{
      border: 1px solid #e60816;
}
.line-bottom__lightblue {
    border-bottom: 1px solid #0f6cb6;
    padding-bottom: .3em;
}
.img-border__lightblue{
      border: 1px solid #0f6cb6;
}
.line-bottom__blue {
    border-bottom: 1px solid #0c2e6e;
    padding-bottom: .3em;
}
.img-border__blue{
      border: 1px solid #0c2e6e;
}
.line-bottom__green {
    border-bottom: 1px solid #529b04;
    padding-bottom: .3em;
}
.img-border__green{
      border: 1px solid #529b04;
}
.line-bottom__orange {
    border-bottom: 1px solid #fa7c00;
    padding-bottom: .3em;
}
.img-border__orange{
      border: 1px solid #fa7c00;
}
.line-bottom__purple {
    border-bottom: 1px solid #6b23a8;
    padding-bottom: .3em;
}
.img-border__purple{
      border: 1px solid #6b23a8;
}
/*------------------------------------
  詳細
-------------------------------------*/
.detail {
    border-radius: 40px;
    border: 4px solid #fde333;
    box-shadow: 0 0 0 1px rgba(240, 148, 47, .5);
    padding: 60px 80px;
    background: #FFF;
    margin-top: 30px;
    color: #333;
    line-height: 1.7;
    font-family: YakuHanJP, "M PLUS 1p", "Noto Color Emoji", sans-serif;
}
.detail .date {
    font-size: 16px;
}
.detail .date span.category {
    margin-left: 15px;
    background: #e6eaf0;
    font-weight: 700;
    padding: 2px 20px;
    border-radius: 100px;
}
.detail .title {
    font-size: 34px;
    margin-top: 20px;
    padding-bottom: 10px;
    line-height: 1.6;
    letter-spacing: -.02em;
}
.detail .text-l {
    font-size: 24px;
}
.detail a {
    color: #0f6cb6;
    text-decoration: underline;
    word-break: break-all;
}
.detail .link a {
    text-decoration: none;
    color: #0c2e6e;
}
.detail a:hover {
    opacity: .6;
}
.detail p {
    font-size: 17px;
    line-height: 1.9;
}
.detail .detail-img {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.detail .detail-img2 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.detail .detail-img2 img {
    width: 50%;
}
.detail .detail-img3 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.detail .detail-img3 img {
    width: 33.333333333333333333%;
}
.news-detail .link {
    width: min(36vw, 360px);
    margin: min(2.5vw, 25px) auto 0 auto;
}
.news-detail .link a {
    width: 100%;
    text-align: left;
}
.detail .line {
    width: 550px;
    margin: min(6vw, 60px) auto;
    border-bottom: 2px solid #b6c0d3;
}
.link-detail {
    text-align: center;
    margin-top: min(4vw, 40px);
}
.list dl {
    display: flex;
    flex-wrap: wrap;
    padding: min(1.2vw, 10px) 0;
    border-bottom: 1px solid #88bae4;
    font-size: 17px;
    line-height: 1.8;
}
.list dl:first-child {
    border-top: 1px solid #88bae4;
}
.list dt {
    width: 16%;
    margin-right: 4%;
    font-weight: 700;
}
.list dd {
    width: 80%;
    font-weight: 700;
}
@media screen and (max-width:1080px) {
    .detail {
        padding: 40px;
    }
}
@media screen and (max-width:768px) {
    .detail {
        border-radius: 8vw;
        border: 0.53 solid #fde333;
        box-shadow: 0 0 0 0.27vw rgba(240, 148, 47, .5);
        padding: 8vw 5.33vw 10.67vw 5.33vw;
        margin-top: 30px;
        line-height: 1.7;
    }
    .detail .date {
        font-size: 4.27vw;
    }
    .detail .date span.category {
        margin-left: 2vw;
        padding: 0.67vw 4vw;
        font-size: 3.73vw;
    }
    .detail .title {
        font-size: 6vw;
        margin-top:2.67vw;
        padding-bottom: 2.67vw;
        line-height: 1.5;
    }
    .detail .text-l {
        font-size: 5.07vw;
    }
    .detail p {
        font-size: 4.27vw;
        line-height: 1.7;
    }
    .detail .detail-img {
        width: 100%;
    }
    .detail .detail-img2,.detail .detail-img3 {
        width: 100%;
        display: block;
    }
    .detail .detail-img2 img,.detail .detail-img3 img  {
        width: 100%;
    }
    .news-detail .link {
        width: 100%;
        margin: 6.67vw auto 0 auto;
    }
    .news-detail .link a {
        width: 100%;
        text-align: left;
    }
    .detail .line {
        width: 100%;
        margin: 13.33vw auto;
    }
    .link-detail {
        margin-top: 8vw;
    }
    .list dl {
        padding: 2.67vw 0;
        font-size: 4.27vw;
        line-height: 1.7;
    }
    .list dt {
        width: 100%;
        padding-bottom: 0.67vw;
        margin-right: 0;
    }
    .list dd {
        width: 100%;
    }
}
.detail-experience {
    padding-top: 30px;
}
@media screen and (max-width:768px) {
    .detail-experience {
        padding-top: 2.67vw;
    }
}