@charset "utf-8";
/* CSS Document */

main{
    padding-top: 50px;
}

dt,dd{
    font-size: 1.8rem;
    font-family:  'Noto Sans JP', sans-serif;
    font-weight:300;
}
/*メインCSS*/

.main__top-visual,
.main__top-visual img {
    width: 100%;
    margin: 0 auto;
}


.main__contents{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 40px;
    position: relative;
}
.main__contents p{
    padding: 0 7px;
    font-size: 1.8rem;
}
.main__title{
    width: 100%;
    max-width: 800px;
    height: 90px;
    line-height: 90px;
    background-color: #fff;
    text-align: center;
    position: absolute;
    top: -80px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.main__title h2{
	font-size: 4.3rem;
    font-weight: 500;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.5rem;
	color: #4C4948;
}

.main__contents--wrap{
    width: 100%;
    margin: 30px auto 60px;
    display: flex;
    justify-content: space-between;
}

.main__contents-img,
.main__contents-img img{
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    text-align: center;
}
.main__access--section{
    width: 100%;
    margin: 0 auto;
}

.main__access{
    width: 100%;
    padding-top: 40px;
    padding-bottom: 30px;
    margin: 0 auto;
    border-bottom: solid 2px #f7f1e9;
}
.main__access:last-of-type{
    border-bottom:none;
    padding-bottom: 50px;
}
.main__access>a{
    display: block;
    width: 160px;
    height: 38px;
    line-height: 38px;
    margin: 0 auto;
    background-color: #d7b98f;
    border-radius: 20px;
    text-align: center;
    font-weight: 600;
}

.main__access-h2{
    width: 100%;
    max-width: 940px;
    margin: 0 auto 30px;
}
.main__access-h2 h2{
    font-size: 1.7rem;
    font-weight: 600;
}

.main__access--wrap{
    width: 100%;
    max-width: 912px;
    display: flex;
    justify-content: space-between;
}

.main__access--wrap dl{
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}

.main__access--list{
    width: 100%;
    display: flex;
    justify-content:flex-start;
    margin: 0 auto 20px;
}
.main__access--list span{
    letter-spacing:normal;
}
.main__access--list dt{
    width: 100%;
    max-width: 100px;
}
.main__access--list dd{
    width: 100%;
    max-width: 355px;
    line-height: 2.6rem;
}
.dt--tel {
    letter-spacing: 3.5rem;
}
.dt--address,
.dt--closing{
    letter-spacing: 1rem;
}
.dt--access{
    letter-spacing: 0.2rem;
}
.facility__link {
	width: 100%;
	max-width: 100rem;
	margin: 10rem auto 0;
	padding-top: 3rem;
	position: relative;
}
.facility__link--banner{
    width:200%;
    height: 70px;
    background-color: #ea2127;
    transform: skewX(-215deg);
    position:absolute;
    right: 20px;
    top: -70px;
}
.facility__link h3{
    position: absolute;
    left: 0;
    top: -57px;
    color: #fff;
    font-size: 3rem;
}
.facility__link--box img {
	width: 100%;
	max-width: 16.2rem;
}
.facility__link--box img:hover {
	opacity: .5;
}
.facility__link--list {
	display: flex;
	flex-wrap: wrap;
	max-width: 110rem;
}
.facility__link--item {
	flex: 0 0 15rem;
	margin-right: 5rem;
	margin-bottom: 5rem;
	font-size: 2.1rem;
	font-weight: bold;
	line-height: 1;
}
.facility__link--item p {
	line-height: 1.5;
	text-align: center;
}

.facility__content {
	background: #f7f1e9;
}
.facility__content--container {
	width: 100%;
	max-width: 100rem;
	margin: 10rem auto 0;
	padding-top: 7rem;
	position: relative;
	background: #f7f1e9;
}
.facility__content--banner {
	width:200%;
    height: 70px;
    background-color: #d78e55;
    transform: skewX(-215deg);
    position:absolute;
    right: 20px;
    top: -40px;
}
.facility__content h3{
    position: absolute;
    left: 0;
    top: -30px;
    color: #fff;
    font-size: 3rem;
}
.facility__content--box {
	display: flex;
	justify-content: space-between;
	max-width: 100rem;
	margin: 5rem auto 0;
	padding-bottom: 5rem;
}
.facility__content--box img {
	max-width: 45rem;
	max-height: 27rem;
	width: 100%;
}
.facility__content--text {
    width: 100%;
	flex: 0 0 53%;
}
.facility__content--text h4 {
	font-size: 1.74rem;
}
.facility__content--text p {
	font-weight: 300;
	max-width: 50.4rem;
}

.facility__content--intro {
	background: #d7b98f;
	color: #fff;
	display: block;
	width: 25rem;
	height: 4rem;
	border-radius: 100vh;
	text-align: center;
	padding-top: .6rem;
	margin-top: 22rem;
}
.facility__content--intro :hover {
	opacity: .5;
}

.facility__content--flex {
	display: flex;
	justify-content: space-between;
}
.facility__content--item {
	margin-bottom: 5rem;
}
.facility__content--item img {
	max-width: 32rem;
}
.facility__content--item p {
	text-align: center;
}
.facility__content--course {
	margin: 5rem auto 0;
}

/*対象項目ボタン*/
.facility__content--link {
	position: relative;
	z-index: 1;
}
.link__banner--content div{
    width: 100%;
    max-width: 180px;
    text-align: left;
}
.link__banner--content p{
    font-size: 1.5rem;
    font-weight: 600;
	margin-top: 2rem;
    margin-bottom: 13px;
}
.link__banner--content nav{
    width: 100%;
    max-width: 504px;
    display: flex;
    justify-content: space-between;
}
.link__banner--content ul{
    width: 100%;
    max-width: 247px;
    text-align: left;
}
.link__banner--content ul li{
    width: 100%;
    height: 40px;
    line-height: 40px;
    border: 1px solid #ea2127;
    text-align: left;
    margin-bottom: 10px;
	background: #fff;
}
.link__banner--content ul li a{
    font-size: 1.5rem;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    padding-left: 10px;
    color: #000;
}

.link__banner--content ul li a>span{
    font-size: 1.5rem;
    font-weight: 600;
    color: #ea2127;
    padding-right: 10px;
}
.link__banner--small {
	font-size: 1rem!important;
	color: #000!important;
	padding-right: .2rem!important;
}
/* 「※会員会社の方が〜」
対象種目に左揃えで入れたい時は.font__smallのみ。
右揃えで入れたい時は.link__banner--noteのクラスを入れる。*/
.link__banner--note {
	text-align: right;
	max-width: 53rem!important;
	font-size: 1.3rem;
	font-weight: 300;
}
.link__banner--margin {
	margin-left: -7rem;
}

/*対象項目ボタン動き*/
.facility__content--link ul li>a{
    position: relative;
}

.facility__content--link ul li{
    position: relative;
    width: 100%;
    z-index: 99;
}
.facility__content--link ul li::before{
    width: 0%;
    height: 100%;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    transition: .7s
}
.facility__content--link ul li:hover::before{
    width: 100%;
    background-color:#ea2127; 
}
.facility__content--link ul li:hover a,
.facility__content--link ul li:hover a>span{
    color: #fff!important;
}



.main__return-top{
	margin-top: 3%;
    margin-bottom: 3%;
}
.sp {
	display: none;
}
/*スムーススクロールの調整*/
#ground {
	padding-top: 20rem;
	margin-top: -20rem;
}
#tennis {
	padding-top: 20rem;
	margin-top: -20rem;
}
#lounge {
	padding-top: 20rem;
	margin-top: -20rem;
}
#locker {
	padding-top: 20rem;
	margin-top: -20rem;
}
#parking {
	padding-top: 20rem;
	margin-top: -20rem;
}

