﻿/* CSS Document */
@charset "utf-8";

/*リセットスタイル ここから↓↓
-------------------------------------------------------------*/
*{
	margin: 0;
	padding: 0;
}
address, caption, em, strong, th{
	font-style: normal;
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	padding:0;
	margin:0;
}
caption, th {
	text-align: left;
}
hr{
	display: none;
}

a{
	text-decoration: none;
}
img{
	border: 0;
	padding:0;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
ul {
	list-style: none;
}

header, footer, nav, section, article, figure, aside {
	display:block;
}

/*リセットスタイル ここまで↑↑
-------------------------------------------------------------*/

/*body 基本スタイル
-------------------------------------------------------------*/
body {
	font-family: 'Hiragino Kaku Gothic Pro','Yu Gothic','-Meiryo',sans-serif;
	color: #444;
	font-size: 100%;
	line-height: 1.5;
	text-align: left;
	letter-spacing: -0.001em;		/* iOS4でのテキストの隙間への対応 */
	-webkit-text-size-adjust: 100%;		/* 文字サイズの自動調整機能のキャンセル */
	-ms-text-size-adjust: 100%;		/* 文字サイズの自動調整機能のキャンセル */

}

#container {
	position: relative;			/* 親要素をposition:relativeとする */
	width: 100%;
}



/*禁則処理
-------------------------------------------------------------*/
p,li,dt,dd,th,td,pre{
	-ms-line-break: strict;
	line-break: strict;
	-ms-word-break: break-strict;
	word-break: break-strict;
}
/*h 文字サイズ・行間 基本スタイル
-------------------------------------------------------------*/
h1{
	font-size:1.375em; /*22px*/
	line-height:1.0909; /*24px*/
	margin-bottom:1.0909em; /*24px*/
}
h2{
	font-size:1.25em; /*20px*/
	line-height:1.2; /*24px*/
	margin-bottom:1.2em; /*24px*/
}
h3{
	font-size:1.125em; /*18px*/
	line-height:1.3333; /*24px*/
	margin-bottom:1.3333em; /*24px*/

}
hgroup h4,h5,h6{
	font-size:1em; /*16px*/
	line-height:1.5; /*24px*/
	margin-bottom:1.5em; /*24px*/
}

/*Link 基本スタイル
-----------------------------------------------------*/
a:link {
	color: #00F;
}
a:visited {
	color: #00F;
}
a:hover {
	color: #00F;
}
a:active {
	color: #00F;
}
a:hover{
	opacity:0.7;/*モダンブラウザ用*/
	filter:alpha(opacity=70);/*IE用*/
}

a img:hover{
	opacity:0.7;/*モダンブラウザ用*/
	filter:alpha(opacity=70);/*IE用*/
}


/*フルードイメージ対応
------------------------------------------------------*/
img {
	max-width: 100%;
	height: auto;
}

/*clearfix（回り込み解除）
------------------------------------------------------*/
/* For modern browsers */
.cf:before,
.cf:after {
  content: " ";
  display: table;
}
.cf:after {
  clear: both;
}
/* For IE 6/7 only */
.cf {
  *zoom: 1;
}

/*body=container 領域
-------------------------------------------------------------*/
#container {
	background-color:#f8fafa;
}


/*header領域
------------------------------------------------------ */
#header{
	background-color:#FFF;
	position:fixed;
	z-index:999;
	top:0px;
	width:100%;
	height:4em;
	/*CSS3シャドウ外側*/
	-moz-box-shadow: 0.1em 0.1em 0.3em #999;
	-webkit-box-shadow: 0.1em 0.1em 0.3em #999;
	box-shadow: 0.1em 0.1em 0.3em #999;
}

#headContainer{
	max-width:1200px;
	margin:0 auto;
}

#logo{
	/*width:70%;*/
	margin:0.5em 1em;
	float:left;
}

#logo img{
	display:block;
	width:auto;
	max-height:2.5em;
	margin:0 auto;
}

