@charset "Shift_JIS";

html{
}

/* ===== スマートフォン用・稽古日程表示 ===== */
#mobile-schedule {
  display: none;
}

@media screen and (max-width: 739px) {
  * {
    box-sizing: border-box;
  }

  html {
    -webkit-text-size-adjust: 100%;
  }

  body {
    margin: 0;
    padding: 0 12px 32px;
    overflow-x: hidden;
    background: #f4f2ed;
    color: #262626;
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN",
      "Yu Gothic", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1.7;
  }

  #wrap,
  #fmenu,
  #mobile-schedule {
    width: 100% !important;
    max-width: 680px;
    margin-right: auto;
    margin-left: auto;
  }

  #head {
    padding: 14px 0 0;
  }

  #head h1 {
    margin: 0 0 12px;
    text-align: center;
  }

  #head h1 img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }

  #head nav ul {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  #head nav li {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #head nav a,
  #head nav a:visited {
    display: flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 8px 2px;
    border: 1px solid #c9c2b6;
    border-radius: 7px;
    background: #fff;
    color: #111 !important;
    font-size: clamp(10px, 2.8vw, 13px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.04em;
    white-space: nowrap;
    text-align: center;
    text-decoration: none;
  }

  #fmenu {
    margin-top: 16px;
  }

  #fmenu section {
    padding: 13px 14px;
    border: 1px solid #d4cec3;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .04);
  }

  #fmenu ul {
    margin: 0;
    padding-left: 1.2em;
  }

  #fmenu li {
    margin: 0 0 10px;
  }

  #fmenu li:last-child {
    margin-bottom: 0;
  }

  #fmenu a,
  #mobile-schedule a {
    color: #145c91;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  #fmenu em,
  #mobile-schedule em {
    color: #a02222;
    font-style: normal;
    font-weight: 700;
  }

  table.collapse {
    display: none !important;
  }

  #mobile-schedule {
    display: block;
    margin-top: 6px;
  }

  .schedule-spacer {
    display: none;
  }

  .mobile-schedule-title {
    margin: 0 0 12px;
    padding: 10px 12px;
    border-top: 3px solid #594b3d;
    border-bottom: 1px solid #bdb5aa;
    color: #2f2923;
    font-size: 21px;
    line-height: 1.35;
    text-align: center;
  }

  .mobile-day {
    margin: 0 0 14px;
    overflow: hidden;
    border: 1px solid #cec7bb;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 9px rgba(0, 0, 0, .05);
  }

  .mobile-day.is-today {
    border-width: 2px;
    border-color: #8a2d2d;
  }

  .mobile-day-heading {
    display: flex;
    align-items: baseline;
    gap: 7px;
    margin: 0;
    padding: 10px 13px;
    background: #e8e3da;
    color: #29241f;
    font-size: 20px;
    line-height: 1.3;
  }

  .mobile-day.is-sunday .mobile-day-heading {
    color: #9b2424;
  }

  .mobile-day.is-saturday .mobile-day-heading {
    color: #245488;
  }

  .mobile-day.is-adjacent-month {
    opacity: .72;
  }

  .mobile-weekday {
    font-size: 15px;
    font-weight: 500;
  }

  .mobile-today-label {
    margin-left: auto;
    padding: 2px 7px;
    border-radius: 999px;
    background: #8a2d2d;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
  }

  .mobile-events {
    padding: 0 13px;
  }

  .mobile-event {
    margin: 0 !important;
    padding: 13px 0 !important;
    border-bottom: 1px solid #e2ddd5;
    font-size: 16px;
    line-height: 1.65;
  }

  .mobile-event:last-child {
    border-bottom: 0;
  }

  .mobile-event a {
    display: inline-block;
    margin-bottom: 2px;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.45;
  }
    
    #desktop-calendar .is-holiday {
  color: #9b2424;
}

#desktop-calendar .holiday-name {
  margin-left: 4px;
  font-size: 0.7em;
  font-weight: normal;
  white-space: nowrap;
}

  body > p:last-of-type {
    display: none;
  }
}

body{
font-size:14px;
}
	
table.separate{
    border-collapse: separate;
    width: 900px;
}

table.collapse{
    border-collapse: collapse;
    width: 900px;
}

table,
table th,
table td{
    border: 1px solid #000;
}

table {
	border-spacing: 1px;
	margin: 0px auto 0;
	width: 100%;
	background: #FEFEFE;
	text-align: left;
-webkit-box-shadow:3px 3px 4px #e0e0e0;
box-shadow:3px 3px 4px #e0e0e0;
	
}

th{

padding: 5px;
width: 97px;
	color:#818181;
	background:#E2E2E2;
  text-align: center;
}

