@charset "shift_JIS";

/* reset */
html, body, h1, h2, h3, h4, h5, h6, dl, dt, dd, ol, ul, li,p{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}
img{
	height: auto;
	font-size: 0;
	line-height: 0;
	border:0;
}
ol,ul{
	list-style: none;
}

/* common */
html{
	scroll-padding: 200px;
	scroll-behavior: smooth;
}
body{
	font-family: 'ƒqƒ‰ƒMƒmŠÛƒS Pro','Hiragino Maru Gothic Pro', 'HGMaruGothicMPRO', 'HGŠÛºÞ¼¯¸M-PRO';
	font-size: 17px;
	color: rgb(100,80,50);
	line-height: 1.5;
	text-align: left;
	letter-spacing: 0.1em;
	background:rgb(255,255,255);
	word-break: break-all;
}
a{
	text-decoration: underline;
	display: inline-block;
	color: rgb(100,80,50);
	transition: 0.5s;
}
a:hover{
	opacity: 0.6;
}
img{
    max-width: 100%;
    height: auto;
	border-style:none;
	vertical-align:middle;
}
a img{
    text-decoration: none;
}
.tel a{
	pointer-events: none;
	text-decoration: none;
}
.indent{
	padding-left:1.2em;
	text-indent:-1.2em;
}
.inner_box{
	width: 1000px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 60px 0;
	background: rgba(255,255,255,0.9);
}
.page_title{
	text-align: center;
	padding: 10% 0;
	background: url("images/title.jpg") no-repeat center center / 100%;
}
.title_white{
	background: rgba(255,255,255,0.8);
	padding: 20px;
}
.page_title p{
	width: 250px;
	margin: 0 auto;
}
.section_title{
	margin: 0 auto 40px auto;
	width: 100%;
	background: url("images/h3_line.png") no-repeat center top , url("images/h3_line.png") no-repeat center bottom;
	padding: 20px 0;
}
.section_title p{
	width: 380px;
	padding: 0 20px;
}


/* ul,ol */
ul{
	list-style: disc;
	padding: 0 0 0 20px;
	text-align: left;
}
ol{
	list-style: decimal;
	padding: 0 0 0 28px;
	text-align: left;
}
li:last-child{
	margin: 0 auto;
}

/* table */
table,#kihon table table,#gaiyo table table{
	width: auto;
	border-collapse: collapse;
	min-height: 1px;
	margin: 10px 0;
}
th,#kihon table table th,#gaiyo table table th{
	border: 1px solid rgb(100,80,50);
	padding: 10px 20px;
	font-weight: normal;
	background: rgb(239,237,234);
	border-radius: 0;
	width: auto;
	box-sizing: border-box;
}
td,#kihon table table td,#gaiyo table table td{
	border: 1px solid rgb(100,80,50);
	padding: 10px 20px;
	background: #fff;
	border-radius: 0;
	width: auto;
	box-sizing: border-box;
}

/* pdf */
ul.pdf{
	list-style: none;
	padding: 0;
}
ul.pdf a{
	text-decoration: none;
	border: 1px solid  rgba(255,218,238,1);
	background: url("images/icon_pdf.jpg") no-repeat left 20px top 10px;
	padding: 10px 25px 10px 50px;
	border-radius: 10px;
}


/* free_photo */
.free_photo,.free_photo_4{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
ul.free_photo,ul.free_photo_4{
	list-style: none;
	padding: 0;
}
/* 3–‡ */
.free_photo li{
	padding-top:20%;
	width: 31%;
	margin: 1%;
	position:relative;
}
.free_photo li img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	border-radius: 20px;
}
/* 4–‡ */
.free_photo_4 li{
	padding-top:15%;
	width: 23%;
	margin: 1%;
	position:relative;
}
.free_photo_4 li img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	border-radius: 20px;
}
/* ‰E‚É1–‡ */
.photo_t{
	padding-top:23%;
	width: 35%;
	position:relative;
	margin: 0 0 0 20px;
}
.photo_t img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	border-radius: 20px;
}

.pc { display: block !important; }
.sp { display: none !important; }


/* container */
#container{
	width:100%;
	min-width: 1200px;
	position: relative;
}

