@charset "utf-8";

.secCmnHero {
    background-image: url(../img/blog/imgHeroBack.jpg);
    overflow: hidden;
}

.secCmnHero.details {
    background-image: url(../img/blog/imgHeroBack_details.jpg);
}
#header {
    overflow: hidden;
}
#pnkz {
    overflow: hidden;
}

#container {
    overflow: visible;
}
.secCmnNextLoad {
    margin: 60px auto 0;
}

@media only screen and (min-width:768px){
    .secCmnNextLoad .Nextbtn:hover{
        background-color: var(--Colorwhite);
        color: var(--backPlanColor);
        border: 1px solid var(--backPlanColor);
    }
    .secCmnNextLoad .Nextbtn:hover .btnIcon{
        background-color: var(--backPlanColor);
    }
    .secCmnNextLoad .Nextbtn:hover .btnIcon::before,
    .secCmnNextLoad .Nextbtn:hover .btnIcon::after{
        background-color: var(--Colorwhite);
    }
}

@media only screen and (max-width:767px) {
    .secCmnHero {
        background-image: url(../img/blog/imgHeroBack_sp.jpg);
    }

    .secCmnHero.details {
        background-image: url(../img/blog/imgHeroBack_details_sp.jpg);
    }
    .secCmnNextLoad {
        margin: 30px auto 0;
    }
}

/* secBlog */
.secBlog {
    display: flex;
    margin-top: 0px;
    position: relative;
    padding-bottom: 70px;
}

@media only screen and (max-width:767px) {
    .secBlog {
        display: block;
        margin-top: 30px;
        padding-bottom: 0px;
    }
}

.secList {
    padding-top: 50px;
    flex: 1;
    overflow: hidden;
    margin-left: 0;
}
.secList .listInbox{
    position: relative;
    padding-bottom: 50px;
}
.secList .listInbox::after{
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(131, 142, 142, 0.25);
    bottom: 0;
}
.secList .Linkslist{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
}
.secList .Linkslist .item{
    width: calc((100% - 30px) / 2);
}
.secList .Linkslist .linkitem{
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border: 1px solid #2a2e33;
    color: var(--backPlanColor);
    min-width: 100%;
    text-align: center;
    padding: 10px 15px;
    max-width: 100%;
    border-radius: 50px;
    background-color: var(--Colorwhite);
    min-height: 70px;
    transition: 0.5s;
}
.secList .Linkslist .linkitem.active {
    background-color: var(--backPlanColor);
    color: #fff;
}
.secList .Linkslist .linktxt {
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_16);
}

.secList .boxAll {
    width: 100%;
    background: var(--backColor_Plan_gray);
    display: flex;
    align-items: center;
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_1);
    padding: 28px 30px;  
    margin-top: 44px;
}


.secList .listInfo .item {
    padding: 40px 0;
    position: relative;
}

.secList .listInfo .item:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(131, 142, 142, 0.25);
    bottom: 0;
}

.secList .listInfo .link {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 100%;
    text-decoration: none;
    color: var(--textColor);
}

.secList .listInfo .hoverZoom {
    overflow: visible;
}

.secList .listInfo .link::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    top: calc(50% - 10px);
    right: 0;
    border-radius: 50%;
    border: 1px solid #c7a57b;
    background: #fff;
}

.secList .listInfo .link::after {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: calc(50% - 3px);
    right: 8px;
    margin: auto;
    transform: rotate(45deg);
}

.lazyloaded .secList .link::before {
    background-color: #c7a57b;
}

.secList .listInfo .IconNews {
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background-color: var(--activeColor);
    color: var(--Colorwhite);
    text-align: center;
    position: absolute;
    z-index: 3;
    font-weight: bold;
    top: -20px;
    left: 20px;
    box-shadow: 0 0 5px var(--Colorblack_25);
}

.secList .listInfo .Newsicontxt {
    font-size: var(--pcFontSize10);
    line-height: var(--pcLineHeight10_2);
}

