/*!
 * pace.js v1.2.4 | Default theme
 * https://github.com/CodeByZach/pace/
 * Licensed MIT © HubSpot, Inc.
 */
.pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{background:#d72630;position:fixed;z-index:2000;top:0;right:100%;width:100%;height:2px}

:root {
	--color-1: #787362;
}


/* Center Simple */
.pace {
	-webkit-pointer-events: none;
	pointer-events: none;

	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;

	z-index: 2000;
	position: fixed;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	width: 200px;
	background: #fff;
	border: 1px solid var(--color-1);

	overflow: hidden;
}

.pace .pace-progress {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;

	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);

	max-width: 200px;
	position: fixed;
	z-index: 2000;
	display: block;
	position: absolute;
	top: 0;
	right: 100%;
	height: 100%;
	width: 100%;
	background: var(--color-1);
}

.pace.pace-inactive {
	display: none;
}

/* Green Studio */
.wrap {
	transition: .3s;
}
.pace-running .wrap {
	opacity: 0;
}
.pace-done .wrap {
	opacity: 1;
}

@media screen and (min-width: 1000px) {
	.pace {
		width: 200px;
		background: #fff;
		border: 1px solid var(--color-1);
	}

	.pace .pace-progress {
		max-width: 200px;
	}
}@charset "UTF-8";

*{margin:0;padding:0;line-height:calc(0.25rem + 1em + 0.25rem)}*,::before,::after{box-sizing:border-box}*:where(:not(fieldset,progress,meter)){border-width:0;border-style:solid;background-origin:border-box;background-repeat:no-repeat}html{block-size:100%;-webkit-text-size-adjust:none}@media (prefers-reduced-motion:no-preference){html:focus-within{scroll-behavior:smooth}}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeSpeed;min-block-size:100%}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(img,svg,video){block-size:auto;max-inline-size:100%}:where(svg){stroke:none;fill:currentColor}:where(svg):where(:not([fill])){stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round}:where(svg):where(:not([width])){inline-size:5rem}:where(input,button,textarea,select),:where(input[type="file"])::-webkit-file-upload-button{color:inherit;font:inherit;font-size:inherit;letter-spacing:inherit;word-spacing:inherit}:where(textarea){resize:vertical}@supports (resize:block){:where(textarea){resize:block}}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}h1{font-size:2em}:where(ul,ol){list-style-position:inside}:where(ul,ol)[role="list"]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}:where(a[href],area,button,input,label[for],select,summary,textarea,[tabindex]:not([tabindex*="-"])){cursor:pointer;touch-action:manipulation}:where(input[type="file"]){cursor:auto}:where(input[type="file"])::-webkit-file-upload-button,:where(input[type="file"])::file-selector-button{cursor:pointer}@media (prefers-reduced-motion:no-preference){:focus-visible{transition:outline-offset 145ms cubic-bezier(.25,0,.4,1)}:where(:not(:active)):focus-visible{transition-duration:0.25s}}:where(:not(:active)):focus-visible{outline-offset:5px}:where(button,button[type],input[type="button"],input[type="submit"],input[type="reset"]),:where(input[type="file"])::-webkit-file-upload-button,:where(input[type="file"])::file-selector-button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;text-align:center}:where(button,button[type],input[type="button"],input[type="submit"],input[type="reset"])[disabled]{cursor:not-allowed}

:root {
	/**
	 * CSS native variables not working in media queries
	--xs: 480px;
	--sm: 576px;
	--md: 768px;
	--lg: 992px;
	--xl: 1200px;
	 */
	--ff-serif-1: "Times","Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","IPAex明朝","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	--font-color-1: #333;
	--color-1: #787362;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	font-weight: normal;
}

html {
	font-size: 10px;
}

body {
	/* line-height: 1.9; */
	color: var(--font-color-1);
	font-size: 10px;
	font-family: var(--ff-serif-1);
	font-feature-settings: "palt";
}

img {
	max-width: 100%;
	height: auto;
	transition: .26s;
}

a:hover img {
	opacity: 0.55;
}

ul {
	list-style: none;
}

.container,
.container-fluid {
	padding-right: min(9vw, 40px);
	padding-left: min(9vw, 40px);
	margin-right: auto;
	margin-left: auto;
}

/* header
// ========================================================================== */

.site-header {
	position: relative;
	width: 100%;
}

.site-header::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background-image: url(img/bg-1.jpg);
	background-size: cover;
	background-color:rgba(239,185,159,0.8);
	background-blend-mode:lighten;
}




.site-header::before {
  animation: bgchange 12s ease infinite;/*変化の時間を変更したい場合は20sの部分を好きな時間に変更*/
}

@keyframes bgchange{
      0%   {background-color:rgba(230,146,138,0.8); }
      25%  {background-color:rgba(207,224,231,0.8); }
      50%  {background-color:rgba(162,148,174,0.8); }
      75%  {background-color:rgba(239,185,159,0.8); }
      100% {background-color:rgba(144,62,142,0.8); }
 }



.header-logo-wrap {
	position: relative;
	height: min(100vh, 900px);
}

.header-logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: min(86%, 520px);
	font-size: min(4.2vw, 21px);
	letter-spacing: 0.1em;
	text-align: center;
}

.header-logo-image,
.header-logo-texts > span {
	opacity: 0;
	display: block;
	margin-top: 1em;
}

.header-logo-svg,
.header-logo-image {
	width: min(62%, 500px);
	margin: 0 auto min(9vw, 44px);
}

.header-logo-image img {
	width: 100%;
}

.pace-done .header-logo-image {
	animation: anim 3s ease-out forwards;
	animation-delay: .6s;
}

.pace-done .header-logo-texts .line-1 {
	animation: anim 3s ease-out forwards;
	animation-delay: 1.8s;
}

.pace-done .header-logo-texts .line-2 {
	animation: anim 3s ease-out forwards;
	animation-delay: 2.4s;
}


.prompt-scroll-down {
	position: absolute;
	bottom: 2%;
	left: 50%;
	transform: translate(-50%, 0);
	letter-spacing: 0.1em;
}

.prompt-scroll-down .line {
	position: relative;
	width: 0;
	height: 52px;
	margin: 1em auto;
	border-left: 1px solid rgba(0, 0, 0, .1);
}

.prompt-scroll-down .line div {
	position: absolute;
	top: 0;
	left: -1px;
	border-left: 1px solid;
	animation: scroll-down 3s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}


/* site-links
// ========================================================================== */

.site-links {
	position: relative;
	padding: min(9vw, 60px) 0;
	background-color: rgba(0, 0, 0, 0.05);
}

.site-links nav a {
	position: relative;
	display: flex;
	margin: min(4.5vw, 40px) auto;
	border: 1px solid rgba(0, 0, 0, .13);
	background-color: rgba(255, 255, 255, .4);
	color: var(--font-color-1);
	text-decoration: none;
	transition: .56s;
}

.site-links nav a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 7%;
	width: 12px;
	height: 12px;
	border-top: 1px solid var(--color-1);
	border-right: 1px solid var(--color-1);
	transform: rotate(45deg) translate(0, -50%);
	transition: .3s;
}

.site-links nav a:hover {
	background-color: #fff;
	box-shadow: 0 6px 24px rgba(0, 0, 0, .2);
}

.site-links nav a:hover::after {
	right: 5.5%;
}

.site-links .images {
	width: 26%;
}

.site-links .texts {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 65%;
	padding-left: 8%;
	font-size: 13px;
}

.site-links .texts-logo {
	display: block;
	width: 100%;
	color: var(--color-1);
	letter-spacing: 0.1em;
	margin-bottom: 0.1em;
}

.site-links .texts-name {
	font-size: 130%;
}

