﻿@charset "utf-8";

@media print, screen and (min-width:768px){

/*		Contents
---------------------------------------------------------------------------

	Common（共通部分）

	トップページ									[ / ]
	料金プラン										[ /price/ ]
	フォトブック・アルバム製作						[ /photobook/ ]
	about us										[ /about/ ]
	お申込の流れ									[ /flow/ ]
	ご利用規約										[ /rule/ ]
	撮影実績										[ /portfolio/ ]
	お問い合わせ・資料請求・フォトブック申し込み	[ /contact/ ]
	撮影申込フォーム								[ /entry/ ]
	協力カメラマン募集中							[ /recruit/ ]
	Topic.1											[ /topic/ ]
	Topic.2											[ /topic/index_02.html ]
	Topic.3											[ /topic/index_03.html ]
	Special Interview								[ /interview/ ]
	Photographer									[ /photographer/ ]
	LINEで気軽にお問い合わせ						[ /line/ ]

------------------------------------------------------------------------ */


/* ========================================================================
	Common（共通部分）
======================================================================== */
body{
	overflow-x:hidden;
	min-width:1240px;
	background:#b99c24;
	border-left:6px solid #b99c24;
	border-right:6px solid #b99c24;
}

body::before,
body::after{
	content:"";
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:6px;
	background:#b99c24;
	z-index:100;
}
 
body::after{
	top:auto;
    bottom:0;
}

#container{
	background:#ffffff;
}

.sp{
	display:none;
}

.inner{
	width:860px;
	margin:0 auto;
}


/* ----------------------------------------
	header
---------------------------------------- */
#second header{
	position:relative;
	background:#b99c24;
}

#second header .logo{
	padding:24px 0 20px 60px;
}

#second header a{ color:#ffffff; text-decoration:none; }
#second header a:hover{ text-decoration:underline; }


/* contact
---------------------------------------- */
#second header .tel{
	position:absolute;
	top:22px;
	right:60px;
}


/* navi
---------------------------------------- */
#second header .navi{
	display:flex;
	position:absolute;
	top:33px;
	right:298px;
}

#second header .navi a{
	display:block;
	width:190px;
	margin:0 0 0 15px;
	background:#FFFFFF;
	border-radius:3px;
	text-align:center;
	font-size:1.4rem;
	color:#B59824;
	line-height:2.8rem;
	text-decoration:none;
	transition-duration:0.2s;
}

#second header .navi a:hover{
	opacity:0.8;
}

#second header .navi .line a{
	background:#1EC422;
	color:#FFFFFF;
}


/* gnavi
---------------------------------------- */
#second header .gnavi{
	background:#323232;
	text-align:center;
	font-size:0;
}

#second header .gnavi .btn{
	display:none;
}

#second header .gnavi ul{
	overflow:visible;
	display:block !important;
}

#second header .gnavi ul li{
	display:inline-block;
	padding:0 18px;
	font-size:1.3rem;
	font-weight:bold;
	line-height:46px;
	letter-spacing:2px;
}

#second header .gnavi ul li.contact{
	position:absolute;
	top:-64px;
	right:316px;
	padding:0 0 0 29px;
	background:url(../../img/common/icon_contact.png) no-repeat left center;
	background-size:19px 14px;
	text-align:center;
	font-size:1.2rem;
	line-height:1.5;
}


/* ----------------------------------------
	main
---------------------------------------- */
main p{
	line-height:34px;
}


/* h要素
---------------------------------------- */
main h1{
	padding:0 0 30px 0;
	text-align:center;
	font-size:2.8rem;
	font-weight:bold;
	line-height:1;
	letter-spacing:4px;
}

main h1 img{
	display:block;
	margin:10px auto 0;
}

main h2{
	padding:0 0 30px 0;
	text-align:center;
	line-height:0;
}

main h2.text{
	padding:0 0 20px 0;
	text-align:left;
	font-size:1.6rem;
	font-weight:bold;
	color:#b99c24;
	line-height:1;
}


/* second
---------------------------------------- */
#second main{
	padding:70px 0 90px 0;
}


/* ----------------------------------------
	footer
---------------------------------------- */
footer{
	background:#b99c24;
	text-align:center;
}

footer h2{
	padding:44px 0 30px 0;
}

footer address{
	padding:10px 0 0 0;
	font-size:1.2rem;
	color:#ffffff;
	line-height:22px;
}

footer small{
	display:block;
	padding:40px 0 0 0;
	font-size:1.0rem;
	color:#ffffff;
	line-height:36px;
}

/*footer .fix{
	display:none;
}*/


/* navi
---------------------------------------- */
footer .navi{
	background:#323232;
	font-size:0;
}

footer .navi li{
	display:inline-block;
	padding:0 18px;
	font-size:1.3rem;
	font-weight:bold;
	line-height:98px;
	letter-spacing:2px;
}

footer .navi li a{
	color:#ffffff;
	text-decoration:none;
}

footer .navi li a:hover{
	text-decoration:underline;
}


/* ========================================================================
	トップページ									[ / ]
======================================================================== */
#top .inner{
	width:1000px;
}

#top main{
	text-align:center;
}

#top main section{
	border-bottom:1px solid #b99c24;
}

#top main h2{
	padding:0;
}


/* ----------------------------------------
	header
---------------------------------------- */
#top header{
	position:relative;
	margin:6px 0 0 0;
	background:#ffffff;
	border-bottom:1px solid #b99c24;
}

#top header .side{
	position:absolute;
	top:0;
	left:0;
	width:294px;
	padding:0 0 0 58px;
}

#top header h1{
	padding:45px 0 40px 0;
}

#top header a{ text-decoration:none; }
#top header a:hover{ text-decoration:underline; }


/* gnavi
---------------------------------------- */
#top header .gnavi{
	position:relative;
	padding:0 0 7px 0;
}

#top header .gnavi::before,
#top header .gnavi::after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:140px;
	height:2px;
	background:#f1ebd2;
}

#top header .gnavi::after{
	left:140px;
	width:40px;
	background:#b99c24;
}

#top header .gnavi .btn{
	display:none;
}

#top header .gnavi ul{
	display:block !important;
}

#top header .gnavi ul li{
	padding:0 0 15px 0;
	font-size:1.5rem;
	font-weight:bold;
	line-height:25px;
	letter-spacing:2px;
}

#top header .gnavi a[target="_blank"]{
	padding:0 15px 0 0;
	background:url(../../img/top/icon_blank.png) no-repeat right center;
	background-size:9px;
}


/* navi
---------------------------------------- */
#top header .navi{
	padding:20px 0 0 0;
}

#top header .navi a{
	display:block;
	width:180px;
	margin:0 0 10px 0;
	border:1px solid #B59824;
	border-radius:3px;
	text-align:center;
	font-size:1.3rem;
	color:#B59824;
	line-height:2.8rem;
	text-decoration:none;
	transition-duration:0.2s;
}

#top header .navi a:hover{
	opacity:0.8;
}

#top header .navi .line a{
	background:#1EC422;
	border-color:#1EC422;
	color:#FFFFFF;
}


/* tel
---------------------------------------- */
#top header .tel{
	padding:30px 0;
}


/* recruit
---------------------------------------- */
#top header .recruit a{
	display:block;
	width:180px;
	background:#b99c24;
	text-align:center;
	font-size:1.5rem;
	font-weight:bold;
	color:#ffffff;
	line-height:40px;
	text-decoration:none;
}


/* slider
---------------------------------------- */
#slider{
	overflow:hidden;
	position:relative;
	height:800px;
	margin:0 0 0 294px;
}

#slider::before{
	content:"";
	position:absolute;
	top:40px;
	right:50px;
	width:109px;
	height:181px;
	background:url(../../img/top/slider_illust.png) no-repeat center;
	background-size:100%;
	z-index:1;
}

#slider p{
	position:absolute;
	bottom:10px;
	right:50px;
	z-index:1;
}

#slider li{
	height:800px;
}

#slider .bnr{
	position:absolute;
	bottom:27px;
	left:31px;
	z-index:1;
}


/* ----------------------------------------
	scroll
---------------------------------------- */
#scroll{
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100px;
	background:#323232;
	border:6px solid #b99c24;
	border-bottom:none;
	z-index:100;
}

#scroll .logo{
	width:300px;
	padding:24px 0 20px 50px;
	background:#b99c24;
}

#scroll .tel{
	position:absolute;
	top:24px;
	right:30px;
	line-height:1;
}

#scroll nav{
	position:absolute;
	bottom:20px;
	right:30px;
}


/* navi
---------------------------------------- */
#scroll .navi{
	display:flex;
	position:absolute;
	top:20px;
	right:228px;
}

#scroll .navi a{
	display:block;
	width:180px;
	margin:0 0 0 15px;
	background:#FFFFFF;
	border-radius:3px;
	text-align:center;
	font-size:1.3rem;
	line-height:2.4rem;
	text-decoration:none;
	transition-duration:0.2s;
}

#scroll .navi a:hover{
	opacity:0.8;
}

#scroll .navi .line a{
	background:#1EC422;
	border-color:#1EC422;
	color:#FFFFFF;
}


/* gnavi
---------------------------------------- */
#scroll .gnavi li{
	float:left;
	padding:0 0 0 20px;
	font-size:1.3rem;
	font-weight:bold;
	line-height:23px;
	letter-spacing:2px;
}

#scroll .gnavi li a{ color:#ffffff; text-decoration:none; }
#scroll .gnavi li a:hover{ text-decoration:underline; }


/* ----------------------------------------
	news
---------------------------------------- */
#top .news{
	background:#faf8f1;
	border-bottom:1px solid #b99c24;
}

