@charset "utf-8";
/*!
Theme Name: hartyparty
Version: 0.0.1
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/assets/dist/main.css" */
/* From http://codex.wordpress.org/CSS */

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Autour+One&display=swap');

html { overflow-x: hidden; }
body { 
	-webkit-text-size-adjust: 100%;
	font-family: "M PLUS 1p", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin: 0;
	overflow: hidden;
	color: #2f2106;
	background-image: url(image/body_bg.jpg);
	background-size: 15%;
	background-repeat:repeat;
}

h1,h2,h3,h4,h5,h6 { margin-bottom: 0!important; }
#main { margin-top: 0; }
img { user-drag: none; -webkit-user-drag: none; -moz-user-select: none; }
.container { max-width: 980px!important; }
.container-full { width: 100vw; position: relative; left: 50%; transform: translateX(-50%); }
.container.single-wrap,.container.archive-wrap { padding: 60px; margin-top: 0; min-height: 50vh; }
.row { margin-left: 0; margin-right: 0; }
.post-date { background: #212f45; color: #fff; border-radius: 25px; padding: 4px 16px; display: inline-block; margin-bottom: 20px; }
.post-date::before { content: '\f133'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-right: 6px; }

/* 共通パーツ */
.topBtn {
		opacity: 0;
		position: fixed;
		bottom: 50px;
		left: 0;
		background: #045eb8;
		color: #fff;
		font-weight: 500;
		padding: 1.8rem;
		z-index: 9999;
}
.topBtn:hover { padding: 1.8rem 1.8rem 1.8rem 2.8rem; transition: 0.8s; }
.font300 { font-weight: 300; }
.font400 { font-weight: 400; }
.font500 { font-weight: 500; }
.font700 { font-weight: 700; }
.fontS { font-size: 75% !important; }
.noto { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
.eng { font-family: "Autour One", system-ui; font-weight: 400; font-style: normal; }

.fs-6 { font-size: 0.8rem!important; }
.mt-5 { margin-top: 3.0rem; }
.mt-10 { margin-top: 5.0rem; }
.bold { font-weight: 700!important; }
.icon i { margin-right: 4px; }
.w100 { width: 100%; }
.w290 { min-width: 290px; }
.h100 { height: 100%; }
.lh18 { line-height: 1.8rem; }
.no-wrap { white-space: nowrap; }
.download-bt a { display: inline-block; color: #fff; background: #dc143c; padding:1.0rem 3.0rem; border-radius: 6px; }
.download-bt a:hover { background: #db8495; transition: 0.8s; color: #dc143c; }
.gyou-1 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }
.gyou-2 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.gyou-3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.bg-00 { background: #fff; }
.bg-01 { background: #f5f5f5; }
.bg-02 { background: #2e8b57; }
.bg-03 { background: #212f45; }
.bg-04 { background: #dce4ee; }
.bg-05 { background: #bee0ce; }
.bg-06 { background: #bccf54; }
.bg-07 { background: #1e90ff; }
.bg-08 { background: #000; }
.bg-09 { background: #fff5f5; }
.mt-8 { margin-top:3.0rem!important; }
.red { color: #dc143c; }
.green { color: #5A7800; }
.white { color: #fff; }
.blue { color: #036EB8; }
.black { color: #333; }
.orange { color: #ff6347; }
.img100 { width:100%; height: auto; }
.over-img { overflow: hidden; }
.over-img img { height: 100%; width: 100%; object-fit: cover; }
.v-center { display:flex; align-items:center; }
.vh-center { display:flex; align-items:center; justify-content:center; }
.v-top { vertical-align: top; }
.v-bottom { vertical-align: bottom; }
.full-width { margin: 0 calc(50% - 50vw); }
.zoom-over:hover { transform:scale(1.1,1.1); transition:1s all; }
.shadow { box-shadow: 0 .15rem .5rem rgba(0, 0, 0, .5) !important; }
.t-shadow { text-shadow: 2px 2px #ffffff; }
.w-shadow {
-webkit-filter: drop-shadow(2px 3px 0px rgba(255, 255, 255, 1.0));
filter: drop-shadow(2px 3px 0px rgba(255, 255, 255, 1.0));
}
.b-shadow {
-webkit-filter: drop-shadow(2px 3px 2px rgb(68, 68, 68, 0.4));
filter: drop-shadow(2px 3px 2px rgb(68, 68, 68, 0.4));
}
.blur{
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}
.fa-fw { padding-right: 1.5rem; }
.fa-circle-right,.fa-envelope-circle-check { font-size: 1.4rem; }
.fa-youtube { font-size: 1.6rem; }
.link-bt-wrap { text-align: center; margin-bottom: 0; }
a.link-bt {
	width: 300px;
	background: #fff;
	min-width: 400px;
	padding: 20px 15px;
	color: #b16314;
	border: 1px solid #b16314;
	display: flex;
	align-items: center;
	justify-content: center;
}
a.link-bt:hover { background: rgb(255, 255, 255, 0.7); transition: 0.8s; }

/* パンくずリスト */
.breadcrumbs { margin-bottom: 0; }
.breadcrumbs-wrap { padding: 0 15px; }
ul.breadcrumbs { display: flex; flex-wrap: wrap; list-style: none; padding:0; }
ul.breadcrumbs li:not(:last-child)::after { content: "＞"; margin: 0 .6em; }
ul.breadcrumbs li a { color: #036EB8; }

/* ページネーション */
.pagination { display: flex; justify-content: center; margin-top:60px; }
.page-numbers { font-size: 1.3rem; }
a.page-numbers,.page-numbers.current {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		border-radius: 50%;
		background-color: #ed8822;
		color: #fff;
		text-align: center;
		font-size: 15px;
		font-weight: bold;
}
.page-numbers.current { background: #d8d8d8; color: #333; }

/* ポストナビゲーション */
.container .post-navigation { padding-bottom: 20px; }
.post-navigation a { font-size: 1.6rem; background: #036EB8; color:#fff; border: 2px solid #036EB8; padding: 0 1.2rem; border-radius: 6px; }
.post-navigation a:hover { background: #fff; color:#036EB8; border: 2px solid #036EB8; transition: 0.4s; }


/* ヘッダーナビ */
.navbar { position: absolute; width: 100%; top: 0; padding: 0; }
.navbar-bt-top,.navbar-bt { position: absolute; right:19px; top:20px; z-index:99; }
.navbar-toggler {
		position: relative;
		width: 70px;
		height: 70px;
		background: #ed8822;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		border: 4px solid #fff;
}
.navbar-toggler:focus { outline: none; }
.navbar-toggler .navbar-toggler-icon {
		width: 40px;
		background-image: url('data:image/svg+xml;charset=UTF8,<svg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path stroke="rgba(255, 255, 255, 1)" stroke-width="2" stroke-linecap="round" d="M4 7h22M4 15h22M4 23h22"/></svg>');
}
.navbar-toggler.active .navbar-toggler-icon {
  background-image: url('data:image/svg+xml;charset=UTF8,<svg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path stroke="rgba(255, 255, 255, 1)" stroke-width="2" stroke-linecap="round" d="M7 7l16 16M7 23L23 7"/></svg>');
}
.btn-close { font-size: 1.8rem; margin-top:20px; }
.offcanvas-header { margin-top: 16px; }
.offcanvas { background: #ed8822; }
.offcanvas-body::-webkit-scrollbar { display:none; }
.offcanvas-body { scrollbar-width: none; -ms-overflow-style: none; }
.offcanvas-body li,.offcanvas-body a { color: #fff; font-size: 1.25rem; padding: 0.35rem 0; }
.offcanvas-body a:hover { padding-left: 8px; border-bottom :1px solid #fff; transition: 0.8s; }
.offcanvas-backdrop { height: 100%; }

/* ヘッダ */
.hero-wrap {
	position: relative;
	height: 85vh;
	background-image: url(image/front/top_bg.png),linear-gradient(-90deg,rgba(255, 232, 191, 0.8) 0%, rgba(255, 247, 236, 0.9) 65%, rgba(255, 247, 236, 1) 100%);
	background-size: contain;
	background-repeat: no-repeat;
	--mask: conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) 50%/4vmin 100%;
	-webkit-mask: var(--mask);
	mask: var(--mask);
}
.header-logo-top{ position: absolute; bottom: 10%; right: 30px; width: 320px; }
.header-cut1 { position:absolute; top: 40%; right: 10%; transform: rotate( 4deg ); width: 260px; }
.header-cut2 { position:absolute; top: 20%; right: 20%; transform: rotate( -8deg ); width: 260px; }

/* フロント */
#about { padding: 4.0rem 0; }
.catch img { max-width: 480px; margin: 1.6rem 0; }
.text-box { margin: 3.0rem 0; background: #fff; padding: 2.0rem; border-left: 5px solid #ed8822; }
.text-box-title { font-size: 1.5rem; margin-top: 0; padding-left: 20px; }
.text-box-body { padding-left: 20px; }

#movie {
	padding: 4.0rem 0;
	background: rgb(255, 255, 255, 0.7);
	--mask: conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) 50%/4vmin 100%;
	-webkit-mask: var(--mask);
	mask: var(--mask);
}
.youtube { width: 100%; aspect-ratio: 16/9; padding: 15px; }
.youtube iframe { width: 100%; height: 100%; border-radius: 10px; box-shadow: 0 .15rem .5rem rgba(0, 0, 0, .5) !important; } 

/* 固定ページヘッダー&見出し */
.single-logo-top { width: 300px; padding-left: 15px; padding-top: 15px; }
.page-head-bg { padding: 5.0rem 15px; background: rgb(255, 255, 255, 0.7); margin-top: 30px; 
--mask:
conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) top/4vmin 51% repeat-x,
conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) bottom/4vmin 51% repeat-x;
-webkit-mask: var(--mask);
mask: var(--mask);
text-align: center;
}
.page .content { padding-top: 3.0rem; padding-bottom: 3.0rem; }

/* introduction */
.member-img { padding: 15px; }
.member-img p { font-size: 0.9rem; margin-bottom: 0; margin-top: 1.0rem; }
.list-title { font-size: 1.5rem; color:rgb(237, 136, 34); }

/* request */
.price { display: inline-block; font-size: 1.2rem; font-weight: 700; margin-bottom: 0.5rem; text-align: center; background: #ccddee; padding: 6px 15px; }
.request-caption { text-align: center; font-size: 1.4rem; font-weight: 800; color: rgb(72, 39, 6); }

/* フォーム共通 */
.contact-form-head { text-align: center; }
.contact-form-head p:first-child { font-size: 1.2rem; font-weight: 500; }
.contact-number { font-size: 1.2rem; font-weight: 700; color:#036EB8; }
.contact-number i { margin-right:0.3rem; }
.form100 { width: 100%; }
.form80 { width: 79.3%; }
.form50 { width: 49.3%; }
.form30 { width: 30.5%; }
.form20 { width: 20.0%; }
.form10 { width: 10.5%; }
.form-entry-item { border: none; pointer-events : none; width:100%; }
.form-section { background: #f5f5f5; border-left: 4px solid #ed8822; margin-bottom: 3px; }
.end-section { border-bottom: none; }
.form-section .error { display:block !important; }
.req { font-size: 0.6rem; padding: 3px 5px; background: red; color: #fff; border-radius: 4px; margin-left : 6px; vertical-align: middle; }
.form-head { padding: 0.8rem; }
.form-body { background: #fff; padding: 1.2rem 0.8rem; }
.form-head p,.form-body p { margin: 0; }
.form-control::placeholder { color: #a9a9a9; }
.mwform-checkbox-field-text { margin-right: 1.2rem; }
p.form-area { font-weight:normal; margin: 0.5rem 0 0.5rem 0; }
.form-control { border:2.0px solid #c0c0c0; }
.form-link a { text-decoration: underline; }
.send-check { margin-right: 1.5rem; }
.form-error-ex span::before { content: "※"; }
.form-error-ex span.mwform-file-delete::before { content: ""; }
.mw_wp_form_confirm .msg-hidden { display: none; }
.hidden-height { min-height: 1.4rem; }

#autozip { display: none!important; }
.back-bt { color: #fff; background: #008080; padding:1.0rem 1.0rem; margin-top:1.0rem; border:none; border-radius: 6px; }
.back-bt:hover { background: #8fb3b3; transition: 0.8s; color: #008080; }
.send-bt { color: #fff; background: #dc143c; padding:1.0rem 1.0rem; margin-top:1.0rem; border:none; border-radius: 6px; }
.send-bt:hover { background: #db8495; transition: 0.8s; color: #dc143c; }
.thanks { padding: 10% 0; }
.thanks h2 { font-size: 1.8rem; padding-bottom: 1.5rem; }
.thanks a { background: #0d6efd; color: #fff; padding: 10px 40px; border-radius: 10px; }

/* サイトマップページ */
.sitemap ul { margin: 1.5rem 0; list-style: none; }
.sitemap-list li { line-height: 1.75rem; }
.sitemap-list li a:before  { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; margin-right:0.4rem; }
.sitemap-list li a:hover { margin-left: 10px; transition: 0.8s; }

/* フッター */
#footer { background: none; }
#contact {
	padding: 4.0rem 0;
	background: #ED8822;
	background: linear-gradient(90deg, rgba(237, 136, 34, 1) 0%, rgba(237, 169, 34, 1) 30%, rgba(237, 169, 34, 1) 70%, rgba(237, 136, 34, 1) 100%);
}
#footer-content { background: rgb(255, 255, 255, 0.7); padding: 4.0rem 0; }
.heading-icon { background: #e13a10; display: inline-block; color: #fff; padding: 4px 20px; border-radius: 25px; min-width: 8.0rem; }
#copyright { background: rgb(237, 136, 34);  color: #fff; padding: 1.0rem 15px; text-align: center; }

.splide__slide img { width: 100%; height: auto; }


/* SP調整 */
@media screen and (max-width: 991px) {
body { 	background-size: 25%; }
header,#main,#footer { zoom: 90%; }
}

@media screen and (max-width: 769px) {
body { 	background-size: 35%; }
header,#main,#footer { zoom: 80%; }
.single-logo-top { padding-top: 30px; }
.offcanvas-body li,.offcanvas-body a { font-size: 1.45rem; }
.hero-wrap {
	background-size: cover;
	background-image: url(image/front/top_bg_SP.png),linear-gradient(-90deg,rgba(255, 232, 191, 0.8) 0%, rgba(255, 247, 236, 0.9) 65%, rgba(255, 247, 236, 1) 100%);
}
.header-cut1 { top: 48%; right: 10%; width: 230px; }
.header-cut2 { top: 28%; right: 20%; width: 230px; }
.text-box { margin: 1.8rem 0; padding: 1.5rem; }
.member-img { padding: 10px; }
.request-caption { font-size: 1.2rem; }
.sp-br { display: none; }
.form80,.form50,.form30,.form20 { width: 100%; }
}

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

}

@media screen and (max-width: 450px) {
a.link-bt { min-width: 100%; }
}

@media screen and (min-width: 576px) {
.xs-br { display:none; }
}