@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    index_sp.css
*
*
------------------------------------------------------------------------------------------ */
/* --------------------------------------------------------------------------------------------------------------
*
    max-width: 640px
*
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {

/* --------------------------------------------------
*
    #mv
*
-------------------------------------------------- */
#mv{
    text-align: center;
    background-color: #ededef;
    line-height: 0;
}

#mv img{
    width: 100%;
    max-width: 530px;
}


/* --------------------------------------------------
*
    #yodogawa
*
-------------------------------------------------- */
#yodogawa{
    padding: calc(15 / 320 * 100vw) calc(20 / 320 * 100vw);
    border-top: 1px solid #534741;
    text-align: center;
    background-color: #f5f5f6;
}

#yodogawa p{
    max-width: 480px;
    margin: 0 auto;
    display: inline-block;
    text-align: left;
    font-size: 16px;
    line-height: 2em;
    letter-spacing: .06em;
}


/* --------------------------------------------------
*
    #profile
*
-------------------------------------------------- */
#profile{
    border-top: 1px solid #534741;
    border-bottom: 1px solid #534741;
    background-color: #b3b3b3;
    text-align: center;
    line-height: 0;
}

#profile .btn{
    cursor: pointer;
}

#profile .btn img{
    width: 100%; max-width: 480px; transition: opacity .1s ease;
    border-right: 1px solid #534741;
    border-left: 1px solid #534741;
}
.is_pc #profile .btn img:hover,
.is_sp #profile .btn img.touch{ opacity: .7; transition: opacity .15s ease;}

#modal_data .inner{
    padding: calc(40 / 320 * 100vw) calc(20 / 320 * 100vw);
    background-color: #fff;
    display: inline-block;
    text-align: left;
}

#modal_data .inner .pic{
    margin: 0 0 30px 0;
    text-align: center;
}

#modal_data .inner .pic img{
    width: 100%;
    max-width: 400px;
}

#modal_data h3{
    text-align: center;
    margin: 0 0 30px 0;
    font-size: 18px;
    letter-spacing: .06em;
}

#modal_data p{
    font-size: 14px;
    line-height: 2em;
    letter-spacing: .06em;
}

/* --------------------------------------------------
*
    #index_nav
*
-------------------------------------------------- */
#index_nav{
    text-align: center;
    background-image:url(../images/parts_bg_grd_sp.png);
    background-repeat: repeat-y;
    background-size: 100%;
    background-position: center;
}

#index_nav ul{
    padding: calc(40 / 320 * 100vw) 0 0 0;
    display: inline-block;
}

#index_nav li{
    padding: calc(40 / 320 * 100vw) 0 0 0;
    margin: 0 0 calc(30 / 320 * 100vw) 0;
    border-top: 1px solid #534741;
}

#index_nav li:first-child{ padding: 0; border: none;}

#index_nav li img{opacity: 1 !important;}

#index_nav h2{
    padding: 0 calc(20 / 320 * 100vw);
    margin: 0 0 15px 0;
}

#index_nav h2 img{
    width: 100%; 
    max-width: 372px;
}

#index_nav .img img{
    width: 100%; 
    max-width: 320px;
}

#index_nav .date{
    margin: 0 0 30px 0;
}

#index_nav a{
    color: #534741;
    font-size: 12px;
    letter-spacing: .06em;
    display: block;
    overflow: hidden;
    transition: opacity .1s ease;
}

.is_pc #index_nav a:hover,
.is_sp #index_nav a.touch{
    opacity: .7;
    transition: opacity .15s ease;
}

#index_nav .disabled a{
    opacity: .35 !important;
    cursor: default;
}


/* --------------------------------------------------
*
    article
*
-------------------------------------------------- */
article{
    padding: calc(40 / 320 * 100vw) 0 0 0;
    text-align: center;
    background-image:url(../images/parts_bg_grd_sp.png);
    background-repeat: repeat-y;
    background-size: 100%;
    background-position: center;
    overflow: hidden;
}

#talk_nav{
    margin: 0 calc(20 / 320 * 100vw);
    border-bottom: 1px solid #534741;
}

#talk_nav.b{
    border-top: 1px solid #534741;
    border-bottom: none;
    padding: 0 0 calc(40 / 320 * 100vw) 0;
}

