﻿@charset "utf-8";

.wrp-course-search{
	max-width:1050px;
	margin:0 auto;
	background:#F7F5F0;
	border-radius:5px;
	border:3px solid #A47B51;
}

.wrp-course-search .course-search-ttl{
	margin-bottom:30px;
    padding:10px 0 20px 50px;
	background-image:url(../img/top/icn-spot-search.png);
	background-repeat:no-repeat;
	background-size:40px 40px;
	border-bottom:1px dashed #806040;
    font-size:2rem;
    font-family:'07logotypegothic7regular';
    color:#806040;
    line-height:1;
}

@media screen and (max-width:767px) {

.wrp-course-search .course-search-ttl{
	margin-bottom:15px;
    padding:0 0 0 25px;
	background-size:20px 20px;
	background-position:0 50%;
    font-size:1.5rem;
}

}


.wrp-search input[type="checkbox"],
.wrp-search input[type="radio"]{
	display:none;
	visibility:hidden;
	position:absolute;
}

.wrp-search .type-checkbox label{
	position:relative;
	display:inline-block;
	padding:3px 3px 3px 22px;
	cursor:pointer;
	-webkit-transition:all .2s;
	transition:all .2s;
}

.wrp-search .type-checkbox label::before,
.wrp-search .type-checkbox label::after{
	position:absolute;
	content:"";
	-webkit-transition:all .2s;
	transition:all .2s;
}

.wrp-search .type-checkbox label::before{
	top:50%;
	left:0;
	width:14px;
	height:14px;
	margin-top:-8px;
	background:#fff;
	border:1px solid #ccc;
	border-radius:3px;
}

.wrp-search .type-checkbox label::after{
	opacity:0;
	top:50%;
	left:3px;
	width:8px;
	height:4px;
	margin-top:-4px;
	border-left:2px solid #6BA516;
	border-bottom:2px solid #6BA516;
	-webkit-transform:rotate(-45deg) scale(.5);
	transform:rotate(-45deg) scale(.5);
}

.wrp-search .type-checkbox label:hover::before{
	background:#fff;
}

.wrp-search input[type="checkbox"]:checked + label::before{
	background:#a37e39;
	border:1px solid #a37e39;
}

.wrp-search input[type="checkbox"]:checked + label::after{
	opacity:1;
	-webkit-transform:rotate(-45deg) scale(1);
	transform:rotate(-45deg) scale(1);
	border-left:2px solid #fff;
	border-bottom:2px solid #fff;
}

.wrp-search input[type="text"] {
	width:100%;
    margin-top:5px;
    padding:10px;
	background-color:#fff;
    border:1px solid #ccc;
    border-radius:3px;
}

.wrp-search label input[type=radio] + span:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	margin-top:auto;
	margin-bottom:auto;
	width:14px;
	height:14px;
	background-color:#fff;
	border-radius:100%;
	border:1px solid #ccc;
}

.wrp-search label input[type=radio] + span:after{
	content:"";
	position:absolute;
	left:5px;
	top:0;
	bottom:0;
	margin-top:auto;
	margin-bottom:auto;
	width:6px;
	height:6px;
	background-color:#a37e39;
	opacity:0;
	-webkit-transition:opacity .2s;
	-o-transition:opacity .2s;
	transition:opacity .2s;
	border-radius:100%;
}

.wrp-search label input[type=radio]:checked + span:before{
	border-color:#a37e39;
}

.wrp-search label input[type=radio]:checked + span:after{
	opacity:1;
}

.wrp-search{
	max-width:790px;
	margin:0 auto;
	padding:40px 15px;
	text-align:left;
}

@media screen and (max-width:767px) {

.wrp-search{
	padding:15px;
}

}


.wrp-search h4{
	margin-top:15px;
	padding-top:15px;
	padding-bottom:5px;
	border-top:1px dotted #ccc;
	font-size:1.6rem;
	font-weight:700;
	color:#806040;
}

.wrp-search .btn{
	display:block;
	margin:30px auto 0;
	padding:8px 10px;
	width:60%;
	background-color:#222;
	font-size:1.5rem;
	font-weight:700;
	letter-spacing:.15em;
	text-align:center;
	-webkit-transition:all .4s;
	-o-transition:all .4s;
	transition:all .4s;
}

/*.wrp-search .btn::before{
	content:"\f002";
	display:inline-block;
	position:relative;
	margin-right:5px;
	width:20px;
	height:20px;
	font-family:'FontAwesome';
	font-weight:normal;
}*/

