@charset "utf-8";

/**********************************************/
/* 校友会       */
/* ニュースの詳細ページ */
/**********************************************/

body {
    background-color: #f5f5f5;
}

.small {
    font-size: 90%;
}

/*枠*/
article {
    position: relative; /*リボン用*/
    margin:0 10px 40px;
    padding: 40px 50px;
    background-color: #fff;
    min-height: 400px;
}

/*タイトル*/
article h1 {
    margin: 40px 0 10px 0;
}
article a {
    color:#002fff;
}

/*更新日*/
.infobox {
    background-color: #FAFAFA;
    padding: 10px 20px;
    border-top: 1px #ddd solid;
    border-bottom: 1px #ddd solid;  
    text-align: right;
    font-size: 1.6rem;
    line-height: 100%;
    margin-bottom: 30px;
}
.infobox span.category {
    float:left;
}
.infobox span.updatebox {
    background:url("../img/icon_update_gray.png") no-repeat left center;
    background-size:24px;
    padding: 2px 0 0 30px;
}

/*記事枠*/
.overview {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    font-size: 1.8rem;
}
.overview .sign {
    text-align: right;
}
.overview .btnbox {
    text-align: center;
    margin: 20px auto 40px;
}
.overview .remarks {
    margin: 50px 0 20px;
}
.overview ul.notes {
    width: 100%;
    margin: 0 0 0 1em;
    padding: 0;
    list-style-type: none;
}
.overview ul.notes li {
    line-height: 160%;
}
.overview ul.notes li~li {
    margin-top: 10px;
}


/*概要テーブル*/
.tbl-summary {
    width: 100%;
    max-width: 720px;
    margin: 30px auto 0;
    border-collapse: collapse;
}
.tbl-summary caption {
    text-align: center;
    margin-bottom: 20px;
}
.tbl-summary th {
    width: 130px;
    vertical-align: top;
    text-align: left;
    border-bottom: 1px #ddd solid;
    padding: 10px 0;
}
.tbl-summary td {
    width: calc(100% - 130px);
    padding: 10px 0;
    border-bottom: 1px #ddd solid;
}
.tbl-summary td ul,
.tbl-summary td ol {
    margin-top: 0;
    margin-bottom: 0;
}

/*参加申し込みボタン*/
a.entry-btn {
    width: 100%;
    max-width: 280px;
    line-height: 100%;
    border-radius: 50px;
    background:url("../img/icon_mail2_w.png") no-repeat 15px center;
    background-size:24px;
    background-color:#ffcc00;
    color:#000;
    padding: 13px 20px 13px 50px;
    font-weight: bold;
    text-decoration: none;
    font-size: 1.6rem;
    display: inline-block;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.12);
}
a.entry-btn:hover {
    transition: all .5s;
    background-color:#bbb;
    box-shadow: none;
    color:#fff;
}

/*一覧へ戻る*/
.pageback {
    text-align: center;
    margin: 40px 0;
}


/*赤ボタン*/
.btn-donation {
    margin: 30px auto;
    text-align: center;
}
.btn-donation a {
    display: inline-block;
    text-decoration: none;
    color: #fff;
    padding: 10px 34px;
    line-height: 100%;
    font-weight: bold;
    border-radius: 50px;
    
    background:url("../img/next2_w.png") no-repeat 94% center;
    background-size: 10px;
    background-color: #9e0000;
}
.btn-donation a:hover {
    transition: all .5s;
    background-color:#bbb;
}