.secList .listInfo .imgbox {
    width: 210px;
    height: 0;
    padding-top: 13.107%;
    overflow: hidden;
    flex-shrink: 0;
    border-radius: 4px;
}

.secList .listInfo .txtbox {
    padding: 0 45px 0 40px;
    width: calc(100% - 150px);
}

.secList .listInfo .tit {
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_15);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: 42px;
    letter-spacing: var(--pcLetterSpacing15_16);
}

.secList .listInfo .txt {
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight12_2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--subtitileColor);
    letter-spacing: 1px;
}

.secList .listInfo .tit+.txt {
    margin-top: 7px;
}

@media only screen and (max-width:767px) {
    .secList {
        padding-top: 10px;
        margin: 0 auto;
    }
    .secList .Linkslist {
        gap: 5px;
    }
    .secList .listInbox {
        width: 100%;
        padding-bottom: 25px;
    }
    .secList .listInfo .item {
        padding: 24px 0;
    }
    .secList .Linkslist .linktxt {
        font-size: var(--spFontSize13);
    }
    .secList .Linkslist .item {
        width: calc((100% - 5px) / 2);
    }
    .secList .Linkslist .linkitem {
        padding: 0;
        border-radius: 30px;
        min-height: 50px;
    }
    .secList .boxAll {
        display: none;
    }
    .secList .listInfo .imgbox {
        width: 31.345%;
        height: 0;
        padding-top: 20.3%;
        border-radius: 0px;
    }
    .secList .listInfo .tit {
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_2);
        max-height: 48px;
        letter-spacing: 0;
    }
    .secList .listInfo .txtbox {
        padding: 0 34px 0 22px;
        width: 68.655%;
    } 
    .secList .listInfo .txt {
        font-size: var(--spFontSize10);
        letter-spacing: var(--spLetterSpacing10_1);
        line-height: var(--spLineHeight10_15);
    }
    .secList .listInfo .IconNews {
        top: -15px;
        right: unset;
        left: 5px;
        width: 30px;
        height: 30px;
    }
    .secList .listInfo .Newsicontxt {
        font-size: var(--spFontSize9);
    }
}

/* boxRight */
.boxRight {
    width: 250px;
    padding-top: 170px;
    /* margin-top: -20px; */
    /* height: fit-content;
    top: 0;
    left: 0;
    position: sticky; */
    position: static;
}
.secBlogDetails .boxRight {
    padding-bottom: 0;
}
.secBlogDetails.noLink .boxRight {
    padding-bottom: 0;
}
.boxRight .secArchive:nth-child(n+2){
    margin-top: 44px;
}
.secArchive .archiveTitle{
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    height: 50px;
    padding: 20px 10px 20px 20px;
    background: var(--backPlanColor);
    color: #fff;
}
.secArchive .archiveTitle .titEn{
    font-size: 18px;
}
.isTablet .secArchive .archiveTitle .titEn{
    font-size: 10px;
}
.isDesktopIpad .secArchive .archiveTitle .titEn{
    font-size: 10px;
}
.secArchive .archiveTitle .titJp{
    font-size: 12px;
    letter-spacing: var(--pcLetterSpacing12_16);
}
.isTablet .secArchive .archiveTitle .titJp{
    font-size: 10px;
}
.isDesktopIpad .secArchive .archiveTitle .titJp{
    font-size: 10px;
}
.secArchive .archiveContent .titYear{
    position: relative;
    font-size: 14px;
    padding: 18px 35px 15px;
    letter-spacing: var(--pcLetterSpacing14_16);
}
.secArchive .archiveContent .titYear:before{
    content: "";
    position: absolute;
    left: 20px;
    top: calc(50% - 0.5px);
    width: 5px;
    background: #2a2e33;
    height: 4px;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    z-index: 5;
    margin: 0;
}
.secArchive .archiveContent .titYear.on::before {
    transform: rotate(180deg);
}

.secArchive .yearToggle {
    cursor: pointer;
    display: flex;
    align-Items: center;
    position: relative;
}
.secArchive .yearToggle::after{
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(131, 142, 142, 0.25);
    bottom: 0;
}

