﻿@charset "utf-8";

@media screen and (max-width:767px){

/*		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（共通部分）
======================================================================== */
header, main, footer{
	position:relative;
	width:320px;
	margin:0 auto;
}

.pc{
	display:none;
}


/* ----------------------------------------
	header
---------------------------------------- */
#second header{
	position:fixed;
	width:100%;
	height:60px;
	background:#b99c24;
	z-index:100;
}

#second header .logo{
	padding:18px 10px 0;
}

#second header .logo img{
	width:100px;
}


/* tel
---------------------------------------- */
#second header .tel{
	position:absolute;
	top:10px;
	right:60px;
}


/* navi
---------------------------------------- */
#second header .navi{
	display:flex;
	position:fixed;
	left:0;
	bottom:0;
	min-width:320px;
	width:100%;
	background:#b99c24;
	border-top:1px solid #ffffff;
	z-index:100;
}

#second header .navi li{
	width:33%;
}
#second header .navi li:nth-child(2){
	width:34%;
}

#second header .navi a{
	display:flex;
	justify-content:center;
	align-items:center;
	height:50px;
	padding:0 10px;
	border-right:1px solid #ffffff;
	text-align:center;
	font-size:1.2rem;
	font-weight:bold;
	color:#ffffff;
	line-height:1.8rem;
	text-decoration:none;
}

#second header .navi .line a{
	background:#1EC422;
	border:none;
}


/* gnavi
---------------------------------------- */
#second header .gnavi .btn{
	position:absolute;
	top:10px;
	right:10px;
}

#second header .gnavi ul{
	display:none;
	position:fixed;
	top:60px;
	width:100%;
	height:100%;
	padding:30px 0 0 0;
	background:url(../../img/common/bg_overlay.png);
	text-align:center;
	z-index:1;
}

#second header .gnavi ul li{
	padding:0 0 20px 0;
	font-weight:bold;
	text-shadow:0px 0px 4px #ffffff;
	line-height:1.5;
	letter-spacing:2px;
}

#second header .gnavi ul li a{
	text-decoration:none;
}


/* ----------------------------------------
	main
---------------------------------------- */
main p{
	line-height:2;
}


/* h要素
---------------------------------------- */
main h1{
	padding:0 0 15px 0;
	text-align:center;
	font-size:2.0rem;
	font-weight:bold;
	line-height:3.0rem;
	letter-spacing:2px;
}

main h1 img{
	display:block;
	width:auto;
	height:20px;
	margin:10px auto 0;
}

main h2{
	padding:0 0 20px 0;
	text-align:center;
	line-height:0;
}

main h2.text{
	padding:0 0 10px 0;
	font-size:1.6rem;
	font-weight:bold;
	color:#b99c24;
	line-height:1;
}


/* second
---------------------------------------- */
#second main{
	padding:90px 10px 30px;
}


/* scroll
---------------------------------------- */
main .scroll{
	width:100%;
	overflow-x:scroll;
	margin:0 0 20px 0;
}

/* ----- scrollbar ----- */
main .scroll::-webkit-scrollbar{ width:10px; height:10px; }
main .scroll::-webkit-scrollbar-track{ background:#eeeeee; }
main .scroll::-webkit-scrollbar-thumb{ background:#B99C24; }
/* --------------------- */

main .scroll table{
	width:580px;
}


/* ----------------------------------------
	footer
---------------------------------------- */
footer{
	padding:0 0 71px 0;
	background:#b99c24;
	text-align:center;
}

footer h2{
	padding:20px 10px;
}

footer .tel{
	padding:0 10px 5px;
	line-height:10px;
}

footer address{
	padding:0 0 20px 0;
	font-size:1.0rem;
	color:#ffffff;
	line-height:20px;
}

footer small{
	display:block;
	padding:0 10px;
	font-size:1.0rem;
	color:#ffffff;
}


/* navi
---------------------------------------- */
footer .navi{
	padding:10px 20px;
	background:#323232;
}

footer .navi li{
	float:left;
	width:140px;
	padding:5px 0;
	font-weight:bold;
	line-height:20px;
	letter-spacing:2px;
}

footer .navi li a{
	display:block;
	color:#ffffff;
	text-decoration:none;
}


/* fix
---------------------------------------- */
/*footer .fix{
	position:fixed;
	left:0;
	bottom:0;
	min-width:320px;
	width:100%;
	background:#b99c24;
	border-top:1px solid #ffffff;
	z-index:100;
}

footer .fix a{
	float:left;
	width:50%;
	border-right:1px solid #ffffff;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:50px;
	text-decoration:none;
}
footer .fix a:nth-of-type(2){ border:none; }

footer .fix a span{
	display:inline-block;
	padding:0 0 0 42px;
	background:url(../../img/common/fix_tel.png) no-repeat left center;
	background-size:32px;
	vertical-align:bottom;
}
footer .fix a:nth-of-type(2) span{
	background-image:url(../../img/common/fix_contact.png);
	background-size:28px 22px;
}*/


/* ========================================================================
	トップページ									[ / ]
======================================================================== */
#top main{
	text-align:center;
}

#top main section{
	border-bottom:1px solid #b99c24;
}


/* ----------------------------------------
	header
---------------------------------------- */
#top header{
	z-index:10;
}

#top header h1{
	position:absolute;
	top:18px;
	left:10px;
	z-index:1;
}

#top header h1 img{
	width:100px;
}


/* tel
---------------------------------------- */
#top header .tel{
	position:fixed;
	width:320px;
	z-index:2;
}

#top header .tel a{
	position:absolute;
	top:10px;
	right:60px;
}


/* navi
---------------------------------------- */
#top header .navi{
	display:flex;
	position:fixed;
	left:0;
	bottom:0;
	min-width:320px;
	width:100%;
	background:#b99c24;
	border-top:1px solid #ffffff;
	z-index:100;
}

#top header .navi li{
	width:33%;
}
#top header .navi li:nth-child(2){
	width:34%;
}

#top header .navi a{
	display:flex;
	justify-content:center;
	align-items:center;
	height:50px;
	padding:0 10px;
	border-right:1px solid #ffffff;
	text-align:center;
	font-size:1.2rem;
	font-weight:bold;
	color:#ffffff;
	line-height:1.8rem;
	text-decoration:none;
}

#top header .navi .line a{
	background:#1EC422;
	border:none;
}


/* gnavi
---------------------------------------- */
#top header .gnavi .btn{
	position:fixed;
	width:320px;
	z-index:3;
}

#top header .gnavi .btn img{
	position:absolute;
	top:10px;
	right:10px;
}

#top header .gnavi ul{
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:90px 0 0 0;
	background:url(../../img/common/bg_overlay.png);
	text-align:center;
	z-index:2;
}

#top header .gnavi ul li{
	padding:0 0 20px 0;
	font-weight:bold;
	text-shadow:0px 0px 4px #ffffff;
	line-height:1.5;
	letter-spacing:2px;
}

