/* 基本 */
.mainarea {
	font-size: 62.5%;
	overflow: hidden;
}
.mainarea > * {
	/* width: 1020px;; */
}
.contents {
	max-width: 100%;
}
.sp-only {
	display: none;
}
/* パンくず */
/* .pageGuide {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	min-height: 48px;
	padding: 15px 0 13px;
}
.breadcrumbs {
	width: 1020px;
	margin: 0 auto;
}
.breadcrumbs > li {
	position: relative;
	float: left;
	font-size: 12px;
	font-size: 13px;
	line-height: 1.2;
}
.breadcrumbs li + li {
	padding-left: 24px;
}
.breadcrumbs li + li:before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	position: absolute;
	top: 50%;
	left: 10px;
	margin-top: -4px;
	border-top: 1px solid #a7a7a7;
	border-right: 1px solid #a7a7a7;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: 5px;
}
.breadcrumbs li a {
	color: #333333;
	font-weight: bold;
	text-decoration: none;
} */

/* パーツ */
.mainarea h1{
	line-height: 0;
}
.mainarea .heading-main-img.service h1 {
	line-height: normal;
}
h1 {
	text-align: center;
}
.heading-main-img {
	width: auto;
	margin: 0 -450px;
	padding: 40px 450px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_bg01.png");
}
.heading-main-img.service {
	padding: 41px 450px;
	background-color: #e9e3da;
	background-image: none;
}
.heading-main-img.service .heading_title-re {
	font-size: 36px;
}
.heading-lv2 {
	padding: 73px 0 33px;
}
.heading-lv2 .heading_title-re {
	text-align: center;
	font-weight: bold;
	font-size: 32px;
}
.heading-lv3 .heading_title-re {
	margin: 39px auto 32px;
	padding: 0 17px;
	border-left: 5px solid #bfb18e;
	font-weight: bold;
	font-size: 17px;
}
.heading-lv3 + .link-button {
	padding-top: 0;
}
.box-layout .heading_title-re,
.title-area > *:first-child {
	margin-top: 0;
}
.title-area {
	padding-top: 11px;
}
.title_text {margin-top: 6px;font-size: 38px;font-weight: bold;text-align: center;}
.upper1_text {margin-top: 15px;font-size: 18px;font-weight: bold;text-align: center;}
.upper2_text {margin-top: 15px;font-size: 24px;font-weight: bold;text-align: center;}
.upper3_text {margin-top: 15px;font-size: 18px;font-weight: bold;text-align: center;}
.under1_text {margin-top: 15px;font-size: 18px;font-weight: bold;text-align: center;}
.under2_text {margin-top: 15px;font-size: 24px;font-weight: bold;text-align: center;}
.under3_text {margin-top: 15px;font-size: 18px;font-weight: bold;text-align: center;}
.title_text + p {
	margin-top: 10px;
}
.lead-text {
	margin: 10px 0;
	font-weight: bold;
	font-size: 18px;
}
.text-paragraph {
	line-height: 1.9;
	font-size: 16px;
}
.text-paragraph + .list-note {
	padding-top: 15px;
}
*:not([class*="heading-lv"]) + .text-paragraph {
	margin-top: 11px;
}
div[class*="heading-lv"] + .text-lead {
	margin-top: 10px;
}
div[class*="heading-lv"] + .text-paragraph {
	margin-top: 15px;
}
.text-paragraph + .link-text.col2 {
	padding-top: 16px;
}
.tel {
	text-decoration: none;
}
.info-text {
	margin-top: 30px;
}
.list-note > li {
	line-height: 1.8;
	position: relative;
	padding-left: 1.3em;
	font-size: 14px;
}
.list-note > li > .list_mark {
	position: absolute;
	top: 0;
	left: 0;
}
.link-text > li {
	margin-top: 17px;
}
.link-text > li.no-link {
	display: inline-block;
	position: relative;
	padding-left: 18px;
	font-size: 16px;
}
.link-text > li.no-link::before {
	content: '';
	position: absolute;
	top: 0.5em;
	left: 2px;
	width: 10px;
	height: 10px;
	border: 5px solid #3f3f3f;
}
.link-text > li > a {
	display: inline-block;
	position: relative;
	padding-left: 18px;
	font-size: 16px;
}
.contents .mainarea a:link,
.contents .mainarea a:visited {
	color: #333;
}
.link-text > li > a::before {
	content: '';
	position: absolute;
	top: 0.5em;
	left: -3px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #3f3f3f;
	border-right: 2px solid #3f3f3f;
	border-radius: 1px;
	transform: rotate(45deg);
}
.link-text > li > span {
	padding-left: 8px;
	font-size: 14px;
}
.link-button {
	line-height: 0;
	padding-top: 40px;
}
.list-bullet > li {
	display: inline-block;
	position: relative;
	line-height: 1.8;
	font-size: 16px;
	padding-left: 1.3em;
}
.list-bullet > li::before {
	content: '';
	position: absolute;
	top: 0.5em;
	left: 2px;
	width: 10px;
	height: 10px;
	border: 5px solid #3f3f3f;
}
.list-bullet > li + li {
	margin-top: 10px;
}
.list-bullet-v2 li {
	position: relative;
	margin-top: 5px;
	padding-left: 1em;
}
.list-bullet-v2 li::before {
	content: '';
	position: absolute;
	top: 0.6em;
	left: 2px;
	width: 5px;
	height: 5px;
	border: 3px solid #3f3f3f;
}
.col2,.col3,.col4 {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	flex-flow:row wrap;
	-webkit-flex-flow: row wrap;
}
.col2 > * {
	width: 48.2%;
	margin: 35px 0 0;
}
.col2 > .image-set,
.col2 > .column_detail,
.col2 > .column_detail.col3_text,
.col2 > .column_detail.col4_text {
	margin-top: 15px;
}
.col2.column_text {
	margin-top: 38px;
}
.col2 > *:nth-of-type(2n) {
	margin-left: 3.6%;
}
.col2 .img-25per {
	width: 22.3%;
}
.col2 .column_detail.col4_text {
	width: 74.1%;
}
.col2 .img-33per {
	width: 30%;
}
.col2 .column_detail.col3_text {
	width: 65.4%;
}
.col3 > * {
	width: 31%;
	margin: 35px 0 0;
}
.col2 .img-33per + .column_detail.col3_text {
	margin-left: 4.6%;
}
.col3 > *:not(:nth-of-type(3n+1)) {
	margin-left: 3.5%;
}
.col4 > * {
	width: 22.3%;
	margin: 35px 0 0;
}
.col4 > *:not(:nth-of-type(4n+1)) {
	margin-left: 3.6%;
}
.column-media.column-benefit {
	display: -webkit-flex;
	display: flex;
}
.column-media.column-benefit .image-set {
	margin-left: 75px;
}
.column-media.column-benefit .column_detail {
	width: 57%;
}
.column_detail .detail_inner > .lead-text:first-child {
	margin-top: 0;
}
.detail-area .detail-area_inner > .link-button {
	margin-top: 14px;
}
.ml135 {
	margin-left: 135px;
}
.a-blank::after {
	display: inline-block;
	content: "";
	width: 15px;
	height: 13px;
	margin-left: 10px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_ic05.png") no-repeat;
	background-size: 100%;
}
.image-set {
	display: -webkit-flex;
	display: flex;
	text-align: center;
}
.image-set .image_inner {
	margin: 0 auto;
	width: 100%;
}
.image-set.img-25per .image_inner {
	width: 100%;
}
.text-paragraph + .image-set {
	margin-top: 60px;
}
.image-set + .text-paragraph {
	margin-top: 72px;
}
.image-set .image_caption {
	margin-top: 15px;
	font-size: 16px;
}
.box-layout {
	margin-top: 38px;
	padding: 40px 34px 4px;
	border: 1px solid #dddddd;
}
/* table */
.table-layout {
	margin-top: 56px;
	padding-bottom: 30px;
}
.table-layout *{
	border-collapse:collapse;
}
.table-layout .table_inner {
	width: 100%;
}
.table-layout td {
	line-height: 1.8;
	padding: 27px 27px 20px;
	border-top: 1px solid #333333;
	font-size: 16px;
}
.table-layout td:first-child {
	padding-left: 0;
	border-right: 1px solid #333333;
	font-weight: bold;
}
.table-layout tr:last-child td {
	border-bottom: 1px solid #333333;
}
.table-layout .list-note {
	margin-top: 5px;
}
.table-layout .link-button {
	padding-top: 37px;
	padding-bottom: 5px;
}
.table-layout tr td.session,
.table-layout tr td.venue,
.table-layout tr td.admission-time,
.table-layout tr td.admission-fee,
.table-layout tr td.admission-ticket {
	position: relative;
	padding-left: 42px;
}
.table-layout tr td.session::before,
.table-layout tr td.venue::before,
.table-layout tr td.admission-time::before,
.table-layout tr td.admission-fee::before,
.table-layout tr td.admission-ticket::before {
	position: absolute;
	content: "";
	margin-top: 3px;
}
.table-layout tr td.session::before {
	left: 9px;
	width: 18px;
	height: 19px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_ic01.png") no-repeat;
	background-size: 100%;
}
.table-layout tr td.venue::before {
	left: 10px;
	width: 16px;
	height: 23px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_ic02.png") no-repeat;
	background-size: 100%;
}
.table-layout tr td.admission-time::before {
	left: 10px;
	width: 20px;
	height: 20px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_ic03.png") no-repeat;
	background-size: 100%;
}
.table-layout tr td.admission-fee::before {
	left: 10px;
	width: 20px;
	height: 20px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_ic04.png") no-repeat;
	background-size: 100%;
}
.table-layout tr td.admission-ticket::before {
	left: 10px;
	width: 20px;
	height: 20px;
	background: url("/tokyo/l_photography/assets01/common/img/detail_ic06.png") no-repeat;
	background-size: 100%;
}
/* レイアウト */
.contents > section {
	padding-bottom: 10px;
}
.contents > * section {
	padding-bottom: 30px;
}
.anchor-area,.detail-area {
	background-color: #f3eee7;
}
.anchor-area {
	margin: 0 -450px;
	padding-bottom: 40px;
	text-align: center;
}
.detail-area {
	margin: 85px -450px 0;
	padding: 0 450px 100px!important;
}
.detail-area_foot {
	margin-top: 40px;
	border-top: 1px solid #ddcfbb;
}
/* .footer-area {
	margin-top: 50px;
	padding-top: 40px;
	padding-bottom: 65px;
	border-top: 1px solid #e5e5e5;
}
.footer-area >*:first-child {
} */