.secArchive .hiddenContent {
    display: none;
}
.secArchive .hiddenContent .ListItem {
    position: relative;
}
.secArchive .hiddenContent .ListItem::after{
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(131, 142, 142, 0.25);
    bottom: 0;
}
.secArchive .hiddenContent .titLink {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--textColor);
    font-size: var(--pcFontSize13);
    padding: 16.5px 25px 16.5px 35px;
    text-decoration: none;
}

/* ranking */
.secArchive .rankingContent {
    margin-top: 18px;
}
.secArchive .rankingContent .listItem:nth-child(n+2){
    margin-top: 20px;
}
.secArchive .rankingContent .link{
    display: flex;
    color: var(--textColor);
    text-decoration: none;
    align-items: center;
}
.secArchive .rankingContent .imgbox{
    flex-shrink: 0;
    width: 112px;
    height: 0;
    padding-top: 28.8%;
    margin-right: 10px;
    border-radius: 4px;
    overflow: hidden;
    position: relative;
}
.secArchive .rankingContent .tit{
    font-size: var(--pcFontSize12);
    letter-spacing: var(--spLetterSpacing12_16);
    line-height: var(--pcLineHeight12_192);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    max-height: 70px;
}
.secArchive .rankingContent .IconNum{
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
    z-index: 2;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}
.secArchive .rankingContent .num{
    font-size: var(--pcFontSize12);
    color: var(--Colorwhite);
    font-weight: bold;
}
/* .secArchive.boxStaff{
    display: none!important;
} */

@media only screen and (max-width:767px) {
    .boxRight {
        width: 100%;
        padding: 30px 0;
        margin-top: 50px;
        gap: 10px;
        position: static;
        background: var(--backColor_Plan_gray);
        margin-bottom: 70px;
    }
    .secBlogDetails .boxRight {
        padding: 30px 0;
    }
    .secArchive .archiveTitle .titEn {
        font-size: 15px;
    }
    .secArchive .archiveTitle .titJp {
        font-size: 10px;
    }
    .secArchive .archiveTitle {
        width: 78.67%;
        height: 40px;
        height: 40px;
        padding: 15px;
        margin: 0 auto;
    }
    .secArchive .yearToggle {
        cursor: pointer;
        display: flex;
        align-Items: center;
        position: relative;
        width: 78.67%;
        margin: 0 auto;
    }
    .secArchive .hiddenContent{
        width: 78.67%;
        margin: 0 auto;
    }
    .secArchive .archiveContent .titYear {
        font-size: 13px;
        padding: 14px 15px 14px;
    }
    .secArchive .archiveContent .titYear:before {
        left: 0px;
    }
    /* ranking */
    .secArchive .rankingContent {
        width: 78.67%;
        margin: 20px auto;
    }
    .secArchive .rankingContent .imgbox {
        width: 35.595%;
        padding-top: 23.055%;
        margin-right: 20px;
    }
    .secArchive .rankingContent .listItem:nth-child(n+2) {
        margin-top: 10px;
    }
    .boxRight .secArchive:nth-child(n+2) {
        margin-top: 30px;
    }
    .secArchive .hiddenContent .titLink {
        padding: 12px 20px;
    }
    .secBlogDetails.noLink .boxRight {
        padding: 30px 0;
    }
}

/*==============================
    詳細
==============================*/
.secBlogDetails{
    margin-top: 43px;
    display: flex;
    margin-top: 0px;
    position: relative;
}
.secBlogDetails .txt{
    font-size: var(--pcFontSize15);
    line-height: var(--pcLineHeight15_2);
    color: var(--subtitileColor);
    letter-spacing: var(--pcLetterSpacing15_2);
}
.secBlogDetails .titTop{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_15);
    padding: 15px 0 33px;
    letter-spacing: var(--pcLetterSpacing28_2);
    position: relative;
}
.secBlogDetails .titTop:before{
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(131, 142, 142, 0.25);
    bottom: 0;
}
.secBlogDetails .secInner{
    margin: 30px auto;
}