#top header .gnavi ul li a{
	text-decoration:none;
}

#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;
}


/* slider
---------------------------------------- */
#slider p,
#slider .bnr{
	display:none;
}

#slider li{
	height:220px;
}


/* ----------------------------------------
	scroll
---------------------------------------- */
#scroll{
	display:none !important;
}


/* ----------------------------------------
	news
---------------------------------------- */
#top .news{
	padding:10px 10px 5px;
	background:#faf8f1;
	border-bottom:1px solid #b99c24;
}

#top .news h2{
	padding:0 0 5px 0;
	text-align:left;
}

#top .news h2 img{
	width:60px;
}

#top .news p{
	text-align:left;
	font-size:1.2rem;
	line-height:22px;
}

#top .news p time{
	display:block;
	font-weight:bold;
	line-height:20px;
}


/* ----------------------------------------
	service
---------------------------------------- */
#top .service{
	padding:30px 10px 0;
	text-align:center;
}


/* txt_01
---------------------------------------- */
#top .service .txt_01{
	margin:0 0 20px 0;
	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.0rem;
}


/* txt_02
---------------------------------------- */
#top .service .txt_02{
	padding:8px 10px;
	background:#B59824;
	border-radius:5px;
	box-shadow:0 3px 6px 0 rgba(0,0,0,0.16);
	font-size:1.6rem;
	font-weight:bold;
	color:#FFFFFF;
	line-height:2.4rem;
}

#top .service .txt_02 span{
	color:#BE0F19;
}


/* ----------------------------------------
	photographer
---------------------------------------- */
#top .photographer .inner{
	padding:30px 10px;
	text-align:left;
}

#top .photographer .key{
	margin:0 0 30px 0;
}

#top .photographer p.lead{
	padding:0 0 10px 0;
	font-size:1.8rem;
	font-weight:bold;
	color:#B59824;
	line-height:28px;
}

#top .photographer p.lead span{
	color:#BE0F19;
}


/* ----------------------------------------
	youtube
---------------------------------------- */
#top .youtube{
	padding:30px 10px;
	background:url(../../img/top/bg_youtube.png) center;
	background-size:293px;
}

#top .youtube p{
	margin:0 0 20px 0;
}

#top .youtube ul li{
	margin:0 0 20px 0;
	text-align:left;
	line-height:2.4rem;
	font-weight:bold;
}

#top .youtube ul li a{
	text-decoration:none;
}

#top .youtube ul li img{
	display:block;
	margin:0 auto 10px;
}

#top .youtube .btn img{
	width:200px;
}


/* ----------------------------------------
	topic
---------------------------------------- */
#top .topic{
	padding:30px 10px 10px;
}

#top .topic ul li{
	padding:0 0 20px 0;
}


/* ----------------------------------------
	about
---------------------------------------- */
#top .about{
	padding:0 10px 10px;
	border:none;
}

#top .about p{
	padding:0 0 20px 0;
}

#top .about ul li{
	margin:0 0 20px 0;
	padding:10px 0 10px 20px;
	background:#fbf9f2;
	border:1px solid #b99c24;
	border-radius:5px;
}

#top .about dl{
	display:table;
}

#top .about dl dt{
	display:table-cell;
	width:66px;
	vertical-align:middle;
}

#top .about dl dd{
	display:table-cell;
	padding:0 0 0 15px;
	text-align:left;
	vertical-align:middle;
	font-size:1.2rem;
	line-height:2.2;
}


/* ----------------------------------------
	portfolio
---------------------------------------- */
#top .portfolio{
	padding:0 0 30px 0;
}

#top .portfolio h2{
	padding:0 10px 20px;
}

#top .portfolio h2 img{
	width:auto;
	height:36px;
}

#top .portfolio .btn img{
	width:200px;
}


/* loopslide
---------------------------------------- */
#loopslide{
	padding:0 0 20px 0;
}

#loopslide .simply-scroll-clip{
	overflow:hidden;
}

#loopslide ul li{
	float:left;
	width:100px;
}


/* ----------------------------------------
	voice
---------------------------------------- */
#top .voice{
	position:relative;
	padding:30px 10px 10px;
	background:#ffffff;
}

#top .voice::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:400px;
	background:url(../../img/top/bg_voice01.png) no-repeat center;
	background-size:cover;
}

#top .voice h2{
	position:relative;
	padding:0 0 20px 0;
}

#top .voice > p{
	position:relative;
	padding:0 0 20px 0;
	color:#ffffff;
}

#top .voice .interview{
	position:relative;
}

#top .voice .interview a{
	display:block;
	margin:0 0 20px 0;
}

#top .voice ul{
	overflow:visible;
	text-align:left;
}

#top .voice ul li{
	margin:0 0 20px 0;
	background:#b99c24;
	border:1px solid #b99c24;
	border-radius:3px;
	vertical-align:top;
	font-size:1.4rem;
	line-height:2;
}

#top .voice ul li h3{
	position:relative;
	padding:20px 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:10px;
	left:20px;
	width:124px;
	height:23px;
	background:url(../../img/top/bg_voice02.png) no-repeat;
	background-size:100%;
}

#top .voice ul li h3 img{
	width:100%;
}

#top .voice ul li h3 span{
	display:block;
	padding:10px;
}

#top .voice .block{
	overflow:hidden;
	padding:10px;
	background:#ffffff;
}

#top .voice .block dl dt{
	font-weight:bold;
	color:#b99c24;
}


/* ----------------------------------------
	recommend
---------------------------------------- */
#top .recommend{
	padding:48px 10px 30px;
	background:#fbf9f2;
	border:none;
}

#top .recommend .inner{
	position:relative;
	padding:68px 10px 20px;
	background:#B59824;
	border-radius:5px;:
}

#top .recommend h2{
	position:absolute;
	top:-18px;
	left:50%;
	-webkit-transform:translateX(-50%); /* Android */
	transform:translateX(-50%);
	padding:0;
	font-size:2.0rem;
	font-weight:bold;
	color:#FFFFFF;
	line-height:1;
	letter-spacing:0.05em;
}

#top .recommend h2 span{
	display:block;
	width:240px;
	margin:0 auto 10px;
	padding:10px 0;
	background:#1F1F1F;
	border-radius:20px;
	font-size:1.6rem;
}

#top .recommend ul li{
	margin:0 0 20px 0;
}

#top .recommend p{
	color:#FFFFFF;
}

#top .recommend p span{
	font-weight:bold;
	color:#BE0F19;
}


/* ----------------------------------------
	attitude
	need
---------------------------------------- */
#top .attitude,
#top .need{
	padding:0 10px 30px;
	background:#fbf9f2;
	border:none;
}

#top .attitude h2 img,
#top .need h2 img{
	width:auto;
	height:36px;
}

#top .attitude p img,
#top .need p img{
	margin:0 0 20px 0;
}