/* header */
.logo{
	background: url("images/header.jpg") no-repeat center top / cover;
	padding: 25px 0;
}
.logo p{
	width: 1000px;
	margin: 0 auto;
}
.logo a{
	width: 350px;
}
.menu ul{
	width: 1000px;
	margin: 0 auto;
	display: flex;
	list-style: none;
	padding: 15px 0 10px 0;
}
.menu li a{
	height: 60px;
	width: 166px;
}
.menu_01 a{
	background: url("images/menu_01_icon.png") no-repeat center top / 40px , url("images/menu_01.png") no-repeat center bottom / 130px;

}
.menu_02 a{
	background: url("images/menu_02_icon.png") no-repeat center top / 40px , url("images/menu_02.png") no-repeat center bottom / 130px;

}
.menu_03 a{
	background: url("images/menu_03_icon.png") no-repeat center top / 40px , url("images/menu_03.png") no-repeat center bottom / 130px;

}
.menu_04 a{
	background: url("images/menu_04_icon.png") no-repeat center top / 40px , url("images/menu_04.png") no-repeat center bottom / 130px;

}
.menu_05 a{
	background: url("images/menu_05_icon.png") no-repeat center top / 40px , url("images/menu_05.png") no-repeat center bottom / 130px;

}
.menu_06 a{
	background: url("images/menu_06_icon.png") no-repeat center top / 40px , url("images/menu_06.png") no-repeat center bottom / 130px;

}

/* swiper */
#slide{
	width:100%;
	min-width: 1200px;
	margin: 0 auto;
	position:relative;
}
.swiper{
	width:100%;
	margin: 0 auto 5% auto;
}
.swiper-slide{
	padding-top:450px;
	position:relative;
	z-index: 2;	
}
.swiper-slide img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
}
.catch{
	width: 400px;
	height: 313px;
	background: url("images/catch.png") no-repeat center bottom / 100%;
	position: absolute;
	bottom: -10%;
	left: 10%;
	z-index: 3;
}

/*topics*/
.topics_box{
	overflow-y: scroll;
	min-height: 250px;
	max-height: 250px;
	padding: 0 30px 0 0;
}
#topics dl{
	margin: 0 auto 10px auto;
	display: flex;
	justify-content: flex-start;
	list-style: none;
	box-sizing: border-box;
	border-bottom: 1px dotted rgba(100,80,50,0.5);
	padding: 10px 0 10px 20px;
	background: url("images/icon_maru_blue.png") no-repeat left top 18px / 10px;
}
#topics dl:last-of-type{
	margin: 0 auto;
}
.topic_date{
	margin-right:2%;
	width: 16%;
}
#topics dd{
	width: 85%;
}

/* kihon */
#kihon table{
	width: 100%;
	margin: 0 auto 30px auto;
	border-collapse: separate;
	border-spacing: 10px;
}
#kihon table th{
	background: rgb(255,220,240);
	border: none;
	border-radius: 20px;
	text-align: center;
}
#kihon table td{
	border: 1px solid rgb(255,220,240);
	border-radius: 20px;
}

/* gmap */
#gmap{
	position: relative;
	padding-top: 30%;
	width: 100%;
}
#gmap iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	margin: 0 auto;
	border: none;
}

/*rinen*/
.rinen_box{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.rinen_box .free_box{
	flex: 1;
}

/*mokuhyo*/
#mokuhyo ul,#mokuhyo ol{
	list-style: none;
	padding: 0;
}
#mokuhyo li{
	background: url("images/icon_leaf.png") no-repeat left top 5px / 17px;
	font-size: 20px;
	padding: 0 0 0 25px;
	margin: 0 auto 15px auto;
}
#mokuhyo li:last-child{
	margin: 0 auto;
}

/* kangaekata */
.post{
	border: 1px solid rgba(255,218,238,1);
	padding: 30px;
	border-radius: 20px;
	box-sizing: border-box;
	margin: 0 auto 20px auto;
}
.post:last-of-type{
	margin: 0 auto;
}
.post_title{
	background: rgba(255,218,238,1);
	border-radius: 10px;
	padding: 10px 20px;
	box-sizing: border-box;
	margin: 0 auto 20px auto;
}
.post_box{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.post_txt{
	flex: 1;
}

/* year */
.year_box{
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
}
.spring,.summer,.autmun,.winter{
	width: 48%;
	display: flex;
	align-items: center;
	justify-content:flex-start;
	box-sizing: border-box;
}
.spring{
	border-right: 1px dotted rgba(100,80,50,0.5);
	padding: 0 20px 20px 0;
}
.summer{
	padding: 0 0 20px 20px;
}
.autmun{
	border-top: 1px dotted rgba(100,80,50,0.5);
	border-right: 1px dotted rgba(100,80,50,0.5);
	padding: 20px 20px 0 0;
}
.winter{
	border-top: 1px dotted rgba(100,80,50,0.5);
	padding: 20px 0 0 20px;
}
.year_title{
	width: 38%;
	margin: 0 30px 0 0;
}
.year_box ul{
	padding: 0;
	list-style: none;
	width: 60%;
}
.year_box ul li ul{
	list-style: disc;
	padding: 0 0 0 20px;
	text-align: left;
}
.year_box .spring li ul li,.year_box .summer li ul li,
.year_box .autmun li ul li,.year_box .winter li ul li,
.year_box .spring li ol li,.year_box .summer li ol li,
.year_box .autmun li ol li,.year_box .winter li ol li{
	background: none;
	padding: 0;
}
.year_box li{
	padding: 0 0 0 18px;
}
.year_box .spring li{
	background: url("images/icon_maru_pink.png") no-repeat left top 9px;
}
.year_box .summer li{
	background: url("images/icon_maru_green.png") no-repeat left top 9px;
}
.year_box .autmun li{
	background: url("images/icon_maru_orange.png") no-repeat left top 9px;
}
.year_box .winter li{
	background: url("images/icon_maru_blue.png") no-repeat left top 9px;
}

#year .free_box{
	border: 1px solid rgba(255,218,238,1);
	padding: 30px;
	border-radius: 20px;
	box-sizing: border-box;
	margin: 20px auto;
}