@media screen and (min-width: 768px) {
	.site-links .container {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.site-links nav a {
		width: 46%;
	}
}

@media screen and (min-width: 1440px) {
	.site-links nav a {
		width: 23%;
	}
}


/* footer
// ========================================================================== */

.footer {
	border-top: 1px solid rgba(196,189,160,.3);
	background-color: #333;
	text-align: center;
	color: #7d744e;
}

.footer-logo {
	color: #c4bda0;
	text-decoration: none;
	font-size: 23px;
	text-align: center;
	margin: 20px 0 12px;
}

.office {
	margin-top: 30px;
	display: flex;
	justify-content: center;
	max-width: 1920px;
	min-width: 360px;
}

.office p {
	line-height: 1.8em;
	color: #ddd;
	letter-spacing: 0.12em;
	width: 100%;
}

.office a {
	color: #e6b2a1;
	text-decoration: none;
}

.copyright {
	margin-top: 20px;
	padding-top: 20px;
	padding-bottom: 24px;
	/* border-top: 1px solid rgba(196,189,160,.3); */
	clear: both;
	position: relative;
	text-align: center;
	font-size: 12px;
	color: #aaa;
	letter-spacing: .06em;
}

.copyright-links {
	margin-bottom: 10px;
}

.copyright-links a {
	color: #c4bda0;
	text-decoration: none;
}

.copyright-links a + a {
	margin-left: 1.5em;
}


@media screen and (min-width: 992px) {
	.footer-logo {
		font-size: 40px;
	}

	.copyright-links {
		position: absolute;
		top: 50%;
		right: 15px;
		transform: translate(0, -50%);
	}
}


/* misc
// ========================================================================== */

.scroll-in {
	opacity: 0;
	transition: 1.2s;
}

.scroll-in-up {
	transform: translate(0, 20px);
	transition-duration: .64s;
	transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.scroll-in-right {
	transform: translateX(-10%);
	transition-duration: .64s;
	transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.scroll-in-delay-0 { transition-delay: 0s; }
.scroll-in-delay-1 { transition-delay: 0.25s; }
.scroll-in-delay-2 { transition-delay: 0.5s; }
.scroll-in-delay-3 { transition-delay: 0.75s; }
.scroll-in-delay-4 { transition-delay: 1s; }
.scroll-in-delay-5 { transition-delay: 1.25s; }
.scroll-in-delay-6 { transition-delay: 1.5s; }
.scroll-in-delay-7 { transition-delay: 1.75s; }
.scroll-in-delay-8 { transition-delay: 2s; }
.scroll-in-delay-9 { transition-delay: 2.25s; }
.scroll-in-delay-10 { transition-delay: 2.5s; }

.scroll-in._in {
	opacity: 1;
	transform: translate(0);
}

@media screen and (min-width: 992px) {
	.scroll-in-lg-delay-0 { transition-delay: 0s; }
	.scroll-in-lg-delay-1 { transition-delay: 0.25s; }
	.scroll-in-lg-delay-2 { transition-delay: 0.5s; }
	.scroll-in-lg-delay-3 { transition-delay: 0.75s; }
	.scroll-in-lg-delay-4 { transition-delay: 1s; }
	.scroll-in-lg-delay-5 { transition-delay: 1.25s; }
	.scroll-in-lg-delay-6 { transition-delay: 1.5s; }
	.scroll-in-lg-delay-7 { transition-delay: 1.75s; }
	.scroll-in-lg-delay-8 { transition-delay: 2s; }
	.scroll-in-lg-delay-9 { transition-delay: 2.25s; }
	.scroll-in-lg-delay-10 { transition-delay: 2.5s; }
}

@keyframes anim {
	0%    {
		filter: blur(.5em);
		transform: scale(1.1);
		opacity: 0;
	}
	20%   {
		opacity: 1;
	}
	40%   {
		filter: blur(0);
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}

@-webkit-keyframes anim {
	0%    {
		filter: blur(.5em);
		transform: scale(1.1);
		opacity: 0;
	}
	20%   {
		opacity: 1;
	}
	40%   {
		filter: blur(0);
	}
	100% {
		transform: scale(1);
		opacity: 1;
	}
}



@keyframes scroll-down {
	0% {
		top: 0;
		height: 0;
	}
	30% {
		top: 0;
		height: 100%;
	}

	60% {
		top: 100%;
		height: 0;
	}

	100% {
		top: 100%;
		height: 0;
	}
}

@-webkit-keyframes scroll-down {
	0% {
		top: 0;
		height: 0;
	}
	30% {
		top: 0;
		height: 100%;
	}

	60% {
		top: 100%;
		height: 0;
	}

	100% {
		top: 100%;
		height: 0;
	}
}

/***************************************************
 * Generated by SVG Artista on 1/23/2023, 4:41:13 PM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

svg .svg-elem-1 {
  stroke-dashoffset: 624.21044921875px;
  stroke-dasharray: 624.21044921875px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s;
}

svg.active .svg-elem-1 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-2 {
  stroke-dashoffset: 282.30609130859375px;
  stroke-dasharray: 282.30609130859375px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s;
}

svg.active .svg-elem-2 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-3 {
  stroke-dashoffset: 421.7455139160156px;
  stroke-dasharray: 421.7455139160156px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1s;
}

svg.active .svg-elem-3 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-4 {
  stroke-dashoffset: 445.9056701660156px;
  stroke-dasharray: 445.9056701660156px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s;
}

svg.active .svg-elem-4 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-5 {
  stroke-dashoffset: 501.56976318359375px;
  stroke-dasharray: 501.56976318359375px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.48s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2000000000000002s;
}

svg.active .svg-elem-5 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-6 {
  stroke-dashoffset: 330.6986999511719px;
  stroke-dasharray: 330.6986999511719px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s;
}

svg.active .svg-elem-6 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-7 {
  stroke-dashoffset: 373.0785827636719px;
  stroke-dasharray: 373.0785827636719px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.72s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4000000000000001s;
}

svg.active .svg-elem-7 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-8 {
  stroke-dashoffset: 412.95770263671875px;
  stroke-dasharray: 412.95770263671875px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.84s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
}

svg.active .svg-elem-8 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

svg .svg-elem-9 {
  stroke-dashoffset: 282.3065185546875px;
  stroke-dasharray: 282.3065185546875px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s,
                        fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
          transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.96s,
                fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s;
}

svg.active .svg-elem-9 {
  stroke-dashoffset: 0;
  fill: rgb(120, 115, 98);
}

/*
// ========================================================================== */

.header {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: min(12vw, 54px);
}

.header-logo-2 {
	width: min(28vw, 140px);
	padding-top: 5px;
}

.breadcrumb-list {
	padding-right: min(9vw, 40px);
	padding-left: min(9vw, 40px);
	background-color: #eee;
}

.breadcrumb-list ol li { display: inline-block; padding: 5px 0.5em; }
.breadcrumb-list ol li + li:before { padding-right: 1rem; content: ">"; }

@media screen and (max-width: 768px) { .breadcrumb-list { overflow-x: scroll; }
  .breadcrumb-list ol { list-style: none; display: table; }
  .breadcrumb-list ol li { display: table-cell; white-space: nowrap; } }
/* 画面の横幅が992px以上 */
@media screen and (min-width: 992px) { /* スクロールバーの装飾 */
  .breadcrumb-list.scroll-bar::-webkit-scrollbar-track { background-color: #FFF; }
  .breadcrumb-list.scroll-bar::-webkit-scrollbar-thumb { background-color: rgba(238, 238, 238, 0.8); } }

.link-box-1, .link-box-2 {
	display: block;
	line-height: 1.2;
	text-decoration: none;
	color: #363227;
}

/*
// ========================================================================== */

.inner { width: 100%; margin: 0 auto; }
.inner.ver_01 { border-top: 1px solid #d6d6d6; padding: 5rem 0 8rem; }
.inner.ver_02 { margin-bottom: 6rem; }
@media screen and (max-width: 768px) { .inner.ver_01 { padding: 2.5rem 0 4rem; }
  .inner.ver_02 { margin-bottom: 3rem; } }

/* margin-padding */
.mb_0 { margin-bottom: 0 !important; }
.mb_2 { margin-bottom: 2px !important; }
@media screen and (max-width: 768px) { .mb_2 { margin-bottom: 1rem !important; } }
.mb_sss { margin-bottom: 1rem !important; }
@media screen and (max-width: 768px) { .mb_sss { margin-bottom: 0.6rem !important; } }
.mb_ss { margin-bottom: 2rem !important; }
@media screen and (max-width: 768px) { .mb_ss { margin-bottom: 1.3rem !important; } }
.mb_ss_up { margin-bottom: 3rem !important; }
@media screen and (max-width: 768px) { .mb_ss_up { margin-bottom: 2rem !important; } }
.mb_s { margin-bottom: 4rem !important; }
@media screen and (max-width: 768px) { .mb_s { margin-bottom: 2.6rem !important; } }
.mb_s_up { margin-bottom: 5rem !important; }
@media screen and (max-width: 768px) { .mb_s_up { margin-bottom: 3.3rem !important; } }
.mb_m { margin-bottom: 6rem !important; }
@media screen and (max-width: 768px) { .mb_m { margin-bottom: 4rem !important; } }
.mb_m_up { margin-bottom: 7rem !important; }
@media screen and (max-width: 768px) { .mb_m_up { margin-bottom: 4.6rem !important; } }
.mb_l { margin-bottom: 8rem !important; }
@media screen and (max-width: 768px) { .mb_l { margin-bottom: 5.3rem !important; } }
.mb_l_up { margin-bottom: 9rem !important; }
@media screen and (max-width: 768px) { .mb_l_up { margin-bottom: 6rem !important; } }
.mt_sss { margin-top: 1rem !important; }
@media screen and (max-width: 768px) { .mt_sss { margin-top: 0.5rem !important; } }
.mt_ss { margin-top: 2rem !important; }
@media screen and (max-width: 768px) { .mt_ss { margin-top: 1rem !important; } }
.mt_ss_up { margin-top: 3rem !important; }
@media screen and (max-width: 768px) { .mt_ss_up { margin-top: 1.5rem !important; } }
.mt_s { margin-top: 4rem !important; }
@media screen and (max-width: 768px) { .mt_s { margin-top: 2rem !important; } }
.mt_s_up { margin-top: 5rem !important; }
@media screen and (max-width: 768px) { .mt_s_up { margin-top: 2.5rem !important; } }
.mt_m { margin-top: 6rem !important; }
@media screen and (max-width: 768px) { .mt_m { margin-top: 3rem !important; } }
.mt_m_up { margin-top: 7rem !important; }
@media screen and (max-width: 768px) { .mt_m_up { margin-top: 3.5rem !important; } }
.mt_l { margin-top: 8rem !important; }
@media screen and (max-width: 768px) { .mt_l { margin-top: 4rem !important; } }
.mt_l_up { margin-top: 9rem !important; }
@media screen and (max-width: 768px) { .mt_l_up { margin-top: 4.5rem !important; } }
.pb_0 { padding-bottom: 0 !important; }
.pb_sss { padding-bottom: 1rem !important; }
.pb_ss { padding-bottom: 2rem !important; }
.pb_ss_up { padding-bottom: 3rem !important; }
.pb_s { padding-bottom: 4rem !important; }
.pb_s_up { padding-bottom: 5rem !important; }
.mt_0 { margin-top: 0 !important; }
.mt_sss { margin-top: 1rem !important; }
.mt_ss { margin-top: 2rem !important; }
.mt_ss_up { margin-top: 3rem !important; }
.mt_s { margin-top: 4rem !important; }
.mt_s_up { margin-top: 5rem !important; }
.pt_0 { padding-top: 0 !important; }
.pt_sss { padding-top: 1rem !important; }
.pt_ss { padding-top: 2rem !important; }
.pt_ss_up { padding-top: 3rem !important; }
.pt_s { padding-top: 4rem !important; }
.pt_s_up { padding-top: 5rem !important; }

.txt_l { font-size: 1.8rem; }
@media screen and (max-width: 768px) { .txt_l { font-size: 1.6rem; } }
.txt_m { font-size: 1.6rem; }
@media screen and (max-width: 768px) { .txt_m { font-size: 1.4rem; } }
.txt_s { font-size: 1.4rem; }
@media screen and (max-width: 768px) { .txt_s { font-size: 1.2rem; } }
.txt_ss { font-size: 1.2rem; }
.txt_sss { font-size: 1.0rem; }
.txt_51r { font-size: 5.1rem; }

.tit_l_ver02 { margin-bottom: 6rem; padding-top: 4.5rem; padding-bottom: 4.5rem; width: 100%; background: url(https://www.grandjour.info/common/image/title/main_02_wedding_plan.png) no-repeat center center/cover; color: #fff; font-size: 2.2rem; text-align: center; letter-spacing: 0.15em; }
.tit_l_ver02.ver_shop { background-image: url(https://www.grandjour.info/common/image/main_02_shop_plan.png); }
.tit_l_ver02.ver_event_detail { background-image: url(https://www.grandjour.info/common/image/title/tit_l_event_detail_01.png); }
.tit_l_ver02.ver_contact { background-image: url(https://www.grandjour.info/common/image/title/tit_l_contact.png); }
.tit_l_ver02.ver_privacy { background-image: url(https://www.grandjour.info/common/image/title/tit_l_privacy_policy.png); }
.tit_l_ver02.ver_catalog { background-image: url(https://www.grandjour.info/common/image/title/tit_l_catalog.png); }
@media screen and (max-width: 768px) { .tit_l_ver02 { margin-bottom: 3rem; padding-top: 5.7%; padding-bottom: 5.7%; font-size: 5vw; } }
.tit_l_ver02 span { position: relative; display: block; margin-top: 1.6rem; padding-top: 1.6rem; }
@media screen and (max-width: 768px) { .tit_l_ver02 span { margin-top: 1%; padding-top: 1%; } }
.tit_l_ver02 span:before { content: ""; position: absolute; top: 0; right: 0; left: 0; margin: 0 auto; width: 5rem; height: 0.1rem; background-color: #fff; }

.tit_l_ver04 { margin: 0 1rem 6rem; text-align: center; font-size: 2.4rem; line-height: 1.3; font-weight: normal; }
.tit_l_ver04 span { display: block; color: #b39d5a; font-size: 2rem; }
@media screen and (max-width: 768px) { .tit_l_ver04 { margin-bottom: 1rem; font-size: 2rem; }
  .tit_l_ver04 span { font-size: 1.6rem; } }


.light_gray_area {
	width: 100%;
	max-width: 98rem;
	margin: 0 auto 6rem;
	padding: 6rem 11%;
	background: #f5f5f5;
}

.tit {
	margin-bottom: 3.5rem;
	padding-bottom: 3.5rem;
	border-bottom: 1px solid #ccc;
	font-size: 2.4rem;
	text-align: center;
}

.company_area { font-size: 1.4rem; }
.company_area ul { padding-top: 6rem; }
.company_area ul li { overflow: hidden; line-height: 2.3; }
.company_area li + li { margin-top: 3rem; }
.company_area .tit_02 { float: left; width: 27%; background: #fff; text-align: center; }
@media screen and (max-width: 768px) { .company_area .tit_02 { width: 100%; margin-bottom: 1.2rem; } }
.company_area .txt_02 { float: right; width: 66%; }
@media screen and (max-width: 768px) { .company_area .txt_02 { width: 100%; } }


.privacy_area { line-height: 2.7; font-size: 1.4rem; max-width: 1000px; margin: 0 auto 6rem; }
@media screen and (max-width: 768px) { .privacy_area { line-height: 1.8; } }
.privacy_area .tit { margin-top: 2.5rem; margin-bottom: 1rem; padding-bottom: 0; border: none; font-size: 2.2rem; line-height: 2.7; text-align: left; }
@media screen and (max-width: 768px) { .privacy_area .tit { font-size: 1.8rem; line-height: 1.8; margin-bottom: 1rem; } }
.privacy_area .txt { font-size: 1.4rem; line-height: 2.7; }
@media screen and (max-width: 768px) { .privacy_area .txt { line-height: 1.8; } }
.privacy_area ol { list-style: decimal; margin-left: 1.4rem; }
.privacy_area ol li { padding-left: 0.5rem; }
.privacy_area ol .tit { margin-top: 0; margin-left: 2rem; font-size: 1.8rem; line-height: 2.4; }
@media screen and (max-width: 768px) { .privacy_area ol .tit { font-size: 1.6rem; line-height: 1.8; } }
.privacy_area ul { padding-left: 1em; }
.privacy_area ul li { text-indent: -1em; }
.privacy_area ul li:before { content: "・"; }
.privacy_area .bg_eee { margin-top: 2rem; margin-left: -2rem; padding: 1.5rem 3.5rem 2.5rem 3.5rem; }
@media screen and (max-width: 768px) { .privacy_area .bg_eee { padding: 1.5rem 2rem 2.5rem 1rem; } }


/* Button
// ========================================================================== */

.btn-bordered-1 {
	display: inline-block;
	margin-bottom: 0;
	font-weight: 500;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	touch-action: manipulation;
	cursor: pointer;
	max-width: 100%;
	min-width: 280px;
	background-image: none;
	color: #fff;
	border: none;
	border-radius: 0;
	padding: 7px 22px;
	font-size: 13px;
	line-height: 1.6;
	text-decoration: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	border: 1px solid var(--color-1);
	background-color: transparent;
	color: var(--color-1);
}

.btn-arrow-1 {
	position: relative;
}
.btn-arrow-1:after {
	content: "";
	display: block;
	width: 9px;
	height: 9px;
	border-top: 1px solid var(--color-1);
	position: absolute;
	top: 50%;
	margin-top: -4.5px;
	right: 12px;
	border-right: 1px solid var(--color-1);
	transform: rotate(45deg);
}

/* Util's
// ========================================================================== */

.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

.fw-b { font-weight: bold; }

.d-b { display: block; }
.d-f { display: flex; }

.w-100p { width: 100%; }
.max-w-470 { max-width: 470px; }

.g-h-a { margin-left: auto; margin-right: auto; }

.text-1 { color: var(--color-1); }

.lifeevent { 
	background-color: #f7ecea !important;
	border: 0 !important;
 }
.lifeevent .texts-name { color: #e6928a !important; }

.fz-100p { font-size: 100%; }
.fz-110p { font-size: 110%; }
.fz-120p { font-size: 120%; }
.fz-130p { font-size: 130%; }
.fz-140p { font-size: 140%; }
.fz-150p { font-size: 150%; }