/*header領域内　グロナビメニューボタン
------------------------------------------------------ */
#menuButton{
	width:15%;
	margin:0.3em 0.3em auto auto;
	background-color:#FFF;
	float:right;

	/*CSS3角丸 （左上）*/
	-moz-border-top-left-radius: 0.5em;
	-webkit-border-top-left-radius: 0.5em;
	border-top-left-radius: 0.5em;
	/*CSS3角丸 （右上）*/
	-moz-border-top-right-radius: 0.5em;
	-webkit-border-top-right-radius: 0.5em;
	border-top-right-radius: 0.5em;
	/*CSS3角丸（右下）*/
	-moz-border-bottom-right-radius: 0.5em;
	-webkit-border-bottom-right-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
	/*CSS3角丸（左下）*/
	-moz-border-bottom-left-radius: 0.5em;
	-webkit-border-bottom-left-radius: 0.5em;
	border-bottom-left-radius: 0.5em;
}

.menuBu{
	text-align:center;
	font-size:0.8em;
	margin:0.1em auto 0;
}

.menu{
	width: 70%;
	height:30px;
	top: 0px;
	margin:0 auto;
	position:relative;
	cursor:pointer;
}

.menu1{
	width:100%;
	height:3px;
	background-color:#000;
	position:absolute;
	top:0px;
} 
.menu2{
	width:100%;
	height:3px;
	background-color:#000;
	position:absolute;
	top:10px;
} 
.menu3{
	width:100%;
	height:3px;
	background-color:#000;
	position:absolute;
	top:20px;
} 
.menu1,.menu2,.menu3{
	transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out; /* opera */
	-moz-transition: all 0.5s ease-out; /* firefox */
	-webkit-transition: all 0.5s ease-out; /* chrome, safari */
	-ms-transition: all 0.5s ease-out; /* ie */ 
}

.menuclick1{
	top:10px;
	-moz-transform: rotate(405deg);
	-webkit-transform: rotate(405deg);
	-o-transform: rotate(405deg);
	-ms-transform: rotate(405deg);
	transform: rotate(405deg); 
}
.menuclick2{
	opacity:0;
}
.menuclick3{
	top:10px;
	-moz-transform: rotate(-405deg);
	-webkit-transform: rotate(-405deg);
	-o-transform: rotate(-405deg);
	-ms-transform: rotate(-405deg);
	transform: rotate(-405deg); 
}

/*wrapper領域
------------------------------------------------------ */
#wrapper{
	max-width:1200px;
	margin:0 auto;
	padding:4em 0 0 0;
	background-color:#FFF;
	position: relative;
}

/*gnavi領域
------------------------------------------------------ */

#gnavi ul{
	display:none;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	position:fixed;
	z-index:999;
}
#gnavi li{
	color: #FFF;
	font-weight:bold;
	text-align:center;
	font-size:1.2em;
	line-height:3em;
	border-top:1px solid #FFF;
	background-color:#333;
}

#gnavi li a{
	display:block;
	color: #EF91AE;
}

#gnavi li a:hover {
	color: #F69;
}

#gnavi .icon{
	width:50%;
	float:left;
}

#gnavi img{
	width:50%;
	max-width:40px;
	margin:0.6em auto;
}

/*footer領域
------------------------------------------------------ */
#footer{
	background-color:#aab3b3;
	width:100%;
	/*CSS3シャドウ外側*/
	-moz-box-shadow: 0.1em 0.1em 0.3em #F99;
	-webkit-box-shadow: 0.1em 0.1em 0.3em #F99;
	box-shadow: 0.1em 0.1em 0.3em #F99;
}

#footContainer{
	max-width:1200px;
	margin:0 auto;
}

#address{
	text-align:center;
}

#address li{
	display:inline-block;
}

#address img{
	width:70%;
	max-width:50px;
	margin:0.5em 0.5em 0;
}

#copy{
	clear:both;
	text-align:center;
	font-color:#666;
}

/*コンテンツが少ない場合、footerを最下部に固定表示
------------------------------------------------------ */
body , html { /*ページ全体*/
    height: 100%;
}
#container { /*親要素*/
    position: relative;
    width: 100%;
    min-height: 100%;
    height: auto !important;
    height: 100%;
}
#contents { /*コンテンツ*/
    padding-bottom: 78px;
}
#footer { /*フッター*/
    position: absolute;
    width: 100%;
    height: 78px;
    bottom: 0;
}


/*contents領域
------------------------------------------------------ */
#contents{
	margin:0 1em;	
}

/*index以外共通contents領域
------------------------------------------------------ */
#contents h2{
	margin:0.5em 0;
	border-bottom:0.2em solid #EF91AE;
	padding:0 0.3em;
	font-size:1.65em;
}

