@charset "utf-8";

@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-Regular.woff") format("woff");
font-weight: 400;
font-style: normal;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-Italic.woff") format("woff");
font-weight: 400;
font-style: italic;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-Medium.woff") format("woff");
font-weight: 500;
font-style: normal;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-MediumItalic.woff") format("woff");
font-weight: 500;
font-style: italic;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-SemiBold.woff") format("woff");
font-weight: 600;
font-style: normal;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-SemiBoldItalic.woff") format("woff");
font-weight: 600;
font-style: italic;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-Bold.woff") format("woff");
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: "Crimson";
src: url("../fonts/CrimsonPro-BoldItalic.woff") format("woff");
font-weight: 700;
font-style: italic;
}


@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}


@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-Italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/Figtree-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
}

@font-face {
font-family: 'Figtree';
src: url('../fonts/Figtree-Bold.woff') format('woff');
font-weight: 700;
font-style: normal;
}
@font-face {
font-family: 'Figtree';
src: url('../fonts/Figtree-BoldItalic.woff') format('woff');
font-weight: 700;
font-style: italic;
}




@font-face {
font-family: 'Icomoon';
src: url('../fonts/icomoon32.woff') format('woff');
font-weight: normal;
font-style: normal;
}

[class*="xicon"],
*::before,
*::after {
font-family: 'icomoon' !important;
speak: none;
font-style: normal;
font-weight: normal !important;
font-variant: normal;
text-transform: none;
}


html {
height: 100%;
box-sizing: border-box;
}

*, *::before, *::after {
box-sizing: inherit;
}


body {
min-height: 100vh;
margin: 0;
padding: 0;
font-family: 'Crimson', serif;
font-size: 22px;
font-weight: 400;
color: #000;
hyphens: manual;
background-color: #2E3138;
}

/*** main containers ***/

.wrapper {
max-width: 1920px;
margin: 0 auto;
min-height: 100vh;
display: grid;
background-color: #fff;
}

.content {
display: grid;
grid-template-rows: auto 1fr auto;
}

header {
font-family: 'Figtree';
}

main {
position: relative;
padding: 40px 40px 80px;
background: #f4f4f4;
}
.home main {
padding: 70px 40px 100px;
}

.article main {
background: #fff;
}

#navmain {
position: relative;
width: 280px;
font-family: "Figtree";
font-size: 17px;
}



/*** navi ***/


a#navmainswitch {
display: flex;
flex-flow: row nowrap;
justify-content: space-between;
gap: 10px;
height: 44px;
font-size: 16px;
line-height: 42px;
font-weight: 700;
color: #fff;
text-transform: uppercase;
border: 1px solid #fff;
border-radius: 6px;
padding: 0 15px;
}
a#navmainswitch:hover,
a#navmainswitch:active {
color: #000;
}

a#navmainswitch::after {
content: "\e5d2";
font-size: 22px;
}

a#navmainswitch.expand {
color: #000;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
a#navmainswitch.expand::after {
content: "\e95a";
float: right;
margin-top: 0;
}


footer {
padding: 70px 30px 80px;
font-family: "Figtree";
font-size: 14px;
color: #fff;
font-weight: 400;
background-color: #3a3f47;
}


/*** end main containers ***/




/*** standard tags ***/

a {
color: #900;
text-decoration: none;
outline: none;
}

.site_title a {
text-decoration: none;
color: #000;
}
.site_title a:hover {
color: #fff;
}
a.hastip { 
display: inline-block; 
padding: 4px 6px; 
vertical-align: top; 
margin: 0; 
font: 600 12px/1 "Figtree", sans-serif; color: #000; background-color: #FFD966; border-radius: 3px;
}
a.hastip:hover {
color: #fff;
background-color: #cc9900;
text-decoration: none;
}


img {
display: block;
border: none;
}
img.bordered {
border: 1px solid #ccc;
}


p {
margin: 1em 0;
}
.press p {
margin: .5em 0;
}


strong {
font-weight: 600;
}
sup {
vertical-align: super;
font-size: 0.5em;
}

h1 {
font-family: 'Figtree';
font-weight: 400;
font-size: 38px;
text-align: center;
margin: 40px 0 50px;
line-height: normal;
}

h1.artname {
margin: 30px 0 40px;
}

h1.catname {
margin: 30px 0 30px;
}
.article_date {
display: none;
}
h2 {
font-weight: 500;
font-size: 36px;
text-align: center;
margin: 60px 0 20px;
}
h2.first {
margin: 30px;
}

