@charset "utf-8";

/* 共通
------------------------------------------------------------------*/
#content{
}
#content .area_bg{
	background-color: #f2f3fc;
}
.content_low .inner, .main_page .inner {
	max-width: calc(1000px + 10%);
}
.content_low {
	padding: 100px 0 200px;
}
.main_page {
	padding: 0 0 117px;
	background: #eee;
}
.page_main section:not(:last-child) {
	margin-bottom: 100px;
}
.wrap_ttl{
	text-align: center;
}
h2 {
	line-height: 1.6;
	font-weight: 500;
	color: #fff;
	text-align: center;
	letter-spacing: 0.1em;
}
h2 span {
	display: block;
	font-family: 'Cantata One', serif;
	font-style: normal;
	font-weight: normal;
	font-size: 300%;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
h3{
	padding-bottom: 10px;
	text-align: center;
}
h3 span{
	display: inline-block;
	position: relative;
	line-height: 1;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 192.857%;
	font-style: normal;
	font-weight: normal;
}
h3 span::after{
	content: '';
	display: inline-block;
	background-color: #292929;
	position: absolute;
	left: -5%;
	right: 0;
	bottom: -15px;
	width: 110%;
	height: 1px;
}
.no_mgn {
	margin-bottom: 0;
}

/*page*/
.area_page{
	background-color: #404053;
	width: 100%;
	padding: 65px 0;
}

/*breadcrumbs*/
.unit_breadcrumbs{
	padding: 15px 0;
}
.unit_breadcrumbs ul{
	display: flex;
	justify-content: flex-start;
}
.unit_breadcrumbs ul li:not(:first-child)::before{
	content: '>';
	display: inline-block;
	vertical-align: middle;
	padding: 0 12px;
}
.unit_breadcrumbs ul li a,
.unit_breadcrumbs ul li span{
	line-height: 1;
	font-size: 12px;
	letter-spacing: 0.1em;
}

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

}

@media only screen and (max-width: 767px) {
	.content_low {
		padding: 13vw 0 25vw;
	}
	.page_main section:not(:last-child) {
		margin-bottom: 20vw;
	}
	.col_img {
		text-align: center;
	}
	h2{
		font-size: 56.25%;
	}
	h2 span{
		font-size: 233.33%;
	}
	h3 span{
		font-size: 118.75%;
	}
	
	/*page*/
	.area_page{
		padding: 7vw 0;
	}
	
}

/* 記事基本スタイル
------------------------------------------------------------------*/
.area_article {
	line-height: 1.6em;
	font-size: 14px;
}
.area_article .body img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.area_article .body a {
	text-decoration: underline;
}
.area_article .body a:hover {
	text-decoration: underline;
	color: #dc6a2f;
}

/* 画像配置位置 中央 */
.area_article .body img.aligncenter {
	display: block;
	margin: 0 auto 0;
}

/* 画像配置位置 右 */
.area_article .body img.alignright {
	display: block;
	margin: 0 0 0 auto;
}
.area_article .body .alignright {
	float: right;
}

/* 画像配置位置 左 */
.area_article .body img.alignleft {
	display: block;
	margin: 0 auto 0 0;
}
.area_article .body .alignleft {
	float: left;
}

