@charset "utf-8";

body {
	overflow: hidden;
}
input,
button,
textarea,
select,
label {
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	outline: none;
	background: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.solo_wedding footer {
	background: #fff;
}
.solo_wedding .solo_main {
	font-size: 14px;
	line-height: 2em;
	letter-spacing: 2px;
	color: #040404;
}

a:hover {
	opacity: 0.7;
}

/* アニメーション */
.fade_up {
	transition: all 1s;
	-webkit-transform: translate3d(0, 50%, 0);
	transform: translate3d(0, 50%, 0);
	opacity: 0;
}
.fade_up.scrollin {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	opacity: 1;
}
.fade_left {
	transition: all 1s;
	-webkit-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
	opacity: 0;
}
.fade_left.scrollin {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	opacity: 1;
}
.fade_right {
	transition: all 1s;
	-webkit-transform: translate3d(50%, 0, 0);
	transform: translate3d(50%, 0, 0);
	opacity: 0;
}
.fade_right.scrollin {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	opacity: 1;
}

/* -----------------------
メイン画像
----------------------- */
.solo_wedding main {
	width: 100%;
	margin: 0 auto;
	padding-top: 22px;
}
.solo_head {
	position: relative;
	z-index: -1;
	width: 100%;
	animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.solo_head .solo_head_img {
	position: fixed;
	z-index: -1;
	overflow: hidden;
	width: 100%;
}
.solo_head .solo_head_img img {
	z-index: -1;
	width: 100%;
	animation: rotate 1s ease-out 0s 1 reverse forwards ;
}
@keyframes rotate {
	100% {
		transform: rotate(3deg);
	}
}

/* -----------------------
メインカラム
----------------------- */
.solo_main {
	position: relative;
	margin: 20vw auto 0;
	background: #fff;
}
.solo_main .solo_head_title {
	position: absolute;
	top: -55px;
	right: 1300px;
	left: 0;
}

/* -----共通----- */
.section {
	padding: 120px 0 70px;
}
.section h2 img {
	max-height: 38px;
	height: auto;
	width: auto;
}
.section h2 span {
	display: block;
	color: #555;
	font-size: 12px;
}
.section .sub_text {
	width: 70%;
	margin: 40px auto 0;
}
.btn_box {
	padding: 50px 0;
}
.btn_box p {
	display: inline-block;
	width: 20%;
	min-width: 240px;
}
.btn_box p a {
	padding: 15px 8%;
	display: block;
	position: relative;
	font-size: 16px;
	font-weight: bold;
}
.btn_box .contact a {
	background: #d91b40;
	color: #fff;
	border: 1px solid #d91b40;
}
.btn_box .contact a:hover {
	background: #fff;
	color: #d91b40;
}
.btn_box p a:before {
	position: absolute;
	top: 0;
	right: 4%;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	content: "";
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

/*------------------------
 cta_area
-----------------------------*/
.cta_area {
    margin: 15px auto;
    width: 90%;
    max-width: 500px;
    display: flex;
    justify-content: space-between;
}
.cta_area div {
    border: 1px solid #c52e43;
    border-radius: 5px;
    overflow: hidden;
    display: flex;
}
.cta_area div > a,
.cta_area div > span {
    display: block;
    width: 100%;
    cursor: pointer;
}
.cta_area div > a:hover {
    opacity: 0.7;
}
.cta_area .tel {
    width: 25%;
    font-size: 120%;
}
.cta_area .tel a,
.cta_area .tel span {
    color: #c52e43;
    padding: 41px 10px 0;
    font-size: 14px;
    background: url(../images/cta_icon_tel.png) center 10px / 30px auto no-repeat;
}
.cta_area .form {
    width: 70%;
}
.cta_area .form a {
    color: #fff;
    font-size: 12px;
    background: #c52e43;
    position: relative;
}
.cta_area .form a > span {
    background: url(../images/cta_icon_calender.png) left center / 40px auto no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    padding: 4px 0 0 50px;
    white-space: nowrap;
}
.cta_area .form a span span {
    display: block;
    font-size: 170%;
}
/* -- pamphlet_btn -- */
.pamphlet_btn {
    margin: 15px auto 70px;
    max-width: 500px;
}
.pamphlet_btn img {
    margin-top: -5px;
    position: absolute;
    margin-left: -55px;
    width: 37px;
    height: auto;
}
.pamphlet_btn {
    margin: 15px auto 50px;
    max-width: 500px;
}
.pamphlet_btn a {
    background: #3bc538;
    color: #fff;
    font-size: 18px;
    position: relative;
    display: block;
    box-sizing: border-box;
    padding: 20px 0;
    cursor: pointer;
    -webkit-transition: none;
    transition: none;
    border-radius: 5px;
}
.pamphlet_btn a:hover {
    opacity: 0.7;
}
/*---------------
bg_title
---------------*/
.bg_title {
	width: 100%;
	 background-image: url(../images/bg_title.webp);
	 background-size: 100% auto;
	 background-repeat: no-repeat;
	 background-position: bottom left;
	 position: relative;
	 padding-bottom:10%
}
/*---------------
what & why
---------------*/
.what_why {
	overflow: hidden;
}
#what.what_why {
	background: url(../images/what01_bg.webp) no-repeat center left;
	background-size: cover;
}
#why.what_why {
	background: url(../images/why02_bg.webp) no-repeat center right;
	background-size: cover;
}
#whad.what_why {
	background: url(../images/wha03_bg.webp) no-repeat center left;
	background-size: cover;
}
.box_right .what_why_inner {
	float: right;
	margin: 0 10% 0 0;
}
.box_left .what_why_inner {
	float: left;
	margin: 0 0 0 20%;
}
.what_why_inner {
	width: 30%;
	padding: 200px 0;
	text-align: left;
}
.what_why_inner h2 {
	color: #555;
	font-size: 12px;
}
.what_why_inner h2 img {
	height: auto;
	width: auto;
}
.what_why_inner h2 span {
	display: block;
}
.what_why_inner h2 span:before {
	content: "――――――";
	letter-spacing: -3px;
	margin: 0 8px 0 0;
}
/*---------------
 campaign
---------------*/
#campaign {
	margin-bottom: 10%;
}
div.campaign {
    width: 80%;
    margin: 0 auto 10%;
}
/*---------------
  plan
---------------*/
div#plan {
    position: relative;
}
.top {
    background-image: url(../images/back-present.webp);
    width: 100vw;
    height: 20vw;
    background-size: 40vw;
    background-position: 31vw;
    background-repeat: no-repeat;
    position: relative;
    margin: 0 auto;
   }