@media only screen and (max-width:767px) {
    .secBlogDetails {
        margin-top: 34px;
        display: block;
    }
    .secBlogDetails .txt {
        font-size: var(--spFontSize12);
    }
    .secBlogDetails .secInner {
        margin: 20px auto;
    }
    .secBlogDetails .titTop {
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_175);
        padding: 5px 0 20px;
        letter-spacing: 0;
    }
}

/* 下部ページャー */
.secDetailsPager {
    position: relative;
    margin-top: 94px;
    padding-top: 61px;
    padding-bottom: 156px;
}
.noLink .secDetailsPager {
    padding-bottom: 50px;
}

.secDetailsPager::before {
    content: '';
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: rgba(131, 142, 142, 0.25);
    top: 0;
}
.secDetailsPager .pagerCover {
    position: relative;
}
.secDetailsPager .deyBox .tit {
    font-size: var(--pcFontSize13);
    line-height: var(--pcLineHeight13_185);
    letter-spacing: var(--pcLetterSpacing13_1);
    margin: 5px 0 8px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-height: 49px;
}
.secDetailsPager .deyBox .txt {
    font-size: var(--pcFontSize12);
    line-height: var(--pcLineHeight15_2);
    color: var(--subtitileColor);
    letter-spacing: var(--pcLetterSpacing12_1);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.secDetailsPager .btnNext .deyBox .tit {
    text-align: right;
}
.secDetailsPager .btnNext .deyBox .txt {
    text-align: right;
}
.secDetailsPager .boxBtnPager {
    display: flex;
}
.secDetailsPager .boxBtnPrev, 
.secDetailsPager .boxBtnNext {
    width: 45%;
}
.secDetailsPager .btnPrev,
.secDetailsPager .btnNext {
    display: flex;
    align-items: center;
    text-decoration: none;
    position: relative;
    padding-bottom: 56px;
    color: var(--textColor);
    overflow: visible;
}
.secDetailsPager .btnNext {
    flex-direction: row-reverse;
}
.secDetailsPager .btnPrev::before, 
.secDetailsPager .btnNext::before {
    content: "";
    position: absolute;
    width: 35px;
    height: 35px;
    bottom: -10px;
    border-radius: 50%;
    border: 1px solid #222222;
    background: #fff;
}

.secDetailsPager .btnPrev.lazyload::before, 
.secDetailsPager .btnNext.lazyload::before {
    background: url(../img/common/imgMoreArrow.png) center center no-repeat var(--MorebackColor);
    background-size: 12px auto;
    transition: 0.3s ease;
}
/* ホバーしたときボーダーなくす */
.secDetailsPager .boxBtnPrev:hover .btnPrev::before, 
.secDetailsPager .boxBtnNext:hover .btnNext::before {
    border: none;
}
/* ホバーしたとき色変わる */
.secDetailsPager .boxBtnPrev:hover .btnPrev.lazyload:hover::before, 
.secDetailsPager .boxBtnNext:hover .btnNext.lazyload::before {
    background: url(../img/common/imgMoreArrowBlack.png) center center no-repeat var(--activeColor);
    background-size: 12px auto;
}
.secDetailsPager .btnPrev::before {
    left: 0;
    transform: rotate(180deg);
}
.secDetailsPager .img {
    padding-top: 68.1%;
}
.secDetailsPager .txtBox {
    padding: 0px 0 0 30px;
    width: calc(100% - 210px);
}
.secDetailsPager .btnNext .txtBox {
    padding: 0px 30px 0 0px;
}
.secDetailsPager .iconPrev {
    position: absolute;
    color: #222;
    font-size: 14px;
    font-weight: bold;
    bottom: 0px;
}
.secDetailsPager .btnPrev .iconPrev {
    left: 43px;
    padding-left: 0px;
}
.secDetailsPager .btnNext .iconPrev {
    right: 43px;
    padding-left: 0px;
}
.secDetailsPager .boxBtnNext {
    margin: 0 0 0 auto;
}
.secDetailsPager .secCmnBack {
    position: absolute;
    /* top: calc(50% - 54px); */
    left: calc(50% - 127px);
    margin-top: 0px;
    bottom: -135px;
}
.noLink .secDetailsPager .secCmnBack {
    bottom: -50px;
}
.secDetailsPager .boxBtnBox .imgCover {
    width: 210px;
    height: 0;
    padding-top: 64.29%;
    overflow: hidden;
    flex-shrink: 0;
    border-radius: 4px;
}

@media only screen and (max-width:767px) {
    .secDetailsPager .secCmnBack {
        position: static;
    }
    .secDetailsPager .boxBtnPrev, 
    .secDetailsPager .boxBtnNext {
        width: 50%;
        padding: 0px 3.735% 36px 0;
        position: relative;
    }
    .secDetailsPager .boxBtnNext {
        padding: 0px 0 36px 3.735%;
    }
    .secDetailsPager .btnPrev, 
    .secDetailsPager .btnNext {
        display: block;
        padding-bottom: 0;
    }
    .secDetailsPager .boxBtnPrev:has(+ .boxBtnNext)::after {
        content: '';
        position: absolute;
        content: '';
        width: 1px;
        height: 100%;
        background: rgba(131, 142, 142, 0.25);
        right: 0;
        top: 0;
    }
    .secDetailsPager .boxBtnBox .imgCover {
        width: 100%;
        height: 0;
        padding-top: 64.29%;
        overflow: hidden;
        flex-shrink: 0;
        border-radius: 0;
    }
    .secDetailsPager .txtBox {
        padding: 0;
        width: 100%;
    }
    .secDetailsPager .deyBox .tit {
        font-size: var(--pcFontSize12);
        line-height: var( --spLineHeight12_167);
        letter-spacing: var(--spLetterSpacing12_16);
        margin: 8px 0 8px;
        max-height: 49px;
    }
    .secDetailsPager .deyBox .txt {
        letter-spacing: var(--pcLetterSpacing12_1);
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2; /*表示マックスの行*/
        overflow: hidden;
        max-height: 40px;/*任意の値*/
        white-space: wrap;
    }
    .secDetailsPager .btnNext .txtBox {
        padding: 0;
    }
    .secDetailsPager .btnPrev .txtBox {
        padding: 0;
    }
    .secDetailsPager .deyBox .txt {
        font-size: var(--spFontSize10);
        letter-spacing: var(--spLetterSpacing10_1);
    }
    .secDetailsPager .btnNext .deyBox .txt {
        text-align: left;
    }
    .secDetailsPager .btnNext .deyBox .tit {
        text-align: left;
    }
    .secDetailsPager .iconPrev {
        font-size: 13px;
    }
    .secDetailsPager .btnPrev.lazyload::before, 
    .secDetailsPager .btnNext.lazyload::before {
        background-size: 9px auto;
    }
    .secDetailsPager .boxBtnPrev:hover .btnPrev.lazyload:hover::before, 
    .secDetailsPager .boxBtnNext:hover .btnNext.lazyload::before {
        background-size: 9px auto;
    }
    .secDetailsPager .btnNext.lazyload::before {
        right: 0;
    }
    .secDetailsPager {
        margin-top: 44px;
        padding-top: 21px;
        padding-bottom: 0;
    }
    .noLink .secDetailsPager {
        padding-bottom: 0;
    }
    .secDetailsPager .btnPrev::before, 
    .secDetailsPager .btnNext::before {
        bottom: -34px;
        width: 21px;
        height: 21px;
    }
    .secDetailsPager .btnPrev .iconPrev {
        left: 32px;
        padding-left: 0px;
        bottom: -30px;
    }
    .secDetailsPager .btnNext .iconPrev {
        right: 32px;
        padding-left: 0px;
        bottom: -30px;
    }
    .secDetailsPager .btnCover {
        margin-top: 30px;
    }
    .secDetailsPager .pagerCover {
        min-height: auto;
    }
}
#footer {
    margin-top: 130px;
}
@media only screen and (max-width:767px) {
    #footer {
        margin-top: 0;
    }
}