body {
    font-family : YuGothic, 'Yu Gothic', sans-serif;
}

/* ==============================
common
============================== */
img {
    height: auto;
    width: 100%;
}

/* ==============================
main
============================== */
#spTop {
    padding: 30px 0 50px;
    position: relative;
    width: 100vw;
    max-width: 750px;
    margin: auto;
}
.topOnly {
    padding: 25px 0 0!important;
}
.topBar {
    background-color: #1ab6ed;
    width: 100%;
    height: 20px;
    margin-top: -25px;
}
.mv {
    background-image: url(/images/top_back.png);
    background-size: 100%;
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: 403px;
    z-index: -9;
}
.mvImage {
    margin: auto;
    margin-top: 20px;
    width: 302px;
}
.periodTitle {
    width: 225px;
    margin: auto;
}
.buttonArea {
    display: flex;
    margin: 325px auto 20px;
    width: 100%;
    justify-content: space-evenly;

}
.stampPage,
.stampMap {
    width: 155px;
}

.contentArea {
    margin: 20px auto 0px;
    width: 85%;
}
.periodTxt {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
}

.howToTitle {
    width: 225px;
    margin: auto;
    margin-top: 20px;
}
.howToTxt {
    font-size: 12px;
    line-height: 1.8;
    margin-top: 20px;
    text-align: justify;
}
.preMaru {
    /*color: #00479d;
    font-weight: bold;
    background-color: #f0e900;*/
    width: 310px;
    margin-bottom: 10px;
}
.step1Illustration {
    width: 195px;
    margin: 10px auto 20px;
}
.step2Illustration {
    width: 187px;
    margin: 10px auto 20px;
}
.blueText {
    color: #00479d;
}
.stampRule {
    margin-top: 30px;
    border: 3px solid #00479d;
    border-radius: 10px;
    position: relative;
}
.stampRuleTitle {
    position: absolute;
    top: -15px;
    width: 100%;
    text-align: center;
}
.stampRuleTitle img{
    width: 172px;
}
.stampRuleBody1 {
    margin-top: 35px;
    text-align: center;
    color: #00479d;
    font-weight: bold;
    font-size: 18px;
}
.stampRuleBody2 {
    color: #00479d;
    margin-top: 10px;
    margin-left: 20px;
    margin-bottom: 20px;
    font-weight: bold;
}
.stampBiko {
    margin-top: 10px;
    font-size: 10px;
    margin-bottom: 50px;
    text-align: justify;
}
.goodsTitle {
    width: 225px;
    margin: auto;
}

.stamp3Iamge {
    margin-top: 20px;
    text-align: center;
}
.stamp3Iamge img{
    width: 115px;
}
.stamp5Iamge {
    margin-top: 20px;
    text-align: center;
}
.stamp5Iamge img{
    width: 115px;
}
.stamp10Iamge {
    margin-top: 20px;
    text-align: center;
}
.stamp10Iamge img{
    width: 115px;
}
.stamp3Goods {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #00479d;
}
.stamp5Goods {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #00479d;
}
.stamp10Goods {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #00479d;
}
.applyTitle {
    width: 225px;
    margin: auto;
    margin-top: 50px;
    margin-bottom: 20px;
}
.exchangeName {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #00479d;
}
.exchangeName a {
    text-decoration:none!important;
    color: #00479d;
}
.exchangeAddress {
    text-align: center;
    font-size: 14px;
}
.exchangeBiko {
    margin-top: 20px;
    font-size: 12px;
    text-align: justify;
}
.exchangeContact {
    margin-top: 20px;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
}
.precautionsTitle {
    width: 225px;
    margin: auto;
    margin-top: 50px;
    margin-bottom: 10px;
}
.precautionsBody {
    font-size: 10px;
    text-align: justify;
}

.underBanner {
    text-align: center;
    margin-top: 80px;
    margin-bottom: 80px;
}
.underBanner img{
    width: 200px;
}
.wajima {
    margin-bottom: 40px;
}
.fotter{
    background: #00479d;
    color: #fff;
}
.fotterContactArea {
    padding-left: 25px;
    margin-bottom: 70px;
    font-size: 14px;
}
.fotterContactTitle{
    font-weight: bold;
    margin-bottom: 10px;
}
.copyright {
    text-align: center;
    font-size: 10px;
    padding-bottom: 3px;
}

.mvAreaLogin {
    margin-bottom: 35px;
}
.mvLogin {
    width: 45%;
    margin: 50px auto 0;
    z-index: -9;
}
.login-btn:not(:last-child) {
    margin-bottom: 25px;
}
.login-btn:hover {
    opacity: 0.8;
}
.btn_twitter {
    background-color: #1da1f2;
}
.btn_line {
    background-color: #00b900;
}
.btn_facebook {
    background-color: #3d5b99;
}
.login-btn {
    border: 0px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 60px;
    width: 100%;
    max-width: 255px;
    height: 35px;
    cursor: pointer;
    position: relative;
    text-align: left;
    color: #fff;
    font-size: 12px;
    line-height: 13px;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
    border-radius: 3px;
}
.btn_twitter::before {
    background: url(../shared/images/Twitter.svg) no-repeat;
    background-size: contain;
    background-position: center;
}
.btn_line::before {
    background: url(../shared/images/LINE.svg) no-repeat;
    background-size: contain;
    background-position: center;
}
.btn_facebook::before {
    background: url(../shared/images/Facebook.svg) no-repeat;
    background-size: contain;
    background-position: center;
}
.login-btn::before {
    content: '';
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 18px;
    width: 20px;
    height: 27px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.top_text {
    margin-left: 40px;
    color: #005bac;
    font-weight: bold;
    margin-bottom: 20px;
}
.topBarLogin {
    background-color: #1ab6ed;
    width: 100%;
    height: 20px;
}

.loginTitle {
    text-align: center;
    color: #00479d;
    font-weight: bold;
}
.loginText {
    text-align: center;
    font-size: 14px;
    margin-bottom: 30px
}

.commentMessage {
    font-size: 14px;
    margin: 20px 0;
}