#talk_nav ul{
    padding: 0 0 10px 0;
    display: flex;
    justify-content: space-between;
}

#talk_nav.b ul{
    padding: 10px 0 0 0;
}

#talk_nav .disabled{ visibility: hidden;}

#talk_nav img{
    width: auto;
    height: calc(25 / 320 * 100vw);
    max-height: 30px;
}

article h2{
    margin: calc(40 / 320 * 100vw) 0;
    padding: 0 calc(20 / 320 * 100vw);
}

article h2 img{
    width: 100%;
    max-width: 372px;
}

article .inner{
    margin: 0 auto;
}

article dl{
    margin: 0 0 2.5em 0;
    padding: 0 calc(20 / 320 * 100vw);
    font-size: 15px;
    text-align: left;
}


article dt{
    margin: 0 0 10px 0;
    letter-spacing: .15em;
}

article dt.h{ letter-spacing: -.1em;}
article dt.h:after{ content: ''; display: inline-block; margin: 0 10px 0 0;}
article dt.n{ color: #008994; font-family: 'こぶりなゴシック W6 JIS2004' !important;}

article dd{
    width: 100%;
    padding: 0 5px;
    letter-spacing: .06em;
    line-height: 2em;
}

article .pic{
    margin: calc(40 / 320 * 100vw) auto;
    text-align: left;
}

article .pic img{ width: 100%;}
article .pic .caption{ font-size: 13px; display: block; margin: 5px 0 0 0; padding: 0 calc(20 / 320 * 100vw); line-height: 1.8em;}
article .pic.v{ max-width: 380px;}

article .continue{
    padding: calc(20 / 320 * 100vw) 0 0 0;
    letter-spacing: .06em;
}

article .continue .d{
    margin: calc(20 / 320 * 100vw) 0 calc(60 / 320 * 100vw) 0;
    font-size: 12px;
}


/* --------------------------------------------------
*
    #information
*
-------------------------------------------------- */
#information{
    border-top: 1px solid #534741;
    text-align: center;
}

#information .inner{
    padding-top: calc(30 / 320 * 100vw);
    text-align: left;
    display: inline-block;
    box-sizing: border-box;
}

#information h3 br{
    display: none !important;
}

#information h3 br.sp{ display: block !important;}

#information h3{
    margin: 0 0 calc(20 / 320 * 100vw) 0;
    font-size: 25px;
    line-height: 1.508em;
    letter-spacing: .06em;
    text-align: center;
}

#information h3 span{
    text-indent: inherit !important;
    margin: 0 !important;
}

#information .inner .pic{
    margin: 0 0 calc(20 / 320 * 100vw) 0;
    padding: 0;
    border-top: 1px solid #534741;
    border-bottom: 1px solid #534741;
    line-height: 0;
    position: relative;

}

#information .inner .pic img{
    width: 100%;
}

#information p{
    margin: 0 0 calc(40 / 320 * 100vw) 0;
    padding: 0 calc(20 / 320 * 100vw);
    font-size: 15px;
    line-height: 1.875em;
    letter-spacing: .06em;
}

#information p br{ display: none !important;}
#information p br.sp{ display: inherit !important;}

#information p:last-child{ margin: 0 0 20px 0;}

#information a{
    transition: opacity .1s ease;
}
.is_pc #information a:hover,
.is_sp #information a.touch{ opacity: .7; transition: opacity .15s ease;}

/* --------------------------------------------------
*
    footer
*
-------------------------------------------------- */
footer{
    border-top: 1px solid #534741;
    padding: calc(45 / 320 * 100vw) 0 calc(20 / 320 * 100vw) 0;
    text-align: center;
    background-color: #cad4de;
}

footer ul{
    max-width: 480px;
    padding: 0 calc(20 / 320 * 100vw);
    margin: 0 auto calc(55 / 320 * 100vw) auto;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    vertical-align: top;
}

footer ul li{
    width: 50%;
    margin-bottom: calc(35 / 320 * 100vw)
}

footer ul li img{
    width: auto;
    height: 78px;
}

footer .copyright img{
    width: 256px;
}



} /* ----- max-width: 640px ----- */
