@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    index.css
*
*
------------------------------------------------------------------------------------------ */
/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}/*HTML5display-roleresetforolderbrowsers*/article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}

body{
    font-family: '游ゴシック','YuGothic',Meiryo,メイリオ,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
    color: #000;
    font-size : 16px;
    background-color:#fff;
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
    word-break: normal;
    position: relative;
    z-index: 1;
}

body, html{
    width: 100%;
    height: 100%;
}

a, li, p, div, button{ outline: none !important; }
a{ color: #000; text-decoration: none;}

.indent_half_top{ position: relative; margin-left: -.5em !important;}
.indent_half{ position: relative; margin-left: -.5em;}

.current,
.current a,
.disabled,
.disabled a,
.overlay{
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}

img{ height: auto; backface-visibility: hidden; -webkit-backface-visibility: hidden;}

#wrap,
#footer{
    opacity: 0;
}

.ico_loading.end{ display: none !important;}

.footer-share__line{ display: none !important;}
.only_sp .footer-share__line,
.only_tablet .footer-share__line{ display: inline-block !important;}

@media screen and (min-width : 641px){ 
/*------------------------------------------------------------------------------------------
*
*
    min-width : 641px
*
*
------------------------------------------------------------------------------------------ */

/* --------------------------------------------------
*
    common settings
*
-------------------------------------------------- */
body{
    overflow: auto !important;
}

#contents_area{
    width: 100%;
    min-height: 1000px;
    padding: 0 0 80px 0;
    display: block !important;
    overflow: hidden;
}

#main_visual{
    height: 400px;
    margin:0 0 40px 0;
    overflow: hidden;
    position: relative;
}

#main_visual:after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color:#000;
    opacity: .5;
    position: absolute;
    top: 0;
    left: 0;
}

#main_visual h1{
    width: 100%;
    height: 400px;
    text-align: center;
    display: table;
    position: absolute;
    z-index: 2;
}

#main_visual h1 span{
    width: 100%;
    height: 400px;
    vertical-align: middle;
    display: table-cell;
}

#main_visual h1 img{
    width: 95%;
    max-width: 600px;
}

#main_visual ul{
    width: 150%;
    letter-spacing: -.40em;
    font-size: 0;
}

#main_visual ul img{
    width: auto;
    height: 200px;
    line-height: 0;
}

#main_visual li{
    display: inline-block;
    opacity: 0;
}

.yodogawa{
    width: 420px;
    margin: 0 auto 40px auto;
    text-align: left;
    white-space: nowrap;
}

.yodogawa p{
    font-size: 16px;
    margin: 0 0 20px 0;
    line-height: 2em;
}

#photo_list{
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

#photo_list .img{
    width: 100% !important;
    height: 100% !important;
    line-height: 0;
}

#photo_list li{
    width: 16.666%;
    margin: 0 0 10px 0;
    font-size: 12px;
    line-height: 1.6em;
    opacity: 0;
    visibility: hidden;
    background-color: #fff;
    box-sizing: border-box;
    padding: 10px;
    border: 5px solid #fff;
    position: relative;
    transition: opacity .15s ease;
    cursor: pointer;
}

#photo_list li:hover{
    opacity: .8 !important;
    transition: opacity .1s ease .15s;
}

#photo_list li img{
    width: 100% !important;
    height: auto !important;
}

#photo_list li .body{
    padding: 0 5px;
    display: none;
}

#photo_list li .body img{
    width: inherit !important;
}

.ico_loading{
    width: 32px;
    height: 32px;
    margin: 0 0 0 -21px;
    padding: 5px;
    opacity: 0;
    display: none;
    background-color: #fff;
    background-image:url(../images/parts_ico_loading.gif);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 32px;
    position: fixed;
    bottom: 80px;
    left: 50%;
    z-index: 10;
}

#footer{
    width: 100%;
    height: 50px;
    text-align: center;
    background-color: rgba(255, 255, 255, .95);
    border-top: 1px solid #eee;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 100;
}


#footer .copyright{
    margin: 0 20px 0 0;
    height: 50px;
    line-height: 50px;
    font-size: 10px;
    color: #aaa;
    position: absolute;
    top: 0;
    right: 0;
}

#footer .footer_sns{
    width: 100%;
    text-align: left;
    position: absolute;
    top: 3px;
    left: 5px;
}

#footer .footer_sns .title{
    display: none;
    font-size: 12px;
    position: absolute;
    top: 13px;
    left: 20px;
}

#footer .footer_sns li{
    margin: 0 15px;
    display: inline-block;
    text-align: center;
    transition: opacity .1s ease;
    line-height: 1.3em;
    position: relative;
    font-size: 11px;
}

#footer .footer_sns li a{
    color: #ff6c00;
}

#footer li span{
    display: block;
    vertical-align: middle;
}

#footer .footer_sns li:hover{
    opacity: .7;
}

