@charset "UTF-8";

/* mainheader */
.mainheader {
	position: relative;
	background: url('../images/bg_mainheader.jpg') no-repeat center top / cover;
	width: 100%;
	height: 230px;
	padding-top: 80px;
}
.mainheader::before {
	content: '';
	display: block;
	position: absolute;
	background: repeating-linear-gradient(135deg, #eee, #eee 5px, rgba(255, 255, 255, 0) 5px, rgba(255, 255, 255, 0) 10px);
	width: calc(100% - 100px);
	height: 100px;
	top: -20px;
	left: 0;
	z-index: -2;
}
/* title */
.mainttl {
	font-size: 3.0rem;
	font-weight: bold;
	margin-top: 50px;
}
.mainttl.sp2line {
	margin-top: 30px;
}
/* breadcrumb */
.breadcrumb {
	margin-left: auto;
	margin-right: auto;
	margin-top: 1.0rem;
}
.breadcrumb ol {
	list-style: none;
	font-size:  1.0rem;
	margin-bottom: 0;
	padding-left: 0;
}
.breadcrumb ol li {
	position: relative;
	display: inline-block;
}
.breadcrumb ol li + li {
	padding-left: 1.5rem;
}
.breadcrumb ol li + li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	display: block;
	width: 6px;
	height: 6px;
	transform: translateY(-50%) rotate(45deg);
	border-top: 1px solid #9b9b9b;
	border-right: 1px solid #9b9b9b;
	border-bottom: 1px solid transparent;
	border-left: 1px solid transparent;
}
.breadcrumb ol li a {
	color: #9b9b9b;
	text-decoration: underline;
}

/* section */
.sec {
	position: relative;
	padding: 200px 0;
}
.sectitle {
	position: relative;
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 100px;
	padding-bottom: 10px;
}
.sectitle::before {
	content: '';
	display: block;
	position: absolute;
	background: url(../images/icon_about.svg) no-repeat center / 100% auto;
	width: 86px;
	height: 86px;
	top: -100px;
	left: 50%;
	transform: translateX(-50%);
}
.sectitle::after {
	content: '';
	display: block;
	position: absolute;
	background: url(../images/img_dec_wavy.svg) no-repeat bottom center / 100% auto;
	width: 225px;
	height: 10px;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
}
.sectitle .roboto {
	display: block;
	font-size: 2.0rem;
}
.linkblue {
	color: #2578D8;
	text-decoration: underline;
}

	/* table */
.table {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
}
.table th {
	background-color: var(--defaultColor);
	color: var(--defaultFontColor);
	font-size: 1.8rem;
	font-weight: bold;
	border-left: 1px solid var(--defaultFontColor);
	border-top: 1px solid var(--defaultFontColor);
	border-bottom: 1px solid var(--defaultFontColor);
	padding: 10px 0 10px 20px;
}
.table th:last-child {
	border-right: 1px solid var(--defaultFontColor);
}
.table td{
	font-size: 1.6rem;
	border-left: 1px solid var(--defaultFontColor);
	border-bottom: 1px solid var(--defaultFontColor);
	vertical-align: top;
	padding: 10px;
}
.table td:last-child {
	border-right: 1px solid var(--defaultFontColor);
}
.table tr:nth-of-type(2n) td{
	background-color: #f3efe6;
}

.courselist {
	margin-bottom: 50px;
}
.courselist th:nth-of-type(6){
	width: 100px;
}
.courselist th:nth-of-type(8){
	width: 130px;
}
.courselist th:nth-of-type(3){
	width: 320px;
}
.courselist td{
	font-size: 1.4rem;
	border-left: 1px solid #775624;
	border-bottom: 1px solid #775624;
	vertical-align: top;
	padding: 10px;
}
.courselist td .flex {
	flex-direction: column;
}
.courselist .btncourse {
	display: inline-block;
	background: #775624;
	border: 1px solid #775624;
	border-radius: 10px;
	color: #ffffff;
	font-size: 1.4rem;
	font-weight: bold;
	width: 100px;
	text-align: center;
	margin: 0 auto 10px;
	padding: 5px 10px;
	transition: var(--MTS);
}
.courselist .btncourse:hover {
	background: #ffffff;
	color: #775624;
}
.courselist .btncontact {
	display: inline-block;
	background: #ffffff;
	border: 1px solid #775624;
	border-radius: 10px;
	color: #775624;
	font-size: 1.4rem;
	font-weight: bold;
	width: 100px;
	text-align: center;
	margin: 0 auto;
	padding: 5px 10px;
	transition: var(--MTS);
}
.courselist .btncontact:hover {
	background: #775624;
	color: #ffffff;
}