h2.subtitle {
font-family: 'Figtree';
font-size: 16px;
margin: 15px 0 0;
}

.discography h2 {
font-family: 'Figtree';
font-weight: 400;
font-size: 20px;
text-align: center;
margin: -20px 0 40px;
}

h3 {
text-align: center;
font-weight: 500;
font-size: 26px;
margin: 1em 0;
}
h3.subtitle {
font-size: 26px;
margin: -20px 0 40px;
}
h3.footnotes {
font-size: 24px;
margin: 40px 0 30px;
padding-top: 30px;
border-top: 1px solid #ccc;
}
h3.rule {
font-size: 24px;
margin: 70px 0 30px;
border-top: 1px solid #ccc;
}

.footnotes_text {
font-size: 18px;
}

h4 {
font-weight: 600;
font-size: 22px;
margin: 1em 0;
}


h4.subtitle {
font-family: 'Figtree';
font-weight: 500;
font-size: 16px;
text-align: center;
margin: 15px 0 0;
}


/*** end standard tags ***/




.header-top {
display: flex;
flex-flow: row nowrap;
justify-content: space-between;
align-items: center;
padding: 35px 40px 35px;
background-color: #CC9900;
}

.header-left,
.header-right {
display: flex;
flex-flow: row nowrap;
align-items: center;
gap: 20px;
color: #fff;
position: relative;
}


.site_title {
flex: 0;
font-size: 54px;
font-weight: 700;
text-transform: uppercase;
line-height: 1;
}
.site_subtitle {
font-size: 20px;
line-height: 1.2;
}




.mast {
position: relative;
}
.mast img {
width: 100%;
}

#slideshow .slide {
position: relative;
}
#slideshow .slide_inner {
position: absolute;
left: 0;
top: 0;
}

#slideshow img {
width: 100%;

}


#slideshow figcaption,
.mastimage_container figcaption {
position: absolute;
left: 8vw;
bottom: 2vw;
z-index: 8;
padding: 12px 16px;
font-size: 14px;
background-color: rgba(255, 255, 255, 0.75);
border-radius: 4px;
}

figcaption p {
margin: 0;
}



.header_right {
flex: 1;
display: flex;
justify-content: flex-end;
align-items: center;
}


/*** search ***/

#searchswitch a {
display: block;
width: 50px;
height: 44px;
font-size: 20px;
line-height: 42px;
text-align: center;
color: #fff;
border: 1px solid #fff;
border-radius: 6px;
}
#searchswitch a::before {
content: "\f002";
}

#searchswitch a:hover {
color: #000;
}

.searchcontainer {
font-family: 'Figtree';
font-weight: 400;
font-size: 20px;
text-align: center;
}

.search_inner {
margin: 20px auto 10px;
}
.not-found {
text-align: center;
}

.inputfield {
width: 100%;
padding: 0 10px;
background-color: transparent;
border: none;
font: 400 17px/52px 'Figtree', sans-serif;
text-align: center;
color: #666;
background: #fff;
border-radius: 4px;
}
.inputfield:focus {
outline: none;
color: #000;
}
.searchbutton {
display: block;
width: 60px;
margin: 20px auto 0;
height: 42px;
font: 700 16px "Figtree", sans-serif;
padding: 10px;
border: none;
text-align: center;
color: #fff;
background: #CC9900;
border-radius: 4px;
cursor: pointer;
outline: none;
}
.searchbox:focus .searchbutton {
color: #000;
}

.searchbutton:hover,
.searchbutton:active {
background-color: #3a3f47;
}

.search_results_page {

}

/***end  search ***/


#schedule a {
display: block;
line-height: 42px;
font-size: 16px;
font-weight: 700;
color: #fff;
text-transform: uppercase;
border: 1px solid #fff;
border-radius: 6px;
padding: 0 15px 0 12px;
}
#schedule a:hover,
#schedule a:active {
color: #000;
}





#schedule a::before {
content: "\e946";
font-size: 20px;
float: left;
margin-right: 10px;
}



#contents {
display: none;
width: 280px;
position: absolute;
right: 0;
top: 40px;
background-color: #CC9900;
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
box-shadow: 0 36px 36px -10px rgba(0,0,0,0.3);
z-index: 10;
}
#contents ul {
list-style: none;
padding: 5px 15px 25px;
margin: 0;
border: 1px solid #fff;
border-top: none;
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
}

#contents li {
margin-top: 12px;
}

#contents a {
display: block;
color: #fff;
}
#contents .current a {
color: #000;
font-weight: 500;
}
#contents a:hover {
color: #000;
}



