/* カスタマイズ用CSS */
/* clearfix */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}


.clear {
	line-height: 0px;
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
}
.clear10 {
	line-height: 0px;
	display: block;
	clear: both;
	height: 10px;
	visibility: hidden;
}
.clear20 {
	line-height: 0px;
	display: block;
	clear: both;
	height: 20px;
	visibility: hidden;
}
.clear40 {
	line-height: 0px;
	display: block;
	clear: both;
	height: 40px;
	visibility: hidden;
}
.clear50 {
	line-height: 0px;
	display: block;
	clear: both;
	height: 50px;
	visibility: hidden;
}
.clear100 {
	line-height: 0px;
	display: block;
	clear: both;
	height: 100px;
	visibility: hidden;
}

.header_logo_area {
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    max-width: 1130px;
    justify-content: space-between;
    padding-top: 15px;
}











.headerlogocontainer{
	display: block;
	float: left;
}

h1 .header_logo{
	margin-top: 0px;
	margin-bottom: 40px;
}





.icon_float{
	display:inline-block;
	float:left;
}
.icon_float img{
    width: 60px;
    height: 67px;
    margin-top: 20px;
}
.txt_block{
	display: block;
	/*float: left;*/
	/*padding: 0px;*/
	padding-top: 5px;
	line-height: 80%;
	/*margin-top: -20px;*/
	margin-top: 0;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	font-size: 36px;
	font-weight: 800;
}
@media screen and (max-width: 599px) {
.txt_block{
	font-size: 32px;
}
}
.header_logo_area a:link {
	color: #000!important ;
	text-decoration: none;    
}
.header_logo_area a:visited {
	color: #000 ;
	text-decoration: none;    
}
.header_logo_area a:hover {
	color: #666 ;
	text-decoration: none;    
}
.header_logo_area a:active {
	color: #666 ;
	text-decoration: none;    
}




.logocaption {
	text-align: left;
	font-size: 10px;
	color: #666;
	margin-bottom: 2px;
	margin-left: 5px;
	padding: 0px;
	margin-top: 0px;
	font-weight: normal;
}
.logocaption_under {
	text-align: left;
	font-size: 16px !important;
	color: #666;
	letter-spacing: 0.1em;
	margin-bottom: 2px;
	margin-left: 5px;
	padding: 0px;
	/*margin-top: 0px;*/
	margin-top: -5px;
	font-weight: bold;
	line-height: 115%;
}

/* テーブル */	
.pianospec table {
	border-top: 1px solid #4f4d47 !important;
	border-right: 1px solid #4f4d47;
	width: 100%;
	border-spacing: 0;
	margin: 0 auto;
}
.pianospec th {
	background-color: #CCC;
	color: #000;
	border-bottom: 1px solid #4f4d47;
	border-left: 1px solid #4f4d47;
	text-align: left;
	padding: 5px;
	min-width: 120px;
}
.pianospec td {
    border-bottom: 1px solid #4f4d47;
    border-left: 1px solid #4f4d47;
    text-align: left;
    padding: 5px;
	background-color: #F6F6F6;
	color:#333
}

.infoarea table {
	border-top: 1px solid #4f4d47 !important;
	border-right: 1px solid #4f4d47;
	width: 100%;
	border-spacing: 0;
	margin: 0 auto;
}
.infoarea th {
	background-color: #CCC;
	color: #000;
	border-bottom: 1px solid #4f4d47;
	border-left: 1px solid #4f4d47;
	text-align: left;
	padding: 5px;
	min-width: 220px;
}
.infoarea td {
    border-bottom: 1px solid #4f4d47;
    border-left: 1px solid #4f4d47;
    text-align: left;
    padding: 5px;
	background-color: #F6F6F6;
	color:#333;
}
.infoarea .leftfloatarea {
    width:50%;
	float: left;
}
.ichiran ul {
    margin:0 0 10px;
    display:-webkit-box;
    display:-moz-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:100%;
}

.ichiran ul li {
    margin-top: 8px;
    margin-bottom:50px;
}



.ichiran ul li:first-child {
    margin-top: 8px;
}


.tri-thumb ul {
    margin:0;
    display:-webkit-box;
    display:-moz-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:100%;
}

.tri-thumb ul li {
    margin-top: 20px;
    margin-bottom: 20px;
}


.blackbold{
	color: #000;
	font-weight: bold;
	margin-bottom: 0 !important;
}




.tobiraiconmidashi {
	color: #C96 !important;
	text-align: center !important;
	font-size: 1.4rem;
	font-weight: bold;
}
.rightimagestyle {
	width: 50%;
	display: block;
	float: right;
	margin-top: 5px !important ;
	margin-left: 2em;
	margin-bottom: 10px;
}
.rightimagestyle img {
	margin: 0px;
	width: 100%;
	height: auto;
}