th h2{
background: #dcdcdc;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}



th h3{
padding: 5px;
background:#dcdcdc;
	padding:0;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}



td {
background: #ffffff;
	line-height: 1.2;
	text-align: left;	
}



td b{
padding: 5px 20px 0 20px;
background:silver;
	color:#FFFFFF;
	font-size: 12px;
text-shadow:2px 2px 4px #4D4D4D;
	text-align: center;	
}



td h1{
padding: 5px 0;
font-size:10px;
background:#ffcccc;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}

td h2{
padding: 2px 0;
background:#F6F6F6;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}

td h3{
padding: 2px 0;
background:#ffcccc;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}


td h4{
padding: 2px 0;
background:#f0f8ff;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}

td h5{
padding: 0;
font-size:10px;
	color:#4D4D4D;
	line-height: 1.5;
	text-align: center;	
}

td h6{
padding: 5px 0;
background:silver;
	color:#FFFFFF;
	font-size: 20px;
text-shadow:2px 2px 4px #4D4D4D;
	text-align: center;	
}


td  p{

background: #FFFFFF;
	padding: 5px;
	line-height: 1.2;
	text-align: left;
	border-bottom:#7284A3 dotted 1px;
}

td {

background:#FFFFFF;
}





em{
	color:#ff7800;
font-style:normal;
}

li{	line-height:2.5;

}


#wrap{
background: #FFFFFF;
}

#head h1 {
width:280px;
padding:3px 0;
text-align: left;
}
	
#head h2{
margin:0 0 5px 10px;
padding:0 0 0 4px;
font-size:12px;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}


#head h3{ 
margin:10px 0 5px 10px;
padding:0 0 0 4px;
font-size:12px;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}


#head{
padding:0;
}

	
#head nav{
margin:0 10px 10px 10px;
font-size:12px;
box-shadow:2px 2px 4px #b9b9b9;
border-radius:4px;
}

#head nav em{
font-size:12px;
color:#ff7800;
font-style: normal;
}

#head nav ul{
display:-webkit-box;
display:-moz-box;
width:100%;
padding:0;
background:#577F92;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
border-radius:4px;
}


#head nav ul li{
margin:0 6px 0 0;
padding:0 8px 0 0;
-webkit-box-flex:1;
-moz-box-flex:1;
background:url(../img/all_line01.png) no-repeat right center;
-webkit-background-size:1px auto;
background-size:1px auto;
}


#head nav ul li:last-child{
margin:0;
padding:0;
background:none;
}

#head nav ul li a{
display:block;
height:36px;
font-weight:bold;
color:#E5E5E5;
text-align:center;
text-decoration:none;
line-height:36px;
}


#head nav ul li a.on{
color:#069;
background:#DDF2F9;
border-radius:3px;
}

#head nav a{
color:#FFFFFF;
text-decoration:none;
outline:none;
}


#head nav a:visited{
color:#FFFFFF;
text-decoration:none;
}

#head nav a:active{
color:#ff7800;
text-decoration:none;
}

#head nav a:hover{
color:#ff7800;
text-decoration:none;
}



#fmenu{
margin:0 10px 10px 10px;
padding:12px 8px;
background:#f4f2ee;
border-radius:4px;
}
#fmenu p{
color:#565656;
}

#fmenu header{
margin:0 0 10px 0;
}

#fmenu h3{
margin:5px 0 5px 0;
padding:0 0 0 4px;
font-size:14px;
text-align: left;
color:#565656;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}


#fmenu header p{
}

#fmenu header p img{
width:96%;
border-radius:4px;
}

#fmenu section{
background: #f4f2ee;
}

#fmenu section h2{
margin:0 0 16px 0;
font-size:12px;
color:#069;
}

#fmenu section dl{
font-size:12px;
line-height:1.6;
}

#fmenu section dl dt{
	text-align:right;
width:80px;
}

#fmenu section dl dd{
margin:-1.6em 0 4px 0;
padding:0 0 20px 120px;
border-bottom:#BBCDD3 dotted 1px;
}

#fmenu section dl dd:last-child{
margin-bottom:0;
padding-bottom:0;
border-bottom:none;
}

#fmenu li{	
line-height:1.5;
font-size:14px;
text-align: left;
margin:0 0 0 10px;
}



  
  

#footer {
  color: #800000;
	background:#800000;
	clear: both;
}



#ul_a{
margin:0 0 10px 5px;
text-align:left;
font-size:14px;
}

#ul_a li{
padding:0 0 0 5px;

}
	
	
	
p {
	margin:0px;
	padding:0px;
	color:#3b3a3a;
	font-size:14px;
	line-height:1.3;
	}
	



	
	
h3{
	margin:0px;
	padding:0px;
	font-size:14px;
	color:#030303;
	line-height:1;
	}
	

		
h1,h2,div,span,ol,ul,form,input,textarea{
	margin:0px;
	padding:0px;
	line-height:1.5;
}
form{
z-index:1;
}
input:focus{
outline:none;
}
textarea:focus{
outline:none;
}
textarea{
padding:5px 0px;
}
em{
	color:#ff7800;
font-style:normal;
}

a{
color:#566aa9;
text-decoration:none;
outline:none;
}
a:visited{
color:#566aa9;
text-decoration:none;
}
a:active{
color:#566aa9;
text-decoration:none;
}
a:hover{
color:#ff7800;
text-decoration:none;
}