/*** end navi ***/


.motto {
font-family: 'Figtree';
font-weight: 400;
font-size: 32px;
line-height: auto;
text-align: center;
color: #CC9900;
margin: 20px 0 30px;
}
.motto::before,
.motto::after {
content: "—";
}
.motto::before {
margin-right: 7px;
}
.motto::after {
margin-left: 7px;
}

.motto_article {
font-size: 20px;
text-align: center;
}

.indent_double {
margin: 0 auto 60px;
max-width: 800px;
font-weight: 300;
line-height: 1.4;
text-align: center;
}

.blogpage h1.catname {
display: none;
}

.blog {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(360px, 430px));
gap: 40px;
justify-items: center;
justify-content: center;
}
.blog_item {
display: flex;
flex-direction: column;
background-color: #fff;
background-clip: padding-box;
}
.home .blog_item,
.discography .blog_item {
max-width: none;
}

.home .blog {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
gap: 40px;
justify-content: center;
}
.home .blog {
margin: 0 120px;
}
.home .blog.featured .blog_item:last-child {
display: none;
}

.discography .blog {
margin: 0 calc(8vw - 60px);
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 40px;
justify-items: stretch;
}

.home main,
.blogpage main {
padding-bottom: 120px
}


.blog-four.blog {
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
justify-items: stretch;
}
.blog.four .blog_item {
flex: 1 1 25%;
max-width: 600px;
min-width: 280px;
}
.blog.four .blog_item img {
margin: auto;
max-height: 280px;
object-fit: contain;
}


.blog.title-only .intro {
padding: 30px 20px 0;
}

h1.topspace_plus {
margin-top: 80px;
}

.albumpage article {
padding: 0 200px;
}
.album {
display: grid;
justify-content: center;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 30px;
}
.album .blog_item .img {
min-width: 100%;
}

.album .blog_item p {
padding: 10px 15px 15px 15px;
font-size: 17px;
line-height: 1.2em;
text-align: center;
}


.minialbum {
	margin-top: 2em;
display: grid;
justify-content: center;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 30px;
}
.minialbum .img {
min-width: 100%;
}
.minialbum .blog_item {
display: flex;
flex-direction: column;
background-color: #fff;
background-clip: padding-box;
max-width: 220px;
margin-left: auto;
margin-right: auto;
}

.minialbum p {
padding: 5px 10px;
font-size: 17px;
line-height: 1.2em;
text-align: center;
}







.card,
.pagenavcounter {
display: none;
}
.pager .pagination {
margin: 50px auto 10px;
list-style: none;
padding: 0;
justify-content: center;
}
.pager .pagination li {
padding: 0;
}




.blogpage.discography .blog_item,
.blogpage.program .blog .blog_item {
display: flex;
flex: 1 1 25%;
min-width: 320px;
flex-direction: column;
background-color: #fff;
background-clip: padding-box;
}
.blogpage.discography .blog .blog_item {
max-width: none;
}



.blog_image {
flex: 0;
}

.blog_item .intro {
position: relative;
flex: 1;
padding: 30px 20px 0;
font-weight: 300;
line-height: 1.35;
}
.blog-title-only .blog_item .intro {
padding: 30px 20px 40px;
}

.blog_item .intro p {
margin-bottom: 10px;
}
.blog_item .intro a:hover {
color: #900;
}

.blog_item img {
width: 100%;
height: 100%;
}
.blog_item img:hover {
filter: brightness(.8);
}
.discography .blog_item img {
margin: 0;
max-height: 300px;
object-fit: contain;
}

.centered {
text-align: center;
}


.blog_item .intro h3 {
margin: 0;
font-family: 'Figtree';
font-size: 23px;
font-weight: 500;
text-align: center;
}


.discography .blog_item .intro {
padding: 30px 20px 10px;
}
.discography .blog_item .intro h3 {
text-align: center;
margin: 0;
}

.discography .blog_item .intro p {
position: absolute;
left: 50%;
right: 0;
bottom: 0;
width: 90px;
font-family: 'Figtree';
font-weight: 700;
font-size: 14px;
line-height: 1;
text-align: center;
color: #000;
margin: 0 0 0 -45px;
padding: 8px 10px;
background-color: #dadada;
}

.imageless .blog_item .intro h3 {
text-align: center;
}
.imageless .blog_item .intro h3::before {
content: "\e93f";
display: block;
padding-bottom: 10px;
font-size: 20px;
color: #CC9900;
}

