@charset "utf-8";
.bg-lazy {
		background-image: none !important;
}


/* --- accordion --- */
.tab-wrap {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0;
}
.tab-label {
	display: flex;
	justify-content: center;
	align-content: center;
	position: relative;
	z-index: 1;
	width: 100%;
	padding: 0;
	white-space: nowrap;
	text-align: center;
	cursor: pointer;
	transition: 0.3s border;
}
.tab-label:not(:last-of-type) {
	margin-right: 2px;
}
.tab-label .btn_more {
	display: block;
	position: relative;
	width: 100%;
	max-width: 18em;
	padding-right: 1em;
	padding: 0.25em 1em 0 0;
	border-bottom: 1px solid currentColor;
}
.tab-label .btn_more::after {
	position: absolute;
	top: 50%;
	right: 1em;
	width: 0.5em;
	height: 0.5em;
	border: 1px solid currentColor;
	border-top: none;
	border-left: none;
	content: '';
	transform: translate(0, -60%) rotate(45deg);
}
.tab-content {
	width: 100%;
	height: 0;
	overflow: hidden;
	opacity: 0;
}

.tab-switch:checked + .tab-label,
.tab-label:hover {
	border-bottom-color: #a00000;
}
.tab-switch:checked + .tab-label {
	color: #a00000;
}
.tab-switch:checked + .tab-label .btn_more::after {
	transform: translate(0, -20%) rotate(225deg);
}
.tab-switch:checked + .tab-label + .tab-content {
	overflow: auto;
	height: auto;
	opacity: 1;
	transition: 0.5s opacity;
}

.tab-switch {
	display: none;
}


/* --- home --- */
.home_secTtl {
	color: #4d4d4d;
	font-size: 2.285714em;
	font-weight: normal;
	line-height: 1;
	letter-spacing:0.05em;
	text-align: center;
	text-transform: uppercase;
}
.home_secTtl .en {}
.home_secTtl .jp {
	display: block;
	padding-top: 0.5em;
	font-size: 0.4em;
	font-weight: 500;
}

.section > .img {
	position: relative;
	width: 90%;
	max-width: 1080px;
	margin: 48px auto 0;
	background: center/cover no-repeat;
}
.section > .img::before {
	display: block;
	padding-top: 66.667%;
	content: '';
}
.section > .img > img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.section > .btn + .img {
	margin-top: 120px;
}
.section > .textArea {
	margin-top: 40px;
}
.section > .textArea p {
	text-align: center;
}
.section > .btn {
	margin: 32px auto 0;
}
.section > .btn + .btn {
	margin-top: 16px;
}

.section_type01 {
	width: 90%;
	max-width: 1280px;
	margin: 0 auto;
}
.section_type01 > .img {
	width: 80%;
	margin: 0;
}
.section_type01 > .img::before {
	padding-top: 42%;
}
.section_type01 a.splink {
	display: none;
	text-decoration: none;
}
.section_type01 .textBox {
	position: relative;
	z-index: 1;
	width: 480px;
	margin-top: -16%;
	padding: 2.5% 1.8%;
	background: #fff;
	border: #c99b40 1px solid;
	text-align: center;
}
.section_type01 .home_secTtl + p {
	margin-top: 1.5em;
	line-height: 1.86;
}
.section_type01 .textBox .btn {
	margin: 24px auto 0;
	max-width: 18em;
}

.section_type01:nth-child(2n+1) > .img	{
	margin-left: auto;
}
.section_type01:nth-child(2n) .textBox {
	margin-left: auto;
}


/* --- popup --- */
[id^='pop-up'] {
	display: none;
}
.overlay {
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9000;
	background: rgba(0, 0, 0, 0.7);
	color: #333;
	transition: opacity 500ms;
	visibility: visible;
	opacity: 1;
}
[id^='pop-up']:checked + .overlay {
	visibility: hidden;
	opacity: 0;
}
[id^='pop-up']:checked + .overlay a {
	pointer-events: none;
}
.popup {
	display: flex;
	flex-flow: column;
	align-items: center;
	position: relative;
}
.popup a:hover {
	opacity: 1;
}
.popup img {
	max-width: 90vw;
	max-height: calc(90vh - 50px);
}
.popup .popClose {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 50px;
	height: 50px;
	margin: 0 0 8px auto;
	background: #fff;
	color: inherit;
	font-size: 32px;
	font-weight: bold;
	text-decoration: none;
}
.popup .popClose span {
	display: block;
	position: absolute;
	left: 8px;
	width: 34px;
	border-bottom: 2px solid #000;
	transition: 0.35s ease-in-out;
}
.popup .popClose span:nth-child(1) {
	top: 24px;
	transform: rotate(-45deg);
}
.popup .popClose span:nth-child(2) {
	opacity: 0;
}
.popup .popClose span:nth-child(3) {
	top: 24px;
	transform: rotate(45deg);
}

@media (min-width: 641px){
    
    .popup img {max-width:500px;}
}


/* --- contents --- */
#contents {
	background: #fff;
}
@keyframes fadein {
	100% {
		opacity: 1;
	}
}


/* --- eisei --- */
.eisei {
	padding: 64px 0;
}

.eisei.is-fixed {
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 90;
	padding: 20px;
	transition: opacity 0.3s;
}
.eisei.is-scroll {
	opacity: 0;
	visibility: hidden;
}

.eisei__item {
	position: relative;
}

.eisei__link {
	display: flex;
	align-items: center;
	position: relative;
	overflow: hidden;
	height: 100%;
	padding: 10px 20px 10px 0;
	border: solid 2px #d9b97a;
	border-radius: 50px;
	background: #f4f4f4;
	text-decoration: none;
}
.eisei__item-txt {
	flex: 1 0 0;
	padding: 3px;
	font-size: 1.125em;
	font-weight: bold;
	line-height: 1.25;
}
.eisei__item-txt .small {
	display: block;
}

.eisei__item [class^="illust"] {
	position: relative;
	width: 60px;
	margin: 0 14px 0 20px;
}
.eisei__item [class^="illust"]::after {
	display: block;
	padding-top: 100%;
	background: url(../img/eisei/assets.png) no-repeat 0 0/500% 600%;
	content: '';
}
.eisei__item [class^="illust_"]::after {
	background: url(../img/eisei/assets02.png) no-repeat 0 0/200% 100%;
}
.eisei__item .illust03::after {
	background-position: 50% 0;
}
.eisei__item .illust_excl::after {
	background-position: 100% 0;
}


/* --- online --- */
#online {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 90;
	width: 125px;
}


/* --- visual --- */
.visual {
	position: relative;
	height: 100vh;
	min-height: 640px;
}
.visual p {
	position: absolute;
	top: 25%;
	left: 10vw;
}
.visual .svg {
	width: 80vw;
	height: 29.5vw;
}
.visual .svg g:nth-child(1) path {
	backface-visibility: hidden;
	transform: translateY(-10%);
}
.visual .svg g:nth-child(2) {
}

.visual__weddingpark-award {
	position: absolute;
	bottom: -12px;
	left: 20px;
	width: 160px;
}
.visual__weddingpark-award img {
	width: 100%;
	height: auto;
}

ul.award {
    width:300px;
    display:flex; flex-flow:row wrap; justify-content:flex-start; align-content:flex-start; align-items:flex-start;
	position:absolute; bottom:20px; left:20px;
}
ul.award li {width:32%; margin-right:10px;}
ul.award li a {display:block;}
ul.award li img {width:100%;}

.mainvisual {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100vh;
	min-height: 512px;
	overflow: hidden;
}
.mainvisual .bgImg {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.mainvisual .bgImg img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* --- notice --- */
#notice {
	padding: 80px 0 0;
}
#notice {
	width: 80%;
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
}