/*リード文（イラスト）*/
.column {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.col2 .col-text {
    width: 73%;
}
.col2 .col-img {
    flex: 1;
}
.col2 .col-img img {
    max-width: 160px;
    display: block;
    margin: 0 auto;
}


/*開催概要（枠付き）*/
.tbl-overview {
    width: 100%;
    border-collapse: collapse;
    border: 1px #ddd solid;
    font-size: 1.6rem;
}
.tbl-overview th {
    width: 25%;
    border: 1px #ddd solid;
    background-color: #f5f5f5;
    padding: 5px 10px;
}
.tbl-overview td {
    border: 1px #ddd solid;
    padding: 5px 10px;
}

.tbl-overview td .notes {
    margin-top: 10px;
    margin-bottom: 10px;
}




/*********************************/
/*個別設定*/
/*********************************/
/*2024.6.7*/
.tbl-20240605 {
    width: 100%;
    border-collapse: collapse;
}
.tbl-20240605 th {
    width: 200px;
    border-bottom: 1px #ddd solid;
    padding: 10px 5px;
    vertical-align: top;
}
.tbl-20240605 td {
    border-bottom: 1px #ddd solid;
    padding: 10px 5px;
}
.tbl-20240605 th span {
    display: block;
    padding-top: 20px;
}
.tbl-20240605 td p {
    line-height: 160%;
}






/*
.overview .remarks {
    margin: 30px 0;
}
.overview .remarks p {
    margin: 5px 0;
    line-height: 140%;
}
*/


/*カバー写真*/
.photo {
    margin: 0px 0 30px;
    text-align: center;
}


/*PDFダウンロード*/
.download {
    margin: 40px 0 0;
    text-align: center;    
}
.download a {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
    font-size: 1.8rem;
    font-weight: bold;
    text-decoration: none;
    -webkit-box-shadow: 0 3px 5px rgba(0,0,0,.2);
	-moz-box-shadow: 0 3px 5px rgba(0,0,0,.2);
    box-shadow: 0 2px 2px rgba(0,0,0,.2);
}
.download a[type$="pdf"] {
    background-image:none;
    background:url("../img/icon_pdf_w.png") no-repeat 30px center;
    background-size:30px;
    background-color:#ffcc00;
    color:#000;
    padding: 10px 60px 10px 70px;
}
.download a[type$="pdf"]:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
    background-color:#bbb;
    -webkit-box-shadow: none;
	-moz-box-shadow: none;
    box-shadow: none;
}

.download a[type$="mp4"] {
    background-image:none;
    background:url("../img/mp4.svg") no-repeat 30px center;
    background-size:30px;
    background-color:#ffcc00;
    color:#000;
    padding: 10px 60px 10px 70px;
}
.download a[type$="mp4"]:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
    background-color:#bbb;
    -webkit-box-shadow: none;
	-moz-box-shadow: none;
    box-shadow: none;
}






/*左右リンク*/
.pagecontrol {
    margin-top: 50px;
}



/*2022.01.07*/
.img20220107 {
    max-width: 200px;
    float: right;
    margin: 10px;
}
.col20220107 {
    width: 50%;
}

.img20220107b {
    max-width: 240px;
    float: right;
    margin: 10px 20px 10px 10px;
}
.img20220107b-sp {
    max-width: 240px;
    margin: 10px auto;
    display: none;
}




/*2024.6.26*/
/* .tbl-overview-2 {
    width: 100%;
    border-collapse: collapse;
    border: 1px #ddd solid;
}
.tbl-overview-2 th {
    width: 20%;
    border: 1px #ddd solid;
    background-color: #f5f5f5;
    padding: 5px 10px;
}
.tbl-overview-2 td {
    border: 1px #ddd solid;
    padding: 5px 10px;
} */



/*2024.2.16*/
.tbl-20240216 {
    line-height: 100%;
    padding: 10px;
    border: 1px #ddd solid;
    margin-bottom: 30px;
}
.tbl-20240216 td {
    padding: 5px 10px;
}
.tbl-20240216 th:nth-child(1) {
    width: 25%;
    max-width: 130px;
}
.tbl-20240216 th:nth-child(2) {
    width: 25%;
    max-width: 130px;
}
.tbl-20240216 th:nth-child(3) {
    width: 40px;
    text-align: center;
}
.tbl-20240216 th:nth-child(4) {
    border-bottom: 2px #000 solid;
    width: auto;
}

/*ADD 2024.3.30*/
.tbl-20240330 {
    width: 100%;
    border-collapse: collapse;
    border: 1px #ddd solid;
}
.tbl-20240330 th {
    border: 1px #ddd solid;
    padding: 2px 10px;
}
.tbl-20240330 td {
    border: 1px #ddd solid;
    padding: 2px 10px;
}







