/* designed by Value Up, Tokyo 2026 */]
html, body {height: 100%;}
html {scroll-behavior: smooth;}
body {
	font-size: 1rem;
	line-height: 1.6;
	background: #fff;
	color: #222;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-variation-settings: "wdth" 100;
}

:root, [data-bs-theme=light] {
	--bs-blue: #2c4f7c;
	--bs-indigo: #6610f2;
	--bs-purple: #6f42c1;
	--bs-pink: #d63384;
	--bs-red: #7a2e2e;
	--bs-orange: #fd7e14;
	--bs-yellow: #c2a24d;
	--bs-green: #1f3d2b;
	--bs-teal: #20c997;
	--bs-cyan: #73a1dc;
	--bs-black: #000;
	--bs-white: #fff;
	--bs-gray: #6c757d;
	--bs-gray-dark: #343a40;
	--bs-gray-100: #f8f9fa;
	--bs-gray-200: #e9ecef;
	--bs-gray-300: #dee2e6;
	--bs-gray-400: #ced4da;
	--bs-gray-500: #adb5bd;
	--bs-gray-600: #6c757d;
	--bs-gray-700: #495057;
	--bs-gray-800: #343a40;
	--bs-gray-900: #212529;
	--bs-primary: #2c4f7c;
	--bs-secondary: #6c757d;
	--bs-success: #1f3d2b;
	--bs-info: #73a1dc;
	--bs-warning: #c2a24d;
	--bs-danger: #7a2e2e;
	--bs-light: #f8f9fa;
	--bs-dark: #212529;
	--bs-primary-rgb: 44,79,124;
	--bs-secondary-rgb: 108,117,125;
	--bs-success-rgb: 25,135,84;
	--bs-info-rgb: 13,202,240;
	--bs-warning-rgb: 255,193,7;
	--bs-danger-rgb: 220,53,69;
	--bs-light-rgb: 248,249,250;
	--bs-dark-rgb: 33,37,41;
	--bs-primary-text-emphasis: #052c65;
	--bs-secondary-text-emphasis: #2b2f32;
	--bs-success-text-emphasis: #0a3622;
	--bs-info-text-emphasis: #055160;
	--bs-warning-text-emphasis: #664d03;
	--bs-danger-text-emphasis: #58151c;
	--bs-light-text-emphasis: #495057;
	--bs-dark-text-emphasis: #495057;
	--bs-primary-bg-subtle: #cfe2ff;
	--bs-secondary-bg-subtle: #e2e3e5;
	--bs-success-bg-subtle: #d1e7dd;
	--bs-info-bg-subtle: #cff4fc;
	--bs-warning-bg-subtle: #fff3cd;
	--bs-danger-bg-subtle: #f8d7da;
	--bs-light-bg-subtle: #fcfcfd;
	--bs-dark-bg-subtle: #ced4da;
	--bs-primary-border-subtle: #9ec5fe;
	--bs-secondary-border-subtle: #c4c8cb;
	--bs-success-border-subtle: #a3cfbb;
	--bs-info-border-subtle: #9eeaf9;
	--bs-warning-border-subtle: #ffe69c;
	--bs-danger-border-subtle: #f1aeb5;
	--bs-light-border-subtle: #e9ecef;
	--bs-dark-border-subtle: #adb5bd;
	--bs-white-rgb: 255,255,255;
	--bs-black-rgb: 0,0,0;
	--bs-font-sans-serif: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
	--bs-font-monospace: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
	--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
	--bs-body-font-family: var(--bs-font-sans-serif);
	--bs-body-font-size: 1rem;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.5;
	--bs-body-color: #212529;
	--bs-body-color-rgb: 33,37,41;
	--bs-body-bg: #fff;
	--bs-body-bg-rgb: 255,255,255;
	--bs-emphasis-color: #000;
	--bs-emphasis-color-rgb: 0,0,0;
	--bs-secondary-color: rgba(33, 37, 41, 0.75);
	--bs-secondary-color-rgb: 33,37,41;
	--bs-secondary-bg: #e9ecef;
	--bs-secondary-bg-rgb: 233,236,239;
	--bs-tertiary-color: rgba(33, 37, 41, 0.5);
	--bs-tertiary-color-rgb: 33,37,41;
	--bs-tertiary-bg: #f8f9fa;
	--bs-tertiary-bg-rgb: 248,249,250;
	--bs-heading-color: inherit;
	--bs-link-color: #2c4f7c;
	--bs-link-color-rgb: 44,79,124;
	--bs-link-decoration: underline;
	--bs-link-hover-color: #0a58ca;
	--bs-link-hover-color-rgb: 10,88,202;
	--bs-code-color: #d63384;
	--bs-highlight-color: #212529;
	--bs-highlight-bg: #fff3cd;
	--bs-border-width: 1px;
	--bs-border-style: solid;
	--bs-border-color: #dee2e6;
	--bs-border-color-translucent: rgba(0, 0, 0, 0.175);
	--bs-border-radius: 0.375rem;
	--bs-border-radius-sm: 0.25rem;
	--bs-border-radius-lg: 0.5rem;
	--bs-border-radius-xl: 1rem;
	--bs-border-radius-xxl: 2rem;
	--bs-border-radius-2xl: var(--bs-border-radius-xxl);
	--bs-border-radius-pill: 50rem;
	--bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
	--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
	--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
	--bs-focus-ring-width: 0.25rem;
	--bs-focus-ring-opacity: 0.25;
	--bs-focus-ring-color: rgba(13, 110, 253, 0.25);
	--bs-form-valid-color: #1f3d2b;
	--bs-form-valid-border-color: #1f3d2b;
	--bs-form-invalid-color: #7a2e2e;
	--bs-form-invalid-border-color: #7a2e2e;
}

