@charset 'utf-8';

/*-------------------------------------------------
共通
-------------------------------------------------*/
.pc {
    display: block;
}

.sp {
    display: none;
}

.shadow {
    box-shadow: 1px 2px 4px 0 rgba(0, 0, 0, 0.3);
}

html {
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-size: 15px;
    font-weight: 800;

    background-color: #f5f5f5;
}

textarea {
    font-family: 'M PLUS Rounded 1c', sans-serif;
}

a:default,
a:link,
a:active,
a:visited {
    text-decoration: none;

    color: #333333;
}

a:hover {
    text-decoration: none;
}


body {
    position: relative;

    text-align: center;

    background-image: url(../img5/first_bg.png);
    background-repeat: repeat;
    background-position: center center;
    background-size: 30px;
    transform: rotate(0.05deg);
    -webkit-transform: rotate(0.05deg);
}

.content {
    display: flex;
    flex-direction: column;
    justify-content: center;

    min-height: 100vh;
    padding: 0px 0;

    background: radial-gradient(circle, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.0) 100%);
}

.content p {
    line-height: 1.5;
    font-size: 0.9em;
    letter-spacing: -0.05em;
}

.content div {
    width: 92%;
    max-width: 400px;
    margin-right: auto;
    margin-bottom: 15px;
    margin-left: auto;
}

.content .logo {
    margin-bottom: 0;
}

.logo img {
    height: auto;
    max-height: 100px;
}

.item img {
    display: block;
    width: 100%;
}

.link a {
    font-size: 18px;
    font-weight: 800;

    position: relative;

    display: inline-block;

    width: 100%;
    padding: 19px 10px;

    vertical-align: middle;

    color: #d1000d;
    border: solid 3px #d1000d;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff, #e4e4e4);
}

.link a::after {
    position: absolute;
    top: 50%;
    right: 7px;

    width: 25px;
    height: 25px;
    margin-top: -12.5px;

    content: '';

    background-image: url(../img5/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.read p {
    font-size: 12px;

    width: 100%;
}

.copyright {
    padding-bottom: 15px;
}

.copyright span {
    font-size: 11px;

    color: #6a6a6a;
}

.maintenance .notice {
    font-size: 14px;
    line-height: 1.5;
    background-color: #d1000d;
    color: #ffffff;
    padding: 10px 0;
}

/***** 従来CSS ここから*****/

.od_read {
    padding-top: 15px;
    width: 100%;
}

.od_read .od_title {
    color: #d1000d;
    line-height:1.25;
    font-size: 20px;
}

.od_decoration {
    width: 100%;
    position: relative;
    display: inline;
}

.od_decoration::before {
    position: absolute;
    content: "";
    display: inline-block;
    background: url(../img5/decoration.png) no-repeat;
    background-size: contain;
    background-position: 0 0;
    top: 2px;
    left: -70px;
    width: 39px;
    height: 44px;

}

.od_decoration::after {
    position: absolute;
    content: "";
    display: inline-block;
    background: url(../img5/decoration2.png) no-repeat;
    background-size: contain;
    background-position: 0 0;
    top: 2px;
    right: -50px;
    width: 39px;
    height: 44px;
}

.od_content p{
    line-height: 1.5;
}

.od_container {
    padding-top: 30px;
}

/***** 従来CSS ここまで*****/