@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td {
	border:0;
	font-family:inherit;
	font-size:100%;
	font-style:inherit;
	font-weight:inherit;
	margin:0;
	outline:0;
	padding:0;
	vertical-align:baseline;
}

:focus {
	outline:0;
}

ol,ul {
	list-style:none;
}

table {
	border-collapse:separate;
	border-spacing:0;
}

caption,th,td {
	font-weight:400;
	text-align:left;
}

blockquote:before,blockquote:after,q:before,q:after {
	content:"";
}

blockquote,q {
	quotes:"" "";
}

a img {
	border:0;
}

figure {
	margin:0;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
	display:block;
}

/* -------------------------------------------------------------- */
body {
	background: #fff;
    color: #555;
    font: 14px/1.6 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN',Meiryo,メイリオ,'YuGothic','游ゴシック',Helvetica,Arial,sans-serif;
/*
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
*/
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    margin-top: 20px;
    line-height: 1.8;
/*
	color:#333;
	font:12px verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN",メイリオ,Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	line-height:1.5;
	-webkit-text-size-adjust:none;
	background:#fff;
	border-top:5px solid #358cac;
	border-bottom:5px solid #358cac;
*/
}

/* リンク設定
------------------------------------------------------------*/
a {
	color:#358cac;
	text-decoration:none;
}

a:hover {
	color:#73c4e6;
}

a:active,a:focus {
	outline:0;
}

/* 全体
------------------------------------------------------------*/
#wrapper {
	margin:20px auto;
	padding:0 1%;
	width:98%;
	position:relative;
}

.inner {
	margin:0 auto;
	width:100%;
}

/*************
/* ヘッダー
*************/
h1 {
	font-size:12px;
	line-height:1.6;
	font-weight:400;
}

#header {
	overflow:hidden;
	padding:5px 0 0;
}

* html #header {
	height:1%;
}

/*************
/* ロゴ
*************/
#header .logo {
	float:left;
	padding:20px 0;
}

.logo a {
	font-size:20px;
	font-weight:700;
	line-height:1;
	font-family:"Palatino Linotype","Book Antiqua",Palatino,"ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
}

.logo span {
	font-size:12px;
	font-weight:400;
}

.info {
	float:right;
	padding:10px 0;
}

.tel strong {
	font-size:20px;
	font-weight:700;
}

/**************************
/* トップナビゲーション
**************************/
ul#topnav {
	clear:both;
	overflow:hidden;
	margin:0 auto 20px;
	background:#358cac;
}

* html ul#topnav {
	height:1%;
}

ul#topnav li {
	float:left;
}

ul#topnav a {
	width:146px;
	font-size:12px;
	display:block;
	padding:5px 0 20px 10px;
	color:#fff;
	border-left:1px solid #fff;
}

ul#topnav li:first-child a {
	border:0;
}

ul#topnav li:last-child a {
	width:145px;
}

ul#topnav li.active a,ul#topnav a:hover {
	background:#73c4e6;
}

/**************************
/* メイン画像（トップページ+サブページ）
**************************/
#mainBanner {
	clear:both;
	line-height:0;
}

#mainBanner .inner {
	position:relative;
}

#mainBanner img {
	max-width:100%;
	height:auto;
}

.slogan {
	position:absolute;
	max-width:100%;
	height:auto;
	bottom:10px;
	left:10px;
	padding:5px 10px;
	line-height:1.4;
	z-index:10;
/* color:#358cac; */
	color:#fff;
	background:url(../images/tp2.png);
}

.subImg .slogan {
	left:auto;
	right:10px;
}

.slogan h2 {
	padding-bottom:5px;
	font-size:20px;
	color: #fff;
}

.slogan h3 {
	font-size:14px;
	color: #fff;
}

/**************************
/* グリッド
**************************/
.gridWrapper {
	clear:both;
	padding:20px 0;
	overflow:hidden;
}

* html .gridWrapper {
	height:1%;
}

.grid {
	float:left;
	background:#f4f4f4;
	border-right:1px solid #fff;
}

.colDark,.colLight {
	padding-bottom:10px;
}

.colDark h3,.colLight h3 {
	text-align:center;
	padding:5px 10px;
	font-size:14px;
	color:#fff;
	background:#73c4e6;
}

.colDark h3 {
	background:#358cac;
}

.grid p {
	padding:10px 10px;
}

.grid ul {
	margin:5px 10px;
}

.grid li {
	padding:5px 0;
	list-style:none;
	border-top:1px solid #fff;
	border-bottom:1px solid #dbdbdb;
}

.grid li:first-child {
	border-top:0;
}

.grid li:last-child {
	border-bottom:0;
}

.gridWrapper img {
	max-width:100%;
	height:auto;
}

/* フッター内のグリッド(3カラム) */
#footer .grid {
	background:transparent;
}

