@charset "utf-8";
/*****************************************************

全ての要素をリセット
各ブラウザの表示を統一するための設定です

*****************************************************/
html {overflow-y: scroll;scroll-behavior: smooth;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin: 0;padding: 0;outline:0;}
address,caption,cite,code,dfn,em,strong,th,var {font-style: normal;}
table {	border-collapse: collapse;border-spacing: 0;}
caption,p {text-align: left;}
h1,h2,h3,h4,h5,h6 {font-size: 100%;text-align:left;}
img,abbr,acronym,fieldset {border: 0;}
li {list-style-type: none;}
img{vertical-align:middle;}
.line {font-size:1px;line-height:1px;}

/*--- default ---*/
body {color: #fff;font-family:"Noto Sans JP","メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Verdana, Arial, Helvetica, sans-serif;line-height:2em;letter-spacing:0.05em;-webkit-text-size-adjust: 100%;}
table{border-collapse:collapse;}

.float_left {
display: block;
float: left;
}
.float_right {
display: block;
float: right;
}
.float_left_space {
display: block;
float: left;
margin-right:30px;
}
.float_right_space {
display: block;
float: right;
margin-left:30px;
}
.clear{clear:both;}
.w90{width:90%;}
.w80{width:80%;}
.w75{width:75%;}
.w70{width:70%;}
.w65{width:65%;}
.w60{width:60%;}
.w55{width:55%;}
.w50{width:50%;}
.w45{width:45%;}
.w40{width:40%;}
.w35{width:35%;}
.w30{width:30%;}
.w25{width:25%;}
.w20{width:20%;}
.min{font-family: "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}

ruby > rt {
  font-size: 100%;
  zoom: 0.5;
}

/* Firefox全般（まずは通常サイズ） */
@-moz-document url-prefix() {
  ruby > rt {
    font-size: 100%;
  }
}

/* Windows Firefox専用：ちょっと小さく */
@-moz-document url-prefix() {
  @supports not (-moz-osx-font-smoothing: unset) {
    ruby > rt {
      font-size: 50%;
    }
  }
}
/* IE11表示用のCSS　*/
_:-ms-fullscreen, :root ruby > rt {
  font-size: 50%;
}
/* Safari表示用のCSS　*/
_::-webkit-full-page-media, _:future, :root ruby > rt {
  zoom: 1;
  font-size: -webkit-ruby-text;
}

/*****************************************************

コンテンツ

*****************************************************/
body{
margin:0 auto;
background:url("../image/common/bg-umi.jpg")no-repeat;
background-attachment: fixed;
background-size: cover; 
background-position: center;
}
.wrap{width: 100%;height:100vh;margin:0 auto;}
a:link {
color:#fff;
text-decoration:none;
}
a:visited{
color:#fff;
text-decoration:none;
}

a:hover{text-decoration: none;color:#b42424;}
a:active{text-decoration:none;color:#b42424;}

.clear:after{
visibility: hidden;
display: block;
font-size: 0;
content:" ";
clear: both;
height: 0;
}
* html .clear             { zoom: 1; } /* IE6 */
*:first-child+html .clear { zoom: 1; } /* IE7 */
a,a img {
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
a img:hover,.shopnav a:hover,.foot-nav a:hover  {
opacity: 0.6;
filter: alpha(opacity=60);
color:#b42424;	
} 
a[href^="tel:"] {
pointer-events: none;
}

@media screen and (max-width:768px)	{
a[href^="tel:"] {
pointer-events: auto!important;}
}

.page-content .bt,.bt{
	max-width:250px;
	margin:5rem auto 0;
}
.page-content .bt a,.bt a{
	display:block;
	text-align:center;
	border:1px solid #ffffff;
	box-sizing:border-box;
	padding:13px 4em;
	font-size:90%;
	font-weight:400;
	border-radius:50px;
	cursor:pointer;
	
}
.bt a:hover{background:#fff;}

.page-content .bt a{
	background:#fff;
	border:1px solid #000;
	color:#000;
}
.page-content .bt a:hover{
	color:#fff;
	background:#000;
}
/*****************************************************

メインヘッダー

*****************************************************/

.front header{
	width:100%;
	margin:0 auto;
	position:fixed;
	top:0;z-index:2;background:#00000073;}
.front header.scrolled {
   box-shadow: 0px 6px 8px -5px rgba(0, 0, 0, 0.22);
}
header{
	width:100%;
	margin:0 auto;
	position:fixed;
	top:0;
	z-index: 5;
}
header:after{
	position:absolute;
	content:'';
	width:110%;
	height: 130px;
	top: -15px;
	left:-5%;
	background: rgba(0,0,0,0.4);
	-ms-filter: blur(20px);
	filter: blur(20px);
}

header .header-contents{
	width: 95%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: baseline;
	align-items: center;
	position:relative;
	z-index:1;
	max-width: 1200px;
	margin:0 auto;
	padding: 2rem 0;
	top:0;
	left:0;
	}
header .head-logo{
	width:100%;
	max-width: 250px;
}
header .head-logo a{
	display:block;
	width:100%;
	margin:0 auto;
}
header .head-logo a img{width: 100%;}

@media screen and (max-width:600px)	{
header:after{
	height: 110px;
}
header .head-logo a .img-box{width: 80%;}
header .head-logo a .logo-tx{
	width:100%;
	font-size:0.8em;
	line-height:1.5em;
	margin: 0.5rem 0 0;
}
}
@media screen and (max-width:480px)	{
	
header .head-logo{max-width: 180px;}
header .head-logo a .img-box{
	width: 180px;
	margin: 0 auto;
}
header .head-logo a .logo-tx{
	width:100%;
	font-size:0.7em;
}
}
/*****************************************************

ドロワーメニュー

*****************************************************/
.overlay-contents{width: calc(100% - 200px);}

.menu-content{
	float:right;
	width: 100%;
}
.menu-content ul.dr-menu{
	display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;-webkit-align-items: stretch;align-items: center;
	width:100%;
	max-width: 700px;
	float:right;
	margin: 0;
}
.menu-content ul.dr-menu li{
	font-size: 1.0em;
	line-height:1.0em;
	width:16.6%;
	font-weight:300;
}
.menu-content ul.dr-menu li a{
	display:block;
	border:0;
	padding: 1rem 0;
	text-align:center;
	color:#fff;
	position:relative;
}
.menu-content ul.dr-menu li a:after{
	content:"";
	  -webkit-transition: 0.3s ease-in-out;
	  -moz-transition: 0.3s ease-in-out;
	  -o-transition: 0.3s ease-in-out;
	  transition: 0.3s ease-in-out;
	  position:absolute;
	  width:0%;bottom:0;left:50%;
	  border-bottom:0px solid #fff;
}
.menu-content ul.dr-menu li a:hover:after{
 content:"";
	width:100%;
	left:0;
	border-bottom:0px solid #fff;
}

@media screen and (max-width:900px)	{
.menu-content{
	float:right;
	width: 100%;
	max-width: 100%;
}
.openbtn{
	position:absolute;
	top: 28%;
	right: 0%;
	cursor: pointer;
	width: 55px;
	height:55px;
	background: #ffffff00;
	border: 0.5px solid rgb(255 255 255);
	border-radius:50px;
	z-index:11;
}
.openbtn.active{border:0.5px solid #fff;}
.openbtn span{
	width: 50%;
	height: 1px;
	background: rgb(255 255 255);
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 14px;
}	
.openbtn.active span{background: #ffffff;}
.openbtn span:nth-of-type(1) {top:22px; }
.openbtn span:nth-of-type(2) {top:29px;}
.openbtn span:nth-of-type(3) {top:36px;}
.openbtn.active span:nth-of-type(1) {
width: 30%;
top: 22px;left:18px;
transform: translateY(6px) rotate(-45deg);
}
.openbtn.active span:nth-of-type(2) {opacity: 0;}
.openbtn.active span:nth-of-type(3){
width: 30%;
top: 34px;left:19px;
transform: translateY(-6px) rotate(45deg);
}
.menu-overlay {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.0);
	position: fixed;
	bottom: -99999px;
	z-index: -1;
	transition: background 1s ease, z-index 0s 1s;
}
.menu-content{
	width: 100%;height: 100%;
	position: fixed;
	left:0;bottom: 100%;
	background:url("../image/common/bg-gray.jpg")no-repeat;
	-webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
	overflow-y: auto;
	transition: bottom 0.5s ease-in-out;
}
.menu-content.show {bottom: 0;left:0;}
.menu-content ul.dr-menu{
	width:100%;
	max-width:900px;
	margin: 10rem 0 0;
	float:none;
}
.menu-overlay.show {
	background-color: rgba(0, 0, 0, 0.6);
	left:0;
	z-index: 10;
	transition: background-color 1s ease, z-index 0s; /* アニメーションの設定 */
}
.menu-content .head-rogo{width: 220px;margin:20px auto;}
.menu-content .head-rogo a{display:block;width:220px;}
.menu-content ul{
	margin:20px;
	font-size:90%;
}
.menu-content ul.dr-menu li{
	width:90%!important;
	line-height:1.5em;
	text-align:left;
	margin: 0 auto;
	padding:0 ;
	border-bottom:0.5px dashed #fff;
}
.menu-content ul.dr-menu li a{
	display:block;
	padding:1.5rem 0;
	text-align:left;
	padding-left:2rem;
}
.menu-content ul.dr-menu li span{display:contents;}
.menu-content ul.dr-menu li a:hover,
.menu-content ul.dr-menu li:last-child a:hover{
	background:#ccc;
	border-radius:0;
	color:#231815;
	border:0;
}

.menu-content ul.overlay-menu{
display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;-webkit-align-items: stretch;align-items: stretch;
width:90%;
margin: 5% auto 20%;
}
.overlay-menu li{
width:30%;
margin: 1.666%;
}
}

@media screen and (max-width:600px)	{
.overlay-menu li{
width:44%;
margin: 2% 3%;
font-size:85%;
line-height:1.5em;
}	
.menu-content ul.overlay-privacy li{width: 100%;}
.menu-content ul.overlay-privacy li:first-child{
padding:0 0 10px;
border-right:0px solid ;
margin-right:0%;
}
}

@media only screen and ( max-width :480px ) {
.openbtn{top: 30%;right:2%;width: 45px;height:45px;}
.openbtn span{
left: 11px;height: 1px; 
}
.openbtn span:nth-of-type(1) {top:18px; }
.openbtn span:nth-of-type(2) {top:25px;}
.openbtn span:nth-of-type(3) {top:32px;}
.openbtn span:nth-of-type(3)::after {
	top:18px;left:50%;
	margin-left:-25px;
}
.openbtn.active span:nth-of-type(1) {
top:18px;left:15px;
}
.openbtn.active span:nth-of-type(3){
top: 30px;left:15px;
}
.overlay-menu li{
width:100%;
margin: 0% 0%;
font-size:85%;
line-height:1.5em;
}	
.menu-content li a{padding: 15px 10px;}
.overlay-news li{
width:30%;
margin: 1.66%;
line-height:1.5em;
}
}
@media only screen and ( max-width :400px ) {
.menu-content .head-logo{
width: 180px;margin:20px 0 20px 20px;
}
}

/*****************************************************

フッター

*****************************************************/

footer{
	width:100%;
	bottom:0;
	margin: 0 auto 0;
	padding: 3rem 0 8rem;
	background:url("../image/common/bg-gray.jpg")no-repeat;
	background-attachment: fixed;
	background-size: cover; 
	background-position: center;
	color:#fff;
	font-weight:100;
}
.ft-logo{
	width: 180px;
	margin: 0 0 1.5rem;
}
.ft-logo img{width:100%;}
.foot-inner{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items: stretch;
	width: 90%;
	max-width:1200px;
	margin:0 auto;
}
.ft-info{width:50%;}
.foot-menu{
	width:50%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
.foot-menu ul{
	width:50%;
	border-left:0.75px solid #fff;
	box-sizing:border-box;
}
.foot-menu ul li{
	line-height: 0.25rem;
	font-size:0.8em;
}
.foot-menu ul li a{
	display:block;
	padding:1rem 0 1rem 2rem;
}
.foot-menu ul li a:hover{
	background:#ccc;
	border-radius:0;
	color:#231815;
	border:0;
}
.infobox{
	font-size:1.0em;
	line-height: 1.5rem;
}

.infobox span{
	font-size:0.8em;
	display:block;
}
.infobox span.name{
	font-size:1.1em;
	margin:0 0 8px;
}
.ftbox{
	width: 90%;
	max-width:1200px;
	height:30px;
	margin: 2rem auto;
}
.ftbox .sns{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	width:100%;
	max-width: 150px;
}
.ftbox .sns li{width: 33%;}
.ftbox .sns li a{
	width:100%;
	padding: 16px 2px;
	background-size: 25px;
	cursor: pointer;
	display:block;
}
.sns li:first-child a{background:url("../image/common/ic-instagram.svg")no-repeat center;}
.sns li:nth-child(2) a{background:url("../image/common/ic-facebook.svg")no-repeat center;}
.sns li:last-child a{background:url("../image/common/ic-youtube.svg")no-repeat center;}
.copyright{
	width: 90%;
	max-width:1200px;
	margin:0 auto;
	font-size:0.8em;
	font-weight:100;
}
@media screen and (max-width:700px){

.foot-menu ul{
	width:100%;
	border-left:0px solid #fff;
	padding:0;
}
.foot-menu ul li{
	border-bottom:0.75px solid #fff;
	padding:0rem 0;
	line-height: 1.0rem;
}

.ft-info{
	width:100%;
	margin:0 0 1rem;
}
.foot-menu{width:100%;}
}

/*****************************************************

メインコンテンツ

*****************************************************/
.content {
	width:100%;
}
.content h2{
	text-align:center;
	font-size:1.8em;
	font-weight:500;
	line-height:1.5em;
}
@media screen and (max-width:700px){
.content h2{
	font-size:1.5em;
}	
}
@media screen and (max-width:480px){
.content h2{
	font-size:1.2em;
}
.content h2 span{
	display:block;
}
}
/*--- logobox ---------------------*/
.logobox{
	 width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
 position:relative;
}
.logobox .box{
	max-width: 350px;
	position: absolute;
	top: 50%;left: 50%;
	transform: translate(-50%, -50%);
	z-index:-1;
}
.logobox .box img{width:100%;}
.logo-blur {
  opacity: 0;
  filter: blur(10px);
  transition: opacity 1.5s ease, filter 1.5s ease;
}
.logo-blur.show {
  opacity: 1;
  filter: blur(0);
}
@media screen and (max-width:600px){
.logobox .box{
	min-width: 280px;
}
}
/*--- kokuchi ---------------------*/


.kokuchi{
	width:95%;
	max-width:1200px;
	margin:0 auto 5rem;
	box-sizing:border-box;
	
}
.kokuchi .sbutitle{
	text-align:center;
	padding:1.5rem 0 1rem;
	font-size:1.3em;
}

.kokuchi .box.glass{
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: var(--glass-radius);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* Safari対応 */
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
color:#000;
	padding:3rem 2rem;
}
.kokuchi .box p{
	text-indent: -1em;
	padding-left: 1em;
}
.kokuchi .box dl{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	border-bottom:0.5px dashed #000000;
	padding:1rem 0;
}
.kokuchi .box dl dt{
	width: 150px;
}
.kokuchi .box dl dd{
	width:calc(100% - 150px);
}
@media (prefers-reduced-transparency: reduce){
.kokuchi .box.glass{backdrop-filter: none;}
}
@media screen and (max-width:700px){
.kokuchi .box dl dt{
	width:100%;
}
.kokuchi .box dl dd{
	width:100%;
}
.kokuchi .box.glass{
	padding:2rem 1.5rem;
}
}
/*--- about ---------------------*/
.aboutbox{width: 100%;}
.aboutbox .box{
	width: 95%;
	max-width: 1200px;
	margin:2rem auto 5rem;
}
.aboutbox .box p{
	text-indent: -1em;
	padding-left: 1em;
}

.aboutbox .concertbox.glass{
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: var(--glass-radius);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px); /* Safari対応 */
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
  color:#000;
  padding: 3rem 2rem;
  margin: 0 auto 5rem;
}
.aboutbox .concertbox dl{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	border-bottom:0.5px dashed #000000;
	padding:1rem 0;
}
.aboutbox .concertbox dl dt{
	width: 150px;
}
.aboutbox .concertbox dl dd{
	width:calc(100% - 150px);
}
@media (prefers-reduced-transparency: reduce){
.aboutbox .concertbox.glass{backdrop-filter: none;}
}
.aboutbox .box .text{/* margin:2rem auto 5rem; */}
.aboutbox .box dl.author{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: stretch;
	align-items: center;
	margin: 0 auto 5rem;
	width:600px;
}

dl.author dt{
	width:50%;
	text-align:center;
	font-size:0.8em;
	line-height:2.2rem;
}

dl.author dt span{display:block;}
dl.author dt span.name{font-size:2.0em;}
dl.author dt span.kana{font-size:0.9em;}
dl.author dd{width:50%;}
dl.author dd .ph{
	width:100%;
	max-width:200px;
	height: 250px;
	border-radius:10px;
	background:url("../image/common/kitaharahakushu.jpg")no-repeat center;
	background-size: cover;
	box-sizing:border-box;
	margin:0 auto;
}
@media screen and (max-width:700px){
.aboutbox .concertbox.glass{
	padding:2rem 1.5rem;
}
.aboutbox .concertbox dl dt{
	width:100%;
}
.aboutbox .concertbox dl dd{
	width:100%;
}
.aboutbox .box dl.author{
	width:100%;
}
dl.author dt{
	width:100%;
	 -webkit-order: 2;
	order: 2;
}	
dl.author dd{
	width:100%;
	margin:0 0 1.5rem;
}	
}

/*--- cantata ---------------------*/
.cantatabox{width: 100%;}
.cantatabox .box{
	width: 95%;
	max-width:1200px;
	height: 100%;
	margin:4rem auto;
	padding:4rem 0;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
}
.cantatabox .box ul{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	width: 100%;
	margin: 5rem auto 0;
}
.cantatabox .box ul li{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	width: 24.90%;
	font-size:1.2em;
	border-right:1px dashed #fff;
	margin: 0 0 3rem;
}
.cantatabox .box ul li:nth-child(4),
.cantatabox .box ul li:nth-child(8){
	border-right:0;
}

.cantatabox .box ul li .en{
	writing-mode: horizontal-tb;
	text-align:center;
}
.cantatabox .en span {
	display: inline-block;
	background-color: white;
	color: #000;
	border-radius: 50%;
	width: 60px;height: 60px;
	line-height: 60px;
	font-size:0.7em;
	font-weight: bold;
}
.cantatabox .text {width:100%;max-width:200px;margin-top: 10px;line-height:1.5em;}
.cantatabox .text .title {
	text-align:center;
	border-bottom:1px solid #fff;
	padding: 0 0 1rem;
	margin: 0 0 1.5rem;
	font-size: 1.1em;
}
.cantatabox .text span{
	display:block;
	text-indent: 0em;
	font-size: 0.9em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	margin:0 auto;
}
.cantatabox .text .num {
	display: inline!important;
	text-combine-upright: all;
	font-size:1em;
	padding: 0.2em 0 0.2em;
}

@media screen and (max-width:1000px){
.cantatabox .box{
	width: 90%;
}
.cantatabox .box ul{
	width: 100%;
	margin:3rem auto 0;
}
.cantatabox .box ul li{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	flex-direction: row;
	width:100%;
	padding:2rem 0;
	box-sizing:border-box;
	border-right:0px dashed #fff;
	border-bottom:1px dashed #fff;
	margin: 0 0 2rem;
}
.cantatabox .box ul li:nth-child(8){
	border-bottom:0;
}
.cantatabox .box ul li .en{
	width: 60px;
	font-size:0.9em;
}
.cantatabox .text {
	width: calc(100% - 60px);
	max-width:unset;
	margin: 0px;
	padding:0 0 0 1rem;
}
.cantatabox .text .title {
	text-align:left;
	display:inline-block;
	border-bottom:1px solid #fff;
	padding: 0 0 0.75rem;
	margin: 0 0 1rem;
}
.cantatabox .text span{
	display:block;
	text-indent: 1em;
	padding-top:0;
	writing-mode: horizontal-tb;
}
.cantatabox .text span br{
	display:none;
}
}

@media screen and (max-width:480px){
.cantatabox .box ul li{
	width:100%;
	box-sizing:border-box;
}	
}

/*--- activity ---------------------*/
.activitybox{width:100%;}
.activitybox .box{
	width: 95%;
	max-width:1200px;
	height: 100%;
	margin:0 auto;
	padding:4rem 0;
}
.activitybox .box ul{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: stretch;
	align-items: stretch;
	margin:4rem auto;
}
.activitybox .box ul li{
	width:30%;
	margin:0 1.66%;
	text-align:center;
}
.activitybox .box ul li a{
	display:block;
	padding:4rem 2rem;
	background: #000000cf;
	border-radius:8px;
	cursor:pointer;
	font-size: 0.9em;
}
.activitybox .box ul li a .ph{
	border-radius: 50%;
	width: 80px;
	height: 80px;
	padding:20px ;
	margin:0 auto 20px;
	display:block;
}
.activitybox .box ul li:first-child a .ph{
	background:url("../image/common/sponsorship.jpg")no-repeat center;
	background-size:cover;
}
.activitybox .box ul li:nth-child(2) a .ph{
	background:url("../image/common/members.jpg")no-repeat center;
	background-size:cover;
}
.activitybox .box ul li:last-child a .ph{
	background:url("../image/common/activity.jpg")no-repeat center;
	background-size:cover;
}
@media screen and (max-width:700px){
.activitybox .box ul li a .ph{
	border-radius: 50%;
	width: 60px;
	height: 60px;
	padding:20px;
	margin:0 auto 20px;
	display:block;
}
}
@media screen and (max-width:600px){
.activitybox .box{
	width: 90%;
}
.activitybox .box ul li{
	width:100%;
	margin:0.5rem auto;
	text-align:center;
}
}

/*--- news ---------------------*/
.newsbox{
	width:100%;
	bottom:0;
	margin: 0 auto 0;
	padding: 5rem 0;
	background:url("../image/common/bg-gray.jpg")no-repeat center;
	background-size: cover;
	color:#fff;
	font-weight:100;
}
.newsbox .box{
	width:95%;
	max-width: 700px;
	margin:0 auto;
}
.newsbox .box .news-tl{margin:2rem 0 0;}
.news-tl dl{
	display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;-webkit-align-items: stretch;align-items: center;
	width:100%;
	margin:0 0 1.3rem;
}
.news-tl dl dt{
	display: -webkit-flex;display: flex;-webkit-justify-content: flex-start;justify-content: flex-start;
	width:300px;
}
.news-tl dl dt .data{
	width:50%;
	text-align:center;
}
.news-tl dl dt .cat{
	width:50%;
	text-align:center;
	background:#fff;
	color:#231815;
	border-radius:5px;
	font-size:0.8em;
}
.news-tl dl dd{
	width: calc(100% - 300px);
	padding:0 0 0 2rem;
	box-sizing:border-box;
	line-height:1.5rem;
}
@media screen and (max-width:600px){
.newsbox .box{
	width:90%;
	max-width: 700px;
	margin:0 auto;
}
.news-tl dl{
	border-bottom:1px dashed #fff;
	margin:0 0 1.5rem;
	padding:0 0 1.5rem;
}
.news-tl dl dt{
	width:100%;
	max-width: 500px;
	margin:0 0 1rem;
}
.news-tl dl dd{
	width: 100%;
	padding:0 0 0 0rem;
	line-height:1.5rem;
}
.news-tl dl dt .data{
	width:150px;
	text-align:left;
}
.news-tl dl dt .cat{
	width:calc(100% - 150px);
	max-width:120px;
}
}

/*--- access ---------------------*/
.accessbox{width:100%;}
.accessbox .box{
	display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-around;justify-content: space-around;align-items: center;
	width: 95%;
	max-width:1200px;
	height: 100%;
	margin:5rem auto;
	padding:5rem 0;
}
.accessbox .box .info{
	width:45%;
	padding: 3rem;
	box-sizing:border-box;
}
.accessbox .box .map{width:55%;}
.accessbox .box .info p{
	text-align:center;
	margin:2rem 0;
}
.accessbox .box .info p span{
	display:block;
	text-align:center;
}
.accessbox .box .info .obi{
	padding:0.25rem 1rem;
	margin:1rem auto;
	box-sizing:border-box;
	border:1px solid #fff;
	line-height:1.5rem;
}
.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
@media screen and (max-width:700px){
.accessbox .box{
	width: 100%;
	height: 100%;
	margin:5rem auto;
	padding:5rem 0;
}
.accessbox .box .info p span{
	line-height:1.5em;
}
.accessbox .box .info .obi{
	font-size:0.8em;
	line-height:1.5em;
}
.accessbox .box .info{
	width:90%;
	padding: 3rem 0;

}
.accessbox .box .map{width: 90%;}
.ggmap {
	position: relative;
	padding-bottom: 100%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

}
/*****************************************************

ページコンテンツ

*****************************************************/
.page-content {
	width:100%;
}
.titlebox{
	width:100%;
	padding:2rem 0;
}
.newsbg .titlebox{
	width:100%;
	margin-top:120px;
	padding:2rem 0;
}
.titlebox h1{
	text-align:center;
	font-size:2em;
	padding:2rem 0;
	text-shadow: 2px 2px 5px rgb(0 0 0 / 35%);
}
.page-content h2{
	text-align:center;
	font-size:1.8em;
	font-weight:500;
	line-height:1.5em;
}
.page-content .mainbox h2{
	text-align:left;
	font-size:1.8em;
	font-weight:100;
	line-height:1.5em;
	color:#3c7795;
	margin:0 0 20px;
}
.page-content .mainbox dl.catbt{
	width:100%;
	max-width:500px;
	font-size:0.9em;
	font-weight:100;
	line-height:1.5em;
	color:#3c7795;
	margin:0 0 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
}
.page-content .mainbox dl.catbt dt{
	width:120px;
	box-sizing:border-box;
	border:1.5px solid #3c7795;
	border-radius:5px;
	text-align:center;
	padding:5px;
}
.page-content .mainbox dl.catbt dd{
	width: calc(100% - 120px);
	box-sizing:border-box;
	padding:5px 5px 5px 20px;
}

.page-content h3{
	text-align:center;
	font-size:1.3em;
	font-weight:500;
	line-height:1.5em;
	position: relative;
	width:110px;
	margin:0 auto 2rem;
	padding: 0 55px;
}

.page-content h3:before,
.page-content h3:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: black;
}
.page-content h3:before {left:0;}
.page-content h3:after { right: 0;}


.page-inner{
	width:90%;
	max-width:1200px;
	margin: 10rem auto 10rem;
}
@media screen and (max-width:700px){
.titlebox h1{
	text-align:center;
	font-size:1.8em;
}
.page-content h2{
	font-size:1.5em;
}
.page-content .mainbox h2{
	font-size:1.5em;
}
}
@media screen and (max-width:480px){
.titlebox h1{
	text-align:center;
	font-size:1.5em;
}
.page-content h2{
	font-size:1.2em;
}
.page-content .mainbox h2{
	font-size:1.2em;
}
.page-content h3{
	font-size:1.0em;
	width:80px;
}
}
/*****************************************************

運営・協賛

*****************************************************/

/*--- greeting ---------------------*/
.greeting{
	width:100%;
}
.greeting .box{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: stretch;
	align-items: center;
	max-width:960px;
	background:#ffffffed;
	color:#000;
	padding:2rem;
	margin:0 auto 4rem;
	box-sizing:border-box;
}
.greeting .box .l-box{width:40%;}
.greeting .box .r-box{width:60%;}
.greeting .box .r-box p{
	padding:0 0 1.5rem;
	line-height:1.8em;
	font-weight:300;
}

.greeting .box .l-box .mei{
	text-align:center;
	font-size:1.4em;
	font-weight:500;
	margin:0 0 1.8rem;
}
.greeting .box .l-box .ph{
	width:100%;
	max-width:180px;
	height: 250px;
	border-radius:10px;
	background:url("../image/common/tachibana-kaicho-c.jpg")no-repeat center;
	background-size: cover;
	box-sizing:border-box;
	margin:1rem auto;
}
.greeting .box .l-box .cap{
	text-align:center;
	font-size:0.8em;
	font-weight: 400;
	line-height:1.8em;
}

@media screen and (max-width:800px){
.greeting .box .l-box{width:100%;margin:0 0 2rem}
.greeting .box .r-box{width:100%;}	
}

/*--- sponsorship ---------------------*/
.sponsorship{
	width:100%;
}
.sponsorship .box{
	max-width:960px;
	background:#ffffffed;
	color:#000;
	padding: 5rem;
	margin:0 auto;
	box-sizing:border-box;
}
.greeting .box .textbox,
.sponsorship .box .textbox{
	font-weight:300;
	line-height:1.8em;
	margin:2rem auto;
}
.sponsorship .box .textbox ul{
	margin:2rem 0;
}
.sponsorship .box .nedan {
	text-align:center;
	margin:5rem 0 0;
}
.sponsorship .box .nedan .text{
	display:block;
	border-bottom:1px solid #000;
	padding:0 0 1rem;
	margin:0 0 1rem;
	font-size:1.0em;
	font-weight:500;
}
.sponsorship .box .nedan .kingaku{
	display:block;
	font-size:1.5em;
	font-weight:100;
	line-height:1.8em;
}

@media screen and (max-width:800px){
.sponsorship .box{
	padding: 2rem;
}	
}
/*****************************************************

団員募集

*****************************************************/
.members{
	width:100%;
}
.members .box{
	max-width:960px;
	background:#ffffffed;
	color:#000;
	padding: 5rem;
	margin:0 auto;
	box-sizing:border-box;
}
.members .box .text{
	margin:2rem auto;
	font-size:0.9em;
	font-weight:400;
	line-height:1.8em;
}
.members .box .cap{
	margin: 0 auto 1rem;
	text-align:center;
	font-weight:600;
	line-height: 1.5em;
	font-size:1.3em;
}
.members .box .ph{
	width:100%;
	background:url("../image/common/140th-performance.jpg")no-repeat center;
	background-size: cover;
	box-sizing:border-box;
	margin:0 auto 5rem;
	padding:0 0 60%;
}
.minibox{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	-webkit-align-items: stretch;
	align-items: stretch;
	justify-content: space-between;
}
.minibox .l-box,.minibox .r-box{
	width:48%;
	background:#b2bccb;
	margin:0 2% 0 0;
	padding:2rem;
	box-sizing:border-box;
	opacity:1;
}
.minibox .r-box{
	background:#e1c8c8;
	margin:0 0 0 2%;
}
.minibox .l-box span{
	display:block;
	text-align:center;
	line-height:1.8em;
}
.minibox .l-box span.a{font-size:0.9em;}
.minibox .l-box span.b{font-size:1.5em;}
.minibox .l-box span.c{
	font-size:0.8em;
	font-weight:100;
}
.minibox .r-box span{
	display:block;
	text-align:center;
	line-height:1.8em;
}
.minibox .r-box span.a{font-size:0.9em;}
.minibox .r-box span.b{font-size:1.5em;}

@media screen and (max-width:800px){
.members .box{
	padding: 2rem;
}
.members .box .ph{
	width:100%;
	height:auto;
	background-position-y:top;
	background-size: 100%;
	margin:0 auto 3rem;
}
}
@media screen and (max-width:480px){
.minibox .l-box,.minibox .r-box{
	width:100%;
	margin:0 0 2% 0;
}
.minibox .r-box{
	margin:2% 0 0 0;
}
}

/*****************************************************

アクセス

*****************************************************/
.access{
	width:100%;
}
.access .box{
	max-width:960px;
	background:#ffffffed;
	color:#000;
	padding: 5rem;
	margin:0 auto;
	box-sizing:border-box;
}

.access .box .info{
	width:50%;
	padding: 0;
	margin:0 auto;
	box-sizing:border-box;
}
.access .box .map{width:50%;}
.access .box .info p{
	text-align:center;
	margin:2rem 0;
}
.access .box .info p span{
	display:block;
	text-align:center;
}
.access .box .info .obi{
	width:90%;
	padding:0.25rem 1rem;
	margin:1rem auto;
	box-sizing:border-box;
	border:1px solid #607D8B;
	line-height:1.5rem;
}

@media screen and (max-width:1200px){
.access .box{
	margin: 0rem auto;
	padding: 3rem;
}
}
@media screen and (max-width:700px){
.access .box{
	width: 100%;
	height: 100%;
	margin: 0rem auto;
	padding: 2rem;
}
.access .box .info p span{
	line-height:1.5em;
}
.access .box .info .obi{
	font-size:0.8em;
	line-height:1.5em;
}
.access .box .info{
	width: 100%;
	padding: 0 0 3rem;
}
.access .box .map{width: 90%;}

}

/*****************************************************

お問い合わせ

*****************************************************/
.contactbox{
	width:100%;
}
.contactbox .box{
	max-width:960px;
	background:#ffffffed;
	color:#000;
	padding: 4rem 5rem;
	margin: 0 auto 20rem;
	box-sizing:border-box;
}
.contactbox .box .textbox{
	width:100%;
	max-width:400px;
	margin:3rem auto 0;
}
.contactbox .box .textbox a[href^="tel:"] {
pointer-events: none;
	color:#000;
}

@media screen and (max-width:768px)	{
.contactbox .box .textbox a[href^="tel:"] {
pointer-events: auto!important;}
}

@media screen and (max-width:600px){
.contactbox .box{
	max-width:960px;
	padding: 2rem 2rem;
	margin:0 auto;}

.contactbox .box .textbox p a{
	color:#000;
 }

}

   
@media screen and (max-width:480px){
.contactbox .box .textbox{
	width:100%;
	margin:3rem auto 0;
}
.contactbox .box .textbox span{
	display:block;
}
}
/*****************************************************

プライバシー

*****************************************************/
.privacy{
	width:100%;
}
.privacy .box{
	max-width:960px;
	background:#ffffffed;
	color:#000;
	padding: 5rem;
	margin:0 auto;
	box-sizing:border-box;
}
.privacy h2{
	text-align:left;
	font-size:1.8em;
	font-weight:500;
	line-height:1.5em;
	margin: 2rem 0 1rem 0;
    padding: 0.3rem 0 0.3rem 20px;
    border-left: 5px solid #3c7795;
}
.privacy ol{
	margin:0 0 0 2rem;
}
.privacy ol li {
	list-style-type:auto;
}
.privacy ol li::marker {
    font-size: 130%;
    font-weight: 700;
    color: #3c7795;
}
@media screen and (max-width:700px){
.privacy .box{padding: 2rem;}
.privacy h2{
	font-size:1.5em;
	padding: 0.5rem 0 0.5rem 20px;
}	
}
@media screen and (max-width:480px){
.privacy h2{font-size:1.3em;}	
}

/*****************************************************

お知らせ

*****************************************************/

.news-inner .page-ph{
	width:100%;
	max-width:700px;
	margin:0 0 1.5rem;
}
.news-inner .page-ph img{
	width:100%;
}
.news-inner p{
	font-size:1.0em;
	line-height:1.8em;
}
.newsarea{
	width:100%;
	bottom:0;
	margin: 0 auto 0;
	padding: 5rem 0;
	background:#fff;
	background-size: cover;
	color:#000;
	font-weight:100;
}
.newsarea .box{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-webkit-align-items: stretch;
	align-items: stretch;
	width: 95%;
	max-width: 1200px;
	margin:3rem auto 5rem;
	justify-content: space-between;
}
.newsarea .box .mainbox{
	width: 700px;
}
.newsarea .box .sidebox{
	width: calc(100% - 700px);
}
.mainbox .news-tl{margin: 0 0 0;}
.mainbox .news-tl dl{
	display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;-webkit-align-items: stretch;align-items: center;
	width:100%;
	margin:0 0 1.5rem;
	padding:0 0 1.5rem;
	border-bottom:1px dashed #3c7795;
	font-weight:300;
}
.mainbox .news-tl dl dt{
	display: -webkit-flex;display: flex;-webkit-justify-content: flex-start;justify-content: flex-start;
	width:300px;
}
.mainbox .news-tl dl dt .data{
	width:50%;
	text-align:center;
}
.mainbox .news-tl dl dt .cat{
	width:50%;
	text-align:center;
	background:#3c7795;
	color:#fff;
	border-radius:5px;
	font-size:0.8em;
}
.mainbox .news-tl dl dd{
	width: calc(100% - 300px);
	padding:0 0 0 2rem;
	box-sizing:border-box;
	line-height:1.5rem;
}
.mainbox .news-tl dl dd a{
	color:#000;
}
.sidebox .hako{
	width:70%;
	margin:0 auto ;
}
.sidebox .name{
	color:#3c7795;
	font-weight:500;
	margin:0 0 1rem;
}
.sidebox ul.cat{
	margin:0 0 2rem;
}
.sidebox ul.cat li{
	width:90%;
	margin:0 0 1rem;
	padding:0 0 1rem;
	border-bottom:1px solid #000;
	font-size:0.8em;
	font-weight:300;
	line-height:1.5em;
}
.sidebox ul.cat li:after{
	content:"";
	padding:8px 8px;
	background:url(../image/common/yajirushi.svg)no-repeat;
	background-size:8px;
	background-position-y:center;
	float:right;
}
.sidebox ul.cat li a:hover{
	
}
.sidebox .sns{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	width:100%;
	max-width: 150px;
}
.sidebox .sns li{width: 33%;}
.sidebox .sns li a{
	width:100%;
	padding: 16px 2px;
	background-size: 25px;
	cursor: pointer;
	display:block;
}
.sidebox .sns li:first-child a{background:url("../image/common/ic-instagram-g.svg")no-repeat center;}
.sidebox .sns li:nth-child(2) a{background:url("../image/common/ic-facebook-g.svg")no-repeat center;}
.sidebox .sns li:last-child a{background:url("../image/common/ic-youtube-g.svg")no-repeat center;}

@media screen and (max-width:1000px){
.newsarea .box .mainbox{
	width:100%;
	margin:0 auto 2rem;
}
.newsarea .box .sidebox{
	width: 100%;
}
.sidebox .hako{
	width:100%;
	margin:0 auto;
}
.sidebox ul.cat li{
	width:100%;
}
}

@media screen and (max-width:600px){
.newsarea .box{
	width:90%;
	max-width: 700px;
}
.mainbox .news-tl dl{
	margin:0 0 1.5rem;
	padding:0 0 1.5rem;
}
.mainbox .news-tl dl dt{
	width:100%;
	max-width:400px;
	margin:0 0 1rem;
}
.mainbox .news-tl dl dd{
	width: 100%;
	padding:0 0 0 0rem;
	line-height:1.5rem;
}
.mainbox .news-tl dl dt .data{
	width:150px;
	text-align:left;
}
.mainbox .news-tl dl dt .cat{width:calc(100% - 150px);}
}