h4.intro {
    font-size: 20px;
}
span.intro {
    font-size: 20px;
}
.plan-outer,.oneday,.ceremony_photo {
    width: 95%;
    margin: 5% auto 0;
}
ul.plan-item_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 2%;
}
ul.plan-item_list li {
    width: 38%;
    margin: 0 1%;
}
ul.plan-item_list p {
    font-size: 10px;
}
.oneday ul.plan-item_list li,
.ceremony_photo ul.plan-item_list li {
    width: 40%;
}
#plan h3 {
    color: #d91c40;
    font-size: 200%;
    position: relative;
    margin: 0 auto 5%;
}
#plan .sub_txt {
    margin-bottom: 20px;
}

/*---------------
センター画像とタイトル
---------------*/
.bg-outer {
	margin: 0 auto;
	width: 100%;
	margin-top: 200px;
}
#wedding.wedding_option {
	margin: 0 auto;
	width: 100%;
}
#wedding .wedding-title{
background-size: cover;
background-repeat: no-repeat;
position: relative;
}
.h3-title img{
	width:84%;
}
#gallery6 .gallery6-title {
  width: 100vw;
  height: 5.5vw;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
#gallery6 .gallery6-title img{
max-width: 50%;
height: auto;
display: block;
margin: 0 auto;
padding-top: 100px;
}
.gallery6-title .h3-title {
  text-align: center;
}
.gallery6_img {
  width: 800px;
  margin: 100px auto;
  display: block;
}
#dress_gallery_slided .dress_gallery6 {
	width: 800px;
  margin: 10px auto;
  display: block;
}
.dress_gallery6 .h3-title img{
	max-width: 50%;
	height: auto;
	display: block;
	margin: 0 auto;
	padding-top: 100px;
}
#wedding_voise {
	margin: 30px auto;
	width: 100%;
}
.bg-outer {
	margin-top:170px;
}
/*-----------------------------------
more_btn
-----------------------------------*/

.more_btn_container {
  text-align: center; /* コンテナ内の要素を中央寄せ */
	margin-top: 70px;
}
.more_button {
  display: inline-block;
  width: 150px;
  padding: 20px 20px;
  font-size: 16px;
  border: none;
  background-color: #eddeda;
  color:#1b0904;
  cursor: pointer;
  text-align: center;
  margin-bottom: 10px;
}
.more_text {
  display: block;
  color: #333;
	margin-bottom: 25px;
}
.dress_list ul li {
    width: 24%;
    position: relative;
    margin: 15px 0 0 1%;
}
/*------------------------
dress_list
------------------------*/
.dress_list {
 margin: 50px auto 0;
 width: 90%;
 max-width: 1200px;
 padding-bottom: 70px;
}
.dress_list.second {
    margin: 0 auto;
}
.dress_list ul {
	display: flex;
flex-wrap: wrap;
padding: 0;
list-style: none;
margin: 0;
justify-content: space-between;
}
.dress_list ul li {
	width: 32%;
 position: relative;
 margin-top: 15px;
 box-sizing: border-box;
}
.dress_list ul li p {
	position: absolute;
	z-index: 1;
    top: 10px;
    left: 10px;
	width: 58px;
    height: 58px;
}
.dress_list .premerline:before {
    position: absolute;
    content: "";
    width: 58px;
    height: 58px;
    background: url(../images/dress/icon_premerline.png) center center / contain no-repeat;
    z-index: 1;
    top: 10px;
    left: 10px;
}
.slick-slide img.premerline:before {
    position: absolute;
    content: "";
    width: 58px;
    height: 58px;
    background: url(../images/dress/icon_premerline.png) center center / contain no-repeat;
    z-index: 1;
    top: 10px;
    left: 10px;
}
.list_loading {
  display: none;
	overflow: auto;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.5);
}
.list_loading img {
    position: fixed;
    z-index: 6020;
    top: 50%;
    right: 0;
    left: 0;
    width: 50px;
    height: 50px;
    margin: -25px auto 0;
}

/*-----------------------------------
wp
------------------------*/
.news-box{
	display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.news-box h5{
	font-weight: 600;
	font-size: 16px;
}
.tabs-box .minbox .data {
    text-align: left;
    line-height: 1.5;
    font-size: 140%;
    margin-bottom: 10px;
}
.minbox .item-3th{
	list-style-type: none;
             padding: 0;
             margin: 0;
             background-color: #f0f0f0;
             padding: 10px;
             border-radius: 5px;
}

/*-----------------------------------
dress
-----------------------------------*/
#dress {
	background: #f6e8e7;
	position: relative;
}
#dress.section {
	padding-top: 170px;
	padding-bottom: 140px;
}
#dress:before {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 87px;
	background: url(../images/dress_bg.png) repeat-x top left;
	top: 0;
	left: 0;
}
#dress:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 87px;
	background: url(../images/dress_bg.png) repeat-x top left;
	bottom: 0;
	left: 0;
	transform: scale(-1, -1);
}
#dress h3 {
    margin: 50px auto 0;
    font-size: 130%;
    background: #fff;
    width: 25%;
    padding: 20px 10px;
    position: relative;
    box-shadow: 4px 4px #f6e8e7, 6px 6px #fff;
}
#dress ul {
	width: 92%;
	margin: 15px auto 0;
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: center;
	-webkit-justify-content: center;
}
#dress ul li {
	width: 14.66%;
	margin: 20px 1% 0;
	border: 2px solid #fff;
	box-sizing: border-box;
	overflow: hidden;
}
#dress ul li a img {
	-webkit-transform: rotate(0) scale(1);
  transform: rotate(0) scale(1);
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}
#dress ul li a:hover img {
	-webkit-transform: rotate(10deg) scale(1.2);
	transform: rotate(10deg) scale(1.2);
}
#dress .btn_box p {
	margin-left: 10px;
	margin-right: 10px;
}
#dress .btn_box .more {
    width: 45%;
    max-width: 460px;
}
#dress .btn_box .more a {
	background: #967422;
	color: #fff;
	border: 1px solid #967422;
}
#dress .btn_box .more a:hover {
	background: #fff;
	color: #967422;
}