#footer .col3 ul {
	margin:0 0 10px 5px;
}

#footer .col3 li {
	padding:0 7px 0 5px;
	margin-bottom:3px;
	list-style:none;
	border-bottom:0;
	display:inline-block;
	border:0;
}

/*************
メイン コンテンツ
*************/
section.content {
	margin-bottom:20px;
	font-size:14px;
	overflow:hidden;
}

* html section.content {
	height:1%;
}

section.content article {
	padding:10px;
	overflow:hidden;
	background:#f4f4f4;
}

* html section.content article {
	height:1%;
}

section.content p {
	margin:10px;
}

h3.heading,#sub .grid h3 {
	padding:5px 10px;
	font-size:14px;
	color:#fff;
	background:#73c4e6;
}

h4.heading {
	clear: both;
	margin-left: 10px;
	padding-bottom: .5em;
	border-bottom: 1px solid #ccc;
}

h4.heading:first-letter {
	margin-right: .1em;
	font-size: 1.5em;
}

#main h3.heading,#sub .col2 h3 {
	background:#358cac;
}

.alignleft {
	float:left;
	clear:left;
	margin:3px 10px 10px 1px;
}

.alignright {
	float:right;
	clear:right;
	margin:3px 1px 10px 15px;
}

img.frame,.gallery img {
	border:3px solid #358cac;
	width: inherit;
}

.gallery .gridWrapper {
	padding:0;
}

.gallery .grid {
	border:0;
	background:none;
}

.gallery img {
	margin:5px;
}

section.gallery {
	overflow:visible;
}

small.red {
	color: #f00; 
	font-size: x-small;
}

/*ボタンの設定*/
input[type="submit"],
input[type="button"],
input[type="reset"] {
	width: 250px;	/*ボタン幅*/
	padding: 10px;	/*ボタン内の余白*/
	margin-bottom: 20px;
	margin-top: 20px;
	border-radius: 30px;	/*角丸のサイズ*/
	background-color: #e5e5e5;	/*背景色（古いブラウザだとここの色のみが出ます）*/
	background-image: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#e5e5e5));	/*グラデーション*/
	background-image: -webkit-linear-gradient(#FFF, #e5e5e5);	/*同上*/
	background-image: linear-gradient(#FFF, #e5e5e5);			/*同上*/
	-webkit-box-shadow: 1px 2px 7px #ccc;	/*影の設定。それぞれ右へ、下へ、ぼかし幅、色の設定。*/
	box-shadow: 1px 2px 7px #ccc;			/*同上*/
	font-size: 16px;	/*文字サイズ*/
	letter-spacing: 0.1em;
	border: 1px solid #999;	/*枠線の幅、線種、色*/
}
/*ボタンのマウスオン時の設定*/
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover {
	background-color: #FFF;	/*背景色（古いブラウザだとここの色のみが出ます）*/
	background-image: -webkit-gradient(linear, left top, left bottom, from(#e5e5e5), to(#FFF));	/*グラデーション*/
	background-image: -webkit-linear-gradient(#e5e5e5, #FFF);	/*同上*/
	background-image: linear-gradient(#e5e5e5, #FFF);			/*同上*/
}

p.c {
	text-align: center;
}

ol.vision li {
	padding: .25em 0 .25em .75em;
	border-left: 6px solid #ccc;
	margin-bottom: 20px;
}

ol.vision li:first-letter {
	margin-right: .1em;
	font-size: 1.5em;
}

ol.vision small {
	margin-bottom: 20px;
}

ol.list {
	margin-left: 10px;	
}

/*************
テーブル
*************/
table.table {
	border-collapse:collapse;
	width:100%;
	margin:10px auto;
}

table.table th,table.table td {
	padding:10px;
	border:1px solid #73c4e6;
}

table.table tr:first-child th,table.table tr:first-child td {
	border-top:#73c4e6 1px solid;
}

table.table th {
	font-weight:700;
	letter-spacing:1px;
	white-space:nowrap;
	color:#358cac;
	background:#fff;
	vertical-align:middle;
	text-align:center;
}

/*************
/* フッター
*************/
#footer .copyright {
	font-size:11px;
}

/* Q and A */

div.qanda {
	margin:10px 15px 0 15px;	
}
	
.qanda dl {
	width:100%;
    overflow: hidden;
    _zoom: 1;
	}

.qanda dt,dd{
	color:#444;
	font-size:1.0em;
	margin:0 0 10px 0;
	padding-left:4.5em;
	line-height:1.5em;
	background:none no-repeat left top;
	min-width: 40px;
	min-height:55px;
	}
	
.qanda dd{
	background: url(../images/answer.jpg) no-repeat;
	overflow: hidden;
	}
	
.qanda dt{
	background: url(../images/question.jpg) no-repeat;
	background-position: 0 10px;
	border-top: 1px dashed #c4c4c4;
	padding-top: 15px;
	margin-top:-1px;
}

/* インタビュー用アイコン設定 */
/* 渋谷義光さん */
.icon_shibuya1 dd {
	background: url(../images/icon_c/3.png) no-repeat;
	background-size: 40px;
	overflow: hidden;
	}
/* 渋谷誠人さん */
.icon_shibuya2 dd {
	background: url(../images/icon_c/2.png) no-repeat;
	background-size: 40px;
	overflow: hidden;
	}
/* 岩間さん */
.icon_iwama dd {
	background: url(../images/icon_c/1.png) no-repeat;
	background-size: 40px;
	overflow: hidden;
	}
/* 桜井さん */
.icon_sakurai dd {
	background: url(../images/icon_c/4.png) no-repeat;
	background-size: 40px;
	overflow: hidden;
	}
/* 船山さん */
.icon_funayama dd {
	background: url(../images/icon_c/5.png) no-repeat;
	background-size: 40px;
	overflow: hidden;
	}
	
/* PC用 */
@media only screen and (min-width:960px) {
	#wrapper,.inner,ul#topnav {
		width:940px;
		padding:0;
	}
	
	#wrapper {
		padding-bottom:20px;
	}
	
	#main {
		float:right;
		width:690px;
	}
	
	#subpage #sub {
		float:left;
		width:235px;
		overflow:hidden;
	}
	
	/* グリッド */
	.grid {
		width:234px;
	}
	
	.col2 {
		width:469px;
		padding-bottom:12px;
	}
	
	.col3 {
		width:704px;
	}
	
	.gallery .grid {
		width:230px;
	}
	
	#subpage #sub .grid {
		width:100%;
		float:none;
		padding-bottom:30px;
	}
}