#top .news .inner{
	overflow:hidden;
	width:920px;
}

#top .news h2{
	float:left;
	width:90px;
	line-height:68px;
}

#top .news h2 img{
	vertical-align:middle;
}

#top .news p{
	float:left;
	width:830px;
	padding:22px 0 22px 40px;
	text-align:left;
	font-size:1.3rem;
	line-height:24px;
}

#top .news p time{
	float:left;
	padding:0 30px 0 0;
	font-size:1.5rem;
	font-weight:bold;
}

#top .news p span{
	display:table;
}

#top .news p br{
	display: none;
}


/* ----------------------------------------
	service
---------------------------------------- */
#top .service{
	padding:90px 0 30px 0;
	text-align:center;
}


/* txt_01
---------------------------------------- */
#top .service .txt_01{
	margin:0 0 22px 0;
	font-size:1.6rem;
	font-weight:bold;
	letter-spacing:0.05em;
}

#top .service .txt_01 span{
	display:inline-block;
	margin:0 2px;
	padding:0 6px;
	background:#F2EAD0;
	line-height:2.4rem;
}

#top .service .txt_01 img{
	margin:20px 0 0 0;
}


/* txt_02
---------------------------------------- */
#top .service .txt_02{
	width:800px;
	margin:0 auto;
	padding:7px 10px;
	background:#B59824;
	border-radius:5px;
	box-shadow:0 3px 6px 0 rgba(0,0,0,0.16);
	font-size:2.0rem;
	font-weight:bold;
	color:#FFFFFF;
	line-height:3.0rem;
}

#top .service .txt_02 span{
	color:#BE0F19;
}


/* ----------------------------------------
	photographer
---------------------------------------- */
#top .photographer .inner{
	overflow:hidden;
	width:1120px;
	padding:60px 0 60px 10px;
	text-align:left;
}

#top .photographer .key{
	float:left;
	margin:0 40px 0 0;
}

#top .photographer h2{
	padding:64px 0 50px 0;
	text-align:left;
}

#top .photographer p.lead{
	padding:0 0 10px 0;
	font-size:3.0rem;
	font-weight:bold;
	color:#B59824;
	line-height:50px;
	letter-spacing:normal;
}

#top .photographer p.lead span{
	color:#BE0F19;
}


/* ----------------------------------------
	youtube
---------------------------------------- */
#top .youtube{
	padding:120px 0 100px 0;
	background:url(../../img/top/bg_youtube.png) center;
	background-size:293px;
}

#top .youtube .inner{
	width:920px;
}

#top .youtube h2{
	margin:0 0 20px 0;
}

#top .youtube p{
	margin:0 0 30px 0;
}

#top .youtube ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

#top .youtube ul li{
	width:275px;
	margin:0 0 60px 0;
	text-align:left;
	font-size:1.4rem;
	line-height:2.6rem;
	font-weight:bold;
}

#top .youtube ul li a{
	text-decoration:none;
}

#top .youtube ul li img{
	margin:0 0 10px 0;
}


/* ----------------------------------------
	topic
---------------------------------------- */
#top .topic{
	padding:100px 0 30px 0;
}

#top .topic ul li{
	padding:0 0 40px 0;
	/*padding:0 0 60px 0;*/
	}


/* ----------------------------------------
	about
---------------------------------------- */
#top .about{
	padding:0 0 60px 0;
	border:none;
}

#top .about h2{
	padding:0 0 54px 0;
}

#top .about p{
	padding:0 0 50px 0;
}

#top .about p.lead{
	padding-bottom:40px;
}

#top .about ul {
	padding-top: 10px;
}

#top .about ul li{
	float:left;
	width:440px;
	margin:0 0 30px 40px;
	padding:0 20px 0 30px;
	background:#fbf9f2;
	border:1px solid #b99c24;
	border-radius:5px;
	box-shadow: 0 0 6px #8c8c8c;
}

#top .about dl{
	display:table;
	height:160px;
}

#top .about dl dt{
	display:table-cell;
	width:132px;
	vertical-align:middle;
}

#top .about dl dd{
	display:table-cell;
	padding:0 0 0 30px;
	text-align:left;
	vertical-align:middle;
	line-height:2;
}


/* ----------------------------------------
	portfolio
---------------------------------------- */
#top .portfolio{
	padding:0 0 90px 0;
	border:none;
}

#top .portfolio h2{
	padding:0 0 50px 0;
}


/* loopslide
---------------------------------------- */
#loopslide{
	padding:0 0 50px 0;
}

#loopslide .simply-scroll-clip{
	overflow:hidden;
}

#loopslide ul li{
	float:left;
	width:250px;
}

#loopslide ul li a{
	display:block;
	transition-duration:0.2s;
}

#loopslide ul li a:hover{
	opacity:0.8;
}


/* ----------------------------------------
	voice
---------------------------------------- */
#top .voice{
	position:relative;
	padding:100px 0 70px 0;
	background:#ffffff;
}

#top .voice::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:700px;
	background:url(../../img/top/bg_voice01.png) no-repeat center;
	background-size:cover;
}

#top .voice h2{
	position:relative;
	padding:0 0 30px 0;
}

#top .voice > p{
	position:relative;
	padding:0 0 50px 0;
	color:#ffffff;
}

#top .voice .interview a{
	display:inline-block;
	position:relative;
	margin:0 0 30px 0;
}

#top .voice .interview a::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#ffffff;
	border-radius:3px;
}

#top .voice .interview img{
	position:relative;
	box-shadow:0 0 6px #8c8c8c;
}

#top .voice ul{
	overflow:visible;
	width:920px;
	margin:0 auto;
	text-align:left;
}

#top .voice ul li{
	margin:0 0 30px 0;
	background:#b99c24;
	border:1px solid #b99c24;
	border-radius:3px;
	box-shadow:0 0 6px #8c8c8c;
	vertical-align:top;
	font-size:1.4rem;
	line-height:34px;
}

#top .voice ul li h3{
	position:relative;
	float:left;
	width:280px;
	padding:30px 0 0 0;
	font-size:1.3rem;
	font-weight:bold;
	color:#ffffff;
	line-height:25px;
}

#top .voice ul li h3::before{
	content:"";
	position:absolute;
	top:20px;
	left:34px;
	width:124px;
	height:23px;
	background:url(../../img/top/bg_voice02.png) no-repeat;
	background-size:100%;
}

#top .voice ul li h3 span{
	display:block;
	padding:12px 0 0 34px;
}

#top .voice .block{
	overflow:hidden;
	padding:24px 34px;
	background:#ffffff;
}

#top .voice .block dl dt{
	font-weight:bold;
	color:#b99c24;
}


/* ----------------------------------------
	recommend
---------------------------------------- */
#top .recommend{
	padding:120px 0 100px 0;
	background:#fbf9f2;
	border:none;
}

#top .recommend .inner{
	position:relative;
	width:920px;
	padding:30px 0 50px 0;
	background:#B59824;
	border-radius:5px;:
}

#top .recommend h2{
	position:absolute;
	top:-20px;
	left:50%;
	-webkit-transform:translateX(-50%); /* Android */
	transform:translateX(-50%);
	font-size:2.7rem;
	font-weight:bold;
	color:#FFFFFF;
	line-height:1;
	letter-spacing:0.05em;
}

#top .recommend h2 span{
	display:block;
	width:290px;
	margin:0 auto 20px;
	padding:10px 0;
	background:#1F1F1F;
	border-radius:20px;
	font-size:2.0rem;
}

#top .recommend ul{
	overflow:visible;
	display:flex;
	margin:0 -69px 40px;
}

#top .recommend ul li:nth-child(2){
	margin:72px 22px 0;
}

#top .recommend p{
	font-size:1.5rem;
	color:#FFFFFF;
}

#top .recommend p span{
	font-weight:bold;
	color:#BE0F19;
}


/* ----------------------------------------
	attitude
	need
---------------------------------------- */
#top .attitude,
#top .need{
	padding:0 0 100px 0;
	background:#fbf9f2;
	border:none;
}

#top .attitude h2,
#top .need h2{
	padding:0 0 38px 0;
}

#top .attitude p img,
#top .need p img{
	margin:0 0 34px 0;
}


/* ----------------------------------------
	step
---------------------------------------- */
#top .step{
	padding:0 0 100px 0;
	background:#fbf9f2;
}

#top .step h2{
	margin:0 0 20px 0;
}

#top .step ul,
#top .step ol{
	display:flex;
	justify-content:center;
	gap:0 40px;
	margin:0 0 30px 0;
}
#top .step ol{ margin-bottom:40px; }

#top .step ul li{
	padding:0 0 0 48px;
	background:url(../../img/top/icon_check.png) no-repeat left top;
	background-size:40px 36px;
	font-size:1.6rem;
	font-weight:bold;
	color:#B99C24;
	line-height:3.6rem;
}

#top .step ol li{
	position:relative;
}

#top .step ol li::before{
	content:"";
	position:absolute;
	top:134px;
	right:-20px;
	width:32px;
	height:13px;
	background:url(../../img/top/arrow_step.png) no-repeat center;
	background-size:100%;
}
#top .step ol li:last-child::before{ content:none; }

#top .step p{
	margin:0 0 20px 0;
	font-size:1.8rem;
	font-weight:bold;
	color:#B99C24;
	line-height:2.8rem;
	letter-spacing:0.05em;
}

#top .step p span{
	color:#BE0000;
}

#top .step p.form{
	width:560px;
	margin:0 auto 80px;
	padding:6px 0;
	background:#231815;
	border-radius:20px;
	color:#FFFFFF;
}


/* ----------------------------------------
	good
---------------------------------------- */
#top .good{
	padding:96px 0 30px 0;
}