/*-----------------------------------
shop
-----------------------------------*/
#shop {
	background: url(../images/shop_bg.jpg) no-repeat center center;
	background-size: cover;
}
#shop .access_inner {
	display: -webkit-flex;
	display: flex;
	width: 90%;
	margin: 50px auto 0;
}
#shop .access_inner > div {
	width: 50%;
	margin: 0 2%;
	text-align: left;
}
#shop .access_inner .map {
	border: 8px solid #fff;
}
#shop .access_desc dl {
	display: -webkit-flex;
	display: flex;
	padding: 30px 0;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
#shop .access_desc dt {
	font-weight: bold;
	display: -webkit-flex;
	display: flex;
	box-sizing: border-box;
	width: 25%;
	margin: 0 0 10px;
	padding: 8px;
	color: #fff;
	background: #555555;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}
#shop .access_desc dd {
	box-sizing: border-box;
	width: 75%;
	margin: 0 0 10px;
	padding: 8px 8px 8px 12px;
}
#shop .access_desc dd a {
	text-decoration: underline;
	color: #d91b40;
}
.tabs-box .tab.bridal-tab {
    width: 60vw;
    margin: 3% auto;
    border-left: none;
    font-weight: bold;
}

.tabs-box .tab.bridal-tab {
    width: 100%;
    margin: 3% auto;
    border-left: none;
}
.tabs-box .tab.bridal-tab li {
        display: inline-block;
    padding: 8px 20px;
    width: 15%;
    margin: 0 0.5vw;
    text-align: center;
    cursor: pointer;
    border: 2px solid #d91a40;
    border-radius: 8px;
    font-size: 15px;
    color: #d91a40;
    background: #fff;
}
.tabs-box .tab.bridal-tab .active {
    background: #d91a40;
    border-top: 1px solid #d91a40;
    border-bottom: 1px solid #d91a40;
    border-radius: 8px;
    color: #fff;
}
#shop.section {
    padding-bottom: 0;
}


/* パソコン用のスタイル */
@media screen and (min-width: 768px) {
    .mobile-content {
        display: none; /* スマホ用コンテンツを非表示 */
    }
    .desktop-content {
        display: block; /* パソコン用コンテンツを表示 */
    }
}