/* daily */
.daily_box{
	display: flex;
	justify-content:space-between;
}
.daily_l,.daily_r{
	width: 48%;
	justify-content: space-between;
}
.daily_title{
	padding: 10px 20px;
	margin: 0 auto 20px auto;
	border-radius: 10px;
}
.daily_l .daily_title{
	background: rgba(255,218,238,1);
}
.daily_r .daily_title{
	background: rgba(255,239,169,1);
}
.daily_box table{
	width: 100%;
}
.daily_box .daily_l th{
	background: rgba(255,218,238,0.2);
	border: 1px solid rgba(255,218,238,1);
}
.daily_box .daily_l td{
	border: 1px solid rgba(255,218,238,1);
}
.daily_box .daily_r th{
	background:  rgba(255,239,169,0.2);
	border: 1px solid rgba(255,239,169,1);
}
.daily_box .daily_r td{
	border: 1px solid rgba(255,239,169,1);
}
#daily .free_box{
	margin: 20px auto;
}

/* yume */
#yume .free_box{
	margin: 0 auto 30px auto;
}
#yume ul.pdf{
	text-align: center;
}
/*oshirase*/
.oshirase_box{
	overflow-y: scroll;
	min-height: 250px;
	max-height: 250px;
	padding: 0 30px 0 0;
	margin: 0 auto 60px auto;
}
#oshirase dl{
	margin: 0 auto 10px auto;
	display: flex;
	justify-content: flex-start;
	list-style: none;
	box-sizing: border-box;
	border-bottom: 1px dotted rgba(100,80,50,0.5);
	padding: 10px 0 10px 20px;
	background: url("images/icon_maru_pink.png") no-repeat left top 18px / 10px;
}
#oshirase dl:last-of-type{
	margin: 0 auto;
}
.oshirase_date{
	margin-right:2%;
	width: 16%;
}
#oshirase dd{
	width: 85%;
}
#oshirase ul.pdf{
	margin: 20px auto 0 auto;
}

/* gaiyo */
#gaiyo table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 10px;
	margin: 0 auto -10px auto;
}
#gaiyo table th{
	background: rgb(255,220,240);
	border: none;
	border-radius: 20px;
	text-align: center;
}
#gaiyo table td{
	border: 1px solid rgb(255,220,240);
	border-radius: 20px;
}

/* enkaku */
#enkaku dl{
	display: flex;
	justify-content: flex-start;
	margin: 0 auto 10px auto;
	border-bottom: 1px dotted rgba(100,80,50,0.5);
	padding: 0 0 10px 0;
}
#enkaku dl:last-of-type{
	margin: 0 auto;
	border-bottom: none;
	padding: 0;
}
#enkaku dt{
	background: url("images/icon_leaf.png") no-repeat left top 3px / 15px;
	padding: 0 0 0 25px;
	width: 18%;
	box-sizing: border-box;
}
#enkaku dd{
	width: 82%;
}

/* mitorizu */
.mitorizu_box{
	display: flex;
	justify-content: space-between;
}
.map{
	width: 50%;
}
#mitorizu .free_box{
	width: 45%;
}
.mitorizu_photo_box{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 30px auto 0 auto;
}
.mitorizu_photo_box ul{
	padding: 0;
	list-style: none;
	width: 23%;
	margin: 1%;
}
.mitorizu_photo{
	padding-top:60%;
	width: 100%;
	position:relative;
}
.mitorizu_photo img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	border-radius: 20px;
}
li.cap{
	font-size: 15px;
	margin: 5px auto 0 auto;
}