/* ----------------------------------------
	step
---------------------------------------- */
#top .step{
	padding:0 10px 30px;
	background:#fbf9f2;
}

#top .step ul{
	display:flex;
	flex-direction:column; 
	align-items:center;
	margin:0 0 20px 0;
}

#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-weight:bold;
	color:#B99C24;
	line-height:3.6rem;
}

#top .step ol li{
	position:relative;
	margin:0 0 40px 0;
}
#top .step ol li:last-child{ margin-bottom:20px; }

#top .step ol li::before{
	content:"";
	position:absolute;
	bottom:12px;
	left:50%;
	width:32px;
	height:13px;
	background:url(../../img/top/arrow_step.png) no-repeat center;
	background-size:100%;
	transform:rotate(90deg);
	transform-origin:bottom left;
}
#top .step ol li:last-child::before{ content:none; }

#top .step p{
	margin:0 0 10px 0;
	font-weight:bold;
	color:#B99C24;
	line-height:2.4rem;
	letter-spacing:0.05em;
}

#top .step p span{
	color:#BE0000;
}

#top .step p.form{
	margin:0 0 20px 0;
	padding:7px 20px;
	background:#231815;
	border-radius:27px;
	line-height:2.0rem;
	color:#FFFFFF;
}


/* ----------------------------------------
	good
---------------------------------------- */
#top .good{
	padding:30px 10px 0;
}

#top .good p{
	padding:0 0 20px 0;
}

#top .good ul li{
	padding:0 0 20px 0;
	text-align:left;
}

#top .good ul li img{
	width:240px;
}

#top .good ul li img:nth-of-type(2){
	width:280px;
	margin:-80px 0 0 20px;
}

#top .good ul li:nth-child(2n){
	text-align:right;
}

#top .good ul li:nth-child(2n) img:nth-of-type(2){
	margin:-80px 20px 0 0;
}


/* ----------------------------------------
	contact
---------------------------------------- */
#top .contact{
	padding:30px 10px;
}


/* ========================================================================
	料金プラン										[ /price/ ]
======================================================================== */
#price > section:nth-of-type(odd){
	background:#fbf9f2;
}

#price strong{
	font-size:1.6rem;
	color:#BE0000;
}

#price h2 img{
	width:auto;
	height:50px;
}

#price p{
	padding:0 0 20px 0;
}

#price p.note{
	padding:5px 0 0 0;
	text-align:right;
}


/* ----------------------------------------
	section
---------------------------------------- */
#price > section{
	padding:30px 0;
}


/* ----------------------------------------
	table
---------------------------------------- */
#price table{
	text-align:center;
	line-height:1.5;
}

#price table caption{
	padding:0 0 10px 0;
}

#price table span{
	font-weight:normal;
}

#price table th{
	/*width:120px;*/
	padding:10px 0;
	background:#faf8ef;
	border:1px solid #B99C24;
	font-weight:bold;
}

#price table th.bg{
	background:#f1ebd2;
}

#price table td{
	padding:10px 5px;
	background:#ffffff;
	border:1px solid #B99C24;
	font-weight:bold;
}


/* column
---------------------------------------- */
#price .column > table{
	margin:0 0 20px 0;
}

#price .column > table:nth-of-type(2){
	margin:0;
}


/* ----------------------------------------
	plan
---------------------------------------- */
#price .plan{
	padding:0 0 10px 0;
}

#price .plan ul{
	overflow:visible;
	margin:0 0 10px 0;
	border-top:1px solid #B99C24;
	border-left:1px solid #B99C24;
}

#price .plan ul li{
	position:relative;
	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:30px 10px 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 20px 0;
	line-height:22px;
}


/* ----------------------------------------
	price
---------------------------------------- */
#price .price .fixed h2 img{
	height:95px;
}

#price .price section{
	padding:0 0 30px 0;
}

#price .price table{
	width:700px;
	table-layout:fixed;
}

#price .price table:nth-of-type(2){
	margin-top:10px;
}

#price .price table .size_plan,
#price .price table .size_price,
#price .price table .size_number{
	width:auto;
	height:24px;
	vertical-align:middle;
}
#price .price table .size_price{ height:30px; margin:5px 0 0 0; }
#price .price table .size_number{ height:20px; }

#price .price table .size_price + span{
	display:block;
	padding:10px 0 0 0;
}

#price .price table th{
	width:160px;
}

#price .price table th[scope="row"]{
	background:#B99C24;
	color:#ffffff;
}

#price .price table th[scope="col"]{
	width:auto;
	background:#ffffff;
}

#price .price table th[scope="colgroup"]{
	padding:4px 0;
	background:#B99C24;
	color:#ffffff;
}

#price .price table th[scope="colgroup"] span{
	display:block;
	width:160px;
	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{
	padding:10px 0 0 0;
	line-height:22px;
}


/* special
---------------------------------------- */
#price .price .special dt{
	display:inline-block;
	position:relative;
	margin:10px auto;
	padding:0 20px;
	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;
}

#price .price .special dd span{
	display:inline-block;
	margin:10px 0 0 0;
	padding:0 20px;
	border:1px solid #B99C24;
	line-height:23px;
}


/* kokodake
---------------------------------------- */
#price .price .kokodake span strong{
	font-size:1.4rem;
}

#price .price .kokodake .size_plan{
	display:block;
	margin:0 auto;
}

#price .price .kokodake .size_price{
	display:block;
	height:50px;
	margin:0 auto 10px;
}

#price .price .kokodake table th[scope="col"]{
	font-weight:normal;
}

#price .price .kokodake .space > td{
	padding:20px;
}

#price .price .kokodake .space table{
	position:relative;
	width:100%;
	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:-80px;
	padding-top:80px;
}


/* option
---------------------------------------- */
/*#price .price .option{
	position:relative;
	padding:0;
	border:1px solid #B99C24;
	text-align:center;
}

#price .price .option::before{
	content:"";
	position:absolute;
	top:-66px;
	left:0;
	width:100%;
	height:45px;
	background:url(../../img/price/icon_option.png) no-repeat center;
	background-size:45px;
}

#price .price .option dl{
	padding:20px 10px;
	background:#FAF8EF;
	border-bottom:1px solid #B99C24;
	line-height:1.5;
}

#price .price .option dl dt{
	padding:0 0 10px 0;
	font-size:1.6rem;
	font-weight:bold;
	color:#B89B24;
}

#price .price .option dl dt span{
	color:#BE0000;
}

#price .price .option dl ul{
	font-size:0;
}

#price .price .option dl ul li{
	padding:0;
	font-size:1.4rem;
	text-indent:0;
	line-height:1.5;
}

#price .price .option a:link{
	text-decoration: none;
}*/