/*price*/
#price_page .unit_breadcrumbs{
	background-color: #f2f3fc;
}
.photographing_price{
	padding-top: 35px;
	padding-bottom: 160px;
}
.photographing_price h3{
	margin-bottom: 60px;
}
.box_photographing{
	border: 1px solid #5e5e5e;
	margin-top: 48px;
	padding: 48px 0;
}
.box_photographing .row{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 0 0 80px;
	padding-bottom: 60px;
}
.box_photographing .col_img{
}
.box_photographing .unit_link{
	position: relative;
}
.box_photographing .unit_link img{
	position: relative;
	z-index: 1;
}
.box_photographing .unit_link::after{
	content: '';
	display: block;
	background-color: #d9dbe7;
	position: absolute;
	right: -15px;
	bottom: -15px;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.box_photographing .unit_link .wrap_txt{
	background-color: rgba(32,32,32,.68);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	overflow: hidden;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	opacity: 0;
}
.box_photographing .unit_link .wrap_txt .txt{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transform: translate3d(0px,10px,0px);
	-moz-transform: translate3d(0px,10px,0px);
	-ms-transform: translate3d(0px,10px,0px);
	-o-transform: translate3d(0px,10px,0px);
	transform: translate3d(0px,10px,0px);
}
.box_photographing .unit_link .wrap_txt .txt p{
	font-weight: bold;
	font-size: 18px;
	color: #fff;
}
.box_photographing .unit_link a:hover{
	opacity: 1;
}
.box_photographing .unit_link a:hover .wrap_txt{
	opacity: 1;
}
.box_photographing .unit_link a:hover .wrap_txt .txt{
	-webkit-transform: translate3d(0px,0px,0px);
	-moz-transform: translate3d(0px,0px,0px);
	-ms-transform: translate3d(0px,0px,0px);
	-o-transform: translate3d(0px,0px,0px);
	transform: translate3d(0px,0px,0px);
}
.box_photographing .col_txt{
	flex-grow: 1;
	margin-left: 6%;
	padding-right: 3%;
}
.box_photographing .col_txt h4{
	line-height: 1;
	font-family: 'Cantata One', serif;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	letter-spacing: 0.1em;
}
.box_photographing .col_txt .row_txt{
	width: 100%;
}
.box_photographing .col_txt .row_txt dt{
	float: left;
}
.box_photographing .col_txt .row_txt dt p{
	line-height: 1.6;
	font-weight: bold;
	font-size: 27px;
	letter-spacing: 0;
}
.box_photographing .col_txt .row_txt dd{
	float: right;
}
.box_photographing .col_txt .row_txt dd p{
	line-height: 1.2;
	font-weight: 500;
	text-align: right;
}
.box_photographing .col_txt .row_txt dd span{
	font-family: 'Cantata One', serif;
	font-style: normal;
	font-weight: normal;
	font-size: 34px;
	letter-spacing: 0;
}
.box_photographing .col_txt .row_txt dd i{
	font-style: normal;
	font-size: 28px;
}
.box_photographing .col_txt>p{
	margin-top: 26px;
	line-height: 2.14;
	font-weight: bold;
	letter-spacing: 0;
}
.box_photographing .col_txt>p a{
	text-decoration: underline;
}
.box_photographing .col_txt>p b{
	font-weight: normal;
	color: #d81c1c;
}
.box_photographing>.txt{
	border-top: 1px solid #5e5e5e;
	margin: 0 80px;
	padding-top: 54px;
}
.box_photographing>.txt p{
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0;
}

.rental_price{
	padding-bottom: 100px;
}
.rental_price h3{
	padding-top: 100px;
	padding-bottom: 30px;
}
.rental_price .catch{
	padding-top: 30px;
	text-align: center;
}
.rental_price .catch p{
	line-height: 1.67;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0.1em;
}
.rental_price .catch .btn{
	max-width: 478px;
	margin: 65px auto 50px;
}
.rental_price .catch .btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #7480d7;
	width: 100%;
	height: 65px;
}
.rental_price .catch .btn span{
	font-weight: bold;
	font-size: 18px;
	color: #fff;
	letter-spacing: 0.2em;
}
.rental_price .unit_box{
	width: 100%;
}
.rental_price .row_box{
	display: flex;
	justify-content: center;
	width: 100%;
}
.rental_price .row_box.small{
	max-width: 900px;
	margin: auto;
}
.rental_price .box{
	border: 1px solid #5e5e5e;
	width: 100%;
	margin-top: 23px;
	padding: 20px 30px;
}
.rental_price .box01{
	flex-grow: 1;
	max-width: 260px;
}
.rental_price .box02{
	flex-grow: 3;
	margin-left: 23px;
}
.rental_price .box03{
	flex-grow: 1;
	max-width: 280px;
}
.rental_price .box04{
	flex-grow: 2;
	margin-left: 23px;
}
.rental_price .box dl dt{
	border-bottom: 1px solid #5e5e5e;
}
.rental_price .box dl dt p{
	padding-bottom: 14px;
	font-weight: bold;
	font-size: 18px;
	letter-spacing: 0.2em;
}
.rental_price .box dl dd{
	margin-top: 20px;
}
.rental_price .box dl ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
}
.rental_price .box dl li{
	width: 20%;
	padding-bottom: 20px;
	font-weight: 500;
	font-size: 18px;
	letter-spacing: 0;
}
.rental_price .box01 dl li{
	width: 100%;
}
.rental_price .box02 dl li{
	width: 25%;
}
.rental_price .box03 dl li{
	width: 100%;
}
.rental_price .box04 dl li{
	width: 33.3%;
}
.rental_price .box05 dl li{
	width: 33.3%;
}
.rental_price .box06 dl li{
	width: 50%;
}
.box07 dl li{
	width: 33.3% !important;
}
.box08 dl li{
	width: 50% !important;
}

