@charset "UTF-8";

/*　レイアウト：SP 基本体裁　*/

/* ================================================================ */
/*  ボディ													*/
/* ================================================================ */

html, body {
	width: 100%;
	height: 100%;
	text-align: center;
	background: #fff;
	margin: 0;
	padding: 0;
}

#site-wrapper {
	width: 100% !important;
	background: #fff;
	margin: 0 auto;
	height: auto;
	min-height: 100%;
	position: relative;
	text-align: center;
}


/* ================================================================ */
/*  ヘッダー													*/
/* ================================================================ */

.corporate #header,
.photo-site #header,
.corporate .header-inner,
.photo-site .header-inner {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	margin: 0 auto;
}

.header-inner {
	width: 100%;
	height: auto;
	position: relative;
	text-align: left;
	margin: 0 auto;
}


.header-section {
	width: 96%;
	height: auto;
	overflow: hidden;
	position: relative;
	text-align: left;
	z-index: 1500;
}


#logo {
	position: relative;
	margin-top: 10px !important;
	top: 0;
}

#logo a {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: auto;
}

.header-navi {
	float: right;
	margin-top: 1em;
}

.header-navi ul li {
	display: inline;
	float: left;
	border-right: 1px solid #fff;
	padding: 0 10px;
}

.header-navi ul li.end {
	border-right: none;
	padding: 0 10px;
}
.top-link-inner ul li.end_under {
    float: right;
}
.header-navi ul li a {
	color: #fff;
}
.top-link-inner ul li.end_under  {
    display: inline;
    margin-bottom: 3px;
}


/*------------------------------------------*/
/*  ロゴ関連								*/
/*------------------------------------------*/
#logo {
	width: 40%;
	height: auto;
}

#logo img {
	width: 100%;
	height: auto;
}

/*------------------------------------------*/
/*  コーポレートサイト								*/
/*------------------------------------------*/

.corporate .header-navi {
	display: block;
	float: right;
	position: relative;
	top: 0;
}



.corporate .header-navi ul li.end {
	border-right: none;
	padding: 0 0 0 10px;
}

.corporate .header-navi ul li a {
	color: #000;
}


/*------------------------------------------*/
/*  フォトサイト								*/
/*------------------------------------------*/


.photo-site #header {
	background-position: 0 bottom;
	background-size: 100%;
}

.photo-site .header-navi {
	display: block;
	float: right;
	position: relative;
	top: 0;
}

.photo-site .header-navi ul li {
	display: inline;
	float: left;
	border-right: 1px solid #fff;
	padding: 0 10px;
}

.photo-site .header-navi ul li.end {
	border-right: none;
	padding: 0 0 0 10px;
}

.photo-site .header-navi ul li a {
	color: #fff;
}




/* ================================================================ */
/*  グローバルナビ													*/
/* ================================================================ */

/*------------------------------------------*/
/*  コーポレートサイト								*/
/*------------------------------------------*/

.corporate #g-navi {
	width: 100%;
	height: auto;
	position: relative;
	background: url(../../images/corporate/base/nav-back01.png);
}

.corporate #g-navi ul {
	width: 100%;
	height: auto;
	margin:0;
	display: table;
	margin: 0 auto 0 auto;
	table-layout: fixed;
}

.corporate #g-navi ul li  {
	display: table-cell;
	vertical-align: middle;
	float: none;
	border-right: 1px solid #aaa;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

.corporate #g-navi ul li:nth-child(6) {
	border-right: none;
}

.corporate #g-navi ul li a  {
	width: 100% !important;
	text-decoration: none;
	text-indent: 0;
	height: 100%;
	color: #fff;
	background: none;
	padding: 1em 0.25em 1em 0.25em;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

/* サブメニュー */
.corporate .sub-navi {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	text-align: center;
	bottom: 0;
	z-index: 10;

}

.corporate .sub-navi ul {
	width: 100%;
	height: auto;
	margin: 0 auto;
	overflow: hidden;
	text-align: left;
}

.corporate .sub-navi ul li {
	width: 100%;
}

.corporate .sub-navi ul li.nav01 a,
.corporate .sub-navi ul li.nav02 a,
.corporate .sub-navi ul li.nav03 a,
.corporate .sub-navi ul li.nav04 a { background: none; }