#top .good h2{
	padding:0 0 24px 0;
}

#top .good p{
	padding:0 0 58px 0;
}

#top .good ul{
	width:1062px;
	margin:0 auto;
	text-align:left;
}

#top .good ul li{
	position:relative;
	height:494px;
	margin:0 0 54px 0;
	padding:0 14px;
}

#top .good ul li img:nth-of-type(2){
	position:absolute;
	top:10px;
	right:0;
}

#top .good ul li:nth-child(2n){ text-align:right; }
#top .good ul li:nth-child(2n) img:nth-of-type(2){ left:0; }


/* ----------------------------------------
	contact
---------------------------------------- */
#top .contact{
	padding:80px 0 86px 0;
}


/* ========================================================================
	料金プラン										[ /price/ ]
======================================================================== */
#price > section:nth-of-type(odd){
	background:#fbf9f2;
}

#price strong{
	font-size:1.6rem;
	color:#BE0000;
}

#price p{
	padding:0 0 60px 0;
}

#price p.note{
	padding:0;
	text-align:right;
}


/* ----------------------------------------
	section
---------------------------------------- */
#price > section{
	padding:80px 0 100px 0;
}


/* ----------------------------------------
	table
---------------------------------------- */
#price table{
	text-align:center;
	font-size:1.6rem;
	line-height:30px;
}

#price table caption{
	padding:0 0 10px 0;
}

#price table span{
	font-weight:normal;
}

#price table th{
	/*width:190px;*/
	padding:20px 0;
	background:#faf8ef;
	border:1px solid #B99C24;
	font-weight:bold;
}
	
#price table.retouch-price th{
	width:190px;
}

#price table th.bg{
	background:#f1ebd2;
}

#price table td{
	padding:20px 0;
	background:#ffffff;
	border:1px solid #B99C24;
	font-weight:bold;
}

#price table th > span,
#price table td > span{
	font-size:1.4rem;
	font-weight:normal;
}


/* column
---------------------------------------- */
#price .column > table{
	float:left;
	width:31%;
}

#price .column > table:nth-of-type(2){
	margin:0 30px 0 30px;
}

/* column.table.retouch-price
---------------------------------------- */
#price .column > table.retouch-price{
	float:left;
	width:50%;
}

#price .column > table.retouch-price:nth-of-type(2){
	margin:0 0 0 -1px;
}

/* ----------------------------------------
	plan
---------------------------------------- */
#price .plan.inner{
	width:960px;
	padding:0 0 40px 0;
}

#price .plan ul{
	overflow:visible;
	margin:0 0 10px 0;
	border-top:1px solid #B99C24;
	border-left:1px solid #B99C24;
}

/* ---------- clearfix ---------- */
#price .plan ul::after{
	content:"";
	display:block;
	clear:both;
}
/* ------------------------------ */

#price .plan ul li{
	position:relative;
	float:left;
	width:50%;
	border-bottom:1px solid #B99C24;
	border-right:1px solid #B99C24;
	text-align:center;
}

#price .plan ul li::before{
	content:"";
	position:absolute;
	top:8px;
	right:8px;
	border-style:solid;
	border-width:0 30px 30px 0;
	border-color:transparent #f1ebd2 transparent transparent;
}

#price .plan ul li img{
	display:block;
	margin:0 auto 10px;
}

#price .plan dl{
	padding:36px 0 0 0;
}

#price .plan dt{
	padding:0 0 20px 0;
	font-size:2.3rem;
	font-weight:bold;
}

#price .plan dt span{
	color:#BE0000;
}

#price .plan dd{
	padding:0 0 30px 0;
	line-height:22px;
}


/* ----------------------------------------
	price
---------------------------------------- */
#price .price.inner{
	width:960px;
}

#price .price section{
	padding:0 0 100px 0;
}

#price .price table{
	table-layout:fixed;
	margin:0 0 20px 0;
}

#price .price table .size_price{
	margin:30px 0 10px 0;
}

#price .price table .size_price + span{
	display:block;
	margin:0 0 30px 0;
	font-size:1.6rem;
}

#price .price table th{
	width:160px;
}

#price .price table th[scope="row"]{
	padding:14px 0;
	background:#B99C24;
	color:#ffffff;
}

#price .price table th[scope="col"]{
	width:auto;
	background:#ffffff;
	padding:14px 0;
}

#price .price table th[scope="colgroup"]{
	padding:0;
	background:#B99C24;
	color:#ffffff;
}

#price .price table th[scope="colgroup"] span{
	display:block;
	width:160px;
	font-size:1.6rem;
	font-weight:bold;
}

#price .price ul li{
	padding:0 0 0 1.0em;
	text-indent:-1.0em;
	font-size:1.3rem;
	line-height:25px;
}

#price .price dd{
	line-height:22px;
	margin: 0 0 30px;
}

/* special
---------------------------------------- */
#price .price .special dt{
	position:relative;
	width:120px;
	margin:10px auto;
	background:#B99C24;
	font-weight:bold;
	color:#ffffff;
	line-height:25px;
}

#price .price .special dt::after{
	content:"";
	position:absolute;
	bottom:-8px;
	left:50%;
	margin:0 0 0 -5px;
	border-style:solid;
	border-width:8px 5px 0 5px;
	border-color:#B99C24 transparent transparent transparent;
}

#price .price .special dd{
	font-size:1.4rem;
	line-height:25px;
}

#price .price .special dd span{
	display:inline-block;
	width:200px;
	margin:10px 0 0 0;
	border:1px solid #B99C24;
	line-height:23px;
}


/* kokodake
---------------------------------------- */
#price .price .kokodake span strong{
	font-size:1.4rem;
}

#price .price .kokodake .size_plan{
	margin:0 20px 0 0;
}

#price .price .kokodake .size_price{
	margin:0 0 10px 0;
}

#price .price .kokodake table th[scope="col"]{
	font-weight:normal;
}

#price .price .kokodake .space > td{
	padding:50px 60px 30px;
}

#price .price .kokodake .space table{
	position:relative;
	table-layout:auto;
	margin:0;
}

#price .price .kokodake .space table caption{
	padding:0 0 5px 0;
	text-align:left;
}

#price .price .kokodake .space table th{
	width:auto;
	padding:5px 0;
	background:#faf8ef;
	font-weight:bold;
}
#price .price .kokodake .space table th.bg{
	background:#f1ebd2;
}

#price .price .kokodake .space table td{
	padding:5px 0;
}


/* watanabe
---------------------------------------- */
#price .price .watanabe{
	margin-top:-20px;
	padding-top:20px;
}


/* option
---------------------------------------- */
/*#price .price .option{
	position:relative;
	padding:0;
	border:1px solid #B99C24;
	text-align:center;
}

#price .price .option::before{
	content:"";
	position:absolute;
	top:-96px;
	left:0;
	width:100%;
	height:45px;
	background:url(../../img/price/icon_option.png) no-repeat center;
	background-size:45px;
}

#price .price .option dl{
	padding:48px 0;
	background:#FAF8EF;
	border-bottom:1px solid #B99C24;
}

#price .price .option dl dt{
	padding:0 0 20px 0;
	font-size:1.6rem;
	font-weight:bold;
	color:#b99c24;
}

#price .price .option dl dt span{
	color:#BE0000;
}

#price .price .option dl ul{
	font-size:0;
}

#price .price .option dl ul li{
	display:inline-block;
	padding:0 1.0em;
	font-size:1.4rem;
	line-height:1.2;
	text-indent:0;
}*/


/* ----- title ----- */
/*#price .price .option .title a{
	display:block;
	padding:0 395px 0 0;
	background:url(../../img/price/bg_option.png) no-repeat 525px 27px #B99C24;
	background-size:374px 160px;
	text-decoration:none;
}

#price .price .option .title h3{
	padding:50px 0 35px 0;
}

#price .price .option .title p{
	padding:0 0 50px 0;
	color:#ffffff;
	line-height:1;
}*/


/* ----- photobook ----- */
/*#price .price .photobook{
	padding:70px 0 40px 0;
	border-bottom:1px solid #B99C24;
}

#price .price .photobook h4{
	padding:0 0 30px 0;
}

#price .price .photobook ul{
	padding:0 0 0 54px;
}

#price .price .photobook ul li{
	float:left;
	width:190px;
	margin:0 30px 30px 0;
	padding:0;
	text-indent:0;
}*/


/* ----- message ----- */
/*#price .price .message{
	padding:50px 0 70px 0;
}

#price .price .message h4{
	padding:0 0 18px 0;
	font-size:2.1rem;
	font-weight:bold;
}

#price .price .message p{
	padding:0 0 30px 0;
}*/


/* ----------------------------------------
	traffic
---------------------------------------- */
#price .traffic{
	padding-bottom:0;
}

#price .traffic .inner{
	padding:0 0 100px 0;
}

#price .traffic table th{
	padding:5px 0;
	font-weight: normal;
}

#price .traffic table td{
	padding:5px 0;
}


/* ----------------------------------------
	retouch
---------------------------------------- */
#price .retouch p{
	padding-bottom:50px;
}

#price .retouch .beforeafter{
	overflow:hidden;
}

#price .retouch .beforeafter p{
	float:left;
	width:410px;
	text-align:right;
	font-size:1.3rem;
	line-height:37px;
}
#price .retouch .beforeafter p:nth-of-type(2){ float:right; width:420px; }

#price .retouch .beforeafter p:nth-of-type(2) img{
	display:block;
	margin:0 0 0 10px;
}

#price .retouch .beforeafter p span{
	font-weight:bold;
	color:#BE0000;
}