.wrp-search .btn::before{
	content:"";
	display:inline-block;
	background-image:url(../img/common/icn-search-white.svg);
	background-size:contain;
	position:relative;
	margin-right:5px;
	width:14px;
	height:14px;
	vertical-align:middle;
}


.wrp-search .btn:hover{
	background-color:#a37e39;
	color:#fff;
}

@media screen and (max-width: 767px){

.wrp-search h4{
	font-size:1.4rem;
}

.wrp-search p{
	padding:5px 0;
}

.wrp-search .btn{
	width:90%;
	margin:30px auto 0;
	font-size:1.3rem;
}

}


/**/

.page-course .accordion-box{
	max-width:100%;
}

.page-course .course-list div{
	padding-top:8px;
	background-color:#fff;
	border-right:1px solid #ddd;
	border-bottom:1px solid #ddd;
	border-left:1px solid #ddd;
}

.page-course .course-list div p{
	padding-right:10px;
	padding-left:10px;
	font-weight:700;
}

.page-course .course-list dl{
	margin:10px;
	padding-left:5em;
	font-size:1.2rem;
}

.page-course .course-list dt,
.page-course .course-list dd{
	float:left;
	margin:0;
	line-height:1;
	text-align:left;
}

.page-course .course-list dt{
	clear:left;
	float:left;
}

.page-course .course-list dd{
	position:relative;
	width:100%;
	white-space:nowrap;
	overflow:hidden;
	-o-text-overflow:ellipsis;
	text-overflow:ellipsis;
}

.page-course .course-list dd::after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin-top:auto;
	margin-bottom:auto;
	border-right:1px dotted #868686;
	width:1px;
	height:10px;
}

.page-course .course-list dd span{
	padding-left:10px;
}

@media screen and (min-width:768px) {

.page-course .course-list div p{
	font-size:1.4rem;
}

.page-course .course-list dt,
.page-course .course-list dd{
	padding:7px 0;
}

.page-course .course-list dt{
	margin-left:-5em;
}

}

@media screen and (max-width:767px) {

.page-course .course-list dt,
.page-course .course-list dd{
	padding:4px 0 0;
	font-size:1.1rem;
}

.page-course .course-list dl{
	margin:6px 5px 10px;
    padding-left:5em;
}

.page-course .course-list dt{
	margin-left:-5em;
}

.page-course .course-list dt::before{
	margin-right:0;
}

.page-course .course-list dd{
	font-size:1.2rem;
}

.page-course .course-list dd::after{
	top:3px;
	height:8px;
}

}

.search-number{
	margin:50px 0;
	padding:20px 0;
	border-top:1px dotted #dadada;
	border-bottom:1px dotted #dadada;
	font-size:1.4rem;
	font-weight:700;
	text-align:center;
}


.search-number ul li:last-child{
	margin-left:auto;
}

.search-number dl dt{
	float:left;
	clear:left;
}

.search-number dl dd{
	padding-left:80px;
	text-align:left;
}

.search-number em{
	padding:0 6px;
	color:#B97103;
	font-family:Arial, Helvetica, sans-serif;
	font-size:2.8rem;
	vertical-align:middle;
	line-height:1;
}

@media screen and (min-width:768px) {

/*.search-number ul{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	justify-content:center;
}*/

.search-number ul li:first-child{
	float:left;
	width:70%;
}

.search-number ul li:last-child{
	float:right;
}

}

@media screen and (max-width:767px) {

.search-number{
	margin:25px 0;
	padding:5px 0;
	font-size:1.3rem;
}

.search-number em{
	font-size:2.4rem;
}

}


/*dtl*/

@media screen and (min-width:768px) {

.course-dtl{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
}

.course-dtl .course-dtl-left{
	flex:1;
}

.course-dtl .course-dtl-right{
	width:290px;
	margin-left:40px;
}

}



.course-dtl h2.ttl{
	font-size:1.8rem;
	font-weight:700;
	border-bottom:1px dotted #ccc;
	padding-bottom:10px;
}

.course-dtl .course-search-list{
	margin-top:10px;
	font-size:1.2rem;
}

@media screen and (max-width:767px) {

.course-dtl h2.ttl{
	font-size:1.5rem;
	line-height:1.5;
}

.course-dtl .course-search-list{
	margin-top:5px;
	font-size:1.1rem;
}

}


.course-dtl .course-search-list,
.course-dtl .course-search-list dl{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
/*	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
*/}

.course-dtl .course-search-list li{
	margin-top:5px;
	margin-right:15px;
}

.course-dtl .course-search-list li:last-child{
	margin-right:0;
}