.corporate .sub-navi ul li.nav01 a:hover,
.corporate .sub-navi ul li.nav02 a:hover,
.corporate .sub-navi ul li.nav03 a:hover,
.corporate .sub-navi ul li.nav04 a:hover { background: none; }

.corporate .sub-navi ul li a {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	text-indent: 0;
	float: none;
	display: block;
	text-decoration: none;
	font-weight: bold;
	padding: 1em 0.85em !important;
	color: #2f2f2f;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
	
	/* グラデーション */
	background-image: none ;
	background-image: linear-gradient(bottom, rgb(189,189,189) 21%, rgb(245,245,245) 100%) !important;
	background-image: -o-linear-gradient(bottom, rgb(189,189,189) 21%, rgb(245,245,245) 100%) !important;
	background-image: -moz-linear-gradient(bottom, rgb(189,189,189) 21%, rgb(245,245,245) 100%) !important;
	background-image: -webkit-linear-gradient(bottom, rgb(189,189,189) 21%, rgb(245,245,245) 100%) !important;
	background-image: -ms-linear-gradient(bottom, rgb(189,189,189) 21%, rgb(245,245,245) 100%) !important;
	
	background-image: -webkit-gradient(
		linear,
		left bottom,
		left top,
		color-stop(0.21, rgb(189,189,189)),
		color-stop(1, rgb(245,245,245))
) !important;
	
}

/* メインイメージグラデーション(白) */
.gradient {
	display: none;
}

/*------------------------------------------*/
/*  フォトサイト								*/
/*------------------------------------------*/

.photo-site #g-navi {
	width: 100%;
	height: auto;
	position: relative;
	background: url(../../images/corporate/base/nav-back01.png);
}

.photo-site #g-navi ul {
	width: 100%;
	height: auto;
	margin:0;
	display: table;
	table-layout: fixed;
}

.photo-site #g-navi ul li  {
	display: table-cell;
	vertical-align: middle;
	float: none;
	border-right: 1px solid #666;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.photo-site #g-navi ul li:nth-child(6) {
	border-right: 0;
}


.nav06 span {
	display: block;
	font-size: 0.6em;
}

.photo-site #g-navi ul li a  {
	width: 100% !important;
	text-decoration: none;
	text-indent: 0;
	height: 100%;
	color: #fff;
	background: none;
	padding: 1em 0.25em 1em 0.25em;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

.photo-site #g-navi ul li a:hover,
.photo-site #g-navi ul li:hover {
		background: #ccc;
}

/* ================================================================ */
/*  メインイメージ													*/
/* ================================================================ */

/*------------------------------------------*/
/*  コーポレートサイト								*/
/*------------------------------------------*/

.sp-none {
	display: none;
}

.main-banner {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
}

.corporate .main-banner img,
.photo-site .main-banner img {
	width: 100%;
	height: auto;
}

.page-title {
	width: 72%;
	height: auto;
	position: absolute;
	top: 20%;
	left: 5%;
}

/* 写真レンズスペシャルサイト(３行) */
.page-lineup-list {
	top: 10%;
}

.page-lineup-list {
	width: 40%;
	height: auto;
}

.corporate .sp-banner {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 1;
	overflow: hidden;
	margin-bottom: 0;
}

.corporate .sp-banner img {
	width: 100%;
	height: auto;
	display: block;
}


/*------------------------------------------*/
/*  フォトサイト								*/
/*------------------------------------------*/

.sp-banner {
	display: block;
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
}


.slideshow-container,
.slideshow,
.controls,
#thumbs {
	display: none !important;
}

.facebook_bnr {
	position: relative;
	z-index: 1500;
	right: 0;
	top: 0;
	width: 100%;
}

.facebook_bnr img {
	width: 100% !important;
	height: auto;
}

#gallery {
	width: 100%;
	height: auto;
	positon: relative;
	margin-bottom: 10px;
}

#slideshow {
	width: 100%;
	height: 440px;
	overflow: hidden;
	text-align: left;
	position: relative;
	background: #000;
	float: left;
	top: 0;
	left: 5px;
	margin: 0;
}

