@charset "utf-8";

/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

.header-frame {
	padding: 20px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.header-logo-link {
	display: block;
	max-width: 250px;
	width: 25%;
}

.header-logo {
	display: block;
  	transition: all .3s;
}

.header-logo-fixed {
	display: none;
   	transition: all .3s;
}

.header-right {
	width: 83.5%;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.header-navi-block {
	display: flex;
	align-items: center;
    justify-content: flex-end;
	flex: 1;
    margin: 20px 0 0;
}

.header-navi-link {
	font-size: 13px;
	color: var(--white);
	margin: 0 14px 0 0;
}

.header-navi-link:hover {
	color: var(--white);
}

.nav-single {
    position: relative;
    cursor: pointer;
}

.nav-single-link {
    padding-right: 15px;
    position: relative;
}

.nav-single-link:before, .nav-single-link:after {
    content: "";
    display: block;
    width: 10px;
    height: 1px;
    background: var(--white);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition: .3s;
}

.nav-single-link:after {
    transform: translateY(-50%) rotate(90deg);
}

.nav-single:hover .nav-single-link:after {
    transform: translateY(-50%) rotate(0deg);
}

/*ドロップダウン*/

.nav-second {
	width: 230px;
    padding: 20px 0 0;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 100%;
	left: 100%;
    transform: translateX(-50%);
    transition: .3s;
}

.nav-second-in {
	position: relative;
	padding: 30px 15px 30px 45px;
	background: var(--white);
}

.nav-second-in:before {
	content: "";
	position: absolute;
	width: 1px;
  	height: 50%;
	top: 0;
	bottom: 0;
	left: 25px;
  	margin: auto;
	background: var(--base-body-color);
}

.nav-second-in .header-navi-link {
	color: var(--base-body-color);
	margin: 15px 0 0 0;
}

.nav-second-in .header-navi-link:last-child {
	color: var(--base-body-color);
	margin: 15px 0 0 0;
}

.nav-second-link {
    display: block;
    font-size: 14px;
    font-weight: 700;
    font-family: var(--font-family03);
    letter-spacing: 0.05em;
    line-height: 1.5em;
    color: var(--white);
    padding: 0 0 0 20px;
    position: relative;
}

.nav-second-link:not(:first-child) {
    margin: 7px 0 0;
}

.nav-second-link:before {
    content: "";
    position: absolute;
    top: 0;
    right: auto;
    bottom: 0;
    left: 25px;
    margin: auto;
    width: 8px;
    height: 1px;
    background: var(--white);
    transition: .3s;
}

.nav-second-link:hover {
    color: var(--white);
}

.nav-single:hover .nav-second {
    opacity: 1;
    visibility: visible;
}

.header-link-btn {
    max-width: 300px;
    width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.header-rsv-text {
	font-size: 18px;
    letter-spacing: 0.03em;
}

/*-----------------------------------------------------------
is-scroll
-----------------------------------------------------------*/

.is-scroll.header {
    background: var(--white);
    transition: all .3s;
}

.is-scroll .header-frame {
	padding: 17px 0;
}

.is-scroll .header-logo-link {
	max-width: 200px;
	width: 25%;
}

.is-scroll .header-logo {
	display: none;
   	transition: all .3s;
}

.is-scroll .header-logo-fixed {
	display: block;
  	transition: all .3s;
}

.is-scroll .header-navi-link {
	color: var(--base-body-color);
}

.is-scroll .header-navi-link:hover {
	color: var(--base-body-color);
}

.is-scroll .nav-single-link:before, .is-scroll .nav-single-link:after {
    background: var(--base-body-color);
    transition: .3s;
}

.is-scroll .btn03-white {
    color: var(--white);
    background: var(--primary);
}

.is-scroll .btn03-white:hover {
    color: var(--white);
    background: var(--base-body-color);
}

.is-scroll .header-insta-link img {
    filter: brightness(0);
}

/*-----------------------------------------------------------
footer
-----------------------------------------------------------*/

.footer-info-title {
	text-align:justify;
	text-align-last:justify; 
}

.footer-navi-link {
  	margin: 20px 0 0;
  	font-size: 20px;
  	letter-spacing: 0.03em;
	color: var(--white);
}

.footer-navi-link:hover {
	color: var(--white);
}

.footer-navi-link02-box:before {
	content: "";
	position: absolute;
	width: 1px;
  	height: 100%;
	top: 0;
	left: 15px;
	background: #716661;
}

.footer-navi-link02 {
  	margin: 15px 0 0;
  	font-size: 15px;
  	letter-spacing: 0.03em;
	color: var(--white);
}

.footer-navi-link02:hover {
	color: var(--white);
}


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

}/* min-width: 375px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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



}/* min-width: 414px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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



}/* min-width: 576px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 768px) {
  
    .header-logo-link {
        width: 16% !important;
    }
  
    .header-frame {
        align-items: flex-start;
    }
  
    .header-right {
        width: 84%;
        flex-direction: column-reverse;
    }
  
    .header-navi-link:last-child {
		margin: 0;
    }
  
    .header-link-btn {
        width: 42%;
    }
 

}/* min-width: 768px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

}/* min-width: 992px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1024px) {
  
    .header-frame {
        align-items: center;
    }
  
    .header-logo-link {
        width: 12% !important;
    }
  
    .header-right {
        width: 87%;
        align-items: center;
        flex-direction: row;
    }
  
    .header-navi-block {
        margin: 0;
    }
  
    .header-navi-link:last-child {
		margin: 0 16px 0 0;
    }
  
    .header-link-btn {
        width: 21%;
	}
  
    .header-rsv-text {
        font-size: 13px;
	}
  
	.footer-navi-link {
		font-size: 22px;
	}

	.footer-navi-link02 {
		font-size: 18px;
	}  

}/* min-width: 1024px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1200px) {
  
    .header-frame {
        padding: 41px 0;
    }

    .header-logo-link {
        width: 16% !important;
    }
  
    .header-right {
        width: 82%;
    }
  
    .header-navi-link {
        font-size: 15px;
    }
  
    .header-rsv-text {
		font-size: 14px;
    }
  
    .header-insta-link {
        max-width: 40px !important;
        margin: 0 0 0 40px !important;
    }

	.footer-navi-link {
		font-size: 25px;
	}

	.footer-navi-link02 {
		font-size: 20px;
	}  

}/* min-width: 1200px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

    .header-navi-link {
        font-size: 17px;
        margin: 0 25px 0 0;
    }
  
    .header-navi-link:last-child {
		margin: 0 25px 0 0;
    }

}/* min-width: 1400px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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





}/* min-width: 1500px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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




}/* min-width: 1600px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1700px) {

    .header-logo-link {
        width: 25% !important;
    }
  
    .header-navi-link {
		font-size: 18px;
		margin: 0 40px 0 0;
    }
  
    .header-navi-link:last-child {
		margin: 0 40px 0 0;
    }
  
    .header-rsv-text {
		font-size: 18px;
    }

	.footer-navi-link {
		font-size: 25px;
	}

	.footer-navi-link02 {
		font-size: 20px;
	}  

}/* min-width: 1700px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */ 