/*
----------------------------------------
1500
----------------------------------------
*/

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

	/* bridal */

	.bridal.single.page #modal .wrap {
		right: 15px;
		left: 15px;
	}

	.bridal.single.page #modal .close {
		top: 0;
		right: 0;
	}

	.bridal.single.page #modal .close a {
		font-size: 1.4rem;
		letter-spacing: 1px;
		width: 80px;
		height: 80px;
		padding: 12px;
		text-align: center;
		background: #ceaf50;
	}

	.bridal.single.page #modal .close img {
		width: 33px;
	}

	.bridal.single.page #modal .wrap > .flex > .cont {
		padding: 0 0 0 15px;
	}

	.bridal.single.page #modal .cont .txt {
		padding: 15px;
	}

	.bridal.single.page #modal .cont .en {
		letter-spacing: 2px;
	}

	/* photo */

	#photo .page-ttl h2 {
		letter-spacing: 25px;
	}

	#photo .photo-box .main .slide-image {
		right: calc( 50% - 400px );
	}

	#photo .photo-box .main .txt {
		width: 60%;
		padding: 3rem 4rem;
	}

	#photo .photo-box .scene .flex {
		letter-spacing: 2px;
	}

}


/*
----------------------------------------
1230
----------------------------------------
*/

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

	/* about */

	#about .about-point-item__contents{
		padding: 0 20px;
	}

	#about .about-point-item:nth-child(even) .about-point-item__contents{
	padding: 0 20px;
	}

	#about .about-bridal-text,#about .about-bridal-recommend__text{
		padding: 0 20px;
	}

	#about .about-bridal-link{
		grid-gap: 0 10px;
	}

	#about .about-bridal-recommend__costume{
		grid: auto / auto-flow 1fr;
		grid-gap: 0 50px;
	}

	#about .about-bridal-recommend__costume-img::after{
		right: -35px;
	}

	#about .slick-slide{
		width:  85vw;
		height: 350px;
	}

	#about .slider_prev,#about .slider_next{
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	#about .slider_prev{
		left: 10px;
	}

	#about .slider_next{
		right: 10px;
	}

	#about .about-shop-access{
		grid-gap: 0 25px;
	}

	/* access */

	#access .access-traffic-contents__inner{
		grid: auto / auto-flow 1fr;
		grid-gap: 20px;
	}

	#access .access-traffic-contents__item-img{
		height: 25vw;
	}

	#access .access-traffic-contents__item-img::after{
		right: -19px;
	}

	#access .access-traffic-contents__item-text{
		padding: 0 10px 30px;
	}

	#access .access-traffic-contents__parking{
		padding: 50px 30px 40px;
	}

	/* contact */

	#contact .contact-flow-item:not(:last-child)::after {
		width: 13vw;
	}

	#contact .contact-step:not(:last-child)::after {
		width: 13vw;
	}

	/* topics */

	#main-contents {
		padding: 0 30px 0 0;
	}

	.post-list .post .txt .cont .flex {
		margin-bottom: 0;
	}

	.post-list .post .txt .cont .new {
		font-size: 4rem;
		top: 15px;
	}

	.cat-list a {
		font-size: 1.2rem;
		padding: 5px 10px;
	}

	.post-list .post .txt .cont h2 {
		font-size: 2rem;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

	.post-list .post .txt .cont .read {
		line-height: 2;
	}

	.post-list .post .btn-01 a {
		font-size: 1.8rem;
	}

	.single #main-contents > .post::after,
	.author-box::after {
		display: none;
	}

	.single #main-contents > .post {
		padding: 30px;
	}

}


/*
----------------------------------------
1180
----------------------------------------
*/

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

	.h-02 {
		letter-spacing: 2px;
	}

	.h-02 .en {
		letter-spacing: 4px;
	}

	header .pc .head-wrap .sns {
		padding: 0 10px;
	}

	header .pc .head-wrap .sns a {
		padding: 3px 5px;
	}

	header .pc .head-wrap .contact .flex > div {
		padding: 0 10px;
	}

	header .pc .head-wrap .contact .flex > div.reservation-btn {
		padding-right: 0;
	}

	#g-nav .main-menu > li > a {
		padding: 20px 10px;
		letter-spacing: 0;
	}

	#g-nav .sub-menu a span {
		font-size: 2.5rem;
	}

	#home #main-img #main-nav .slick-track > div {
		margin: 0 20px;
	}

	#home #main-img #main-nav a {
		display: inline-block;
		padding: 0;
		letter-spacing: 0;
		width: 220px;
	}

	#home .info-box .read .flex .ttl {
		width: 180px;
		padding: 120px 100px 0 0;

	}

	#home .info-box .read .flex .txt {
		width: calc( 100% - 180px );
		padding: 140px 8vw 0 0;
	}

	#home .info-box .read .flex .txt p {
		line-height: 4vw;
		margin-left: 4vw;
	}

	#home .bridal-list .bridal a .ttl img,
	#home .event-list .event a .ttl img {
		width: 140px;
		height: 140px;
	}

	#home .photo-wedding-box {
		background: url( ../img/home/photo-wedding-bg.jpg ) left 35% top / cover no-repeat;
	}

	#home .topics-box .wrap > .flex > div {
		width: 48%;
	}

	#home .topics-box .h-02 {
		margin-bottom: 60px;
	}

	#home .topics-box .access .ttl {
		font-size: 1.3rem;
	}

	#home .topics-box .access .ttl .logo {
		margin: 0 2rem 1rem 0;
	}

	#home .topics-box .access .ttl .logo img {
		width: 200px;
	}

	.reservation-info h2 {
		font-size: 2.4rem;
		letter-spacing: 4px;
	}

	.reservation-info strong {
		font-size: 1.8rem;
		letter-spacing: 0;
		margin-left: 0;
	}

	.reservation-info strong span {
		padding: 4px 8px;
	}

	.reservation-info strong span:first-child {
		margin-left: 8px;
	}

	.reservation-info strong span:nth-child( 2 ) {
		margin-right: 8px;
	}

	footer .bottom-menu .address-wrap {
		width: 35%;
	}

	footer .bottom-menu .address-wrap .icon-set ul {
		padding: 0 8px;
	}

	footer .bottom-menu .address-wrap .icon-set li {
		padding: 0 8px;
	}

	footer .bottom-menu .address-wrap .address {
		padding-left: 16px;
	}

	footer .bottom-menu .address-wrap .btn.link a {
		font-size: 1.6rem;
		letter-spacing: 0;
		width: 100%;
	}

	footer .bottom-menu .address-wrap .address {
		letter-spacing: 0;
	}

	footer .bottom-menu .sitemap {
		width: 65%;
	}

	footer .bottom-menu .sitemap .main-menu {
		width: 48%;
	}

	footer .bottom-menu .sitemap .bridal-menu {
		width: 32%;
	}

	footer .bottom-menu .sitemap .flex dt {
		letter-spacing: 1px;
	}

	footer .bottom-menu .sitemap .flex li {
		letter-spacing: 0;
	}

	footer .bottom-menu .sitemap .flex a {
		font-size: 1.6rem;
	}

	/* page */

	.page-ttl h2 {
		font-size: 5rem;
		letter-spacing: 4px !important;
	}

	/* bridal */

	#bridal .bridal-list a {
		height: 600px;
	}

	@keyframes fadeout {
		0% { opacity: 1; }
		100% { opacity: .4; }
	}

	.bridal.single.page .main.view::after {
		animation: fadeout .6s ease-in-out 4s 1 normal forwards;
	}

	#shiromuku .main::after {
		background: url( ../img/bridal/shiromuku/main-img-m.png ) center center / cover no-repeat;
	}

	#irouchikake .main::after {
		background: url( ../img/bridal/irouchikake/main-img-m-02.png ) center center / cover no-repeat;
	}

	#montsukihakama .main::after {
		background: url( ../img/bridal/montsukihakama/main-img-m.png ) center center / cover no-repeat;
	}

	#dress .main::after {
		background: url( ../img/bridal/dress/main-img-m.png ) center center / cover no-repeat;
	}

	#hikifurisode .main::after {
		background: url( ../img/bridal/hikifurisode/main-img-m.png ) center center / cover no-repeat;
	}

	#guest .main::after {
		background: url( ../img/bridal/guest/main-img-m.png ) center center / cover no-repeat;
	}

	.bridal.single.page .main .wrap > .flex {
		flex-direction: column;
		padding: 7rem 0 4rem;
		justify-content: flex-end;
	}

	.main-info-txt {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		height: auto;
		margin: 0;
	}

	.main-info-txt .ttl {
		font-size: 6rem;
		position: relative;
		bottom: 0;
		left: 0;
		line-height: 1;
		margin: auto 0;
		writing-mode: vertical-lr;
	}

	#shiromuku .main-info-txt .ttl,
	#montsukihakama .main-info-txt .ttl,
	#hikifurisode .main-info-txt .ttl,
	#guest .main-info-txt .ttl {
		color: #C8AB51;
	}

	.main-info-txt .ttl.l {
		text-align: left;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		margin: auto 0 1.5rem !important;
	}

	.main-info-txt .ttl br.pc2 {
		display: none;
	}

	.main-info-txt .ttl.l2 {
		line-height: 1.5;
	}

	.main-info-txt .txt {
		width: 100%;
	}

	.main-info-txt .txt .copy {
		font-size: 2.4rem;
		padding: 0 0 2rem;
		margin-bottom: 3rem;
	}

	.main-info-txt .read {
		padding: 0;
		line-height: 2;
	}

	.bridal.single.page nav.page-nav {
		margin-top: 4rem;
	}

	nav.page-nav .menu-06 li {
		width: calc( ( 100% - 50px ) / 6 );
	}

	nav.page-nav .menu-05 li {
		width: calc( ( 100% - 40px ) / 5 );
	}

	nav.page-nav .menu-04 li {
		width: calc( ( 100% - 30px ) / 4 );
	}

	nav.page-nav .menu-03 li {
		width: calc( ( 100% - 20px ) / 3 );
	}

	nav.page-nav a {
		font-size: 1.6rem;
		letter-spacing: 0;
		white-space: nowrap;
	}

	.bridal.single.page nav.page-nav a {
		background: #fff;
		padding: 12px;
	}

	.bridal.single.page nav.page-nav a:hover {
		background: #e9e194;
	}

	.bridal.single.page .collection-list > div,
	.bridal.single.page .item-list-02 > div {
		width: calc( ( 100% - 40px ) / 5 );
		margin: 0 10px 15px 0;
	}

	.bridal.single.page .item-list {
		padding: 0;
	}

	.bridal.single.page .item-list > div {
		padding: 0 10px !important;
	}

	.bridal.single.page .item-list .txt {
		padding: 15px 20px;
	}

	.bridal.single.page .item-list .txt dt {
		width: 100%;
		text-align: center;
		letter-spacing: 4px;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		padding: 0 0 5px;
		margin-bottom: 10px;
	}

	.bridal.single.page .item-list .txt dt::before {
		width: 94px;
		height: 1px;
		top: auto;
		right: auto;
		bottom: 0;
		left: calc( ( 100% - 94px ) / 2 );
	}

	.bridal.single.page .item-list .txt dd {
		width: 100%;
		padding: 0;
	}

	.bridal.single.page .item-list .txt dd .ttl {
		display: block;
		letter-spacing: 1px;
	}

	.slider .slick-prev,
	.slider .slick-next,
	.slider .slick-prev:before,
	.slider .slick-next:before {
		width: 42px;
		height: 42px;
	}

	.slider .slick-prev {
		left: 10%;
	}

	.slider .slick-next {
		right: 10%;
	}

	#dress #tuxedo .tuxedo-wrap > .img {
		width: 60%;
	}

	#dress #tuxedo .tuxedo-wrap > .txt {
		width: 40%;
		padding: 0 0 0 3rem;
	}

	#dress #tuxedo .tuxedo-wrap > .txt h3 {
		font-size: 2.2rem;
		padding-bottom: 2rem;
		margin-bottom: 2.5rem;
	}

	#dress #tuxedo .tuxedo-wrap > .txt .read {
		letter-spacing: 0;
		line-height: 2;
	}

	.bridal.single.page .plan-box .info {
		flex-direction: column;
	}

	.bridal.single.page .plan-box .info figure {
		width: 100%;
		text-align: center;
		margin-bottom: 3rem;
	}

	.bridal.single.page .plan-box .info figure + .txt {
		width: 100%;
		padding-left: 0;
	}

	.bridal.single.page .plan-box .info .txt h3 {
		padding: 15px;
		margin-bottom: 2rem;
	}

	.plan-list-01 th {
		letter-spacing: 2px;
		font-size: 1.2rem;
	}

	.plan-list-01 th + td {
		padding: 15px;
		letter-spacing: 0;
	}

	.plan-list-01 th + td + td {
		font-size: 2rem;
	}

	.plan-list-02 th {
		padding: 34px 20px;
	}

	.plan-list-02 td {
		padding: 24px 20px;
		font-size: 2rem;
	}

	.notice {
		padding: 44px 20px 14px;
	}

	.notice ul {
		margin: 0;
	}

	.notice p {
		line-height: 2;
		margin: 10px 0;
	}

	.flow-list > div {
		align-items: center;
	}

	.flow-list .txt {
		padding: 0 20px 0 0;
	}

	.flow-list .txt .ttl {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		align-items: center;
		margin-bottom: 1rem;
	}

	.flow-list .txt .num {
		width: 80px;
	}

	.flow-list .txt h3 {
		margin: 0 0 10px 100px;
		min-height: 80px;
		font-size: 2rem;
		line-height: 1.6;
		letter-spacing: 0;
	}

	.flow-list .txt h3 > span {
		padding-bottom: 1.5rem;		
	}

	.flow-list .txt h3 > span::after {
		left: 0;
	}

	.flow-list .txt p {
		padding: 0;
		font-size: 1.4rem;
		line-height: 2;
	}

	.bridal.single.page #modal .cont .txt {
		padding: 0;
	}

	.bridal.single.page #modal .thumb .flex > figure {
		width: calc( ( 100% - 30px ) / 5 );
		margin: 0 3px;
	}

	.bridal.single.page #modal .cont .ttl {
		margin-bottom: 1.5rem;
	}

	.bridal.single.page #modal .cont h3 {
		font-size: 2rem;
	}

	.bridal.single.page #modal .cont .en {
		font-size: 1.1rem;
	}

	.bridal.single.page #modal .details p {
		font-size: 1.3rem;
		padding: 10px 0;
	}

	/* event */

	#event .main-info-txt .ttl {
		text-shadow: 0 0 20px rgba( 23, 34, 56, .2 );
	}

	#event #event-01 .main::after {
		background: url( ../img/event/event-img-01-sp.png ) center top / cover no-repeat;
	}

	#event #event-02 .main::after {
		background: url( ../img/event/event-img-02-sp.png ) center top / cover no-repeat;
	}

	#event #event-03 .main::after {
		background: url( ../img/event/event-img-03-sp.png ) center top / cover no-repeat;
	}

	#event .main-info-txt .read {
		background: rgba( 255, 255, 255, .7 );
		padding: 2rem;
	}

	#event .page-bnr-set {
		margin: 8rem 0 10rem;
	}

	.page-bnr-set > div {
		width: calc( ( 100% - 20px ) / 2 );
	}

	a.img-bnr .jp {
		font-size: 2.4rem;
		letter-spacing: 8px;
		padding: 36px 5px 36px 15px;
	}

	/* photo */

	nav.page-nav > .flex.menu-03 li {
		width: calc( ( 100% - 40px ) / 3 );
	}

	#photo nav.page-nav > .flex.menu-03 li a {
		padding: 12px 36px 12px 12px;

	}

	#photo .photo-box .main .wrap {
		height: auto;
		padding-top: calc( 54vw + 60px );
	}

	#photo .photo-box .main .slide-image .slick-dots {
		top: 54vw;
		bottom: auto;
	}

	#photo .photo-box .main h2 {
		right: 4.2rem;
	}

	#photo .photo-box .main .slide-image {
		right: 150px;
	}

	#photo .photo-box .main .slide-image img {
		height: 54vw;
	}

	#photo .photo-box .main .txt {
		position: relative;
		bottom: 0;
		width: 100%;
		padding: 10px 15px 0;
	}

	#photo .photo-box .main .read {
		padding-left: 0;
	}

	#photo .photo-box .main h3 {
		letter-spacing: 8px;
	}

	#photo .photo-box .main h3 br {
		display: none;
	}

	#photo .photo-box .step-list > div {
		width: calc( ( 100% - 60px ) / 3 );
	}

	#photo .photo-box .step-list > div::after {
		width: 110px;
		left: -15px;
	}

	#photo .photo-box .step-list > div:last-child::after {
		display: none !important;
	}

	#photo .photo-box .step-list .txt {
		padding: 0;
	}

	#photo .photo-box .scene .flex {
		font-size: 1.8rem;
		letter-spacing: 0;
	}

	#photo .photo-box .scene .flex > figure {
		width: calc( ( 100% - 90px ) / 4 );
	}

	#photo .photo-box .step-list .txt h4 {
		font-size: 1.8rem;
		margin-bottom: 2rem;
	}

	#photo #photo-02 .main h2 {
		line-height: 1.5;
		right: 1.8rem;
	}

	/* kawahara */

	#kawahara .main .image .copy {
		right: 14%;
		line-height: 2;
	}

	#kawahara #sec-01 .info .flex {
		padding: 0;
	}

	#kawahara #sec-01 .info .flex > div {
		width: calc( ( 100% - 60px ) / 3 );
		padding: 0;
	}

	#kawahara #sec-01 .info .txt {
		padding: 0;
		margin: 15px 0;
	}

	#kawahara #sec-01 .info .txt h3 {
		font-size: 1.8rem;
		margin-bottom: 10px;
	}

	#kawahara #sec-01 .step {
		background: url( ../img/kawahara/bg-01.png ) right 25% bottom 35px no-repeat;
	}

	#kawahara #sec-01 .step-list {
		margin: 4rem 0;
	}

	#kawahara #sec-01 .step-list dd {
		margin-bottom: 2rem;
	}

	#kawahara .gallery-wrap .h-01 {
		margin: 4rem 0;
	}

	#kawahara .sec .ttl-bg .ttl-01 {
		width: 85%;
	}

	#kawahara #sec-02 .point-list .txt {
		padding: 30px 0 0 20px;
	}

	#kawahara #sec-02 .point-list > div:nth-child( even ) .txt {
		padding: 30px 20px 0 0;
	}

	#kawahara #sec-02 .point-list .txt::before {
		height: 10px;
	}

	#kawahara #sec-02 .point-list .num-tb {
		left: auto;
		right: 35px;
		font-size: 3rem;
		height: 100px;
		padding: 30px 0 0 15px;
	}

	#kawahara #sec-02 .point-list > div:nth-child( even ) .num-tb {
		right: 35px;
	}

	#kawahara #sec-02 .point-list h4 {
		font-size: 2rem;
		letter-spacing: 0;
		padding: 0 7rem 1.5rem 0;
		margin-bottom: 2rem;
	}

	#kawahara #sec-02 .point-list .read {
		letter-spacing: 2px;
		padding-left: 0;
	}

	a.img-bnr .jp.l2 {
		padding: 17px 5px 17px 15px;
	}

	#kawahara .bnr-box {
		padding: 60px 0;
	}

	#kawahara .plan-box {
		padding-bottom: 3rem;
	}

	#kawahara .notice {
		margin-top: 60px;
	}

	#kawahara .access-box .ttl-bg {
		margin-bottom: 3rem;
	}

	#kawahara .access-box .access {
		padding: 3rem 0;
	}

	#kawahara .access-box .map-wrap {
		width: 50%;
	}

	#kawahara .access-box .cont {
		width: 50%;
		padding-left: 3rem;
		padding-bottom: 80px;
		position: relative;
	}

	#kawahara .access-box .cont .txt {
		padding: 0;
		line-height: 1.8;
	}

	#kawahara .access-box .cont .txt p {
		margin-bottom: 2rem;
	}

	#kawahara .access-box .access:last-child .cont .btn-01 {
		margin-top: 0;
	}

	#kawahara .access-box .cont .btn-01 {
		width: auto;
		position: absolute;
		right: 0;
		bottom: 0;
		left: 3rem;
	}

}