.coursedetail {
	margin-bottom: 50px;
}
.coursedetail th{
	width: 300px;
	text-align: right;
	padding-right: 20px;
}
.coursedetail td:first-of-type{
	border-top: 1px solid #775624;
}


/* contact */
#contact {
	position: relative;
	background: url(../images/bg_contact.jpg) repeat;
}
#contact::before {
	content: '';
	position: absolute;
	display: block;
	background: url(../images/bg_wavy_gr.png) repeat-x center;
	width: 100%;
	height: 38px;
	left: 0;
	top: -38px;
	z-index: 1;
}
#contact::after{
	content: '';
	position: absolute;
	display: block;
	background: url(../images/img_footerdec.png) no-repeat right bottom / 100% auto;
	width: 1628px;
	height: 192px;
	top: -150px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}
#contact .sectitle::before {
	background-image: url(../images/icon_contact.svg);
}
.contactbtnwrap .detailBtn1 {
	width: 320px;
	margin: 60px auto 0;
}

/* privacy */
#privacy .subttl {
	font-size: 2.4rem;
	font-weight: bold;
	border-left: 5px solid #775624;
	margin-bottom: 30px;
	padding-left: 15px;
}
#privacy h4 {
	font-size: 2.0rem;
	font-weight: bold;
	margin-top: 60px;
	margin-bottom: 15px;
}
#privacy h4 span {
	background: linear-gradient(rgba(0, 0, 0, 0) 85%, rgba(200, 160, 99, 0.5) 85%);
	padding-bottom: 5px;
}

/* registration */
#registration .btbwrap {
	flex-wrap: wrap;
	justify-content: center;
}
#registration .btbwrap .detailBtn1 {
	margin: 30px 15px;
}

/* news */
#news .inner {
	max-width: 1000px;
}
#newslist .news_wrap,
#newsdetail .news_wrap {
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
.newslist {
	align-items: center;
}
.newslist a {
	width: 100%;
}
.newslist dt {
	font-size: 1.4rem;
	width: 150px;
	text-align: right;
	padding: 20px 1.6rem 20px 0;
}
.newslist dd {
	width: calc(100% - 160px);
	padding: 20px 0;
}
.newslist + .newslist {
	border-top: 1px solid #f3efe6;
}
#newsdetail .news_ttl {
	font-size: 2.6rem;
}
#newsdetail .news-date {
	align-items: center;
	margin-bottom: 30px;
}
#newsdetail .news-cat {
	background: #775624;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1;
	padding: 4px 15px;
}
#newsdetail .news-date time {
	font-size: 1.4rem;
	line-height: 1;
	margin-left: 20px;
}
#newsdetail .detail_wrap {
	margin: 0 auto 50px;
	line-height: 1.7;
}
#newsdetail .detail_wrap a {
	color: #2578d8;
	text-decoration: underline;
	transition: 0.3s all;
}
#newsdetail .detail_wrap a:hover {
	text-decoration: none;
	opacity: 0.9;
}

.pagenavi {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 30px;
}
.listnext_items a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	border-radius: 50px;
	width: 45px;
	height: 45px;
	background: #f3efe6;
	font-size: 1.2rem;
	transition: all 0.15s linear;
}
.current {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	border-radius: 50px;
	width: 45px;
	height: 45px;
	font-size: 1.2rem;
	transition: all 0.15s linear;
	background: #b5a285;
	color: #fff;
	font-weight: bold;
	pointer-events: none;
}
.listnext_items a:hover {
	background: #e3cfB0;
	color: #fff;
}
.pagenavi > * + * {
	margin-left: 12px;
}

/* 24.10.18 add */
/* movie */
#movie .subttl {
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
#movie .subttl span {
	background: linear-gradient(transparent 50%, #f5f8c2 50%);
	padding: 0 10px 5px;
}
#movie .movie-wrap {
	margin-bottom: 100px;
}
#movie .movie-wrap .inner {
	position: relative;
	display: block;
	background-color: #eee;
	width: 100%;
	max-width: 960px;
	aspect-ratio: 16/9;
	margin: 0 auto;
}
#movie .movie-wrap span {
	font-size: 2rem;
	font-weight: bold;
	display: block;
	position: absolute;
	width: 100%;
	height: 3rem;
	text-align: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#movie .inner .detailBtn1 {
	margin: 20px auto;
}
#movie .modal-video-body {
	max-width: 1200px;
}
#movie .inner .detailBtn1.btndisabled {
	cursor: not-allowed;
	background-color: #9b9b9b;
	border-color: #9b9b9b;
}
#movie .inner .detailBtn1.btndisabled::after {
	content: '';
}