#notice dl:not(:first-child),
#notice article:not(:first-child) {
	margin-top: 40px;
}
#notice dt {
	padding: 14px 0 12px;
	font-size: 1.25em;
	font-weight: 400;
	background: #f4f4f4;
}
#notice dt:first-child {
	border-top: 1px solid #222;
}
#notice dt.large {
	font-size: 1.5em;
	font-weight: bold;
}

#notice dd strong {
    margin:5px 0;
    display:block;
    font-size:1.15rem;
}

#notice dd {
	padding: 21px 0 23px;
	font-size: 1.07142857em;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #222;
}
#notice dd p {
	margin-top: 15px;
	text-align: center;
}
#notice dd p:first-child {
	margin-top: 0;
}
#notice dd p strong {
	font-weight: normal;
}
#notice dd p b {
	display: inline-block;
	padding-top: 0.75em;
}
#notice dd p + .btnWrap {
	margin-top: 20px;
}
#notice dd .btnWrap p {
	width: 280px;
	margin: 0 auto 0.25em;
	font-size: 1.067em;
	text-align: left;
}
#notice dd .btnWrap .tag {
	display: inline-block;
	margin-right: 0.5em;
	padding: 0.25em 0.5em;
	background: rgba(230, 0, 18, 1);
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}
#notice article h1 {
	width: 100%;
	font-size: 1.5em;
	letter-spacing: 0;
}
#notice article .btn {
	margin-top: 20px;
}

@media (max-width: 640px) {
    #notice {margin-bottom:80px;}
    #notice dd strong {font-size:1.6rem;}
}



/* notice-remodal */

#notice-remodal {margin:100px auto 0;}
#notice-remodal a {
    padding:25px 60px 25px 40px;
    color:#fff;
    font-size:1.1rem;
    text-decoration:none;
    border-radius:5px;
    background:#3d2b05;
    position:relative;
    transition: .2s;
}
#notice-remodal a span {
    width: 0;
    height:0;
    border-style:solid;
    border-top:5px solid transparent;
    border-bottom:5px solid transparent;
    border-left:8px solid #fff;
    border-right:0;
    
    margin:auto;
    position:absolute; top:0; bottom:0; right:20px;
    transition: .2s;
}
#notice-remodal a:hover {background:#d4ae64;}
#notice-remodal a:hover span {right:15px;}

.remodal p strong {display:block;}

@media (max-width: 640px) {
    
    #notice-remodal {margin:80px auto 120px;}
    #notice-remodal a {
        padding:30px 60px 30px 40px;
        color:#fff;
        font-size:1.6rem;
        text-decoration:none;
        border-radius:5px;
        background:#3d2b05;
        position:relative;
        transition: .2s;
    }
    #notice-remodal a span {
        border-top:10px solid transparent;
        border-bottom:10px solid transparent;
        border-left:16px solid #fff;
    }
}



/* --- topics --- */
#topics {
	padding-top: 100px;
}
#topics .btn {
	margin-top: 48px;
}

[class^="post"] article .meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
[class^="post"] article .meta span {
	margin-right: 1.25em;
	line-height: 1.25;
}
[class^="post"] article .meta .date {
	color: #757575;
    display: none;
}
[class^="post"] article .meta .category {
	width: 5em;
	padding: 0.125em 0;
	background: #ddd;
	font-size: 0.9375em;
	text-align: center;
	text-transform: uppercase;
}
[class^="post"] article.cat001 .meta .category {
	background: #d9b97a;
	color: #fff;
}
[class^="post"] article.cat002 .meta .category {
	background: #8bc63e;
	color: #fff;
}
[class^="post"] article.cat003 .meta .category {
	background: #e3616c;
	color: #fff;
}

.postWrap {
	padding-top: 32px;
}