/*
----------------------------------------
1080
----------------------------------------
*/

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

	/* topics */

	.contents-wrap {
		padding: 20px 0;
	}

	#main-contents {
		width: 100%;
		padding: 0;
		margin-bottom: 0;
	}

	#sidebar {
		width: 100%;
		padding: 20px 0;
		box-sizing: border-box;
	}

	.post-list .post > .flex > figure {
		width: 40%;
	}

	.post-list .post > .flex > .txt {
		width: 60%;
	}

	.post-list .post .txt .cont .new {
		top: 5px;
	}

	#sidebar .rank-list {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		justify-content: space-between;
		width: 800px;
		max-width: 100%;
		margin: 0 auto 30px;
	}

	#sidebar .rank-list > a {
		width: calc( ( 99% - 30px ) / 3 );
		margin-bottom: 0;
	}

	.pagination {
		margin: 20px 0;
	}

}


/*
----------------------------------------
960
----------------------------------------
*/

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

	#g-nav .sub-menu a span {
		font-size: 2rem;
	}

	/* bridal */

	.bridal.single.page .collection-list > div,
	.bridal.single.page .item-list-02 > div {
		width: calc( ( 100% - 40px ) / 4 );
	}

	.bridal.single.page .collection-list > div:nth-child( 4n ),
	.bridal.single.page .item-list-02 > div:nth-child( 4n ) {
		margin-right: 0;
	}

	.bridal.single.page .collection-list > div:nth-child( 5n ),
	.bridal.single.page .item-list-02 > div:nth-child( 5n ) {
		margin: 0 10px 10px 0;
	}

	.bridal.single.page .collection-list h3,
	.bridal.single.page .item-list-02 .ttl {
		letter-spacing: 1px;
		top: 1.5rem;
		left: 1rem;
	}

	.bridal.single.page .collection-list .mark::after {
		width: 120px;
	}

	.bridal.single.page .collection-list .mark .jp {
		font-size: 1.8rem;
	}

	.bridal.single.page .item-list-02 .read {
		padding: 1rem 1.5rem;
	}

	#bridal .bridal-list a {
		height: 500px;
	}

	#bridal .bridal-list a .ttl {
		font-size: 2rem;
	}

	#bridal .bridal-list a img {
		width: 300px;
	}

	#dress #tuxedo .tuxedo-wrap > .img {
		width: 100%;
		margin-bottom: 20px;
	}

	#dress #tuxedo .tuxedo-wrap > .txt {
		width: 100%;
		padding: 0;
	}

	#dress #tuxedo .tuxedo-wrap > .txt h3 br {
		display: none;
	}

	#dress #tuxedo .tuxedo-wrap > .txt h3 span {
		display: inline-block;
	}

	.note.option-link {
		font-size: 1.2rem;
	}

	/* kawahara */

	#kawahara .main .image .copy {
		right: 8%;
	}

}


/*
----------------------------------------
900
----------------------------------------
*/

@media ( max-width: 900px ) {

	/* contact */

	#contact .contact-form__row {
		display: block;
		padding: 24px 10px;
	}

	#contact .contact-form__title {
		padding-left: 0;
		margin-bottom: 10px;
	}

	#contact .contact-form__required .contact-required {
		margin-right: 10px;
	}

	#contact .contact-form__name {
		text-align: left;
	}

	#contact .contact-form__data {
		padding: 0;
	}

	#contact .contact-form__name--hope {
		padding-right: 0;
	}

	#contact .contact-form-hope:first-child {
		padding-top: 0;
	}

	#contact .contact-form-hope:last-child {
		padding-bottom: 0;
	}

	#contact .submit-box label {
		max-width: 500px;
	}

	.bridal.single.page .item-box {
		padding-bottom: 2rem;
	}

	#dress #tuxedo .tuxedo-wrap {
		margin-bottom: 4rem;
	}

	#dress #tuxedo .tuxedo-wrap > .txt h3 {
		font-size: 1.6rem;
		letter-spacing: 4px;
		padding-bottom: 1.5rem;
		margin-bottom: 2rem;
	}

	#dress #tuxedo .tuxedo-wrap > .txt h3 br:first-of-type {
		display: inline-block;
	}

	.bridal.single.page .acd-cont > .flex > figure {
		width: 280px;
	}

	.bridal.single.page .acd-cont > .flex > .txt {
		width: calc( 100% - 280px );
		padding: 0 30px;
	}

	.bridal.single.page .acd-cont dt br {
		display: none;
	}

	.bridal.single.page .acd-cont dt .note {
		font-size: 1.3rem;
		margin-left: 1rem;
		letter-spacing: 2px;
	}

	.bridal.single.page .acd-cont dd br {
		display: none;
	}

	.bridal.single.page .item-box .sec .info {
		text-align: left;
	}

	/* topics */

	.post-list .post .txt .cont {
		width: 100%;
	}

	.post-list .post .txt .cont h2 {
		letter-spacing: 4px;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		padding-bottom: 10px;
	}

	.post-list .post .txt .cont .read {
		font-size: 1.3rem;
	}

	.author-wrap {
		padding: 30px 15px;
	}

	.author-box .flex .read {
		padding-left: 15px;
		font-size: 1.3rem;
		line-height: 2;
	}

	.author-box .flex > .txt > .flex .info {
		font-size: 1.4rem;
	}

	.author-box h4 {
		font-size: 2rem;
		letter-spacing: 4px;
	}

	.author-box .sns .flex > * {
		margin-right: 10px;
	}

	.post-nav .prev a,
	.post-nav .next a {
		letter-spacing: 2px;
		font-size: 1.4rem;
	}

}