.rental_price .box dl li span{
	font-weight: bold;
	color: #463e92;
}
.rental_price .box dl li .anotation{
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0;
}
#unit_box_col50 {
	width: 50% !important;
}

.album_price{
	padding-top: 100px;
	padding-bottom: 100px;
}
.album_price .row_album{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 45px;
}
.album_price .row_album li{
	background-color: #fff;
	/*border: 1px solid #7480d7;*/
	width: 32%;
	margin-top: 20px;
	padding: 40px 1% 26px;
}
.album_price .row_album li:nth-child(2),
.album_price .row_album li:nth-child(3){
	align-self: stretch;
}
.album_price .row_album h5{
	line-height: 1.6;
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.1em;
}
.album_price .row_album h5 span{
	display: block;
	font-family: 'Cantata One', serif;
	font-style: normal;
	font-weight: normal;
	font-size: 32px;
	letter-spacing: 0.1em;
}
.album_price .row_album .img{
	text-align: center;
}
.album_price .row_album .txt{
	margin: 0 30px;
}
.album_price .row_album p{
	margin-top: 16px;
	line-height: 1.78;
	font-weight: 500;
	font-size: 13.5px;
	letter-spacing: 0.1em;
}
.album_price .row_album .txt_indent{
	margin-top: 16px;
	padding-left: 1em;
}
.album_price .row_album dl{
	display: table;
	width: 100%;
}
.album_price .row_album dl dt{
	display: table-cell;
	font-weight: 500;
	font-size: 16.5px;
	text-align: left;
	letter-spacing: 0.1em;
}
.album_price .row_album dl dd{
	display: table-cell;
	font-weight: 500;
	font-size: 16.5px;
	text-align: right;
	letter-spacing: 0.1em;
}
.album_price .row_album dl span{
	font-family: 'Cantata One', serif;
}
.album_price .row_album dl i{
	font-style:normal;
	font-size: 13.5px;
}


@media(min-width: 768px) and (max-width:960px) {
	.rental_price .row_box{
		display: block;
		width: 100%;
	}
	.rental_price .row_box.small{
		max-width: none;
	}
	.rental_price .box01{
		max-width: none;
	}
	.rental_price .box02{
		margin-left: 0;
	}
	.rental_price .box03{
		max-width: none;
	}
	.rental_price .box04{
		margin-left: 0;
	}
	.rental_price .box dl li{
		width: 33.3%;
	}
	.rental_price .box01 dl li{
		width: 100%;
	}
	.rental_price .box02 dl li{
		width: 33.3%;
	}
	.rental_price .box03 dl li{
		width: 33.3%;
	}
	.rental_price .box04 dl li{
		width: 33.3%;
	}
	.rental_price .box04 dl li:nth-child(4),
	.rental_price .box04 dl li:nth-child(5){
		width: 50%;
	}
	
	.album_price .row_album li{
		width: 48%;
	}
	
}

