	
@charset "utf-8";
/* エンコードがUTF-8であることを指定 */
/*
theme Name: Nagoya-Spiel-Sinfoniker-2025
Author: SpielSinfoniker2025
Description: original theme
version： 1.0.0
*/

/*-------------------------------  ブラウザ独自のスタイルをリセット　------------------------------*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,
blockquote,pre,abbr,address,cite,code,del,dfn,em,img,
ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,
ol,ul,li,fieldset,form,label,legend,table,caption,
tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,
figcaption,figure,footer,header,hgroup,menu,nav,section,
summary,time,mark,audio,video {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}
 
body {
  line-height: 1;
}
 
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
  display: block;
}
 
ul {
  list-style-type: none;
    -webkit-appearance: none;

}

li {
  list-style-type: none;
    -webkit-appearance: none;

}

blockquote,
q {
  quotes: none;
}
 
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
 
a {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
}
 
ins {
  text-decoration: none;
  color: #333;
  background-color: #ff9;
}
 
mark {
  font-weight: bold;
  font-style: italic;
  color: #333;
  background-color: #ff9;
}
 
del {
  text-decoration: line-through;
}
 
abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}
 
table {
  border-spacing: 0;
  border-collapse: collapse;
}
 
hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}


/*--------------------------------  サイト全体の基準となるスタイル  --------------------------------*/
body {
    /*フォント情報*/
    font-family: "segoe UI", "YuGothic", "游ゴシック体", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #EEE;
}

/*画像の最大幅を画面のサイズの最大幅に設定*/
img {
  max-width: 100%;
  height: auto;
}

/*電話番号・メールリンクの文字装飾をリセット*/
a[href^="tel:"] {
        text-decoration: none;
        color:inherit;
	}

a[href^="mailto:"] {
        text-decoration: none;
        color:inherit;
	}

/*電話番号リンクをPC閲覧時に無効化*/
@media screen and (min-width: 550px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

/*見出しは全て太字で表示*/
h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
}


/*コンテンツのサイズ指定*/
.header-inner, .container, .footer-inner {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; /* paddingを指定したときにコンテンツサイズが大きくなるのを防ぐが、その分子要素が小さくなる*/
}

.container {
    padding: 10px;
}

.contents, #sidebar {
  margin: 5px 0;
}