#contents h2 span{
	font-size:0.4em;
	margin-left:0.5em;
}

.contMain{
	padding:0 0 1em;
}

.contMCap{
	margin:0 0.5em;
}
.contMCapspan{
	font-size:0.85em;
	margin:0 0.5em;
	line-height:2em;
}

.contMain h3{
	margin:1em 0 0.5em;
	border-left:0.8em solid #EF91AE;
	padding-left:0.5em;
}

.contSection{
	margin:0 -0.5em 0.5em;
	border:0.1em solid #CCC;
	padding:0.5em;
}

/*★以下ページごと領域*/
/*---------------------------------------------------- */
/*indexページ
------------------------------------------------------ */
/*#mainImg{
	margin:0 -1em;
}*/

#news h2{
	margin:1em 0 0.5em;
	border-bottom:0.2em solid #EF91AE;
	border-left:0.8em solid #F69;
	padding-left:0.4em;
	font-size:1.5em;	
}

#news dl{
	margin:0.5em 0.5em 0;
}
#news dt{
	height:1em;
}
#news dd{
	padding:0.3em 0 1em 1em;
}
#news dd span{
	font-size:0.875em;
}

#news dd a{
	color:#F69;
	font-weight:bold;
}

#news dd span{
	color:#F69;
	font-weight:bold;
}




/*---------------------------------------------------- */
/*aboutページ
------------------------------------------------------ */
/*現状スマホ非表示
.aboutImg{
	max-width:50%;
	margin:3em 2em 0.5em auto;
}
*/

.fTable1,.fTable2{
	width:100%;
	margin:0.5em 0 1em;
}

.feeTable{
	margin:1em auto;
}
div.feeTable .odd{
	background:#EF91AE;
}
div.feeTable th{
	background:#EF91AE;
	color:#FFF;
	font-weight:bold;
	text-align:center;
}
div.feeTable th,td{
	padding:5px;
	font-size:0.9em;
	border:2px solid #FFF;
}
div.feeTable .even{
	background:#F2F2F2;
}
div.feeTable .t_hover{
	background:#EFC4DF;
}

div.feeTable .td_cont{
	padding-left:0.5em;
	width:50%;
}
div.feeTable .td_size{
	text-align:center;
	width:30%;
}
div.feeTable .td_fee{
	text-align:right;
	padding-right:0.5em;
	width:20%;
}

div.feeTable .td_notes{
	text-align:center;
}
div.feeTable .td_size.td_notes{
	font-size:0.7em;
}

.feeNotes{
	font-size:0.7em;
	line-height:1.2;
	color:#999;
	margin:0 0 0.5em 1em;
}


/*---------------------------------------------------- */
/*worksページ
------------------------------------------------------ */

#photo_galle{
}

#photo_galle a img{
	padding:0.5em 5px 0.5em 5px;
}

.photoG_cap{
	font-size:0.8em;
	margin:0 0.5em;

}

.worksNotes{
	font-size:0.7em;
	line-height:1.2;
	color:#999;
	margin:0 0 0.5em 1em;
}


/*---------------------------------------------------- */
/*stampページ
------------------------------------------------------ */
.sTitle{
	font-weight:bold;
	font-size:1.125em;
	border-bottom:0.2em solid #CCC;
	border-left:0.5em solid #CCC;
	padding-left:0.5em;
}

.sTitle a{
	color:#444;
}

.sTitle span{
	color:#F69;
	font-weight:bold;
	padding-right:0.5em;
}

.sProgress{
	font-size:0.9em;
	margin:0.5em 1.3em 0;
}

.sStatus{
	font-size:1em;
	font-weight:bold;
}

.sRelease{
	font-size:1.125em;
	font-weight:bold;
	color:#F69;
}

.contSection img{
	display:block;
	margin:0 auto;
}

.sMainImg img{
	width:100%;
	max-width:480px;
}

.sCaption{
	margin:0 0.8em 0.8em;
	font-size:0.9em;
}

.sCategory{
	margin:1em 0 0;
	font-size:0.7em;
	text-align:right;
}

.sQR img{
	max-width:50%;
}

.sURL{
	word-wrap: break-word;
	font-size:0.9em;
	text-align:center;
}

.sURL a{
	color:#66A;
}