/* ----------------------------------------
	delivery
---------------------------------------- */
#price .delivery h3{
	width:335px;
	margin:0 auto;
	background:#B99C24;
	text-align:center;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:30px;
}

#price .delivery section:nth-of-type(2) h3{
	margin-bottom:40px;
}

#price .delivery section:first-of-type{
	padding:0 0 20px 0;
}

#price .delivery section p{
	padding:0 0 80px 0;
}


/* column
---------------------------------------- */
#price .delivery .column{
	overflow:visible;
}

#price .delivery .column::after{
	content:"";
	display:block;
	clear:both;
}

#price .delivery .block{
	float:left;
	width:380px;
}

#price .delivery .block table{
	margin:0 0 18px 0;
}

#price .delivery .block table th{
	width:170px;
	padding:10px 0;
	font-weight: normal;
}

#price .delivery .block table td{
	padding:10px 0;
}

#price .delivery ul li{
	padding:0 0 0 1.0em;
	text-indent:-1.0em;
	font-size:1.3rem;
	line-height:25px;
}

#price .delivery figure{
	float:right;
	margin:0 -10px 0 0;
}


/* ----------------------------------------
	data
---------------------------------------- */
#price .data{
	margin:100px auto 120px;
	padding:60px 50px 10px;
	border:1px solid #B99C24;
}

#price .data h3{
	padding:0 0 10px 0;
	font-size:1.6rem;
	font-weight:bold;
	color:#B99C24;
	line-height:36px;
}

#price .data p{
	padding:0 0 10px 0;
}

#price .data section{
	overflow:hidden;
	padding:50px 20px;
	border-bottom:1px dashed #B99C24;
}

#price .data section:nth-of-type(2){
	border:none;
}

#price .data section img{
	float:right;
}

#price .data section p{
	overflow:hidden;
	padding:0 80px 0 0;
}


/* ========================================================================
	フォトブック・アルバム製作						[ /photobook/ ]
======================================================================== */
#photobook{
	background:url(../../img/photobook/bg_01.png) no-repeat right top;
	background-size:399px 409px;
	text-align:center;
}

#photobook > section{
	padding:80px 0 100px 0;
}

#photobook h3{
	padding:0 0 30px 0;
	text-align:center;
	font-size:2.8rem;
	font-weight:bold;
	line-height:1;
	letter-spacing:4px;
}

#photobook p{
	padding:0 0 30px 0;
}


/* ----------------------------------------
	about
---------------------------------------- */
#photobook .about{
	margin:0 0 100px 0;
}

#photobook .about dl{
	width:784px;
	margin:0 auto;
	background:#F1EBD2;
}

#photobook .about dl dt{
	position:relative;
	padding:35px 0 13px 0;
	font-size:1.8rem;
	font-weight:bold;
	color:#B59824;
	line-height:2.8rem;
}

#photobook .about dl dt span{
	color:#BE0F19;
}

#photobook .about dl dd{
	position:relative;
	padding:0 0 30px 0;
	line-height:2.4rem;
}

#photobook .about dl dt::before,
#photobook .about dl dt::after,
#photobook .about dl dd::before,
#photobook .about dl dd::after{
	content:"";
	position:absolute;
	top:-4px;
	left:-4px;
	width:29.5px;
	height:29.5px;
	background:url(../../img/photobook/bg_corner.png) no-repeat center;
	background-size:29.5px;
}
#photobook .about dl dt::after,
#photobook .about dl dd::after{
	transform:scale(-1, 1);
	left:auto;
	right:-4px;
}
#photobook .about dl dd::before,
#photobook .about dl dd::after{
	transform:scale(1, -1);
	top:auto;
	bottom:-4px;
}
#photobook .about dl dd::after{
	transform:scale(-1, -1);
}


/* ----------------------------------------
	navi
---------------------------------------- */
#photobook .navi{
	background:url(../../img/photobook/bg_02.png) no-repeat left bottom;
	background-size:405px 409px;
	padding:0 0 100px 0;
}

#photobook .navi p span{
	font-weight:bold;
}

#photobook .navi ul{
	display:flex;
	justify-content:center;
}

#photobook .navi ul li{
	width:295px;
	margin:0 25px;
}

#photobook .navi ul li a{
	text-decoration:none;
}

#photobook .navi h3{
	margin:20px 0 15px 0;
	padding:0;
	font-size:2.2rem;
	color:#B59824;
	letter-spacing:normal;
}

#photobook .navi h3 span{
	display:block;
	margin:10px 0 0 0;
	font-size:1.6rem;
}

#photobook .navi table{
	text-align:left;
	line-height:2.4rem;
}

#photobook .navi table th{
	width:80px;
	padding:5px 0 0 10px;
	vertical-align:top;
	font-weight:bold;
}

#photobook .navi table td{
	padding:5px 0 0 0;
}


/* img
---------------------------------------- */
#photobook .navi .img{
	position:relative;
}

#photobook .navi .img::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:calc(100% - 8px);
	height:calc(100% - 8px);
	border:4px solid transparent;
	border-radius:5px;
	transition-duration:0.2s;
}
#photobook .navi .on .img::before,
#photobook .navi ul li a:hover .img::before{
	border-color:#B59824;
}


/* ----------------------------------------
	book
---------------------------------------- */
#photobook .book{
	position:relative;
	padding:480px 0 100px 0;
	background:#fbf9f2;
}

#photobook .book::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:400px;
	background:url(../../img/photobook/soft/bg_book.png) no-repeat center;
	background-size:cover;
}
#photobook.hard .book::before{ background-image:url(../../img/photobook/hard/bg_book.png); }
#photobook.analog .book::before{ background-image:url(../../img/photobook/analog/bg_book.png); }


/* key
---------------------------------------- */
#photobook .book .key{
	min-height:714px;
	margin:0 0 80px 0;
	padding:168px 0 53px 0;
	background:url(../../img/photobook/the-book/bg_book.png) no-repeat center;
	background-size:cover;
}


/* btn
---------------------------------------- */
#photobook .book .btn{
	padding:50px 0 0 0;
}


/* the-book
---------------------------------------- */
#photobook.the-book .book{
	padding:0 0 100px 0;
	background:#000000;
	color:#FFFFFF;
}
#photobook.the-book .book::before{ content:none; }

#photobook.the-book .book section{
	padding:0 0 50px 0;
}

#photobook.the-book .book section > img{
	display:block;
	margin:0 auto 30px;
}


/* ---------- btn ---------- */
#photobook.the-book .book .btn{
	padding:0;
}


/* ----------------------------------------
	layout
---------------------------------------- */
#photobook .layout{
	padding-bottom:80px;
	background:#B99C24;
}

#photobook .layout p{
	color:#ffffff;
}

#photobook .layout ul li{
	float:left;
	width:274px;
	margin:0 19px 20px 0;
}
#photobook .layout ul li:nth-child(3n){ margin-right:0; }


/* hard
---------------------------------------- */
#photobook.hard .layout ul li{
	width:420px;
	margin-right:20px;
}
#photobook.hard .layout ul li:nth-child(2n){ margin-right:0; }


/* the-book
---------------------------------------- */
#photobook.the-book .layout{
	padding-bottom:20px;
	background:#191919;
	color:#FFFFFF;
}

#photobook.the-book .layout section{
	padding:0 0 80px 0;
}

#photobook.the-book .layout section > img{
	display:block;
	margin:0 auto 40px;
}

#photobook.the-book .layout h3{
	float:left;
	width:360px;
	margin:0 0 0 30px;
	padding:0;
	text-align:left;
	font-size:2.4rem;
	line-height:4.0rem;
	letter-spacing:normal;
}

#photobook.the-book .layout h3 span{
	display:block;
	width:154px;
	margin:0 0 10px 0;
	background:#B59824;
	border-radius:5px;
	text-align:center;
	font-size:1.4rem;
	line-height:2.8rem;
}

#photobook.the-book .layout p{
	margin:0 30px 0 0;
	padding:0;
	text-align:left;
}


/* ----------------------------------------
	type
---------------------------------------- */
#photobook .type .inner{
	width:1000px;
}

#photobook .type h3{
	line-height:0;
}


/* column
---------------------------------------- */
#photobook .type .column{
	display:flex;
	justify-content:center;
}

#photobook .type .column dl,
#photobook .type .column > div{
	margin:0 30px 100px;
	width:400px;
	line-height:2.4rem;
}

#photobook .type .column dl dt span,
#photobook .type .column > div span{
	display:block;
	width:330px;
	margin:15px auto 10px;
	border:1px solid #B59824;
	border-radius:5px;
	font-size:1.6rem;
	font-weight:bold;
	line-height:3.6rem;
}
#photobook .type .column > div span{ margin-bottom:0; }


/* box
---------------------------------------- */
#photobook .type .box{
	padding:56px 0 0 0;
	background:url(../../img/photobook/bg_type.png) no-repeat center;
	background-size:861px 711px;
}

#photobook .type .box > ul,
#photobook .type .box dl{
	overflow:hidden;
	padding:0 0 60px 0;
}

#photobook .type .box dl dt{
	float:left;
	width:176px;
	padding:54px 0 0 0;
}
#photobook .type .box dl.extra-large dt{ padding-top:40px; }
#photobook .type .box dl.small dt{ padding-top:48px; }

#photobook .type .box dl dd{
	float:right;
	width:816px;
}

#photobook .type .box ul{
	font-size:0;
}
#photobook .type .box dl dd ul{ text-align:left; }

#photobook .type .box ul li{
	display:inline-block;
	margin:0 0 0 16px;
}
#photobook .type .box > ul > li{ margin:0 10px; }