/* general */
.view-pc, .view-mb, .br-pc, .br-mb {display: none;}
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {max-width:1220px;}
ul {list-style-type: square;}
.shadow-block {box-shadow: 10px 10px 0 rgba(0,0,0,0.1);}
.text-shadow {text-shadow: 0 0 5px #000;}
.section-title {
	font-size: 300%;
	color: #2c4f7c;
	margin-bottom: 1em;
	text-shadow: 4px 4px 0 #fff;
}
.heading-top {
	display: block;
	height: 50px;
	background: transparent url('img/heading-img.svg') no-repeat center bottom;
	background-size: contain;
}
.heading-btm {
	display: block;
	margin: 10px auto 0;
	width: 40%;
	height: 1px;
	border-bottom: 1px dotted rgba(0,0,0,0.3);
}
.heading-txt img {height: 44px; width: auto; margin-bottom: 24px;}

/* fonts & texts */
.material-symbols-outlined {
	vertical-align: middle;
	font-variation-settings:
	'FILL' 0,
	'wght' 400,
	'GRAD' 0,
	'opsz' 24
}
.font-serif {font-family: "Noto Serif JP", serif;}
.font-sans {font-family: "Noto Sans JP", sans-serif;}
.fw-700 {font-weight: 700;}

/* color setting */
.text-navy {color: #0b1c2d;}
.text-dark-brown {color: #2b1e18;}
.text-blue {color: #2c4f7c;}
.text-second-blue {color: #73a1dc;}
.text-brown {color: #502200;}
.text-green {color: #1f3d2b;}
.text-pale {color: #F9F6EC;}
.bg-sky {background-color: rgba(115,161,220,0.15);}
.bg-bronze {background-color: #ab9580;}
.bg-brown {background-color: #502200;}
.bg-color-beige {background-color: #efe7da;}
.bg-shade-beige {background: linear-gradient(to right,  rgba(239,231,218,0) 0%,rgba(239,231,218,1) 21%,rgba(239,231,218,1) 80%,rgba(239,231,218,1) 100%);}

/* link & button */
a:hover {text-decoration: none;}
.btn-brown, .btn-bronze {font-weight: bold;}
.btn-brown {background-color: #502200; border-color: #502200; color: #c09933;}
.btn-bronze {background-color: #c09933; border-color: #c09933; color: #502200;}
.btn-brown:hover {background-color: #502200; border-color: #502200; color: #c09933; box-shadow: 0 0 5px #222;}
.btn-bronze:hover {background-color: #c09933; border-color: #c09933; color: #502200; box-shadow: 0 0 5px #222;}

/* card */
.card {
	background: linear-gradient(135deg,  rgba(255,255,255,0.9) 0%,rgba(255,255,255,0.3) 30%,rgba(255,255,255,0.3) 100%);
	border-color: rgba(255,255,255,0.7);
	box-shadow: 0 0 4px rgba(0,0,0,0.25);
}

/* preloader */
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	overflow: hidden;
	background: #ffffff;
}
#preloader:before {
	content: "";
	position: fixed;
	top: calc(50% - 0px);
	left: calc(50% - 30px);
	border: 6px solid #ffffff;
	border-top-color: var(--bs-dark);
	border-bottom-color: var(--bs-dark);
	border-radius: 50%;
	width: 60px;
	height: 60px;
	-webkit-animation: animate-preloader 1s linear infinite;
	animation: animate-preloader 1s linear infinite;
}
@keyframes animate-preloader {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* header */
#topLogo img {height: 64px; width: auto;}
#topLogo2 img {height: 34px; width: auto;}
.stlnkbox {line-height: 1.2; padding: 5px;}
#valupTagline {display: block; font-size: 30%; font-weight: bold;}
#siteTopLinks img {height: 44px; width: auto;}

/* navigation */
.font-helvetica {font-family: "Helvetica", sans-serif;}

/* hero */
#hero {position: relative;}
#heroBtn {
	position: absolute;
	width: 100%;
	height: 120px;
	text-align: center;
	left: 0;
	bottom: 0;
	z-index: 2;
}
#heroBtn img {max-width: 600px;}

/* intro */
#intro {}

/* your style */
#whatYourStyle, #whatYourStyle2 {min-height: 440px;}
#whatYourStyle h2, #whatYourStyle2 h2 {font-weight: 700; text-shadow: 3px 3px 0 #fff;}
#whatYourStyle .wys-title, #whatYourStyle2 .wys-title {font-weight: 700; text-shadow: 3px 3px 0 #fff;}
#whatYourStyle {background: #eee url('img/bg-your-style.jpg') no-repeat center center; background-size: cover;}
#whatYourStyle2 {background: #eee url('img/bg-your-style2.jpg') no-repeat center center; background-size: cover;}
.wys-box-wrapper {
	border-radius: 24px;
	overflow: hidden;
	position: relative;
	min-height: 440px;
}
.wys-box-wrapper h3 {text-shadow: 0 0 3px #000;}
.wys-box {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	z-index: 3;
}
.wys-box .btn {box-shadow: 5px 5px 0 rgba(255,255,255,0.75);}
.wysb01 {background: transparent url('img/ys-bg01.jpg') no-repeat center bottom;}
.wysb02 {background: transparent url('img/ys-bg02.jpg') no-repeat center bottom;}
.wysb03 {background: transparent url('img/ys-bg03.jpg') no-repeat center bottom;}
.wysb01, .wysb02, .wysb03 {background-size: contain;}

/* concept */
.point-box {margin-bottom: 1.2em;}
.cncpt-point {
	display: inline-block;
	padding: 0 20px;
	background: linear-gradient(45deg,  rgba(194,162,77,1) 0%,rgba(115,161,220,1) 40%,rgba(115,161,220,1) 100%);
	border-radius: 6px;
	box-shadow: 5px 5px 0 #ccc;
	color: #fff;
}

/* what's Hope Town */
#intro h2 img, #whatisHopetown h2 img {height: 44px; width: auto; vertical-align: middle;}
#whatisHopetown img {height: 72px; width: auto; margin-bottom: 1.2em;}

/* land plan */
.lp-box {
	padding: 0 10px;
	border: 1px solid #222;
	box-shadow: 5px 5px 0 #d9aca8;
}
.carousel-item img {
	height: 250px;
	object-fit: cover;
	border-radius: 12px;
}

/* location */
#location {overflow-x: hidden;}
#location .badge {
	background-color: none;
	color: #2c4f7c!important;
	border: 2px solid #2c4f7c!important;
	background: none;
	border-radius: 4em;
	padding-left: 20px;
	padding-right: 20px;
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {background-color: #502200;}
#lctLists {
	background: #fff;
	background-size: cover;
}
#accssPict, #accssPict2 {position: relative;}
#diag01, #diag02 {position: absolute; z-index: 3;}
#diag01 {
	left: 0;
	top: 0;
	width: 20%;
	height: 100%;
	background: transparent url('img/diag01.png') no-repeat right top;
}
#diag02 {
	right: 0;
	bottom: 0;
	width: 20%;
	height: 100%;
	background: transparent url('img/diag02.png') no-repeat left top;
}

/* access */
#accssPict, #accssPict2 {min-height: 550px;}
#accssPict {
	background: #ccc url('img/access-pict01.jpg') no-repeat center center;
	background-size: cover;
}
#accssPict2 {
	background: #ccc url('img/access-pict02.jpg') no-repeat center center;
	background-size: cover;
}

/* company */
#cpnPict {
	background: #ccc url('img/bg-companypict.jpg') no-repeat center center;
	background-size: cover;
}

/* form */
#formBox {position: relative;}
#formBttm {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 99;
	width: 100%;
	height: 120px;
	background: #cff4fc;
}

/* footer */
.valup-logo img {height: 64px; width: auto;}

/* ad span */
.span-bo {
	border-top: 10px solid #efe7da;
	border-bottom: 10px solid #efe7da;
	background: linear-gradient(135deg,  rgba(194,162,77,1) 0%,rgba(255,243,205,1) 40%,rgba(255,243,205,1) 70%,rgba(194,162,77,1) 100%);
}
.span-bo h3 {text-shadow: 3px 3px 0 #fff;}
#aircon img {height: 120px; width: auto;}

/* back to top */
#backToTopBtn {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 30px;
	z-index: 99;
	outline: none;
	cursor: pointer;
	font-size: 18px;
	transition: opacity 0.3s;
}
#backToTopBtn:hover {}

/* floating banner */
#floatingBanner {
	position: fixed;
	bottom: 50px;
	left: 50%;
	transform: translateX(-50%) translateY(120%);
	background: rgba(0,0,0,0.2);
	color: #fff;
	padding: 12px 16px;
	border:1px solid rgba(255,255,255,0.75);
	border-radius: 50px;
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	box-shadow: 0 10px 25px rgba(0,0,0,0.3);
	transition: all 0.4s ease;
	z-index: 9999;
	backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
}
#floatingBanner.show {
	transform: translateX(-50%) translateY(0);
}


/* responsive fixes */
@media screen and (min-width: 641px) {
	.view-pc, .br-pc {display: block;}
	#access {overflow-x: hidden;}
	#iconlp img {margin-top: -20px;}
	#intro h2 img, #whatisHopetown h2 img {margin-bottom: 0;}
}
@media screen and (max-width: 640px) {
	.view-mb, .br-mb {display: block;}
	.container {overflow: hidden;}
	/* .navbar-toggler-icon {background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");} */
	.navbar-toggler-custom .navbar-toggler-icon {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(165, 42, 42, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E") !important;}
	#topLogo img {height: 44px;}
	#siteTopLinks img {height: 34px;}
	#access {overflow-x: hidden;}
	#heroBtn img {max-width: 300px;}
	#heroBtn {position: static; height: auto; padding: 20px 0;}
	#whatYourStyle, #whatYourStyle2 {background-image: none; background-color: burlywood!important;}
	#lpbx2MB {padding-left: 64px; position: relative;}
	#iconlpmb {position: absolute; left: 3px; top: 5px; width: 60px; height: 80px; z-index: 3;}
	#iconlpmb img {width: 100%; height: auto;}
	#accssPict, #accssPict2, #cpnPict {min-height: 275px; background-size: contain-x; overflow: hidden;}
	#formBttm {height: 90px;}
	.wysb01, .wysb02, .wysb03 {background-size: cover;}
	.heading-txt img, #intro h2 img, #whatisHopetown h2 img {height: 32px;}
	#whatisHopetown img {margin-bottom: 5px;}
}