.postList:not(.slick-slider) {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 32px;
}
.postList article {
	width: calc((100% - 65px) /3);
}
.postList article a {
	color: currentColor;
	font-size: 1.142857em;
	text-decoration: none;
}
.postList article .meta {
	flex: 0 0 auto;
	margin-top: 1em;
}
.postList article h1 {
	margin-top: 0.25em;
	font-size: 1em;
	font-weight: normal;
}
.postList article a:hover h1 {
	text-decoration: underline;
}
.postList article .thumbnail {
	position: relative;
	background: #efefef;
}
.postList article .thumbnail::before {
	display: block;
	padding-top: 64%;
	background: url(../img/share/logo.svg) no-repeat center/50% auto;
	content: '';
}
.postList article .thumbnail img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
}


/* --- fixedBnr --- */
#fixedBnr {
	position: fixed;
	display: flex;
	gap: 10px;
	right: 20px;
	bottom: 20px;
	z-index: 90;
	font-family: YakuHanMP, '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'Noto Serif JP', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}
#fixedBnr a {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 160px;
	height: 160px;
	padding-top: 0.25em;
	color: #fff;
	border: 3px solid #b40014;
	border-radius: 50%;
	background: #b40014;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
}
#fixedBnr a::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 2px solid currentColor;
	border-radius: 50%;
	content: '';
}
#fixedBnr a:hover,
#fixedBnr.active a {
	color: #b40014;
	border-color: #fff;
	background: #fff;
	opacity: 1;
}
#fixedBnr a span {
	margin-right: -0.08em;
}
#fixedBnr a b {
	font-weight: bold;
	font-size: 1.25em;
}

#fixedBnr a.bnr {
	padding-top: 0;
	border: none;
	background: none;
}
#fixedBnr a.bnr::before {
	display: none;
}
#fixedBnr a.bnr img.hover {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 1;
	transition: opacity 0.3s;
}
#fixedBnr a.bnr:hover img.hover {
	opacity: 0;
}


/* --- banner --- */
.banner {
	padding-top: 100px;
}

.banner .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.banner__item {
	display: block;
	width: 100%;
	text-align: center;
}
.banner__item + .banner__item {
	margin-top: 24px;
}
.banner__item a {
	text-decoration: none;
}
.banner__item p {
	text-align: center;
	font-size: 1.0625em;
	transition: color 0.3s, border 0.3s, background 0.3s;
}

.banner__item.half {
	width: calc(50% - 12px);
}
.banner__item.half:nth-child(2) {
	margin-top: 0;
}

.banner__item .banner__heading {
	padding-bottom: 0.25em;
	font-size: 1.5em;
	font-weight: bold;
}

.banner__item--award-fair a {
	display: block;
	transition: color 0.3s, border 0.3s, background 0.3s;
}
.banner__item--award-fair img {
	width: 64%;
}
.banner__item--award-fair a p {
	margin-top: 24px;
	background: #3d2b05;
	color: #fff;
}
.banner__item--award-fair a:hover {
	border-color: #c99b40;
}
.banner__item--award-fair a:hover p {
	background: #c99b40;
}

#banner03 {
	padding-top: 64px;
}



/* --- concept --- */
.index_concept .img img.ofi {
	object-position: 50% 80%;
}


/* --- bridalfair --- */
.special-fair {
	display: flex;
	justify-content: center;
	gap: 30px;
	width: 100%;
	max-width: 1100px;
	margin-top: 56px;
	margin: 56px auto 0;
	padding: 0 20px;
}
.special-fair__link {
	display: block;
	max-width: 450px;
	text-decoration: none;
}
.special-fair__link p {
	padding: 0.5em 1em;
	background: #b91a0e;
	color: #fff;
	font-size: 1.25em;
	font-weight: bold;
	text-align: center;
	line-height: 1;
}
.special-fair__link img {
	max-width: 100%;
	height: auto;
}