/* モニター幅960px以下 */
@media only screen and (max-width:960px) {
	#header h1,#header .logo {
		padding-left:10px;
	}
	
	ul#topnav li:last-child a {
	width:100%;
	}
	
	#header .info {
		padding-right:10px;
	}
	
	ul#topnav {
		clear:both;
		width:100%;
	}
	
	ul#topnav li {
		width:33%;
		border-right:1px solid #73c4e6;
		border-bottom:1px solid #73c4e6;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
	}
	
	ul#topnav li:nth-child(3n) {
		border-right:0;
		width:34%;
	}
	
	ul#topnav a {
		width:100%;
		border:0;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
	}
	
	#mainBanner {
		width:100%;
	}
	
	.grid {
		width:100%;
		margin:2px 0;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
	}
	
	#sub .grid:nth-child(2n+1){
    clear: both; 
	}
	
	.col2 {
		float:none;
		width:100%;
		margin:0 0 20px;
	}
	
	.grid img {
		float:left;
		margin-right:5px;
	}
	
	.gallery .grid {
		width:31%;
		margin:0 1%;
		padding:0;
	}
	
	.gallery .grid img {
		float:none;
	}
	
	section.content {
		padding:0 10px;
	}
	
	section.content img {
		max-width:100%;
		height:auto;
	}
	
	#sub .grid {
		padding-bottom:0;
	}
	
	#footer {
		padding:0;
	}
	
	#footer .grid {
		float:none;
		width:100%;
		margin-bottom:5px;
		text-align:center;
	}
	
}

/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px) {
	.info {
	float:right;
	padding:20px 0;
	}
	
	.grid {
		width:100%;
	}
	
	.grid img {
		float:none;
		margin:20px auto 10px;
	}
	
	.grid p {
		text-align:left;
	}
	
	img.frame,.gallery img {
		border-width:2px;
	}
	
	.alignleft,.alignright {
		float:none;
		display:block;
		margin:0 auto 10px;
	}
	
	#footer .grid p {
		text-align:center;
	}
	
	.grid img {
		width: 100%;
		margin: 5px;
		text-align: center;
	}
}

/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px) {
	body {
		margin-top: 10px;
	}
	.info {
	float:right;
	padding:20px 0;
	}
	#header .logo {
		padding-top:10px;
		padding-bottom: 0;
	}
	
	.gridWrapper {
	clear:both;
	padding:0;
	overflow:hidden;
	}
	
	.info {
		padding:10px 0;
		padding-top: 0;
	}
	
	ul#topnav li {
		width:50%;
	}
	
	ul#topnav li:nth-child(3n) {
		border-right:1px solid #73c4e6;
		width:50%;
	}
	
	ul#topnav li:nth-child(2n),ul#topnav li:nth-child(6n) {
		border-right:0;
	}
	
	#mainBanner h2,#mainBanner h3 {
		font-size:80%;
	}
	
	.grid img {
		width: 100%;
		margin: 5px;
		text-align: center;
	}
	
	table.table th, table.table td {
		display: block;
		overflow-x: scroll;
	}
	
}