@charset "utf-8";
/* CSS Document */

body,p,div,td,li,dt,dd,input,select,textarea {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

address {
	font-style: normal;
	word-break: break-all;
}

@media screen and (min-width: 741px) {
	.plan_txt_img .small{
		font-size: 12px;
	}

	.contents_ttl {
		margin-top: -76px;
		padding-top: 76px;
	}

  .cfx::after {
    content: '';
    display: block;
    clear: both;
  }

  .center_box {
    width: 1200px;
    margin: 0 auto;
  }

	.sp_nav {
		display: none;
	}
	.link_arrow {
		display: block;
		text-align: right;
		padding: 0 60px 0 0;
		background: url(img/ico_right.png) no-repeat right center;
		transition: .3s;
	}
	.link_arrow:hover {
		transform: translateX(10px);
	}

	header {
		width: 100%;
		background-color: #fff;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
	}

  header #h_logo {
    float: left;
    padding: 20px 30px 20px;
  }
  header .pc_nav {
    float: right;
  }
  header .main_nav {
    margin: 0;
  }
  header .main_nav li {
    display: inline-block;
    opacity: 1;
    margin: 30px 20px 0 0;
  }
  header .main_nav li a {
    color: #555555;
    transition: .3s;
  }
  header .main_nav li a:hover {
    color: #d47b8f;
  }


  .fv  {
    position: relative;
  }
	.fv_txt {
		text-align: center;
	}
  .fv .fv_img img  {
    width: 100%;
  }
  .fv .ttl  {
    writing-mode: vertical-rl;
    position: absolute;
    top: 15%;
    left: 50%;
    transform: translateX(-50%);
  }
  .fv .ttl span  {
    display: inline-block;
    background-color: #fff;
    line-height: 120%;
  }
  .fv .ttl span:first-child  {
    font-size: 30px;
    padding: 10px 5px;
  }
  .fv .ttl span:nth-of-type(2)  {
    font-size: 70px;
    margin: 20px 0 0;
    padding: 10px 15px;
  }

  .plan {
	padding-top: 80px;
  }

  .plan__list {
	padding-top: 100px;
  }

  .plan .point__item {
	background-color: #d57f93;
  }
  .plan .point__item figure {
	display: flex;
  }

  .plan .point__item figcaption {
	width: 40%;
	margin: 10px;
	box-sizing: border-box;
	border: 1px solid #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 20px;
  }

  .plan .point__item .point__item__inner {
	box-sizing: border-box;
  }

  .plan .point__ttl {
	font-size: 65px;
	color: #f1cfd7;
	line-height: 1;
	font-weight: normal;
	margin: 0 0 10px;
  }
  .plan .point__ttl::before {
	content: 'POINT';
	display: block;
	font-size: 16px;
	color: #f1cfd7;
	line-height: 1;
	letter-spacing: 1.5px;
  }

  .plan .point__copy {
	color: #fff;
	font-size: 35px;
	line-height: 1.2;
	margin: 0 0 15px;
  }

  .plan .point__txt {
	color: #fff;
	font-size: 16px;
  }

  .plan .point__img {
	width: 60%;
  }

  .plan .point__img img {
	width: 100%;
  }

  .plan .point__item:nth-child(odd) figure{
	flex-direction: row-reverse;
  }
  .plan .point__item:nth-child(even){
	background-color: #fff;
  }
  .plan .point__item:nth-child(even) figcaption{
	border: 1px solid #d68496;
  }

  .plan .point__item:nth-child(even) .point__copy {
	color: #d47b8f;
  }

  .plan .point__item:nth-child(even) .point__txt {
	color: #d47b8f;
  }


  .plan .plan_img  {
    margin: 0 0 115px;
  }

  .plan .plan_img img {
    width: 100%;
  }

  .plan  .contents_ttl {
    font-size: 24px;
    text-align: center;
    margin: 0 0 50px;
  }

  .plan >p {
    font-size: 15px;
    text-align: center;
    line-height: 200%;
    margin: 0 0 90px;
  }

  .plan .point_img  {
    margin: 0 auto 55px;
	width: 124px;
  }

  .plan .point_img img {
    width: 100%;
  }

  .plan .plan__list .plan__list__item {
    margin: 0 0 50px;
	display: flex;
  }

  .plan .plan__list .plan__list__item:nth-child(odd) {
	flex-direction: row-reverse;
  }

  .plan .plan__list .plan__list__item:nth-child(odd) .plan_txt_img {
	margin: 0 30px 0 0;
  }
  .plan .plan__list .plan__list__item:nth-child(even) .plan_txt_img {
	margin: 0 0 0 30px;
  }

  .plan .plan__list .plan__list__item .plan_txt_img {
    box-sizing: border-box;
		text-align: center;
		padding: 0 0 30px;
		background: url(./img/ico_line.svg) no-repeat bottom center / 100%;
  }
  .plan .plan__list .plan__list__item .plan_txt_img .img {
    margin: 0 0 60px;
  }

	.plan .plan__list .plan__list__item .plan_txt_img .ttl{
		margin-bottom: 15px;
		background: url(./img/ico_line.svg) no-repeat center center / 100%;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .ttl span {
		display: inline-block;
		background-color: #fff;
		padding: 5px 20px;
		font-size: 20px;
		line-height: 1.5;
	}

	.plan .plan__list .plan__list__item .plan_commentary{
		font-size: 12px;
		margin: 0 0 15px;
	}


	.plan .plan__list .plan__list__item .plan_txt_img .detail{
		font-size: 16px;
		text-align: center;
		padding-bottom: 15px;
		border-bottom: solid 1px #ccc;
		margin: 0 0 15px;
	}

	.plan .plan__list .plan__detail {
		text-align: center;
		margin: 0 0 15px;
		border-bottom: solid 1px #ccc;
	}
	.plan .plan__list .plan__detail__item {
		display: inline-block;
		padding: 0 10px 0 30px;
		margin: 0 0 15px;
	}

	.plan .plan__list .plan__detail__item.is-shiromuku {
		background: url(./img/ico_shiromuku.svg) no-repeat left center / contain;
	}
	.plan .plan__list .plan__detail__item.is-hakama {
		background: url(./img/ico_hakama.svg) no-repeat left center / contain;
	}
	.plan .plan__list .plan__detail__item.is-hairmake {
		background: url(./img/ico_hairmake.svg) no-repeat left center / contain;
	}
	.plan .plan__list .plan__detail__item.is-kitsuke {
		background: url(./img/ico_kitsuke.svg) no-repeat left center / contain;
	}
	.plan .plan__list .plan__detail__item.is-komono {
		background: url(./img/ico_komono.svg) no-repeat left center / 25px;
	}
	.plan .plan__list .plan__detail__item.is-attend {
		background: url(./img/ico_attend.svg) no-repeat left center / contain;
	}
	.plan .plan__list .plan__detail__item.is-hurisode {
		background: url(./img/ico_hurisode.svg) no-repeat left center / contain;
	}
	.plan .plan__list .plan__detail__item.is-bus {
		background: url(./img/ico_bus.svg) no-repeat left center / 25px;
	}
	.plan .plan__list .plan__detail__item.is-camera {
		background: url(./img/ico_camera.svg) no-repeat left center / 20px;
	}


	.plan .plan__list .plan__list__item .plan_txt_img .price{
		text-align: right;
		font-size: 14px;
		width: 385px;
		padding-bottom: 20px;
		margin-bottom: 30px;
		border-bottom: solid 1px #ccc;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .price span{
		font-size: 18px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .special_price{
		font-size: 14px;
		margin-bottom: 20px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .special_price span{
		font-size: 30px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .watchout{
		font-size: 12px;
		padding-left: 70px;
		margin-bottom: 30px;
		text-align: left;
	}

	.plan .plan__list .plan__list__item .plan_txt_img a {
		display: inline-block;
	}

.plan__scenery {
	display: grid;
	grid-template-rows: 2fr 2fr;
	grid-template-columns: 2fr 2fr;
}
.plan__scenery img {
	width: 100%;
}

.plan__scenery__img:nth-child(1) {
	grid-row: 1/ span 2;
    grid-column: 1 / 2;
}
.plan__scenery__img:nth-child(2) {
	grid-row: 1/ 2;
    grid-column: 2 / 2;
	margin: 0 0 10px 10px;
}
.plan__scenery__img:nth-child(3) {
	grid-row: 2/ 2;
    grid-column: 2 / 2;
	margin: 0 0 0 10px;
}
	.about {
		margin-bottom: 115px;
	}

  .about .about_top_img  {
    margin: 0 0 115px;
  }

  .about .about_top_img img {
    width: 100%;
  }


  .about .contents_ttl {
    font-size: 24px;
    text-align: center;
    margin: 0 0 50px;
  }

  .about p:first-of-type {
    text-align: center;
    font-size: 15px;
    line-height: 200%;
    margin: 0 0 40px;
  }

	.about .sumiyoshi {
		position: relative;
		margin-bottom: 20px;
	}

	.about .sumiyoshi_img {
		margin: 0 0 40px;
	}

	.about .sumiyoshi_txt {
		width: 570px;
		background-color: #fff;
		position: absolute;
		top: 30px;
		right: 0;
		padding: 40px 0;
		text-align: left;
	}
	.about .sumiyoshi_txt .ttl {
		font-size: 20px;
		text-align: center;
		margin: 0 0 50px;
	}
	.about .sumiyoshi_txt address {
		width: 500px;
		margin: 0 auto 40px;
		text-align: left;
	}
	.about .sumiyoshi_txt address p {
		text-align: left;
	}

	.about .sumiyoshi_txt a {
		color: #777;
		text-align: right;
		margin: 0 100px 0 0;
	}

	.about .point {
		margin: 0 0 50px;
	}

	.about .point .img,.about .point .txt {
		display: inline-block;
		vertical-align: middle;
	}
	.about .point .txt {
		width: 650px;
		text-align: left;
	}
	.about .point .txt p {
		text-align: left;
		font-size: 14px;
	}

	.about .point .img {
		margin: 0 40px 0 0;
	}

	.about .schedule {
		text-align: center;
	}

	.shrine_list {
		margin-bottom: 110px;
	}
	.shrine_list .slick-next:before {
		content: url(./img/arrow_right.svg);
	}
	.shrine_list .slick-next:after {
		content: '次へ';
		position: absolute;
		bottom: 37px;
		right: -90px;
		color: #555555;
		display: block;
		width: 50px;
		height: 20px;
		font-size: 18px;
		line-height: 1;
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	}
	.shrine_list .slick-prev:before {
		content: url(./img/arrow_left.svg);
	}
	.shrine_list .slick-prev:after {
		content: '前へ';
		position: absolute;
		bottom: 37px;
		left: -70px;
		color: #555555;
		display: block;
		width: 50px;
		height: 20px;
		font-size: 18px;
		line-height: 1;
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	}

	.shrine_list .slick-dots li {
		width: 70px;
		height: 5px;
	}
	.shrine_list .slick-dots li.slick-active button {
		background-color: #d57f93;
	}

	.shrine_list .slick-dots li button {
		width: 100%;
		height: 100%;
		background-color: #fbf0f3;
	}

	.shrine_list .slick-dots li button:before {
		width: 100%;
		height: 100%;
		position: static;
		content: '';
	}

	.shrine_list li {
		text-align: center;
	}
	.shrine_list .slick-prev,.shrine_list  .slick-next {
		top: auto;
		transform: none;
		bottom: -15%;
	}
	.shrine_list .slick-next {
		right: 45%;
	}
	.shrine_list .slick-prev {
		left: 45%;
	}
	.shrine_list .ttl  {
		font-size: 20px;
		margin: 0 0 25px;
	}
	.shrine_list address  {
		text-align: left;
		margin: 0 0 25px;
	}
	.shrine_list address a {
		text-decoration: underline;
	}

	.shrine_list .txt {
		width: 500px;
		padding: 40px 50px 0;
		margin: -60px auto 0;
		background-color: #fff;
		position: relative;
		z-index: 1;
		box-sizing: border-box;
	}

	.popup_list .slick-prev,.popup_list .slick-next{
		top: 50%;
		transform: translateY(-50%);
	}

		.shrine_list .txt a {
			display: inline-block;
		}

		.popup_list {
  position: relative;
}
.popup_list .popup {
  opacity: 0;
  visibility: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  transition: 0.3s;
  z-index: 10;
}
.popup_list .popup .overlay {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
}
.popup_list .popup.modal_opened {
  opacity: 1;
  visibility: visible;
}
.popup_list .modal {
  width: 45%;
  position: absolute;
  background-color: #fff;
  padding: 40px 15px 35px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.popup_list .modal .modal_close {
  z-index: 10;
  position: absolute;
  top: 10px;
  right: 15px;
  width: 34px;
  height: 36px;
  cursor: pointer;
}
.popup_list .modal .modal_close span {
  display: block;
  position: absolute;
  width: 10px;
  height: 2px;
  width: 100%;
  background: #222;
  left: 0;
}
.popup_list .modal .modal_close span:nth-child(1) {
  top: 11px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  transform: rotate(135deg);
}
.popup_list .modal .modal_close span:nth-child(2) {
  top: 11px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.popup_list img {
	width: 100%;
}
.popup_list .img {
	margin: 0 0 15px;
}
.popup_list .txt p {
	text-align: left;
}

.modal {
	height: 80%;
	overflow: auto;
}

.modal li span {
	display: table-cell;
}

.modal li:last-child span:first-child {
	width: 45px;
}


		.about .end_txt {
			text-align: center;
			font-size: 14px;
			padding: 0 0 0 120px;
		}


		.instagram {
			text-align: center;
			background-color: #d57f93;
			padding: 120px 0;
		}

		.instagram .ttl {
			text-align: center;
			font-size: 24px;
			margin: 0 0 35px;
			color: #fff;
		}

		.insta_img {
			margin: 0 0 120px;
		}
		.insta_img img {
			width: 100%;
		}

		.instagram a:hover img {
			opacity: 0.5;
		}

		.instagram__list {
			width: 940px;
			margin: 0 auto;
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
		}

		.instagram__item {
			width: 300px;
			height: 300px;
			margin: 0 0 20px;
		}

		.instagram__item a img {
			width: 300px;
			height: 300px;
			transition: .3s;
			object-fit: cover;
		}

		.insta_link {
			right: 2px;
			top: -5px;
			width: 250px;
			padding: 10px 0;
			margin: auto;
			font-size: 13px;
		   }

		.insta_link a {
			display: block;
			text-align: center;
			padding: 7px 0;
			border: 1px solid #777;
			line-height: 130%;
			transition: all 0.3s;
			font-size: 12px;
		   }
		   .insta_link a:hover {
			background: #777;
			color: #fff;
			transition: all 0.3s;
		   }

		   .faq {
			width: 770px;
			margin: 0 auto 80px;
		   }
		   .faq .ttl {
			text-align: center;
			font-size: 24px;
			margin: 0 0 20px;
		   }

		   .faq__item {
			margin: 0 0 40px;
		   }

		   .faq__category {
			font-size: 16px;
			margin: 0 0 20px;
		   }

		   .faq__item dl {
			border-bottom: 1px solid #ccc;
		   }

		   .faq__item dt {
			padding: 10px 20px;
			position: relative;
			border-top: 1px solid #ccc;
			cursor: pointer;
		   }

		   .faq__item dt p {
			display: inline-block;
			vertical-align: middle;
		   }

		   .faq__item dt::before {
			content: 'Q';
			font-size: 16px;
			margin: 0 10px 0 0;
			display: inline-block;
			vertical-align: middle;
		   }

		   .faq__item dt::after {
			content: '';
			width: 10px;
			height: 10px;
			border-right: 1px solid #555;
			border-bottom: 1px solid #555;
			position: absolute;
			top: 50%;
			right: 0;
			transform: translateY(-50%) rotate(45deg);
		   }
		   .faq__item dt.is-active::after {
			transform: translateY(-50%) rotate(-135deg);
		   }

		   .faq__item dd {
			padding: 10px 20px;
			display: none;
		   }

		   .faq__item dd p {
			display: inline-block;
			vertical-align: top;
		   }

		   .faq__item dd a {
			text-decoration: underline;
		   }

		   .faq__item dd::before {
			content: 'A';
			font-size: 16px;
			color: #d57f93;
			margin: 0 10px 0 0;
			display: inline-block;
			vertical-align: top;
		   }

		   .bnr_wrap {
			max-width: 1200px;
			width: 100%;
			display: flex;
			justify-content: center;
			margin: 60px auto;
		   }

		   .bnr_wrap__img a {
			transition: .3s;
		   }
		   .bnr_wrap__img a:hover {
			opacity: 0.5;
		   }


		.bnr{
			width: 942px;
			margin: 0 auto 100px;
		}

		.bnr p{
			width: 60%;
			margin: 20px auto 0;
		}

		.contact {
			margin-bottom: 100px;
		}

		.contact .contents_ttl {
			text-align: center;
			margin: 0 0 50px;
		}

		.contact .txt,.contact .map {
			display: inline-block;
			vertical-align: middle;
		}

		.contact .txt {
			width: 250px;
			margin: 0 120px 0 0;
		}

		.contact .txt .logo {
			margin: 0 0 15px;
		}
		.contact .txt address {
			margin: 0 0 20px;
			line-height: 200%;
		}
		.contact .map {
			width: 760px;
			height: 450px;
		}

		.contact .map iframe {
			width: 100%;
			height: 100%;
			-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
		}


		footer .copyright {
			background-color: #fff;
			color: #555555;
			font-size: 12px;
		}



}

@media screen and (max-width: 740px) {
	.contents_ttl {
		margin-top: -46px;
		padding-top: 46px;
	}

	.cfx::after {
		content: '';
		display: block;
		clear: both;
	}

	.center_box {
		width: 90%;
		margin: 0 auto;
	}

	.pc_nav {
		display: none;
	}

	img {
		width: 100%;
	}


	.link_arrow {
		display: block;
		text-align: right;
		padding: 0 60px 0 0;
		background: url(img/ico_right.png) no-repeat right center;
		transition: .3s;
	}
	.link_arrow:hover {
		transform: translateX(10px);
	}

	header #h_logo {
		float: left;
		padding: 10px;
		width: 160px;
	}

	header .main_nav {
		margin: 0;
	}
	header .main_nav li {
		margin-bottom: 20px;
	}


	#header {
		height: auto;
	}

	#contents {
		padding-top: 46px;
	}


	.fv  {
		position: relative;
	}
	.fv .fv_img img  {
		width: 100%;
	}
	.fv_txt {
		width: 80%;
    margin: 0 auto;
    padding: 30px 0;
		margin-top: -46px;
		padding-top: 46px;
	}

	.fv_txt img {
		margin: 30px 0;
	}
	.fv .ttl  {
		writing-mode: vertical-rl;
		position: absolute;
		top: 5%;
		left: 50%;
		transform: translateX(-50%);
	}
	.fv .ttl span  {
		display: inline-block;
		background-color: #fff;
		line-height: 120%;
	}
	.fv .ttl span:first-child  {
		font-size: 5vw;
		padding: 10px 5px;
	}
	.fv .ttl span:nth-of-type(2)  {
		font-size: 7vw;
		margin: 20px 0 0;
		padding: 10px 15px;
	}

	.plan {
		padding-top: 45px;
	}


	.plan__list {
		padding-top: 45px;
	  }
	
	  .plan .point__item {
		background-color: #d57f93;
	  }
	  .plan .point__item figure {

	  }
	
	  .plan .point__item figcaption {
		box-sizing: border-box;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 20px 10px;
	  }
	
	  .plan .point__item .point__item__inner {
		box-sizing: border-box;
		padding: 20px;
		border: 1px solid #fff;
	  }
	
	  .plan .point__ttl {
		font-size: 50px;
		color: #f1cfd7;
		line-height: 1;
		font-weight: normal;
		margin: 0 0 10px;
	  }
	  .plan .point__ttl::before {
		content: 'POINT';
		display: block;
		font-size: 13px;
		color: #f1cfd7;
		line-height: 1;
		letter-spacing: 1.5px;
	  }
	
	  .plan .point__copy {
		color: #fff;
		font-size: 25px;
		line-height: 1.2;
		margin: 0 0 15px;
	  }
	
	  .plan .point__txt {
		color: #fff;
		font-size: 13px;
	  }
	

	  .plan .point__img img {
		width: 100%;
	  }
	
	  .plan .point__item:nth-child(odd) figure{
		flex-direction: row-reverse;
	  }
	  .plan .point__item:nth-child(even){
		background-color: #fff;
	  }
	  .plan .point__item:nth-child(even) .point__item__inner {
		border: 1px solid #d68496;
	  }
	
	  .plan .point__item:nth-child(even) .point__copy {
		color: #d47b8f;
	  }
	
	  .plan .point__item:nth-child(even) .point__txt {
		color: #d47b8f;
	  }
	

	.plan .plan_img  {
		margin: 0 0 50px;
	}

	.plan .plan_img img {
		width: 100%;
	}

	.plan__scenery {
		display: grid;
		grid-template-rows: 2fr 2fr;
		grid-template-columns: 2fr 2fr;
	}
	.plan__scenery img {
		width: 100%;
	}

	.plan__scenery__img:nth-child(1) {
		grid-row: 1/ span 2;
		grid-column: 1 / 2;
	}
	.plan__scenery__img:nth-child(2) {
		grid-row: 1/ 2;
		grid-column: 2 / 2;
		margin: 0 0 10px 10px;
	}
	.plan__scenery__img:nth-child(3) {
		grid-row: 2/ 2;
		grid-column: 2 / 2;
		margin: 0 0 0 10px;
	}
	

	.plan .plan__list .plan__list__item {
		margin: 0 0 50px;
	  }
	
	  .plan .plan__list .plan__list__item:nth-child(odd) {

	  }
	
	  .plan .plan__list .plan__list__item:nth-child(odd) .plan_txt_img {
		
	  }
	  .plan .plan__list .plan__list__item:nth-child(even) .plan_txt_img {
		
	  }
	
	  .plan .plan__list .plan__list__item .plan_txt_img {
		box-sizing: border-box;
			text-align: center;
			padding: 0 0 30px;
			background: url(./img/ico_line.svg) no-repeat bottom center / 100%;
	  }
	  .plan .plan__list .plan__list__item .plan_txt_img .img {
		margin: 0 0 60px;
	  }
	
		.plan .plan__list .plan__list__item .plan_txt_img .ttl{
			margin-bottom: 15px;
			background: url(./img/ico_line.svg) no-repeat center center / 100%;
		}
	
		.plan .plan__list .plan__list__item .plan_txt_img .ttl span {
			display: inline-block;
			background-color: #fff;
			padding: 5px 20px;
			font-size: 20px;
			line-height: 1.5;
		}
	
		.plan .plan__list .plan__list__item .plan_commentary{
			font-size: 12px;
			margin: 0 0 25px;
			text-align: left;
		}
	
	
		.plan .plan__list .plan__list__item .plan_txt_img .detail{
			font-size: 16px;
			text-align: center;
			padding-bottom: 15px;
			border-bottom: solid 1px #ccc;
			margin: 0 0 15px;
		}
	
		.plan .plan__list .plan__detail {
			text-align: center;
			margin: 0 0 15px;
			border-bottom: solid 1px #ccc;
		}
		.plan .plan__list .plan__detail__item {
			display: inline-block;
			padding: 0 10px 0 30px;
			margin: 0 0 15px;
		}
	
		.plan .plan__list .plan__detail__item.is-shiromuku {
			background: url(./img/ico_shiromuku.svg) no-repeat left center / contain;
		}
		.plan .plan__list .plan__detail__item.is-hakama {
			background: url(./img/ico_hakama.svg) no-repeat left center / contain;
		}
		.plan .plan__list .plan__detail__item.is-hairmake {
			background: url(./img/ico_hairmake.svg) no-repeat left center / contain;
		}
		.plan .plan__list .plan__detail__item.is-kitsuke {
			background: url(./img/ico_kitsuke.svg) no-repeat left center / contain;
		}
		.plan .plan__list .plan__detail__item.is-komono {
			background: url(./img/ico_komono.svg) no-repeat left center / 25px;
		}
		.plan .plan__list .plan__detail__item.is-attend {
			background: url(./img/ico_attend.svg) no-repeat left center / contain;
		}
		.plan .plan__list .plan__detail__item.is-hurisode {
			background: url(./img/ico_hurisode.svg) no-repeat left center / contain;
		}
		.plan .plan__list .plan__detail__item.is-bus {
			background: url(./img/ico_bus.svg) no-repeat left center / 25px;
		}
		.plan .plan__list .plan__detail__item.is-camera {
			background: url(./img/ico_camera.svg) no-repeat left center / 20px;
		}
	
	

	.plan  .contents_ttl {
		font-size: 6vw;
		text-align: center;
		margin: 0 0 30px;
	}

	.plan >p {
		line-height: 200%;
		margin: 0 5% 20px;
	}


	.plan .plan__list .plan__list__item {
		margin: 0 0 50px;
	}
	.plan .plan__list .plan__list__item .plan_txt_img {
		box-sizing: border-box;
		text-align: center;
	}
	.plan .plan__list .plan__list__item .plan_txt_img .img {
		margin: 0 0 30px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img a {
		display: inline-block;
	}

	/* plan */
  .plan .planpic{
		margin-bottom: 30px;
	}

	.plan .point_img{
		width: 124px;
		margin: 0 auto 40px;
	}

  .plan .plan__list .plan__list__item .plan_txt_img{
		width: 100%;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .ttl{
		font-size: 18px;
		margin-top: 10px;
		margin-bottom: 30px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .detail{
		font-size: 14px;
		/* width: 385px; */
		padding-bottom: 15px;
		border-bottom: solid 1px #ccc;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table{
		/* width: 370px; */
		margin-top: 15px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 5px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr{
		line-height: 2.5;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr th{
		text-align: left;
		margin-right: 10px;
		padding-left: 50px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr:nth-child(1) th{
		background: url(img/icon01.png) no-repeat left center;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr:nth-child(2) th{
		background: url(img/icon02.png) no-repeat left center;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr:nth-child(3) th{
		background: url(img/icon03.png) no-repeat left center;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr:nth-child(4) th{
		background: url(img/icon04.png) no-repeat left center;
	}

	.plan .plan__list .plan__list__item .plan_txt_img table tr:nth-child(5) th{
		background: url(img/icon05.png) no-repeat left center;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .price{
		text-align: right;
		font-size: 12px;
		/* width: 385px; */
		padding-bottom: 15px;
		margin-bottom: 30px;
		border-bottom: solid 1px #ccc;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .price span{
		font-size: 16px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .special_price{
		font-size: 12px;
		margin-bottom: 20px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .special_price span{
		font-size: 20px;
	}

	.plan .plan__list .plan__list__item .plan_txt_img .watchout{
		font-size: 12px;
		padding-left: 20px;
		margin-bottom: 30px;
		text-align: left;
	}

	.about {
		margin-bottom: 50px;
	}

	.about .about_top_img  {
		margin: 0 0 50px;
	}

	.about .about_top_img img {
		width: 100%;
	}


	.about .contents_ttl {
		font-size: 18px;
		text-align: center;
		margin: 0 0 25px;
	}

	.about >p:first-of-type {
		line-height: 200%;
		margin: 0 5% 40px;
	}

	.about .sumiyoshi {
		position: relative;
	}

	.about .sumiyoshi_img {
		margin: 0 0 15px;
	}

	.about .sumiyoshi_txt {
		background-color: #fff;
		padding: 20px 0 60px;
		text-align: center;
	}
	.about .sumiyoshi_txt .ttl {
		font-size: 20px;
		text-align: center;
		margin: 0 0 25px;
	}
	.about .sumiyoshi_txt address {
		margin: 0 auto 10px;
		text-align: left;
	}

	.about .sumiyoshi_txt a {
		display: inline-block;
		color: #777;
	}

	.about .point {
		margin: 0 0 30px;
	}

	.about .point .img {
		margin: 0 0 20px;
	}

	.about .schedule {
		text-align: center;
	}

	.shrine_list {
		margin-bottom: 110px;
	}
	.shrine_list .slick-next:before {
		content: url(./img/arrow_right.svg);
		display: block;
	}
	.shrine_list .slick-next:after {
		content: '次へ';
		position: absolute;
		bottom: 37px;
		right: -90px;
		color: #555555;
		display: block;
		width: 50px;
		height: 20px;
		font-size: 18px;
		line-height: 1;
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	}
	.shrine_list .slick-prev:before {
		content: url(./img/arrow_left.svg);
		display: block;
	}
	.shrine_list .slick-prev:after {
		content: '前へ';
		position: absolute;
		bottom: 37px;
		left: -70px;
		color: #555555;
		display: block;
		width: 50px;
		height: 20px;
		font-size: 18px;
		line-height: 1;
		font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	}

	.shrine_list .slick-dots {
		top: auto;
		bottom: 0;
	}

	.shrine_list .slick-dots li {
		width: 50px;
		height: 3px;
	}
	.shrine_list .slick-dots li.slick-active button {
		background-color: #d57f93;
	}

	.shrine_list .slick-dots li button {
		width: 100%;
		height: 100%;
		background-color: #fbf0f3;
	}

	.shrine_list .slick-dots li button:before {
		width: 100%;
		height: 100%;
		position: static;
		content: '';
	}

	.shrine_list li {
		text-align: center;
	}
	.shrine_list .slick-prev,.shrine_list  .slick-next {
		top: auto;
		transform: none;
		bottom: -15%;
	}
	.shrine_list .slick-next {
		right: 30%;
	}
	.shrine_list .slick-prev {
		left: 25%;
	}
	.shrine_list .ttl  {
		font-size: 20px;
		margin: 0 0 25px;
	}
	.shrine_list address  {
		text-align: left;
		margin: 0 0 25px;
	}
	.shrine_list address a {
		text-decoration: underline;
	}


	.shrine_list {
		margin-bottom: 140px;
	}


	.shrine_list li {
		text-align: center;
	}
	.shrine_list .ttl  {
		font-size: 20px;
		margin: 0 0 25px;
	}
	.shrine_list address  {
		text-align: left;
		margin: 0 0 25px;
		line-height: 180%;
	}
	.shrine_list address a {
		text-decoration: underline;
	}

	.shrine_list .txt {
		padding: 15px 0 0;
		background-color: #fff;
		position: relative;
		z-index: 1;
		box-sizing: border-box;
	}

		.popup_list .shrine_list .txt a {
			display: inline-block;
		}
		.popup_list .slick-prev, .slick-next{
			top: 50%;
			transform: translateY(-50%);
		}
		.popup_list .slick-prev {
			background: url(https://www.l-cinderella.com/common/img/prev2.png) no-repeat center center!important;
		}
		.popup_list .slick-next {
			background: url(https://www.l-cinderella.com/common/img/next2.png) no-repeat center center!important;
		}
		.popup_list {
		  position: relative;
		}
		.popup_list .popup {
		  opacity: 0;
		  visibility: hidden;
		  position: relative;
		  width: 100%;
		  height: 100%;
		  position: fixed;
		  top: 0;
		  left: 0;
		  transition: 0.3s;
		  z-index: 10;
		}
		.popup_list .popup .overlay {
		  width: 100%;
		  height: 100%;
		  background-color: rgba(0, 0, 0, 0.5);
		  cursor: pointer;
		}
		.popup_list .popup.modal_opened {
		  opacity: 1;
		  visibility: visible;
		}
		.popup_list .modal {
		  width: 90%;
		  position: absolute;
		  background-color: #fff;
		  padding: 35px 15px 25px;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%);
		}
		.popup_list .modal .modal_close {
		  z-index: 10;
		  position: absolute;
		  top: 10px;
		  right: 15px;
		  width: 25px;
		  height: 25px;
		  cursor: pointer;
		}
		.popup_list .modal .modal_close span {
		  display: block;
		  position: absolute;
		  height: 2px;
		  width: 100%;
		  background: #222;
		  left: 0;
		}
		.popup_list .modal .modal_close span:nth-child(1) {
		  top: 11px;
		  -webkit-transform: rotate(135deg);
		  -moz-transform: rotate(135deg);
		  transform: rotate(135deg);
		}
		.popup_list .modal .modal_close span:nth-child(2) {
		  top: 11px;
		  -webkit-transform: rotate(-135deg);
		  -moz-transform: rotate(-135deg);
		  transform: rotate(-135deg);
		}

.popup_list img {
	width: 100%;
}
.popup_list .img {
	margin: 0 0 15px;
}
.popup_list .txt p {
	text-align: left;
}

.modal {
	height: 70%;
	overflow: auto;
}

.modal li span {
	display: table-cell;
}

.modal li:last-child span:first-child {
	width: 45px;
}


		.about .end_txt {
			text-align: left;
		}


		.instagram {
			margin: 0 0 80px;
			text-align: center;
			background-color: #d57f93;
			padding: 60px 0;
		}

		.instagram .ttl {
			text-align: center;
			font-size: 24px;
			margin: 0 0 35px;
			color: #fff;
		}

		.insta_img {
			margin: 0 0 120px;
		}
		.insta_img img {
			width: 100%;
		}

		.instagram a:hover img {
			opacity: 0.5;
		}

		.instagram__list {
			width: 100%;
			margin: 0 auto;
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
		}

		.instagram__item {
			width: calc(100% / 3);
			height: 100px;
			margin: 0 0 14px;
		}

		.instagram__item a img {
			width: 100px;
			height: 100px;
			max-width: 100%;
			max-height: 100%;
			transition: .3s;
			object-fit: cover;
		}

		.insta_link {
			right: 2px;
			top: -5px;
			width: 250px;
			padding: 10px 0;
			margin: auto;
			font-size: 13px;
		   }

		.insta_link a {
			display: block;
			text-align: center;
			padding: 7px 0;
			border: 1px solid #777;
			line-height: 130%;
			transition: all 0.3s;
			font-size: 12px;
		   }
		   .insta_link a:hover {
			background: #777;
			color: #fff;
			transition: all 0.3s;
		   }


		.instagram {
			text-align: center;
			margin-bottom: 0;
		}


				.instagram .ttl {
					text-align: center;
					font-size: 18px;
					margin: 0 0 20px;
				}

				.instagram a {
					display: inline-block;
					font-size: 15px;
					transform: translateY(-10px);
				}

				.insta_img {
					margin: 0 0 60px;
				}
				.insta_img img {
					width: 100%;
				}

				.insta_link {
					right: 2px;
					top: -5px;
					width: 50%;
					margin: 35px auto 20px;
				   }
				   .insta_link a {
					padding: 10px 0;
					border: 1px solid #777;
					text-align: center;
					display: block;
					font-size: 10px;
					font-size: 10px;
				   }



		   .faq {
			width: 90%;
			margin: 0 auto;
			padding: 60px 0 20px;
		   }
		   .faq .ttl {
			text-align: center;
			font-size: 24px;
			margin: 0 0 20px;
		   }

		   .faq__item {
			margin: 0 0 40px;
		   }

		   .faq__category {
			font-size: 16px;
			margin: 0 0 20px;
		   }

		   .faq__item dl {
			border-bottom: 1px solid #ccc;
		   }

		   .faq__item dt {
			padding: 10px 10px;
			position: relative;
			border-top: 1px solid #ccc;
			cursor: pointer;
		   }

		   .faq__item dt p {
			display: inline-block;
			vertical-align: middle;
			width: calc(100% - 30px);
		   }

		   .faq__item dt::before {
			content: 'Q';
			font-size: 16px;
			margin: 0 10px 0 0;
			display: inline-block;
			vertical-align: middle;
			width: 15px;
		   }

		   .faq__item dt::after {
			content: '';
			width: 7px;
			height: 7px;
			border-right: 1px solid #555;
			border-bottom: 1px solid #555;
			position: absolute;
			top: 50%;
			right: 10px;
			transform: translateY(-50%) rotate(45deg);
		   }
		   .faq__item dt.is-active::after {
			transform: translateY(-50%) rotate(-135deg);
		   }

		   .faq__item dd {
			padding: 10px 10px;
			display: none;
		   }

		   .faq__item dd p {
			display: inline-block;
			vertical-align: top;
			width: calc(100% - 30px);
		   }

		   .faq__item dd a {
			text-decoration: underline;
		   }

		   .faq__item dd::before {
			content: 'A';
			font-size: 16px;
			color: #d57f93;
			margin: 0 10px 0 0;
			display: inline-block;
			vertical-align: top;
			width: 15px;
		   }

		   .bnr_wrap {
			margin: 30px auto;
		   }

		   .bnr_wrap__img{
			margin: 0 0 20px;
		   }




				.bnr{
					width: 90%;
					margin: 0 auto;
				}

				.bnr p{
					width: 100%;
					margin: 10px auto 0;
				}

		.contact {
			margin-bottom: 50px;
		}

		.contact .contents_ttl {
			text-align: center;
			margin: 0 0 25px;
		}

		.contact .txt {
			margin: 0 0 30px;
		}

		.contact .txt .logo {
			width: 160px;
			margin: 0 0 15px;
		}
		.contact .txt address {
			margin: 0 0 20px;
			line-height: 200%;
		}
		.contact .map {
			width: 100%;
			margin: 0 auto;
			height: 300px;
		}

		.contact .map iframe {
			width: 100%;
			height: 100%;
			-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
		}


		footer .copyright {
			background-color: #fff;
			color: #555555;
			font-size: 12px;
			margin: 0;
		}
}
