@charset "UTF-8";

@media print, screen and (min-width:1025px) {

.underLine a:hover {
text-decoration: underline;
}

.pc,
#top-head-inner {
display: none;
}

#mainBox {
position: relative;
width: 100vw;
height: 100vh;
margin-bottom: 30px;
}

#mainBox img {
width: 100vw;
height: 100vh;
object-fit: cover;
}

.wrap {
width: 1100px;
margin: 0 auto;
padding: 60px 0;
}

.wrap2 {
width: 1100px;
margin: 0 auto;
padding: 60px 0 0;
}

.wrap3 {
width: 1100px;
margin: 0 auto;
}

#artWorksLogo {
width: 700px;
margin: 0 auto;
margin-bottom: 40px;
}

.wrapT {
width: 1100px;
text-align: left;
margin: 0 auto;
padding: 0 0 140px;
}

.wrapEx {
width: 1050px;
margin: 0 auto;
padding: 130px 0 0;
}

.prSubTitle {
font-size: 20px;
text-align: center;
margin-bottom: 36px;
}

.prSubTitle span {
font-size: 18px;
}

.wrapT h2,
.wrapEx h2,
.wrap h2,
.wrap2 h2 {
font-family: futura-pt, sans-serif;
font-size: 45px;
text-align: left;
margin-bottom: 40px;
line-height: 1.5;
}

.wrapT h2 span,
.wrapEx h2 span,
.wrap h2 span,
.wrap2 h2 span {
font-family: 'Hiragino Sans','Hiragino Kaku Gothic ProN',"segoe ui",'游ゴシック体','Yu Gothic Medium', 'YuGothic','メイリオ', 'Meiryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
font-size: 13px;
font-weight: 600;
display: block;
}

.wrapCo h3 {
font-family: futura-pt, sans-serif;
font-size: 90px;
margin-bottom: 40px;
line-height: 1;
}

.wrapColor {
position: relative;
background: #f2f2f2;
width: 100%;
}

.topFlexA {
width: 1100px;
margin: 0 auto;
display: block;
}

.topFlex {
width: 1100px;
margin: 0 auto;
margin-bottom: 60px;
display: flex;
justify-content: space-between;
align-items: center;
}

.topTxt {
width: 300px;
text-align: justify;
}

.topTxt h2 {
font-family: futura-pt, sans-serif;
font-size: 45px;
}

.topPhoto {
width: 722px;
}

.figurePianoInter {
position: relative;
width: 100%;
height: 372px;
overflow: hidden;
}

.figurePianoInter img {
width: 100%;
height: 100%;
object-fit: cover;
-webkit-transform: scale(1);
transform: scale(1);
-webkit-transition: .3s ease-in-out;
transition: .3s ease-in-out;
}

.topBottom {
margin-bottom: 100px !important;
}

.wrapFlex {
display: flex;
justify-content: space-between;
}

.exhibitionFlex {
width: 100%;
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.exhibitionFlex:last-child {
margin-bottom: 0;
}

.exhibitionFlexW {
width: 100%;
margin: 20px auto;
display: flex;
justify-content: space-between;
}

.exhibitionFlexW50 {
width: 100%;
margin: 0 auto;
margin-bottom: 50px;
display: flex;
justify-content: space-between;
}

.subExhibitionTitle {
font-size: 18px;
font-weight: 600;
}

.exhibitionW {
width: 525px;
text-align: justify;
}

.exhibitionW h4 {
font-size: 22px;
font-weight: 600;
margin: 15px 0 5px;
}

.bannerFeature {
position: relative;
width: 340px;
font-weight: 600;
text-align: left;
margin-right: 40px;
margin-bottom: 30px;
line-height: 1.5;
}

.bannerFeature:nth-of-type(3n) {
margin-right: 0;
}

.banner03Txt {
position: absolute;
width: 280px;
left: 0;
right: 0;
top: 96px;
margin: auto;
z-index: 1;
}

.tCopyright {
position: absolute;
font-size: 12px;
font-weight: bold;
color: #fff;
line-height: 1;
right: 10px;
top: 196px;
z-index: 1;
}

.toggleContent {
position: relative;
clear: both;
display: none;
padding-top: 80px;
}

.commonFlex {
display: flex;
justify-content: space-between;
}

.more {
position: relative;
float: right;
font-size: 14px;
margin-top: 30px;
padding: 0 36px 0 30px;
transition: .5s;
cursor: pointer;
}

.moreL {
position: relative;
width: 157px;
margin-top: 10px;
padding: 0 36px 0 30px;
transition: .5s;
}

.more::before,
.moreL::before {
position: absolute;
background: #333;
width: 100%;
height: 1px;
content: "";
left: 0;
right: 0;
bottom: 0;
}

.more::after,
.moreL::after {
position: absolute;
background: #333;
width: 20px;
height: 1px;
content: "";
right: -4px;
bottom: 8px;
transform: rotate(55deg);
}

.exhibition {
position: relative;
width: 330px;
font-weight: 600;
text-align: left;
margin-right: 30px;
margin-bottom: 30px;
line-height: 1.5;
}

.exhibition:nth-of-type(3n) {
margin-right: 0 !important;
}

.exhibitionLine {
margin: 0 auto;
border-bottom: 1px solid #ccc;
}

.figure {
position: relative;
background: #eee;
width: 100%;
height: 220px;
overflow: hidden;
margin-bottom: 20px;
}

.figure img {
width: 100%;
height: 100%;
object-fit: cover;
-webkit-transform: scale(1);
transform: scale(1);
-webkit-transition: .3s ease-in-out;
transition: .3s ease-in-out;
}

.tCopyright:hover~.figure img,
.banner03Txt:hover~.figure img,
.figure:hover img,
.figurePianoInter:hover img,
.topFlex:hover .figurePianoInter img {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}

#pianoTitleArea {
position: relative;
background: url("../../piano/img/title_bg.jpg") no-repeat center;
background-size: cover;
width: 100%;
height: 440px;
text-align: center;
margin-top: 84px;
}