/*
----------------------------------------
768
----------------------------------------
*/

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

	#wpadminbar {
		display: none;
	}

	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	.ttl-01 {
		margin-bottom: 3rem;
	}

	.ttl-01 .jp img {
		width: 40px;
	}

	.ttl-01 h2 {
		font-size: 2rem;
		line-height: 1.5;
	}

	.ttl-01 .en {
		font-size: 1rem;
	}

	.ttl-bg {
		padding: 29px 10px;
	}

	.h-01 {
		font-size: 1.6rem;
		letter-spacing: 4px;
		padding: 10px;
		margin-bottom: 1.5rem;
	}

	.h-02 {
		font-size: 1.4rem;
		line-height: 1.2;
		letter-spacing: 5px;
		padding-left: 10px;
		border-left: solid 3px #e9e194;
		margin-bottom: 20px;
	}

	.h-02 .en {
		font-size: 1rem;
		letter-spacing: 3px;
		transform: translateY( -1px );
	}

	.btn-01 {
		text-align: center;
	}

	.btn-01 a {
		display: inline-block;
		width: 235px;
		max-width: 100%;
		font-size: 1.4rem;
		padding: 11px;
		background: #e9e194 url( ../img/sp/arrow-04.png ) right 20px center / 8px no-repeat;
	}

	body {
		font-size: 1.3rem;
	}

	body.nav-fix header, body.nav-open header {
		position: relative;
	}

	header .pc {
		display: none;
	}

	header .sp {
		display: block;
	}

	header .sp .head-wrap {
		background: #fff url( ../img/common/bg-01.png ) center top repeat;
		z-index: 999999;
		padding: 6.5px 15px;
		flex-wrap: nowrap;
	}

	header .sp .head-wrap .logo {
		padding-right: 20px;
		margin-right: auto;
		line-height: .5;
	}

	header .sp .head-wrap .logo img {
		width: 124px;
		max-width: 100%;
	}

	header .sp .head-wrap .menu-icon a {
		display: block;
		line-height: .5;
		padding: 6px;
		transition: all 0s;
	}

	header .sp .head-wrap .menu-icon a#btn-sns.active {
		background: url( ../img/sp/btn-sns-on.png ) center center / 25px no-repeat;
	}

	body.nav-open header .sp .head-wrap .menu-icon a.btn-menu-open {
		background: url( ../img/sp/btn-close.png ) center center / 25px no-repeat;
	}

	header .sp .head-wrap .menu-icon a#btn-sns.active img,
	body.nav-open header .sp .head-wrap .menu-icon a.btn-menu-open img {
		opacity: 0;
	}

	header .sp .head-wrap .menu-icon img {
		width: 25px;
		transition: all .2s;
	}

	body.nav-open header .head-wrap .menu-icon {
		left: 24vw;
	}

	body.nav-open header .head-wrap .menu-icon .flex {
		justify-content: flex-end;
	}

	body.nav-fix header .head-wrap .menu-icon li,
	body.nav-open header .head-wrap .menu-icon li:first-child {
		display: none;
	}

	body.nav-open.nav-fix header .head-wrap .menu-icon li:nth-child( 2 ),
	body.nav-open.nav-fix header .head-wrap .menu-icon li:nth-child( 3 ) {
		display: block;
	}

	body.nav-fix header .sp .head-wrap .menu-icon li:last-child {
		display: block;
	}

	header .sp #sp-sns-menu {
		position: absolute;
		top: 50px;
		right: 0;
		left: 0;
		opacity: 0;
		visibility: hidden;
		z-index: -1;
		transition: all .2s;
	}

	header .sp #sp-sns-menu.open {
		opacity: 1;
		visibility: visible;
		z-index: 99999;
	}

	body.nav-fix header .sp #sp-sns-menu.open,
	body.nav-open header .sp #sp-sns-menu.open {
		opacity: 0;
		visibility: hidden;
		z-index: -1;
	}

	header .sp #sp-sns-menu li {
		width: 50%;
		text-align: center;
	}

	header .sp #sp-sns-menu li a {
		display: block;
		background-color: rgba( 206, 175, 80, .85 );
		background-position:
			left 15px center,
			right 15px center;
		background-size: 27px, 8px;
		background-repeat: no-repeat;
		color: #fff;
		font-size: 1.2rem;
		padding: 18px 24px 18px 42px;
		letter-spacing: 4px;
	}

	header .sp #sp-sns-menu li.insta a {
		background-image:
			url( ../img/sp/icon-insta.png ),
			url( ../img/sp/arrow-01.png );
	}

	header .sp #sp-sns-menu li.fb a {
		background-image:
			url( ../img/sp/icon-fb.png ),
			url( ../img/sp/arrow-01.png );
	}

	header #head-menu > ul {
		top: 50px;
		left: 24vw;
		width: auto;
		max-width: initial;
		max-height: calc( 100vh - 50px );
		max-height: calc( ( var( --vh ) * 100 ) - 50px );
	}

	header #head-menu a {
		padding: 16px 25px;
		font-size: 1.3rem;
	}

	header #head-menu span.sub {
		padding: 16px 40px 16px 25px;
		font-size: 1.3rem;
	}

	.nav-open header .overlay {
		top: 50px;
	}

	header .overlay span {
		font-size: 1rem;
	}

	footer {
		padding: 20px 0 0;
	}

	footer .info {
		justify-content: center;
	}

	footer .info .logo {
		margin: 0 auto;
	}

	footer .info .logo img {
		width: 144px;
	}

	footer .info .contact .flex {
		display: none;
	}

	footer .bottom-menu {
		flex-direction: column;
	}

	footer .bottom-menu .address-wrap {
		width: 100%;
		padding-right: 0;
		text-align: center;
	}

	footer .bottom-menu .address-wrap .icon-set ul {
		padding: 0 9px;
	}

	footer .bottom-menu .address-wrap .icon-set li {
		padding: 0 9px;
	}

	footer .bottom-menu .address-wrap .icon-set li img {
		height: 26px;
	}

	footer .bottom-menu .address-wrap .icon-set li:nth-child( 2 ) {
		padding-right: 18px;
	}

	footer .bottom-menu .address-wrap .icon-set li:nth-child( 3 ) {
		border-left: solid 1px #fff;
		padding-left: 18px;
	}

	footer .bottom-menu .address-wrap .address-link {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		align-items: center;
		margin-bottom: 25px;
	}

	footer .bottom-menu .address-wrap .address {
		margin: 0;
		padding: 0;
		font-size: 1.2rem;
		letter-spacing: 1px;
		text-align: left;
		width: 50%;
	}

	footer .bottom-menu .address-wrap .address::after {
		display: none;
	}

	footer .bottom-menu .address-wrap .link {
		width: 50%;
	}

	footer .bottom-menu .address-wrap .btn.link a {
		font-size: 1.1rem;
		letter-spacing: 2px;
		background: #fff url( ../img/common/icon-link-02.png ) right 15px center / 10px no-repeat;
		padding: 7px 25px 7px 10px;
	}

	footer .bottom-menu .address-wrap .btn.link a::after {
		display: none;
	}

	footer .bottom-menu .sitemap {
		width: 100%;
	}

	footer .bottom-menu .sitemap h3 {
		font-size: 1.2rem;
		padding: 0 0 0 10px;
		line-height: 1;
	}

	footer .bottom-menu .sitemap .main-menu {
		width: 60%;
	}

	footer .bottom-menu .sitemap .bridal-menu,
	footer .bottom-menu .sitemap .event-menu {
		width: 40%;
		margin-left: auto;
	}

	footer .bottom-menu .sitemap .flex a {
		font-size: 1.3rem;
		letter-spacing: 3px;
	}

	footer .bottom-menu .sitemap .flex dd ul {
		margin-left: 0;
	}

	footer .bottom-menu .sitemap .flex li {
		padding-left: 1.2rem;
		margin-bottom: 0;
	}

	footer .bottom-menu .sitemap .flex dd li {
		margin-bottom: 0;
		padding-left: 1.5rem;
		line-height: 1.4;
		transform: scale( .8 ) translateX( -1rem );
	}

	footer .bottom-menu .sitemap .flex dd a {
		font-size: 1.3rem;
	}

	footer .copyright {
		padding: 2px;
		font-size: 1rem;
	}

	footer .copyright .wrap {
		transform: scale( .8 );
	}

	.topic-path {
		top: 8px;
		font-size: 1.2rem;
	}

	#home #wrapper,
	body.nav-fix #wrapper,
	body.nav-open #wrapper {
		padding-top: 50px;
	}

	#home.nav-fix #wrapper > header .sp .head-wrap .menu-icon a.btn-menu-open {
		position: fixed;
		top: 0;
		right: 0;
		background: url( ../img/common/bg-01.png ) center top repeat;
		padding: 12.5px;
	}

	#home .scroll-box {
		min-height: initial;
	}

	#home #main-img {
		background: transparent;
		position: relative;
	}

	#home #main-img::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 60px;
		left: 0;
		z-index: -1;
	}

	#home #main-img > .wrap {
		padding: 0;
	}

	#home #main-img .wrap > .flex {
		height: calc( 100vh - 50px );
		height: calc( ( var( --vh ) * 100 ) - 50px );
	}

	#home #main-img .box .copy {
		position: absolute;
		top: 50%;
		right: 5px;
		transform: translateY( -50% );
	}

	#home #main-img .box .copy img {
		max-width: 167px;
	}

	#home #main-img .box .copy::before,
	#home #main-img .box .copy::after {
		display: none;
	}

	#home #main-img #main-nav {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		margin: 0;
		z-index: 99;
	}

	#home #main-img #main-nav .slick-track > div {
		width: calc( 100% / 3 );
		margin: 0;
	}

	#home #main-img #main-nav a {
		width: 100%;
		font-size: 1.4rem;
		letter-spacing: 6px;
		line-height: 1.3;
		padding: 21px 10px;
		background: #fff url( ../img/sp/arrow-02.png ) right 10px center / 4px no-repeat;
	}

	#home #main-img #main-nav .slick-current a {
		background: #e9e194 url( ../img/sp/arrow-02.png ) right 10px center / 4px no-repeat;
	}

	#home #main-img #main-nav .l-2 a {
		padding: 12px 10px;
		letter-spacing: 0;
	}

	#home #main-img .scroll {
		bottom: 60px;
	}

	#home #main-img .scroll a {
		padding-bottom: 10px;
	}

	#home #main-img .scroll a::before,
	#home #main-img .scroll a::after {
		display: none;
	}

	/*
	#home #main-img #fv-img {
		background-image: url( ../img/sp/fv-img-04.png );
	}
	*/

	#home #main-img #main-slide .slide-01 {
		background: url( ../img/sp/fv-img-04.png ) center center / cover no-repeat;
	}

	#home #main-img #main-slide .slide-02 {
		background: url( ../img/sp/fv-img-02.png ) center center / cover no-repeat;
	}

	#home #main-img #main-slide .slide-03 {
		background: url( ../img/sp/fv-img-03.png ) center center / cover no-repeat;
	}

	/* home */

	#home .info-box .read .flex {
		flex-direction: column;
	}

	#home .info-box .read .flex .ttl {
		width: 100%;
		height: 26vh;
		height: calc( var( --vh ) * 26 );
		padding: 0;
	}

	#home .info-box .read .flex .ttl::after {
		right: -15px;
		left: -15px;
	}

	#home .info-box .read .flex .ttl h3 {
		position: absolute;
		left: 50%;
		top: 20%;
		font-size: 1.4rem;
		letter-spacing: 2px;
		transform: translateX( -50% );
	}

	#home .info-box .read {
		background: transparent;
	}

	#home .info-box .read .flex .ttl .num-tb {
		font-size: 1.4rem;
		letter-spacing: 2px;
		padding: 10px 5px 0;
		height: auto;
		right: auto;
		left: 50%;
		transform: translateX( 35px );
	}

	#home .info-box .read .flex .txt {
		width: 100%;
		height: 44vh;
		height: calc( var( --vh ) * 44 );
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 0;
		background: url( ../img/home/info-bg.png ) center center / 190px no-repeat;
	}

	#home .info-box .read .flex .txt p {
		font-size: 1.2rem;
		line-height: 1.8;
		margin: 0 1.4rem;
		margin-top: 30px;
	}

	#home .info-box .read .flex .txt p:nth-child( 2 ) {
		margin-top: 70px;
	}

	#home .info-box .read .flex .txt p:nth-child( 3 ) {
		margin-top: 110px;
	}

	#home .info-box .welcome a > .flex {
		height: 30vh;
		height: calc( var( --vh ) * 30 );
		font-size: 1rem;
		padding: 20px 0;
	}

	#home .info-box .welcome .ttl > span {
		padding: 10px 20px;
		margin-bottom: 20px;
	}

	#home .info-box .welcome .ttl > span img {
		width: 15px;
	}

	#home .bridal-box .sec-01,
	#home .bridal-box .sec-02 {
		height: calc( 100vh );
		height: calc( var( --vh ) * 100 );
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	#home .bridal-box .ttl-01 {
		margin-bottom: 2rem;
	}

	#home .bridal-box > .flex {
		height: auto;
		padding: 45px 0 0;
		background: url( ../img/common/bg-musubi.png ) center 20% / auto 180px no-repeat;
	}

	#home .bridal-list {
		flex-direction: column;
	}

	#home .bridal-list .bridal {
		width: 100% !important;
		padding: 1vh 0;
		padding: calc( var( --vh ) * 1 ) 0;
	}

	#home .bridal-list .bridal.shiromuku a::after {
		background: url( ../img/sp/bridal-img-01.png ) center top / cover no-repeat;
	}

	#home .bridal-list .bridal.irouchikake a::after {
		background: url( ../img/sp/bridal-img-02.png ) center top / cover no-repeat;
	}

	#home .bridal-list .bridal.montsukihakama a::after {
		background: url( ../img/sp/bridal-img-03.png ) center top / cover no-repeat;
	}

	#home .bridal-list .bridal.dress a::after {
		background: url( ../img/sp/bridal-img-04.png ) center top / cover no-repeat;
	}

	#home .bridal-list .bridal.hikifurisode a::after {
		background: url( ../img/sp/bridal-img-05.png ) center top / cover no-repeat;
	}

	#home .bridal-list .bridal a .ttl,
	#home .bridal-list.list-01 .bridal a .ttl {
		padding: 15px;
		margin-bottom: 5px;
	}

	#home .bridal-list .bridal a .ttl img {
		width: 80px;
		height: 80px;
	}

	#home .bridal-list .bridal a {
		height: 28vh;
		height: calc( var( --vh ) * 28 );
		font-size: 1rem;
		line-height: 1.4;
	}

	#home .bridal-list.list-01 .bridal a {
		height: 30vh;
		height: calc( var( --vh ) * 30 );
		font-size: 1rem;
	}

	#home .event-box > .flex {
		background: url( ../img/common/bg-musubi-02.png ) center 70% / auto 180px no-repeat;
		height: calc( 100vh - 80px );
		height: calc( ( var( --vh ) * 100 ) - 80px );
		padding: 40px 0 0;
	}

	#home .event-box .wrap {
		padding: 0 5px;
		margin-bottom: auto;
	}

	#home .event-list {
		margin-top: 50px;
	}

	#home .event-list .event {
		width: calc( ( 100% - 20px ) / 3 );
	}

	#home .event-list .event a {
		height: 50vh;
		height: calc( var( --vh ) * 50 );
		font-size: 1rem;
		letter-spacing: 1px;
	}

	#home .event-list .event a .ttl {
		padding: 10px;
		margin-bottom: 0;
	}

	#home .event-list .event a .ttl img {
		width: 70px;
		height: 70px;
	}

	#home .event-list .event a .en {
		transform: scale( .8 );
	}

	#home .event-list .event:first-child a::after {
		background: url( ../img/sp/event-img-01.png ) center top / cover no-repeat;
	}

	#home .event-list .event:nth-child( 2 ) a::after {
		background: url( ../img/sp/event-img-02.png ) center top / cover no-repeat;
	}

	#home .event-list .event:nth-child( 3 ) a::after {
		background: url( ../img/sp/event-img-03.png ) center top / cover no-repeat;
	}

	#home .event-box .btn.sp a {
		display: block;
		height: 80px;
		text-align: center;
		padding: 26px;
		background: #e9e194 url( ../img/sp/arrow-03.png ) right 30px center / 11px no-repeat;
		font-size: 1.4rem;
		letter-spacing: 6px;
	}

	#home .photo-wedding-box {
		background: none;
		height: 100vh;
		height: calc( var( --vh ) * 100 );
		padding-bottom: 80px;
		position: relative;
	}

	#home .photo-wedding-box .wrap {
		width: 100%;
		height: 100%;
		background: url( ../img/sp/photo-wedding-bg.png ) center top / cover no-repeat;
	}

	#home .photo-wedding-box .txt {
		height: auto;
	}

	#home .photo-wedding-box .txt-wrap {
		position: absolute;
		top: auto;
		right: 0;
		bottom: 80px;
		left: 50px;
		padding: 0;
		background: rgba( 255, 255, 255, .9 );
	}

	#home .photo-wedding-box .txt h2 {
		padding: 20px 10px 10px 50px;
		font-size: 1.4rem;
		letter-spacing: 2px;
		text-indent: -2rem;
	}

	#home .photo-wedding-box .txt h2::before {
		width: 20px;
		top: 30px;
	}

	#home .photo-wedding-box .txt .read {
		padding: 0 30px 20px;
		font-size: 1.2rem;
		line-height: 1.8;
		letter-spacing: 0;
	}

	#home .photo-wedding-box .txt .btn {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
	}

	#home .photo-wedding-box .txt .btn a {
		display: block;
		height: 80px;
		text-align: center;
		padding: 26px 46px 26px 26px;
		background: #e9e194 url( ../img/sp/arrow-03.png ) right 30px center / 11px no-repeat;
		letter-spacing: 6px;
		font-size: 1.4rem;
	}

	#home .topics-box {
		height: 100vh;
		height: calc( var( --vh ) * 100 );
	}

	#home .topics-box .wrap {
		height: 100%;
	}

	#home .topics-box .wrap > .flex {
		height: 100%;
		padding: 15px 0;
	}

	#home .topics-box .wrap > .flex > div {
		width: 100%;
		padding-bottom: 30px;
	}

	#home .topics-box .wrap > .flex > div > .flex {
		height: auto;
		max-height: initial;
	}

	#home .topics-box .wrap > .flex > div.access {
		padding-bottom: 0;
	}

	#home .topics-box .h-02 {
		margin-bottom: 20px;
	}

	#home .topics-box .topics-list li a {
		font-size: 1.2rem;
		padding: 8px 20px 8px 0;
		background: url( ../img/sp/arrow-02.png ) right 5px center / 4px no-repeat;
	}

	#home .topics-box .topics-list li a time {
		width: 8rem;
	}

	#home .topics-box .btn-01 {
		position: relative;
		margin-top: 20px;
	}

	#home .topics-box .wrap > .flex .access h2 {
		margin-bottom: 15px;
	}

	#home .topics-box .access .ttl {
		flex-direction: row;
		align-items: center;
		margin-bottom: 5px;
	}

	#home .topics-box .access .ttl .logo {
		width: 50%;
		text-align: left;
	}

	#home .topics-box .access .ttl .logo img {
		width: 142px;
	}

	#home .topics-box .access .ttl .txt {
		width: 50%;
		font-size: 1.1rem;
		letter-spacing: 0;
		line-height: 1.6;
		text-align: left;
	}

	#home .topics-box .access .map {
		margin-right: -15px;
		margin-left: -15px;
		padding-bottom: 30vh;
		padding-bottom: calc( var( --vh ) * 30 );
	}

	#home .topics-box .access .btn-01 {
		margin-top: 15px;
	}

	.reservation {
		font-size: 1rem;
		background: url( ../img/sp/reservation-bg.png ) center center / cover no-repeat;
	}

	.reservation .ttl > span {
		padding: 10px 20px;
		margin-bottom: 10px;
	}

	.reservation .ttl > span img {
		width: 41px;
	}

	.reservation .ttl > span::before,
	.reservation .ttl > span::after {
		top: -5px;
		bottom: -5px;
	}

	.reservation .ttl > span::before {
		left: -5px;
	}

	.reservation .ttl > span::after {
		right: -5px;
	}

	.reservation > a > .flex {
		height: 30vh;
		height: calc( var( --vh ) * 30 );
		padding: 20px 0;
	}

	.reservation-info {
		height: auto;
		max-height: initial;
		padding: 20px 15px;
	}

	.reservation-info h2 {
		font-size: 1.2rem;
		letter-spacing: 4px;
		margin: 0 0 1rem;
	}

	.reservation-info strong {
		font-size: 1rem;
		letter-spacing: 3px;
		margin-bottom: 15px;
	}

	.reservation-info strong span {
		font-size: 1.1rem;
		letter-spacing: 3px;
		padding: 0 6px 0 8px;
		margin: 5px 0;
	}

	.reservation-info strong span:nth-child( 2 ) {
		margin-right: 8px;
	}

	.contact-box .bnr-set {
		height: auto;
		max-height: auto;
	}

	.contact-box .bnr-set .tel {
		font-size: 1rem;
		letter-spacing: .5px;
	}

	.reservation-info .note {
		font-size: 1rem;
		line-height: 1.6;
		text-align: left;
	}

	.contact-box .bnr-set a {
		height: 70px;
	}

	.contact-box .bnr-set a img {
		width: 30px;
		margin-right: 10px;
	}

	.contact-box .bnr-set .tel .num {
		font-size: 1.6rem;
		letter-spacing: 1.5px;
	}

	.contact-box .bnr-set .contact {
		font-size: 1.4rem;
	}

	.contact-box .bnr-set .contact a img {
		margin-right: 15px;
	}

	/* bridal */

	#bridal .bridal-box .info {
		padding: 20px 0;
		font-size: 1.3rem;
		line-height: 2;
		letter-spacing: 1px;
	}

	#bridal .bridal-list a {
		height: 60vw;
	}

	#shiromuku .main::after {
		background: url( ../img/bridal/shiromuku/main-img-s.png ) center center / cover no-repeat;
	}

	#irouchikake .main::after {
		background: url( ../img/bridal/irouchikake/main-img-s-02.png ) center center / cover no-repeat;
	}

	#montsukihakama .main::after {
		background: url( ../img/bridal/montsukihakama/main-img-s.png ) center center / cover no-repeat;
	}

	#dress .main::after {
		background: url( ../img/bridal/dress/main-img-s.png ) center center / cover no-repeat;
	}

	#hikifurisode .main::after {
		background: url( ../img/bridal/hikifurisode/main-img-s.png ) center center / cover no-repeat;
	}

	#guest .main::after {
		background: url( ../img/bridal/guest/main-img-s.png ) center center / cover no-repeat;
	}

	#bridal .bridal-list .wrap {
		padding: 0 20px;
	}

	#bridal .bridal-list a .ttl {
		font-size: 2.5vw;
		letter-spacing: 1px;
		line-height: 1.5;
	}

	#bridal .bridal-list a img {
		width: 40vw;
		max-width: 300px;
		margin-bottom: 5px;
	}

	.bridal.single.page .main {
		overflow: hidden;
	}

	.main-info-txt {
		height: 100%;
	}

	.bridal.single.page footer .copyright {
		padding-bottom: 13rem;
	}

	.bridal.single.page .main {
		height: calc( 177.7vw - 160px );
	}

	.bridal.single.page .main .wrap > .flex {
		height: calc( 177.7vw - 160px );
		padding: 2rem 0;
		justify-content: space-around;
	}

	#bridal .bnr-box {
		padding: 20px 0;
	}

	a.img-bnr.bnr-photo-02 {
		padding: 30px 10px 50px;
	}

	a.img-bnr.bnr-photo-02 .jp {
		padding: 25px;
		letter-spacing: 4px;
	}

	a.img-bnr.bnr-photo-02 .jp .ttl {
		line-height: 1.6;
		margin: 0;
	}

	a.img-bnr.bnr-photo-02 .jp .note {
		display: none;
	}

	a.img-bnr.bnr-photo-02 .en {
		bottom: 12px;
	}

	.main-info-txt .ttl {
		font-size: 4rem;
		letter-spacing: 10px;
		margin: auto 0;
		writing-mode: vertical-lr;
		white-space: nowrap;
	}

	.main-info-txt .txt .copy {
		font-size: 1.8rem;
		line-height: 1.8;
		padding-bottom: 1.5rem;
		margin-bottom: 2rem;
	}

	.main-info-txt .read {
		letter-spacing: 2px;
		line-height: 1.8;
	}

	.bridal.single.page nav.page-nav {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		padding: 0;
		z-index: 999999;
		margin: 0;
		padding: 10px 10px 0;
		background: #fff;
		opacity: 0;
		transition: all .2s;
	}

	.bridal.single.page nav.page-nav.active {
		opacity: 1;
	}

	.bridal.single.page nav.page-nav > .flex {
		width: 100%;
		justify-content: flex-start;
	}

	.bridal.single.page nav.page-nav li {
		width: calc( ( 100% - 20px ) / 3 );
		margin-right: 10px;
		padding-bottom: 10px;
		position: relative;
	}

	.bridal.single.page nav.page-nav li:nth-child( 3n ) {
		margin-right: 0;
	}

	.bridal.single.page nav.page-nav .menu-04 li {
		width: calc( ( 100% - 10px ) / 2 );
	}

	.bridal.single.page nav.page-nav .menu-04 li:nth-child( 3n ) {
		margin-right: 10px;
	}

	.bridal.single.page nav.page-nav .menu-04 li:nth-child( even ) {
		margin-right: 0;
	}

	.bridal.single.page nav.page-nav a {
		font-size: 1.2rem;
		letter-spacing: 0 !important;
		padding: 12px 5px;
		border: solid 1px #000;
	}

	.bridal.single.page nav.page-nav a:hover {
		background: transparent;
	}

	.bridal.single.page .collection-box {
		padding: 3rem 0 0;
	}

	.bridal.single.page .collection-box .ttl-01 {
		margin-bottom: 3rem;
	}

	.bridal.single.page .collection-box .tab-menu .flex {
		justify-content: space-between;
		margin-bottom: 10px;
	}

	.bridal.single.page .collection-box .tab-menu li {
		width: calc( ( 100% - 10px ) / 2 );
		padding: 0;
		margin-bottom: 10px;
	}

	.bridal.single.page .collection-box .tab-menu a {
		width: 100%;
		padding: 10px 2px;
	}

	.bridal.single.page .collection-list > div,
	.bridal.single.page .item-list-02 > div {
		width: calc( ( 100% - 10px ) / 2 );
		margin-right: 10px;
		text-align: center;
	}

	.bridal.single.page .collection-list > div:nth-child( even ),
	.bridal.single.page .item-list-02 > div:nth-child( even ) {
		margin-right: 0;
	}

	.bridal.single.page .collection-list.center {
		justify-content: flex-start;
	}

	#irouchikake.bridal.single.page .item-list-02 {
		margin-bottom: 20px;
	}

	.bridal.single.page .item-list-02 .read {
		font-size: 1.3rem;
		letter-spacing: 0;
	}

	.bridal.single.page .choice-box {
		padding-top: 3rem;
	}

	.bridal.single.page .choice-box .sec .info,
	.bridal.single.page .item-box .sec .info {
		margin-bottom: 2rem;
	}

	.bridal.single.page .item-list {
		flex-direction: column;
		margin-bottom: 2rem;
	}

	.bridal.single.page .item-list > div {
		width: 100% !important;
		padding: 0 15px !important;
		margin-bottom: 2rem;
	}

	.bridal.single.page .item-list .txt > .flex {
		flex-direction: row;
	}

	#dress.bridal.single.page .item-list.col2 .txt {
		font-size: 1.6rem;
	}

	.bridal.single.page .item-list .txt dt {
		width: 4rem;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-lr;
		font-size: 1.8rem;
		line-height: 1.2;
		letter-spacing: 8px;
		text-align: left;
		padding: 8px 0;
	}

	.bridal.single.page .item-list .txt dt::before {
		content: '';
		width: 1px;
		height: 94px;
		top: 0;
		right: 0;
		bottom: auto;
		left: auto;
	}

	.bridal.single.page .item-list .txt dd {
		width: calc( 100% - 4rem );
		padding:  0 0 0 2rem;
	}

	.bridal.single.page .item-list.sp2c {
		flex-direction: row;
		justify-content: space-between;
	}

	.bridal.single.page .item-list.sp2c > div {
		width: calc( ( 100% - 10px ) / 2 ) !important;
		padding: 0 !important;
	}

	.bridal.single.page .item-list.sp2c .txt > .flex {
		flex-direction: column;
	}

	.bridal.single.page .item-list.sp2c .txt {
		padding: 10px 15px;
	}

	.bridal.single.page .item-list.sp2c .txt dt {
		width: 100%;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		font-size: 1.6rem;
		letter-spacing: 2px;
		padding-bottom: 15px;
	}

	.bridal.single.page .item-list.sp2c .txt dt::before {
		height: 1px;
		width: 80px;
		top: auto;
		right: auto;
		bottom: 0;
		left: 0;
	}

	.bridal.single.page .item-list.sp2c .txt dd {
		width: 100%;
		padding: 0;
	}

	.bridal.single.page .item-list.sp2c .txt dd .ttl {
		text-align: left;
		letter-spacing: 0;
		line-height: 1.5;
	}

	.bridal.single.page .item-list.sp2c .txt .read {
		letter-spacing: 0;
	}

	.bridal.single.page .item-list.sp2c .txt > .flex {
		flex-direction: column;
	}

	.bridal.single.page .item-box {
		padding-top: 2.5rem;
	}

	.bridal.single.page .item-box .set-wrap {
		padding-bottom: 3rem;
	}

	.bridal.single.page .acd-btn a {
		font-size: 1.6rem;
	}

	.bridal.single.page .acd-cont {
		padding: 0 5px;
	}

	.bridal.single.page .acd-cont > .flex {
		flex-direction: column;
	}

	.bridal.single.page .acd-cont > .flex > figure {
		width: 100%;
		text-align: center;
	}

	.bridal.single.page .acd-cont > .flex > figure img {
		width:  100%;
	}

	.bridal.single.page .item-box .acd-cont > .flex > .txt {
		width: 100%;
		padding: 15px 20px;
	}

	.bridal.single.page .acd-cont dt {
		font-size: 1.8rem;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

	.bridal.single.page .acd-cont dd {
		padding-bottom: 0;
	}

	.bridal.single.page .style-box {
		margin: 2rem 0;
		padding-top: 2.5rem;
	}

	.bridal.single.page section .sec > p.info {
		margin-bottom: 0;
	}

	.bridal.single.page .morning-box picture {
		margin: 2rem 0 0;
	}

	.slider {
		margin: 3rem 0;
	}

	.slider .slick-prev {
		left: 8%;
	}

	.slider .slick-next {
		right: 8%;
	}

	.slick-dots li {
		margin: 0 2px !important;
	}

	.bridal.single.page .slider figcaption .name {
		font-size: 1.8rem;
	}

	.bridal.single.page .plan-box .ttl-bg {
		margin-bottom: 3rem;
	}

	.ttl-bg .ttl-01 {
		width: auto;
		padding: 20px 30px;
	}

	.bridal.single.page .plan-box .info figure {
		margin-bottom: 2rem;
	}

	.bridal.single.page .plan-box .info .txt h3 {
		font-size: 2rem;
		padding: 10px;
		margin-bottom: 1.5rem;
	}

	#dress .plan-list-01,
	#guest .plan-list-01 {
		margin-bottom: 0;
	}

	.plan-list-01 {
		width: 100%;
		margin: 0;
		border-spacing: 0 10px;
	}

	.plan-list-01 tr {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		margin-bottom: 15px;
	}

	.plan-list-01 th {
		width: 100% !important;
		padding: 10px !important;
		line-height: 1.5;
	}

	.plan-list-01 th strong {
		font-size: 3rem;
	}

	.plan-list-01 th + td {
		width: 100% !important;
		padding: 10px;
		border-top: none;
	}

	.plan-list-01 th + td li {
		margin: 2px 0;
	}

	.plan-list-01 th + td + td {
		width: 100% !important;
		margin-bottom: 5px;
		border-top: none;
	}

	.plan-list-01 tr:nth-of-type( 2 ) th + td,
	.plan-list-01 tr:nth-of-type( 2 ) th + td + td,
	.plan-list-01 tr:nth-of-type( 5 ) th + td,
	.plan-list-01 tr:nth-of-type( 5 ) th + td + td,
	.plan-list-01 tr:nth-of-type( 3 ) th + td,
	.plan-list-01 tr:nth-of-type( 3 ) th + td + td,
	.plan-list-01 tr:nth-of-type( 6 ) th + td,
	.plan-list-01 tr:nth-of-type( 6 ) th + td + td {
		border-top: none;
	}

	.plan-list-02 {
		border-spacing: 0 10px;
		width: 100%;
		margin: 0;
	}

	.plan-list-02 th {
		width: 55%;
		padding: 10px;
		font-size: 1.3rem;
		letter-spacing: 0;
	}

	.plan-list-02 td {
		width: calc( 45% - 5px );
		padding: 10px;
		font-size: 1.6rem;
		line-height: 1.5;
	}

	.plan-list-01 td .note,
	.plan-list-02 td .note {
		display: inline-block;
		font-size: 1.1rem;
		line-height: 1.8;
	}

	.notice {
		padding: 35px 15px 10px;
		margin: 50px 0 0;
	}

	.notice dt {
		top: -26px;
	}

	.notice dt span {
		width: auto;
		padding: 10px 20px;
		font-size: 1.6rem;
	}

	.bridal.single.page .flow-box {
		padding-bottom: 4rem;
	}

	.bridal.single.page .flow-box .ttl-bg {
		margin-bottom: 3rem;
	}

	.flow-list > .flex {
		flex-direction: column;
		padding: 0;
		margin-top: 3rem;
	}

	.flow-list .txt {
		width: 100%;
		padding: 0;
		margin-bottom: 15px;
	}

	.flow-list .txt .num {
		width: 60px;
	}

	.flow-list .txt h3 {
		min-height: 60px;
		margin: 0 0 10px 75px;
		font-size: 1.6rem;
	}

	.flow-list .txt h3::after {
		left: 15px;
	}

	.flow-list .txt h3 .note {
		font-size: 1.3rem;
	}

	.bridal.single.page #modal .close {
		top: auto;
		bottom: 0;
	}

	.bridal.single.page #modal .close a {
		width: 50px;
		height: 50px;
		padding: 7px 5px;
		font-size: 1rem;
		line-height: 1.4;
	}

	.bridal.single.page #modal .close img {
		width: 22px;
	}

	.bridal.single.page #modal .wrap {
		height: 100vh;
		height: var( --vh ) * 100;
		max-height: var( --vh ) * 100;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		transform: translateY( 0 );
	}

	.bridal.single.page #modal .wrap > .flex {
		flex-direction: column;
	}

	.bridal.single.page #modal .wrap > .flex > figure {
		width: 100%;
		line-height: .5;
		margin-bottom: 15px;
	}

	.bridal.single.page #modal .wrap > .flex > figure img {
		width: 300px;
	}

	.bridal.single.page #modal .wrap > .flex > .cont {
		width: 100%;
		padding: 0;
	}

	.bridal.single.page #modal .wrap > .flex > .cont > .flex {
		flex-direction: column-reverse;
	}

	.bridal.single.page #modal .thumb .flex {
		justify-content: center;
		margin-bottom: 20px;
	}

	.bridal.single.page #modal .details {
		margin-bottom: 20px;
	}

	/* event */

	.page-ttl {
		padding: 56px 0;
	}

	.page-ttl h2 {
		font-size: 3rem;
		letter-spacing: 2px !important;
	}

	#event .nav-wrap {
		padding: 0;
	}

	#event .nav-wrap .wrap {
		padding: 0;
	}

	#event nav.page-nav .menu-04 li {
		width: 50%;
	}

	#event .event-box .main {
		height: auto;
		padding: 3.5rem 0 1.5rem;
	}

	#event .event-box .main.view::after {
		animation: fadeout .6s ease-in-out 2s 1 normal forwards;
	}

	#event .main-info-txt .read {
		padding: 1.5rem;
		letter-spacing: 0;
	}

	#event .event-box .plan {
		padding: 3rem 0 1.5rem;
	}

	#event .plan-list-01 th span {
		font-size: 1.8rem;
	}

	#event .event-box .plan .notice {
		margin-top: 3rem;
	}

	#event .reservation-info {
		padding-bottom: 4rem;
	}

	#event .page-bnr-set {
		margin: 4rem 0;
		flex-direction: column;
	}

	.page-bnr-set > div {
		width: 100%;
		margin-top: 20px;
	}

	.page-bnr-set > div:first-child {
		margin-top: 0;
	}

	a.img-bnr {
		padding: 30px 10px 50px;
	}

	a.img-bnr .jp {
		width: 240px;
		font-size: 2rem;
		letter-spacing: 6px;
		padding: 17px 5px 17px 15px
	}

	a.img-bnr .en {
		bottom: 12px;
	}

	.insta-feed h2 {
		font-size: 2rem;
		padding: 2.5rem 0;
	}

	#sb_instagram.sbi_col_5.sbi_disable_mobile #sbi_images .sbi_item {
		width: calc( 100% / 3 ) !important;
	}

	#sb_instagram.sbi_col_5.sbi_disable_mobile #sbi_images .sbi_item:last-child {
		display: none;
	}

	.insta-feed .btn a {
		font-size: 1.6rem;
		background: #fff url( ../img/common/icon-link-02@2x.png ) right 15px center / 20px no-repeat !important;
		width: 240px;
	}

	/* photo */

	#photo .nav-wrap {
		padding: 0;
		margin: 1rem 0 0;
	}

	#photo .nav-wrap .wrap {
		padding: 0;
	}

	#photo nav.page-nav > .flex {
		align-items: center;
	}

	#photo nav.page-nav > .flex.menu-03 li {
		width: calc( 100% / 3 );
	}

	#photo nav.page-nav > .flex.menu-03 li a {
		padding: 12px 0;
		line-height: 1.5;
		background: none !important;
	}

	#photo .bnr-box {
		padding-bottom: 0;
	}

	#photo .photo-box .main {
		margin-bottom: 3rem;
		padding-top: 10px;
	}

	#photo .photo-box .main .wrap {
		padding-top: calc( 64vw + 40px );
	}

	#photo .photo-box .main h2 {
		font-size: 2.4rem;
		right: 2rem;
		top: 1rem;
	}

	#photo .photo-box .main .slide-image {
		top: 10px;
		right: 80px;
	}

	#photo .photo-box .main .slide-image img {
		height: 64vw;
	}

	#photo .photo-box .main .slide-image .slick-dots {
		top: 64vw;
	}

	#photo .photo-box .main .txt {
		padding: 10px 0 0;
	}

	#photo .photo-box .main h3 {
		font-size: 1.8rem;
		letter-spacing: 2px;
	}

	#photo .photo-box .scene .flex {
		margin: 2rem 0;
		font-size: 1.6rem;
		letter-spacing: 2px;
		line-height: 1.8;
	}

	#photo .photo-box .scene .flex > figure {
		width: calc( ( 100% - 15px ) / 2 );
		margin-bottom: 15px;
		padding: 0;
		font-size: 1.5rem;
		letter-spacing: 0;
		white-space: nowrap;
	}

	#photo .photo-box .scene .flex img {
		width: 140px;
		margin-bottom: 0;
	}

	#photo .photo-box .plan-list-01 th span {
		font-size: 1.8rem;
	}

	#photo #photo-01 .notice {
		margin: 30px 0 0; 
	}

	#photo .photo-box .step {
		margin-top: 3rem;
		padding-bottom: 1rem;
	}

	#photo .photo-box .step-list {
		flex-direction: column;
		margin-top: 3rem;
	}

	#photo .photo-box .step-list > div {
		width: 100%;
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		margin-bottom: 30px;
	}

	#photo .photo-box .step-list > div::after {
		width: 1px;
		height: auto;
		display: block !important;
		top: 100px;
		bottom: 0;
		left: 45px;
	}

	#photo .photo-box .step-list figure {
		font-size: 1.4rem;
		letter-spacing: 2px;
		line-height: 1.5;
		width: 90px;
	}

	#photo .photo-box .step-list figure img {
		width: 50px;
	}

	#photo .photo-box .step-list .txt {
		width: calc( 100% - 90px );
	}

	#photo .photo-box .step-list .txt h4 {
		font-size: 1.6rem;
		margin-bottom: 1.5rem;
		text-align: left;
	}

	#photo .photo-box .step-list .txt p {
		letter-spacing: 2px;
	}

	#photo .bnr-box {
		margin-bottom: 4rem;
	}

	a.img-bnr.bnr-kawahara .jp {
		padding: 22px 5px 22px 15px;
	}

	a.img-bnr.bnr-kawahara .jp .note {
		font-size: 1.3rem;
		letter-spacing: 2px;
	}

	#photo .reservation-info {
		max-height: initial;
		margin-bottom: 1rem;
	}

	#photo #photo-02 .main h2 {
		line-height: 1.2;
		right: 1.5rem;
	}

	#photo #photo-03 {
		padding-bottom: 0;
	}

	#photo #photo-03 .ttl-bg .ttl-01 {
		width: auto;
	}

	#photo #photo-03 .ttl-bg .ttl-01 h2 {
		letter-spacing: 4px;
	}

	#photo #photo-03 .ttl-bg {
		margin-bottom: 2rem;
	}

	#photo #photo-03 .info {
		margin-bottom: 4rem;
	}

	.gallery figcaption {
		margin: 10px 0;
	}

	/* kawahara */

	#kawahara .main .image {
		height: calc( 100vh - 50px );
		height: calc( ( var( --vh ) * 100 ) - 50px );
		padding: 4rem 0 0;
		letter-spacing: 6px;
	}

	#kawahara .main .image .en {
		letter-spacing: 6px;
		font-size: 1.6rem;
	}

	#kawahara .main .image h2 {
		font-size: 3.2rem;
		letter-spacing: 12px;
		line-height: 1.5;
	}

	#kawahara .main .image .copy {
		right: 5%;
		font-size: 1.6rem;
		line-height: 1.5;
	}

	#kawahara .main .read {
		padding: 3rem 0;
	}

	#kawahara #sec-01 .info {
		margin: 3rem 0 1rem;
	}

	#kawahara #sec-01 .info .flex {
		flex-direction: column;
	}

	#kawahara #sec-01 .info .flex > div {
		width: 100%;
	}

	#kawahara #sec-01 .info figure {
		text-align: center;
	}

	#kawahara #sec-01 .info figure img {
		width: 280px;
	}

	#kawahara #sec-01 .info .txt {
		margin: 10px 0 30px;
	}

	#kawahara #sec-01 .info .txt h3 {
		text-align: center;
	}

	#kawahara #sec-01 .step-list {
		margin: 0;
	}

	#kawahara #sec-01 .step-list dt {
		font-size: 1.6rem;
		letter-spacing: 2px;
		line-height: 1.5;
		padding-left: 2.5rem;
	}

	#kawahara #sec-01 .step-list dd {
		padding-left: 2.5rem;
	}

	#kawahara .gallery-wrap .h-01 {
		margin: 4rem 0 2rem;
	}

	#kawahara #sec-02 .ttl-bg {
		margin-bottom: 2.5rem;
	}

	#kawahara #sec-02 .ttl-bg h2 {
		letter-spacing: 2px;
	}

	#kawahara #sec-02 .ttl-bg .en {
		letter-spacing: 4px;
	}

	#kawahara #sec-02 .info {
		padding: 0 0 3rem;
	}

	#kawahara #sec-02 .info h3 {
		font-size: 1.8rem;
		margin-bottom: 2rem;
	}

	#kawahara #sec-02 .point-list > div {
		padding-top: 60vw;
		margin-top: 3rem;
	}

	#kawahara #sec-02 .point-list > div::before,
	#kawahara #sec-02 .point-list > div:nth-child( even )::before {
		right: 0;
		bottom: auto;
		left: 0;
		height: 60vw;
	}

	#kawahara #sec-02 .point-list > div  > .wrap {
		padding: 0;
	}

	#kawahara #sec-02 .point-list .txt {
		margin-left: 0;
		padding: 30px 20px 0;
	}

	#kawahara #sec-02 .point-list > div:nth-child( even ) .txt {
		margin-right: 0;
		padding: 30px 20px 0;
	}

	#kawahara #sec-02 .point-list h4 {
		font-size: 1.8rem;
		padding-right: 6rem;
	}

	#kawahara #sec-02 .point-list .read {
		text-align: justify;
	}

	#kawahara #sec-02 .point-list .num-tb {
		font-size: 2.4rem;
		height: 90px;
	}

	#kawahara .bnr-box {
		padding: 4rem 0;
	}

	#kawahara .plan-box .ttl-bg {
		margin-bottom: 2rem;
	}

	#kawahara .plan-box .plan-list-01 th span {
		font-size: 1.8rem;
	}

	#kawahara .plan .notice {
		margin-top: 3rem;
	}

	#kawahara .flow-box {
		padding-bottom: 4rem;
	}

	#kawahara .flow-box .notice {
		margin-top: 4.5rem;
	}

	#kawahara .access-box {
		padding-bottom: 0
	}

	#kawahara .access-box .access {
		padding: 0;
	}

	#kawahara .access-box .access > .flex {
		flex-direction: column-reverse;
		position: relative;
		padding-bottom: 7rem;
		margin-bottom: 4rem;
	}

	#kawahara .access-box .map-wrap {
		width: 100%;
	}

	#kawahara .access-box .cont {
		width: 100%;
		padding: 0;
		margin-bottom: 1rem;
		position: static;
	}

	#kawahara .h-02 {
		font-size: 1.8rem;
	}

	#kawahara .access-box .cont .txt {
		font-size: 1.3rem;
	}

	#kawahara .access-box .cont .txt p {
		margin-bottom: 1rem;
	}

	#kawahara .access-box .cont .btn-01 {
		left: 0;
	}

	#kawahara .access-box .cont .btn-01 a {
		width: 100%;
	}

	#kawahara .access-box .access:first-child .map-wrap .map,
	#kawahara .access-box .access:last-child .map-wrap .map {
		padding-bottom: 200px;
	}

	/* topics */

	.post-list .post {
		margin-bottom: 30px;
	}

	.post-list .post > .flex {
		background: #fff;
		padding: 15px;
		position: relative;
	}

	.post-list .post > .flex > figure {
		width: 70%;
		text-align: center;
		margin: 0 auto 15px;
	}

	.post-list .post > .flex > .txt {
		width: 100%;
	}

	.post-list .post .txt > .flex {
		height: auto;
	}

	.post-list .post .txt .cont {
		padding: 0;
		position: static;
	}

	.post-list .post .txt .cont .flex {
		padding-right: 0;
	}

	.post-list .post .txt .cont .new {
		top: 5px;
		right: 10px;
	}

	#main-contents .post time {
		font-size: 1.2rem;
	}

	.post-list .post .txt .cont h2 {
		font-size: 1.8rem;
		white-space: normal;
	}

	.post-list .post .btn-01 {
		margin-top: 15px;
	}

	.post-list .post .btn-01 a {
		font-size: 1.6rem;
	}

	/* post-nav */

	.post-nav {
		padding: 0;
		margin: 0 0 30px;
	}

	.post-nav .prev,
	.post-nav .next {
		width: 100%;
		line-height: 1.6;
	}

	.post-nav .prev a {
		padding: 1.5rem 0 1.5rem 5.5rem;
		border-bottom: solid 1px #ccc;
	}

	.post-nav .next a {
		padding: 1.5rem 5.5rem 1.5rem 0;
	}

	.post-nav .prev::after {
		display: none;
	}

	.post-nav .back-link {
		width: 100%;
		text-align: center;
		margin-top: 15px;
	}

	#sidebar {
		padding: 15px 0 25px;
	}

	#sidebar h2 {
		font-size: 1.8rem;
		margin-bottom: 20px;
	}

	#sidebar h2 .en {
		font-size: 1.3rem;
	}

	#sidebar .rank-list {
		flex-direction: column;
		margin: 0 0 15px;
	}

	#sidebar .rank-list > a {
		width: 100%;
	}

	#sidebar .rank-list > a figure {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		align-items: center;
		margin-bottom: 15px;
	}

	#sidebar .rank-list figure > div {
		width: 100px;
		margin: 0;
	}

	#sidebar .rank-list figure > figcaption {
		width: calc( 100% - 100px );
		padding-left: 15px;
		font-size: 1.5rem;
	}

	#sidebar .rank-list a::before {
		width: 5rem;
		height: 5rem;
		padding: 5px 25px 5px 5px;
		font-size: 1.8rem;
	}

	.relation-post h2 {
		font-size: 1.8rem;
		padding: 10px;
	}

	.relation-post > .flex {
		padding: 0;
		margin-bottom: 10px;
		flex-direction: column;
	}

	.relation-post .flex .post {
		width: 100%;
	}

	.relation-post .flex .thumb a {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		align-items: center;
	}

	.relation-post .flex .thumb a > div {
		width: 100px;
		margin: 0;
	}

	.relation-post .flex .thumb a > figcaption {
		width: calc( 100% - 100px );
		padding-left: 15px;
		font-size: 1.5rem;
	}

	.single #main-contents > .post {
		padding: 15px;
	}

	.post .post-header > .flex {
		margin-bottom: 0;
	}

	.post .post-header h2 {
		font-size: 2rem;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

	#ez-toc-container .ez-toc-title {
		margin: 0 0 15px;
		font-size: 1.8rem;
	}

	#ez-toc-container .ez-toc-title::after {
		font-size: 1.2rem;
	}

	#ez-toc-container .ez-toc-list-level-1 {
		padding: 15px;
	}

	#ez-toc-container.counter-flat ul,
	#ez-toc-container.counter-hierarchy ul,
	.ez-toc-widget-container.counter-flat ul,
	.ez-toc-widget-container.counter-hierarchy ul {
		margin: 0 0 0 15px;
	}

	#ez-toc-container.counter-decimal ul.ez-toc-list li a::before,
	.ez-toc-widget-container.counter-decimal ul.ez-toc-list li a::before,
	#ez-toc-container.counter-decimal ul.ez-toc-list li li a::before,
	.ez-toc-widget-container.counter-decimal ul.ez-toc-list li li a::before {
		font-size: 1.5rem;
		margin-right: 1rem;
	}

	#ez-toc-container a,
	#ez-toc-container li ul a {
		font-size: 1.3rem;
		letter-spacing: 1px;
	}

	.post-contents h2 {
		font-size: 1.8rem;
	}

	.post-contents h3 {
		font-size: 1.7rem;
		padding: 15px 0;
		margin: 0 0 20px;
	}

	.post-contents h4 {
		margin: 0 0 20px;
		font-size: 1.6rem;
		padding-left: 35px;
	}

	.post-contents h4::before {
		width: 20px;
	}

	.post-contents h5 {
		font-size: 1.5rem;
		margin: 0 0 15px;
	}

	.post-contents h6 {
		font-size: 1.5rem;
		margin: 0 0 15px;
	}

	.post-contents p {
		margin: 0 0 20px;
		font-size: 1.3rem;
	}

	.post-contents ul,
	.post-contents ol {
		margin: 0 0 20px;
		font-size: 1.3rem;
	}

	.post-contents img.alignright,
	.post-contents img.alignleft {
		display: block;
		float: none;
		text-align: center;
		margin: 0 auto 20px;
	}

	.post-contents blockquote {
		margin: 30px 0 20px;
		padding: 30px 15px;
	}

	.post-contents blockquote::before {
		left: 15px;
	}

	.post-contents table {
		margin: 0 -5px 20px;
		font-size: 1.3rem;
		width: calc( 100% + 10px ) !important;
	}

	.post-contents table th,
	.post-contents table td {
		padding: 10px;
	}

	.single #main-contents .shere-btn {
		padding: 0;
		margin-top: 30px;
	}

	.single #main-contents .shere-btn .flex {
		justify-content: center;
		flex-direction: column;
		padding: 20px 0 5px;
	}

	.single #main-contents .shere-btn h3 {
		margin: 0 0 10px;
		font-size: 1.6rem;
	}

	.single .addtoany_list a,
	.single .widget .addtoany_list a {
		margin: 0 10px;
	}

	.single .addtoany_list a:not(.addtoany_special_service) > span {
		width: 36px !important;
		height: 36px !important;
	}

	.author-box {
		padding: 40px 15px 15px;
	}

	.author-box h3 {
		right: 30px;
		left: 30px;
		text-align: center;
		padding: 2px;
		white-space: nowrap;
	}

	.author-wrap {
		padding: 30px 15px 15px;
	}

	.author-wrap > .flex {
		flex-direction: column;
	}

	.author-box .flex > figure {
		width: 70%;
		margin-bottom: 15px;
	}

	.author-box .flex > figure + .txt {
		width: 100%;
		padding: 0;
		margin-bottom: 15px;
	}

	.author-box .flex > .txt > .flex {
		min-height: initial;
	}

	.author-box .flex > .txt > .flex .info {
		padding: 0;
		text-align: center;
		font-size: 1.3rem;

	}

	.author-box h4 {
		font-size: 1.8rem;
	}

	.author-box .btn-set > .flex {
		justify-content: center;
	}

	.author-box .sns .flex > * {
		margin: 0 5px;
	}

	.author-box .flex .read {
		width: 100%;
		padding: 0;
		letter-spacing: 1px;
	}

	/* about */

	#about .page-ttl h2,
	#contact .page-ttl h2 {
		font-size: 3rem;
	}

	#about .c-ttl,
	#contact .c-ttl {
		padding: 35px 20px;
		margin-bottom: 15px;
	}

	#about .c-ttl__inner,
	#contact .c-ttl__inner {
		min-width: auto;
		padding: 20px 30px;
	}

	#about .c-ttl__inner .ttl,
	#contact .c-ttl__inner .ttl {
		font-size: 2rem;
	}

	#about .c-ttl__inner .en,
	#contact .c-ttl__inner .en {
		font-size: 1rem;
	}

	#about .about-overview-ttl{
		width: 220px;
		margin: 35px auto 30px;
		font-size: 2rem;
		background: url( ../img/about/overview_ttl_bg.png ) center / 200px no-repeat;
	}

	#about #about-point .c-ttl{
	margin-bottom: 0;
	}


	#about .about-overview-important{
		padding: 0;
		background: url( ../img/about/overview-important_bg.png )center right / cover no-repeat;
	}

	#about .about-overview-important .wrap{
		padding: 0;
	}

	#about .about-overview-important__item{
		position: relative;
		width: 100%;
		height: auto;
		padding: 60px 20px;
		background: rgba(206,175,80,0.7);

	}

	#about .about-overview-important__item-ttl{
		font-size: 2rem;
		margin: 0 0 35px;
	}

	#about .about-overview-important__item-text{
		font-size: 12px;
	}

	#about .about-shop-access{
		display: block;
	}

	#about .about-point-ttl{
		margin-bottom: 0;
	}

	#about .about-point-item{
		display: block;
		margin-bottom: 25px;
	}

	#about .about-point-item__img{
		height: 55vw;
	}

	#about .about-point-item__contents-num{
		width: calc(55px/2);
		height: calc(134px/2);
		margin-bottom: 20px;
	}

	#about .about-point-item:last-child{
		margin-bottom: 50px;
	}

	#about .about-point-item:nth-child(even) .about-point-item__contents-num{
		margin-left: 0;
	}

	#about .about-point-item__contents-ttl{
		font-size: 1.8rem;
		letter-spacing: 5px;
		padding-bottom: 7.5px;
	}

	#about .about-point-item__contents-text{
		padding: 15px 0 10px 14px;
		font-size: 12px;
	}

	#about .about-bridal-text{
		padding: 0;
		font-size: 12px;
		margin: 0 0 30px;
	}

	#about .about-bridal-recommend{
		display: block;
	}

	/*
	#about .about-bridal-recommend__costume-item::after{
		display: block;
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 15px 0 15px;
		border-color: rgba(233,225,148,0.85) transparent transparent transparent;
		line-height: 0px;
		margin: 30px auto 10px;
	}

	#about .about-bridal-recommend__costume-item:last-child::after{
		display: none;
	}

	#about .about-bridal-recommend__costume{
		display: block;
	}
	*/

	#about .about-bridal-recommend__costume-img::after{
		right: -29px;
	}

	#about .about-bridal-recommend__costume-item{
		width: 100%;
		padding: 0 30px 0 10px;
	}

	#about .about-bridal-recommend__costume-img{
		height: 110vw;
	}

	#about .about-bridal-recommend__costume-ttl01,#about .about-bridal-recommend__costume-ttl02{
		font-size: 15px;
	}

	#about .about-bridal-recommend__costume-ttl01{
		padding: 7.5px 0;
		margin-bottom: 10px;
	}

	#about .about-bridal-recommend__costume-ttl02{
		padding: 12.5px 0 0 0;
	}

	#about .about-bridal-recommend__text{
		margin: 20px 0 35px;
		font-size: 12px;
	}

	#about .bnr-box {
		margin-bottom: 50px;
	}

	#about .about-bridal-link{
		display: block;
		margin-bottom: 50px;
	}

	#about .about-bridal-link__item{
		margin-bottom: 10px;
		height: auto;
	}

	#about .about-bridal-link__item-ttl .ja{
		width: 250px;
		font-size: 2rem;
		margin: 35px auto 50px;
		height: auto;
		padding: 20px 0;
	}

	#about .slick-slide{
		width: 75vw;
		height: 25vh;
	}

	#about #slick3 .slick-slide,#about #slick4 .slick-slide,#about #slick5 .slick-slide{
		width: 80vw;
		height: auto;
	}

	#about .slider_prev,#about .slider_next{
		width: 25px;
		height: 50px;
	}

	#about .about-shop-slider__content{
		margin-bottom: 10px;
	}

	#about .about-shop-slider__dots{
		margin-bottom: 50px;
	}

	#about .about-shop-slider__text{
		padding-bottom: 10px;
		font-size: 12px;
		margin-bottom: 0;
	}

	#about .about-shop-access{
		margin-bottom: 50px;
	}

	#about .about-shop-access__map iframe{
		height: 45vw;
	}

	#about .about-shop-access__ttl{
		display: block;
		padding: 10px 0 10px 15px;
	}

	#about .about-shop-access__ttl .ja{
		display: block;
		margin: 0;
	}

	#about .about-shop-access__ttl .en{
		display: block;
	}

	#about .about-shop-access__address{
		margin: 15px 0 30px;
		padding-left: 15px;
		font-size: 12px;
	}

	#about .about-shop-access__address-street{
		margin: 10px 0 25px;
	}

	#about .about-shop-access__btn a{
		max-width: 100%;
		font-size: 1.4rem;
		padding: 11px;
		height: auto;
		margin: 0 auto;
	}

	#about .about-shop-access__btn a::after{
		right: 20px;
		background: url(../img/sp/arrow-04.png ) center / cover no-repeat;
		width: 8px;
		height: 14px;
	}

	#about .about-shop-access__btn a:hover::after{
		right: 15px;
	}

	/* contact */

	#contact .contact-flow {
		padding: 64px 0;
	}

	#contact .contact-flow__ttl {
		font-size: 20px;
		margin-bottom: 30px;
	}

	#contact .contact-flow__lead {
		font-size: 13px;
		margin-bottom: 30px;
	}

	#contact .contact-flow__btn::after {
		width: 10px;
		height: 10px;
		right: 30px;
	}

	#contact .contact-flow__btn button {
		font-size: 16px;
		padding: 11px;
	}

	#contact .contact-flow__list-inner {
		display: block;
		margin-right: 0;
		padding-top: 30px;
	}

	#contact .contact-flow-item {
		max-width: none;
		margin-right: 0;
	}

	#contact .contact-flow-item:not(:last-child) {
		margin-bottom: 30px;
	}

	#contact .contact-flow-item:not(:last-child)::after {
		content: none;
	}

	#contact .contact-flow-item__icon {
		margin-bottom: 0;
	}

	#contact .contact-flow-item__step {
		font-size: 16px;
		margin-bottom: 12px;
	}

	#contact .contact-flow-item__body {
		padding: 26px;
	}

	#contact .contact-flow-item__ttl {
		font-size: 17px;
		margin-bottom: 17px;
		height: auto;
	}

	#contact .contact-flow-item__desc {
		font-size: 13px;
		line-height: 2.0;
	}

	#contact .contact-tel {
		padding: 64px 0;
	}

	#contact .contact-tel__ttl {
		font-size: 22px;
		margin-bottom: 30px;
	}

	#contact .contact-tel__lead {
		font-size: 13px;
		margin-bottom: 30px;
	}

	#contact .contact-tel-block__icon {
		margin-right: 20px;
	}

	#contact .contact-tel-block__icon img {
		width: 50px;
	}

	#contact .contact-tel-block__telnumber {
		font-size: 29px;
	}

	#contact .contact-tel-block__open {
		font-size: 18px;
	}

	#contact .contact-mail {
		padding-bottom: 80px;
	}

	#contact .contact-mail-ttl {
		margin-bottom: 30px;
	}

	#contact .contact-mail-ttl__inner .ttl {
		letter-spacing: 7px;
	}

	#contact .contact-attention {
		margin-bottom: 40px;
	}

	#contact .contact-attention__title {
		max-width: 250px;
		font-size: 16px;
		padding: 8px;
	}

	#contact .contact-attention__list {
		margin-top: -24px;
		padding: 40px 15px 20px;
	}

	#contact .contact-attention__item {
		font-size: 13px;
	}

	#contact .contact-attention__item:not(:last-child) {
		margin-bottom: 13px;
	}

	#contact .contact-step__step {
		font-size: 13px;
		margin-bottom: 8px;
	}

	#contact .contact-step__title {
		font-size: 16px;
	}

	#contact .contact-mail__form-ttl {
		font-size: 17px;
	}

	#contact .contact-mail__form-ttl {
		margin-bottom: 9px;
	}

	#contact .contact-required {
		line-height: 1.8;
		font-size: 12px;
	}

	#contact .contact-form__row {
		padding: 21px 10px 24px;
	}

	#contact .contact-form__name {
		letter-spacing: .2em;
		font-size: 18px;
	}

	#contact .contact-form__name .note {
		display: inline-block;
		font-size: 1.2rem;
		letter-spacing: .5px;
		margin-left: 5px;
		transform: translateY( -1px );
	}

	#contact .contact-form-hope {
		display: block;
		padding-right: 0;
	}

	#contact .contact-form-hope__title {
		padding-left: 0;
		font-size: 16px;
		margin-bottom: 5px;
		letter-spacing: .2em;
	}

	#contact .contact-form-hope__date {
		margin-right: 0;
		margin-bottom: 10px;
	}

	#contact .pp-box-title {
		max-width: 290px;
		font-size: 16px;
		padding: 8px;
		letter-spacing: .2em;
	}

	#contact .pp-box {
		margin-top: -20px;
		padding-top: 37px;
	}

	#contact .submit-box .agree {
		padding-right: 0;
		display: block;
	}

	#contact .submit-box .agree .mfp_err {
		padding-left: 0;
	}

	#contact .submit-box .agree .contact-required {
		margin-bottom: 9px;
	}

	#contact .submit-box label {
		font-size: 13px;
	}

	#contact .submit-box label {
		margin-left: 0 !important;
		padding-left: 50px;
	}

	#contact #confirm {
		font-size: 17px;
	}

	#contact .submit-box__confirm::before {
		width: 30px;
		height: 30px;
		left: 16px;
	}

	#contact .submit-box__confirm::after {
		right: 29px;
	}

	#contact .remaining {
		right: 0;
		left: 0;
		bottom: 0px;
		display: block;
	}

	#contact .remaining .read {
		display: none;
	}

	#contact table#mfp_confirm_table {
		margin: 20px 0 0;
	}

	#contact table#mfp_confirm_table tr {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#contact table#mfp_confirm_table tr th {
		width: 100%;
		padding: 10px 15px;
	}

	#contact div#mfp_phase_confirm h4 {
		font-size: 2.5rem;
	}

	#contact .contact-thanks__title {
		font-size: 19px;
	}

	/* access */

	#access .page-ttl h2{
		font-size: 3rem;
	}

	#access #access-overview{
		margin: 45px 0 70px;
	}

	#access .access-overview__ttl{
		font-size: 2rem;
	}

	#access .access-overview__info{
		display: block;
		margin: 40px auto 25px;
	}

	#access .access-overview__info-logo{
		text-align: center;
		width: 80%;
		margin: 0 auto 30px;
	}

	#access .access-overview__info-address{
		text-align: center;
	}

	#access .access-overview__info-address .zip{
		margin-bottom: 10px;
	}

	#access .access-overview__map{
		height: 40vw;
	}

	#access .access-traffi__ttl{
		margin-bottom: 25px;
	}

	#access .access-traffi__ttl .ja{
		font-size: 1.8rem;
		margin-bottom: 7.5px;
	}

	#access .access-traffi__ttl .en{
		font-size: 1.2rem;
	}

	#access .access-traffic-contents__inner{
		margin: 15px 0 40px;
		display: block;
	}

	#access .access-traffic-contents__ttl2{
		text-align: center;
		font-size: 1.6rem;
	}

	#access .access-traffic-contents__inner._car{
		margin: 10px 0 40px;
	}

	#access .access-traffic-contents__parking-ttl01{
		width: 250px;
	}

	#access .access-traffic-contents__item{
		position: relative;
		margin-bottom: 40px;
		display: grid;
		grid-template-columns: 4rem 1fr;
		grid-template-rows: auto;
		grid-template-areas:
			"img img"
			"num text";
		grid-gap: 10px 15px;
	}

	#access .access-traffic-contents__item::after{
		position: absolute;
		bottom: -35px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		display: block;
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 15px 15px 0 15px;
		border-color: rgba(233,225,148,0.85) transparent transparent transparent;
		line-height: 0px;
		margin: 30px auto 10px;
	}

	#access .access-traffic-contents__item:last-child::after{
		display: none;
	}

	#access .access-traffic-contents__item-img{
		grid-area: img;
		height: 55vw;
	}

	#access .access-traffic-contents__item-img::after{
		display: none;
	}

	#access .access-traffic-contents__item-num{
		display: block;
		grid-area: num;
		margin: 5px 0 0;
		font-size: 1.6rem;
	}

	#access .access-traffic-contents__item-text{
		grid-area: text;
		padding: 0 10px 15px 0;
		font-size: 1.2rem;
	}

	#access .access-traffic-contents__parking{
		margin: 50px 0 45px;
		padding: 45px 30px 30px;
	}

	#access .access-traffic-contents__parking-ttl02{
		font-size: 1.6rem;
		margin-bottom: 7.5px;
	}

	#access .access-traffic-contents__parking-text{
		font-size: 1.2rem;
	}

	#not-found .post-contents {
		padding: 15px 15px 5px;
	}

}


