/**
 * 共通CSS
 */
 
/*フォント系*/
@font-face {
	font-family: 'Noto Sans JP';
	font-weight: 300;
	src: url("/common/fonts/NotoSansJP-Light.woff2") format("woff2");
	font-display: swap;
}

@font-face {
	font-family: 'Noto Sans JP';
	font-weight: 400;
	src: url("/common/fonts/NotoSansJP-Regular.woff2") format("woff2");
	font-display: swap;
}

@font-face {
	font-family: 'Noto Sans JP';
	font-weight: 700;
	src: url("/common/fonts/NotoSansJP-Bold.woff2") format("woff2");
	font-display: swap;
}

@font-face {
	font-family: 'Fustat';
	font-weight: 100 900;
	src: url("/common/fonts/Fustat-VariableFont_wght.ttf") format("truetype");
	font-display: swap;
}

@font-face {
	font-family: 'CalSans';
	font-weight: 400;
	src: url("/common/fonts/CalSans-Regular.ttf") format("truetype");
	font-display: swap;
}

.font-noto-sans {
	font-family: 'Noto Sans JP';
}

.font-fustat {
	font-family: 'Fustat';
}

.font-calsans {
	font-family: 'CalSans';
}

/* 色（テキスト、背景） */


.bg-site-primary{
	background-color: var(--bg_site_primary);
}
.bg-site-secondary{
	background-color: var(--bg_site_secondary);
}

.text-site-primary{
	color:var(--txt_site_primary) ;
}
.text-shaow-primary{
	text-shadow:var(--text-shadow-primary) 2px 2px;
}



/* bootstrap拡張系 */
.z-4 {z-index: 4;}
.z-5 {z-index: 5;}



.rotate-90{
	transform:rotate(90deg); 
}


.navbar-toggler-icon-light {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}


.bg-header-language-area {
	background-color: var(--bg-header-language-area);
}

.bg-header-language-button {
	background-color: var(--bg-header-language-button);
}

.bg-offcanvas-header-area {
	background-color: var(--bg-offcanvas-header-area);
}

.bg-top-menu-area {
	background-color: var(--bg-top-menu-area);
}

.bg-header-contact {
	background-color: var(--bg-header-contact);
}

.bg-table-title{
	background-color: var(--bg-table-title) !important;
}
.border-table{
	border: 1px solid var(--border-table) !important;
}


.text-pc-heading {
	color: var(--txt-pc-heading);
}

.txt-page-title {
	color: var(--txt-page-title);
}

.txt-contents-title {
	color: var(--txt-contents-title);
}
.txt_inasuki{
	color: var(--txt_inasuki);
}

.border-contents-title {
	border-bottom: 2px solid var(--txt-contents-title);
}

.border-contents {
	border: 2px solid var(--txt-contents-title) !important;
}

.border-header-language {
	border: 3px solid var(--border-header-lang);
}

/** テキストサイズ */

.fs-heading {
	font-size: clamp(20px, 8vw, 60px);
}


.fs-header-condition {
	font-size: clamp(40px, 8vw, 60px);
}

.fs-heading-premium-snow {
	font-size: clamp(25px, 7vw, 60px);
}

.fs-message2-sp {
	font-size: clamp(35px, 8vw, 40px);
}

.fs-premium-snow-message-sp {
	font-size: clamp(15px, 4vw, 20px);
}

.fs-7 {
	font-size: clamp(0.8rem, 1vw, 0.9rem);
}



/* overflow */
.overflow-clip {
	overflow-x: clip;
}

.rounded-bottom {
	border-radius: 0 0 2rem 2rem !important;
}

.rounded-right-bottom {
	border-radius: 0 0 2rem 0 !important;
}

.mail-ico-size {
	width: clamp(20px, 2vw, 30px);
}

.bg-image-gradient {
	position: relative;
	width: 100%;
	min-height: 100vh;
	overflow: hidden;
}

.bg-image-gradient:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 855px;
	background: 
		linear-gradient(to bottom, transparent 10%, white 50%),
		url("/common/img/lv.png") center/cover no-repeat;
}

.breadcrumb-connection {
	position: relative;
	margin-right: 1.5rem;
}

.breadcrumb-connection::after{
	position: absolute;
	color: var(--txt-breadcrumb-separate);
	font-size: 1.5rem;
	content: "・";
	top: -5px;
	right: -1px;
	width: 1px;
	height: 1px;
}

@media screen and (max-width: 768px) {
	.sub-content-header {
		height: 150px;
	}
}

@media screen and (min-width: 768px) {
	.sub-content-header {
		height: 250px;
	}
}

.sub-content-base {
	background: var(--bg-sub-content-base);
	border-radius: 1rem;
}

.sub-content {
	background: var(--bg-sub-content-main);
	
}

.common-btn-shadow {
	box-shadow: 1px 2px 4px var(--bg-common-btn-shadow);
}

.common-btn-shadow:hover {
	box-shadow: none;
}

.rotate-180deg {
	transform: rotate(180deg);
}

.bg-glass {
  background-color: var(--bg-glass);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  border-radius: 15px;
  border: 1px solid var(--border-glass);
  box-shadow: 0 4px 8px var(--shadow-glass);
}



.menu-space{
	content: '';
	height: 90px;
}

.img-radius {
	border-radius: 30px 30px 30px 30px;
}

@media screen and (min-width:768px) {
	.border-md-top {
		border-top:solid 1px var(--border-thin);
	}
	.border-md-bottom{
		border-bottom:solid 1px  var(--border-thin);
	}
}