.course-dtl .course-search-list dl dd span{
	padding:0 5px;
	border:1px solid #30437C;
	border-radius:2px;
	color:#30437C;
}

.course-dtl .course-search-list dl dd span + span{
	margin-left:5px;
}

.course-dtl .course-plan{
	padding:20px;
	border:1px solid #D3CEAF;
	background-color:#E7E4D3;
}

.course-txt{
	margin-top:25px;
}

.course-plan{
	margin-top:25px;
}

.course-plan h3{
	padding-left:40px;
	background-image:url(../img/course/icn-plan.png);
	background-repeat:no-repeat;
	font-family:'07logotypegothic7regular';
	font-size:1.8rem;
	color:#806040;
}

.course-dtl .course-plan .course-plan-inner{
	margin-top:10px;
	padding:0 40px 10px;
	border:1px solid #D3CEAF;
	background-color:#fff;
}

@media screen and (max-width:767px) {

.course-dtl .course-plan{
	padding:10px;
}

.course-plan h3{
	padding-left:30px;
	background-size:20px 20px;
	font-size:1.5rem;
}

.course-dtl .course-plan .course-plan-inner{
	margin-top:5px;
	padding:0 25px 10px;
	font-size:1.1rem;
	letter-spacing:0;
}

}



.course-dtl .course-plan .course-plan-inner li,
.course-dtl .course-plan .course-plan-inner li a{
	position:relative;
}

.course-dtl .course-plan .course-plan-inner li{
	float:left;
	margin-top:10px;
	margin-right:10px;
	padding-right:40px;
}

.course-dtl .course-plan .course-plan-inner li a::before,
.course-dtl .course-plan .course-plan-inner li a::after{
    content:"";
    position:absolute;
    top:50%;
	right:-20px;
	border-top:1px solid #222;
}

.course-dtl .course-plan .course-plan-inner li a::before{
    width:12px;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
}

.course-dtl .course-plan .course-plan-inner li a::after{
    width:6px;
    height:6px;
    border-right:1px solid #222;
    -webkit-transform:translateY(-50%) rotate(45deg);
    transform:translateY(-50%) rotate(45deg);
}

.course-dtl .course-plan .course-plan-inner li:last-child a::before,
.course-dtl .course-plan .course-plan-inner li:last-child a::after{
	display:none;
}

/*.l-counter{
	counter-reset:l-counter;
}


.l-counter li::before{
	content:counter(l-counter);
	counter-increment:l-counter;
	position:relative;
	top:5px;
	display:block;
	float:left;
	margin-left:-22px;
}*/

.course-dtl .course-route{
	position:relative;
	margin-top:50px;
}

.course-dtl .course-route::before{
	content:"";
	position:absolute;
	top:0;
	left:50px;
	z-index:-1;
	display:block;
	width:3px;
	height:100%;
	background-color:#E6E6E6;
}

.course-dtl .course-fin{
	margin-top:50px;
}

.course-dtl .course-day,
.course-dtl .course-fin{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	align-self:stretch;
	background-color:#f2f2f2;
	border:1px solid #E6E6E6;
}

.course-dtl .course-day dt,
.course-dtl .course-fin dt{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	justify-content:center;
	width:125px;
	background-color:#A57951;
	font-size:1.8rem;
	color:#fff;
	text-align:center;
}

.course-dtl .course-day dd,
.course-dtl .course-fin dd{
	padding:15px 20px;
	font-size:1.6rem;
}

.course-dtl .course-day dd a{
	margin-left:20px;
	color:#C75F54;
	text-decoration:underline;
}

.course-dtl .course-day dd a:hover{
	text-decoration:none;
}

.course-dtl .route-time{
	margin-left:40px;
	padding:20px;
	font-size:1.5rem;
}

.course-dtl .route-map{
	padding:50px 20px;
}

.course-dtl .route-map .btn{
	background-color: #00467E;
}
.course-dtl .route-map .btn:hover{
	background-color: #A57951;
}

.course-dtl .route-box{
	padding:20px 30px;
	background-color:#f8f8f8;
	border:1px solid #E6E6E6;
}

.course-dtl .route-ttl{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	align-self:stretch;
	margin-bottom:20px;
	border-bottom:1px dotted #ccc;
}

.course-dtl .route-ttl dt{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	justify-content:center;
	width:40px;
	background-color:#A57951;
	font-size:1.8rem;
	color:#fff;
	text-align:center;
}

.course-dtl .route-ttl dd{
	padding:5px 15px;
	font-size:1.8rem;
	font-weight:700;
}