/* footer */
#footer{
	background: url("images/header.jpg") center top / cover;
	padding: 60px 0;
}
.copy{
	text-align: center;
	width: 1000px;
	margin: 0 auto;
	font-size: 15px;
}

/* pagetop */
.pagetop{
    position: fixed;
    bottom: 0;
    right: 0;
	z-index: 5;
	width: 40px;
	height: 40px;
}


@media screen and (max-width:768px){
	

.pc { display: none !important; }
.sp { display: block !important; }
	

.inner_box{
	width: 100%;
	margin: 0 auto;
	padding: 8%;
}
.title_white{
	padding: 20px;
}
.page_title{
	margin: 5% auto 0 auto;
	background: url("images/title.jpg") no-repeat center center / 120%;
}
.title_white{
	padding: 2% 0;
}
.page_title p{
	width: 40%;
}
.section_title{
	margin: 0 auto 40px auto;
	width: 100%;
	background: url("images/h3_line.png") no-repeat center top , url("images/h3_line.png") no-repeat center bottom;
	padding: 20px 0;
}
.section_title p{
	width: 80%;
}
/* 3–‡ 4–‡ */
.free_photo,.free_photo_4{
	display: block;
}
.free_photo li,.free_photo_4 li{
	padding-top:60%;
	width: 100%;
	margin: 0 0 10px 0;
}
/* ‰E‚É1–‡ */
.photo_t{
	padding-top:55%;
	width: 100%;
	margin: 0;
}

	
/* container */
#container{
	min-width: 1px;
}
	
/* header */
.logo{
	background: url("images/header.jpg") no-repeat center top / cover;
	padding: 30px 0;
}
.logo p{
	width: 70%;
	margin: 0 auto;
}
.logo p a{
	width: 100%;
}
/* menu */
body.stop{
	overflow: hidden;
}	
.toggle{
	position: fixed;
	right: 0;
	top: 0;
	z-index: 8;
	width: 40px;
	height: 40px;
	background: url("images/menu_btn_open.png") no-repeat right top / 100%;
	transition: 0.3s;
}
.toggle.close{
	background: url("images/menu_btn_close.png") no-repeat right top / 100%;
	
}
.toggle:hover{
	cursor: pointer;
}
	
/* menu */
.menu{
	margin: 0 auto;
	background: rgba(255,255,255,0.9);
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 6;
	box-sizing: border-box;
	overflow-y: scroll;
	 -webkit-overflow-scrolling: touch;
	display: none;
	padding: 0 0 30% 0;
}
.menu ul{
	display: block;
	width: 100%;
	padding: 20% 10% 25% 10%;
	box-sizing: border-box;
}
.menu li{
	margin: 0 auto 2% auto;
}
.menu li a{
	width: 100%;
	margin: 0 10% 0 0;
	padding: 10% 5%;
	box-sizing: border-box;
	border: 1px solid rgb(105,85,75);
	text-align: center;
	border-radius: 20px;
}

.menu_01 a{
	background: url("images/menu_01_icon.png") no-repeat center top 15% / 10%, url("images/menu_01.png") no-repeat center bottom 20% / 40%;

}
.menu_02 a{
	background: url("images/menu_02_icon.png") no-repeat center top 15% / 10%, url("images/menu_02.png") no-repeat center bottom 20% / 40%;

}
.menu_03 a{
	background: url("images/menu_03_icon.png") no-repeat center top 15% / 10%, url("images/menu_03.png") no-repeat center bottom 20% / 40%;

}
.menu_04 a{
	background: url("images/menu_04_icon.png") no-repeat center top 15% / 10%, url("images/menu_04.png") no-repeat center bottom 20% / 40%;

}
.menu_05 a{
	background: url("images/menu_05_icon.png") no-repeat center top 15% / 10%, url("images/menu_05.png") no-repeat center bottom 20% / 40%;

}
.menu_06 a{
	background: url("images/menu_06_icon.png") no-repeat center top 15% / 10%, url("images/menu_06.png") no-repeat center bottom 20% / 40%;

}

/* swiper */
#slide{
	min-width: 1px;
	margin: 0 auto 5% auto;
}
.swiper-slide{
	padding-top:50%;
}
.catch{
	width: 50%;
	height: 45vw;
	left: 5%;
}

/*topics*/
.topics_box{
	overflow-y: scroll;
	min-height: 250px;
	max-height: 250px;
	padding: 0 30px 0 0;
}
#topics dl{
	margin: 0 auto 10px auto;
	display: block;
	padding: 10px 0 20px 20px;
}
#topics dl:last-of-type{
	margin: 0 auto;
}
.topic_date{
	margin-right:0;
	width: 100%;
}
#topics dd{
	width: 100%;
}
	