/* ----- title ----- */
/*#price .price .option .title{
	position:relative;
	padding:0 10px 130px;
	background:#B99C24;
}

#price .price .option .title::after{
	content:"";
	position:absolute;
	bottom:20px;
	left:0;
	width:100%;
	height:100px;
	background:url(../../img/price/bg_option.png) no-repeat center;
	background-size:auto 100px;
}

#price .price .option .title h3{
	padding:20px 0;
}

#price .price .option .title h3 img{
	width:200px;
}

#price .price .option .title p{
	padding:0;
	color:#ffffff;
	line-height:1.5;
}*/


/* ----- photobook ----- */
/*#price .price .photobook{
	padding:20px 10px 10px;
	border-bottom:1px solid #B99C24;
}

#price .price .photobook h4{
	padding:0 0 15px 0;
}

#price .price .photobook ul{
	margin:0 -5px;
}

#price .price .photobook ul li{
	float:left;
	width:50%;
	padding:0 5px 10px;
	text-indent:0;
}*/


/* ----- message ----- */
/*#price .price .message{
	padding:20px 10px;
}

#price .price .message h4{
	padding:0 0 10px 0;
	font-size:1.8rem;
	font-weight:bold;
	line-height:1.5;
}*/


/* ----------------------------------------
	traffic
---------------------------------------- */
#price .traffic{
	margin:0 -10px;
	padding:30px 10px 0;
}

#price .traffic .inner{
	padding:0 0 30px 0;
}

#price .traffic table th,
#price .traffic table td{
	padding:10px 0;
}


/* ----------------------------------------
	retouch
---------------------------------------- */
#price .retouch table{
	border-bottom:1px solid #B99C24;
}

#price .retouch table br{
	display:none;
}

#price .retouch table th{
	display:block;
	width:100%;
	border-bottom:none;
}

#price .retouch table td{
	display:block;
	border-bottom:none;
}


/* beforeafter
---------------------------------------- */
#price .retouch .beforeafter{
	padding:0 0 10px 0;
}

#price .retouch .beforeafter p{
	padding:0 0 10px 0;
	font-size:1.3rem;
}

#price .retouch .beforeafter p img{
	margin:0 0 10px 0;
}

#price .retouch .beforeafter p span{
	font-weight:bold;
	color:#BE0000;
}


/* ----------------------------------------
	delivery
---------------------------------------- */
#price .delivery{
	margin:0 -10px;
	padding:30px 10px;
}

#price .delivery h3{
	margin:0 0 20px 0;
	background:#B99C24;
	text-align:center;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:30px;
}

#price .delivery figure{
	text-align:center;
}


/* block
---------------------------------------- */
#price .delivery .block{
	padding:0 0 20px 0;
}

#price .delivery .block table{
	margin:0 0 18px 0;
}

#price .delivery .block ul li{
	padding:0 0 0 1.0em;
	text-indent:-1.0em;
	font-size:1.3rem;
	line-height:25px;
}


/* ----------------------------------------
	data
---------------------------------------- */
#price .data{
	margin:30px auto;
	padding:20px 10px 0;
	border:1px solid #B99C24;
}

#price .data h3{
	padding:0 0 10px 1.0em;
	text-indent:-1.0em;
	font-size:1.6rem;
	font-weight:bold;
	color:#B99C24;
	line-height:1.5;
}

#price .data p{
	padding:0;
}

#price .data section{
	overflow:hidden;
	padding:20px 10px;
	border-bottom:1px dashed #B99C24;
}

#price .data section:nth-of-type(2){
	border:none;
}

#price .data section img{
	display:block;
	margin:0 auto 15px;
}


/* ========================================================================
	フォトブック・アルバム製作						[ /photobook/ ]
======================================================================== */
#photobook{
	text-align:center;
}

#photobook > section{
	padding:30px 0;
}

#photobook h3{
	padding:0 0 15px 0;
	text-align:center;
	font-size:2.0rem;
	font-weight:bold;
	line-height:3.0rem;
	letter-spacing:2px;
}

#photobook p{
	padding:0 0 20px 0;
}


/* ----------------------------------------
	about
---------------------------------------- */
#photobook .about{
	margin:0 0 30px 0;
}

#photobook .about dl{
	background:#F1EBD2;
}

#photobook .about dl dt{
	position:relative;
	padding:20px 10px 10px;
	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 10px 20px;
	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{
	padding:0;
}

#photobook .navi p span{
	font-weight:bold;
}

#photobook .navi ul li{
	margin:0 0 30px 0;
}

#photobook .navi ul li a{
	text-decoration:none;
}

#photobook .navi h2 img{
	width:auto;
	height:16px;
}

#photobook .navi h3{
	margin:20px 0 10px 0;
	padding:0;
	color:#B59824;
	line-height:1;
	letter-spacing:normal;
}

#photobook .navi h3 span{
	display:block;
	margin:10px 0 0 0;
	font-size:1.4rem;
}

#photobook .navi table{
	width:auto;
	margin:0 auto;
	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 10px 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{
	border-color:#B59824;
}


/* ----------------------------------------
	book
---------------------------------------- */
#photobook .book{
	position:relative;
	margin:0 -10px;
	padding:180px 10px 30px;
	background:#fbf9f2;
}

#photobook .book::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:150px;
	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{
	margin:0 0 30px 0;
	padding:30px 0 20px 0;
	background:url(../../img/photobook/the-book/bg_book.png) no-repeat center;
	background-size:cover;
}


/* the-book
---------------------------------------- */
#photobook.the-book .book{
	padding:0 10px 30px;
	background:#000000;
	color:#FFFFFF;
}
#photobook.the-book .book::before{ content:none; }

#photobook.the-book .book section > img{
	display:block;
	margin:0 auto 20px;
}

#photobook.the-book .book h3{
	line-height:0;
}


/* ----------------------------------------
	layout
---------------------------------------- */
#photobook .layout{
	margin:0 -10px;
	padding:30px 10px 20px;
	background:#B99C24;
}

#photobook .layout h2 img{
	width:auto;
	height:50px;
}

#photobook .layout p{
	color:#ffffff;
}

#photobook .layout ul li{
	margin:0 0 10px 0;
}


/* the-book
---------------------------------------- */
#photobook.the-book .layout{
	padding-bottom:10px;
	background:#191919;
	color:#FFFFFF;
}

#photobook.the-book .layout section > img{
	display:block;
	margin:0 auto 20px;
}

#photobook.the-book .layout h3{
	text-align:left;
	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{
	text-align:left;
}


/* ----------------------------------------
	type
---------------------------------------- */
#photobook .type{
	padding-bottom:10px;
}

#photobook .type h3{
	line-height:0;
}


/* column
---------------------------------------- */
#photobook .type .column{
	padding:0 0 10px 0;
}

#photobook .type .column dl,
#photobook .type .column > div{
	margin:0 0 20px 0;
	line-height:2.4rem;
}

#photobook .type .column dl dt span,
#photobook .type .column > div span{
	display:block;
	margin:15px 10px 10px;
	border:1px solid #B59824;
	border-radius:5px;
	font-weight:bold;
	line-height:3.4rem;
}
#photobook .type .column > div span{ margin-bottom:0; }


