@charset "utf-8";
body{
	background-color:#ffffff;
	color:#333333;
	font-family:"メイリオ","Hiragino Sans",sans-serif;
	margin:0;
	padding:0;
}

.slider-container {
    width: 100%;
    overflow: hidden;
}

.slider {
    display: flex;
    gap: 20px;
    width: max-content;
}

.slider a {
    flex: 0 0 950px;
}

.slider img {
    width: 950px;
    height: 300px;
    object-fit: cover;
    display: block;
}

/* ナビゲーション */
.navigation {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 5px;
}

/* 画像スライダーのナビゲーション */
.navigation button,
.control button {
	display: flex;
    width: auto;
    height: auto;
    border: none;
    background: transparent;
    color: #555;
    font-size: 14px;
    cursor: pointer;
}

.navigation button:hover,
.control button:hover {
    color: #ff6600;

}

#dots {
    display: flex;
    gap: 10px;
}

.dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ccc;
    cursor: pointer;
}

.dot.active {
    background: #333;
}

/* 再生・停止 */
.control {
    text-align: center;
    margin-top: 10px;
}


address{
	font-size: 95%;
	text-align: right;
	float: right;
}
p{
	font-weight: normal;
	font-size:100%;
	line-height:1.5;
}
h1{
	font-size:180%;
}
h2{
	font-size:120%;
	border-bottom:1px dashed #003366;
	border-left:10px solid #003366;
	padding-left:7px;
}
header{
	background:linear-gradient(to bottom,#d7c8ff,#fff);
	border-top:1px solid #003366;
	color:#000000;
	border-bottom:1px solid #003366;
}
header img{
	float:left;
	margin-top: 3px;
}
.header-in{
	width:960px;
	height: 56px;
	margin-left:auto;
	margin-right:auto;
}
#menu-list{
	width: 960px;
	margin-left:auto;
	margin-right:auto;
}
footer{
	text-align:center;
	border-top:1px solid #006600;
	background:#dcdcdc;
	color:#010101;
	padding-top:10px;
	padding-bottom:10px;
	clear:both;
}
article{
	position:relative;
	clear:both;
	width:960px;
	margin-left:auto;
	margin-right:auto;
}
.catch{
	position:absolute;
	top:20px;
	left:30px;
	color:#ffffff;
	text-shadow:0px 5px 10px #000000;
}

