charset 'utf-8';

.font-small{
    font-size:10px;
}
.font-small_m{
    font-size:18px;
}
.lh_small{
    line-height:1.5rem;
}
.txt_l{
    font-size:18px;
}
.txt_m{
    font-size:16px !important;
}
.txt_ms{
    font-size:13px !important;
}
.clr_wred{
    color:#ad436c;
}
.clr_wred_s{
    color:#ad436c;
}
.clr_blue{
    color:#0070bd;
}
.clr_white{
    color:#FFF !important;
}
.clr_black{
    color:#333 !important;
}
.bg_wred{
    background-color:#ad436c !important;
}
.bg_blue{
    background-color:#0070bd !important;
}
.bg_white{
    background-color:#FFF;
}
.no-border{
    border:0 !important;
}
.border_blue{
    border-color:#0070bd !important ;
}
.border_wred{
    border-color:#bd638c !important ;
}
.border_grey{
    border-color:#DDD !important ;
}
.border_black{
    border-color:#666 !important ;
}
.f_clr_w{
    color: white;
}
.sp{
    display:none;
}

.main_ttl{
    position: relative;
    max-width: 1280px;
    width: 90%;
    margin: 0 auto 90px;
    display: flex;
    justify-content: center;
}
.main_ttl a.logo{
    width:690px;
}
.main_ttl img{
    width:100%;
}
.icon_tsushin{
    width: 60px;
    height: 60px;
    font-size: 14px;
    border: 4px solid #bd638c;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFF;
    position: absolute;
    top: -30px;
    left: 870px;
    z-index: 900;
}
.triangle {
    position: absolute;
    background: #bd638c;
    height: calc(tan(60deg) * 60px / 2);
    width: 20px;
    clip-path: polygon(40% 0, 90% 40%, 0 65%);
    top: -15px;
    left: 870px;
    transform: rotate(-115deg);
    z-index: 500;
}
.triangle_border {
    position:absolute;
    background: #FFF;
    height: calc(tan(60deg) * 60px / 2);
    width: 70px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    z-index:500;
    top:30px;
    right:-13px;
    transform: rotate(-110deg);
    z-index:100;
}
.main_ttl ul{
    width: 100%;
    max-width:960px;
    display: flex;
    margin-left: 100px;
    font-size: 14px;
    flex-direction: row;
    flex-wrap: wrap;
}
.main_ttl ul li{
    width:33%;
    min-width:180px;
    display: flex;
    padding-bottom:10px;
}
.categories{
    width:90%;
    max-width:1152px;
    margin:0 auto;
    display:flex;
    justify-content: center;    
    margin-bottom:60px;
    font-weight:bold;
}
.categories a{
    text-align: center;

}
.categories ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    flex-wrap: wrap;
}
.categories ul li{
    min-width:250px;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    flex-wrap: wrap;
}
.categories ul li div{
    margin:0 auto;
    text-align: center;
}
.wave_sec{
    padding-bottom: 1%;
    padding-top: 1%;
}
.sec_wineRed .wave_L{
    fill: #f3dde7;
}
.sec_wineRed{
/*    background: #bd638c; */
/*    background: #d184a7;  */
    background: #f3dde7;
}
.sec_white .wave_L{
    fill: #fff5fa;
}
.sec_white{
    background: #FFF;
}

.sec_ttl{
    font-size: 4rem;
    font-weight: 700;
    text-align: center;
/*    margin:30px 0 30px; */
}
h3 {
    margin:0;
    padding:0;
}
.icon_category{
    width:50px;
    margin-right:10px;
}
.category_box{
    padding: 30px 0 50px;
    text-align: center;
}