#footer .footer_sns i{
    font-size: 32px;
    display: block;
    color: #ff6c00;
    vertical-align: middle;
}


/* --------------------------------------------------
*
    #modal
*
-------------------------------------------------- */
#modal{
    width: 100%;
    height: 100%;
    visibility: hidden;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 65535;
}

#modal_inner{
    max-width: 90%;
    display: inline-block;
    margin: -20px auto 0 auto;
    padding: 20px;
    box-sizing: border-box;
    overflow: hidden;
    background-color: #fff;
    opacity: 0;
    -ms-filter: "alpha(opacity=0)";
    text-align: center;
    position: relative;
    top: 0;
    z-index: 2;
}

#modal_data{
    max-width: 720px !important;
    display: inline-block;
}

#modal_data img{
    width: 100% !important;
    max-width: 720px !important;
    height: auto;
}

#modal_data.vertical img{
    max-width: 480px !important;
}

#modal .overlay{
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: .5;
    -ms-filter: "alpha(opacity=50)";
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    cursor: pointer;
}

#modal .loading{
    width: 0;
    height: 5px;
    background-color: #ffba00;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    cursor: pointer;
}

#modal .btn_close,
#modal .btn_prev,
#modal .btn_next,
#modal .modal_num{
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    color: #000;
    background-color: #fff;
    position: fixed;
    right: 0;
    z-index: 100;
    transition: background .15s ease;
    cursor: pointer;
}

#modal .btn_close,
#modal .btn_prev,
#modal .btn_next{
    border-bottom: 1px solid #eee;
}

#modal .btn_prev.disabled,
#modal .btn_next.disabled{
    background-color: #fff !important;
    color: #fff !important;
    cursor: default !important;
}

#modal .btn_close{ top: 0;}
#modal .btn_prev{ top: 51px;}
#modal .btn_next{ top: 102px;}
#modal .modal_num{ top: 153px;}

#modal .btn_close:hover,
#modal .btn_prev:hover,
#modal .btn_next:hover{
    background-color: #eee;
}

#modal .btn_close{
    font-size: 18px;
}

#modal .modal_num{
    font-size: 12px;
    line-height: 2em;
    cursor: default !important;
}

#modal .modal_num span{
    display: block;
}

#modal .modal_num .slush{
    width: 60%;
    margin: 0 auto;
    height: 1px;
    background-color: #ccc;
    transform: rotate(-15deg);
    -webkit-transform: rotate(-15deg);
}

#modal_inner .body{
    padding: 15px 5px 0 5px;
    font-size: 13px;
    line-height: 1.6em;
    text-align: left;
}

#modal_inner .body.none{
    display: none;
}

#modal_inner .body img{
    width: inherit !important;
}



    
} /* ----- min-width : 641px ----- */

@media screen and (max-width: 1920px) { #photo_list li{ width: 20%;} }
@media screen and (max-width: 1480px) { #photo_list li{ width: 25%;} }
@media screen and (max-width: 1020px) { #photo_list li{ width: 33.333%;} }
@media screen and (max-width: 640px) { #photo_list li{ width: 50%;} #photo_list ul{ padding: 0 20px !important;}}
@media screen and (max-width: 480px) { #photo_list li{ width: 50%;} #photo_list ul{ padding: 0 10px !important;}}



/* --------------------------------------------------------------------------------------------------------------
*
    max-width: 640px
*
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {
/* --------------------------------------------------
*
    common settings
*
-------------------------------------------------- */
body{
    z-index: 10;
    overflow-x: hidden;
    font-size: 16px;
}

body, html{
    width: 100%;
    min-width: 100%;
}

#wrap{
    background-color: #fff;
}

#contents_area{
    min-height: 1000px;
}

#main_visual{
    height: 172px;
    margin: 0 0 20px 0;
    overflow: hidden;
    position: relative;
}

#main_visual:after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color:#000;
    opacity: .5;
    position: absolute;
    top: 0;
    left: 0;
}

#main_visual h1{
    width: 100%;
    text-align: center;
    position: absolute;
    top: 20px;
    z-index: 2;
}

#main_visual h1 img{
    width: 300px;
    height: auto;
}

#main_visual ul{
    width: 130%;
    letter-spacing: -.40em;
    font-size: 0;
}

#main_visual ul img{
    width: auto;
    height: 86px;
    line-height: 0;
}

#main_visual li{
    float: left;
    opacity: 0;
}

.yodogawa{
    clear: both;
    padding: 0 5px;
    margin: 0 auto 20px auto;
    text-align: left;
}

.yodogawa p{
    font-size: 14px;
    margin: 0 0 20px 0;
    line-height: 1.8em;
}

#photo_list{
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 0 80px 0;
    box-sizing: border-box;
}

#photo_list .img{
    width: 100% !important;
    height: 100% !important;
    margin: 0 0 5px 0;
}

