@charset "UTF-8";


#footer-content{ margin-top: 0; }
/*#main-content .hero{ padding-top: 160px; background-color: #000000; }*/
#main-content::before{ content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 161px; background-color: #000000; }
#main-content .hero{ padding-top: 161px; }
#main-content .hero .page-copy{ left: auto; right: 0; top: 35%; color: #333333; background: transparent; padding: 0 3% 0 0; }
#main-content .hero .caption{ background-color: rgba(255,255,255,0.9); color: #666666; }
#main-content .intro .en{ font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; margin-top: 20px; letter-spacing: 0.2em; }
#main-content .intro .txt{ margin-top: 50px; }
#main-content .section01{ max-width: 1112px; margin: 80px auto 0; }
#main-content .section01 .photo-body{ margin-top: 80px; position: relative; }
#main-content .section01 .photo-body .caption{ position: absolute; right: 0; bottom: 0; padding: 2px 7px; background-color: rgba(0,0,0,0.8); color: #ffffff; }
#main-content .section01 .intro{ padding: 90px 0 70px; text-align: center; max-width: 1112px; margin: 0 auto; box-sizing: border-box; }
#main-content .section02{ margin-top: 80px; }
#main-content .section02 .main-photo{ position: relative; margin: 0 auto 60px; max-width: 1112px; }
#main-content .section02 .main-photo .photo img{ width: 100%; height: auto; }
#main-content .section02 .main-photo .caption{ position: absolute; left: 0; bottom: 0; padding: 2px 7px; background-color: rgba(0,0,0,0.8); color: #ffffff; }
#main-content .section02 .ttl01{ padding: 0 0 50px; }
#main-content .section02 .split-view{ display: flex; display: -ms-flex; justify-content: space-between; max-width: 1112px; margin: 0 auto; align-items: flex-end; }
#main-content .section02 .split-view .txt-body{ width: 48.5612%; position: relative; z-index: 10; }
#main-content .section02 .split-view .txt-body .en{ font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; letter-spacing: 0.2em; }
#main-content .section02 .split-view .txt-body .ttl{ font-size: 24px; line-height: 1.5; font-weight: normal; border-bottom: 1px solid #cccccc; display: block; }
#main-content .section02 .split-view .txt-body .txt{ margin-top: 20px; }
#main-content .section02 .split-view .photo-list01{ width: 50%; display: flex; display: -ms-flex; justify-content: space-between; align-items: flex-end; }
#main-content .section02 .split-view .photo-list01 .item01{ width: 24.1007%; }
#main-content .section02 .split-view .photo-list01 .item02{ width: 28.777%; }
#main-content .section02 .split-view .photo-list01 .item03{ width: 39.2086%; }
#main-content .section02 .split-view .photo-list01 .item .caption{ text-align: center; }
#main-content .section02 .photo-list02{ max-width: 1112px; margin: 50px auto 0; }
#main-content .section02 .photo-list02 .list-item{ display: flex; display: -ms-flex; justify-content: space-between; }
#main-content .section02 .photo-list02 .list-item .item{ width: 23.1115%; }
#main-content .section03{ margin: 80px auto 0; max-width: 1112px; }
#main-content .section03 .map-body{ position: relative; }
#main-content .section03 .map-body .map{ margin-left: -0.7194%; }
#main-content .section03 .map-body .caption{ position: absolute; right: 0; bottom: 0; padding: 2px 7px; background-color: rgba(255,255,255,0.8); color: #666666; }
#main-content .section03 .caption-list{ display: flex; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; width: 780px; margin: 10px auto 0; }
#main-content .section03 .caption-list::after{ display: none; }
#main-content .section03 .caption-list .item{ line-height: 1.5; }
#main-content .section03 .caption-list .item:nth-child(n+5){ margin-top: 10px; }
#main-content .section03 .caption-list .item .icon{ display: inline-block; font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; font-size: 20px; line-height: 1.5; background-color: #140700; color: #ffffff; width: 30px; text-align: center; margin-right: 0.3em; }
#main-content .section03 .caption-list .item .shikaku{ display: inline-block; width: 14px; height: 14px; background-color: #140700; vertical-align: middle; margin-right: 0.2em; }
#main-content .section04{ margin: 0 auto 0; /*border-top: 1px solid #cccccc;*/ /*background: linear-gradient(to right, #e6ebee 0%, #ffffff 100%); padding-bottom: 50px;*/ }
#main-content .section04 .intro{ padding: 90px 5% 0; max-width: 1112px; margin: 0 auto; }
#main-content .section04 .photo-body{ overflow: hidden; position: relative; line-height: 0; margin: 60px auto 0; }
#main-content .section04 .photo-body .photo img{ width: 100%; height: auto; }
#main-content .section04 .photo-body .caption{padding: 0 5px; text-align: right; }
#main-content .section04 .panorama{ position: relative; max-width: 1400px; margin: 0 auto; }
#main-content .section04 .panorama .photo-body{ overflow: hidden; position: relative; }
#main-content .section04 .panorama .photo-body.js-inview{ opacity: 1; }
#main-content .section04 .panorama .photo-body .toast-body{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 10; pointer-events: none; }
#main-content .section04 .panorama .photo-body .toast{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); background-color: rgba(65,65,65,0.95); z-index: 10; max-width: 240px; width: 50%; padding: 20px 0; border-radius: 10px; pointer-events: none; transition: opacity 1s; }
#main-content .section04 .panorama .photo-body.show .toast-body{ opacity: 0; transition: opacity 0.5s 5s; }
#main-content .section04 .panorama .photo-body.active .toast{ opacity: 0; transition: opacity 0.5s 0.1s; }
#main-content .section04 .panorama .photo-body .toast .icon{ width: 30%; margin: 0 auto; }
#main-content .section04 .panorama .photo-body .toast .txt{ font-size: 14px; line-height: 1.4285; color: #ffffff; text-align: center; margin-top: 10px; }
#main-content .section04 .panorama .photo-body .panorama-photo{ overflow: scroll; padding-top: calc(24.1093% + 20px); position: relative; width: 100%; }
#main-content .section04 .panorama .photo-body .panorama-photo::-webkit-scrollbar{ width: 5px; height: 5px; }
#main-content .section04 .panorama .photo-body .panorama-photo::-webkit-scrollbar-thumb{ background: rgba(0,0,0,0.5); }
#main-content .section04 .panorama .photo-body .panorama-photo::-webkit-scrollbar-track{ background: transparent; }
#main-content .section04 .panorama .photo-body .panorama-photo img{ position: absolute; left: 0; top: 0; /*top: 50%; transform: translateY(-50%);*/ /*pointer-events: none;*/ width: 200%; max-width: none; }
#main-content .section04 .panorama .photo-body .caption{ position: absolute; right: 0; bottom: 0; padding: 2px 7px; background-color: rgba(0,0,0,0.8); color: #ffffff; /*margin-bottom: 8.8%;*/ }
#main-content .section05{ margin: 80px auto 0; padding: 80px 0; background-color: #000000; }
#main-content .section05 .section-ttl{ text-align: center; font-size: 36px; line-height: 1.2; color: #fffaa8; font-weight: normal; display: flex; display: -ms-flex; align-items: center; max-width: 670px; margin: 0 auto; }
#main-content .section05 .section-ttl::before,
#main-content .section05 .section-ttl::after{ content: ""; flex: 1; height: 1px; background-color: #fff; }
#main-content .section05 .section-ttl::before{ background: linear-gradient(to right, rgba(255,250,168,0) 0%, rgba(255,250,168,1) 100%); }
#main-content .section05 .section-ttl::after{ background: linear-gradient(to left, rgba(255,250,168,0) 0%, rgba(255,250,168,1) 100%); }
#main-content .section05 .section-ttl .word{ padding: 0 0.5em; }
#main-content .section05 .company-section{ margin: 20px auto 0; max-width: 1112px; }
#main-content .section05 .company-section *{ color: #ffffff; }
#main-content .section05 .company-section .company{ margin-top: 90px; display: flex; display: -ms-flex; justify-content: space-between; }
#main-content .section05 .company-section .company .txt-body{ width: 61.3309%; }
#main-content .section05 .company-section .company .head-body{ border-bottom: 1px solid #cccccc; margin-bottom: 20px; padding-bottom: 10px; display: flex; display: -ms-flex; justify-content: space-between; align-items: flex-end; }
#main-content .section05 .company-section .company .head-body .head{ font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; font-size: 14px; letter-spacing: 0.4em; }
#main-content .section05 .company-section .company .head-body .name .ja,
#main-content .section05 .company-section .company .head-body .name .en{ display: inline-block; font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; }
#main-content .section05 .company-section .company .head-body .name .ja{ font-size: 24px; line-height: 1.2; padding-right: 0.2em; }
#main-content .section05 .company-section .company .head-body .name .en{ font-size: 12px; }
#main-content .section05 .company-section .company .photo-body{ width: 35.0719%; }
#main-content .section05 .company-section .company .photo-body .inner-body{ position: relative; }
#main-content .section05 .company-section .company .photo-body .inner-body .caption{ position: absolute; right: 0; bottom: 0; padding: 2px 7px; background-color: rgba(0,0,0,0.8); color: #ffffff; }
#main-content .section05 .person-section{ margin: 80px auto 0; padding: 80px 71px; max-width: 1112px; background-color: #dfded2; box-sizing: border-box; }
#main-content .section05 .person-section .intro{ text-align: center; }
#main-content .section05 .person-section .artist-list{ margin: 0 auto; display: flex; display: -ms-flex; justify-content: space-between; flex-wrap: wrap; margin-top: 50px; }
#main-content .section05 .person-section .artist-list .artist{ width: 47.42%; }
#main-content .section05 .person-section .artist-list .artist:nth-child(n+3){ margin-top: 80px; }
#main-content .section05 .person-section .artist-list .artist .head{ display: flex; display: -ms-flex; align-items: flex-end; }
#main-content .section05 .person-section .artist-list .artist .head .txt-body{ flex: 1; padding-left: 20px; }
#main-content .section05 .person-section .artist-list .artist .head .txt-body > *{ line-height: 1.5; }
#main-content .section05 .person-section .artist-list .artist .head .txt-body .name{ font-size: 22px; }
#main-content .section05 .person-section .artist-list .artist .head .txt-body .name .s-size{ font-size: 70%; }
#main-content .section05 .person-section .artist-list .artist .head .txt-body .en{ font-size: 14px; font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; }
#main-content .section05 .person-section .artist-list .artist .split-view{ margin-top: 20px; display: flex; display: -ms-flex; justify-content: space-between; }
#main-content .section05 .person-section .artist-list .artist .split-view .txt-body{ width: 55.4585%; }
#main-content .section05 .person-section .artist-list .artist .split-view .txt-body .txt{ margin-top: 0; }
#main-content .section05 .person-section .artist-list .artist .split-view .photo-body{ width: 39.3013%; }
#main-content .section06{ margin: 90px auto 0; }
#main-content .section06 .photo-body{ position: relative; }
#main-content .section06 .photo-body .copy{ position: absolute; color: #ffffff; font-size: 20px; line-height: 1.3; z-index: 20; top: 50%; left: 0; transform: translateY(-50%); padding: 5px 40px 5px 15px; background: linear-gradient(to right, rgba(0,0,0,0.8) 80%, rgba(0,0,0,0) 100%); }
#main-content .section06 .photo-body .photo img{ width: 100%; height: auto; }
#main-content .section06 .photo-body .caption{ position: absolute; right: 0; bottom: 0; padding: 2px 7px; background-color: rgba(0,0,0,0.8); color: #ffffff; }
#main-content .section06 .split-view{ display: flex; display: -ms-flex; justify-content: space-between; margin: 20px auto 0; max-width: 1400px; }
#main-content .section06 .split-view .photo-body{ width: 49%; }
#main-content .section06 .photo-body01{ margin-top: 60px; }
#main-content .section06 .photo-body02{ margin-top: 20px; }
#main-content .section06 .photo-body03{ margin-top: 20px; }
#main-content .section06 .map{ max-width: 1127px; margin: 90px auto 0; }
#main-content .section07{ position: relative; margin: 80px auto 0; max-width: 1112px; }
#main-content .section07 .sec-intro .en{ font-family: 'YakuHanMP', 'EB Garamond', 'Cormorant Garamond', 'Lora', 'Noto Serif JP', serif; letter-spacing: 0.2em; }
#main-content .section07 .sec-intro .ttl{ font-size: 24px; line-height: 1.5; font-weight: normal; white-space: nowrap; border-bottom: 1px solid #cccccc; padding-bottom: 10px; margin-top: 10px; }
#main-content .section07 .list-item{ margin: 50px auto 0; display: flex; display: -ms-flex; justify-content: space-between; }
#main-content .section07 .list-item .item{ width: 31%; }
#main-content .section07 .list-item .item .photo-body{ position: relative; }
#main-content .section07 .list-item .item .photo-body .photo img{ width: 100%; height: auto; }
#main-content .section07 .list-item .item .photo-body .caption{ position: absolute; right: 0; bottom: 0; padding: 2px 7px; background-color: rgba(255,255,255,0.9); color: #666666; }
#main-content .section07 .list-item .item .head{ text-align: center; padding: 10px 0; font-size: 18px; line-height: 1.5; }
#main-content .section07 .list-item .item .txt{ line-height: 1.7; }