.pianoTitleImg {
position: absolute;
width: 650px;
height: 60px;
padding: 0;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}

.wrapPiano {
width: 1100px;
margin: 0 auto;
padding: 60px 0;
overflow: hidden;
}

#pianoLogo {
width: 600px;
margin: 0 auto;
margin-bottom: 40px;
}

.wrapPiano h2 {
font-size: 32px;
font-weight: 600;
margin: 0 auto;
margin-bottom: 30px;
line-height: 1.5;
}

.commonTitle {
font-family: futura-pt, sans-serif !important;
font-size: 45px !important;
text-align: left !important;
font-weight: 400 !important;
margin-bottom: 40px !important;
line-height: 1.5 !important;
}

.commonTitle span {
font-family: 'Hiragino Sans','Hiragino Kaku Gothic ProN',"segoe ui",'游ゴシック体','Yu Gothic Medium', 'YuGothic','メイリオ', 'Meiryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif !important;
font-size: 13px !important;
font-weight: 600 !important;
display: block !important;
}

.pianoTxtL {
width: 520px;
text-align: justify;
margin-bottom: 30px;
}

.pianoPhoto {
width: 520px;
margin-bottom: 30px;
}

#pianoTopPhoto,
#fenceTopPhoto {
width: 100vw;
margin: 40px auto;
margin-top: 0;
}

#pianoTopPhoto img,
#fenceTopPhoto img {
width: 100vw;
height: 100vh;
object-fit: cover;
}

#pianoMainPhoto {
width: 100%;
margin: 30px auto;
margin-top: 50px;
}

.wrapFlexSb {
display: flex;
justify-content: space-between;
}

.pianoFlexPhoto {
width: 530px;
margin: 20px 0;
}

.schedulePhoto {
float: right;
width: 550px;
margin: 0 0 60px 50px;
}

.pianoFlex {
margin: 0 auto;
margin-top: 50px;
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
clear: both;
}

.bannerPiano {
position: relative;
width: 340px;
font-weight: 600;
text-align: left;
margin-right: 40px;
margin-bottom: 30px;
line-height: 1.5;
}

.bannerPiano:nth-of-type(3n) {
margin-right: 0;
}

.artistPhoto {
margin-bottom: 14px;
}

.artistName {
font-size: 22px;
}

.artistName span {
font-size: 16px;
}

.heralbony img {
height: 45px;
margin-bottom: 20px;
}

.subTitle {
font-size: 24px;
font-weight: 600;
margin-bottom: 20px;
}

.subTitle2 {
font-size: 22px;
font-weight: 600;
margin-bottom: 20px;
line-height: 1.5;
}

.outline {
margin-bottom: 40px;
text-align: left;
border-top: 1px dotted #ccc;
}

.outline dt {
float: left;
clear: left;
padding: 10px 0;
}

.outline dd {
padding: 10px 0 10px 200px;
border-bottom: 1px dotted #ccc;
}

.outline2 {
width: 500px;
margin-bottom: 20px;
text-align: left;
border-top: 1px dotted #ccc;
}

.outline2 dt {
float: left;
clear: left;
padding: 10px 0;
}

.outline2 dd {
padding: 10px 0 10px 100px;
border-bottom: 1px dotted #ccc;
}

.outline3 {
width: 100%;
margin-bottom: 10px;
text-align: left;
border-top: 1px dotted #ccc;
}

.outline3 dt {
float: left;
clear: left;
padding: 10px 0;
}

.outline3 dd {
padding: 10px 0 10px 150px;
border-bottom: 1px dotted #ccc;
}