#photo_list li{
    font-size: 12px;
    line-height: 1.6em;
    opacity: 0;
    visibility: hidden;
    background-color: #fff;
    box-sizing: border-box;
    border: 5px solid #fff;
    position: relative;
    transition: opacity .15s ease;
    cursor: pointer;
}

#photo_list li:hover{
    opacity: .8 !important;
    transition: opacity .1s ease .15s;
}

#photo_list li img{
    width: 100% !important;
    height: auto !important;
}

#photo_list li .body{
    padding: 0 5px;
    display: none;
}

#photo_list li .body img{
    width: inherit !important;
}

.ico_loading{
    width: 32px;
    height: 32px;
    margin: 0 0 0 -21px;
    padding: 5px;
    opacity: 0;
    display: none;
    background-color: #fff;
    background-image:url(../images/parts_ico_loading.gif);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 32px;
    position: fixed;
    bottom: 80px;
    left: 50%;
    z-index: 10;
}


#footer{
    width: 100%;
    height: 60px;
    text-align: center;
    background-color: rgba(255, 255, 255, .95);
    border-top: 1px solid #eee;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 100;
}


#footer .copyright{
    width: 100%;
    padding: 2px 0;
    font-size: 10px;
    color: #fff;
    border-top: 1px solid #eee;
    background-color: #333;
    position: absolute;
    bottom: 0;
    left: 0;
}

#footer .footer_sns{
    width: 100%;
    text-align: center;
    position: absolute;
    top: 2px;
    left: 0;
}

#footer .footer_sns .title{
    display: none;
    font-size: 12px;
    position: absolute;
    top: 13px;
    left: 20px;
}

#footer .footer_sns ul{
    font-size: 0;
    letter-spacing: -.40em;
}

#footer .footer_sns li{
    width: 25%;
    display: inline-block;
    border-right: 1px solid #eee;
    box-sizing: border-box;
    text-align: center;
    transition: opacity .1s ease;
    letter-spacing: normal;
    line-height: 1.4em;
    position: relative;
    font-size: 11px;
}

#footer .footer_sns li:last-child{
    border: none;
}

#footer .footer_sns li a{
    color: #ff6c00;
}

#footer li span{
    display: block;
    vertical-align: middle;
}

#footer .footer_sns li:hover{
    opacity: .7;
}

#footer .footer_sns i{
    font-size: 26px;
    display: block;
    color: #ff6c00;
    vertical-align: middle;
}

/* --------------------------------------------------
*
    #modal
*
-------------------------------------------------- */
#modal{
    width: 100%;
    height: 100%;
    visibility: hidden;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 65535;
}

#modal_inner{
    max-width: 96%;
    display: inline-block;
    margin: 0 auto;
    padding: 10px;
    box-sizing: border-box;
    overflow: hidden;
    background-color: #fff;
    opacity: 0;
    -ms-filter: "alpha(opacity=0)";
    text-align: center;
    position: relative;
    top: 0;
    z-index: 2;
}

#modal_data{
    display: inline-block;
}

#modal_data img{
    width: 100% !important;
    height: auto;
}

#modal_data.vertical img{
    max-width: 360px;
}

#modal .overlay{
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: .5;
    -ms-filter: "alpha(opacity=50)";
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    cursor: pointer;
}

#modal .loading{
    width: 0;
    height: 15px;
    background-color: #ffba00;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 2;
    cursor: pointer;
}

#modal .btn_close,
#modal .btn_prev,
#modal .btn_next,
#modal .modal_num{
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    color: #000;
    border-bottom: 1px solid #eee;
    background-color: #fff;
    position: fixed;
    top: 0;
    z-index: 100;
    transition: background .15s ease;
    cursor: pointer;
}

#modal .btn_close,
#modal .btn_prev,
#modal .btn_next{
    border-right: 1px solid #eee;
}

#modal .btn_close.hover,
#modal .btn_prev.hover,
#modal .btn_next.hover{
    background-color: #eee;
}

#modal .btn_prev.disabled,
#modal .btn_next.disabled{
    background-color: #fff !important;
    color: #fff !important;
    cursor: default !important;
}

#modal .btn_close{ left: 0;}
#modal .btn_prev{ left: 51px;}
#modal .btn_next{ left: 102px;}
#modal .modal_num{ left: 153px;}

#modal .btn_close{
    font-size: 18px;
}

#modal .modal_num{
    border-right: 1px solid #eee;
    font-size: 12px;
    line-height: 2em;
}

#modal .modal_num span{
    display: block;
}

#modal .modal_num .slush{
    width: 60%;
    margin: 0 auto;
    height: 1px;
    background-color: #ccc;
    transform: rotate(-15deg);
    -webkit-transform: rotate(-15deg);
}

#modal_inner .img{
    line-height: 0;
}

#modal_inner .body{
    padding: 10px 5px 2px 5px;
    font-size: 13px;
    line-height: 1.6em;
    text-align: left;
}

#modal_inner .body.none{
    display: none;
}

#modal_inner .body img{
    width: inherit !important;
}


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