/*２カラム*/
.photo-col2 {
    margin-bottom: 10px;
}
.photo-col2 figure {
    width: calc(50% - 20px);
    margin: 0 10px;
}





/*記事ページ*/
.section-800 {
    width: 100%;
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
}
.section-800  p {
    text-indent: 1em
}

.venue {
    background-color: #f7f7f7;
    padding: 10px 20px;
    line-height: 140%;
    margin-bottom: 30px;
}
.venue table {
    width: 100%;
    border-collapse: collapse;
}
.venue table th {
    width: 90px;
    text-align: left;
}
.venue table td::before {
    content: "：";
    font-weight: bold;
    margin-right: 10px;
}



/****************************/
/*レスポンシブ*/
/****************************/
@media screen and (max-width: 1280px) { 
}

@media screen and (max-width: 1100px) {
    article {
        padding: 40px 30px;
    }
    .overview ul.notes {
        margin: 0;
    }
}

@media screen and (max-width: 980px) {

}
@media screen and (max-width: 768px) {
    .overview {
        font-size: 1.6rem;
    }
    .overview .remarks {
        margin: 30px 0 10px;
    }
    .overview ul.notes li {
        font-size: 1.4rem;
    }
    .tbl-summary th {
        width: 90px;
    }
    .tbl-summary td {
        width: calc(100% - 90px);
    }

    .col2 .col-text {
        width: 100%;
    }

    .tbl-20240605 th {
        width: 100%;
        display: block;
        border-width: 0;
        padding: 0;
        text-align: left;
    }
    .tbl-20240605 td {
        border-bottom: 1px #ddd solid;
        width: 100%;
        display: block;
        padding: 0 0 10px;
        margin-bottom: 20px;
    }
    .tbl-20240605 td p {
        font-size: 100%;
    }    
}
@media screen and (max-width: 520px) {
    article {
        margin:0 7px 40px;
        padding: 20px 15px 40px;    
    }
    article h1 {
        margin: 40px 0 10px 0;
        line-height: 140%;
    }
    .infobox {
        background-color: transparent;
        padding: 0;
        border-width:0;
        font-size: 1.2rem;
        margin: 0 0 30px 0;
    }

    .infobox span.category {
        float:left;
        margin: 0;
        font-size: 1.1rem;
        letter-spacing: 0;
        min-width: 80px;
        padding: 3px 4px;
    }  
    .infobox span.updatebox {
        background-size:20px;
        padding: 2px 0 2px 24px;
    }

    .col2 .col {
        width: 100%;
    }

}

@media screen and (max-width: 380px) {
}






/*  768px 以下 */
@media screen and (max-width: 768px) {
    
    article section {
        min-height: auto;
    }

    /*2022.01.07*/
    .img20220107 {
        max-width: 140px;
    }
    .img20220107b {
        max-width: 140px;
    }



    .venue table th,
    .venue table td {
        display: block;
        width: 100%;
    }
    .venue table th::before {
        content: "【";
    }
    .venue table th::after {
        content: "】";
    }
    .venue table td::before {
        content: "";
        margin-right: 0;
    }
}

/*  520px 以下 */
@media screen and (max-width: 520px) {




    .download {
        margin-top: 30px;
    }
    .download a {
        font-size: 1.4rem;
    }
    .download a[type$="pdf"] {
        background-size:24px;
        padding: 8px 50px 8px 60px;
    }

    /*2022.01.07*/
    .img20220107 {
        max-width: 120px;
    }
    .img20220107b {
        display: none;
    }
    .img20220107b-sp {
        display: block;
    }
    #txt20220107b .col20220107 {
        width: 100%;
    }

    .giji dd {
        margin-left: 0;
    }
}

@media screen and (max-width: 380px) {
    .img20220107 {
        max-width: 80px;
    }

    .photo-col2 {
        margin-bottom: 10px;
    }
    .photo-col2 figure {
        width: 100%;
        margin: 0 auto;
    }
}