@media screen and (max-width:767px) {

.course-dtl .course-route::before{
	left:20px;
}

.course-dtl .course-day dt,
.course-dtl .course-fin dt{
	width:80px;
	font-size:1.5rem;
}

.course-dtl .course-day dd,
.course-dtl .course-fin dd{
	padding:5px 10px;
	font-size:1.3rem;
}

.course-dtl .course-day dd a{
	margin-left:10px;
}

.course-dtl .route-time{
	margin-left:10px;
	padding:15px;
	font-size:1.3rem;
}

.course-dtl .route-box{
	padding:15px;
}

.course-dtl .route-box .route-left{
	margin-top:15px;
}

.course-dtl .route-ttl{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	align-self:stretch;
	margin-bottom:20px;
	border-bottom:1px dotted #ccc;
}

.course-dtl .route-ttl dt{
	width:30px;
	font-size:1.5rem;
}

.course-dtl .route-ttl dd{
	padding:0 10px 5px;
	font-size:1.5rem;
}

}

@media screen and (min-width:768px) {

.course-dtl .route-box .route-left{
	float:left;
	width:47.5%;
}

.course-dtl .route-box .route-right{
	float:right;
	width:47.5%;
}

}

.course-dtl .route-box .route-right img{
	width:100%;
	height:266px;
	object-position:50% 50%;
	/*object-fit:contain;
	font-family:'object-fit: contain; object-position: 50% 50%;';*/
	object-fit:cover;
	font-family:'object-fit: cover; object-position: 50% 50%;';
}


@media screen and (max-width:767px) {

.course-dtl .route-box .route-right img{
	height:200px;
}

}


.course-dtl .route-box table{
    width:100%;
	table-layout:fixed;
	margin-top:20px;
    border-collapse:collapse;
    border:1px solid #ddd;
}

.course-dtl .route-box table th,
.course-dtl .route-box table td{
    padding:10px;
    border-bottom:1px solid #ddd;
	font-size:1.3rem;
}

.course-dtl .route-box table th{
    width:82px;
	background-color:#eee;
    border-right:1px solid #ddd;
    vertical-align:middle;
}

.course-dtl .route-box table td{
	background-color:#fff;
	display:table-cell; 
	word-wrap:break-word;
	overflow-wrap:break-word;
}

.course-dtl .route-box table td a{
	color:#C75F54;
	text-decoration:underline;
}

.course-dtl .route-box table td a:hover{
	text-decoration:none;
}

.course-dtl .route-box .btn{
	width:100%;
	margin-top:20px;
}

@media screen and (max-width: 767px){

.course-dtl .route-box table th,
.course-dtl .route-box table td{
    padding:5px;
	font-size:1.2rem;
}

.course-dtl .route-box table th{
    width:70px;
}

}


.course-dtl .map-ttl{
	margin-top:50px;
	padding:15px 0 15px 35px;
	background:url(../img/course/icn-map.png) no-repeat 0 50%;
	background-repeat:no-repeat;
	border-bottom:1px solid #ddd;
	font-size:1.6rem;
	line-height:1;
}

@media screen and (max-width: 767px){

.course-dtl .map-ttl{
	font-size:1.4rem;
	letter-spacing:0;
}

}


.g-map{
	position:relative;
	margin-top:30px;
	padding-bottom:38%;
	height:0;
	overflow:hidden;
	border:1px solid #ddd;
}

.g-map iframe{
	position:absolute;
	padding:5px;
	top:0;
	left:0;
	width:100% !important;
	height:350px !important;
}

@media screen and (max-width: 767px){

.g-map{
	padding-bottom:75%;
}

.g-maps iframe{
	height:100% !important;
}

}

.wrp-course-slider{
	margin-top:25px;
}

.course-slider li.slick-slide img{
	width:100%;
	height:620px;
	object-position:50% 50%;
	/*object-fit:contain;
	font-family:'object-fit: contain; object-position: 50% 50%;';*/
	object-fit:cover;
	font-family:'object-fit: cover; object-position: 50% 50%;';
}


@media screen and (max-width:960px) {

.course-slider li.slick-slide img{
	height:300px;
}

}

@media screen and (max-width:767px) {

.course-slider li.slick-slide img{
	height:400px;
}

}

@media screen and (max-width:480px) {

.course-slider li.slick-slide img{
	height:250px;
}

}

.course-slider li{
	position:relative;
}