@media only screen and (max-width: 767px) {
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
	.mainarea > * {
		width: auto;
	}
	.contents > section {
		padding-bottom: 0;
	}
	.contents > * {
		/* padding: 0 15px; */
	}
	.anchor-area {
		margin: 0;
		padding-bottom: 30px;
	}
	.heading-main-img {
		padding-top: 0;
		padding-bottom: 0;
		background: none;
	}
	.heading-main-img.service {
		padding-top: 27px;
		padding-bottom: 27px;
	}
	.heading-main-img.service .heading_title-re {
		font-size: 24px;
	}
	.heading-main-img > .text-paragraph {
		padding: 0 35px;
	}
	.heading-lv2 {
		padding: 40px 0 15px;
	}
	.heading-lv2 .heading_title-re {
		font-size: 22px;
	}
	.heading-lv3 .heading_title-re {
		line-height: 1.7;
		margin-bottom: 15px;
		font-size: 15px;
	}
	.title_text {margin-top: 10px;padding: 0 25px;font-size: 24px;line-height: 1.7;}
	.upper1_text {margin-top: 10px;font-size: 14px;line-height: 1.7;}
	.upper2_text {margin-top: 10px;font-size: 16px;line-height: 1.7;}
	.upper3_text {margin-top: 10px;font-size: 14px;line-height: 1.7;}
	.under1_text {margin-top: 10px;font-size: 14px;line-height: 1.7;}
	.under2_text {margin-top: 10px;font-size: 16px;line-height: 1.7;}
	.under3_text {margin-top: 10px;font-size: 14px;line-height: 1.7;}
	.lead-text {
		font-size: 14px;
		line-height: 1.9;
	}
	#main p.text-paragraph {
		font-size: 13px;
	}
	.list-note > li {
		font-size: 12px;
	}
	.link-text > li {
		line-height: 1.7;
	}
	.link-text > li > a,
	.link-text > li.no-link {
		font-size: 13px;
		padding-left: 15px;
	}
	.link-text > li.no-link::before {
		left: -1px;
	}
	.link-text > li > span {
		font-size: 12px;
	}
	.link-button {
		padding-right: 25px;
		padding-left: 25px;
	}
	.heading-lv3 + .link-button {
		padding: 0;
	}
	.image-set.img-33per {
		padding: 0 40px;
	}
	.image-set.img-33per.img-detail {
		padding: 0 70px;
	}
	.image-set .image_caption {
		margin-top: 10px;
		font-size: 13px;
	}
	.image-set.gp-al-center {
		margin: 15px auto 0!important;
	}
	.text-paragraph + .image-set, .image-set + .text-paragraph {
		margin-top: 20px;
	}
	.a-blank {
		position: relative;
	}
	.a-blank::after {
		position: absolute;
		top: 3px;
	}
	.table-layout {
		margin-top: 30px;
		padding: 0 15px;
	}
	.table-layout tr,.table-layout td{
		display: block;
		width: 100%;
	}
	.table-layout td {
		border: none;
		border-top: 1px solid #333;
		padding: 11px 0;
		font-size: 13px;
	}
	.table-layout td:first-child {
		border-right: none;
	}
	.table-layout tr td.session, .table-layout tr td.venue, .table-layout tr td.admission-time, .table-layout tr td.admission-fee {
		padding-left: 22px;
	}
	.table-layout tr td.session::before,
	.table-layout tr td.venue::before,
	.table-layout tr td.admission-time::before,
	.table-layout tr td.admission-fee::before{
		margin-top: 3px;
		left: 0;
	}
	.table-layout tr td.session::before {
		width: 14px;
		height: 14px;
	}
	.table-layout tr td.venue::before {
		width: 13px;
		height: 19px;
	}
	.table-layout tr td.admission-time::before {
		width: 14px;
		height: 14px;
	}
	.table-layout tr td.admission-fee::before {
		width: 14px;
		height: 14px;
	}
	.table-layout tr:last-child td {
		border-bottom: none;
	}
	.table-layout tr:last-child td:last-child {
		border-bottom: 1px solid #333;
	}
	.table-layout .link-button {
		padding: 10px 30px 5px;
	}
	.col2 > .image-set, .col2 > .column_detail, .col2 > .column_detail.col3_text, .col2 > .column_detail.col4_text {
		margin-top: 10px;
	}
	.col2 {
		display: block;
	}
	.col2 > * {
		width: 100%!important;
		margin-top: 10px;
	}
	.col2 > *:nth-of-type(2n) {
		margin-left: 0;
	}
	.col2.column_text {
		margin-top: 25px;
	}
	.heading-lv2 +.col2.column_text {
		margin-top: 0;
	}
	.col2 .img-33per {
		width: 52%;
	}
	.col3 > *,.col4 > * {
		width: 48%;
		margin-top: 12px;
	}
	.col3 > *:not(:nth-of-type(3n+1)) {
		margin-left: 0;
	}
	.col4 > *:not(:nth-of-type(4n+1)) {
		margin-left: 0;
	}
	.col3 > *:nth-of-type(2n),
	.col4 > *:nth-of-type(2n) {
		margin-left: 4%;
	}
	.col2 .img-33per + .column_detail.col3_text {
		margin-left: 0;
	}
	.box-layout {
		padding: 20px;
	}
	.box-layout section {
		padding-bottom: 0;
	}
	.column-media.column-benefit {
		display: block;
	}
	.column-media.column-benefit .image-set {
		width: 36%;
		margin-left: auto;
		padding-bottom: 15px;
	}
	.column-media.column-benefit .column_detail {
		width: 100%;
	}
	.contents .detail-area {
		margin-top: 50px;
		padding-bottom: 50px!important;
	}
	.contents .detail-area section {
		padding: 0 15px;
	}
	.detail-area_foot {
		padding: 0 15px;
	}
	/* .contents > .footer-area {
		margin: 0 15px 0 15px;
		padding: 0;
		padding-top: 20px;
	}
	.contents > .footer-area .list-note li {
		padding-left: 0;
	} */
	/* パンくず */
	/* .breadcrumbs {
		display: inline;
		padding: 0 15px;
	}
	.breadcrumbs > li {
		display: inline;
		float: none;
		font-size: 11px;
	}
	.breadcrumbs li + li {
		padding-left: 22px;
	}
	.breadcrumbs li + li:before {
		top: 9px;
		left: 5px;
	} */
	
}



/* 2505　追加 */

.w_1020 {
	max-width: 990px;
	padding: 0 15px;
	margin: 0 auto;
}

@media only screen and (max-width: 767px) {
	.contents > * section {
		padding-bottom: 0;
	}
	.detail-area_inner.w_1020 {
		padding: 0;
	}
}