.imageless.articles .blog_item .intro h3::before {
content: "\e940";
padding-bottom: 10px;
}


.history .intro h3, 
.study .intro h3 {
text-align: center;
margin-bottom: 24px;
}
.intro h3::before {
display: block;
padding-bottom: 10px;
font-size: 20px;
color: #CC9900;
}
.intro h3.single::before {
content: "\e940";
}

.title_icon .intro h3::before {
content: "\e940";
display: block;
padding-bottom: 10px;
font-size: 20px;
color: #CC9900;
}
.intro h3.multiple::before {
content: "\e99f";
}

.study .blog_item .intro h3::before {
content: "\e931";
display: block;
padding-bottom: 10px;
font-size: 24px;
color: #CC9900;
}


.blog_item .intro h3 a {
color: #000;
}

.source {
font-size: 18px;
margin-left: 30px;
}
.press .source.press {
font-size: 18px;
margin: 1.25em 0 50px 0;
}

p.separator-above {
padding-top: 15px;
border-top: 1px solid #ccc;
margin-top: 2em;
}
p.separator-below {
padding-bottom: 15px;
border-bottom: 1px solid #ccc;
margin-bottom: 1.5em;
}

.pagination {
display: flex;
flex-flow: row nowrap;
margin: 50px 0 10px;
font-family: "Figtree";
font-size: 16px;
font-weight: 700;
line-height: 22px;
text-transform: uppercase;
/*color: #999;*/
justify-content: center;
}
.pagination a {
display: block;
width: 34px;
font-family: "Figtree";
font-weight: 700;
font-size: 15px;
text-align: center;
line-height: 34px;
margin: 10px;
color: #000;
background-color: #fff;
border-radius: 17px;
}

.pager .pagination a {
width: auto;
height: auto;
font-family: "Figtree";
font-weight: 700;
font-size: 16px;
text-align: center;
line-height: auto;
margin: 0;
color: #000;
background-color: transparent;
border-radius: 0;
}

.pagination a:hover {
color: #fff;
text-decoration: none;
background-color: #900;
}
.pager .pagination a:hover {
color: #900;
background-color: transparent;
}

.pagination .active a {
color: #fff;
background-color: #3a3f47;
cursor: default;
}



.pagination a.prevx,
.pagination a.nextx {
font-size: 20px;
line-height: 34px;
}



.readmore {
flex: 0;
}

.readmore a {
display: block;
font-size: 24px;
line-height: 1;
text-align: center;
color: #000;
padding: 15px 15px 25px;
margin: 0 auto;
z-index: 1;
}
.readmore a:hover {
color: #900;
text-decoration: none;
}

.readmore a::after {
content: "\e964";
}



/*** Article layout ***/

.article_container {
display: grid;
grid-template-columns: minmax(320px, 860px) 1fr;
gap: 20px;
}
.search_results_page .article_container {
display: block;
}

.breadcrumbs {
margin: 20px;
padding-bottom: 20px;
font-family: "Figtree";
font-weight: 700;
font-size: 16px;
text-align: center;
text-transform: uppercase;
}
.breadcrumbs a {
display: inline-block;
color: #000;
padding: 0 20px 5px;
border-bottom: 1px solid #333;
}

.breadcrumbs a:hover {
color: #900;
text-decoration: none;
}

.category-no-link .breadcrumbs a:hover {
cursor: default;
color: #000;
}

.no-bredcrumbs .breadcrumbs {
display: none;
}
.no-bredcrumbs h1 {
margin: 40px auto 50px;
}


p.cat-desc {
font-size: 20px;
text-align: center;
max-width: 600px;
margin: -30px auto 50px;
}
p.cat-desc:before {
content: "————";
display: block;
margin: 0 auto 20px;
}

article {
margin: 0 auto;
width: 100%;
max-width: 720px;
font-weight: 400;
line-height: 1.4;
}
.albumpage article {
max-width: none;
}




.image_container {
margin: 2em 0;
}
.image_container.middle img {
margin: 0 auto;
width: 100%;
max-width: 300px;
}

.framed {
margin: 1em 0;
border-top: 1px solid #cc9900;
border-bottom: 1px solid #cc9900;
padding-bottom: 0.5em;
}
.framed p {
margin: 0.5em 0;
}
.mastimage_container {
position: relative;
}

.image_container img {
width: 100%;
}

article a:hover {
color: #000;
text-decoration: underline;
}

.cd_image_container {
margin: 2em 0;
background-color: #e5e5e5;
}
.cd_image_container img {
width: 100%;
max-width: 500px;
max-height: 500px;
object-fit: contain;
margin: 0 auto;
}