/* the-book
---------------------------------------- */
#photobook.the-book .type{
	padding-bottom:20px;
	background:#000000;
	color:#FFFFFF;
}

#photobook.the-book .type .column dl dt span{
	width:364px;
}

#photobook.the-book .type .box{
	background:url(../../img/photobook/the-book/bg_type.png) no-repeat center;
	background-size:861px 1021px;
}

#photobook.the-book .type .box dl.small dt{
	padding-top:10px;
}


/* ----------------------------------------
	price
---------------------------------------- */
#photobook .price{
	padding-bottom:0;
	background:#fbf9f2;
}

#photobook .price section{
	padding:0 0 100px 0;
}

#photobook .price h3{
	margin:0 0 20px 0;
	padding:0;
	text-align:left;
	font-size:2.0rem;
	line-height:2.2rem;
	letter-spacing:normal;
}

#photobook .price h3 span{
	display:inline-block;
	vertical-align:top;
	font-size:1.4rem;
	line-height:1;
}

#photobook .price h3 span.paint{
	margin:0 0 0 30px;
	padding:0 30px;
	background:#151515;
	border-radius:5px;
	color:#ffffff;
	line-height:2.2rem;
}

#photobook .price table{
	table-layout:fixed;
	margin:0 0 60px 0;
	line-height:1;
}

#photobook .price table th{
	height:50px;
	background:#B59824;
	border:1px solid #B59824;
	color:#FFFFFF;
}

#photobook .price table th:nth-child(even){
	background:#917608;
}

#photobook .price table th span{
	display:block;
	margin:6px 0 0 0;
	font-size:1.2rem;
}

#photobook .price table td{
	padding:5px 0;
	border:1px solid #B59824;
}

#photobook .price table th:last-child,
#photobook .price table td:last-child{
	width:140px;
}

#photobook .price table tr:nth-child(even) td{
	background:#FFFFFF;
}

/* 斜め線
#photobook .price table{
	table-layout:fixed;
	margin:0 0 10px 0;
	font-size:1.6rem;
	line-height:28px;
}

#photobook .price table .total{
	background:#ffffff;
}

#photobook .price table th{
	padding:10px 0;
	border:1px solid #B99C24;
	font-weight:bold;
}

#photobook .price table th.bg{ background:#F1EBD2; }
#photobook .price table th.bg_02{ background:#B99C24; color:#ffffff; }

#photobook .price table th.diagonal{
	position:relative;
	padding:20px 0;
	background:#B99C24;
	font-size:1.4rem;
	font-weight:normal;
	color:#ffffff;
}

#photobook .price table th.diagonal svg{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

#photobook .price table th.diagonal span{
	position:absolute;
	line-height:1;
}

#photobook .price table th.diagonal .number{ top:8px; right:10px; }
#photobook .price table th.diagonal .size{ bottom:8px; left:10px; }

#photobook .price table th[scope="rowgroup"]{
	width:180px;
}

#photobook .price table th[scope="rowgroup"] span{
	display:inline-block;
	text-align:left;
}

#photobook .price table th[scope="row"]{
	width:120px;
	font-size:1.5rem;
}

#photobook .price table th[scope="col"]{
	padding:20px 0;
	background:#ffffff;
}

#photobook .price table td{
	padding:15px 0;
	background:#ffffff;
	border:1px solid #B99C24;
}

#photobook .price table td span{
	font-weight:bold;
	color:#BE0000;
}

#photobook .price table ul{
	display:inline-block;
	text-align:left;
}

#photobook .price table ul li{
	font-size:1.6rem;
	line-height:28px;
}
*/


/* note
---------------------------------------- */
#photobook .price .note{
	margin:20px 0 0 0;
	text-align:left;
}
#photobook .price .scroll + .note{ margin:-40px 0 0 0; }

#photobook .price .note li{
	padding:0 0 0 1.0em;
	text-indent:-1.0em;
	line-height:2.4rem;
}

#photobook .price .note li.bold{
	font-weight:bold;
}

#photobook .price .note li span{
	color:#BE0F19;
}


/* case
---------------------------------------- */
#photobook .price .case dt{
	padding:10px 0;
	text-align:left;
	font-size:1.6rem;
	font-weight:bold;
	color:#B59824;
	line-height:2.6rem;
}

#photobook .price .case dt span{
	color:#BE0F19;
}

#photobook .price .case ol{
	display:flex;
	justify-content:space-between;
	gap:0 40px;
	margin:0 0 20px 0;
}
#photobook .price .case ol.column_04{ gap:0 46px; }
#photobook .price .case ol.column_06{ gap:0 16px; }

#photobook .price .case ol li{
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	position:relative;
	width:100%;
	height:100px;
	background:#FFFFFF;
	border:2px solid #B59824;
	border-radius:5px;
	line-height:1.8rem;
}

#photobook .price .case ol li::before{
	content:"";
	position:absolute;
	top:36px;
	left:-34px;
	width:24px;
	height:24px;
	background:url(../../img/photobook/icon_plus.png) no-repeat center;
	background-size:24px;
}
#photobook .price .case ol li:first-child::before{ content:none; }
#photobook .price .case ol.column_04 li::before{ left:-37px; }
#photobook .price .case ol.column_06 li::before{ left:-22px; }

#photobook .price .case ol li > span{
	display:block;
	font-weight:bold;
	color:#B59824;
}

#photobook .price .case ol li span.amount{
	margin:8px 0 0 0;
	color:#151515;
}

#photobook .price .case ol li span span{
	color:#BE0F19;
}


/* ---------- total ---------- */
#photobook .price .case ol li.total{
	background:#B59824;
	font-weight:bold;
	color:#FFFFFF;
}
#photobook .price .case ol li.total::before{ background-image:url(../../img/photobook/icon_equal.png); }

#photobook .price .case ol li.total span.amount{
	font-size:1.6rem;
	color:#FFFFFF;
}


/* soft
---------------------------------------- */
#photobook.soft .price table td{
	padding:13px 0;
}


/* the-book
---------------------------------------- */
#photobook.the-book .price{
	background:#000000;
	color:#FFFFFF;
}

#photobook.the-book .price h3 span.paint{
	background:#FFFFFF;
	color:#333333;
}

#photobook.the-book .price table{
	border-bottom:1px solid #B59824;
}

#photobook.the-book .price table th,
#photobook.the-book .price table td{
	border:none;
	border-right:1px solid #B59824;
}
#photobook.the-book .price table td{ background:#272727; }
#photobook.the-book .price table th:last-child,
#photobook.the-book .price table td:last-child{ border:none; }

#photobook.the-book .price table tr:nth-child(even) td{
	background:#000000;
}


/* ---------- case ---------- */
#photobook.the-book  .price .case dt,
#photobook.the-book .price .case ol li span.amount{
	color:#FFFFFF;
}

#photobook.the-book .price .case ol li:not(.total){
	background:none;
}


/* ----------------------------------------
	flow
---------------------------------------- */
#photobook .flow{
	padding-bottom:120px;
}

#photobook .flow p{
	padding-bottom:0;
}

#photobook .flow ol li{
	position:relative;
	padding:78px 0 0 0;
	background:url(../../img/photobook/flow_arrow01.png) no-repeat center top;
	background-size:14px 78px;
}

#photobook .flow ol li:first-child{
	background:none;
}

#photobook .flow ol li > img{
	position:absolute;
	top:36px;
	left:28px;
}

#photobook .flow dl dt{
	background:#B99C24;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:30px;
	letter-spacing:1px;
}

#photobook .flow dl dd{
	padding:14px 0 20px 0;
	border-top:none;
	border:1px solid #B99C24;
	line-height:34px;
}


/* pattern
---------------------------------------- */
#photobook .flow .pattern{
	background-image:url(../../img/photobook/flow_arrow02.png);
}

#photobook .flow .pattern dd{
	padding:0;
}


/* ========================================================================
	about us										[ /about/ ]
======================================================================== */
#about > p{
	padding:0 0 90px 0;
}

#about > p.contact{
	width:600px;
	margin:0 auto;
	padding:90px 0 50px 0;
}


/* ----------------------------------------
	office
---------------------------------------- */
#about .office{
	width:620px;
	margin:0 auto;
	padding:10px 0 170px 0;
}

#about .office table{
	line-height:34px;
}

#about .office table th{
	width:176px;
	text-align:left;
	vertical-align: top;
}


/* ----------------------------------------
	member
---------------------------------------- */
#about .member{
	width:650px;
	margin:0 auto;
	padding:0 0 80px 0;
}

#about .member section{
	padding:0 0 90px 0;
}

#about .member h3{
	padding:30px 0 50px 0;
	line-height:1;
}

#about .member h3 span{
	display:inline-block;
	padding:15px 1.0em 0 0;
	font-size:2.0rem;
}

#about .member p.lead{
	padding:0 0 50px 0;
}


/* ----------------------------------------
	sense
---------------------------------------- */
#about .sense{
	padding:80px 0 0 0;
	background:#b99c24;
	color:#ffffff;
}

#about .sense > p{
	padding:0 0 30px 0;
	text-align:center;
}

#about .sense ul li{
	padding:80px 0 90px 0;
}
#about .sense ul li:nth-child(even){ background:#b39411; }

#about .sense ul li h3{
	margin:0 0 -28px 0;
	text-align:center;
}
#about .sense ul li:nth-child(2) h3,
#about .sense ul li:nth-child(3) h3{ margin-bottom:-92px; }

#about .sense ul li p{
	width:600px;
	margin:0 auto;
}

#about .sense ul li p.lead{
	width:auto;
	padding:0 0 34px 0;
	text-align:center;
	font-size:2.8rem;
	font-weight:bold;
	line-height:50px;
	letter-spacing:3px;
}