/* box
---------------------------------------- */
#photobook .type .box > ul,
#photobook .type .box dl{
	position:relative;
	margin:0 0 20px 0;
	padding:20px 5px 0;
	background:url(../../img/photobook/bg_type.png) no-repeat center;
	background-size:861px 711px;
	border:1px solid #ECE3C2;
}

#photobook .type .box dl dt{
	position:absolute;
	top:20px;
	left:10px;
	width:135px;
}

#photobook .type .box ul li{
	float:left;
	width:50%;
	margin:0 0 20px 0;
	padding:0 5px;
}
#photobook .type .box dl ul li:first-child{ min-height:135px; margin-left:50%; }


/* the-book
---------------------------------------- */
#photobook.the-book .type{
	margin:0 -10px;
	padding:30px 10px 10px;
	background:#000000;
	color:#FFFFFF;
}

#photobook.the-book .type .box dl{
	background:url(../../img/photobook/the-book/bg_type.png) no-repeat center;
	background-size:861px 1021px;
}


/* ----------------------------------------
	price
---------------------------------------- */
#photobook .price{
	margin:0 -10px;
	padding:30px 10px 0;
	background:#fbf9f2;
}

#photobook .price section{
	padding:0 0 30px 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{
	display:inline-block;
	margin:10px 0 0 0;
	padding:0 20px;
	background:#151515;
	border-radius:5px;
	text-align:center;
	color:#ffffff;
	line-height:2.2rem;
}

#photobook .price table{
	width:700px;
	margin:0 auto;
	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:100px;
}

#photobook .price table tr:nth-child(even) td{
	background:#FFFFFF;
}


/* note
---------------------------------------- */
#photobook .price .note{
	text-align:left;
}

#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:0 0 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;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:10px;
	margin:0 0 20px 0;
}

#photobook .price .case ol li{
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	position:relative;
	width:calc(50% - 5px);
	height:80px;
	background:#FFFFFF;
	border:2px solid #B59824;
	border-radius:5px;
	line-height:1.8rem;
}

#photobook .price .case ol li::before{
	content:"";
	position:absolute;
	top:26px;
	left:-19px;
	width:24px;
	height:24px;
	background:url(../../img/photobook/icon_plus.png) no-repeat center;
	background-size:24px;
}
#photobook .price .case ol li:nth-child(odd)::before{ content:none; }

#photobook .price .case ol li > span{
	display:block;
	font-weight:bold;
	color:#B59824;
}

#photobook .price .case ol li span.amount{
	margin:4px 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{
	padding-top:0;
	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 h2 img{
	width:auto;
	height:40px;
}

#photobook .flow p{
	padding-bottom:0;
}

#photobook .flow ol li{
	position:relative;
	padding:39px 0 0 0;
	background:url(../../img/photobook/flow_arrow01.png) no-repeat center top;
	background-size:7px 39px;
}

#photobook .flow ol li:first-child{
	background:none;
}

#photobook .flow ol li > img{
	position:absolute;
	top:17px;
	left:10px;
	width:25px;
}

#photobook .flow dl dt{
	background:#B99C24;
	font-weight:bold;
	color:#ffffff;
	line-height:30px;
}

#photobook .flow dl dd{
	padding:10px 14px;
	border-top:none;
	border:1px solid #B99C24;
	line-height:2;
}


/* pattern
---------------------------------------- */
#photobook .flow .pattern{
	background-image:url(../../img/photobook/flow_arrow02.png);
}

#photobook .flow .pattern dd{
	padding:0 14px;
}


/* ========================================================================
	about us										[ /about/ ]
======================================================================== */
#about h2 img{
	width:auto;
	height:50px;
}

#about > p{
	padding:0 0 20px 0;
}

#about > p.contact{
	padding:30px 0 20px 0;
}


/* ----------------------------------------
	office
---------------------------------------- */
#about .office{
	padding:10px 0;
}

#about .office table{
	line-height:24px;
}

#about .office table th{
	display:block;
	text-align:left;
}

#about .office table td{
	display:block;
	padding:0 0 20px 0;
}


/* ----------------------------------------
	member
---------------------------------------- */
#about .member section{
	padding:0 0 30px 0;
}

#about .member h2{
	padding-bottom:10px;
}

#about .member h3{
	padding:10px 0 20px 0;
	line-height:1;
}

#about .member h3 span{
	display:inline-block;
	padding:10px 1.0em 0 0;
	font-size:2.0rem;
}

#about .member p.lead{
	padding:0 0 20px 0;
}


/* ----------------------------------------
	sense
---------------------------------------- */
#about .sense{
	margin:0 -10px;
	padding:30px 0 0 0;
	background:#b99c24;
	color:#ffffff;
}

#about .sense > p{
	padding:0 10px;
	text-align:center;
}

#about .sense ul li{
	padding:30px 10px;
}
#about .sense ul li:nth-child(even){ background:#b39411; }

#about .sense ul li h3{
	margin:0 0 -14px 0;
	text-align:center;
}
#about .sense ul li:nth-child(2) h3,
#about .sense ul li:nth-child(3) h3{ margin-bottom:-34px; }

#about .sense ul li p.lead{
	width:auto;
	padding:0 0 10px 0;
	text-align:center;
	font-weight:bold;
}


/* ========================================================================
	お申込の流れ									[ /flow/ ]
======================================================================== */
#flow p{
	padding:0 0 30px 0;
}

#flow ol li{
	overflow:hidden;
	padding:0 0 30px 0;
	background:url(../../img/flow/dot.png) repeat-y 38px center;
	background-size:3px 7px;
}

#flow ol li:last-child{
	background:none;
}

#flow ol li img{
	float:left;
	width:80px;
	margin:0 10px 0 0;
}

#flow dl{
	overflow:hidden;
}

#flow dl dt{
	display:inline-block;
	margin:10px 0;
	padding:3px 14px;
	background:#b99c24;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:1.5;
}

#flow dl dd{
	line-height:2;
}

#flow dl dd.note{
	margin:10px 0 0 0;
	padding:10px 14px;
	border:1px solid #b99c24;
}

#flow dl dd a{
	color:#bf0d23;
	text-decoration:none;
}

#flow .btn img{
	width:261px;
}



/* ========================================================================
	ご利用規約										[ /rule/ ]
======================================================================== */
#rule section{
	padding:0 0 20px 0;
}

#rule section:last-of-type{
	padding:0;
}

#rule span{
	color:#bf0d23;
}

#rule p{
	padding:0 0 10px 0;
}

#rule p.center{
	padding-bottom:30px;
}

#rule p.right{
	padding-bottom:30px;
	text-align:right;
	font-size:1.2rem;
}

#rule ul{
	margin:0 0 10px 0;
	padding:10px 14px;
	border:1px solid #b99c24;
}

#rule ul li{
	line-height:2;
}

#rule ul li span span{
	display:block;
	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;
}