.caption {
margin: 20px 0 0;
font-size: 18px;
line-height: normal;
text-align: center;
}


.pagenav {
display: flex;
flex-flow: row nowrap;
margin: 70px 0 0;
font-family: "Figtree";
font-size: 16px;
font-weight: 700;
line-height: 22px;
text-transform: uppercase;
color: #999;
}
.no-pagenav .pagenav {
display: none;
}


.prev,
.next {
flex: 1 50%;
display: flex;
}

.prev {
padding-right: 15px;
}

.next {
justify-content: flex-end;
text-align: right;
padding-left: 15px;
}
.pagenav a {
color: #000;
}
.pagenav a.inactive,
.pagenav a.inactive:hover {
color: #999;
cursor: default;
}

.pagenav a:hover {
color: #900;
text-decoration: none;
}
.prev::before,
.next::after {
font-size: 22px;
}
.pagenav .prev::before {
content: "\e5c5";
padding-right: 6px;
}
.pagenav .next::after {
content: "\e5c8";
padding-left: 6px;
}





.pager .pagination a {
display: flex;
}

.pager .pagination .previous a::before,
.previous::after {
font-size: 22px;
}
.pager .pagination .previous a::before {
content: "\e5c5";
padding-right: 6px;
}
.pager .pagination .next a::after {
content: "\e5c8";
font-size: 22px;
padding-left: 6px;
}

.blog.eventslist {
display: block;
margin: auto;
}
.events .blog_item {
max-width: 720px;
border-radius: 6px;
margin: 30px auto;
padding: 25px 20px 0;
}
.events .blog_item .intro {
padding: 0;
}







.schedule_item {
display: flex;
flex-flow: row nowrap;
margin-bottom: 20px;
padding: 20px;
font-size: 20px;
font-weight: 400;
line-height: normal;
background-color: #fff;
border-radius: 6px;
}
.schedule_item p {
margin: 0;
}
.schedule_item a {
color: #900;
}
.schedule_item a:hover {
color: #000;
text-decoration: underline;
}


.event_date {
flex: 0;
padding-right: 20px;
font-family: "Figtree";
font-size: 17px;
font-weight: 500;
text-align: center;
border-right: 1px dotted #333;
}
.event_desc {
flex: 1;
padding-left: 20px;
}
.month {
text-transform: uppercase;
}
.schedule_item .year {
margin-top: 8px;
padding-top: 4px;
font-size: 15px;
border-top: 1px solid #ccc;
}
.schedule_item p.program {
margin-bottom: 8px;
font-weight: 700;
}
.schedule_item p.details,
.schedule_item p.venue {
margin: 6px 0;
}
.location {
flex: 0;
padding-left: 20px;
text-align: center;
border-left: 1px dotted #333;
}
.location a::before {
content: "\f278";
display: block;
font-size: 22px;
}
.location a span {
display: block;
padding-top: 5px;
font-family: "Figtree";
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
color: #000;
}
.schedule_item .location a:hover {
text-decoration: none;
}


.standalone_clip {
max-width: 880px;
margin: 40px auto;
padding: 40px;
background-color: #e4e4e4;
border-radius: 6px;
}

.video {
text-align: center;
margin: 0 auto 30px;
}
.video iframe, .video object {
display: block;
margin: auto;
}
.videoWrapper {
position: relative;
padding-bottom: 56.25%; /* 16:9 */
padding-top: 25px;
height: 0;
}
.video .videoWrapper iframe,
.video .videoWrapper object {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.iframe-link {
  display: block;
  position: relative;
}
.iframe-link::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../img/youtube_trans.svg) no-repeat center center;
}
.iframe-link:hover::before {
  background: url(../img/youtube_red.svg) no-repeat center center;
}








.home_readmore {
max-width: 240px;
margin: 2em auto 3em;
}
.home_readmore:last-child {
margin: 2em auto 0;
}

.home_readmore a {
display: block;
font-family: "Figtree";
font-size: 14px;
font-weight: 700;
color: #000;
text-align: center;
line-height: 40px;
text-transform: uppercase;
padding: 3px 20px 0 20px;
background-color: #fff;
border: 1px solid #dadada;
border-radius: 20px;
}
.home_readmore a:hover {
color: #900;
}



footer .container {
margin: 0 auto;
display: flex;
flex-flow: row wrap;
justify-content: center;
gap: 40px;
}