/* ========================================================================
	お申込の流れ									[ /flow/ ]
======================================================================== */
#flow p{
	padding:0 0 60px 0;
}

#flow ol{
	padding:0 0 70px 0;
}

#flow ol li{
	overflow:hidden;
	padding:0 0 50px 0;
	background:url(../../img/flow/dot.png) repeat-y 79px center;
	background-size:3px 7px;
}

#flow ol li:last-child{
	background:none;
}

#flow ol li img{
	float:left;
	margin:0 28px 0 0;
}

#flow dl{
	overflow:hidden;
}

#flow dl dt{
	display:inline-block;
	margin:24px 0 20px 0;
	padding:0 24px;
	background:#b99c24;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:30px;
}

#flow dl dd{
	line-height:2.4;
}

#flow dl dd.note{
	margin:20px 0 0 0;
	padding:16px 28px;
	border:1px solid #b99c24;
	line-height:2.2;
}

#flow dl dd a{
	color:#bf0d23;
	text-decoration:none;
}


/* ========================================================================
	ご利用規約										[ /rule/ ]
======================================================================== */
#rule section{
	padding:0 0 60px 0;
}

#rule section:last-of-type{
	padding:0;
}

#rule span{
	color:#bf0d23;
}

#rule p{
	padding:0 0 20px 0;
}

#rule p.center{
	padding-bottom:80px;
}

#rule p.right{
	margin:-10px 0 0 0;
	padding-bottom:80px;
	text-align:right;
	font-size:1.2rem;
}

#rule ul{
	margin:0 0 20px 0;
	padding:16px 24px;
	border:1px solid #b99c24;
}

#rule ul li{
	line-height:2.2;
}

#rule ul li span span{
	font-size:1.2rem;
	color:#333333;
}

#rule ul li span.number{
	display:inline-block;
	width:20px;
	margin:0 0.5em 0 0;
	background:#b99c24;
	border-radius:50%;
	text-align:center;
	font-size:1.2rem;
	font-weight:bold;
	color:#ffffff;
	line-height:20px;
}


/* ========================================================================
	撮影実績										[ /portfolio/ ]
======================================================================== */
#portfolio h1{
	padding:0 0 50px 0;
}

#portfolio h2{
	padding:0 0 20px 0;
	font-size:1.3rem;
	color:#333333;
	line-height:1;
}

#portfolio ul{
	width:600px;
	margin:0 auto 150px;
}

#portfolio ul li{
	padding:0 0 50px 0;
}


/* ----------------------------------------
	list
---------------------------------------- */
#portfolio .list{
	width:1090px;
	margin:0 auto 120px;
}

#portfolio .list p{
	padding:0 0 10px 4px;
	line-height:0;
}

#portfolio .list p.old{
	margin:-30px 0 0 0;
	padding:10px 4px 0 0;
	text-align:right;
}

#portfolio .list ul{
	width:auto;
	margin:0;
}

#portfolio .list ul li{
	float:left;
	width:250px;
	margin:0 30px 30px 0;
	padding:0;
}
#portfolio .list ul li:nth-child(4n){ margin-right:0; }

#portfolio .list ul li a{
	display:block;
}


/* ----------------------------------------
	paging
---------------------------------------- */
#portfolio .paging{
	overflow:hidden;
	padding:0 60px;
	font-size:1.3rem;
	line-height:15px;
}
#portfolio .paging:first-of-type{ margin:0 0 -15px 0; }

#portfolio .paging a{
	float:left;
	padding:0 0 0 44px;
	background:url(../../img/portfolio/arrow_prev.png) no-repeat left center;
	background-size:36px 13px;
	text-decoration:none;
}

#portfolio .paging a.next{
	float:right;
	padding:0 44px 0 0;
	background:url(../../img/portfolio/arrow_next.png) no-repeat right center;
	background-size:36px 13px;
}

#portfolio .paging a:hover{
	text-decoration:underline;
}


/* ========================================================================
	お問い合わせ・資料請求・フォトブック申し込み	[ /contact/ ]
	撮影申込フォーム								[ /entry/ ]
	協力カメラマン募集中							[ /recruit/ ]
======================================================================== */
#contact .attention{
	font-weight:bold;
	color:#bf0d23;
}

#contact h2{
	position:relative;
}

#contact h2::before{
	content:"";
	position:absolute;
	top:8px;
	left:0;
	width:100%;
	height:1px;
	background:#b99c24;
}

#contact h2 span{
	position:relative;
	padding:0 20px 0 0;
	background:#ffffff;
}

#contact p{
	padding:0 0 30px 0;
}

#contact p span{
	font-weight:bold;
}

#contact table{
	margin:0 0 50px 0;
	line-height:40px;
}
#contact table.hide{
	display:none;
	margin-top:-50px;
}
#contact table.hide + table{
	margin-top:-50px;
}

#contact table th{
	width:300px;
	padding:10px 0;
	text-align:left;
	vertical-align:top;
}

#contact table td{	
	padding:10px 0;
}

#contact table span.note{
	display:block;
	font-size:1.3rem;
	line-height:1;
}

#contact table th span.note{
	margin:-16px 0 0 0;
	line-height:40px;
}

#contact table dl dt{
	padding:4px 0;
	color:#b99c24;
	line-height:1.8;
}

#contact table dl dd{
	padding:0 0 8px 0;
	line-height:1.8;
}

#contact table dl dd:last-of-type{
	padding:0;
}

#contact table input.size_S{
	width:150px;
	margin:0 20px 0 0;
}
#contact table input.size_M{
	width:280px;
	margin:0 40px 0 0;
}


/* ----------------------------------------
	entry
---------------------------------------- */
#contact.entry table label{
	margin:0 30px 0 0;
}


/* ----------------------------------------
	must
---------------------------------------- */
#contact .must{
	display:inline-block;
	width:40px;
	margin:0 14px;
	background:#BE0F19;
	border-radius:3px;
	text-align:center;
	vertical-align:text-bottom;
	font-size:1.2rem;
	color:#ffffff;
	line-height:2.0rem;
}


/* ----------------------------------------
	sample
---------------------------------------- */
#contact .sample{
	width:600px;
	margin:0 auto 60px;
	padding:20px 0;
	border:3px solid #B59824;
	border-radius:5px;
	text-align:center;
	line-height:1;
}

#contact .sample dt{
	margin:0 0 10px 0;
	font-size:2.0rem;
	font-weight:bold;
	color:#B59824;
}


/* ----------------------------------------
	navi
---------------------------------------- */
#contact .navi{
	padding:0 0 60px 0;
	text-align:center;
	font-size:0;
}

#contact .navi li{
	display:inline-block;
	margin:0 12px;
	font-size:1.6rem;
	font-weight:bold;
}

#contact .navi li a{
	display:block;
	width:294px;
	background:#faf8f0;
	border:1px solid #b99c24;
	color:#b99c24;
	line-height:38px;
	text-decoration:none;
}


/* ----------------------------------------
	qualification
---------------------------------------- */
#contact .qualification{
	padding:0 0 50px 0;
}

#contact .qualification ul li{
	line-height:34px;
}

#contact .qualification ul li span{
	color: #BE0F19;
	font-weight: bold;
}

/* ----------------------------------------
	photobook
---------------------------------------- */
/*
#contact .photobook{
	margin:10px 0 0 0;
	padding:10px 0 5px 0;
	border-top:1px solid #b99c24;
}

#contact .photobook p{
	padding:0;
}
*/


/* ----------------------------------------
	btn
---------------------------------------- */
#contact .btn{
	text-align:center;
}

#contact .btn button{
	border:none;
}

#contact .btn input{
	width:240px;
	height:60px;
	margin:0 10px;
	background:none;
	border:3px solid #B99C24;
	font-size:2.0rem;
	font-weight:bold;
	color:#B99C24;
	letter-spacing:2px;
}


/* ----------------------------------------
	btn_add
---------------------------------------- */
#contact .btn_add{
	display:inline-block;
}

#contact .btn_add button{
	width:120px;
	height:36px;
	background:#B59824;
	border:none;
	border-radius:5px;
	text-align:center;
	color:#ffffff;
}


/* ========================================================================
	Topic.1											[ /topic/ ]
======================================================================== */
#topic .inner{
	width:920px;
	padding:0 0 40px 0;
}

#topic section{
	padding:0 0 100px 0;
}

#topic .key{
	padding:0 0 50px 0;
}

#topic .btn{
	padding:90px 0 40px 0;
	border-top:1px solid #b99c24;
}

#topic .bnr{
	padding:50px 0 0 0;
}

#topic .inner > p{
	padding:0 30px 50px;
}

#topic p.lead{
	padding:0 30px 50px;
	line-height:1;
}

#topic ul li{
	position:relative;
}

#topic ul li span{
	position:absolute;
	top:0;
	left:0;
	width:170px;
	background:#b99c24;
	text-align:center;
	color:#ffffff;
	line-height:24px;
}


/* ----------------------------------------
	navi
---------------------------------------- */
#topic .navi{
	width:555px;
	margin:0 auto 100px;
}

#topic .navi li{
	float:left;
	width:245px;
	text-align:center;
}
#topic .navi li:nth-child(2){ float:right; }

#topic .navi li a{
	display:block;
	position:relative;
	padding:0 0 0 20px;
	background:#c8c8c8;
	line-height:50px;
	transition-duration:0.2s;
}
#topic .navi li:nth-child(2) a{ padding:0 20px 0 0; }
#topic .navi li a.current,
#topic .navi li a:hover{ background:#b99c24; }