#rule .btn img{
	width:261px;
}


/* ========================================================================
	撮影実績										[ /portfolio/ ]
======================================================================== */
#portfolio h1{
	padding-top:20px;
}

#portfolio h2{
	padding:0 0 20px 0;
	font-size:1.3rem;
	color:#333333;
	line-height:1;
}

#portfolio ul,
#portfolio ul li{
	padding:0 0 10px 0;
}


/* ----------------------------------------
	list
---------------------------------------- */
#portfolio .list{
	padding:0 0 30px 0;
}

#portfolio .list p{
	padding:0 0 10px 4px;
	line-height:0;
}

#portfolio .list p.old{
	padding:0 4px 0 0;
	text-align:right;
}

#portfolio .list ul{
	padding:0;
}

#portfolio .list ul li{
	float:left;
	width:145px;
	margin:0 10px 10px 0;
	padding:0;
}
#portfolio .list ul li:nth-child(2n){ margin-right:0; }


/* ----------------------------------------
	paging
---------------------------------------- */
#portfolio .paging{
	overflow:hidden;
	font-size:1.3rem;
}

#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 h2{
	position:relative;
	text-align:left;
}

#contact h2::before{
	content:"";
	position:absolute;
	top:8px;
	left:0;
	width:100%;
	height:1px;
	background:#b99c24;
}

#contact h2 span{
	position:relative;
	padding:0 10px 0 0;
	background:#ffffff;
}

#contact p{
	padding:0 0 20px 0;
}

#contact p span{
	font-weight:bold;
}

#contact p br{
	display:none;
}

#contact table{
	margin:0 0 20px 0;
	line-height:2;
}
#contact table.hide{
	display:none;
	margin-top:-20px;
}
#contact table.hide + table{
	margin-top:-20px;
}

#contact table th{
	display:block;
	padding:5px 0;
	text-align:left;
}

#contact table td{	
	display:block;
	padding:0 0 10px 0;
}

#contact table span.note{
	display:block;
	font-size:1.3rem;
}

#contact table th span.note{
	margin:-4px 0 1px 0;
}

#contact table label{
	margin:0 30px 0 0;
}

#contact table dl{
	line-height:1.8;
}

#contact table dl dt{
	padding:5px 0;
	color:#b99c24;
}

#contact table dl dd{
	padding:0 0 10px 0;
}

#contact table dl dd:last-of-type{
	padding:0;
}

#contact table input.size_S{
	width:120px;
	margin:0 20px 0 0;
}
#contact table input.size_M{
	margin:0 0 5px 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{
	margin:0 0 30px 0;
	padding:15px 10px;
	border:3px solid #B59824;
	border-radius:5px;
	text-align:center;
	line-height:2.4rem;
}

#contact .sample dt{
	margin:0 0 10px 0;
	font-size:1.8rem;
	font-weight:bold;
	color:#B59824;
	line-height:2.8rem;
}


/* ----------------------------------------
	navi
---------------------------------------- */
#contact .navi{
	padding:0 0 20px 0;
}

#contact .navi li a{
	display:block;
	width:294px;
	margin:0 0 10px 0;
	background:#faf8f0;
	border:1px solid #b99c24;
	text-align:center;
	font-size:1.6rem;
	font-weight:bold;
	color:#b99c24;
	line-height:38px;

	text-decoration:none;
}


/* ----------------------------------------
	qualification
---------------------------------------- */
#contact .qualification{
	padding:0 0 20px 0;
}

#contact .qualification ul li{
	padding:0 0 0 1.0em;
	text-indent:-1.0em;
	line-height:2;
}

#contact .qualification ul li span{
	color: #BE0F19;
	font-weight: bold;
}

/* ----------------------------------------
	photobook
---------------------------------------- */
/*
#contact .photobook{
	padding:10px 0;
	border-bottom:1px solid #b99c24;
}
#contact .photobook:first-child{ padding-top:0; }

#contact .photobook p{
	padding:0;
}
*/


/* ----------------------------------------
	btn
---------------------------------------- */
#contact .btn{
	text-align:center;
}

#contact .btn button{
	width:200px;
	border:none;
}

#contact .btn input{
	min-width:120px;
	height:40px;
	margin:0 5px;
	padding:0 20px;
	background:none;
	border:2px solid #B99C24;
	font-size:1.6rem;
	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 section{
	padding:0 0 30px 0;
}

#topic h1 img{
	height:30px;
	margin:0 auto;
}

#topic h2{
	padding:0 0 10px 0;
}

#topic h2 img{
	width:auto;
	height:50px;
}

#topic .key{
	padding:0 0 20px 0;
}

#topic .btn{
	margin:0 -10px;
	padding:30px 10px 10px;
	border-top:1px solid #b99c24;
}

#topic .bnr{
	padding:20px 0 0 0;
}

#topic .inner > p{
	padding:0 0 20px 0;
}

#topic p.lead{
	padding:0 0 20px 0;
	line-height:0;
}


/* ----------------------------------------
	navi
---------------------------------------- */
#topic .navi{
	margin:0 0 30px 0;
}

#topic .navi li{
	float:left;
	width:125px;
	text-align:center;
}
#topic .navi li:nth-child(2){ float:right; }

#topic .navi li a{
	display:block;
	position:relative;
	padding:0 0 0 10px;
	background:#c8c8c8;
	line-height:40px;
}
#topic .navi li:nth-child(2) a{ padding:0 10px 0 0; }
#topic .navi li a.current{ background:#b99c24; }

#topic .navi li a::before{
	content:"";
	position:absolute;
	top:0;
	right:-40px;
	border-style:solid;
	border-width:40px 40px 0 0;
	border-color:#c8c8c8 transparent transparent transparent;
}
#topic .navi li:nth-child(2) a::before{
	right:auto;
	left:-40px;
	border-width:0 0 40px 40px;
	border-color:transparent transparent #c8c8c8 transparent;
}
#topic .navi li a.current::before{ border-top-color:#b99c24; }
#topic .navi li:nth-child(2) a.current::before{ border-bottom-color:#b99c24; }

#topic .navi li img{
	width:auto;
	height:20px;
	margin:0 0 10px 0;
	opacity:1 !important;
}


/* ----------------------------------------
	pattern_01 / pattern_02
---------------------------------------- */
#topic .pattern_01 li,
#topic .pattern_02 li{
	position:relative;
	float:left;
}

#topic .pattern_01 li:nth-child(1),
#topic .pattern_01 li:nth-child(2),
#topic .pattern_02 li:nth-child(1),
#topic .pattern_02 li:nth-child(2){
	width:145px;
	padding:20px 0 10px 0;
}
#topic .pattern_01 li:nth-child(2),
#topic .pattern_02 li:nth-child(2){ float:right; }

#topic .pattern_01 li span,
#topic .pattern_02 li span{
	position:absolute;
	top:0;
	left:0;
	width:145px;
	background:#b89b24;
	text-align:center;
	font-size:1.2rem;
	color:#ffffff;
	line-height:20px;
}