footer .container .item {
max-width: 190px;
line-height: 1.5;
text-align: center;
}
footer .halfspace {
margin-bottom: -0.5em;
}

footer a {
font-weight: 500;
color: #D7B700;
}
footer a:hover {
color: #fff;
text-decoration: underline;
}
footer h3 {
color: #fff;
font-size: 1.125em;
font-weight: 500;
}


.cd_data,
.program_data {
padding: 12px 0 16px;
border-top: 6px double #ccc;
border-bottom: 6px double #ccc;
margin-bottom: 40px;
}
.program_data {
margin-bottom: 30px;
}
.program_data.bottom {
margin-top: 60px;
}
.press .program_data {
margin-bottom: 50px;
}

.cd_data p,
.program_data p {
margin: .25em 0;
}
.program_data p.topspace {
margin-top: .75em;
}
.program_data .proginfo p {
font-size: 20px;
}

p.description {
margin-left: 30px;
}

.zerotop {
margin-top: 0;
}
	
.cast {
margin: 2em 0;
}
.cast p {
margin: .25em 0;
}


/*** to top ***/
.fixed {
display: none;
height: 40px;
position: fixed;
bottom: 2px;
right: 2px;
z-index: 100;
}

.fixed a {
display: block;
width: 40px;
height: 40px;
line-height: 40px;
font-size: 20px;
text-align: center;
color: #fff;
box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.6);
background-color: #333;
}
.fixed a:hover,
.fixed a:active {
color: #fff;
background-color: #900;
}
/*** end to top ***/


.modal {
position: relative;
width: 100%;
max-width: 400px;
margin: -30vh auto 0;
padding: 30px;
font-family: "Figtree";
background: #f4f4f4;
border-radius: 6px;
}
.modal h3 {
font-size: 16px;
font-weight: 700;
text-transform: uppercase;
text-align: center;
color: #000;
margin: 0 auto 25px;
}
.modal h3 span {
display: inline-block;
padding: 0 20px 5px;
border-bottom: 1px solid #333;
}

.pressquote { 
max-width: 500px; 
margin: 2em auto; 
padding: 20px 30px; 
background: #F8F3E7; 
border-radius: 8px; 
font-family: "Figtree"; 
font-size: 16px; font-weight: 500;
}

.pressquote p:first-child {
margin: 0 0 5px;
}
.pressquote p:first-child::before {
content: "\e917";
display: block;
padding-bottom: 4px;
font-size: 24px;
color: #CC9900;
line-height: 1;
}


.pressquote p:last-child {
margin: 0;
}

.press_snippets {
margin-top: 2em;
}
.press_snippets p {
margin: 0.5em 0;
}
.press_snippets p.separator-below {
padding-bottom: 15px;
border-bottom: 1px solid #ccc;
margin-bottom: 2em;
}









/************* Media queries ****************/




@media screen and (max-width: 1680px) {

.blogpage .blog {
margin: 0 0px;
}

.home .blog-four.blog.discography,
.blog-four.blog {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 20px;
margin: 0;
}

.blogpage.discography .blog {
margin: 0;	
}

.home main,
.blogpage main {
padding-bottom: 80px
}

}



@media screen and (max-width: 1600px) {

.home .blog.featured {
margin: 0;
}
.home .blog,
.blogpage .blog,
.discography. blogpage .blog {
margin: 0;
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
gap: 40px;
background: red;
}


.blog-four .blog {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 20px;
}
.discography .blog_item img {
max-height: 260px;
}


.albumpage article {
padding: 0;
}
.album {
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}
/*.album .blog_item {
display: flex;
flex-direction: column;
background-color: #fff;
background-clip: padding-box;
max-width: 430px;
margin-left: auto;
margin-right: auto;
}*/

}



@media screen and (max-width: 1380px) {


/* disco blog */
.blog-four .blog {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 20px;
}
.discography .blog_item img {
max-height: 260px;
}

.album .blog_item {
max-width: 430px;
margin-left: auto;
margin-right: auto;
}



}



@media screen and (max-width: 1360px) {

.home .featured,
.blogpage .blog {
margin: 0 5.5vw;
grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
}
.blog-four.blog,
.home .blog-four.blog.discography {
margin: 0 5.5vw;
grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
gap: 40px;
}

.home .blog.featured .blog_item:last-child {
display: flex;
}
.home .blog.featured {
margin: 0 5.5vw;
}
	
}

@media screen and (max-width: 1298px) {

.discography .blog_item img {
max-height: 300px;
}

}




