@charset "utf-8";

/**
 * 共通項
 */

:root {
    --fg-color:       #333;
    --theme-color1:   #a6e7ff;
    --theme-color1-2: #5acef8;
    --theme-color1-3: #5acef8cc;
    --theme-color1-4: #0099ccff;
    --theme-color2:   #70d6bb;
    --theme-color2-2: #20b48d;
    --theme-color2-3: #66ff66cc;
    --theme-color2-4: #00cc99ff;
}

* {
    box-sizing: border-box;
}

img {
    display: block;
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
    vertical-align: middle;
}

a {
    color: #333;
    text-decoration: none;
    transition: opacity ease-out 0.5s;
}

@media ( hover: hover ) {
    a:hover {
        opacity: 0.5;
    }
}

.bold {
    font-weight: 700;
}

.red {
    color: #900;
}



html {
    margin: 0;
    padding: 0;
    width: 100%;
    font-size: clamp( 16px, 1.6vw, 20px );
    font-weight: 500;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    width: 100%;
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
    background: #fafafa;
    opacity: 0;
    animation: anim-body-fadeIn 1.0s ease 0.0s forwards;
}

@keyframes anim-body-fadeIn {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}



/**
 * WordPress本体用CSS
 */

ul ul {
	list-style-type: square;
}
ul ul ul {
	list-style-type: "- ";
}


/**
 * ショートコード内HTML用CSS
 */
.ws-inout-board-area {
    maring: 0 auto;
    padding: 0;
    width: 100%;
}

.ws-inout-board-area h1 {
    maring: 2px auto 8px;
    padding: 0;
    width: 100%;
    font-size: 1.5rem;
    text-align: center;
    line-height: 1.0;
}

.ws-inout-board-indicators {
    margin: 8px auto 0;
    width: calc( 100% - 4px );
    display: grid;
    grid-template-columns: 1fr;
    gap: 2px;
}
@media ( min-width: 800px ) {
    .ws-inout-board-indicators {
        grid-template-columns: repeat( 2, 1fr );
    }
}
@media ( min-width: 1200px ) {
    .ws-inout-board-indicators {
        grid-template-columns: repeat( 3, 1fr );
    }
}
@media ( min-width: 1600px ) {
    .ws-inout-board-indicators {
        grid-template-columns: repeat( 4, 1fr );
    }
}
@media ( min-width: 2000px ) {
    .ws-inout-board-indicators {
        grid-template-columns: repeat( 5, 1fr );
    }
}

.ws-inout-board-indicator {
    margin: 0 auto;
    padding: 4px 0;
    width: 100%;
    line-height: 1.0;
    background: #cfc;
    border: 1px solid #9f9;
    border-radius: 4px;
    box-shadow:
        inset  2px  4px 4px #fff8,
        inset -2px -4px 4px #0003;
}
.ws-inout-board-indicator > .name {
    margin: 0 auto;
    font-size: clamp( 14px, 3.6vw, 18px );
    font-weight: 500;
    text-align: center;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.ws-inout-board-indicator > .place {
    margin: 2px auto;
    font-size: clamp( 16px, 4.0vw, 25px );
    font-weight: 600;
    text-align: center;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.ws-inout-board-indicator > .date {
    margin: 0 auto;
    font-size: clamp( 10px, 2.8vw, 14px );
    font-weight: 400;
    text-align: center;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.ws-inout-board-sel {
    position: fixed;
    left: 0;
    bottom: 0;
    margin: 0 auto;
    padding: 12px 0;
    width: 100%;
    background: #eff9;
}
.ws-inout-board-sel > select {
    margin: 0 auto;
    display: block;
    width: 100%;
    max-width: 800px;
    background: #fff;
}