/* ========================================================================
	Topic.2											[ /topic/index_02.html ]
	Topic.3											[ /topic/index_03.html ]
======================================================================== */
#topic2 section{
	margin:-70px 0 0 0;
	padding:70px 0 10px 0;
}

#topic2 .key,
#topic2 .adobe{
	padding:0 0 20px 0;
}

#topic2 .btn{
	margin:0 -10px;
	padding:30px 10px 10px;
	border-top:1px solid #b99c24;
}

#topic2 .bnr{
	padding:20px 0 0 0;
}

#topic h2 img{
	height:30px;
	margin:0 auto;
}

#topic2 h2{
	padding:0 0 10px 1.2em;
	text-indent:-1.2em;
	text-align:left;
	font-size:1.8rem;
	font-weight:bold;
	color:#b89b24;
	line-height:28px;
	letter-spacing:0.1em;
}

#topic2 p{
	padding:0 0 20px 0;
	word-break:break-all;
}

#topic2 .inner > p{
	padding-bottom:30px;
}

#topic2 span{
	font-weight:bold;
	color:#b89b24;
}

#topic2 a{ text-decoration:none; }
#topic2 a:hover{ text-decoration:underline; }


/* ----------------------------------------
	navi
---------------------------------------- */
#topic2 .navi{
	position:relative;
	margin:0 0 30px 0;
	padding:25px 0 10px 0;
	border:1px solid #b89b24;
	border-radius:4px;
}

#topic2 .navi p.lead{
	position:absolute;
	top:-9px;
	left:10px;
	padding:0 2px 0 10px;
	background:#ffffff;
	font-size:1.8rem;
	font-weight:bold;
	color:#b89b24;
	line-height:1;
	letter-spacing:0.1em;
}

#topic2 .navi ul li{
	margin:0 20px;
	padding:0 0 10px 1.4em;
	text-indent:-1.4em;
	line-height:24px;
}

#topic2 .navi ul li span{
	padding:0 0.5em 0 0;
}


/* ----------------------------------------
	image
---------------------------------------- */
#topic2 .image li{
	position:relative;
	padding:0 0 20px 0;
}

#topic2 .image li span{
	position:absolute;
	top:0;
	left:0;
	width:150px;
	background:#b89b24;
	text-align:center;
	font-size:1.2rem;
	font-weight:normal;
	color:#ffffff;
	line-height:20px;
}


/* ----------------------------------------
	process
---------------------------------------- */
#topic2 .process li{
	float:left;
	width:145px;
	margin:0 10px 20px 0;
	line-height:1;
}
#topic2 .process li:nth-child(2n){ margin-right:0; }

#topic2 .process li span{
	display:block;
	padding:0 0 8px 8px;
}


/* ----------------------------------------
	column2
---------------------------------------- */
#topic2 .column2 li{
	margin:0 0 20px 0;
}

#topic2 .column2 img{
	margin:0 0 10px 0;
}


/* topic3-1
---------------------------------------- */
#topic3-1 .column2 img{
	margin:0;
}


/* ----------------------------------------
	topic3-5
---------------------------------------- */
#topic3-5 ul li{
	margin:0 0 20px 0;
}
#topic3-5 ul li:nth-child(n+3){
	float:left;
	width:145px;
}
#topic3-5 ul li:nth-child(3){ margin-right:10px; }

#topic3-5 ul li img{
	display:block;
	margin:0 0 10px 0;
}


/* ----------------------------------------
	topic3-6
---------------------------------------- */
#topic3-6 ul li{
	margin:0 0 30px 0;
}

#topic3-6 ul li h3{
	padding:0 0 10px 0;
	font-size:1.6rem;
	font-weight:bold;
	color:#B59824;
	line-height:2.6rem;
}

#topic3-6 ul li h3 span{
	display:block;
	font-size:1.4rem;
}

#topic3-6 ul li p{
	padding:0 0 20px 0;
}

#topic3-6 ul li a{
	display:block;
	padding:12px 0;
	background:#B59824;
	border-radius:5px;
	text-align:center;
	font-size:1.5rem;
	font-weight:bold;
	color:#ffffff;
	line-height:1;
	text-decoration:none !important;
}

#topic3-6 ul li a span{
	display:block;
	padding:7px 0 0 0;
	color:#ffffff;
	font-size:1.4rem;
}


/* ========================================================================
	Special Interview								[ /interview/ ]
======================================================================== */
#interview section{
	padding:0 0 10px 0;
}

#interview h2{
	margin:0 0 20px 0;
	padding:0 0 0 30px;
	background:url(../../img/interview/bg_h2.png) no-repeat left 2px;
	background-size:20px;
	text-align:left;
	font-size:1.6rem;
	font-weight:bold;
	color:#b99c24;
	line-height:24px;
}

#interview p{
	padding:0 0 20px 0;
}
#interview .inner > p{ padding:0 0 30px 0; }

#interview p span{
	font-weight:bold;
}

#interview .image img{
	display:block;
	margin:0 0 20px 0;
	vertical-align:top;
}


/* ----------------------------------------
	key
---------------------------------------- */
#interview .key h1{
	margin:-30px -10px 0;
	padding:0 0 30px 0;
}

#interview .key h1 img{
	margin:0;
	height:auto;
}

#interview .key p{
	display:none;
}


/* ----------------------------------------
	interview_06
---------------------------------------- */
#interview .interview_06{
	padding-bottom:30px;
}

#interview .interview_06 .image img{
	margin:0;
}


/* ----------------------------------------
	btn
---------------------------------------- */
#interview .btn{
	margin:0 -10px;
	padding:30px 10px 0;
	border-top:1px solid #b99c24;
}


/* ========================================================================
	Photographer									[ /photographer/ ]
======================================================================== */
#second #photographer{
	overflow:hidden;
	padding:90px 0 30px;
}

#photographer .font_roboto{
	font-family:'Roboto Condensed', sans-serif;
}

#photographer h2{
	padding:0 0 20px 0;
	font-size:2.0rem;
	font-weight:bold;
	line-height:1;
}

#photographer h2 span{
	color:#B99C24;
}


/* ----------------------------------------
	list
---------------------------------------- */
#photographer .list{
	padding:0 10px;
}

#photographer .list .inner > p{
	margin:0 0 30px 0;
}

#photographer .list ul{
	display:flex;
	flex-wrap:wrap;
	gap:20px 0;
	margin:0 -10px 40px;
}

#photographer .list ul li{
	width:33.33%;
	text-align:center;
}

/* 5人ver */
#photographer .list .member_five li{ width:20%; }

/* 6人ver */
#photographer .list .member_six li{ width:16.66%; }

#photographer .list ul img{
	margin:0 0 10px 0;
}

#photographer .list ul a{
	display:block;
	font-size:1.0rem;
	font-weight:bold;
	line-height:1;
	text-decoration:none;
	letter-spacing:0.05em;
}