/*-----------------------
	SP
----------------------- */
@media screen and (max-width:640px) {
	div#sb-site.solo_wedding {
		padding: 0;
	}
	.solo_wedding .solo_main {
		font-size: 12px;
		letter-spacing: 2px;
    	line-height: 1.7;
	}
	footer #page-top {
		padding-top: 50px;
	}

	/* ------共通------*/
	.section {
	    padding: 50px 0 10px;
	}
	.section h2 img {
		max-height: 22px;
	}
	.section h2 span {
		font-size: 10px;
		margin-top: 5px;
	}
	.section .sub_text {
    	width: 90%;
		margin-top: 20px;
	}
	.btn_box {
		padding: 30px 0;
	}
	.btn_box p a {
		font-size: 14px;
		padding: 12px 8%;
	}
	.btn_box p a:before {
		width: 7px;
    	height: 7px;
	}
	/* -----------------------
	メイン画像
	----------------------- */
	.solo_wedding main {
		padding-top: 66px;
	}
	.solo_main .solo_head_title {
		top: -22px;
		z-index: 1;
	}
	.solo_main .solo_head_title img {
		height: 45px;
	}

	.mb_img_title_sp{
		margin: 0;
	}

	.sp{
		margin-top: -90px;
	}
	.bg_title .sp{
		width: 100%;
	    height: 22.2vh; /* 画面の高さに合わせて調整 */
	    background-image: url(../images/bg_title_sp.webp);
	    background-repeat: no-repeat;
	    background-size: cover; /* 画像を画面いっぱいに表示 */
	    background-position: center; /* 中央に配置 */
	}

	.tabs-box .minbox .wp_ph,
	.tabs-box .minbox .data-box{
		display: -webkit-inline-box!important;
		width: 100% !important;
	}
	/*-----------------------
	見出し画像
	-----------------------*/
	.bg_title {
        background-size: contain;
	}
	#option .h3-title img{
		height: 0;
	}
	.bg-outer {
		width: 80%;
		margin-top: 20px;
	}
	/*-----------------------
	what & why モバ
	-----------------------*/
	#what.what_why,
	#why.what_why,
	#whad.what_why {
		background: none;
	}
	.what_why_inner p {
		width: 90%;
		padding-bottom: 30px;
	}
	.box_right .what_why_inner,
	.box_left .what_why_inner {
		float: none;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		text-align: left;
		padding:0;
	}
	.box_right .what_why_inner h2 {
		text-align: right;
		padding: 0vw 4% 4vw;
	}
	.box_left .what_why_inner h2 {
		text-align: left;
		padding: 0vw 4% 4vw;
	}
	.what_why_inner {
        display: flex;
        flex-direction: column;
        align-items: center;
		width: 30%;
		padding:0;
    }

	.option-title {
	    height: 10.5vw;
	}

	#option{
	    position: relative;
	     padding-bottom: 5%;
	     margin-top: 160px;
	 }

	#dress_gallery_slided .dress_gallery6 {
		width: 100%;
		margin: 10px auto;
		display: block;
	}
	.news-box{
		margin:0 auto;
		max-width: 100%;
	}

	.news-box ul {
		display: grid;
		grid-template-columns: repeat(3, 1fr)!important;
		gap: 20px; /* 各アイテム間のスペース */
		list-style-type: none; /* ulのデフォルトリストスタイルを無効化 */
		padding: 0;
		margin: 0;
	}
	.minbox {
		float: left;
	}

	.minbox img {
		width: 100%!important;
		height: auto; /* 画像の縦横比を保持 */
		display: block!important;
	}
	.data-box {
		margin-top: 10px;
	}

	/*-----------------------
	dress
	-----------------------*/
	#dress.section {
	    padding-top: 80px;
	    padding-bottom: 60px;
	}
	#dress:before,
	#dress:after {
		height: 50px;
    	background-size: auto 50px;
	}
    #dress h3 {
        font-size: 120%;
        padding: 10px;
        width: 70%;
        margin-top: 20px;
    }
	#dress ul {
		margin-top: 20px;
	}
	#dress ul li {
		width: 31%;
		margin-top: 10px;
	}
	#dress .btn_box .more {
        width: 90%;
		margin-bottom: 10px;
	}

	/*-----------------------
	plan
	-----------------------*/
	#plan .plan01 {
		margin-top: 30px;
	}
	#plan .plan01 {
		background:  url(../images/plan_01_bg_sp.jpg) no-repeat top center;
		background-size: contain;
		background-position: top center;
		padding: 78vw 4% 0;
	}
	#plan .plan01 .plan_box {
		float: none;
		margin: 0 auto 0;
		width: 100%;
	}
	#plan .plan_box {
		background: none;
		padding: 0 0 30px;
	}
	#plan .plan_box > img {
		margin-top: 15px;
	}
	#plan .plan_box h3 img {
		max-height: 28px;
	}
	#plan .plan_box h3 span {
		font-size: 10px;
	}
	#plan .plan_box .price {
		max-height: 54px;
	}
	#plan .plan01 .plan_box .icon {
		width: 80%;
	}
	#plan.section {
		padding-top: 30px;
	}

	/*-----------------------
	shop
	-----------------------*/
	#shop .access_inner {
		width: 100%;
		display: block;
		margin-top: 25px;
	}
	#shop .access_inner > div {
		width: 96%;
	}
	#shop .access_inner .map {
		box-sizing: border-box;
	}
	#shop .access_desc dl {
		padding-top: 15px;
		padding-bottom: 0;
	}
	.tabs-box .tab.bridal-tab {
		width: 100vw;
        margin: 7% auto;
    }
    .tabs-box .tab.bridal-tab li {
    	padding: 2vw 0vw;
    	width: 48%;
    	margin: 2px 1px;
    	border-radius: 0;
    	border: 1px solid #d7123e;
    	background-color: #ffffff;
    	display: inline-block;
    	font-size: 13px;
    	border-radius: 5px;
    }
    .tabs-box .tab.bridal-tab .active {
    	background: #d7123e;
    	border-top: none;
    	border-bottom: 1px solid #d7123e;
    	border-radius: 5px;
    }
}