#ctgrylstall{
    display:none;
}
.ctgry_lst_ttl_sub{
    line-height:23px;
}
.sub_subttl{
    font-size:20px;
    font-weight:bold;
}
.category_lst_subttl{
    position:relative;
    display: flex;
    font-size:16px;
    margin-bottom:10px;
    align-items: center;
}
.category_lst_ttl .arrow{
    position:absolute;
    top:0px;
    right:-20px;
    display:inline-block;
    transform: rotate(0deg);
}
.category_viewlet{
    font-size:10px;
}
.gyokaicate{
    width:90%;
    max-width:980px;
    margin:0px auto 20px;
    font-size:2rem;
    display:flex;
    font-weight:bold;
    color:#333;
}
.largest_ttl{
    font-weight:bold;
    font-size:30px;
    color:#A1A1A1;
    line-height:2.5rem;
}
.largest_ttl_archive{
    font-weight:bold;
    font-size:30px;
    color:#333;
    line-height:3rem;
}
.category_lst{
    width:90%;
    max-width:980px;
    margin:0px auto 10px;
    padding:20px 0;
    font-size:2rem;
    font-weight:bold;
    background-color: #EBEBEB;
    color:#ad436c;
}
.category_lst h3{
    width:100%;
    display:flex;
    justify-content: center;
/*    margin-bottom:10px; */
}
.category_lst_ttl{
    position:relative;
    display: flex;
    line-height: 4rem;
    font-size:14px;
    margin-bottom:20px;
    width:90%;
    margin:0 auto;
    padding:10px 0;
    align-items: center;
}
.gyokai{
    color:#0070bd;
    border-top:1px solid #0070bd;
    border-bottom:1px solid #0070bd;
}
.fromgotsu{
    border-top:1px solid #bd638c;
    border-bottom:1px solid #bd638c;
}
.category_lst ul{
    display: flex;
    flex-wrap: wrap;
    border-radius: 4px;
    justify-content: center;
}
.category_lst ul li{
    border-radius: 30px;
    height: 30px;
    text-align: center;
    display: flex;
    border-collapse: collapse;
    line-height: 0;
    align-items: center;
    flex-direction: column;
    justify-content: space-evenly;
    margin-bottom:.5%;
    margin-right:.5%;
    font-size:10px;
    padding:5px 10px;
    font-weight:normal;
    color:#333;
}
.category_lst ul li.cl_gyokai{
    border:1px solid #0070bd;
    background-color: #FFF;
}
.category_lst ul li.cl_gotsu{
    border:1px solid #ad436c;
    background-color: #FFF;
}
.category_lst ul li.category_selected{
    background-color:#ad436c;
    color:#FFF;
}
.category_lst_detail{
    width:100%;
    max-width:980px;
    margin:0px auto 10px;
    padding:10px 0;
    font-size:2rem;
    font-weight:bold;
/*    background-color: #EBEBEB; */
    color:#ad436c;
}
.category_lst_detail ul {
    display: flex;
    flex-wrap: wrap;
    border-radius: 4px;
}
.category_lst_detail ul li{
    border-radius: 30px;
    height: 30px;
    text-align: center;
    display: flex;
    border-collapse: collapse;
    line-height: 0;
    align-items: center;
    flex-direction: column;
    justify-content: space-evenly;
    margin-bottom:.5%;
    margin-right:.5%;
    font-size:10px;
    padding:5px 10px;
    font-weight:normal;
    color:#333;
    border:1px solid #333;
    background-color: #FFF;
}