#slideshow a {
	position: absolute;
	top: 0;
	left: 0;
}

#slideshow a img {
	position: absolute;
	top: 0;
	left: 0;
	
}

ul.thumbs {
	width: 780px;
	height: auto;
	position: absolute;
	top: 430px;
	left: 39px;
	display: inline-block;
	background: url(../../images/photo-site/top/banner-thumbs00.jpg) no-repeat 0 0;
	padding-left: 125px; 
	z-index: 1000;
}

ul.thumbs li {
	display: inline;
	float: left;
	margin: 0 5px;
}

#controls {
	width: 960px;
	height: auto;
	position: absolute;
	top: 455px;

}

.ss-controls {
	display: none ;
}

.nav-controls {
	width: 960px;
	height: 30px;
	overflow: hidden;
	position: relative;
}
.prev {
	width: 20px;
	height: 30px;
	background: url(../../images/photo-site/top/slide-arrow01.png) no-repeat 0 0;
	text-indent: -999em;
	display: block;
	position: absolute;
	left: 0;
}
.next {
	width: 20px;
	height: 30px;
	background: url(../../images/photo-site/top/slide-arrow02.png) no-repeat 0 0;
	text-indent: -999em;
	display: block;
	position: absolute;
	right: 0;
	z-index: 200;
}


/* ================================================================ */
/*  メインコンテンツ													*/
/* ================================================================ */

.main {
	width: 100%;
	padding-bottom: 0;
}

.main .main-inner {
	width: 100%;
}

.top-content,
.top-content .content_wrap {
	width: 100%;
	height: auto;
	margin-left: 0;
}

/*------------------------------------------*/
/*  コーポレートサイト								*/
/*------------------------------------------*/


.corporate .main {
	width: 96%;
	height: auto;
}

.corporate .main-inner {
	width: 100%;
	height: auto;
	margin: 15px auto;
	overflow: hidden;
	position: relative;
	text-align: left;
}



.cLeft-content {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	float: none;
}


.cCenter-content {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	float: left;
	margin-left: 0;
	margin-bottom: 1.5em;
}

.cRight-content {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	float: right;
}


.content-inner {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	margin-bottom: 15px;
}
.banner-list-full,
.banner-list {
	width: 100%;
	height: auto;
}
.banner-list-full ul li {
	width: 100%;
	margin-bottom: 15px;
	display: block;
}

.banner-list ul li {
	width: 48%;
	margin-bottom: 15px;
	display: inline;
	float: left;
}

	
.banner-list ul li img {
	width: 100%;
	height: auto;
}

.banner-list ul li:nth-child(even) {
	float: right;
}

.banner-list ul li a {
	text-align: left;
	display: block;
}

.banner-list ul li a:nth-child(even) {
	float: right;
	display: block;
}

.banner-list ul li ul li {
	width: 100%;
}

/*  フロート解除  */
.banner-list ul li:nth-child(odd){
	clear:both ;
}


/*------------------------------------------*/
/*  フォトサイト								*/
/*------------------------------------------*/



.top-content {
	width: 100%;
}



/* トップページ　タブ
-------------------------------------------*/
.top-tab {
	width: 96%;
	margin: 0 auto;
}

.top-tab ul li a {
	width: auto !important;
}

.top-tab ul li.select a {
	width: auto !important;
	background: #fff !important;
}


.top-side-menu {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	float: none;
	text-align: center;
}


.top-side-menu .title-news {
	width: 96%;
	height: auto;
	text-indent: 0;
	margin-bottom: 15px;
	text-align: left;
	font-weight: bold;
	font-size: 1.25em;
	background: none;
	border-top: 1px solid #06C;
	border-bottom: 1px solid #06C;
	margin: 0 auto 0.75em auto;
	color: #06C;
	padding: 0.5em 0;
}

.top-newslist ul li {
	margin-bottom: 15px;
}


.top-newslist {
	width: 96%;
	height: auto;
	margin: 0 auto;
	text-align: left;
}

.top-newslist ul {
	width: 100%;

}

.top-newslist ul li {
	margin-bottom: 0.5em;
	border-bottom: 1px solid #ddd;
	padding: 0.5em;
}

