/* CSS Remedy */
img {width:100%;height:auto;}

body {
    font-family: 'Noto Sans', 'Noto Sans JP', sans-serif, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    background-color: #ffffff; /* ページ背景色 */
    margin: 0;
}

.wrap-width {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}
.main-content {
    background-color: #ffffff; /* メインブロック背景色 */
    color: #000000; /* メインブロック文字色 */
}
.main-title {
    margin: 0;
    padding: 3% 0;
    font-size: clamp(22px, 6.38vw, 32px); /* 25px */
    text-align: center;
    font-weight: 700;
}
.main-title-small {
    margin: 0;
    font-size: clamp(15.6px, 4.34vw, 21.7px); /* 17px */
}
.main-title-sub {
    margin: 5% 0 0 0;
    font-size: clamp(20px, 5.36vw, 26.8px); /* 21px */
}
.main-detail {
    margin-top: 3%;
    padding: 0 5%;
    font-size: clamp(14px, 3.83vw, 19.2px); /* 15px */
}
.notice-title {
    font-size: clamp(20px, 5.36vw, 26.8px); /* 21px */
    border-bottom: 3px solid #fe8813;
    color: #fe8813;
    margin: 7% 0 3%;
    font-weight: 700;
}
.notice-title-sub {
    margin-bottom: 1%;
    font-weight: 700;
    color: #6f6f6f;
}
.main-detail a, .main-detail a:active, .main-detail a:visited {
    color: #000000;
}
.logout {
    display: block;
    text-align: right;
    margin: 0 5% 5%;
    font-size: clamp(13px, 3.57vw, 17.9px); /* 14px */
}
.logout a {
    color: #000000;
}

.current-block {
    position: relative;
    margin: 20% 3.1% 0;
    padding-bottom: 1%;
    background: url(/images/app_form/live_pre/current_bg.png) top left repeat;
    border-radius: 15px;
}
.current-title {
    width: 65%;
    margin-left: 30%;
    transform: translateY(-20%);
}
.current-chumoku {
    position: absolute;
    width: 27%;
    top: -12%;
    left: 2%;
}
.current-chumoku .chumoku-bg {
    animation: rotate-bg 10000ms 0ms linear infinite;
}
@keyframes rotate-bg {
    0% {transform: rotate(0deg);}
    100% {transform: rotate(360deg);}
}
.current-chumoku .chumoku {
    position: absolute;
    top: -3%;
    bottom: 0;
    left: 0;
    right: 0;
    width: 65%;
    margin: auto;
    z-index: 20;
}
.current-banner-block {
    margin-top: -6%;
}
a.current-camp-block {
    display: flex;
    margin: 3% 5%;
    font-weight: 700;
    overflow: hidden;
    text-decoration: none;
}
.current-camp-left {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40%;
    padding: 5% 0% 5% 2%;
    font-size: clamp(12.5px, 3.32vw, 16.6px); /* 13px */
}
.current-camp-right {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55%;
    padding: 5% 2% 5% 2%;
    font-size: clamp(13px, 3.57vw, 17.9px); /* 14px */
}
.current-camp-edge {
    position: relative;
    width: 5%;
}
.current-camp-edge-arrow {
    display: block;
    position: absolute;
    width: 8px;
    height: 8px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transform: rotate(45deg) translate(-1px, 1px);
    border-right: 2px solid #000000;
    border-top: 2px solid #000000;
}
.current-camp-banner {
    margin: 3% 5%;
    display: block;
}

a.back-button {
    display: block;
    position: relative;
    margin: 5% 7.6% 9%;
    padding: 4%;
    border-radius: 50px;
    font-weight: 700;
    text-align: center;
    font-size: clamp(20px, 5.36vw, 26.8px); /* 21px */
    text-decoration: none;
    line-height: 1em;
    background-color: #6F6F6F;
    color: #ffffff;
}
.back-button-arrow {
    width: 8%;
    aspect-ratio: 1;
    position: absolute;
    top: 26%;
    right: 5%;
    border-radius: 30px;
    background-color: #ffffff;
}
.back-button-arrow::after {
    content: '';
    display: block;
    position: absolute;
    width: 40%;
    height: 40%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transform: rotate(45deg) translate(-1px, 1px);
    border-right: 4px solid #6F6F6F;
    border-top: 4px solid #6F6F6F;
}

.copyright-block {
    max-width: 500px;
    margin: auto;
    padding: 2%;
    background-color: #E5E5E5;
    color: #012C40;
    font-size: clamp(11px, 3.1vw, 16px); /* 12px */
    text-align: center;
}
footer {
    padding: 5%;
    color: #000000;
    text-align: center;
    font-size: clamp(11px, 3.1vw, 16px); /* 12px */
}



/* 調整 */
.main-title {
    font-size: clamp(16px, 5vw, 26px);
    line-height: 1.4em;
}
.main-title-small {
    line-height: 1.5em;
}