@media screen and (max-width: 1260px) {


/* home */
.home .blog-four.blog.discography {
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
gap: 40px;
margin: 0;
}
.home .blog-four.blog.discography .blog_item img {
max-height: 320px;
}


}



@media screen and (max-width: 1200px) {

.site_title {
font-size: 50px;
}
.site_subtitle {
font-size: 18px;
line-height: 1.2;
}
main {
padding: 30px 40px 60px;
}



}





@media screen and (max-width: 1140px) {

#navmain,
#contents {
width: 100%;
max-width: 280px;
}

#slideshow figcaption {
width: auto;
left: 0;
bottom: 0;
color: #fff;
background-color: rgba(0, 0, 0, 0.65);
}
figcaption p {
display: inline;
}
figcaption p:first-child::after {
content: " /";
}

.home .blog.featured,
.home .blog-four.blog.discography,
.blog-four.blog,
.blogpage .blog {
margin: 0;
}


.blog-title-only h1 {
margin-top: 0;
}
.breadcrumbs {
margin-top: 10px;
margin-bottom: 20px;
}
.events .breadcrumbs {
margin-bottom: 0;
}


.header-top {
flex-direction: column;
padding: 0;
align-items: stretch;
background-color: transparent;
}
.header-left {
flex: 1;
padding: 40px;
background-color: #CC9900;
}

.header-right {
flex: 1;
padding: 10px 40px 11px;
background-color: #EFE7D3;
gap: 20px;
}

#searchswitch a,
#schedule a {
color: #B69203;
border: 1px solid #B69203;
}

.search {
order: 2;
}
#navmain {
margin: 0;
}
a#navmainswitch {
width: 100%;
color: #B69203;
border: 1px solid #B69203;
}
#contents {
left: 0;
width: 100%;
background-color: #EFE7D3;
border-top: none;
}

#contents ul {
border-color: #C9A203;
}
#contents a {
color: #000;
}
#contents .current a {
color: #B08D02;
}
#contents a:hover {
color: #B08D02;
}


.motto {
font-weight: 400;
font-size: 30px;
margin-top: 10px;
}

a.more {
color: #900;
padding-top: 5px;
}
.pagenav a {
color: #900;
}

.blogpage.discography .blog {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.discography .blog_item img {
max-height: 280px;
}

}

@media screen and (max-width: 1099px) {
	
.albumpage article {
padding: 40px;
}

}


@media screen and (max-width: 980px) {

.albumpage article {
padding: 0;
}


}



@media screen and (max-width: 900px) {

.motto::before,
.motto::after {
content: "";
}
.motto::before,
.motto::after {
margin: 0;
}

.home .featured,
.blog-four.blog,
.blogpage .blog {
gap: 20px;
}
.blogpage main {
padding-left: 20px;
padding-right: 20px;
}



/* disco home */
.home .blog-four.blog.discography {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 20px;
}
.home .blog-four.blog.discography .blog_item img {
max-height: 280px;
}


.blogpage.discography .blog {
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 20px;
}

.discography .blog_item img {
max-height: 260px;
}


footer {
padding: 30px 20px 40px;
}

.home footer .container {
display: block;
margin: 0;
}
footer .container .item {
padding: 0;
margin: 30px auto;
text-align: center;
}

}




@media screen and (max-width: 859px) {
	
.home .blog.featured,
.blog-four.blog,
.blogpage .blog {
margin: 0 5.5vw;
gap: 40px;
}

}





@media screen and (max-width: 818px) {
	
.readmore a {
padding: 15px 15px 35px;
}
.home .featured,
.blog-four.blog,
.blogpage .blog {
gap: 40px;
}

}


@media screen and (max-width: 808px) {
	
.readmore a {
padding: 15px 15px 35px;
}
.home .featured,
.blog-four.blog,
.blogpage .blog {
gap: 40px;
}

footer .container {
gap: 20px;
} 

}


@media screen and (max-width: 770px) {

footer .container {
display: block;
text-align: center;
}

.minialbum {
gap: 20px;
}
.minialbum .blog_item {
max-width: none;
margin-left: 0;
margin-right: 0;
}

}



@media screen and (max-width: 740px) {


/* disco home */
.home .blog-four.blog.discography .blog_item img {
max-height: 240px;
}

.blogpage.discography .blog {
display: block;
}
.blogpage.discography .blog_item {
margin-bottom: 40px;
padding: 0 20px;
}
.discography .blog_item img {
width: 100%;
max-height: none;
max-width: 400px;
margin: auto;
}

}