/* 新着情報
-------------------------------------------*/
.top-news-section {
	padding-bottom: 5px;
	margin-bottom: 5px;
	background: none;
}

.bar-non {
	background: none !important;
}

.top-news-inner {
	width: 100%;
	height: auto;
	overflow: hidden;
	background: none;
}

.news-thumbs {
	width: 100%;
	height: auto;
	border-bottom: 1px dotted #ddd;
	padding-bottom: 1em;
	margin-bottom: 1em;
}

.news-thumbs-photo {
	width: 15%;
}	
.news-thumbs-photo img {
	width: 100%;
	height: auto;
}

.news-thumbs dl {
	clear: both;
	width: 100%;
}
.news-thumbs dl.bosyu {
	clear: both;
	padding-top: 5px;
}
.news-thumbs dl.bosyu dt {
	background: #d9d9d9;
	text-align: center;
	font-weight: bold;
	padding: 3px 0;
	margin-bottom: 5px;
}

.news-thumbs p.bosyu {
	width: 100%;
}


.news-thumbs-section {
	width: 82%;
	height: auto;
	overflow: hidden;
	float: left;
	margin-bottom: 10px;
	float: right;
}

.news-thumbs-inner {
	width: 100%;
	height: auto;
	overflow: hidden;
}

.news-title {
	width: 100%;
}

.news-icon {
	float: none;
	width: 100%;
	height: auto;
	overflow: hidden;
	text-indent: 0;
	background: none;
	padding: 0.5em 0;
}

.news-icon li {
	display: inline-block;
	padding: 0.25em 0.5em;
	background: #ddd;
	border-radius: 0.5em;
	font-size: 0.85em;
	width: auto;
	height: auto;
	float: left;
	margin-right: 0.25em;
}


.photo-site .top-content .type01,
.photo-site .top-content .type02,
.photo-site .top-content .type03,
.photo-site .top-content .type04 {
	background: none;
	text-indent: 0;
	diplay: inline-table;
	overflow: hidden;
	width: 100%;
	height: auto;
}



.news-thumbs-section .new {
	background: url(../../images/photo-site/top/new01-icon-new.jpg) no-repeat 0 0;

	padding-left: 38px;
	min-height: 21px;
	font-size: 10px;
}


/* スペシャルコンテンツ
-------------------------------------------*/
.sp-cont-wrap {
	margin-top: 0 !important;
	overflow: hidden;
}
.sp-cont-thumbs-photo {
	width: 10%;
	height: auto;
	margin-right: 0;
	float: left;
}

.sp-cont-list {
	width: 85%;
	height: auto;
	float: right;
}
.sp-cont-list dt {
	font-size: 10px;
}

.sp-cont-list dl.new {
	background: url(../../images/photo-site/top/new01-icon-new.jpg) no-repeat left top;
	padding-left: 0;
	padding-top: 28px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	width: 
}


/* トップページリンクセクション
-------------------------------------------*/


.top-link-section {
	width: 100%;	height: auto;
	margin-left: 0;
}


.top-link-inner {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	margin-bottom: 10px;
}

.top-link-inner ul {
	width: 100%;
	height: auto;
	overflow: hidden;
}
.top-link-inner ul li {
	display: inline;
	float: left;
	margin-bottom: 10px;
	width: 49%;
	position: relative;
}

.top-link-inner ul li:nth-child(even) {
	float: right;
}

.top-link-inner ul li img {
	width: 100%;
	height: auto;
}

.link-sub {
	width: 100%;
	height: auto;
	overflow: hidden;
}

.link-sub ul li {
	width: 100%;
}

.link-sub ul li.support {
	margin-bottom: 3%;
}


/* ================================================================ */
/*  フッター													*/
/* ================================================================ */


#footer-section {
 position: relative;
 bottom: 0;
 left: 0;
 height: auto;
 width: 100%;
 margin: 0 auto;
}

#footer {
	clear: both;
	width: 100%;
	height: auto;
	overflow: hidden;
	background: #7B7B7B;
	text-align: center;
}

.footer-inner {
	width: 98%;
	height: auto;
	overflow: hidden;
	margin: 8px auto;
	padding: 0;
}

.footer-inner ul {
	display: inline-block;
	float: none;
}

