@charset "utf-8";

/* **************************
全体
************************** */
@font-face {
    font-family: "UD Digi Kyokasho NK-B";
    src: url(./Font/UDDIGIKYOKASHON-B.woff) format("woff");
}

body {
    font-family: "UD Digi Kyokasho NK-B","游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 1.2em;
    line-height: 1.7;
    background-image: conic-gradient(
        from 75deg,
        rgba(248, 243, 153, 1) 60deg, /*右*/
        rgba(167, 203, 149, 1) 60deg 150deg, /*下*/
        rgba(248, 243, 153, 1) 150deg 240deg, /*左*/
        rgba(250, 198, 113, 1) 240deg 330deg, /*上*/
        rgba(248, 243, 153, 1) 330deg  /*右*/
    ); 
    background-attachment: fixed;
    min-height: 75rem;
    padding-top: 6rem;
}

.scroll-target{
    scroll-margin-top: 65px;
}

/* **************************
書式
************************** */

h1, h2, h3 {
    font-family: "UD Digi Kyokasho NK-B";
    color: #007c2e;
}
h1 {
    text-align: center;
    font-size: min(9vw,2.5em);
}
h2 {
    font-size: 1.4em;
    margin: 1.2em 0.3em 0.3em;
}
h3 {
    font-size: 1.2em;
    margin: 0.3em 0.8em;
}

p {
    margin: 0.5rem 0;
}

.red_box {
    color: #d9333f;
    border: 4px double #d9333f;
    padding: 3px 6px;
    margin: 0.5rem 0;
    display: block;
    width: fit-content;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.red_font {
    color: #d9333f;
}

/* **************************
レイアウト等
************************** */

img {
    object-fit: contain;
}

#top-nav {
	background: linear-gradient(90deg,#ffb700, #ffbf00);
}
.navbar-dark .navbar-nav .nav-link {
	color: rgb(255, 255, 255);
    width: max-content;
    border-left: medium solid #ffffff;
}
.navbar-dark .navbar-nav .nav-link:hover {
	color: rgba(255, 255, 255, 0.6);
}
.navbar-dark .navbar-nav .nav-link:nth-child(7) {
    width: calc(3rem+40*3px);
}

article {
    background-color:  rgba(238,227,227,0.8);
    margin-bottom: 50px;
    padding: 25px 25px 20px;
}

.overview-content {
    display: flex;

    div:nth-child(1) {
        width: 65%;
    }
}

dl {
    display: grid;
    grid-template-columns: auto 1fr;
}
dl dd {
    margin-left: 1em;
}

.kubun_item {
    border-bottom: 2px dotted #ccc;
    padding-bottom: 20px;
}
.kubun_item:last-of-type {
  border-bottom: 0px;
}
#sponsorship .red_box{
    margin: 1rem 0 ;
}

.ex {
    font-size: 0.9em;
    background-color: #f0ebdb;
    display: initial;
    padding: 3px 8px;
}

table {
    font-size: min(1em, 3.3vw);
    background-color: white;
}
#bosyu table {
    text-align: center;
}
th{
    background-color: #fdc600!important;
}
#category th {
    width: 7em;
    min-width:30%;
    text-align: center;
}
th, td {
    border: 1px solid #e0e0e0;
}

#sokai ul, #sponsorship ul {
    margin: 0.5rem 0 0;
}

footer {
    color: #eee3e3;
    font-size: 0.8rem;
    text-align: center;
    padding: 1rem 0;
}

.sns-btn{
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
}
.x_btn img{
    border-radius: 25%;
}

.header-sns{
    margin: 15px 10px;
    width: 100px;

    img{
        height: 35px;
    }
}
.footer-sns{
    margin-bottom: 1rem;
    gap: 15px;

    img {
        height: 50px;
    }
}


@media screen and (max-width: 1200px) {
    .navbar-dark .navbar-nav .nav-link {
        margin-left: 10px;
        padding-left: 10px;
    }
}
@media screen and (max-width: 767px) {
    .overview-content {
        display: block;

        div:nth-child(1) {
            width: 100%;
        }
    }
}
@media screen and (max-width: 500px) {
    dl {
        grid-template-columns: 1fr;
    }
}