@media(max-width: 767px) {
	/*price*/
	.photographing_price{
		padding-top: 10vw;
		padding-bottom: 10vw;
	}
	.photographing_price h3{
		margin-bottom: 6vw;
	}
	.box_photographing{
		margin-top: 6vw;
		padding: 5vw 0;
	}
	.box_photographing .row{
		display: block;
		margin: 0 5vw;
		padding-bottom: 4vw;
	}
	.box_photographing .col_img{
		margin-bottom: 8vw;
	}
	.box_photographing .unit_link{
		max-width: calc(437 / 750 * 100vw);
		margin: auto;
		text-align: center;
	}
	.box_photographing .unit_link img{
		width: 100%;
	}
	.box_photographing .unit_link::after{
		right: calc(-19 / 750 * 100vw);
		bottom: calc(-19 / 750 * 100vw);
	}
	.box_photographing .unit_link .wrap_txt{
	}
	.box_photographing .unit_link .wrap_txt .txt{
	}
	.box_photographing .unit_link .wrap_txt .txt p{
		font-size: 56.25%;
	}
	.box_photographing .unit_link a:hover{
	}
	.box_photographing .unit_link a:hover .wrap_txt{
	}
	.box_photographing .unit_link a:hover .wrap_txt .txt{
	}
	.box_photographing .col_txt{
		margin-left: auto;
		padding-right: auto;
	}
	.box_photographing .col_txt h4{
		font-size: 75%;
		letter-spacing: 0.1em;
	}
	.box_photographing .col_txt .row_txt{
	}
	.box_photographing .col_txt .row_txt dt{
	}
	.box_photographing .col_txt .row_txt dt p{
		line-height: 1.6;
		font-size: 92.1875%;
	}
	.box_photographing .col_txt .row_txt dd{
	}
	.box_photographing .col_txt .row_txt dd p{
		line-height: 1.2;
		font-size: 48.4375%;
	}
	.box_photographing .col_txt .row_txt dd span{
		font-size: 238.71%;
	}
	.box_photographing .col_txt .row_txt dd i{
		font-size: 82.4324%;
	}
	.box_photographing .col_txt>p{
		margin-top: 6vw;
		line-height: 2.14;
		font-size: 64.0625%;
	}
	.box_photographing .col_txt>p a{
	}
	.box_photographing .col_txt>p b{
	}
	.box_photographing>.txt{
		margin: 0 5vw;
		padding-top: 6vw;
	}
	.box_photographing>.txt p{
		font-size: 68.75%;
	}
	
	.rental_price{
		padding-bottom: 10vw;
	}
	.rental_price h3{
		padding-top: 10vw;
		padding-bottom: 6vw;
	}
	.rental_price .catch{
		padding-top: 6vw;
	}
	.rental_price .catch p{
		line-height: 1.5;
		font-size: 75%;
		letter-spacing: 0.1em;
	}
	.rental_price .catch .btn{
		max-width: 696px;
		margin: 6vw auto;
	}
	.rental_price .catch .btn a{
		height: calc(95 / 750 * 100vw);
	}
	.rental_price .catch .btn span{
		font-size: 82.8125%;
		letter-spacing: 0.2em;
	}
	.rental_price .unit_box{
	}
	.rental_price .row_box{
		display: block;
		width: 100%;
	}
	.rental_price .row_box.small{
		max-width: none;
	}
	.rental_price .box{
		margin-top: 4vw;
		padding: 5vw 4vw;
	}
	.rental_price .box01{
		max-width: none;
	}
	.rental_price .box02{
		margin-left: 0;
	}
	.rental_price .box03{
		max-width: none;
	}
	.rental_price .box04{
		margin-left: 0;
	}
	.rental_price .box dl dt{
	}
	.rental_price .box dl dt p{
		padding-bottom: 4vw;
		font-weight: 500;
		font-size: 75%;
		letter-spacing: 0.1em;
	}
	.rental_price .box dl dd{
		margin-top: 4vw;
	}
	.rental_price .box dl ul{
		justify-content: space-between;
		padding: 0 6vw;
	}
	.rental_price .box dl li{
		width: 50%;
		padding-bottom: 4vw;
		font-size: 75%;
	}
	.rental_price .box01 dl li{
		width: 100%;
	}
	.rental_price .box02 dl li{
		width: 50%;
	}
	.rental_price .box03 dl li{
		width: 50%;
	}
	.rental_price .box04 dl li{
		width: 33.3%;
	}
	.rental_price .box04 dl li:nth-child(4),
	.rental_price .box04 dl li:nth-child(5){
		width: 50%;
	}
	.rental_price .box dl li span{
	}
	.rental_price .box dl li .anotation{
		display: inline-block;
		padding-left: 1em;
		font-size: 100%;
	}
	
	.album_price{
		padding-top: 6vw;
		padding-bottom: 20vw;
	}
	.album_price .row_album{
		display: block;
		margin-top: 0;
	}
	.album_price .row_album li{
		width: 100%;
		margin-top: 4vw;
		padding: 5vw 5vw;
	}
	.album_price .row_album li:nth-child(2),
	.album_price .row_album li:nth-child(3){
	}
	.album_price .row_album h5{
		line-height: 1.6;
		letter-spacing: 0.1em;
	}
	.album_price .row_album h5 span{
		font-size: 195.3125%;
		letter-spacing: 0.1em;
	}
	.album_price .row_album .img img{
		max-width: calc(620 / 750 * 100vw);
		margin: auto;
	}
	.album_price .row_album .txt{
		margin: 0 6vw;
	}
	.album_price .row_album p{
		margin-top: 2vw;
		line-height: 1.78;
		font-size: 82.8125%;
		letter-spacing: 0.1em;
	}
	.album_price .row_album .txt_indent{
		margin-top: 2vw;
	}
	.album_price .row_album dl{
	}
	.album_price .row_album dl dt{
		font-size: 101.5625%;
		letter-spacing: 0.1em;
	}
	.album_price .row_album dl dd{
		font-size: 101.5625%;
		letter-spacing: 0.1em;
	}
	.album_price .row_album dl span{
	}
	.album_price .row_album dl i{
		font-size: 81.5385%;
	}
	
}
/* PC 下層ページ ヘッダー余白調整 */
@media screen and (min-width: 769px) {
    .area_page {
        margin-top: -40px;
    }
}
/* スマホ 下層ページ ヘッダー余白調整 */
@media screen and (max-width: 768px) {
    .area_page {
        margin-top: -20px;
        padding: 10vw 0 7vw;
    }
}
/* スマホ 下層ページ本文余白調整 */
@media screen and (max-width: 768px) {
    .content_low {
        padding-top: 20vw;
    }
}