.footer-inner ul li {
	display: inline-block;
	float: none;
	font-size: 10px;
	border-right: 1px solid #fff;
	padding: 0 5px;
	text-align: center;
	margin-bottom: 0.5em;
}


.footer-inner ul li.clear {
	clear: left;
}


.footer-inner ul li.end {
	border-right: none;
}


.footer-inner ul li a {
	color: #fff;
}

.copy {
	font-size: 10px;
	float: none;
	color: #fff;
	text-align: center;
	clear: both;
	padding-top: 1.5em !important;
}



/*------------------------------------------*/
/*  コーポレートサイト								*/
/*------------------------------------------*/

.corporate .page-top {
	clear: both;
	text-align: right;
	font-size: 10px;
	margin: 0 0 5px 0 !important;
}


.corporate #footer {
	clear: both;
	width: 100%;
	height: auto;
	overflow: hidden;
	background: #7B7B7B;
	text-align: center;
	margin: 0 auto;
	padding: 0;
}

.corporate .footer-inner {
	width: 98%;
	height: auto;
	overflow: hidden;
	margin: 8px auto;
	padding: 0;
}



/*------------------------------------------*/
/*  フォトサイト								*/
/*------------------------------------------*/

.photo-site .page-top {
	clear: both;
	text-align: right;
	margin: 0 2% 5px 0 !important;
}


/* ================================================================ */
/*  汎用スタイル													*/
/* ================================================================ */

/*  リスト							
------------------------------------------*/

.list-style dl {
	width: 100% !important;
}
.list-style dl dt {
	float: none;
	width: 100%;
	font-weight: bold;
}
.list-style dl dd {
	float: none;
	width: 100% !important;
}


/*  一覧へ							
------------------------------------------*/

.info-all {
	clear: both;
	text-align: right;
	margin-bottom: 20px;
}

.info-all a {
	background: #707070;
	text-align: center;
	display: inline-block;
	color: #fff;
	padding: 3px 6px;
}

/*  タブメニュー						
------------------------------------------*/

.tab-base {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	background: url(../../images/corporate/tab/tab-back.jpg) repeat-x 0 1px;
	position: relative;
	z-index: 5;
}

.tab-base ul {
	display: table;
	margin: 0 2%;
	width: 96%;
	table-layout: fixed;
}
.tab-base ul li {
	display: table-cell;
	float: none;
	width: auto;
}

.tab-base ul li a {
	background: #ededed;
	color: #666;
	display: block;
	width: auto;
	height: 15px;
	padding: 6px 0.25em 2px 0.5em;
	margin-right: 3px;
	border-bottom: 1px solid #000;
	font-size: 10px !important;
}

.tab-base ul li.select a {
	height: 16px !important;
	background: none;
	width: auto;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: #fff !important;
	background: #fff;
	position: relative;
	z-index: 888;
	top: 1px;
}
.tab-base ul li.end a {
	margin-right: 0 !important;
}


.content_wrap {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
	margin: 20px 0 20px 0;
	text-align: left;
}

/* 追加 */
#image-navigation {
	display: none;
}

/*-----------------------------------------------
  サブウィンドウ表示
-------------------------------------------------*/

.subwin #site-wrapper,
.subwin #footer-section {
	width: 100%;
	padding: 0;
}

.subwin .main {
	width: 96%;
	margin: 0 2%;
}

.subwin footer,
.subwin #footer,
.subwin .footer-inner {
	width: 100%;
}

.subwin .footer-inner {
	padding: 0 2%;
	width: 96%;
}

.subwin .main-inner {
	margin-top: 0 !important;
}


/* 画像の中央ぞろえ横幅80％ */

.c-img {
	text-align: center;
	float: none !important;
}

.c-img  img {
	width: 80%;
	height: auto;
	margin: 0 auto;
}


/* 画像の中央ぞろえ横幅100％ */
.c-img-full {
	text-align: center;
	float: none !important;
}

.c-img-full img {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

/* 画像の中央ぞろえ */
.img-center {
	text-align: center;
	float: none !important;
}

/* 画像の左ぞろえ */

.l-img {
	text-align: left;
}

.l-img  img {
	width: 80%;
	height: auto;
	margin: 0 auto;
}




/* end CSS */