#photographer .list ul span{
	display:block;
	padding:6px 5px 0;
	font-weight:normal;
	color:#C8B570;
	line-height:12px;
}

#photographer .list ul span.area{
	padding:10px 5px 0;
	color:#333333;
	line-height:14px;
	letter-spacing:normal;
}


/* selectable
---------------------------------------- */
#photographer .list .selectable{
	padding:30px 10px;
	border:1px solid #B39B3F;
}

#photographer .list .selectable h2{
	line-height:30px;
}

#photographer .list .selectable h2 img{
	width:auto;
	height:20px;
}

#photographer .list .selectable p{
	padding:0 0 28px 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:90px;
	opacity:0;
	width:100%;
	margin:-30px 0 0 0;
}
#photographer .detail.on{
	visibility:visible;
	position:static;
}

#photographer .detail .inner{
	padding:0 10px;
}


/* 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:10px;
	background:url(../../img/photographer/btn_prev.png) no-repeat;
}
#photographer .bx-wrapper .bx-next{
	right:10px;
	background:url(../../img/photographer/btn_next.png) no-repeat;
}
#photographer .bx-wrapper .bx-controls-direction a{
	top:450px;
	width:21px;
	height:38px;
	margin-top:0;
	background-size:100%;
}


/* pager
---------------------------------------- */
#photographer .pager{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	position:absolute;
	top:90px;
	left:0;
	padding:0 0 0 3px;
	z-index:60;
}

#photographer .pager li{
	margin:0 2px 4px;
}

#photographer .pager a{
	display:block;
	width:42px;
	height:42px;
	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;
	padding:200px 0 0 0;
	background:url(../../img/photographer/bg_key.png);
	background-size:366px;
}

#photographer .key::before{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	background:rgba(255,255,255,0.8);
}

#photographer .key p{
	font-size:1.6rem;
	font-weight:bold;
	line-height:26px;
	letter-spacing:0.05em;
}

#photographer .key p.name{
	padding:30px 0 20px 0;
	font-size:2.0rem;
	line-height:1;
}

#photographer .key p.name span{
	display:block;
	padding:10px 0 0 0;
	font-size:1.2rem;
	font-weight:normal;
	line-height:2.2rem;
	letter-spacing:normal;
}

#photographer .key p.name span.font_roboto{
	display:inline-block;
	padding:0 0 0 10px;
	vertical-align:top;
	line-height:20px;
	letter-spacing:0.05em;
}

#photographer .key figure{
	text-align:center;
}

#photographer .key .btn{
	position:absolute;
	right:20px;
	bottom:20px;
}

#photographer .key .btn a{
	display:block;
	width:80px;
	background:#ffffff;
	border-radius:50%;
	text-align:center;
	font-size:1.2rem;
	font-weight:bold;
	line-height:80px;
	text-decoration:none;
}


/* profile
---------------------------------------- */
#photographer .profile,
#photographer .profile figure{
	padding:0 0 30px 0;
}

#photographer .profile .catchcopy{
	padding:10px 0;
	text-align:center;
}
#photographer .profile .catchcopy img{ width:240px; }

#photographer .profile p{
	padding:0 0 40px 30px;
	background:url(../../img/photographer/bg_profile.png) no-repeat left 7px;
	background-size:15px 134px;
}

#photographer .profile dl{
	padding:0 0 0 30px;
}

#photographer .profile dl dt{
	padding:0 0 10px 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 10px 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{
	padding:0 0 40px 0;
}

#photographer .skill ul{
	padding:0 0 20px 0;
}

#photographer .skill ul li{
	display:flex;
	flex-direction:column;
	justify-content:center;
	float:left;
	width:145px;
	height:150px;
	margin:0 10px 0 0;
	background:#FFE72E;
	border-radius:5px;
	text-align:center;
	font-size:1.6rem;
	font-weight:bold;
	line-height:2.4rem;
	letter-spacing:0.2em;
}
#photographer .skill ul li:nth-child(2),
#photographer .skill ul li:nth-child(3){
	height:70px;
	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.2rem;
	line-height:1;
	letter-spacing:normal;
}


/* result
---------------------------------------- */
#photographer .result{
	padding:0 0 40px 0;
}

#photographer .result ul{
	padding:0 0 10px 0;
	font-size:0;
}

#photographer .result ul li{
	display:inline-block;
	width:145px;
	margin:0 10px 10px 0;
	vertical-align:top;
	font-size:1.0rem;
	color:#B99C24;
	line-height:1;
}
#photographer .result ul li:nth-child(2n){ margin-right:0; }

#photographer .result ul li img{
	margin:0 0 5px 0;
}

#photographer .result p{
	padding:0 0 0 15px;
	text-indent:-15px;
	font-size:1.2rem;
	line-height:22px;
}

#photographer .result p span{
	padding:0 0.5em 0 0;
	vertical-align:middle;
	font-size:1.0rem;
	color:#B99C24;
}


/* nominate
---------------------------------------- */
#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;
	font-weight:bold;
	line-height:24px;
	letter-spacing:0.05em;
}

#photographer .nominate p img{
	float:left;
	width:60px;
	margin:10px 10px 0px 0;
}

#photographer .nominate p span{
	overflow:hidden;
	display:block;
}


/* ========================================================================
	LINEで気軽にお問い合わせ						[ /line/ ]
======================================================================== */
#line h1{
	color:#1EC425;
}

#line > p{
	margin:0 0 20px 0;
	text-align:center;
}

#line > p span{
	font-weight:bold;
	color:#1EC422;
}

#line > p strong{
	color:#BE0F19;
}

#line p.message{
	margin:0;
	padding:15px 10px;
	border:2px dashed #1EC422;
	border-radius:5px;
}


/* ----------------------------------------
	friend
---------------------------------------- */
#line .friend{
	padding:10px 0;
}

#line .friend .block > div{
	margin:0 0 30px 0;
	border-bottom:1px dashed #1EC422;
}
#line .friend .block .add_03{
	margin:0;
	border:none;
}

#line .friend h2{
	margin:0 0 20px 0;
	padding:0 10px;
	background:#1EC422;
	border-radius:5px;
	text-align:left;
	font-size:1.6rem;
	font-weight:bold;
	color:#ffffff;
	line-height:4.6rem;
}

#line .friend ol{
	counter-reset:number;
	margin:0 0 10px 0;
	line-height:2.4rem;
}

#line .friend ol li{
	position:relative;
	padding:0 0 10px 30px;
}

#line .friend ol li:before{
	counter-increment:number;
	content:counter(number);
	position:absolute;
	top:2px;
	left:0;
	width:20px;
	height:16px;
	padding:4px 0 0 0;
	background:#1EC422;
	border-radius:50%;
	text-align:center;
	font-size:1.2rem;
	font-weight:bold;
	color:#FFFFFF;
	line-height:1;
}

#line .friend p,
#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;
}


}