@media screen and (max-width: 768px) {
	/* mainheader */
	.mainheader {
		height: 160px;
		padding-top: 60px;
	}
	.mainheader::before {
		background: repeating-linear-gradient(135deg, #eee, #eee 2px, rgba(255, 255, 255, 0) 2px, rgba(255, 255, 255, 0) 4px);
		width: calc(100% - 30px);
	}
	/* title */
	.mainttl {
		font-size: 1.8rem;
		margin-top: 30px;
	}
	.mainttl.sp2line {
		margin-top: 20px;
	}
	/* breadcrumb */
	.breadcrumb {
		display: none;
	}
	
	/* section */
	.sec {
		padding: 150px 0;
	}
	.sectitle {
		font-size: 2.4rem;
		margin-bottom: 30px;
	}
	.sectitle::before {
		width: 60px;
		height: 60px;
		top: -80px;
	}
	.sectitle .roboto {
		font-size: 1.6rem;
		margin-bottom: 20px;
	}


	/* table */
	.table-scroll {
		overflow: scroll;
	}
	.table.table_member {
		max-width: 800px;
	}
	.table.table_member th{
		font-size: 1.5rem;
		text-align: center;
		padding-right: 0;
		padding-left: 0;
	}
	.table.table_member td{
		font-size: 1.4rem;
	}
	.table:not(.table_member),
	.table:not(.table_member) tbody,
	.table:not(.table_member) tr {
		display: block;
		width: 100%;
	}
	.table:not(.table_member) th {
		display: block;
		width: 100%;
		font-size: 1.4rem;
		text-align: center;
	}
	.table:not(.table_member) td {
		display: block;
		width: 100%;
		font-size: 1.3rem;
	}

	
	.courselist tr {
		margin-bottom: 30px;
	}
	.courselist th {
		display: none;
	}
	.courselist td {
		border-right: 1px solid #775624;
		position: relative;
		line-height: 1.4;
		padding-top: 50px;
	}
	.courselist td::before {
		content: attr(data-label);
		position: absolute;
		display: block;
		border-bottom: 1px solid #775624;
		background: #c8a063;
		color:#ffffff;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 40px;
		margin-bottom: 0.5rem;
		left: 0;
		top: 0;
		width: 100%;
		height: 40px;
		padding: 0 5px;
		box-sizing: border-box;
	}
	.courselist td:first-of-type{
		border-top: 1px solid #775624;
	}
	.courselist tr:nth-of-type(2n) td{
		background-color: #ffffff;
	}
	.courselist td .flex {
		flex-direction: row;
	}
	.courselist .btncourse {
		margin-bottom: 0;
	}

	.coursedetail th {
		text-align: center;
	}
	.coursedetail td:first-of-type{
		border-top-width: 0;
	}
	.coursedetail tr:nth-of-type(2n) td{
		background-color: #ffffff;
	}

	.content-area .btnwrap {
		flex-direction: column;
		justify-content: center;
	}

	.content-area .btnwrap .btncontact {
		margin-top: 30px;
	}
	.content-area .btnwrap.btnwrap2 .btnwid + .btnwid {
		margin-top: 30px;
	}

	#contact::after{
		width: 700px;
		height: 82px;	
		top: -80px;
		left: 5%;
	}

	/* privacy */
	#privacy .subttl {
		font-size: 2.0rem;
		margin-bottom: 20px;
		padding-left: 10px;
	}
	#privacy h4 {
		font-size: 1.8rem;
		margin-top: 40px;
		margin-bottom: 10px;
	}
	#privacy p {
		font-size: 1.4rem;
	}

	/* news */
	#news .inner {
		max-width: 100%;
		padding: 0 15px;
	}
	#newslist .news_wrap,
	#newsdetail .news_wrap {
		max-width: 100%;
		padding: 0 30px;
	}
	.newslist dt {
		text-align: left;
		width: 100%;
		padding-bottom: 5px;
	}
	.newslist dd {
		width: 100%;
		padding-top: 5px;
	}
	#newsdetail .news_ttl {
		font-size: 1.8rem;
	}

	/* 24.10.18 add */
	/* movie */
	#movie .subttl {
		font-size: 2.0rem;
		margin-bottom: 20px;
	}

}