/* kihon */
#kihon table th{
	display: block;
	width: 100%;
	border-radius: 10px 10px 0 0;
}
#kihon table td{
	display: block;
	width: 100%;
	border-radius: 0 0 10px 10px;
}
#kihon table th th,#kihon table td th{
	display: table-cell;
	width: auto;
	border-radius: 0;
}
#kihon table th td,#kihon table td td{
	display: table-cell;
	width: auto;
	border-radius: 0;
}

/* gmap */
#gmap{
	padding-top: 60%;
}
	
/*rinen*/
.rinen_box{
	flex-wrap: wrap;
}
.rinen_box .free_box{
	width: 100%;
	flex: none;
	margin: 0 auto 20px auto;
}

/* kangaekata */
.post_box{
	flex-wrap: wrap;
}
.post_txt{
	flex: none;
	width: 100%;
}
.flex_photo_2{
	margin: 20px auto 0 auto;
}
	
/* year */
.year_box{
	flex-wrap: wrap;
}
.spring,.summer,.autmun,.winter{
	width: 100%;
}
.spring{
	border-right: none;
	padding:20px 0;
	border-bottom: 1px dotted rgba(100,80,50,0.5);
}
.summer{
	padding: 20px 0;
}
.autmun{
	border-right:none;
	padding: 20px 0;
}
.winter{
	padding: 20px 0;
}
	
/* daily */
.daily_box{
	flex-wrap: wrap;
}
.daily_l,.daily_r{
	width: 100%;
}

.daily_box table{
	width: 100%;
}
.daily_l{
	margin: 0 auto 20px auto;
}
	

/*oshirase*/
#oshirase dl{
	display: block;
}
#oshirase dl:last-of-type{
	margin: 0 auto;
}
.oshirase_date{
	margin-right:0;
	width: 100%;
}
#oshirase dd{
	width: 100%;
}
#oshirase ul.pdf{
	margin: 20px auto 0 auto;
}

/* gaiyo */
#gaiyo table th{
	display: block;
	width: 100%;
	border-radius: 10px 10px 0 0;
}
#gaiyo table td{
	display: block;
	width: 100%;
	border-radius: 0 0 10px 10px;
}
#gaiyo table th th,#gaiyo table td th{
	display: table-cell;
	width: auto;
	border-radius: 0;
}
#gaiyo table th td,#gaiyo table td td{
	display: table-cell;
	width: auto;
	border-radius: 0;
}

/* enkaku */
#enkaku dl{
	display: block;
}
#enkaku dt{
	width: 100%;
	box-sizing: border-box;
}
#enkaku dd{
	width: 100%;
	padding: 0 0 0 25px;
	box-sizing: border-box;
}
	
/* mitorizu */
.mitorizu_box{
	display: block;
}
.map{
	width: 100%;
}
#mitorizu .free_box{
	width: 100%;
	margin: 30px auto 0 auto;
}
.mitorizu_photo_box ul{
	width: 100%;
	margin: 0 0 20px 0;
}
.mitorizu_photo_box ul:last-of-type{
	margin: 0;
}
	
/* footer */
#footer{
	padding: 11% 0;
}
.copy{
	width: 70%;
	font-size: 13px;
}

}
	
@media screen and (max-width:480px){

.tel a{
	pointer-events: auto;
	
}
.menu_01 a{
	background: url("images/menu_01_icon.png") no-repeat center top 25% / 10%, url("images/menu_01.png") no-repeat center bottom 20% / 40%;

}
.menu_02 a{
	background: url("images/menu_02_icon.png") no-repeat center top 25% / 10%, url("images/menu_02.png") no-repeat center bottom 20% / 40%;

}
.menu_03 a{
	background: url("images/menu_03_icon.png") no-repeat center top 25% / 10%, url("images/menu_03.png") no-repeat center bottom 20% / 40%;

}
.menu_04 a{
	background: url("images/menu_04_icon.png") no-repeat center top 25% / 10%, url("images/menu_04.png") no-repeat center bottom 20% / 40%;

}
.menu_05 a{
	background: url("images/menu_05_icon.png") no-repeat center top 25% / 10%, url("images/menu_05.png") no-repeat center bottom 20% / 40%;

}
.menu_06 a{
	background: url("images/menu_06_icon.png") no-repeat center top 25% / 10%, url("images/menu_06.png") no-repeat center bottom 20% / 40%;

}
	
.daily_box th{
	width: 40%;
}
	
}