ul{
	list-style-type:none;
	padding-left:0;
	line-height:1.8;
	font-size:90%;
}
ul time{
	border-radius:10px;
	background-color:#999999;
	color:#ffffff;
	font-size:90%;
	padding-left:5px;
	padding-right:5px;
	margin-right:5px;
}
nav ul{
	font-weight:bold;
	text-align:right;
	padding-top:26px;
	padding-bottom:5px;
	margin:0;
}
nav li{
	display:inline;
	padding-left:10px;
	padding-right:12px;
	margin: 0;
	border-right:1px solid gray;
}
nav ul a{
	text-decoration:none;
	color:#505050;
}
nav ul a:hover{
	/*background-color:#ffcc00;*/
	color: #ff6600;
}
.sub-h1{
	background:linear-gradient(to left,#ffffff,#dcdcdc);
	padding-top:5px;
	padding-left:10px;
	border-left:15px solid #003366;
	margin:0;
}
.point-list{
	list-style-image:url(../image/list.gif);
	font-weight:bold;
	margin-left:30px;
}
.point-img{
	box-shadow:0px 0px 5px 3px #aaaaaa;
	border-radius:10px;
	float: none;
	margin-left:20px;
	margin-bottom:10px;
}

.sentou{
	clear:both;
	text-align:right;
}
.list{
  display: flex;          /* 横並び */
  gap: 8px;               /* li 同士のすき間 */
  list-style-type: none; /* 番号 */
  font-size: 80%;
}
/*ol li{
	display:inline;
	margin-right:5px;
	font-size:80%;
}
li{
	padding-left:0;
}*/
.page{
	padding-left:10px;
	padding-right:10px;
}

table{
	border:1px solid #333333;
	/*font-size:90%;*/
	margin-left:auto;
	margin-right:auto;
	margin-bottom:5px;
	border-collapse:collapse;
}
th{
	background-color:#ccccff;
	border:1px solid #333333;
	padding:5px;
	width:20%;
}
td{
	font-weight: normal;
	border:1px solid #333333;
	padding:5px;
}
caption{
	caption-side:bottom;
}
aside h1{
	font-size:120%;
	border-bottom:2px dotted #666666;
	padding-left:5px;
	margin:0;
}
aside li{
	border-bottom:1px dotted #666666;
}
aside ul{
	margin:0;
}
aside a{
	display:block;
	color:#333333;
	text-decoration:none;
	padding-top:10px;
	padding-bottom:10px;
	padding-left:5px;
}
aside a:hover{
	background-color:#dcdcdc;
}

.b-mei{
	display:block;
	font-size:80%;
	color:#666666;
}
h3{
	padding-left:10px;
	border-left:20px solid #00cccc;
	font-size:105%;
}

.select{
	font-weight: bold;
	background-color:#ffcc00;
}
.b-kiji{
	float:left;
	width:75%;
}
aside{
	float:right;
}
.form{
	display:block;
	width:400px;
}
textarea{
	display:block;
	width:600px;
	height:120px;
}
/*button{
	width:180px;
	height:50px;
	padding:10px;
}*/
dl{
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 20px;
    margin-left: 0;
    padding: 0;
    /*zoom: 100%;*/
}
dt{
    float: left;
    margin: 0;
    text-align: left;
    line-height: 16px;
    min-height: 16px;
    font-weight: bold;
    width: 130px !important;
    padding-top: 10px;
    padding-right: 0;
    padding-bottom: 10px;
    padding-left: 25px;
    background-image : url(../image/point_1Ad.png);
    background-position: 5px 12px;
    background-repeat: no-repeat;
    color: #57A110;
}
dd{
    margin: 0;
	font-size: 90%;
    padding-top: 10px;
    padding-right: 15px;
    padding-bottom: 10px;
    text-align: left;
    line-height: 16px;
    min-height: 16px;
    padding-left: 155px;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #DDDDDD;
}
.customSearch-area{
    border: none;
    line-height: 0;
	width: 300px;
}
#pagetop a
{
    /* ページの先頭へのリンク設定 */
    background-image : url(../image/returnTop.png);
    background-position: center left;
    background-repeat: no-repeat;
    text-align: left;
    margin-left: auto;
    width: 132px;
    height: 22px;
    text-indent: -9999px;
    overflow: hidden;
    display: block;
}
/* トップページ：今月・来月の講座 */
.home-course-list { margin: 12px 0 28px; }
.home-course-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.home-course-month { border: 1px solid #ddd; border-radius: 6px; padding: 14px 16px; background: #fff; }
.home-course-month h3 { margin: 0 0 10px; padding: 8px 10px; background: #ffbd7b; font-size: 1.1em; }
.home-course-month ul { margin: 0; padding-left: 1.2em; }
.home-course-month li { margin: 9px 0; }
.home-course-month li span { display: block; color: #555; font-size: .9em; }
.home-course-empty { margin: 8px 0; }
/* 959px以下の場合 */
@media(max-width:959px){
header img{
	float:none;
	width: 250px;
	height: auto;
}

nav ul{
	text-align:left;
	padding:0;
	margin-left:10px;
}
article{
	width:auto;
}
article img{
	max-width:100%;
	height:auto;
}
.header-in{
	width:auto;
	height: 50px;
}
#menu-list{
	width:auto;
	height: auto;
}

.b-kiji{
	float:none;
	width:100%;
}
aside{
	float:none;
}
.slider a {
        flex-basis: 700px;
    }

.slider img {
        width: 700px;
        height: auto;
    }
}


/* 600px以下の場合 */
@media(max-width:600px){
.slider a {
        flex-basis: 500px;
    }

.slider img {
        width: 500px;
        height: auto;
    }
header img{
	float:none;
	width:200px ;
	height: auto;
}
address{
	font-size: 60%;
	text-align: right;
	float: right;
}
nav li{
	font-size:80%;
	padding-left:2px;
	padding-right:2px;
}
footer{
	font-size:80%;
}
.catch{
	top:5px;
	left:10px;
}
.point-img{
	float:none;
}
table{
	display:block;
	width:auto;
}

.form,textarea{
	width:320px;
}
.home-course-groups { grid-template-columns: 1fr; } 
}

/* プリント出力 */
@media print{
.catch{
	color:#000000;
	text-shadow:none;
}
footer{
	color:#000000;
}

}