/*
----------------------------------------
420
----------------------------------------
*/

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

	#home .topics-box .topics-list li a {
		font-size: 1rem;
	}

	footer .bottom-menu .sitemap .flex li {
		padding-left: 1rem;
	}

	footer .bottom-menu .address-wrap .address {
		font-size: 1rem;
	}

	footer .bottom-menu .sitemap .flex a {
		font-size: 1.1rem;
	}

	footer .bottom-menu .sitemap .flex dd a {
		font-size: 1.1rem;
	}

}


/*
----------------------------------------
height 900 width 769
----------------------------------------
*/

@media screen and ( max-height: 900px ) and ( min-width: 769px ) {

	.ttl-01 {
		margin-bottom: 2rem;
	}

	#home #main-img .box .copy {
		margin-bottom: 40px;
	}

	#home #main-img .box .copy img {
		width: 35vh;
	}

	#home .info-box .read .flex .ttl {
		height: 50vh;
		height: calc( var( --vh ) * 50 );
		padding: 60px 120px 0 0;
	}

	#home .info-box .read .flex .txt {
		padding: 7vh 8vw 0 0;
	}

	#home .info-box .welcome a > .flex {
		height: 55vh;
		height: calc( var( --vh ) * 50 );
	}

	#home .info-box .welcome .ttl > span {
		padding: 30px;
	}

	#home .info-box .welcome .ttl > span img {
		width: 20px;
	}

	#home .bridal-list.list-01 .bridal a {
		height: 35vh;
		height: calc( var( --vh ) * 35 );
	}

	#home .bridal-list.list-01 .bridal a .ttl {
		padding: 20px;
		margin-bottom: 15px;
	}

	#home .bridal-list .bridal a .ttl, #home .event-list .event a .ttl {
		padding: 15px;
	}

	#home .photo-wedding-box .txt .read {
		padding: 0 30px;
		line-height: 2.5;
	}

	#home .topics-box .wrap > .flex {
		padding: 60px 0;
	}

	#home .topics-box .wrap > .flex > div > .flex {
		height: auto;
	}

	#home .topics-box .h-02 {
		margin-bottom: 40px;
	}

	#home .topics-box .btn-01 {
		margin-top: 40px;
	}

	.reservation .ttl > span {
		padding: 30px;
	}

	.reservation .ttl > span img {
		width: 60px;
	}

	.reservation-info h2 {
		font-size: 2rem;
		margin: 0 0 2rem;
	}

	.reservation-info strong {
		font-size: 1.6rem;
		margin-bottom: 2rem;
	}

	#g-nav li .sub-menu > .wrap {
		max-width: 1000px;
	}

	#g-nav .sub-menu .ttl {
		margin-bottom: 20px;
	}

	#g-nav .sub-menu a {
		height: 180px;
	}

	#g-nav .sub-menu a span {
		font-size: 2.4rem;
	}

	/* bridal */

	.main-info-txt {
		margin: auto 0;
	}

	.main-info-txt .ttl {
		font-size: 6rem;
	}

	#dress .main-info-txt .ttl,
	#guest .main-info-txt .ttl {
		letter-spacing: 10px;
	}

	.main-info-txt .read {
		line-height: 2.5;
	}

	.bridal.single.page #modal .cont .txt {
		padding: 0;
	}

	.bridal.single.page nav.page-nav {
		margin-top: 2rem;
	}

	.bridal.single.page .main .wrap > .flex {
		padding: 4rem 0;
		flex-direction: column;
		flex-wrap: nowrap;
		min-height: 550px;
	}

	.bridal.single.page #modal .wrap {
		right: calc( 50% - 60vh );
		left: calc( 50% - 60vh );
		max-height: calc( 100vh - 40px );
	}

	.bridal.single.page #modal .cont h3 {
		font-size: 2.2rem;
	}

	.bridal.single.page #modal .cont .ttl {
		margin-bottom: 2rem;
	}

	.bridal.single.page #modal .details p {
		font-size: 1.3rem;
		padding: 1rem 0;
	}

	.bridal.single.page #modal .details::before,
	.bridal.single.page #modal .details p::after {
		display: none;
	}

	/* kawahara */

	#kawahara .main .image .en {
		font-size: 2rem;
	}

	#kawahara .main .image h2 {
		font-size: 6rem;
	}

	#kawahara .main .image .copy {
		top: 30%;
		font-size: 2rem;
		letter-spacing: 8px;
	}

	/* photo */

	#photo .photo-box .main .wrap {
		height: 88vh;
		height: calc( var( --vh ) * 88 );
	}

	#photo .photo-box .main .slide-image img {
		max-height: calc( 88vh - 40px );
		max-height: calc( ( var( --vh ) * 88 ) - 40px );
	}

}