#topic .navi li a::before{
	content:"";
	position:absolute;
	top:0;
	right:-50px;
	border-style:solid;
	border-width:50px 50px 0 0;
	border-color:#c8c8c8 transparent transparent transparent;
	transition-duration:0.2s;
}
#topic .navi li:nth-child(2) a::before{
	right:auto;
	left:-50px;
	border-width:0 0 50px 50px;
	border-color:transparent transparent #c8c8c8 transparent;
}
#topic .navi li a.current::before,
#topic .navi li a:hover::before{ border-top-color:#b99c24; }
#topic .navi li:nth-child(2) a.current::before,
#topic .navi li:nth-child(2) a:hover::before{ border-bottom-color:#b99c24; }

#topic .navi li img{
	margin:0 0 12px 0;
	opacity:1 !important;
}


/* ----------------------------------------
	pattern_01
---------------------------------------- */
#topic .pattern_01 li:nth-child(2){
	float:left;
	margin:40px 0 0 0;
}

#topic .pattern_01 li:nth-child(3){
	float:right;
	margin-top:-440px;
}


/* ----------------------------------------
	pattern_02
---------------------------------------- */
#topic .pattern_02 li{
	float:left;
}
#topic .pattern_02 li:nth-child(2){ float:right; }
#topic .pattern_02 li:nth-child(3){ margin-top:32px; }


/* ========================================================================
	Topic.2											[ /topic/index_02.html ]
	Topic.3											[ /topic/index_03.html ]
======================================================================== */
#topic2 .inner{
	width:920px;
	padding:0 0 100px 0;
}

#topic2 .inner > p{
	padding-bottom:90px;
}

#topic2 section{
	padding:0 0 30px 0;
}

#topic2 .key,
#topic2 .adobe{
	padding:0 0 50px 0;
	text-align:center;
}

#topic2 .btn{
	padding:90px 0 40px 0;
	border-top:1px solid #b99c24;
}

#topic2 .bnr{
	padding:50px 0 0 0;
}

#topic2 h2{
	padding:20px 30px;
	text-align:left;
	font-size:2.8rem;
	font-weight:bold;
	color:#b99c24;
	line-height:1.5;
	letter-spacing:0.1em;
}

#topic2 p{
	padding:0 30px 50px;
}

#topic2 span{
	font-weight:bold;
	color:#b99c24;
}

#topic2 a{ text-decoration:none; }
#topic2 a:hover{ text-decoration:underline; }


/* ----------------------------------------
	navi
---------------------------------------- */
#topic2 .navi{
	position:relative;
	margin:0 0 60px 0;
	padding:40px 0;
	border:1px solid #b99c24;
	border-radius:4px;
}

#topic2 .navi p.lead{
	position:absolute;
	top:-14px;
	left:54px;
	padding:0 2px 0 12px;
	background:#ffffff;
	font-size:2.8rem;
	font-weight:bold;
	color:#b99c24;
	line-height:1;
	letter-spacing:0.1em;
}

#topic2 .navi ul{
	padding:0 70px;
	line-height:34px;
}

#topic2 .navi ul li span{
	padding:0 0.5em 0 0;
}


/* ----------------------------------------
	image
---------------------------------------- */
#topic2 .image{
	overflow:hidden;
	padding:0 0 10px 0;
}

#topic2 .image li{
	position:relative;
	float:left;
	margin:0 0 40px 0;
}
#topic2 .image li:nth-child(2){ float:right; }

#topic2 .image li span{
	position:absolute;
	top:0;
	left:0;
	width:170px;
	background:#b99c24;
	text-align:center;
	font-weight:normal;
	color:#ffffff;
	line-height:24px;
}
#topic2 .image li span.wide{ width:245px; }


/* ----------------------------------------
	process
---------------------------------------- */
#topic2 .process{
	padding:0 0 10px 0;
}

#topic2 .process li{
	float:left;
	width:280px;
	margin:0 40px 40px 0;
	line-height:1;
}
#topic2 .process li:nth-child(3n){ margin-right:0; }

#topic2 .process li span{
	display:block;
	padding:0 0 8px 8px;
}


/* ----------------------------------------
	column2
---------------------------------------- */
#topic2 .column2{
	padding:0 20px;
}

#topic2 .column2 li{
	float:left;
	width:360px;
	margin:0 40px 50px;
}

#topic2 .column2 img{
	margin:0 0 10px 0;
}


/* topic3-1
---------------------------------------- */
#topic3-1 .column2 li{
	width:380px;
}
#topic3-1 .column2 li:nth-child(2){ margin:0 0 50px 20px; }

#topic3-1 .column2 img{
	margin:0;
}


/* ----------------------------------------
	topic3-5
---------------------------------------- */
#topic3-5 ul{
	padding:0 0 20px 0;
}

#topic3-5 ul li{
	margin:0 0 30px 0;
}
#topic3-5 ul li:nth-child(n+3){
	position:absolute;
	top:0;
	right:280px;
}
#topic3-5 ul li:nth-child(4){ right:0; }

#topic3-5 ul li img{
	display:block;
	margin:0 0 10px 0;
}


/* ----------------------------------------
	topic3-6
---------------------------------------- */
#topic3-6 ul{
	padding:0 30px;
}

#topic3-6 ul li{
	float:left;
	width:380px;
	margin:0 100px 50px 0;
}
#topic3-6 ul li:nth-child(2n){ margin-right:0; }

#topic3-6 ul li h3{
	padding:0 0 20px 0;
	font-size:1.8rem;
	font-weight:bold;
	color:#B59824;
	line-height:2.8rem;
}

#topic3-6 ul li h3 span{
	display:block;
	font-size:1.5rem;
}

#topic3-6 ul li p{
	padding:0 0 20px 0;
}

#topic3-6 ul li a{
	display:block;
	background:#B59824;
	border-radius:5px;
	text-align:center;
	font-size:1.5rem;
	font-weight:bold;
	color:#ffffff;
	line-height:4.8rem;
	text-decoration:none !important;
}

#topic3-6 ul li a span{
	color:#ffffff;
	font-size:1.4rem;
}


/* ========================================================================
	Special Interview								[ /interview/ ]
======================================================================== */
#second #interview{
	padding:0;
}

#interview .inner{
	width:920px;
}

#interview section{
	overflow:hidden;
	padding:0 0 40px 0;
}

#interview h2{
	margin:0 40px 20px;
	padding:0 0 0 35px;
	background:url(../../img/interview/bg_h2.png) no-repeat left center;
	background-size:25px;
	text-align:left;
	font-size:2.0rem;
	font-weight:bold;
	color:#b99c24;
	line-height:25px;
}

#interview p{
	padding:0 40px 30px;
}
#interview .inner > p{ padding:0 0 180px 0; }

#interview p span{
	font-weight:bold;
}

#interview .image{
	padding:0 0 40px 0;
}
#interview p + .image{ padding-top:20px; }

#interview .image img{
	vertical-align:top;
}


/* ----------------------------------------
	key
---------------------------------------- */
#interview .key{
	position:relative;
	margin:0 0 80px 0;
	background:url(../../img/interview/interview1/bg_h1.png) no-repeat center bottom;
	background-size:cover;
}
#interview.joinushome .key{ background-image:url(../../img/interview/interview2/bg_h1.png) }

#interview .key h1{
	padding:90px 0;
}

#interview .key h1 img{
	margin:0 auto;
}

#interview .key p{
	position:absolute;
	bottom:34px;
	right:0;
	width:50%;
	padding:0 100px;
	text-align:right;
	font-size:1.2rem;
	color:#ffffff;
	line-height:24px;
}
#interview .key p:nth-of-type(2){ left:0; text-align:left; }


/* ----------------------------------------
	interview_02
---------------------------------------- */
#interview .interview_02 .image img:first-child{
	margin:50px 40px 0 0;
}


/* ----------------------------------------
	interview_04
---------------------------------------- */
#interview .interview_04 .block{
	float:left;
	width:520px;
}

#interview .interview_04 .image{
	float:right;
	width:384px;
	padding:0;
}

#interview .interview_04 .image img:first-child{
	margin:0 0 40px 0;
}


/* ----------------------------------------
	interview_05
---------------------------------------- */
#interview .interview_05 .block{
	float:right;
	width:520px;
	padding:80px 0 0 0;
}

#interview .interview_05 .image{
	float:left;
	width:384px;
}


/* ----------------------------------------
	btn
---------------------------------------- */
#interview .btn{
	padding:90px 0;
	border-top:1px solid #b99c24;
}


/* ========================================================================
	Photographer									[ /photographer/ ]
======================================================================== */
#photographer{
	overflow:hidden;
	position:relative;
}

#photographer .inner{
	width:800px;
}

#photographer .font_roboto{
	font-family:'Roboto Condensed', sans-serif;
}

#photographer h2{
	padding:0 0 30px 0;
	font-size:2.5rem;
	font-weight:bold;
	line-height:1;
}

#photographer h2 span{
	color:#B99C24;
}


/* ----------------------------------------
	list
---------------------------------------- */
#photographer .list .inner > p{
	width:700px;
	margin:0 auto 80px;
}

#photographer .list ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:80px 36px;
	margin:0 -140px;
	padding:0 0 100px 0;
}

#photographer .list ul li{
	width:187px;
	text-align:center;
}

#photographer .list ul img{
	margin:0 0 26px 0;
}

#photographer .list ul a{
	display:block;
	font-size:2.0rem;
	font-weight:bold;
	line-height:1;
	letter-spacing:0.1em;
	text-decoration:none;
}

#photographer .list ul span{
	display:block;
	padding:8px 0 0 0;
	font-size:1.2rem;
	font-weight:normal;
	color:#C8B570;
	letter-spacing:0.05em;
}