/* パンくず背景色（基本） */
.unit_breadcrumbs {
    background-color: #f2f3fc !important;
}

/* お問い合わせページだけ白 */
.contactContent .unit_breadcrumbs {
    background-color: #fff !important;
}

/* スマホ 本文内余白調整 */
@media screen and (max-width: 768px) {
    .area_bg {
        padding-top: 5vw;
        padding-bottom: 12vw;
    }
}
.season_index.area_bg {
    background: #fff !important;
    padding-top: 0 !important;
    padding-bottom: 8vw;
}

.price_link {
    padding-top: 40px !important;
    padding-bottom: 30px !important;
    margin-bottom: 3vw !important;
}

.price_link .unit_link {
    margin-top: 0 !important;
}
.movie_index {
    max-width: 900px;
    margin: 80px auto 0;
    text-align: center;
}

.movie_index h3 {
    font-family: serif;
    font-size: 28px;
    font-weight: normal;
    letter-spacing: 0.15em;
    color: #29346f;
    margin-bottom: 8px;
}

.movie_sub {
    font-size: 14px;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
}

.movie_wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.movie_wrap iframe {
    width: 100%;
    height: 100%;
    border: 0;
}
.step_index.gallery_price_link {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    margin-top: -250px !important;
}
@media screen and (max-width: 768px) {
    .step_index.gallery_price_link {
        margin-top: 0 !important;
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }
}