/*
----------------------------------------
min-height 800 with 769
----------------------------------------
*/

@media screen and ( min-height: 800px ) and ( min-width: 769px ) {

	#home .info-box .read .flex .ttl h3 {
		font-size: 1.8rem;
	}

	#home .info-box .read .flex .txt p {
		font-size: 1.4rem;
	}

}


/*
----------------------------------------
height 720 with 769
----------------------------------------
*/

@media screen and ( max-height: 720px ) and ( min-width: 769px ) {

	/* bridal */

	.bridal.single.page .main-info-txt .ttl {
		position: relative;
		left: 0;
		font-size: 6rem;
		letter-spacing: 10px;
		white-space: nowrap;
		text-align: left;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		margin: auto 0 2rem;
	}

	.bridal.single.page .main-info-txt .txt {
		margin-right: 0;
	}

	.main-info-txt .txt .copy {
		font-size: 2.4rem;
		line-height: 1.8;
		padding: 0 0 2rem 0;
		margin-bottom: 2.5rem;
	}

}


/*
----------------------------------------
height 666 with 769
----------------------------------------
*/

@media screen and ( max-height: 666px ) and ( min-width: 769px ) {

	#home .info-box .read .flex .ttl h3 {
		font-size: 1.3rem;
	}

	#home .info-box .read .flex .txt p {
		margin-top: 20px;
		font-size: 1.1rem;
	}

	#home .info-box .read .flex .txt p:nth-child( 2 ) {
		margin-top: 45px;
	}

	#home .info-box .read .flex .txt p:nth-child( 3 ) {
		margin-top: 70px;
	}

	#home .bridal-list .bridal a .ttl img,
	#home .event-list .event a .ttl img {
		width: 100px;
		height: 100px;
	}

	#home .bridal-list .bridal a .en,
	#home .event-list .event a .en {
		font-size: 1.2rem;
	}

	#home .event-box > .flex {
		padding: 20px 0;
	}

	#home .event-list {
		margin-top: 0;
	}

	#home .photo-wedding-box .txt .read {
		padding: 0 20px 15px;
		font-size: 1.1rem;
	}

	#home .topics-box .wrap > .flex {
		padding: 20px 0;
	}

	#home .topics-box .topics-list li a {
		padding: 38px 42px 38px 0;
	}

	#home .topics-box .access .ttl {
		margin-bottom: 20px;
	}

	#home .topics-box .btn-01 {
		margin-top: 30px;
	}

	.reservation .ttl > span img {
		width: 30px;
	}

	/* bridal */

	.main-info-txt {
		margin: 0;
	}

	.main-info-txt .ttl {
		font-size: 3.5rem;
		text-align: left;
		line-height: 1.4;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		margin: auto 0 1rem;
	}

	.main-info-txt .txt .copy {
		font-size: 2rem;
	}

	/* event */

	#event .main-info-txt .ttl {
		position: relative;
		left: 0;
		font-size: 6rem;
		letter-spacing: 10px;
		white-space: nowrap;
		text-align: left;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		margin: auto 0 2rem;
	}

	#event .main-info-txt .txt {
		margin-right: 0;
	}

}

/*
----------------------------------------
height 666
----------------------------------------
*/

@media screen and ( max-height: 666px ) {

	#home .info-box .welcome .ttl > span {
		margin-bottom: 15px;
	}

	#home .info-box .welcome .ttl > span img {
		width: 12px;
	}

	#home .topics-box .h-02 {
		margin-bottom: 15px;
	}

	#home .topics-box .topics-list {
		max-height: 70px;
		overflow: auto;
	}

	#home .topics-box .btn-01 {
		margin-top: 10px;
	}

	#home .topics-box .access .ttl .logo {
		margin-bottom: 0;
	}

	#home .topics-box .access .map {
		padding-bottom: 24vh;
		padding-bottom: calc( var( --vh ) * 24 );
	}

	.reservation .ttl > span img {
		width: 30px;
	}

	.main-info-txt .ttl {
		font-size: 3.6rem;
	}

	.main-info-txt .txt .copy {
		letter-spacing: 0;
	}

}