.rightimagestyle_tate {
	width: 36%;
	display: block;
	float: right;
	margin-left: 2em;
}
.rightimagestyle_tate img {
	margin: 0px;
	width: 100%;
}

.leftimagestyle {
	width: 50%;
	display: block;
	float: left;
	margin-left: 1em;
	margin-right: 2em;
	margin-bottom: 10px;
}
.leftimagestyle img {
	margin: 0px;
	width: 100%;
}



.rightimagestyle2 {
	width: 50%;
	display: block;
	float: right;
	margin-left: 2em;
	margin-right: 1em;
}
.rightimagestyle2 img {
	margin: 0px;
	width: 100%;
	height: auto;
}

.leftimagestyle2 {
	width: 50%;
	display: block;
	float: left;
	margin-left: 1em;
	margin-right: 2em;
}
.leftimagestyle2 img {
	margin: 0px;
	width: 100%;
	height: auto;
}


.rightimagestyle3 {
	width: 40%;
	display: block;
	float: right;
	margin-left: 2em;
	margin-bottom: 10px;
}
.rightimagestyle3 img {
	margin: 0px;
	width: 100%;
}

.rightimagestyle4 {
	width: 49%;
	display: block;
	float: right;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 10px;
}
.rightimagestyle4 img {
	margin: 0px;
	width: 100%;
}

.leftimagestyle4 {
	width: 49%;
	display: block;
	float: left;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 10px;
}
.leftimagestyle4 img {
	margin: 0px;
	width: 100%;
}





.centerimagestyle {
	width:80% ;
	max-width:700px ;
	height:auto ;
	margin-left:auto ;
	margin-right:auto ;
}
.centerimagestyle img {
	margin: 0px;
	width: 100%;
	height: auto;
}