/*★以下レスポンシブ用（モバイルファースト）
------------------------------------------------------ */
/*---------------------------------------------------- */
/*                      for 768px-                     */
/*                    タブレット＆PC用                      */
/*---------------------------------------------------- */

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

	/* header高さ調整 */
	#header{
		height:5em;
	}
	#wrapper{
		padding:5em 0 0 0;
	}

	/* headerロゴの位置調整 */
	#logo{
		width:70%;
		margin:0.8em 0 0 0.8em;
		max-width:150px;
	}
	/* headerメニューボタンの位置大きさ固定 */
	#menuButton{
		width:60px;
		margin:0.8em 1em auto auto;
	}

	.menuBu{
		margin:0.1em auto 0.2em;
	}

	.menu{
		width: 40px;
		height:32px;
		top:0px;
		margin:0 auto;
	}

	.menu1{
		width:40px;
		height:5px;
		top:0px;
	} 
	.menu2{
		width:40px;
		height:5px;
		top:10px;
	} 
	.menu3{
		width:40px;
		height:5px;
		top:20px;
	} 
	.menuclick1{
		top:10px;
	}
	.menuclick3{
		top:10px;
	}

	/* gnaviMENUのInstagram・Twitter非表示 */
	#gnavi .icon{
		display:none;
	}

	/* ABOUTページの猫シルエット画像 */
	.contMCap.aboutCap{
		float:left;
	}
	.aboutImg{
		max-width:15%;
		margin-right:8em;
		float:right;
	}
		
	/* ABOUTページの料金表 */
	.fTable1,.fTable2,.feeNotes{
		width:45%;
		margin:0 2.5%;
		float:left;
	}
	.feeNotes{
		padding-top:2em;
		font-size:0.8em;
		line-height:1.5;
	}
	.feeNotes li{
		padding:0 1em 0;
	}

	/* WORKSページの調整 */
	#photo_galle{
		margin:1em 2em 1em 2em;
	}
	.worksNotes{
		padding-top:2em;
		font-size:0.8em;
		line-height:1.5;
	}
	.worksNotes li{
		padding:0 1em 0;
	}

		
	/* LINEスタンプページの調整 */
	.sProgress{
		font-size:1em;
		margin:0.5em 1.3em 1em;
	}
	
	.sStatus{
		font-size:1.125em;
	}
	
	.sRelease{
		font-size:1.125em;
	}

	.l_stamp .ConSLeft{
		width:40%;
		float:left;
	}
	.l_stamp .ConSRight{
		width:60%;
		float:right;
	}	
	.sMainImg img{
		max-width:300px;
	}
	.sCaption{
		width:80%;
		margin:1em auto 0;
		font-size:1em;
	}
	.sSampleImg{
		padding-right:1em;
	}
	.sCategory{
		font-size:0.85em;
		padding-right:1em;
	}
	.sQR{
		max-width:15%;
		margin:0 0.5em;
		float:right;
	}
	.sQR img{
		max-width:100%;
	}
	.sURL{
		clear:both;
		padding:0 1em 0.5em 0;
		text-align:right;
	}

}


/*---------------------------------------------------- */
/*                      for 992px-                     */
/*                            PC用                         */
/*---------------------------------------------------- */

@media screen and (min-width: 992px) {

	/* indexページ調整2カラム */
	#mainImg{
		width:100%;
		height:auto;
		float:left;
	}
	/* #mainImg img{
		margin-top:1em;
	} 
	
	#indexR{
		width:45%;
		margin-right:-1em;
		float:right;
	}
	#news{
		margin:2.5em 2em 0 0;
	}*/
			
	/* indexページ専用ナビ */
	#indexNavi{
		margin:12em 2em 0 0;
	}
	#indexNavi ul{
		text-align:center;
	}
	#indexNavi li a{
		display:block;
		width:33.3%;
		color:#FFF;
		font-size:1.3em;
		font-weight:bold;
		float:left;
	}
	#indexNavi li span{
		padding:0.2em;
		font-size:1.5em;
		background-color:#EF91AE;
	}
	#indexNavi li a:hover{
		background-color:#EF91AE;
		opacity:1;/*モダンブラウザ用*/
		filter:alpha(opacity=100);/*IE用*/

	}
}

	/* PC未満（スマホ・タブレット非表示設定 */
@media screen and (max-width: 991px) {

	#indexNavi,.aboutImg{
			display:none;
		}
}
