
@charset "utf-8";
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}

html { font-size: 62.5%; 
		overflow: auto;
    scroll-behavior: smooth;
	}
body{
	overflow: hidden;
	font-size: 1.6em;

}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1.8;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}

body,a{
	letter-spacing: 0.5px;
	color:#333;
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
	word-break: break-all;
}

.serif{
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.txt_ctr{
	text-align: center;
}

a.line:hover{
	text-decoration: underline;
	color:#ff0000;
}


.w1200{
	width: 1200px;
	max-width: 100%;
	margin-right:auto;
	margin-left:auto;
}

.w800{
	width: 800px;
	max-width: 100%;
	margin-right:auto;
	margin-left:auto;
	margin-bottom: 50px;
}

a:hover{
	opacity: .5;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
}

a img:hover{
	opacity: .5;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
}

img{
	max-width: 100%;
}

.flex{
	display: flex;
}

.btn{
	text-align: center;
	margin-top:20px;
	margin-bottom: 80px;
}

.btn a,.btn button{
	display: inline-block;
	color:#fff;
	padding:5px 50px;
	border-radius: 30px;
	position: relative;
}

.btn a:after{
	position: absolute;
	right:10px;
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.btn.none{
	text-align: center;
}
.btn.none p{
	text-align: center;
	margin-top:50px;	
	background:#dab9a8;
	display: inline-block;
	color:#fff;
	padding:5px 30px;
	border-radius: 30px;
}

.btn a:hover,button:hover{
	opacity: 0.5;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;	
}
.btn.status{
	margin: 30px auto;
}
.btn.status a{
	  background: #622a09;
    border: 1px solid #622a09;
    color: #fff;
    padding-bottom: 20px;
}

.btn.status a:after{
	position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}


.font_s{
	margin-top:10px;
	font-size:1.3rem;
}


header{
	display: flex!important;
	align-items: center;
  justify-content: space-between;
}

header ul{
	display: flex;
	align-items: center;
}

header ul li{
	margin-left:20px;
}

header ul li a{
	font-size:1.4rem;
	color:#452305;
}


/****************************************************************************************************************************
		サイドナビ
****************************************************************************************************************************/
.sideNavi{
	display: block;
	width: 300px;
	height: 100%;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: auto;
	right:0;
	z-index: 10000;
	overflow: hidden;
	-moz-transform: translate(317px, 0);
	-webkit-transform: translate(317px, 0);
	-o-transform: translate(317px, 0);
	-ms-transform: translate(317px, 0);
	transform: translate(317px, 0);
	-moz-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;

}

.sideNavi.on{
	-moz-transform: translate(0px, 0);
	-webkit-transform: translate(0px, 0);
	-o-transform: translate(0px, 0);
	-ms-transform: translate(0px, 0);
	transform: translate(0px, 0);
	-moz-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

.sideNavi .sideNavi_in{
	width: 317px;
	height: 100%;
	overflow-y: scroll;
	position: absolute;
}

.sideNavi .sideNavi_in .sideNavi_box{
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 60px;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding: 0 0 0 15px;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title p{
	flex: 1;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn{
	width: 60px;
	height: 60px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	cursor:pointer;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn span{
	width: 31px;
	height: 31px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn span:before{
	content: '';
	display: block;
	width: 31px;
	height: 1px;
	background-color: #111;
	position: absolute;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	margin: auto;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn span:after{
	content: '';
	display: block;
	width: 1px;
	height: 31px;
	background-color: #111;
	position: absolute;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	margin: auto;
}

.sideNavi .sideNavi_in .sideNavi_box .menu{
	border-top: solid 1px #ddd;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li{
	display: block;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li a{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	padding: 0 40px 0 15px;
	color: #111;
	position: relative;
	font-weight: bold;
}

/*.sideNavi .sideNavi_in .sideNavi_box .menu li a:after{
	font-family: fontawesome;
	content: '\f101';
	font-size: 20px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 0;
	left: auto;
	right: 10px;
	bottom: 0;
	margin: auto;
	color: #6bccd1;
	font-weight: normal;
}*/

.sideNavi .sideNavi_in .sideNavi_box .menu li a:hover{
	background-color: #f6f3f2;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
}

/*.sideNavi .sideNavi_in .sideNavi_box .menu li a:hover:after{
	color: #fff;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
}*/

.sideNavi .sideNavi_in .sideNavi_box .menu li.on a{
	background-color: #004e83;
	color: #fff;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li.on a:after{
	display: none;
}

.sideNavi_bg{
	display: none;
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background-color: rgba(0,0,0,0.4);
	cursor:pointer;
}

.trigger{
	display: none;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 40px;
	height: 22px;
	position: fixed;
	cursor:pointer;
	top: 0;
	margin-top:20px;
	right:20px;
}

.trigger p{
	display: block;
	content: '';
	width: 20px;
	height: 2px;
	background-color: #706f70;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

.trigger:before{
	display: block;
	content: '';
	width: 30px;
	height: 2px;
	background-color: #706f70;
	position: absolute;
	top:2px;
	left: 0;
	bottom:auto;
	margin: auto;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}


.menu_sp_text{
	display: none;
}

@media screen and (max-width: 950px){
	.trigger{
		display: flex;
		z-index: 3;
	}
	.menu_sp_text{
		position: fixed;
		display: block;
		font-size:1.0rem;
		top:40px;
		right:30px;
		z-index: 3;		
	}
	.sideNavi .sideNavi_in .sideNavi_box .menu li a:after{
		right: 30px;
	}
	.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn{
		margin-right: 15px;
	}
	header .subnav{
		display: none;
	}
	.parent_menu{
		display: none;
	}
	header .menu > nav{
		display: none;
	}

}



/*********************************************************
	アニメーション


body{
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
    animation: fadeIn 1.5s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.scroll-animation-obj {
  opacity: 0;
  transition: all 1s ease .5s;
}
.scroll-animation-hop {
  transform: translate(0,30px);
}
.scroll-animation-left {
  transform: translate(-120px,0);
}
.scroll-animation-right {
  transform: translate(120px,0);
}
**********************************************************/
/*********************************************************
	ヘッダー
**********************************************************/
header{
	padding:20px 0;
}
.mv{
	width: 100%;
	height: 500px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position:top right 30%;
}

.banner.flex{
	width: 100%
	display: flex;
	flex-wrap: wrap;
	margin:50px auto;
}
.banner.flex a{
	display: block;
	margin:0 10px;
}


.area_list{
	display: flex;
	justify-content: center;
}

.search_area{
	margin-top: 80px;
}

.search_area h2{
	font-size:2.6rem;
	font-weight: bold;
	text-align: center;
	margin-bottom:20px;
}

.search_area li{
	width: 9%;
	margin-right:1%;
	text-align: center;

	display: flex;

}

.search_area li a{
	display: block;
	width: 100%;
	background:#622a09;
	color:#fff;
	position: relative;
	border-radius: 50px;
	border:solid 1px #622a09;
}

.search_area li span{
	text-align: center;
}

.search_area li a:hover{
	background:#fff;
	color:#622a09;
	opacity: 1;
}

.search_area li a:after{
  content: "\f054";
  font-size: 1.2rem;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  right: 10px;
  position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);  
  margin-top: 2px;
}

/************************************************
	検索ボックス
*************************************************/
.search_detail{
	margin:50px auto;
	border:1px solid #452305;
	padding:30px;
	box-sizing: border-box;
	color:#452305;
}
.search_detail .flex{
	margin:10px 0;
}
.search_detail h2.formttl{
	font-size:2.4rem;
	font-weight: bold;
	text-align: center;
	}
.search_detail h2{
	font-size:2.0rem;
	font-weight: bold;
}
.search_detail label input[type="checkbox"]{
	margin-right:10px;
}

.search_detail .flex label{
	margin-left:20px;
	font-size:1.8rem;
}
.search_detail input[type="text"]{
	border:1px solid #452305;
	padding:0 10px;
	width: 300px;
	max-width: 100%;
}
.search_detail input[type="submit"]{
	margin-left:10px;
	display: block;
	background:#622a09;
	border:1px solid #622a09;
	color:#fff;
	padding:10px 50px;
	box-sizing: border-box;
	margin:30px auto 0 auto;
}

.search_detail input[type="submit"]:hover{
	background:#fff;
	color:#452305;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;	
}

.result{
	margin:30px auto;
}

.search.result_page .search_detail{
	margin-top:50px;
}

/************************************************
	フォームリセットCSS
*************************************************/


button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}
/*
input[type='checkbox'],
input[type='radio'] {
  display: none;
}
*/
input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}



/************************************************
	トップページ一覧
*************************************************/
.home .top_list{
	margin-top:100px;
	margin-bottom:50px;
}

.top_list ul{
	display: flex;
	flex-wrap: wrap;
}

.top_list ul li{
	width: 32%;
	margin-right:2%;
	margin-bottom:5%;
}

.top_list ul li:nth-child(3n){
	margin-right:0;
}

.top_list ul li a img{
	width: 100%;
}

.top_list h2{
	font-size:2.6rem;
	text-align: center;
	font-weight: bold;
	margin-bottom:20px;
}
.top_list h2 span{
	display: block;
	font-size: 1.4rem;
	font-weight: normal;
	margin-top: 10px;
}

.price{
	display: flex;
	flex-wrap: wrap;
	margin-top:20px;
}

.price dt{
	width: 18%;
	font-weight: bold;
}

.price dd{
	width: 82%;
}

p.more{
	text-align: right;	
	color:#C94D33;
	margin-top:20px;
	font-weight: bold;
	font-size:1.4rem;
}

p.more:hover{
	color:#111;
}



.top_list p.ttl{
	font-weight: bold;
	font-size:2.0rem;
	margin:10px 0;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-height: 1.5;
	color:#452305;
}

.top_list .btn,.top_back .btn,.btn.status{
	text-align: center;
}

.selecttype_wrap .top_back .btn{
	margin-top: 30px;
}

.top_back .btn{
	margin-top:80px;
}

.top_list .btn a,.top_back .btn a{
	background:#622a09;
	border:1px solid #622a09;
	color:#fff;
}

.slide-arrow{
	position:absolute;
	/*上下中央に矢印配置*/
	top:50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index:100;
	cursor:pointer;/*ポインター表示にし、クリック可能なことを視覚的にわかりやすくします*/
}
.slide-arrow::before{
	display:block;
	width: 20px;
	height: 20px;
}
.next-arrow{ right:10px; }/*内側に右から10ピクセル移動*/
.prev-arrow{ left:10px; }/*内側に左から10ピクセル移動*/
.next-arrow::before{
	content:'';/*右矢印のアイコンフォント*/
	background-image: url(../img/arrow01.png);
	background-size: cover;
}
.prev-arrow::before{
	content:'';/*右矢印のアイコンフォント*/
	background-image: url(../img/arrow02.png);
	background-size: cover;
}

/************************************************
	シングルページ
*************************************************/


.single_mv{
	width: 800px;
	margin:50px auto 20px auto;
}
.single_mv img{
	display: block;
	margin:0 auto;
	width: 100%;
}

.single_sub_img {
	width: 800px;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.single_sub_img li{
	width: 20%;
}

.editor{
	padding:80px 0;
}
.editor a{
  border-bottom:1px solid #C94D33;
  color: #C94D33;
}
.selecttype_wrap a{
  border-bottom:1px solid #C94D33;
  color: #C94D33;	
}
.single h1{
	font-size:2.4rem;
	border:1px solid #452305;
	padding:5px 15px;
	color:#452305;
	font-weight: bold;
}

.single dl{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

.single dl dt{
	width: 17%;
	margin-bottom:30px;
	background: #622a09;
	color:#fff;
	text-align: center;
	margin-right:3%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.single dl dd{
	width: 80%;
	margin-bottom:30px;
}

.single dl dd a{
	border-bottom: 1px solid #C94D33;
	color:#C94D33;
}

.teacher{
	background: #f6f6f6;
	padding:20px 30px;
	box-sizing: border-box;
	margin:50px auto;
}

.single .teacher .ttl{
	font-size:1.8rem;
	font-weight: bold;		
	margin:0 auto 20px auto;
	border-bottom:1px solid #452305;
}

.teacher .teacher_name{
	font-size:2.0rem;
	font-weight: bold;	
	color:#452305;
	margin-bottom: 10px;
	letter-spacing: 0.1em;
}

.teacher .flex .img{
	margin-right:5%;
	width: 182px;
}
.teacher .flex .img img{
	width: 100%;
}


.teacher .flex .text{
	flex: 1;
}

.event_link a{
	background: #C94D33;
	border:1px solid #C94D33;
	color:#fff;
	display: inline-block;
	padding:10px 40px;
	margin-bottom:50px;
}
.event_link a:hover{
	background: #fff;	
	color:#C94D33;
}
.today {
	margin:50px auto;
}
.today .ttl{
	font-weight: bold;
	font-size:2.0rem;
}

.single .ttl{
	font-size:2.0rem;
	font-weight: bold;
	margin:50px 0 10px 0;
}

.single .access{
	margin:50px auto;
	border: 1px solid #333;
	padding: 30px;
}
.single .access .ttl{
	margin-top: 0;
	color: #452305;
}
.single .access iframe{
	width: 400px;
	max-width: 100%;
	height: 300px;
}
.single .cansel{
	font-size: 1.4rem;
}

.selecttype{
	width: 100%;
	height:800px;	
	margin-top: 30px;
}
.selecttype_iframe{
	height: 100%;
	width: 100%;
}

.selecttype_wrap.tag .selecttype{
	height: auto;
}

.selecttype_wrap.tag .selecttype iframe{
	width: 100%;
	height: 500px;
	display: block;
	margin: 50px auto;
}

.selecttype_wrap .tel{
	margin-bottom: 30px;
}

.search .top_list{
	margin-top:50px;
}

.search .search_detail,.single .search_detail{
	margin-top:150px;
}

.notice{
	color: #ff0000;
}

.eventtype_link_text{
	margin-bottom: 20px;
}

.eventtype_link{
	width: 800px;
	margin: 0 auto;
}
.eventtype_link a{
	color: #fff;
	background: #C94D33;
	display: inline-block;
	padding: 5px 20px;
	box-sizing: border-box;
	margin-bottom: 25px;
	border-radius: 5px;
	font-weight: 500;
	border: 2px solid #C94D33;
	width: 310px;
}

.eventtype_link a:after{
  content: "\f08e";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  margin-left: 10px;
}
.eventtype_link a:hover{
	color: #C94D33;
	background: #fff;	
	opacity: 1;
}
.eventtype .ttl{
	margin-bottom: 30px;
}
.eventtype .year{
	font-size: 2.2rem;
	font-weight: 600;
}
.eventtype_date{
	font-size: 1.8rem;
	color: #452305;
}

.eventtype_link2 a{
	color: #fff;
	background: #fff;
	border: 2px solid #C94D33;
	color: #C94D33;
	display: inline-block;
	padding: 5px 30px;
	box-sizing: border-box;
	margin-bottom: 25px;
	border-radius: 5px;
	font-weight: bold;
}

.eventtype_link2 a:after{
  content: "\f08e";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  margin-left: 10px;
}
.eventtype_link2 a:hover{
	background: #C94D33;
	color: #fff;	
	opacity: 1;
}

.eventtype_link3 a{
	color: #fff;
	background: #8b6442;
	display: inline-block;
	padding: 5px 30px;
	box-sizing: border-box;
	margin-bottom: 25px;
	border-radius: 5px;
	font-weight: 500;
	border: 2px solid #8b6442;
}

.eventtype_link3 a:after{
  content: "\f08e";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  margin-left: 10px;
}
.eventtype_link3 a:hover{
	color: #8b6442;
	background: #fff;
	opacity: 1;
}

.eventtype_link4 a{
	color: #fff;
	background: #C94D33;
	display: inline-block;
	padding: 5px 120px;
	box-sizing: border-box;
	margin-bottom: 25px;
	border-radius: 5px;
	font-weight: 500;
	border: 2px solid #C94D33;
}

.eventtype_link4 a:after{
  content: "\f08e";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  margin-left: 10px;
}

.eventtype_link4 a:hover{
	color: #C94D33;
	background: #fff;	
	opacity: 1;
}

.eventtype_link5 a{
	color: #fff;
	background: #fff;
	border: 2px solid #C94D33;
	color: #C94D33;
	font-weight: bold;
	display: inline-block;
	padding: 5px 120px;
	box-sizing: border-box;
	margin-bottom: 25px;
	border-radius: 5px;
}

.eventtype_link5 a:after{
  content: "\f08e";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  margin-left: 10px;

}
.eventtype_link5 a:hover{
	background: #C94D33;
	color: #fff;	
	opacity: 1;
}

.eventtype_link6 a{
	color: #fff;
	background: #8b6442;
	font-weight: bold;
	display: inline-block;
	padding: 5px 120px;
	box-sizing: border-box;
	margin-bottom: 25px;
	border-radius: 5px;
	font-weight: 500;
	border: 2px solid #8b6442;
}

.eventtype_link6 a:after{
  content: "\f08e";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  margin-left: 10px;
}

.eventtype_link6 a:hover{
	color: #8b6442;
	background: #fff;	
	opacity: 1;
}


footer{
	margin-top:150px;
	background: #622a09;
	padding:50px 0;
	color:#fff;
	text-align: center;
}

footer ul{
	display: flex;
	margin-bottom:30px;
	flex-wrap: wrap;
}

footer ul li a{
	color:#fff;
	margin:0 20px;
}



/************************************************
	アーカイブページ
*************************************************/

.archive .top_list{
	margin-top:0;
}

.pagination{
	display: flex;
	margin-top:50px;
  -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}

.pagination .page-numbers{
	margin:0 10px;
	font-size:1.8rem;
}

.pagination .page-numbers.current{
	color:#ff0000;
}

.pagination .page-numbers{
	color:#452305;
}

.label_wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.place_label{
	background: #e5e5e5;
	display: inline-block;
	border-radius: 20px;
}
.place_label p{
	font-size:1.3rem;
	padding:5px 10px;
	line-height: 1.2;
	color: #fff;
}
.place_label.nippori{
	background: #d67e5a;	
}
.place_label.semba{
	background: #55a0a0;	
}
.place_label.fukuoka{
	background: #c3778e;
}
.place_label.rlb{
	background: #7c72a6;
}
.place_label.dealer{
	background: #9e8772;
}
.place_label.event{
	background: #8fbedb;
}


.type_label{
	background: #fff;
	border-radius: 20px;
	box-sizing: border-box;
	text-align: right;


}
.type_label span{
	display: block;
	color:#777;
	font-size:1.2rem;
	text-align: right;
}

.content_text{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.single dl.tokusho{
	margin-top: 50px;
	display: flex;
	align-items: stretch;
}
.single dl.tokusho dt{
	width: 35%;
	background: none;
	color: #000;
	font-weight: bold;
	border-bottom: 1px solid #ccc;
	padding-bottom: 30px;
}
.single dl.tokusho dd{
	width: 60%;
	border-bottom: 1px solid #ccc;	
	padding-bottom: 20px;
}




.selecttype.pc{
	display: block;
}
.selecttype.sp{
	display: none;
}

.moresee{
	margin: 50px auto;
	text-align: center;
}
.moresee.is-btn-hidden{
	display:none;
}

.moresee button{
	color: #fff;
	background: #452305;
	display: inline-block;
		padding: 10px 50px 15px 50px;
    border-radius: 30px;
   position: relative;
}

.moresee button:after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}
.renewal .link {
	margin-top: 50px;

}
.renewal .link p{
	font-size: 2.0rem;
	font-weight: bold;
	color: #C94D33;
}
.renewal .link p span{
	font-size: 2.8rem;
}
.renewal .link a{
	background: #ff7c00;
	padding: 10px 30px;
	border-radius: 10px;
	text-align: left;
	font-size: 2.0rem;
}
.renewal .link .btn{
	text-align: left;
}
br.sp{
	display: none;
}
	@media screen and (max-width: 1200px){	
	br.sp{
		display: block;
	}
		header{
			padding:20px;
			box-sizing: border-box;	
		}
		.banner.flex a{
			width: 49%;
			margin-right:2%;
		}
		.banner.flex a img{
			width: 100%;
			display: block;
		}
		.banner.flex:nth-child(odd) a{
			margin-right:0;
		}
		.area_list{
			flex-wrap: wrap;
			justify-content: flex-start;
		}
		.search_area li{
			width: 12%;
			margin-bottom:10px;
		}		
		.search_detail .flex{
			flex-wrap: wrap;
		}
		.search_detail h2{
			width: 100%;
		}
		.price{
			flex-wrap: wrap;
		}
		.search_detail{

		}
		.home .top_list{
			margin-top:50px;
		}
		.top_list ul li{
			width: 49%;
		}
		.top_list ul li:nth-child(3n){
			margin-right:2%;
		}		
		.top_list ul li:nth-child(even){
			margin-right:0;
		}

		.wrap{
			padding-right:10px;
			padding-left:10px;
			box-sizing: border-box;
		}
		main.single,main.archive,main.search{
			padding-right:10px;
			padding-left:10px;
			box-sizing: border-box;
		}
		.single_mv{
			width: 100%;
		  margin: 20px auto 20px auto;
		}
		.single_sub_img{
			width: 100%;
		}
		aside.sidebar{
			padding: 0 10px;
		}
	}

	@media screen and (max-width: 800px){
		.mv {
   		width: 100%;
    	height: 300px;
    	background-position:top right 20%;
  	}
		.price dt{
			width: 100%;
		}
		.price dd{
			width: 100%;
		}		
	}
	@media screen and (max-width: 750px){

		header {
			padding-right:10px;
			padding-left:10px;
			box-sizing: border-box;
		}
		header ul{
			display: flex;
			align-items: center;
			flex-wrap: wrap;
	  justify-content: flex-end;
	  align-items: center;	
		}

		header ul li{
			margin-left:10px;
		}

		header ul li a{
			font-size:1.2rem;
			color:#452305;
			line-height: 1;
		}	


		.search_area h2{
			font-size:2.0rem;
		}
		.search_area li{
			width: 18%;
		}
		.top_list ul li{
			margin-bottom: 8%;
		}
		.top_list .btn a{
			font-size:1.4rem;
		}
		.top_list h2{
			font-size:1.8rem;
		}
		.search_detail input[type="submit"]{
			font-size:1.4rem;
		}
		.place_label p{
			font-size:1.2rem;
			padding:3px 5px;
			line-height: 1.3;
		}
		.place_label{
			border-radius: 5px;
		}
		.label_wrap{
			display: block;
		}

		.type_label span{
			text-align: left;
		}



		footer{
			margin-top:50px;
			padding:30px 0;
		}
		footer ul{
			display: block;
			flex-wrap: wrap;
		}
		footer ul li a{
			display: block;
			font-size:1.4rem;
		}
		footer .copyright{
			font-size:1.2rem;
		}
		h1{
			font-size:1.8rem;
		}
		.single h1{
			font-size:1.8rem;
		}
		.single p{
			font-size:1.4rem;
		}
		.single p.eventtype_date{
			font-size: 1.8rem;
		}
		.single dl dd{
			width: 75%;
			font-size:1.4rem;
		}
		.single dl dt{
			width: 22%;
			font-size:1.4rem;
		}
		.editor{
			padding:30px 0;
		}
		.search .search_detail, .single .search_detail{
			margin-top:50px;
		}
	}
	@media screen and (max-width: 500px){

		.selecttype.sp{
			display: block;
		}
		.selecttype.pc{
			display: none;
		}
		.mv{
			width: 100%;
			height: 150px;
			background-position:top center;
		}
		.search_area h2{
			font-size:2.0rem;
		}
		.search_area li a{
			font-size:1.4rem;
		}
		.search_area li{
			width: 30%;
		}
		.search_detail{
			padding:20px;
		}
		.search_detail .flex label{
			font-size:1.4rem;
		}
		.search_detail h2{
			font-size:1.6rem;
		}
		.top_list h2 span{
			display: block;
			font-size: 1.2rem;
			font-weight: normal;
			margin-top: 10px;
			text-align: left;
		}

		.top_list p.ttl{
			font-size:1.4rem;
			line-height: 1.5;
			margin: 5px 0 3px 0;
		}
		.price{
			font-size:1.2rem;
			margin-top: 10px;
		}
		.content_text{
			font-size:1.2rem;
		}

		p.more{
			font-size: 1.2rem;
			margin-top: 10px;
		}

		.selecttype{
			height: 600px;
			overflow-y: hidden;
			
		}
		.selecttype iframe{
		    width: 100%;
		    height: 600px;
		    /* 下記を追加 */
		    overflow-y: hidden;
		}
		.eventtype .ttl{
			font-size: 1.6rem;
		}
		.eventtype .year{
			font-size: 1.8rem;
		}
		.teacher .flex{
			display: block;
		}
		.teacher .flex .img{
			margin:10px auto;
			max-width: 100%;
			width: 70%;
		}
		.teacher .flex .img img{
			display: block;
			margin:0 auto;
			width: 100%;
		}
.renewal .link {
	margin-top: 50px;

	}
	.renewal .link p{
		font-size: 1.6rem;
	}
	.renewal .link p span{
		font-size: 2.4rem;
	}
	.renewal .link a{
		width: 100%;
		display: block;
		background: #ff7c00;
		padding: 10px 20px;
		font-size: 1.8rem;
		box-sizing: border-box;
		text-align: center;
	}
	.renewal .link .btn{
		text-align: left;
	}
	.renewal .link .btn a:after{
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

}


	@media screen and (max-width: 350px){
		header{
			padding:10px;
			box-sizing: border-box;	
		}		
		header ul li a{
			font-size: 1.2rem;
		}
		.banner.flex a{
			width: 100%;
			margin-right:0;
		}
		.single dl dd{
			width: 100%;
		}
		.single dl dt{
			width: 100%;
		}
		.eventtype_link4 a{
			width: 100%;
			padding: 5px 0;
			text-align: center;
		}
	
	}	

.single.tos .menu{
	border: 5px solid #f6f2f1;
	padding: 30px;
	box-sizing: border-box;
	display: inline-block;
}
.single.tos .menu ul li:before{
	content: "\f105";
	font-family: "Font Awesome 6 Free";
	margin-right: 10px;
	font-weight: 900;
}

.single.tos .menu ul li{
	padding-left:1em;
	text-indent:-1em;
}

.single.tos h1{
	margin-bottom: 50px;
}
.single.tos h2{
	color: #442304;
	font-size: 2.6rem;
	line-height: 1.2;
	font-weight: bold;
	border-left: 20px solid #C94D33;
	padding-left: 10px;
	margin-bottom: 30px;
	margin-top: 80px;
}

.single.tos h2+h3{
	margin-top: 20px;
}
.single.tos h3{
	color: #442304;
	font-size: 2.0rem;
	margin: 50px auto 30px auto;
	font-weight: bold;
}
.single.tos .flow ul{
	display: flex;
	margin: 50px auto;
}

.single.tos .flow ul li{
	width: 31%;
	margin-right: 2%;
	background: #f6f2f1;
	padding:30px;
	box-sizing: border-box;
	position: relative;
}
.single.tos .flow ul li:last-child{
	margin-right: 0;
}
.single.tos .flow ul li p.ttl{
	margin-top: 0;
}
.single.tos .flow ul li:after{
  font-family: "Font Awesome 5 Free";
  content: "\f0da";
  font-weight: 900;
  display: block;
  position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);  
}
.single.tos .flow ul li:last-child:after{
	content: none;
}
.single.tos p{
	margin-bottom: 1em;
}

.single.tos p a{
	border-bottom: 1px solid #333;
}
.single.tos2 h1{
	margin-bottom: 30px;
}
.single.tos2 h2{
	font-size: 2.2rem;
	font-weight: bold;
	margin: 50px 0 20px 0;
}
.single.tos2 h3{
	font-size: 1.9rem;
	font-weight: bold;
	margin: 30px 0 20px 0;
}
.single.tos2 h4{
	font-size: 1.6rem;
	font-weight: bold;
	margin: 20px 0 10px 0;
}
.single.tos2 p a{
	border-bottom: 1px solid #333;
}
.single.tos2 ul {
	margin: 20px 0;
}
.single.tos2 ul li span{
	font-weight: bold;
}
.single.tos2 ul li:before{
	content: "・";
}
.single.tos2 ul li{
	padding-left: 1em;
	text-indent: -1em;
}
.single.tos2 .end{
	margin-top: 50px;
}
.single.tos2 .end p+p{
	margin-top: 1em;
}
.single.tos2 span.under{
	border-bottom: 1px solid #333;
}

	@media screen and (max-width: 900px){
		.single.tos .flow ul{
			display: block;
			margin: 50px auto;
		}

		.single.tos .flow ul li{
			width: 100%;
			margin-right: 0;
			margin-bottom: 20px;
		}
		.single.tos .flow ul li:after{
		  font-family: "Font Awesome 5 Free";
		  content: "\f0dd";
		  font-weight: 900;
		  display: block;
		  position: absolute;
	    bottom: -20px;
	    top: auto;
	    left: 50%;
	    right: auto;
		  transform: translateX(-50%);
		  -webkit-transform: translateX(-50%);
		  -ms-transform: translateX(-50%);
		}
		.single.tos .flow ul li:last-child:after{
			content: none;
		}

	}
	@media screen and (max-width: 500px){
		.single.tos h1{
			margin-bottom: 20px;
		}
		.single.tos h2{
			font-size: 2.0rem;
			margin-bottom: 20px;
	    margin-top: 50px;
		}
		.single.tos .flow ul li p.ttl{
			font-size: 1.6rem;
		}
		.single.tos h3 {
			font-size: 1.8rem;
		}
		.single.tos p a{
			font-size: 1.6rem;
		}
	}

.single.news h1{
	margin-bottom: 50px;
}
.single.news p{
	margin-bottom: 1em;
}
.single.news .date{
	font-size: 1.8rem;
	color: #ff0000;	
	margin: 20px 0;
}
.single.news .date span{
	font-size: 3.0rem;
	font-weight: bold;
}
.single.news .btn{
	text-align: left;
}
.single.news .btn a{
	background: #ff7c00;
	color: #fff;
	padding: 30px 50px;
	font-size: 2.0rem;
	border-radius: 5px;
}

.single.news a{
	border-bottom: 1px solid #C94D33;
  color: #C94D33;
}

.single.news table{
	border: 1px solid #ccc;
	margin: 20px 0;
}
.single.news table td{
	border: 1px solid #ccc;	
	padding: 10px;
	font-weight: bold;
}
.single.news table td span{
	font-weight: normal;
}
.single.news h3{
	font-weight: bold;
	font-size: 2.0rem;
	margin-bottom: 20px;
}
.single.news .col{
	margin-bottom: 50px;
}

.cancel ul{
	margin: 30px auto;
}

.cancel ul li{
	padding-left:1em;
	text-indent:-1em;
}

.cancel .img img{
	display: block;
	margin-bottom: 50px;
}
.cancel .flex .img{
	margin-right: 30px;
} 

	@media screen and (max-width: 500px){
		.cancel .flex{
			display: block;
		}
		.single.cancel p a{
			font-size: 1.4rem;
		}
	}

/*************************************************
	ロックミシンカバーサイズページ
**************************************************/
dl.lockmishin_cover{
	align-items: center;
	border-bottom: 1px solid #333;
	margin-bottom: 30px;	
	padding-bottom: 30px;
}
dl.lockmishin_cover dt{
	width: 30%;
	margin-right: 3%;
	background-color: #fff;
	color: #333;
	text-align: left;
  justify-content:flex-start;
  padding: 5px 20px 5px 0;
  box-sizing: border-box;
	margin-bottom: 0;

}
dl.lockmishin_cover dd{
	width: 67%;
	margin-bottom: 0;

}
	@media screen and (max-width: 1000px){
		dl.lockmishin_cover dt{
			width: 40%;
			margin-right: 3%;
		}
		dl.lockmishin_cover dd{
			width: 57%;
		}		
	}
	@media screen and (max-width: 750px){
		dl.lockmishin_cover dt{
			width: 100%;
			margin-right: 0;
			margin-bottom: 5px;
			font-weight: bold;
		}
		dl.lockmishin_cover dd{
			width: 100%;
		}		
	}