/*-------------------
SP
-------------------*/
@media screen and (max-width:640px){
	.pamphlet_btn {
        margin: 15px auto 50px;
        max-width: 90%;
    }
/* スマホ用のスタイル */
@media screen and (max-width: 767px) {
    .desktop-content {
		display: none; /* パソコン用コンテンツを非表示 */
	}
	.mobile-content {
		display: block; /* スマホ用コンテンツを表示 */
		margin: 30px auto;
		width: 90%;
	}
	.pad_img {
		margin-bottom:20px;
	}

	.h3-title img {
		width: 94%;
		margin-top: 30px;
	}
	.bg_title {
		width: 100%;
		background-image: url(../images/bg_title_sp.webp);
		background-repeat: no-repeat;
		background-size: cover;
		background-position: bottom;
	}
	.bg01_img {
		background: url(../images/top01_bg_sp.webp) no-repeat center center;
		background-size: contain;
		width: 100%;
		height: 35vh;
	}

	.bg02_img {
		background: url(../images/top02_bg_sp.webp) no-repeat center center;
		background-size: contain;
		width: 100%;
		height: 40vh;
	}
	.bg03_img {
		background: url(../images/top03_bg_sp.webp)no-repeat center center;
		background-size: contain;
		width: 100%;
		height: 40vh;
	}
	.slidermb_box{
		width: 100%;
	 	margin: -50px auto;
	 	height: auto;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.slider {
		width: 100%;
		height: auto;
		position: relative;
		overflow: hidden;
	}
	.slick-slide {
		display: flex;
		justify-content: center;
		align-items: center;
		transition: opacity 0.3s, transform 0.3s;
		width: 33%;
		position: relative;
		z-index: auto;
	}
	.slick-slide img {
		display: block;
		width: 100%;
		min-height: 310px;
		object-fit: cover;
		transition: transform 0.3s;
		position: relative;
		padding: 30px 0 0 0;
	}
	.slick-center {
		width: 50%;
	}
	.slick-center img {
		transform: scale(2.3);
		z-index: 10;
		position: relative;
		transform-origin: center center;
		margin-top: 0;
		margin-bottom: 0;
		object-fit: contain;
		max-width: 100%;
		padding: 40px 0 40px 0;
	}
	.slick-slide:not(.slick-center) img {
		filter: brightness(50%);
	}
	.slick-prev, .slick-next {
		z-index: 10;
		background: rgba(0, 0, 0, 0.5);
		border-radius: 50%;
		width: 45px;
		height: 45px;
	}
	.slick-prev {
		left: 35px!important;
	}
	.slick-next {
		right: 35px!important;
	}
	.slick-slide:before {
		position: absolute;
	    content: "";
	    width: 58px;
	    height: 58px;
	    background: url(../images/dress/icon_premerline.png) center center / contain no-repeat;
	    z-index: 1;
	    top: 42px;
	    left: 7px;
	    pointer-events: none; /* アイコンがクリック操作をブロックしないようにする */

	}
	.slick-center:before {
	    position: absolute;
	    transform: scale(1.2); /* .slick-center用にアイコンを拡大 */
	    z-index: 11; /* アイコンを他の要素より前面に表示 */
		top: 30px;
		left: -60px;
	}
	.dress_gallery6 .h3-title img {
		max-width: 50%;
		height: auto;
		display: block;
		margin: 0 auto;
		padding-top: 15px;
	}
	ul.plan-item_list li {
		width: 90%;
	}
	.gallery6_img {
		width: 90%;
		display: block;
		margin: 80px auto 40px auto;
	}
	#gallery6 .gallery6-title img {
		max-width: 50%;
		margin-bottom: 30px;
	}
}

@media screen and (max-width: 768px) {
	.news-box ul {
		grid-template-columns: repeat(2, 1fr)!important;
	}
}
@media screen and (max-width: 480px) {
	.news-box ul {
       grid-template-columns: 1fr; /* 480px以下では1列にする */
    }
}