.newsbox_lst {
    max-width: 980px;
    margin: 30px auto 30px auto;
    padding: 0%;
    font-size: 1.5rem;
    font-weight: bold;
    width: 90%;
    margin: 0 auto 30px;
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
}
.newsbox_lst a{
    width: 24%;
    min-width: 235px;
    margin:0 0.5%;
    text-decoration: none;
}
.newsbox_lst a:hover{
    opacity:0.7;
}
.newsbox{
    min-width: 235px;
    margin: 10px 0 10px 0;
    border: 0px solid #CCC;
    border-radius: 10px;
    background-color: #FFF;
    padding: 0%;

}
.newsbox_img{
    width: 100%;
    aspect-ratio: 4/3;
    padding: 0;
    margin-bottom: 10px;
    overflow-y:hidden;
}
.newsbox_img img {
    width:100%;
}
.news_box_{
    padding:0;
    display:flex;
    flex-direction: column;
}
.newsbox_ctgry{
    width: 100%;
    display: flex;
    height:130px;
    padding: 1% 0;
    font-weight: bold;
    flex-direction: column;
    margin:0 auto;
}
.newsbox_date{
    width:100%;
    display: block;
    padding:1%;
    font-weight:normal;
    text-align: right;
    color:#333;
    font-size:1rem;
}
.newsbox_ttl{
    width:100%;
    height:7rem;
    display: block;
    padding:2% 0 0;
    color:#333;
}
.ctgry{
    width: 100%;
    padding: 5px 5%;
    text-align: center;
    border:1px solid #FFF;
    border-radius: 20px;
    font-size: 1rem;
    margin-bottom:5px;
}
.ctgry_small{
    width: 180px;
    display: flex;
    padding: 5px 10px;
    text-align: center;
    border-radius: 10px;
    font-size: 1.3rem;
    justify-content: center;
    align-items: center;
}
.news_content{
    width: 98%;
    max-width: 980px;
    margin: 0px auto 30px;
    padding: 1%;
    font-size: 1.5rem;
    font-weight: normal;
}
.content_date {
    color:#bd638c;
    text-align:right;
    border-bottom:1px dotted #bd638c;
    margin-top:-50px;
}
.content_image{
    width: 98%;
    max-width: 980px;
    margin: 0px auto 30px auto;
    padding: 1%;
    font-size: 1.5rem;
    font-weight: normal;
}
.article_ttl{
    width:100%;
    margin:0 auto;
}
.article_ttl_line{
    width:100%;
    margin:0 auto;
}
.article_subttl{
    width:100%;
    margin:0 auto;
}
.article_mainvisual{
    width:90%;
    margin:0 auto;
    margin-bottom:20px;
    text-align: center;
    position:relative;
}
.article_mainvisual img{
    width:50%;
}
.mvcaption{
    position:absolute;
    width:49%;
    margin:0 auto;
    font-size:10px;
    text-align: right;
    right:25.5%;
    bottom:0.5rem;
    background-color:rgba(255,255,255,0.8);
    padding:3px 5px;
    color:#000;
}
.detail_content{
    width:100%;
    max-width:980px;
    margin:0 auto 90px;
}
.detail_content .newsdate{
    width:100%;
    margin:0 auto;
    font-size:14px;
    margin-top:10px;
    margin-bottom:10px;
}
.detail_content .detail{
    width:100%;
    margin:60px auto 0 auto;
}
.viewall{
    width:100%;
    text-align: center;
    margin:30px 0 90px;
}
.viewall_btn{
    width:350px;
    height:60px;
    display: inline-block;
    margin:0 auto;
    text-align: center;
    border:2px solid #DDD;
    border-radius: 45px;
    padding:5px;
    font-size: 14px;
}
.viewall_txt{
    font-size: 20px;
    font-weight:bold;
}

.newslst_box{
    width:90%;
    padding:3%;
    margin:0 auto;
    background-color: #EFEFF6;
}
.newslst_box ul{
    width:100%;
    display:flex;
    flex-wrap: wrap;
}
.newslst_box ul li{
    padding:5px 0;
    text-align: center;
}
.newslst_box ul li.nl_date{
    width:15%;
}
.newslst_box ul li.nl_ctgry{
    width:20%;
}
.newslst_box ul li.nl_text{
    width:65%;
    text-align: left;
}
.bnrbox{
    width:80%;
    margin:0 auto;
}
.bnr{
    width:100%;
    padding:0 0 30px;
}