.bottomLinks {
position: relative;
display: inline-block;
padding: 0 30px;
}

.bottomLinks::before{
content: '';
width: 12px;
height: 12px;
border: 0px;
border-top: solid 1px #333;
border-right: solid 1px #333;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 50%;
right: 0;
margin-top: -4px;
}

.naritaMap {
background: #fff;
width: 700px;
padding: 0 30px 30px 0;
border: 1px solid #ddd;
}

.featureLogo img {
height: 50px;
margin-bottom: 20px;
}

.featureLogo2 img {
height: 45px;
margin-bottom: 20px;
}

.pianoEventFlex {
display: flex;
justify-content: space-between;
}

.pianoEventL {
width: 500px;
}

.pianoEventR {
width: 550px;
display: flex;
justify-content: space-between;
}

.pianoEventPhoto {
width: 265px;
font-size: 14px;
text-align: center;
}

.pianoEventPhoto img {
margin-bottom: 10px;
}

.pianoEventL2 {
width: 700px;
}

.pianoEventR2 {
width: 360px;
margin-top: 5px;
}

/**/

#fenceLogo {
width: 308px;
margin: 0 auto;
margin-bottom: 40px;
}

.wrapFence {
width: 1100px;
margin: 0 auto;
padding: 60px 0 10px;
}

.fenceTopFlex {
margin-bottom: 80px;
display: flex;
justify-content: space-between;
border: 1px solid #014165;
}

.fenceTopL {
background-color: #000;
font-family: futura-pt, sans-serif !important;
width: 230px;
height: 260px;
font-size: 30px;
font-weight: 400;
text-align: center;
color: #fff;
display: table;
}

.fenceTopInner {
display: table-cell;
vertical-align: middle;
}

.fenceTopR {
width: 869px;
height: 260px;
overflow: hidden;
}

.fenceTopR img {
width: 100%;
height: 100%;
object-fit: cover;
transform: scale(1);
transition: .3s ease-in-out;
}

.fenceTopR:hover img {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}

#fenceTitleWrap {
width: 100%;
margin-top: 84px;
}

#fenceTitleWrap img {
width: 100%;
}

#fenceTitle {
font-size: 32px;
font-weight: 700;
margin-bottom: 60px;
}

#borderGray {
border: 1px solid #014165;
}

.fenceFlex {
display: flex;
justify-content: space-between;
}

.fenceTxtL {
width: 650px;
}

.fencePhotoR {
width: 350px;
}

.wrapFenceBottom {
width: 1100px;
margin: 0 auto;
padding: 60px 0;
}

.plannedLocation {
margin: 20px auto;
border-top: dotted #ccc;
}

.plannedLocation li {
padding: 15px 0;
border-bottom: dotted #ccc;
}

.projectWrap {
width: 380px;
margin-bottom: 60px;
}

.projectWrap img {
margin-bottom: 10px;
}

/**/

#footerTop {
position: relative;
background-color: var(--themeColor);
font-size: 11px;
font-weight: 600;
width: 100%;
color: #fff;
text-align: center;
margin: 0 auto;
padding: 40px 0 20px;
}

#footerTop img {
margin-bottom: 14px;
}

#footerBottom {
position: relative;
background-color: #eeeeef;
width: 100%;
height: 138px;
font-size: 12px;
margin: 0 auto;
padding: 0;
}

.brilliaLogo {
position: absolute;
width: 300px;
height: 53px;
font-size: 12px;
left: 0;
right: 0;
top: 0;
bottom: 0;
margin: auto;
}

.tatemonoLogo {
position: absolute;
width: 300px;
height: 53px;
font-size: 12px;
right: 30px;
top: 0;
bottom: 0;
margin: auto;
}

.brilliaLogo img,
.tatemonoLogo img {
height: 24px;
margin-bottom: 8px;
}

.pagetop {
position: fixed;
background-color: var(--themeColor);
width: 70px;
height: 70px;
bottom: -70px;
right: 0px;
z-index: 200;
display: block;
}

.pagetop a {
display: block;
width: 70px;
height: 70px;
cursor: pointer;
}

.pagetop a span {
display: block;
width: 70px;
height: 70px;
text-indent: -10000px;
font-size: 1px;
cursor: pointer;
}

.pagetopArrow {
position: absolute;
width: 30px;
left: 0;
right: 0;
bottom: 30px;
margin: auto;
z-index: 201;
}

.pagetopArrow::before{
position: absolute;
content: "";
display: block;
width: 1px;
height: 30px;
left: 0;
right: 0;
top: 64px;
margin: auto;
background: #fff;
}

.pagetopArrow::after{
content: "";
display: block;
border-top: 1px solid #fff;
margin-left: 13px;
margin-bottom: 12px;
-moz-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-o-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}

}