/*--レスポンシブ追加プロパティ--------------------------------------*/
@media screen and (max-width: 1112px){ /*1112px以下のcss*/
	#main-content .section05 .person-section{ padding: 80px 50px; }
}
@media screen and (max-width: 768px){ /*768px以下のcss*/
	#main-content .hero{ overflow: hidden; padding-top: 0; }
	/*#main-content .hero .photo{ margin: 0 -20%; }*/
	#main-content .intro .en{ margin-top: 3%; letter-spacing: 0; }
	#main-content .intro .txt{ margin-top: 5%; text-align: left; }
	#main-content .section01{ margin-top: 10%; padding: 0 5%; }
	#main-content .section01 .photo-body{ margin-top: 10%; }
	#main-content .section01 .intro{ padding: 10% 0; }
	#main-content .section02{ margin-top: 7%; }
	#main-content .section02 .ttl01{ padding: 0 5% 10%; }
	#main-content .section02 .split-view{ display: block; padding: 0 5%; }
	#main-content .section02 .split-view .txt-body{ width: 100%; }
	#main-content .section02 .split-view .txt-body .ttl{ font-size: 20px; white-space: normal; display: block; }
	#main-content .section02 .split-view .txt-body .txt{ margin-top: 3%; }
	#main-content .section02 .split-view .photo-list01{ width: 100%; }
	#main-content .section02 .split-view .photo-list01 .item .photo img{ width: 100%; height: auto; }
	#main-content .section02 .split-view .photo-list01 .item .caption{ text-align: center; }
	#main-content .section02 .photo-list02{ margin-top: 5%; padding: 0 5%; }
	#main-content .section02 .photo-list02 .list-item .item{ width: 24%; }
	#main-content .section03{ margin-top: 10%; padding: 0 5%; }
	#main-content .section03 .map-body{ position: relative; }
	#main-content .section03 .map-body .map{ margin: 0 -5%; }
	#main-content .section03 .caption-list{ width: 100%; }
	#main-content .section03 .caption-list .item{ width: 50%; }
	#main-content .section03 .caption-list .item:nth-child(n+3){ margin-top: 5px; }
	#main-content .section03 .caption-list .item:nth-child(n+7){ width: 100%; }
	#main-content .section03 .caption-list .item .icon{ font-size: 16px; width: 24px; }
	#main-content .section04{ padding: 0 0 0; }
	#main-content .section04 .intro{ padding: 10% 5% 0; }
	#main-content .section04 .photo-body{ margin-top: 7%; }
	#main-content .section04 .panorama{ position: relative; }
	#main-content .section04 .panorama .photo-body .toast{ padding: 10px 0; }
	#main-content .section04 .panorama .photo-body .toast .icon{ width: 20%; }
	#main-content .section04 .panorama .photo-body .toast .txt{ font-size: 12px; }
	/*#main-content .section04 .panorama .photo-body .panorama-photo{ padding-top: 30%; }*/
	#main-content .section05{ margin: 10% auto 0; padding: 15% 5% 10%; }
	#main-content .section05 .section-ttl{ font-size: 20px; }
	#main-content .section05 .company-section{ margin-top: 5%; }
	#main-content .section05 .company-section .company{ margin-top: 5%; display: block; }
	#main-content .section05 .company-section .company .txt-body{ width: 100%; }
	#main-content .section05 .company-section .company{ margin-top: 10%; }
	#main-content .section05 .company-section .company .head-body{ margin-bottom: 3%; padding-bottom: 3%; }
	#main-content .section05 .company-section .company .head-body .head{ letter-spacing: 0.2em; }
	#main-content .section05 .company-section .company .head-body .name .ja{ font-size: 20px; }
	#main-content .section05 .company-section .company .photo-body{ width: 100%; max-width: 390px; margin: 3% auto 0; }
	#main-content .section05 .person-section{ margin: 10% auto 0; padding: 10% 5%; }
	#main-content .section05 .person-section .artist-list{ margin-top: 10%; }
	#main-content .section05 .person-section .artist-list .artist{ width: 100%; }
	#main-content .section05 .person-section .artist-list .artist:nth-child(n+2){ margin-top: 10%; }
	#main-content .section05 .person-section .artist-list .artist .head .txt-body{ padding-left: 3%; }
	#main-content .section05 .person-section .artist-list .artist .head .txt-body .name{ font-size: 20px; }
	#main-content .section05 .person-section .artist-list .artist .txt{ margin-top: 3%; height: auto!important; }
	#main-content .section05 .person-section .artist-list .artist .split-view{ margin-top: 3%; }
	#main-content .section05 .person-section .artist-list .artist .split-view .photo-body .photo img{ width: 100%; height: auto; }
	#main-content .section06{ margin: 10% auto 0; }
	#main-content .section06 .split-view{ margin: 5% 5% 0; }
	#main-content .section06 .photo-body .copy{ font-size: 16px; }
	#main-content .section06 .photo-body01{ margin-top: 5%; }
	#main-content .section06 .photo-body02{ margin-top: 10px; }
	#main-content .section06 .photo-body03{ margin-top: 10px; }
	#main-content .section06 .map{ margin-top: 7%; }
	#main-content .section07{ margin: 10% 5% 0; }
	#main-content .section07 .sec-intro .ttl{ font-size: 20px; white-space: normal; display: block; }
	#main-content .section07 .list-item{ margin: 7% auto 0; display: block; }
	#main-content .section07 .list-item .item{ width: 100%; }
	#main-content .section07 .list-item .item:nth-child(n+2){ margin-top: 7%; }
	#main-content .section07 .list-item .item .head{ font-size: 16px; }
}
@media screen and (max-width: 480px){ /*480px以下のcss*/
	#main-content .section03 .caption-list .item{ width: 100%; }
	#main-content .section03 .caption-list .item:nth-child(n+2){ margin-top: 5px; }
}