.course-slider li p{
	display:block;
	width:100%;
	position:absolute;
	bottom:0;
	left:0;
	padding:10px 5px;
	background:rgba(0,0,0,.8);
	z-index:1;
	font-size:1.2rem;
	color:#fff;
	text-align:center;
}


@media screen and (max-width:767px) {

.course-slider li p{
	padding:5px;
	font-size:1.1rem;
	text-align:left;
}

}

.course-slider .slick-dots{
	position:relative;
	bottom:-10px;
	text-align:center;
}

.course-slider .slick-dots li{
	position:relative;
    display:inline-block;
    width:5px;
    height:5px;
    margin:0 5px;
    padding:0;
    cursor:pointer;
	background:transparent;
}

.course-slider .slick-dots li button{
    font-size:0;
    line-height:0;
    display:block;
    width:5px !important;
    height:5px !important;
	padding:0;
    cursor:pointer;
	background-color:#ccc;
    outline:none;
	border-radius:50%;
}

.course-slider .slick-dots li button:hover,
.course-slider .slick-dots li button:focus{
    outline:none;
}

.course-slider .slick-dots li button:hover:before,
.course-slider .slick-dots li button:focus:before{
    opacity:1;
}

.course-slider .slick-dots li button:before{
    position:absolute;
    top:0;
    left:0;
    width:5px;
    height:5px;
	border-radius:50%;
    content:"";
    text-align:center;
	background:transparent;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}

.course-slider .slick-dots li.slick-active button:before{
    opacity:1;
    background:#114564;
	width:100%;
	height:100%;
}



.course-dtl-right .course-rank h4{
}

.course-dtl-right .course-rank-ttl{
	margin-top:10px;
	margin-bottom:20px;
	padding:10px 0 10px 25px;
	border-bottom:1px solid #eee;
	line-height:1;
	background:url(../img/common/icn-rank-in.png) no-repeat 0 50%;
	background-size:20px 18px;
	letter-spacing:0;
}

.course-rank{
	margin-bottom:50px;
}

@media screen and (max-width:767px) {


.course-rank{
	margin-bottom:30px;
}

}

.course-rank li:nth-child(n+2){
	margin-top:15px;
	padding-top:15px;
	border-top:1px solid #eee;
}

.course-rank li dt::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	background-repeat:no-repeat;
	background-size:contain;
	width:30px;
	height:30px;
}

.course-rank li:nth-child(1) dt::before{background-image:url(../img/common/icn-rank1.svg);}
.course-rank li:nth-child(2) dt::before{background-image:url(../img/common/icn-rank2.svg);}
.course-rank li:nth-child(3) dt::before{background-image:url(../img/common/icn-rank3.svg);}
.course-rank li:nth-child(4) dt::before{background-image:url(../img/common/icn-rank4.svg);}
.course-rank li:nth-child(5) dt::before{background-image:url(../img/common/icn-rank5.svg);}

.course-rank li a:hover dt img{
	opacity:1;
}

.course-rank dl{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
}

.course-rank dl dt{
	position:relative;
	width:90px;
}

.course-rank dl dd{
	flex:1;
	margin-left:10px;
	font-size:1.3rem;
	line-height:1.4;
	letter-spacing:0;
}

.course-rank dl dt img{
	width:90px;
	height:90px;
	object-fit:cover;
	object-position:50% 50%;
	font-family:'object-fit: cover; object-position: 50% 50%;';
	-webkit-transition:all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
	-moz-transition:all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
	-o-transition:all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
	transition:all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1);
	-moz-transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1);
	-o-transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1)
}

.course-rank dl dd em{
	display:block;
	width:70px;
	border-radius:2px;
	color:#fff;
	font-family:'Lato', sans-serif;
	font-size:1rem;
	font-style:normal;
	font-weight:700;
	letter-spacing:.1em;
	text-align:center;
}


.course-rank dl dd .area1{background-color:#f7a603;}
.course-rank dl dd .area2{background-color:#eeae79;}
.course-rank dl dd .area3{background-color:#43a1bf;}
.course-rank dl dd .area4{background-color:#1b3f5f;}
.course-rank dl dd .area5{background-color:#95a524;}
.course-rank dl dd .area6{background-color:#d54939;}

.course-rank dl dd p{
	margin-top:10px;
	white-space:nowrap;
	overflow:hidden;
	-o-text-overflow:ellipsis;
	text-overflow:ellipsis;
}

.course-rank dl dd span{
	display:block;
	margin-top:10px;
	font-size:1.1rem;
}

@media screen and (min-width:768px) {

.course-rank a:hover p{
	text-decoration:underline;
}

}











