@charset "utf-8";

/* ---------------------------------------- 
 - slide_visual
---------------------------------------- */
.slide_visual {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

/* ---------------------------------------- 
 - designer
---------------------------------------- */
.designer {
	width: 90%;
	max-width: 1200px;
	margin: 90px auto;
    padding: 30px 0 50px;
	border-top: solid 1px #92a395;
	border-bottom: solid 1px #92a395;
}
.designer > .ttl {
	font-size: 4.6rem;
	font-weight: 200;
	line-height: 1.2;
	color:#657568;
	margin-bottom: 0.5em;
	text-align: right;
}
.designer .inner {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
}
.designer .inner .catch {
	font-size: 2.8rem;
	font-weight: 200;
	line-height: 1.4;
	margin-bottom: 0.8em;
}
.designer .inner .txt {
	margin-bottom: 2.5em;
}
.designer .inner .profile {
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.designer .inner .profile .visual {
	width: 250px;
	margin-right: 7%;
}
.designer .inner .profile .visual img,
.designer .inner .profile .visual picture {
    width: 100%;
    height: 100%;
    vertical-align: top;
    object-fit: cover;
    font-family: 'object-fit: cover';
}
.designer .inner .profile dl.txt_box {
	flex: 1;
	padding: 2% 0;
}
.designer .inner .profile dl.txt_box dt {
	font-size: 2.2rem;
	font-weight: 200;
	line-height: 1.4;
	margin-bottom: 0.8em;
}
.designer .inner .profile dl.txt_box dd {
	font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
	.designer {
		margin: 50px auto 25px;
		padding: 15px 0 30px;
	}
	.designer > .ttl {
		font-size: 2.6rem;
		font-weight: 300;
	}
	.designer .inner {
		width: 100%;
	}
	.designer .inner .catch {
		font-size: 2.0rem;
		font-weight: 300;
		line-height: 1.6;
	}
	.designer .inner .profile {
		display: block;
	}
	.designer .inner .profile .visual {
		width: 90%;
		max-width: 400px;
		margin: 0 auto 20px;
	}
	.designer .inner .profile dl.txt_box dt {
		font-size: 2.0rem;
	}
}

/* ---------------------------------------- 
 - course_layout
---------------------------------------- */
#course_layout{
	margin: 0 auto 100px;
	width:94%;
	max-width: 1280px;
	text-align: center;
}
#course_layout .ttl{
	font-size: 5.2rem;
	font-weight: 200;
	line-height: 1.6;
    margin-bottom: 0.8em;
	color: #657568;
}
@media screen and (max-width: 768px) {
	#course_layout{
		margin-bottom: 40px;
	}
	#course_layout .ttl{
		font-size: 2.8rem;
		font-weight: 300;
	}
}