/*主なエリアの背景色*/
.container {background-color: #FFF; }
header {background-color: #EEE}
.header-inner{ background-color: #FFF;}
.sitetitle {background-color: #FFF;}
.orchestra-name {background-color: #FFF; }
.FB {background-color: #FFF; }
.IG {background-color: #FFF; }
#header-nav {background-color: #151515; }
@media(min-width: 550px) { 
.header-nav ul {background-color: #151515; }
.header-nav li:hover {background-color: #222; }
}
@media(max-width: 550px) { 
    .navbutton {background-color: transparent;  }
    .header-nav ul {background-color: #181818; }
}
.carousel-area{background-color: #111; }
.kiji h1 {background-color: #C70407 /*#353535*/; }
.shuryo {background-color: #444 !important;}
.danin {background-color: #151515 /*#E86E13*/!important;}
.post h1 {background-color: #151515 /*#E86E13*/!important;}
.sidebar-FB {background-color: #3B5998;}
.sidebar-IG {background-color: #BC2A85;}
.sidebar-TW {background-color: #00ACEE;}


/*---------------------------------------  ヘッダー　 ---------------------------------------*/
/*配置*/
.header-inner { 
    position: relative; 
} 
.sitetitle:after {
    display: block;
    clear: both;
    content: '';
  }
.sitetitle {
    position: relative;
    border-top: solid 0.5vw #C70407;
}
 .sitetitle a { 
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
} 

/*サイトタイトル部分の高さ指定*/
.sitetitle {
    height: 7.5vw;
}

@media (max-width: 550px) {
    .sitetitle{
        height: 10vw;
    }
}
    
/*ロゴとSNSボタンを横並びにする*/
.sitetitle {
    text-align: left;
}
.sitetitle a {
    display: inline-block;
}
.orchestra-name {
    width: 85%;
}
.TW {
    left: 83%;
    width: 4%;
}
.FB {
    left: 88%;
    width: 5%;
}
.IG {
    left: 94%;
    width: 5.8%;
}

/*スマホ版のときはTWとFBとIGを非表示に*/
@media (max-width: 550px) {
.orchestra-name {
    width: 100%;
}
.TW {
    left: 100%;
    width: 0%;
}
.FB {
    left: 100%;
    width: 0%;
}
.IG {
    left: 100%;
    width: 0%;
}
}

/* パーツ周囲に不要な余白ができるのを防ぐ */
.sitetitle a {font-size: 0; }


/*ヘッダーメニュー*/
#header-nav {
  display: none;
}
 
.header-nav ul {
    margin: 0 auto;
    padding: 0;
    list-style: none;
    text-align: center;
    display: block;
}
 
.header-nav li a {
  display: block;
    margin: 0px;
    padding: 10px 5px;
    height: 35px;
  color: #FFF;
  font-weight: bold;
  font-size: 0.9em;
  text-decoration: none;
}


/*PC版の表示*/
@media (min-width: 550px) {
  #header-nav {
    display: block!important;
  }
  .header-nav {
    max-width: 1200px;
    margin: 0 auto;
    padding:0 10px;
    box-sizing: border-box;
      border-top: 1px solid #555;
  }
  .header-nav ul:after {
    display: block;
    clear: both;
    content: '';
  }
  .header-nav li {
    display: inline-block;
    width: auto;
    margin: 0;
      padding: 0 2%;

  }
  .header-nav li a {
    font-size: 1em;
    padding: 15px 0 4px 0;
  }
  #navbutton {
    display: none;
  }
}

/*スマホ版の表示*/
@media(max-width: 550px) { 
    .orchestra-name img{
        height:100%;
    } 
    
  .navbutton {
    font-size: 5vw;
    position: absolute;
    z-index: 999;
    top: 5.5vw;
    right: 0em;
    display: block;
    cursor: pointer;
    transform: translateY(-50%);
    border: 0;
    color: #353535;
  }
 
  .navbutton:focus {
    outline: 0;
  }
 
  .header-nav-wrap {
    z-index: 999;
    top: 86px;
    /*ヘッダーの高さと合わせる*/
    right: auto;
    left: 0;
    /* display: none; */
    width: 100%;
    margin-left: 0;
    transform: none;
  }
 
  .header-nav li {
    display: block;
    margin-right: 0;
  }
 
  .header-nav li a {
    position: relative;
    padding: .6rem .8rem 0 .8em;
    color: #FFF;
    border-bottom: 1px solid #888;
  }
 
  .header-nav li a:after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 1.25rem;
    display: block;
    content: '\f105';
    transform: translateY(-50%);
  }
}

.fas{
    font-size: 1.2em;
}


/*-------------------------------------  スライダー  -------------------------------------------*/
#metaslider-id-195{
    width: 88%;
    margin: auto;
}

@media (max-width: 550px) {
    #metaslider-id-195{
    width: 100%;
    }
}


/*------------------------------------  メインコンテンツ・サイドバー  ---------------------------------*/

/*メインコンテンツとサイドバーを横に並べる*/
@media (min-width: 550px) {
  .container:after {
    display: block;
    clear: both;
    content: '';
  }
  .contents {
    float: left;
    width: 70%;
    margin-right: 3%;
  }
  #sidebar {
    float: left;
    width: 27%;
  }
}

/*メインコンテンツ部分の余白*/
.kiji {
  margin: 0 0 0 0;
  padding: 0 0 25px 0;
}

/*見出し*/
.kiji h1 {
    font-size: 1.5em;
    margin: 0 0 1em 0;
    padding: .3em 0;
    color: #FFF;
    /* border-bottom: solid 4px #C70407; */
    text-align: center;
}

.shuryo{
    margin: 2.5em 0 1em 0 !important;
}
 

.kiji h2 {
    font-size: 1.3em;
    margin: 1.5em 0 0.3em 10px;
    padding: 0;
    border-bottom: solid 1px #444;
}

.kiji h3 {
    font-size: 1.2em;
    margin: 0 0 0.3em 10px;
    padding: 0;
    border-bottom: solid 2px #777777;
    background: transparent;
}
 
.kiji h4 {
  font-size: 1.2em;
  margin: 0 0 .3em 10px;
        padding: 0;

}
 
.kiji h5 {
  font-size: 1.1em;
  margin: 0 0 .3em 10px;
        padding: 0;

}

@media (max-width: 550px) {
  .kiji {
    font-size: 90%;
    padding: 0 10px 25px 10px;
  }
  .kiji h1 {
    font-size: 1.1em;
  }
  .kiji h2 {
    font-size: 1.1em;
      margin: 1.5em 0 0.3em 0;

  }
  .kiji h3 {
    font-size: 1em;
          margin: 0 0 0.3em 0;
  }
  .kiji h3:after {
    display: none;
  }
  .kiji h4 {
    font-size: 1em; 
    margin: 0 0 0.3em 0;

  }
  .kiji h5 {
    font-size: 1.2em;
      margin: 0 0 0.3em 0;

  }
}

/*本文*/
.kiji p, table {
    margin: 0 0 2em 10px;
    padding: 0;
    font-size: 0.9em;
}

.kiji section {
    font-size: 0.9em;
}

@media (max-width: 550px) {
    .kiji p{
        margin: 0 0 2em 0;       
    }
}

.small {
    font-size: 0.8em;
}

/*チラシ画像*/
.flyer {
    margin: 0 auto 20px auto !important;
    width: 45%;
    max-width: 250px;
    font-size: 0.8em;
}


/*本文とチラシ画像を横に並べる*/
.flyer {
    width:70%;
    max-width: 550px;
}

@media (min-width: 550px) {
  .honbun:after {
    display: block;
    clear: both;
    content: '';
  }
  .program {
    float: left;
    width: 70%;
    margin-right: 3%;
  }
  .flyer {
    float: left;
    width: 27%;
  }
}

/*前のページに戻る*/
.modoru a:before{
    content:"<< ";
}

.modoru{
    margin: 0 0 20px 10px;
    font-size: 0.8em;
}

/*もっと見る*/
.more a:after{
    content:">> ";
}

.more{
    margin: 0 0 20px 10px;
    font-size: 0.8em;
    text-align: right;

}

/*記事冒頭に写真を掲載する際に左側の余白をキャンセル*/
.photo {
    margin-left:0 !important; 
}

/*aboutページ　ロゴマーク周囲の空白*/
.spiel_logo{
    margin: 3em 5em !important;
}

/*集合写真等　pの下の余白を少なくする*/
.bottomless{
    margin-bottom: .5em !important;
}

/*演奏会情報　曲目の上の余白を0にする*/
.bottom0{
    margin-bottom: 0 !important;
}

/*曲目　4字分インデントする*/
.indent4 {
    text-indent: -4em;
    padding-left: 4em !important;
}

/*1字分インデントする*/
.indent1 {
    text-indent: -1em;
    padding-left: 1em !important;
}

/*Youtubeの埋め込み動画の横幅をレスポンシブ対応にする*/
.youtube {
position: relative;
width: 100%;
padding-top: 56.25%;
}

.youtube iframe{
position: absolute;
top: 0;
right: 0;
width: 100% !important;
height: 100% !important;
}

/*フォーム*/
form p {
    margin-bottom: 1em !important;
}

.form p.bottom0 {
    margin-bottom: 0;
}

.form-btn {
    position: relative;
    display: inline-block;
    padding: 0.5em 1em;
    margin:0.5em 0;
    font-weight: bold;
    text-decoration: none;
    color: #FFF;
    background: #444;/*色*/
    border: solid 1px #444;/*線色*/
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}

.form-btn:hover {
    opacity:.6;
}

.form-btn:active {
    border: solid 1px #03A9F4;
    box-shadow: none;
    text-shadow: none;
}

.form {
    margin-top: 20px;
    margin-bottom: 15px;
}

form h5 {
    font-size: 0.9em !important;
}

input[type="text"],
input[type="email"],
input[type="number"],
textarea {
    	background-color: #fff;
	color: #333;
	width: 95%;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}

input[type="submit"] {
/*    position: relative; */
    display: inline-block; 
    padding: 0.5em 1em;
    margin:0.5em 0;
    font-size: 100%;
    font-weight: bold;
    text-decoration: none;
    color: #FFF;
    background: #444;
    border: solid 1px #333;
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}

input[type="submit"]:hover {
    opacity:.6;
}

/*確認画面で本文を非表示に*/
.mw_wp_form_preview .hide {
    display: none;
}

span.wpcf7-not-valid-tip {
	font-size: 80%;
}

.horizontal-item {
    display:inline-block;
    margin-left: 0 !important;
    margin-right: 10pt;
}


.asterisk:after {
    content: "*";
	color: #d00;
}

.wpcf7 label{
    font-weight: bold;
    
}

.wpcf7 span{
    font-weight: normal;
}

.sent form {
display:none!important;
}
    
/*セレクトボックス*/
.selectbox {
	overflow: hidden;
	width: 20em;
	margin: 2em 0;
	text-align: center;
	position: relative;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #ffffff;
    }

.mw_wp_form_preview .selectbox {
    border:none;
}
    
.selectbox select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
}
.selectbox select::-ms-expand {
    display: none;
}

.selectbox::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}

.mw_wp_form_preview .selectbox::before {
    border:none;
}

.selectbox:after {
	position: absolute;
	top: 0;
	right: 2.5em;
	bottom: 0;
	width: 1px;
	content: '';
	border-left: 1px solid #bbbbbb;
}

.mw_wp_form_preview .selectbox:after {
    border:none;
}

.selectbox select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}

.mw_wp_form_preview p.selectbox {
	padding:0;
    text-align: left;
}

.checkbox + .mwform-checkbox-field-text {
    font-weight: bold;
}

/*チェックボックス*/
.checkbox {
  display: none;
}
.checkbox + .mwform-checkbox-field-text {
  position: relative;
  vertical-align: middle;
    font-weight: bold;
}

.checkbox + .mwform-checkbox-field-text:before {
  content: "\f096";
  font-family: "Font Awesome 5 Free";
  color: #ccc;
  font-size: 22px;
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.checkbox:checked + .mwform-checkbox-field-text:before {
  content: "\f14a";
  font-family: "Font Awesome 5 Free";
  color: #333;
}

/*リスト*/
@media (min-width: 550px) {
    ul {
        margin: 0 0 0 10px;
    }
}

li {
      list-style-type: none　!important;
}

ul.kome {
    padding-inline-start: 1em !important; 
    margin-top: 5px !important;
}

_::-webkit-full-page-media, _:future, :root ul.kome {
    padding-left:1em;
}

ul.kome li {
  list-style-type: none;
    text-indent: -1em;
}


ul.kome li:before {
  display: inline;
  content: "※";
}


/*カレンダー*/
.xo-event-calendar{
      margin: 0 0 .3em 10px;
}

@media (max-width: 550px) {
    .xo-event-calendar{
      margin: 0 0 .3em 0;
    }
}

.xo-event-calendar a{
    text-decoration: none;
}

.month-event-title{
    color:#FFF !important;
}

.xo-event-meta{
    display: none !important;
    height: 0;
}

.xo_event p {
    font-size: 1em !important;
}
    
/*---------------------------------------  サイドバー  -------------------------------------*/
.sidebar-wrapper {
    padding: 0;
    text-align: center;

}

@media (max-width: 550px) {
    .sidebar-inner{
        padding: 0 10px 0 10px;
    }
}
 
.sidebar-wrapper h4 {
  font-size: 1em;
  margin: 0 0 10px 0;
  padding: 5px 8px;
  color: #fff;
  text-align: center;
}

.textwidget {
    margin-bottom: 2em;
}

.sidebar-FB a{
    color: #FFF;
    text-decoration: none;
}

.deco-none{
    color: #FFF;
    text-decoration: none;
}

.fb-page {
    margin-bottom: 1em !important;   
}

.fb-page, #sb_instagram{
    width: 100%;
    text-align: center;
}

.sidebar-IG {
    margin-bottom: 5px !important;
}

.sb_instagram_header, #sbi_images {
    margin:0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.ctf-tweets {
    text-align: left;
}


/*InstagramフィードのSpiel-sinfonikerの文字色を黒に、下線をなしに*/
.sbi_header_text{
    color: #333;
    text-decoration: none;
}

/*スマホ表示時のお問い合わせページではサイドバーを非表示に

@media (min-width: 550px) {
    aside {
        display: none;
    }
} */


/*バナー画像エリア
.textwidget ul{
      list-style: none;
    padding: 0;
    text-align: center
}

.textwidget li {
    margin-bottom: 10px;
    vertical-align: middle;
    border: solid 1px #333;
}

.textwidget img{
    width: 100%;
}

.textwidget li.noborder {
    border: none;
}

@media (max-width:760px) {
    .textwidget li {
        width: 50%;
    }
}*/

/*--SNSウィジェット--
.sns-widget .share {
  margin: 0;
}
 
.sns-widget .share li {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 3px;
}
 
.sns-widget .share li i {
  font-size: 1.3em;
  padding-top: 3px;
}
 
.sns-widget .share li span {
  display: none;
}

*/

/*-----------------------------
ギャラリー
------------------------------*/
.gallery { /** ギャラリーを囲むボックス **/
	width: 100%;
	margin-bottom: 20px !important;
    overflow: hidden;
}
 
.gallery br {display: none;} /** 自動で挿入される clearfix の余白解除 **/
 
.gallery-item { /** 画像共通のスタイル **/
    float: left;
	margin-bottom: 0 !important;
}
.gallery-icon { /** 画像を囲む dt のスタイル **/
    text-align: center;
}
 
.gallery-icon img {
	width: 100%;
	height: auto;
	margin-bottom: 10px !important;
}
 
.gallery-caption { /** キャプション **/
    color: #222;
    font-size: 12px;
    margin: 0 0 10px;
    text-align: center;
}
 
.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100%;
    margin-right: 0;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 48%;
	margin: 0 1%;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 31.33333%;
	margin: 0 1%;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 23%;
    margin: 0 1%;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 18%;
    margin: 0 1%;
}
 
@media screen and (max-width: 640px) {
	/* 640px以下用の記述 */
	.gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
		width: 48%;
		margin: 0 1%;
	}
	.gallery-columns-5 .gallery-item {
		width: 31.33333%;
		margin: 0 1%;
	}
}

    
/*----------------------------------------  フッター  --------------------------------------*/
footer { 
    background-color: #EEE; 

}

.footer-inner{ 
    height: 4vw; 
    background-color: #C70407; 
}

@media (max-width:550px) {
    .footer-inner{ 
        height: 8vw; 
    }
}

.copyright {
    display: flex;
    justify-content: center; /*子要素を左右中央揃え*/
    align-items: center;     /*子要素を上下中央揃え*/
    height:100%;
}

.copyright p {
    font-size: .8em;
    color: #FFF;
}