@media screen and (max-width: 630px) {

.header-left {
flex-direction: column;
padding: 40px 0 30px;
}

.header-right {
justify-content: center;
padding: 15px 20px;
gap: 20px;
}


.site_subtitle div {
display: inline;
font-size: 16px;
}
.site_subtitle div:first-child::after {
content: " / ";
}

#slideshow figcaption,
.mastimage_container figcaption {
font-size: 12px;
}

.breadcrumbs {
font-size: 14px;
}

.home .blog.featured,
.blog-four.blog,
.blogpage .blog,
.home .blog-four.blog.discography {
display: block;
margin: 40px 0;
}
.blog_item {
margin: 40px 0;
}
.home .blog-four.blog.discography .blog_item img {
max-height: none;
width: 100%;
max-width: 400px;
}

.home main {
padding: 30px 20px;
}
.album .blog_item,
.minialbum .blog_item {
margin: 0 auto;
}

}


@media screen and (max-width: 570px) {

.discography .blog_item img,
.home .blog-four.blog.discography .blog_item img {
width: 100%;
}
.home .blog-four.blog.discography {
margin: 0;
}

.site_subtitle div {
display: block;
text-align: center;
}
.site_subtitle div:first-child::after {
content: "";
}
.header-right {
justify-content: space-between;
gap: 10px;
}


#contents ul {
padding: 1px 20px 35px;
border: 1px solid #B69203;
border-top: none;
}


.schedule_item {
flex-flow: column;
}
.event_date {
border-right: none;
padding: 0 0 15px;
border-bottom: 1px dotted #333;
}
.event_date p {
display: inline;
}

.schedule_item .year {
font-size: 17px;
margin-top: 8px;
padding-top: 4px;
border-top: none;
}
.event_desc {
padding: 15px 0;
}
.location {
padding: 15px 0 0;
border-left: none;
border-top: 1px dotted #333;
}

.discography .blog_item img {
max-width: 400px;

}
.blogpage.discography .blog .blog_item {
min-width: 0;
}


}



@media screen and (max-width: 520px) {

#schedule span.label {
display: none;
}
#schedule a {
padding: 0 14px;
min-height: 44px;
text-align: center;
}
#schedule a::before {
margin: 0;
font-size: 22px;
}


}





@media screen and (max-width: 420px) {

.header-right {
width: 100%;
max-width: 420px;
}

main,
.home main,
.discography main {
padding: 30px 20px;
}

#navmain {
font-size: 16px;
font-weight: 500;
}

p.description,
.source {
margin-left: 20px;
}


}





@media screen and (max-width: 379px) {

body {
font-size: 18px;
}

.header-right {
justify-content: center;
padding: 15px 10px;
}
#searchswitch a {
width: 44px;
}
#schedule a {
padding: 0 10px;
}


.motto {
font-size: 24px;
}

.breadcrumbs {
padding-bottom: 10px;
}

h1.catname {
font-size: 30px;
}
p.cat-desc {
margin: 0 auto 40px;
}

h1 {
margin: 20px 0 0;
font-size: 26px;
}
h2 {
font-size: 24px;
margin: 40px 0 20px;
}
h3.subtitle {
line-height: 1.2;
}
.image_container {
margin: 1.5em 0;
}

.caption {
font-size: 16px;
}

.pagenav {
font-size: 14px;
margin-top: 50px;
}

main,
.blogpage main,
.home main {
padding: 20px 10px 40px;
}

article {
line-height: 1.2;
}

.blog {
margin: 0;
display: block;
}

.blog_item {
/*display: block;*/
min-width: 0;
border-left: 0;
border-right: 0;
}

.blogpage.program .blog .blog_item,
.blogpage.discography .blog .blog_item {
border-left: none;
border-right: none;
}

.blogpage .blog .blog_item:first-child {
border-top: none;
}



.blog_item .intro h3 {
font-size: 21px;
}
.title-only .blog_item .intro h3,
.blogpage.discography .blog .blog_item .intro h3 {
font-size: 21px;
}

.discography .blog_item .intro {
padding: 30px 20px 0;
}
.discography h2 {
font-size: 18px;
margin: -10px 0 40px;
}

.indent_double {
font-size: 20px;
line-height: 1.35;
}

.eventslist {
margin-top: 30px;
}

}



@media screen and (max-width: 360px) {

.site_title {
font-size: 46px;
}

.blog.four .blog_item {
flex: 1 1 25%;
max-width: 600px;
min-width: 240px;
}
.blog.four .blog_item img {
max-height: none;
width: 100%;
}


}