/* ---------------------------------------- 
 - course_list
---------------------------------------- */
.course_list{
	margin: 0 auto 20px;
	width:94%;
	max-width: 1280px;
	text-align: center;
}
.course_list > .ttl{
	font-size: 4.0rem;
	font-weight: 200;
	margin-bottom: 1.0em;
	color: #657568;
}
.course_list > .ttl span{
	border-bottom: solid 1px #657568;
	line-height: 1.2;
	display: inline-block;
}
.course_list ul.list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
.course_list ul.list::after {
    content: "";
    display: block;
    width: 29%;
}
.course_list ul.list li{
	width: 29%;
	max-width: 350px;
	margin-bottom: 90px;
	padding-bottom: 50px;
	position: relative;
}
.course_list ul.list li .hole{
	font-size: 2.8rem;
	line-height: 1.6;
	padding-bottom: 0.2em;
	display: flex;
	justify-content:center;
	align-items: center;
	border-bottom: solid 1px #7c7c7c;
}
.course_list ul.list li .hole > span{
	font-size: 1.8rem;
	margin-left: 1.0em;
	padding-left: 1.0em;
	border-left: solid 1px #7c7c7c;
}
.course_list ul.list li .yard_box {
	margin: 0 auto;
	padding: 0.7em 5% 0.4em;
	border-bottom: solid 1px #7c7c7c;
	display: flex;
	justify-content: space-between;
	line-height: 1.4;
}
.course_list ul.list li .yard_box dl dt {
	font-size: 1.2rem;
	margin-bottom: 0.5em;
}
.course_list ul.list li .yard_box dl dd {
	font-size: 2.2rem;
}
.course_list ul.list li .yard_box dl dd span {
	font-size: 1.8rem;
	margin-left: 0.3em;
}
.course_list ul.list li .visual {
	margin: 10px auto;
}
.course_list ul.list li .txt {
	text-align: left;
	line-height: 1.8;
}
.course_list ul.list li .link_btn_wrap {
    position: absolute;
	bottom: 0;
    text-align: center;
    width: 100%;
}
.course_list ul.list li .link_btn_wrap::after {
    content: '';
    display: inline-block;
    background-color: #92a395;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 1px;
    transform: translate(-50%, -50%);
}
.course_list ul.list li .link_btn {
    background-color: #dddeda;
    display: inline-block;
    position: relative;
    z-index: 1;
    padding: 0 15px;
}
.course_list ul.list li .link_btn a {
    min-width: 190px;
    padding-top: 5px;
    padding-bottom: 5px;
    /*color: #fff;
	background-color: #657568;*/
	font-size: 1.4rem;
}
/*.course_list ul.list li .link_btn a::after {
    background-image: url(/assets/images/common/ico_arw_next_wht.svg);
}*/
@media screen  and (max-width: 1024px) {
	.course_list ul.list li{
		margin-bottom: 8vw;
	}
	.course_list ul.list li .hole{
		font-size: 2.8vw;
	}
	.course_list ul.list li .hole > span{
		font-size: 1.8vw;
	}
	.course_list ul.list li .yard_box dl dt {
		font-size: 1.2vw;
		margin-bottom: 0.5em;
	}
	.course_list ul.list li .yard_box dl dd {
		font-size: 2.2vw;
	}
	.course_list ul.list li .yard_box dl dd span {
		font-size: 1.8vw;
	}
}
@media screen and (max-width: 768px) {
	.course_list{
		margin-bottom: 0;
	}
	.course_list > .ttl{
		font-size: 2.4rem;
		font-weight: 300;
	}
	.course_list ul.list::after {
		display: none;
	}
	.course_list ul.list li{
		width: 47%;
	}
	.course_list ul.list li .txt {
		font-size: 2.0vw;
	}
}
@media screen and (max-width: 480px) {
	.course_list{
		width: 90%;
	}
	.course_list ul.list li{
		width: 100%;
		margin: 0 auto 70px;
	}
	.course_list ul.list li .hole{
		font-size: 2.2rem;
	}
	.course_list ul.list li .hole > span{
		font-size: 1.6rem;
	}
	.course_list ul.list li .yard_box dl dt {
		font-size: 1.2rem;
	}
	.course_list ul.list li .yard_box dl dd {
		font-size: 2.0rem;
	}
	.course_list ul.list li .yard_box dl dd span {
		font-size: 1.6rem;
	}
	.course_list ul.list li .txt {
		font-size: 1.5rem;
	}
}

/* ---------------------------------------- 
 - yard
---------------------------------------- */
#yard {
	margin: 0 auto 20px;
	width:94%;
	max-width: 1280px;
	text-align: center;	
}
#yard > .ttl_box{
	margin-bottom: 3.0em;
}
#yard > .ttl_box .ttl{
	font-size: 5.2rem;
	font-weight: 200;
	line-height: 1.4;
	color: #657568;
}
#yard > .ttl_box .notice{
	text-indent: -1.0em;
	margin-left: 1.0em;
	margin-top: 0.5em;
}
#yard > .txt{
	margin-bottom: 0.8em;
}
#yard .table_box {
	margin-bottom: 80px;
}
#yard .table_box table {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
    border-spacing: 0;
	border-top: solid 1px #92a395;
	font-size: 1.6rem;
	table-layout: fixed;
}
#yard .table_box table th {
    background: #d0d1cc;
	border-bottom: solid 1px #92a395;
	border-right: 1px solid #b3bbb4;
	padding: 10px;
	box-sizing: border-box;
	vertical-align: middle;
}
#yard .table_box table th:last-child {
	border-right: 0;
}
#yard .table_box table thead tr:nth-child(n+2) th:last-child {
	border-right: 1px solid #b3bbb4;
}
#yard .table_box table td {
    padding: 20px 10px;
    box-sizing: border-box;
	border-bottom: solid 1px #92a395;
	border-right: 1px solid #b3bbb4;    
}
#yard .table_box table td:last-child {
	border-right: 0;
}
@media screen and (max-width: 768px) {
	#yard {
		margin-bottom: 0;
	}
	#yard > .ttl{
		font-size: 2.8rem;
		font-weight: 300;
	}
	#yard .table_box {
		margin-bottom: 60px;
	}
	#yard .table_box table {
		font-size: 1.3rem;
		letter-spacing: 0;
	}
	#yard .table_box table th {
		padding: 5px 2px;
	}
	#yard .table_box table td {
		padding: 5px 2px;
	}
}