.footer_{
    width:100%;
    max-width:980px;
    background-color:#FFF;
    margin:60px auto;
}
.footer_ctgrylst {
    width: 98%;
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    margin-bottom: 30px;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-evenly;
}
.footer_ctgrylst a{
    width:32%;
    min-width:250px;
}
.footer_ctgrylst a:hover{
    opacity:0.7;
}
.footer_ctgrylst .ttl{
    width:98%;
    padding: 15px 0 30px;
    font-size: 23px;
}
.ft_category_lst{
    min-width:250px;
    padding:30px 0;
    border-top:1px solid #DDD;
    border-bottom:3px solid #ad436c;
    margin-bottom:30px;
    color:#333;
    font-weight: normal;
    text-align:center;
}
.ft_category_lst.gyokai{
    border-bottom:3px solid #0070bd;
}
.ft_category_lst span{
    font-size:16px;
}
.ft_category_lst ul{
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.ft_category_lst ul li{
    border: 1px solid #BBB;
    border-radius: 30px;
    height: 30px;
    text-align: center;
    display: flex;
    border-collapse: collapse;
    line-height: 0.1rem;
    align-items: center;
    flex-direction: column;
    justify-content: space-evenly;
    margin-bottom:.5%;
    margin-right:.5%;
    font-size:10px;
    padding:5px 10px;
    white-space: nowrap;
    background-color: #0070bd;
    color: #333;
}
.ft_category_lst_ttl{
    display:flex;
}
.ft_category_lst h3{
    width:95%;
    display: flex;
    border:0;
    white-space: wrap;
}
.ft_ctgry_lst_ttl_sub{
    width:100%;
    min-width:300px;
    line-height:23px;
}

.footer_ctgrylst .cont{
    width:75%;
}
.footer_ctgrylst .cont ul{
    width:100%;
    display: flex;
    flex-wrap: wrap;
}
.footer_ctgrylst .cont li{
    width: 25%;
    height: 50px;
    vertical-align: top;
    border: 1px solid #CCC;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:5px;
    font-size:11px;
}
.openctgry{
    text-align: center;
}
.openctgry .arrow{
    width:30px;
    height:30px;
    display: inline-block;
    font-size:30px;
    transform: rotate( 90deg );
    padding:20px;
    color:#AAA;
    font-weight:bold;
}
.footer_contact{
    width: 100%;
    display: flex;
    align-items: center;
}
.footer_contact .ttl{
    width:25%;
    font-size: 23px;
}
.footer_contact .cont{
    width: 75%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
}

.viewall_cntct{
    width:49%;
    text-align: center;
    margin:0 0;
}
.viewall_cntctbtn{
    width: 100%;
    height: 90px;
    display: flex;
    margin: 0 auto;
    text-align: center;
    border-radius: 45px;
    padding: 15px;
    font-size: 14px;
    align-items: center;
}
.viewall_cntctbtn .comp{
    width: 30%;
    height: 69px;
    display: flex;
    /* vertical-align: middle; */
    border-right: 1px solid #FFF;
    align-items: center;
    justify-content: center;
}
.viewall_cntctbtn .cntcttext{
    width:70%;
    font-size:16px;
    font-weight: bold;
    padding:1rem;
}
.pagingbox {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
.paging ul{
    display:flex;
}
.paging ul li {
    width: 50px;
    height: 50px;
    font-size: 2rem;
    display: flex;
    padding: 5px 5px;
    text-align: center;
    align-items: center;
    justify-content: center;
}
.paging ul li.page_on{
    border:1px solid #0070bd;
    border-radius: 25px;
    background-color:#0070bd;
    color:white;
}
.paging ul li.page_on_wred{
    border:1px solid #ad436c;
    border-radius: 25px;
    background-color:#ad436c;
    color:white;
}
.post_paging{
    width:100%;
}
.post_paging ul {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-wrap: nowrap;
}
.post_paging ul li.linktotop {
    width: 200px;
    height: 50px;
    color: white;
   /* background-color: #0070bd;*/
    background-color: #FE6A1A;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.post_paging ul li.paging_prev , li.paging_after {
    font-weight:bold;
    font-size:1.5rem;
    width:33%;
    text-align: center;
}

/* SP
---------------------------------------------------------*/
@media screen and (max-width: 480px) {
        .sp{
            display:block;
        }
        .content{
            width:90%;
            margin:0 auto;
        }
        .detail_content{
            object-fit: contain;
        }
        .detail_content img{
            max-width:100%;
        }
        .categories{
            margin-bottom:30px;
        }
        .categories ul{
            display: flex;
            flex-direction: row;
            justify-content: space-around;
            flex-wrap: wrap;
        }
        .categories ul li{
            display: flex;
            flex-direction: row;
            justify-content: space-around;
            flex-wrap: wrap;
            min-width: 180px;
        }
        .largest_ttl{
            width:100%;
            font-weight:bold;
            font-size:30px;
            color:#A1A1A1;
            line-height:2.5rem;
        }
        .largest_ttl_archive{
            display:block;
            width:100%;
            font-weight:bold;
            font-size:30px;
            color:#333;
            line-height:3rem;
            margin:30px auto;
            overflow-wrap: anywhere; /* 収まらない場合に折り返す */
            word-break: break-all; /* 単語の分割はデフォルトに依存 */
            line-break: strict; /* 禁則処理を厳格に適用 */
            text-align:center;
        }

        .gyokaicate {
            width: 95%;
        }
        .sub_subttl{
            font-size:16px;
            font-weight:bold;
        }
        .category_lst{
            width:95%;
            max-width:980px;
            margin:0px auto 10px;
            padding:20px 0;
            font-size:1.5rem;
            font-weight:bold;
            background-color: #EBEBEB;
            color:#ad436c;
        }
        .category_lst ul{
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-start;
            padding: 0 10px;
        }
        .gyokai{
            color:#0070bd;
            border-top:1px solid #0070bd;
            border-bottom:1px solid #0070bd;
        }
        .newsbox_lst{
            justify-content: center;
        }
        .newsbox_lst a {
            width: 90%;a
            min-width: 200px;
        }
        .newsbox_img {
            width: 100%;
            aspect-ratio: 4/3;
            padding: 0;
            margin-bottom: 10px;
            overflow-y:hidden;
        }
        .footer_ctgrylst {
            width: 98%;
            max-width: 980px;
            margin:0 auto;
            display: flex;
            margin-bottom: 30px;
            flex-wrap: wrap;
            flex-direction: row;
            justify-content: space-between;
        }
        .footer_ctgrylst .ttl{
            width:100%;
            padding: 15px 0 30px;
            font-size: 23px;
        }
        .ft_category_lst{
            width:90%;
            padding:30px 0;
            border-top:0px solid #DDD;
            border-bottom:3px solid #ad436c;
            margin-bottom:30px;
            color:#333;
            font-weight: normal;
        }
        .ft_category_lst.gyokai{
            border-bottom:3px solid #0070bd;
        }
        .ft_category_lst span{
            font-size:16px;
        }
        .article_mainvisual{
            width:100%;
        }
        .article_mainvisual img{
            width:100%;
        }
        .footer_ctgrylst{
            width:90%;
        }
        .footer_ctgrylst a{
            width:32%;
            min-width:250px;
            margin:0 auto;
        }
        .sec_ttl{
            font-size:3rem;
        }
        /* common css 修正分の調整*/
        .footer_logo img{
            width:100%;
        }
        .post_paging ul li.linktotop {
            width: 140px;
        }
        .mvcaption{
            position:absolute;
            width:96%;
            margin:0 auto;
            font-size:10px;
            text-align: right;
            right:2%;
            bottom:0.5rem;
            background-color:rgba(255,255,255,0.8);
            padding:3px 5px;
            color:#000;
        }



}