.main__access-map{
    width: 100%;
    max-width: 430px;
    margin: 0 auto;
    text-align: center;
}
.main__access-map a:hover{
    /* リンクをホバーしたら赤くする */
    color: #ea2127;
    background-color: #fff;
    transition: all 0.3s ease;
}


/*==================================================================*/

@media screen and ( max-width:1100px ){
/*
	 .main__access--wrap{
        display: block;
        max-width: 100%;
        padding: 0 30px 0;
    }
*/
	.main__access--wrap dl {
		max-width: 43.7rem;
	}
/*
    .main__access--list{
		display: block;
    }
*/
	.main__access--list dt,dd {
		font-weight: 300;
	}
    .main__access-map{
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
	.main__access img {
		max-width: 70rem;
	}
	.facility__figure--wrap {
		max-width: 75rem;
	}
	.facility__link--banner{
    	right: 64px;
}
	.facility__link h3{
		top: -5.4rem;
		left: 1.5rem;
		font-size: 2.4rem;
	}
	.facility__link--list {
		max-width: 90%;
		margin: 0 auto;
	}
	.facility__link--item {
		text-align: center;
	}
	.facility__content--banner{
		right: 64px;
	}
	.facility__content h3{
		top: -2.5rem;
		left: 1.5rem;
		font-size: 2.4rem;
}
/*
	.facility__content--box {
		max-width: 95%;
	}
*/
	.facility__content--box img {
		max-width: 40rem;
		display: block;
		margin: 2rem auto 0;
	}
	.facility__content--intro {
		margin-top: 6rem auto 3rem;
	}
	.facility__content--flex {
		justify-content: space-around;
	}
	.facility__content--item img {
		max-width: 24rem;
	}
/*
	.facility__content--link {
		margin-right: 2rem;
	}
	.link__banner--content ul {
		max-width: 150px;
	}
	.link__banner--content ul li a{
    	font-size: 1.3rem;
}
*/
}
/*==================================================================*/
@media screen and ( max-width:920px ){
	 .main__access--wrap{
        display: block;
        max-width: 100%;
        padding: 0 30px 0;
    }
	.facility__link--list {
		max-width: 80rem;
	}
	.facility__link--item {
		margin-left: 2.5rem;
		margin-right: 2.5rem;
	}
	.facility__content--box {
		display: block;
	}
	.facility__content--text {
		max-width: 51rem;
		margin: 0 auto;
	}
	.facility__content--text p {
		margin-right: 0;
		max-width: 100%;
	}
	.main__title {
		max-width: 75rem;
	}

}
/*==================================================================*/

@media screen and ( max-width:750px ){
	 dt, dd{
        font-size: 1.5rem;
    }
    .main__contents{
        padding-top: 0;
    }
   .main__title {
    max-width: 350px;
    height: 70px;
    line-height: 60px;
	position: absolute;
    top: -60px;
	}
	.main__title h2 {
		font-size: 2.7rem;
		letter-spacing: .3rem;
	}
    .main__contents--wrap {
        display: block;
    }
    .main__contents-img{
        max-width: 400px;
        padding: 0 10px;
        margin-bottom: 20px;
    }
	.link__banner--content {
		max-width: 31rem;
		margin: 0 auto;
	}
	.link__banner--content nav {
		display: block;
	}
	.link__banner--content ul {
		max-width: 310px;
	}
	.link__banner--small {
		font-size: 1.5rem!important;
	}
	.link__banner--margin {
		margin-left: -11rem;
	}
	.facility__link--box img {
		max-width: 8.1rem
	}
	.facility__link--list {
		text-align: center;
		max-width: 100%;
		justify-content: flex-start;
		margin-left: 1rem;
	}
	.facility__link--item {
		margin-right: 1rem;
	}
	.facility__link--item p {
		font-size: 1.4rem;
		max-width: 12rem;
		margin: 0 auto;
		line-height: 1.5;
	}
	.facility__content--box {
		display: block;
		max-width: 100%;
	}
	.facility__content--text {
		max-width: 90%;
		margin: 0 auto;
	}
	.facility__content--text h4 {
		font-size: 1.4rem;
		font-weight: bold;
	}
	.facility__content--text p {
		margin-right: 0;
	}
	.facility__content--box img {
		margin-top: 3rem;
		max-width: 100%;
	}
	.facility__content--text p {
		font-size: 1.4rem;
		margin-top: 2rem;
	}
	.facility__content--intro {
		margin: 4rem auto 0;
	}
	.facility__content--flex {
		display: block;
	}
	.facility__content--item img {
		max-width: 100%;
	}
	.facility__content--item p {
		font-size: 1.4rem;
		font-weight: bold;
		margin-top: 1rem;
	}

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.main__return-top {
		margin-top: 10%;
        margin-bottom: 10%;
    }
	/*スムーススクロールの調整*/
#ground {
	padding-top: 12rem;
	margin-top: -12rem;
}
#tennis {
	padding-top: 12rem;
	margin-top: -12rem;
}
#lounge {
	padding-top: 12rem;
	margin-top: -12rem;
}
#locker {
	padding-top: 12rem;
	margin-top: -12rem;
}
#parking {
	padding-top: 12rem;
	margin-top: -12rem;
}
}