.right_images_area {
	width: 60%;
	display: block;
	float: right;
	margin-left: 2em;
	margin-right: 1em;
}
.left_images_area {
	width: 60%;
	display: block;
	float: left;
	margin-left: 1em;
	margin-right: 2em;
}
.right_images_area .iconbox {
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.left_images_area .iconbox {
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.right_images_area .iconbox img {
	width: 23%;
	height: auto;
	margin-left: 1%;
	margin-right: 1%;
	float: left;
	text-align: center;
	margin-bottom: 10px;
}
.left_images_area .iconbox img {
	width: 23%;
	height: auto;
	margin-left: 1%;
	margin-right: 1%;
	float: left;
	text-align: center;
	margin-bottom: 10px;
}
.separated_right_area {
	width: 60%;
	display: block;
	float: right;
}
.separated_left_area {
	width: 35%;
	display: block;
	float: left;
}
.separated_right_area img {
	width: 100%;
	height: auto;
}
.separated_left_area img {
	width: 100%;
	height: auto;
}


.center_midashi {
	text-align: center;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	border: 1px solid #333333;
}
.center_midashi_underdot {
	text-align: center;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-bottom: 5px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #333333;
}
.lefty_midashi {
	text-align: left;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
	border: 1px solid #333333;
	padding: 10px;
}
.lefty_midashi_underdot {
	text-align: left;
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #333333;
	padding-bottom: 5px;
}


.right_text {
	text-align: right ;
}
.center_text {
	text-align: center ;
}

hr.dashed {
	border: 0;
    border-bottom: 1px dashed #ccc;
    background: #999;
}
table.noborder {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
table.noborder hr {
	width: 100%;
	background: #999;
	border-top-width: 1px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
	border-top-style: solid;
	border-top-color: #666666;
}
.redbold {
	color:#FF0000 ;
	font-weight:bold ;
}





.photocaption {
	text-align: center;
	margin-top: 10px;
	margin-bottom: 20px;
}

.eventcatch {
	font-size: 2rem;
	font-weight: normal;
	color: #525263;
	margin: 0 0 8px;
}
.eventfee {
	font-size: 1.6rem;
	font-weight: normal;
	color: #525263;
	margin: 0 0 8px;
	border-top: 1px dotted #ccc;
    padding: 14px 0;
}

.eventinfo table {
	border-top: 1px solid #4f4d47 !important;
	border-right: 1px solid #4f4d47;
	width: 100%;
	border-spacing: 0;
	margin: 0 auto;
}
.eventinfo th {
	background-color: #CCC;
	color: #000;
	border-bottom: 1px solid #4f4d47;
	border-left: 1px solid #4f4d47;
	text-align: left;
	padding: 5px;
	min-width: 160px;
}
.eventinfo td {
    border-bottom: 1px solid #4f4d47;
    border-left: 1px solid #4f4d47;
    text-align: left;
    padding: 5px;
	background-color: #F6F6F6;
	color:#333
}
.additionremark {
	font-size: 80%;
	font-weight: normal;
}


.lv_ul .lv1 {
	text-align: left;
	display: block;
	padding: 0.5em;
	margin-bottom: 1em;
	border: 1px solid #333333;
}
.lv_ul .lv1 a {
	display: block;
}
.lv_ul .lv2 {
	text-align: left;
	display: block;
	padding: 0.5em;
	margin-bottom: 1em;
	border: 1px solid #333333;
}
.lv_ul .lv2 a {
	display: block;
}
.lv_ul .lv3 {
	text-align: left;
	display: block;
	padding: 0.5em;
	margin-bottom: 1em;
	border: 1px solid #333333;
}
.lv_ul .lv3 a {
	display: block;
}

.fullwidthbannerarea_wide {
	width: 100%;
	display: block;
}
.fullwidthbannerarea_wide img {
	width: 100%;
	max-width: 730px;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}
.fullwidthbannerarea_95 {
	width: 95%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1em;
}
.fullwidthbannerarea_95 img {
	width: 100%;
	height:auto;
}
.fullwidthbannerarea_80 {
	width: 80%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1em;
}
.fullwidthbannerarea_80 img {
	width: 100%;
	height:auto;
}
.framed {
	display: block;
	padding: 0.5em;
	margin-bottom: 1em;
	border: 1px solid #333333;
	margin-right: 0.5em;
	margin-left: 0.5em;
}

.video{
width:100%;
padding-bottom: 56.25%;
height:0px;
position: relative;
}
.video iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.stop{
	text-decoration: line-through;
}
.redtext{
	color:#F00;
}
.disp-inBlock{
	display: inline-block;
	float: none !important;
	vertical-align: top;
}
.videothumbnail {
	width: 100%;
	height: auto;
}

.videothumbnail iframe {
	max-width: 100% !important;
	height: auto;
}

.wide-box-red-column {
    text-align: center;
    color: #F00;
    width: 80%;
    margin-top: 20px;
    margin-bottom: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    border: 1px solid #F00;
    margin-left: auto;
    margin-right: auto;
}
.wide-box-red-column  a{
    color: #F00;
}
.normal-midashi {
	font-size:1.8rem;
	font-weight: bold;
	/*margin-top: 1.2em;
	margin-bottom: 1.2em;*/
	display: block;
}
.nmb {
    margin-bottom:0;
}

/******************************
	Media Query
*******************************/




/************************************************************************************
MOBILE
*************************************************************************************/
@media screen and (max-width: 599px) {


    .header_logo_area .header_logo {
	font-size: 32px;
	font-size: 3.2rem;
	width: 95%;
	display: block;
	float: none !important;
	margin-top: 0;
	margin-right: auto !important;
	margin-bottom: 50;
	margin-left: auto !important;
	text-align: center;
    }
.headerlogocontainer{
	/*max-width: 80%;
	max-width: 345px;*/
	width: 100%;
	float: none;
	margin-right: auto !important;
	margin-left: auto !important;
	margin-bottom: 40px;
}
.logocaption {
	font-size: 9px;
}

.logocaption_under {
	max-width: 400px;
	font-size: 14px !important;
}
/*.sns_icon {
	width: 40px !important;
	height: 40px !important;
	float: right !important;
	margin-right: 10px !important;
	margin-bottom: 10px !important;
	margin-left: 10px !important;
}*/
.sns_icon {
	width: 12.6% !important;
	height: auto !important;
	float: right !important;
	margin-right: 2% !important;
	margin-bottom: 10px !important;
	margin-left: 2% !important;
}


h2 {
    font-size: 21px;
    font-size: 2.1rem;
}
h3 {
    font-size: 16px;
    font-size: 1.6rem;
}

.rightimagestyle2 {
	width: 80%;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}
.leftimagestyle2 {
	width: 80%;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}




.rightimagestyle4 {
	width: 95%;
	float: none;
	margin-right: auto;
	margin-left: auto;
}

.leftimagestyle4 {
	width: 95%;
	float: none;
	margin-right: auto;
	margin-left: auto;
}







.right_images_area {
	width: 90% !important;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}
.left_images_area {
	width: 90% !important;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}
.separated_right_area {
	width: 90%;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}
.separated_left_area {
	width: 90%;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}
.fullwidthbannerarea {
	width: 100%;
	display: block;
}
.fullwidthbannerarea img {
	width: 100%;
	max-width: 480px;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}


.videothumbnail iframe {
	max-width: 100% ;
	height: auto;
}


.hide_in_sm {
	display: none !important;
}
.hide_in_sp {
	display: none;
}



}





/************************************************************************************
TABLET
*************************************************************************************/

@media screen and (min-width: 600px) and (max-width: 768px) {


.headerlogocontainer{
	max-width: 65%;
}
.logocaption_under {
	max-width: 400px;
	font-size: 14px !important;
}
.sns_icon {
	width: 12.6% !important;
	height: auto !important;
	float: right !important;
	margin-right: 2% !important;
	margin-bottom: 10px !important;
	margin-left: 2% !important;
}
.fullwidthbannerarea {
	width: 100%;
	display: block;
}
.fullwidthbannerarea img {
	width: 100%;
	max-width: 480px;
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
}

.videothumbnail {
	max-width: 560px;
}


.br-sp {
	display:none;
}
.hide_in_sm {
	display: none !important;
}
.hide_in_tb {
	display: none;
}

}



/************************************************************************************
PC
*************************************************************************************/


@media print, screen and (min-width: 769px) {


.headerlogocontainer{
	max-width: 50%;
}
	
/*.sns_icon {
	width: 12.6% !important;
	height: auto !important;
	float: right !important;
	margin-right: 2% !important;
	margin-bottom: 10px !important;
	margin-left: 2% !important;
}*/

	
.sns_icon {
	width: 52.5px;
	height: 52.5px;
	float: right;
	margin-right: 5px;
	margin-left: 5px;
}

/*#top_box__contents dt {
	margin-top: -100px !important;
	width: 20% !important;
}*/
/*#top_box__contents .control-label {
	margin-top: -100px !important;

}*/


.videothumbnail {
	max-width: 560px;
}



.br-sp {
	display:none;
}
.br-sm {
	display:none;
}
.hide_in_pc {
	display: none;
}



}


.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
/************************************************************************************
インデント設定
*************************************************************************************/
.indent7{
   margin-top: -1em;
}
.indent7 li {
   text-indent: -1em;
   padding-left: 7em;
}
.indent8{
   margin-top: -1em;
}
.indent8 li {
   text-indent: -1em;
   padding-left: 8em;
}






.centeringblock {
	align-content: center;
	max-width: 350px;
	margin-left: auto;
	margin-right: auto;
}

.centeringblock560 {
	align-content: center;
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}



    /****** Header Setting ********/

    header {
        height: auto;
        padding-top: 15px;
    }
    header:after {
        content: "";
        display: table;
        clear: both;
    }
    header .copy {
	font-size: 9px;
	font-size: 0.9rem;
	margin-bottom: 50px;
    }
@media screen and (max-width: 599px) {
    header .copy {
	font-size: 8px;
	font-size: 0.8rem;
	margin-bottom: 20px;
    }
}
@media print, screen and (min-width: 769px) {    
    .header_logo_area .header_logo {
	font-size: 40px;
	font-size: 4rem;
	margin: 0 !important;
	width: 450px;
	display: block;
	float: left;
    }
}	
	header .header_responcedevice_area {
		float: right;
	}
@media screen and (max-width: 599px) {
	header .header_responcedevice_area {
		float: none;
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	header .header_responcedevice_area .responcedeviceimage{
	    max-width:100%;
	    height: auto;
	}
}
	
.cb {
    display: inline-block;
    width: 1em !important;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
}

ec-headerNav__item img {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
}
ec-headerNav__item span {
    display: inline-block;
}

.dl_title {
    padding-left: 5.5rem;
    font-weight: 700;
}
@media screen and (min-width: 769px) {
.heightcontrol-52 {
    height: 52px;
}
.heightcontrol-52 ul {
    margin-top: -22.39px !important;
}
}

@media screen and (max-width: 768px) {

.ec-itemNav__nav li.h-control-52 {
   /* height: 53px !important;*/
   margin-bottom: -20px;
}
.ec-itemNav__nav li.h-control-52 ul {
    margin-top: -20px !important;
    padding-top: -45px !important;
    position: static;
    top: 100%;
    left: 0;
}*
.ec-itemNav__nav li.h-control-52 ul li {
    margin-top: -20px !important;
    padding-top: -45px !important;
    z-index: 10;
}
}

@media screen and (min-width: 768px) {
.newswrap {
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1.4;
    color: #525263;
    -webkit-text-size-adjust: 100%;
    width: 70%;
    max-width: 863px;
    float: left;
}
.blogwrap {
    width: 23%;
    float: right;
}
}
@media only screen and (min-width: 768px) {
    .ec-newsRole {
        padding: 0;
    }
}

@media screen and (max-width: 599px) {
.ec-newsRole {
    padding-left: 20px;
    padding-right: 20px;
}
.blogwrap {
    padding-left: 20px;
    padding-right: 20px;
}
}

.ec-productRole .ec-productRole__description {
    margin-top: 20px;
}
@media screen and (max-width: 599px) {
.ec-productRole .ec-productRole__description {
    padding-right: 20px;
}
}
.ec-productRole .ec-productRole__profile {
    padding-right: 20px;
}