.bridalfair_link {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: space-between;
	width: 90%;
	max-width: 1280px;
	margin: 32px auto 0;
}
.bridalfair_link li {
	position: relative;
	width: calc((100% - 40px) /3);
}
.bridalfair_link li::before {
	display: block;
	padding-top: 100%;
	content: '';
}
.bridalfair_link a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 0.75em;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 3.5em 0;
	color: #fff;
	font-size: 1.25em;
	font-weight: normal;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
}
.bridalfair_link a::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 1px solid currentColor;
	content: '';
}
.bridalfair_link a span {
	position: relative;
	z-index: 1;
}
.bridalfair_link a i {
	position: relative;
	z-index: 1;
}
.bridalfair_link a i::before {
	display: block;
	width: 2.75em;
	height: 2.75em;
	background-color: currentColor;
	-webkit-mask-image: url(../img/share/search.png);
	mask-image: url(../img/share/search.png);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	content: '';
}
.bridalfair_link a i[data-icon="calendar"]::before {
	-webkit-mask-image: url(../img/share/calendar.svg);
	mask-image: url(../img/share/calendar.svg);
}
.bridalfair_link a i[data-icon="list"]::before {
	-webkit-mask-image: url(../img/share/list.svg);
	mask-image: url(../img/share/list.svg);
	transform: scale(0.8);
}
.bridalfair_bg {
	position:absolute; top:0; right:0; bottom:0; left:0;
	overflow:hidden;
	background:#5f5a55;
}
.bridalfair_bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.45;
	transition: opacity 0.5s, transform 0.5s;
}

/* --- plan --- */

.index_plan .img img.ofi {
	object-position: 50% 80%;
}
.index_plan .textBox {
	margin-top: -11%;}

#plan ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 48px auto 0;
}
#plan ul li {
	width: calc((100% - 90px) / 4);
	max-width: 320px;
	margin: 0 10px;
}
#plan ul li a {
	text-decoration: none;
}
#plan ul li .img {
	background: center/cover no-repeat;
}
#plan ul li .img-overlay {
	overflow: hidden;
	border-radius: 50%;
}
#plan ul li .img::before {
	display: block;
	padding-top: 100%;
	content: '';
}
#plan ul li .textArea {
	padding-top: 16px;
}
#plan ul li h3 {
	font-size: 1.25em;
	font-weight: normal;
	line-height: 1.5;
	text-align: center;
}


/* --- cuisine --- */
.index_cuisine .img img.ofi {
	object-position: 50% 70%;
}


/* --- photo --- */


/* --- dress --- */
.index_dress .img img.ofi {
	object-position: 50% 0%;
}


/* --- report --- */


/* --- movie --- */
#movie .playerBox {
	width: 90%;
	max-width: 800px;
	margin: 24px auto 0;
}
#movie .player {
	overflow: hidden;
	position: relative;
	border: 1px solid currentColor;
}
#movie .player::before {
	display: block;
	padding-top: 56.25%;
	content: '';
}
#movie .player .thumb {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: auto;
	background: center/cover no-repeat;
}
#movie .player .thumb::before {
	display: block;
	padding-top: 56.25%;
	content: '';
}
#movie .player iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(35, 24, 21, 0.75);
}


/* --- access --- */
.index_access .img {
	border: 5px solid #231815;
}
.index_access .img::before {
	padding-top: 78.7037%;
}
.index_access .media {
	width: 90%;
	max-width: 1080px;
	margin: 32px auto 0;
}
.index_access .media::before {
	padding-top: 32%;
}
.access__main {
	text-align: center;
}
.access__main dt {
	margin-top: 40px;
	font-size: 1.07142857em;
	font-weight: bold;
}
.access__main dt:first-child {
	margin-top: 0;
}
.access__main dd {
	line-height: 1.8;
}
.access__main dd a[href^="tel:"] {
	font-family: YakuHanMP, 'Playfair Display', 'Noto Serif JP', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	font-size: 2em;
	text-decoration: none;
}
.access__main a b {
	font-weight: 500;
}
.access__main a .svg {
	width: 0.75em;
	height: 0.75em;
	margin-right: 0.25em;
	stroke-width: 1.5px;
	vertical-align: middle;
}
.access__main dd span {
	display: block;
	padding-top: 0.5em;
}


