body,h1,h2,h3,h4,ul,dl,ol{
    margin: 0;
    padding: 0;
}
h1,h3{
    font-size: 21.5px;
}
h4{
    font-size: 16px;
    margin-bottom: 5px;
}
p{
    margin: 10px 0;
    line-height: 1.4;
}
li{
    list-style-type: none;
}
ul.circle{
    margin: 14px 0;
    padding-left: 40px;
}
/*
ul.circle li{
    list-style-type: circle;
}
*/
ul.circle li{
    text-indent: -1em;
}
ul.circle li:before{
    content: "●";
}
a:hover,
a:link,
a:visited{
    text-decoration: underline;
    color: #d30267;
}
figure{
    text-align: center;
    margin: 10px;
}
#index-page a:hover,
#index-page a:link,
#index-page a:visited{
    text-decoration: none;
    color: white;
}
img{
    vertical-align: top;
}
.r{
    float: right;
}
.l{
    float: left;
}
.rm{
    margin: 10px 0 10px 10px;
}
.lm{
    margin: 10px 10px 10px 0;
}
/*
.rt{
    margin: 0 0 10px 10px;
}
.lt{
    margin: 0 10px 10px 0;
}
*/
.r2{
    float: right;
    margin: 10px 0 10px 0;
}
.l2{
    float: left;
    margin: 10px 0 10px 0;
}
.rt{
    text-align: right;
}
.w30{
    width: 30%;
}
.w40{
    width: 40%;
}
.w45{
    width: 45%;
}
.w49{
    width: 49%;
}
.w50{
    width: 50%;
}
.clear{
    clear:both;
}
.clearfix:after {
    content: ".";  /* 新しい要素を作る */
    display: block;  /* ブロックレベル要素に */
    clear: both;
    height: 0;
    visibility: hidden;
}
body{
    background: white;
    width: 640px;
    margin: 0;
}
header{
    padding: 20px 0 0 0;
}
#header-home img{
    width: 30px;
    float: left;
    margin: 10px 0 0 15px;
}
#header-image{
    margin-left: 63px;
}
#header-image img{
    display: block;
    width: 550px;
}
#index-page header img{
    margin-left: 63px;
    width: 525px; 
}
header h1{
    width: 300px;
    height: 22px;
    margin-left: 63px;
    /*
    background: url(../p/okadareijiwebusitekanji.gif) no-repeat center top / 300px 22px;
    text-indent: -99999px;
    */
}
header h1 img{
    width: 300px;
}
#index-page header{
    height: 60px;
}
#index-main{
    background: #85A2CC;
}
#index-image{
    width: 379px;
    float: right;
}
#index-page nav{
    height: 553px;
    padding: 20px 0 0 46px;
    color: white;
    font-size: 16px;
    line-height: 1;
}
#index-page nav h2{
    width: 115px;
    height: 356px;
    margin-left: 19px;
    background: url(../p/okadareijinokai.png) no-repeat;
    text-indent: -99999px;
}
#index-page nav ul{
    margin-top: 20px; 
}
#index-page nav li{
    margin-bottom: 8px; 
}
#header-menu{
    margin: 10px 2px;
    text-align: center;
}
#header-menu li{
    display: inline-block;
}
#header-menu li a{
    display: block;
    width: 106px;
    height: 50px;
    text-indent: -99999px;
    background-size: 106px 50px;
}
#header-menu .m-practice{
    background-image: url(../p/b_classinfo.gif);
}
#practice-page #header-menu .m-practice,
#header-menu .m-practice:hover{
    background-image: url(../p/o_classinfo.gif);
}
#header-menu .m-profile{
    background-image: url(../p/b_profile.gif);
}
#profile-page #header-menu .m-profile,
#header-menu .m-profile:hover{
    background-image: url(../p/o_profile.gif);
}
#header-menu .m-stageinfo{
    background-image: url(../p/b_playguide.gif);
}
#stageinfo-page #header-menu .m-stageinfo,
#header-menu .m-stageinfo:hover{
    background-image: url(../p/o_playguide.gif);
}
#header-menu .m-tohazugatari{
    background-image: url(../p/b_tohazugatari.gif);
}
#tohazugatari-page #header-menu .m-tohazugatari,
#header-menu .m-tohazugatari:hover{
    background-image: url(../p/o_tohazugatari.gif);
}
#header-menu .m-gallery{
    background-image: url(../p/b_gallery.gif);
}
#gallery-page #header-menu .m-gallery,
#header-menu .m-gallery:hover{
    background-image: url(../p/o_gallery.gif);
}
#header-menu .m-contact{
    background-image: url(../p/b_infoservice.gif);
}
#contact-page #header-menu .m-contact,
#header-menu .m-contact:hover{
    background-image: url(../p/o_infoservice.gif);
}
article{
    font-size: 17px;
    line-height: 1.4;
    padding: 14px 20px;
    text-justify: inter-ideograph;
    text-align: justify;
}
article p{
    text-indent: 1em;
}
article .texts p{
    text-indent: 0;
}
article p.caption{
    text-indent: 0;
    margin-top: 5px;
    margin-bottom: 0;
    font-size: 12px;
    font-weight: bold;
    text-align: center;
}
#gallery-page article ul li{
padding: 10px 0;
border-bottom: 1px dashed gray;
word-break: break-all;
}
#gallery-page article ul li .column{
display: flex;
justify-content: space-between;
}
#gallery-page article ul li.rt .column{
flex-direction: row-reverse;
}
#gallery-page article ul li:after{
/*
    content: ".";  /* 新しい要素を作る */
    display: block;  /* ブロックレベル要素に */
    clear: both;
    height: 0;
    visibility: hidden;
*/
}
#gallery-page article ul li a.popup img{
/*margin-right: 20px;*/
margin-bottom:10px;
width: 150px;
max-width: 100%
/*float: left;*/
}
#gallery-page article ul li a.popup img.landscape{
width: 200px;
}
#gallery-page article ul li.rt a.popup img{
/*margin-right: 0;*/
/*margin-left: 20px;*/
/*float: right;*/
}
#gallery-page article ul li div.images{
/*max-width: 50%;*/
margin-right: 10px;
/*float: left;*/
text-align: left;
}
#gallery-page article ul li.rt div.images{
margin-right: 0;
margin-left: 10px;
/*float: right;*/
text-align: right;
}
#gallery-page article ul li div.texts{
min-width: 150px;
}
#gallery-page article ul li a.popup img.button{
width: 60px;
float: none;
}
footer{
    height: 100px;
    text-align: center;
}
#index-page footer{
    height: 232px;
    padding: 10px 0 0 0;
    background: #252D3F;
    font-size: 28px;
    color: white;
}
.stage-title{
    padding:5px;
    border: 1px solid pink;
    border-width: 0 0 1px 5px;
}
.stage-date{
    text-align:right;
}
.stage-contents{
    padding: 10px 0 40px 10px;
}
.stage-contents p{
    text-indent: 0;
}
.play-type{
    display: inline-block;
    width: 40px;
    font-size: small;
}
.play-title{
    font-weight: bold;
}
ul.contact li span{
    display: inline-block;
    width: 33%;
    margin-left: -33%;
}
ul.contact li{
    padding-left: 25%;
}
.more{
    display: block;
    text-align: right;
}
.box{
    margin: 0 20px;
    padding: 10px 20px;
    border: 1px solid #aaa;
    font-size: 16px;
}
.popup-text-body{
    position: relative;
    width:90%;
    margin: 0 auto;
    padding: 20px;
    background: white;
    text-align: left;
}