#photographer .list ul span.area{
	padding:16px 0 0 0;
	font-size:1.3rem;
	color:#333333;
	letter-spacing:normal;
}


/* selectable
---------------------------------------- */
#photographer .list .selectable{
	margin:0 -30px 90px;
	padding:70px 80px 80px;
	border:1px solid #B39B3F;
}

#photographer .list .selectable h2 img{
	margin:20px 0 0 -0.5em;
}

#photographer .list .selectable p{
	padding:0 0 34px 0
}

#photographer .list .selectable p.note{
	padding:0 0 0 1.0em;
	text-indent:-1.0em;
}

#photographer .list .selectable p span{
	font-weight:bold;
	color:#B99C24;
}


/* ----------------------------------------
	detail
---------------------------------------- */
#photographer .detail{
	visibility:hidden;
	position:absolute;
	top:70px;
	opacity:0;
	width:100%;
	margin:-70px 0 0 0;
}
#photographer .detail.on{
	visibility:visible;
	position:static;
}


/* bx-wrapper
---------------------------------------- */
#photographer .bx-wrapper img{ display:inline; }
#photographer .bx-wrapper ul{ overflow:hidden; }
#photographer .bx-viewport { -webkit-transform:none; }

#photographer .bx-wrapper .bx-prev{
	left:30px;
	background:url(../../img/photographer/btn_prev.png) no-repeat;
}
#photographer .bx-wrapper .bx-next{
	right:30px;
	background:url(../../img/photographer/btn_next.png) no-repeat;
}
#photographer .bx-wrapper .bx-controls-direction a{
	top:278px;
	width:21px;
	height:38px;
	margin-top:0;
	background-size:100%;
}

#photographer #slider_member > div{
	width:100% !important;
}


/* pager
---------------------------------------- */
#photographer .pager{
	display:flex;
	gap:0 8px;
	position:absolute;
	top:20px;
	left:50%;
	width:1198px;
	margin:0 0 0 -570px;
	z-index:60;
}

#photographer .pager a{
	display:block;
	width:59px;
	height:59px;
	border:3px solid transparent;
	border-radius:50%;
	transition-duration:0.2s;
}
#photographer .pager a.active{ border-color:#ffffff; }

#photographer .pager a img{
	opacity:1 !important;
	background:#CEC9B4;
	border-radius:50%;
	transition-duration:0.2s;
}
#photographer .pager a:hover img,
#photographer .pager a.active img{ background:#B79A24; }


/* key
---------------------------------------- */
#photographer .key{
	position:relative;
	background:url(../../img/photographer/bg_key.png);
}

#photographer .key::before{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:110px;
	background:rgba(255,255,255,0.8);
}

#photographer .key .inner{
	position:relative;
	height:530px;
	padding:140px 0 0 360px;
}

#photographer .key p{
	font-size:2.0rem;
	font-weight:bold;
	line-height:42px;
	letter-spacing:0.05em;
}

#photographer .key p.name{
	padding:40px 0 0 0;
	font-size:2.5rem;
	line-height:1;
}

#photographer .key p.name span{
	display:block;
	padding:15px 0 0 0;
	font-size:1.3rem;
	font-weight:normal;
	line-height:2.3rem;
	letter-spacing:normal;
}

#photographer .key p.name span.font_roboto{
	display:inline-block;
	padding:0 0 0 20px;
	vertical-align:top;
	line-height:25px;
	letter-spacing:0.05em;
}

#photographer .key figure{
	position:absolute;
	bottom:0;
	left:0;
}

#photographer .key .btn{
	position:absolute;
	bottom:150px;
	right:0;
}

#photographer .key .btn a{
	display:block;
	width:98px;
	background:#ffffff;
	border-radius:50%;
	text-align:center;
	font-weight:bold;
	line-height:98px;
	text-decoration:none;
}


/* profile
---------------------------------------- */
#photographer .profile{
	position:relative;
	padding:0 0 106px 0;
}

#photographer .profile .catchcopy{
	padding:75px 0 60px 0;
}

#photographer .profile figure{
	position:absolute;
	top:-65px;
	right:0;
	width:450px;
	text-align:center;
}

#photographer .profile p{
	padding:0 0 100px 50px;
	background:url(../../img/photographer/bg_profile.png) no-repeat left 8px;
	background-size:15px 134px;
	line-height:30px;
}

#photographer .profile dl{
	padding:0 0 0 50px;
}

#photographer .profile dl dt{
	padding:0 0 20px 0;
	font-size:2.0rem;
	font-weight:bold;
	line-height:1;
	letter-spacing:0.1em;
}

#photographer .profile ul{
	overflow:visible;
	padding:0 0 0 20px;
}

#photographer .profile ul li{
	position:relative;
	padding:0 0 14px 0;
	line-height:28px;
}

#photographer .profile ul li::before{
	content:"";
	position:absolute;
	top:8px;
	left:-20px;
	width:12px;
	height:12px;
	background:#B99C24;
}

#photographer .profile ul li span{
	font-weight:bold;
}


/* skill
---------------------------------------- */
#photographer .skill .clearfix{
	overflow:hidden;
	padding:0 0 100px 0;
}

#photographer .skill ul{
	float:left;
	width:390px;
	padding:8px 0 0 0;
}

#photographer .skill ul li{
	display:flex;
	flex-direction:column;
	justify-content:center;
	float:left;
	width:190px;
	height:164px;
	margin:0 10px 0 0;
	background:#FFE72E;
	border-radius:5px;
	text-align:center;
	font-size:1.8rem;
	font-weight:bold;
	line-height:2.6rem;
	letter-spacing:0.2em;
}
#photographer .skill ul li:nth-child(2),
#photographer .skill ul li:nth-child(3){
	height:77px;
	margin:0 0 10px 0;
	background:#E2D7A9;
}
#photographer .skill ul li:nth-child(3){
	margin:0;
	background:#ceb965;
}

#photographer .skill ul li span{
	display:block;
	padding:0 0 6px 0;
	font-size:1.3rem;
	line-height:1;
	letter-spacing:normal;
}

#photographer .skill p{
	float:right;
	width:390px;
	line-height:30px;
}


/* result
---------------------------------------- */
#photographer .result{
	padding:20px 0 120px 0;
}

#photographer .result ul{
	padding:0 0 4px 1px;
	font-size:0;
}

#photographer .result ul li{
	display:inline-block;
	width:180px;
	margin:0 26px 26px 0;
	vertical-align:top;
	font-size:1.0rem;
	color:#B99C24;
	line-height:1;
}
#photographer .result ul li:nth-child(4n){ margin-right:0; }

#photographer .result ul li img{
	margin:0 0 5px 0;
}

#photographer .result p{
	font-size:1.2rem;
	line-height:1;
}

#photographer .result p span{
	padding:0 0.5em 0 0;
	font-size:1.0rem;
	color:#B99C24;
}


/* nominate
---------------------------------------- */
#photographer .nominate{
	padding:0 0 90px 0;
	text-align:center;
}

#photographer .nominate .btn{
	padding:45px 0 30px 0;
	background:url(../../img/photographer/bg_nominate.png) no-repeat center top;
	background-size:158px 28px;
}

#photographer .nominate p{
	overflow:hidden;
	width:420px;
	margin:0 auto;
	text-align:left;
	font-weight:bold;
	line-height:26px;
	letter-spacing:0.05em;
}

#photographer .nominate p img{
	float:left;
	margin:0 20px 0 0;
}

#photographer .nominate p span{
	display:table-cell;
	height:90px;
	vertical-align:middle;
}


/* ========================================================================
	LINEで気軽にお問い合わせ						[ /line/ ]
======================================================================== */
#line h1{
	color:#1EC425;
}

#line > p{
	margin:0 0 30px 0;
	text-align:center;
}

#line > p span{
	font-weight:bold;
	color:#1EC422;
}

#line > p strong{
	color:#BE0F19;
}

#line p.message{
	padding:24px;
	border:2px dashed #1EC422;
	border-radius:5px;
}


/* ----------------------------------------
	friend
---------------------------------------- */
#line .friend{
	display:flex;
	padding:70px 0 100px 0;
}

#line .friend .block{
	width:430px;
}

#line .friend .block > div{
	padding:0 50px 0 0;
}
#line .friend .block .add_01{
	margin:0 0 60px 0;
	padding-bottom:40px;
	border-bottom:1px dashed #1EC422;
}
#line .friend .block .add_03{
	height:100%;
	padding:0 0 0 50px;
	border-left:1px dashed #1EC422;
}

#line .friend h2{
	margin:0 0 20px 0;
	padding:0 0 0 20px;
	background:#1EC422;
	border-radius:5px;
	text-align:left;
	font-size:1.8rem;
	font-weight:bold;
	color:#ffffff;
	line-height:4.8rem;
}

#line .friend p,
#line .friend ol{
	counter-reset:number;
	margin:0 0 20px 0;
	line-height:3.4rem;
}

#line .friend ol li{
	position:relative;
	padding:0 0 0 37px;
}

#line .friend ol li:before{
	counter-increment:number;
	content:counter(number);
	position:absolute;
	top:4px;
	left:0;
	width:27px;
	height:20px;
	padding:7px 0 0 0;
	background:#1EC422;
	border-radius:50%;
	text-align:center;
	font-weight:bold;
	color:#FFFFFF;
	line-height:1;
}

#line .friend .btn,
#line .friend .qr,
#line .friend .url{
	margin:0 0 20px 0;
}

#line .friend .url a{
	font-size:2.5rem;
	font-weight:bold;
	color:#1EC422;
	text-decoration:none;
}
#line .friend .url a:hover{ text-decoration:underline; }


}