/* --- aboutPage --- */
#aboutPage {
	padding-top: 100px;
}
#aboutPage a {
	display: block;
	position: relative;
	background: #f7f3eb center/cover no-repeat;
	color: #fff;
	font-size: 1.2857em;
	text-decoration: none;
}
#aboutPage a::before {
	display: block;
	padding-top: 25%;
	background: #000;
	content: '';
	opacity: 0.25;
}
#aboutPage a:hover::before {
	opacity: 0;
}
#aboutPage a .ttl {
	position: absolute;
	top: 50%;
	left: 32px;
	transform: translateY(-50%);
}
#aboutPage a[href*="faq"] {
	background-image: url(../img/index/img-faq.jpg);
}


/* --- other --- */
#other {
	margin-top: 100px;
	padding: 64px 0;
	background: #f7f3eb;
}
#other a {
	display: block;
}
#other a + a {
	margin-top: 32px;
}

@media (min-width: 811px) {
	/* --- eisei --- */
	.eisei .inner {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.eisei .inner .eisei__item {
		width: calc(50% - 10px);
		font-size: 1.25em;
	}
	.eisei .inner .eisei__item:nth-child(n+3) {
		margin-top: 20px;
	}
	.eisei .inner .eisei__item:first-child:last-child {
		margin: 0 auto;
	}

	/* --- aboutPage --- */
	#aboutPage a {
		font-size: 1.75em;
	}
	#aboutPage a .ttl {
		left: 50%;
		transform: translate(-50%, -50%);
	}
}
@media (min-width: 641px) {
	/* --- home --- */

	.section_type01 {
		padding-top: 200px;
	}


	/* --- fixedBnr --- */
	#fixedBnr {
		visibility: visible;
		opacity: 1;
		transition: 0.3s;
	}
	#fixedBnr._out {
		visibility: hidden;
		opacity: 0;
	}

	/* --- eisei --- */
	.eisei.is-fixed .eisei__item-txt .aks {
		display: block;
	}


	/* --- notice --- */
	#notice.column {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#notice.column dl,
	#notice.column article {
		width: 50%;
		max-width: 400px;
		margin: 0;
	}
	#notice article:first-child:last-child {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		max-width: 1024px;
	}
	#notice article:first-child:last-child .btn {
		margin: 20px 10px 0;
	}


	/* --- banner --- */
	.banner__item--award-fair {
		max-width: 510px;
		margin: 0 auto;
	}


	/* --- weddingpark-award --- */
	.weddingpark-award__link p {
		font-size: 1.125em;
	}


	/* --- movie --- */
	#movie .player .thumb {
		background-image: url(../img/index/img-movie-thumbnail.jpg);
	}
}
@media (max-width: 810px) {
	/* --- eisei --- */
	.eisei__item +.eisei__item {
		margin-top: 20px;
	}


	/* --- visual --- */
	.visual p {
		top: 15%;
		left: 5vw;
	}
	.visual p .svg {
		width: 90vw;
		height: 33vw;
	}


	/* --- plan --- */
	#plan ul {
		justify-content: space-between;
		width: 90%;
	}
	#plan ul li {
		width: calc(50% - 10px);
		max-width: none;
		margin: 0;
	}
	#plan ul li:nth-child(n+3) {
		margin-top: 32px;
	}
}
@media (max-width: 640px) {
	.home_secTtl {
		font-size: 1.5em;
		letter-spacing: 0.1em;
	}

	.section {
		padding-top: 80px;
	}
	.section > .img {
		width: 100%;
	}
	.section > .textArea p.notice {
		display: flex;
		justify-content: center;
		font-size: 0.9em;
		text-align: left;
	}
	.section > .btn {
		max-width: 18em;
		margin-top: 40px;
	}
	
	.section_type01 {
		position: relative;
		padding-top: calc(80px + 32px + 2.815em);
	}
	.section_type01 a.splink {
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: calc(100% - 80px);
		z-index: 2;
	}

	.section_type01 > .img::before {
		padding-top: 64%;
	}
	.section_type01 .textBox {
		position: static;
		width: 100%;
		margin-top: 1.25em;
		padding: 0;
		border: none;
	}
	.section_type01 .home_secTtl {
		position: absolute;
		top: 80px;
		left: 0;
		width: 100%;
	}
    .home_secTtl {font-size:2.3em; letter-spacing:0.05em;}
    .home_secTtl .jp {padding-top:0.6em; font-size:0.4em;}
    
	.section_type01 .home_secTtl + p {
		margin-top: 0.75em;
		font-size: 0.95em;
		line-height: 1.75;
	}
	.section_type01 .textBox .btn {
		display: none;
	}

	/* --- notice --- */
	#notice dl.newYear dd p,
	#notice dd p.left {
		text-align: left;
	}


	/* --- visual --- */
	.mainvisual .c01 img.ofi {object-position: 80% 50%;}

	.visual__weddingpark-award {right:20px; bottom:20px; left:auto;}
    
    ul.award {
        width:70%;
        bottom:20px; left:auto; right:20px;
        justify-content:flex-end;
    }
    ul.award li {
        margin:0 0 0 10px;
    }


	/* --- fixedBnr --- */
	#fixedBnr {
		visibility: hidden;
		right: 10px;
		bottom: calc(3.5em + 10px);
		opacity: 0;
		transition: 0.3s;
	}
	#fixedBnr._in {
		visibility: visible;
		opacity: 1;
	}
	#fixedBnr a {
		padding-top: 0.75em;
		font-size: 0.8em;
		line-height: 1.25;
	}
	#fixedBnr a.pcOnly {
		display: none;
	}
	#fixedBnr a b {
		line-height: 1.125;
	}


	/* --- topics --- */
	.postList:not(.slick-slider) {
		gap: 48px;
	}
	.postList article {
		width: 100%;
	}
	.postList article a {
		display: block;
		font-size: 1.0909091em;
	}

	.topicsSlide .slick-slide {
		margin-right: 16px !important;
		margin-left: 16px !important;
	}
	.topicsSlide .slick-slide:not(.slick-active) a {
		pointer-events: none;
	}
	.topicsSlide .slick-dots {
		margin-top: 1em;
	}


	/* --- bridalfair --- */
	.bridalfair_link li {
		width: calc(50% - 10px);
	}
	.bridalfair_link li:nth-child(2n+1):last-child {
		width: 100%;
	}
	.bridalfair_link li:nth-child(2n+1):last-child::before {
		padding-top: 40%;
	}
	.bridalfair_link a {
		font-size: 1.125em;
	}
	.bridalfair_link a i::before {
		width: 1.5em;
		height: 1.5em;
	}

	.special-fair__link {
		max-width: 430px;
	}
	.special-fair__link p {
		font-size: 1em;
	}


	/* --- weddingpark-award --- */


	/* --- plan --- */
	.index_plan .img img.ofi {
		object-position: 50% 100%;
	}
	#plan ul li h3 {
		font-size: 1.125em;
	}


	/* --- banner --- */
	.banner__item.half {
		width: calc(50% - 10px);
	}
	.banner__item + .banner__item {
		margin-top: 20px;
	}


	/* --- concept --- */


	/* --- cuisine --- */


	/* --- photo --- */


	/* --- dress --- */


	/* --- report --- */


	/* --- movie --- */
	#movie .player .thumb {
		background-image: url(../img/index/img-movie-thumbnail-sp.jpg);
	}


	/* --- other --- */
	#other a + a {
		margin-top: 20px;
	}
}


