@charset "utf-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
}

html {
	font-size: 62.5%;
}

body {
	-webkit-text-size-adjust: 100%;
 	-moz-text-size-adjust: 100%;
 	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	letter-spacing: 1px;
    font-family: "メイリオ","Meiryo",Sans-Serif;
	font-kerning: normal;
	background: url(img/body_bg.jpg) no-repeat;
	background-position: 50% 0;
	background-attachment: fixed;
}

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

li {
	list-style: none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin: 0;
    padding: 0;
}

a:link,a:visited,a:hover,a:active {
	text-decoration: none;
}

a img {
	border: none;
	margin: 0;
	padding: 0;
}

a:hover img {
 opacity: 0.7;
 filter: alpha(opacity=70);
 -ms-filter: "alpha( opacity=70 )";
 -webkit-transition: opacity 0.5s ease-out;
 -moz-transition: opacity 0.5s ease-out;
 -ms-transition: opacity 0.5s ease-out;
 transition: opacity 0.5s ease-out;
}

mark {
    background-color: #fdfd13;
    color: #333333;
    font-weight: bold;
}

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

input, select {
    vertical-align: middle;
}





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



.pc_hide {
	display: none;
}

header {
	overflow: hidden;
	height: 4rem;
	z-index:998;
	clear:both;
	background: #fff;
	padding: 2rem 0;
}

#wrap {
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
    background: #fff;
}

/*-----------------

 grid 共通 CSS

******************/

.grid,
.grid_box {
	overflow: hidden;
}


/**-- width --**/

.w160 {
	width: 160px;
}

.w320 {
	width: 320px;
}

.w480 {
	width: 480px;
}

.w640 {
	width: 640px;
}

.w800 {
	width: 800px;
}

.w960 {
	width: 960px;
}

/**-- height --**/

.h160 {
	height: 160px;
}

.h320 {
	height: 320px;
}

.h480 {
	height: 480px;
}

.h640 {
	height: 640px;
}

.h800 {
	height: 800px;
}

.h960 {
	height: 960px;
}


/**-- float --**/

.f_left {
	float: left;
}

.f_right {
	float: right;
}


/**-- 背景色 --**/

.bg_blue {
	background: #3b5997;
}

.bg_blue a:hover {
	background: #234282;
}



.bg_green {
	background: #3b9762;
}

.bg_green a:hover {
	background: #257547;
}



.bg_gray {
	background: #212121;
}

.bg_gray a:hover {
	background: #0e0e0e;
}



/**-- margin --**/

.m0p0 {
	margin: 0;
	padding: 0;
} 

/*-----------------

 ヘッダー＆ナビゲーション

******************/

header {
	width: 100%;
	background: #FFFFFF;
}

#h_inner {
	width: 960px;
	padding: 0;
	margin: 0 auto;
	overflow: hidden;
}


#head_logo {
	float: left;
	width: 360px;
	height: 40px;
}

#head_logo h1 {
	margin: 0;
	padding: 0;
	font-family: 'Oxygen', sans-serif;
	font-size: 24px;
	font-weight: 400;
}

#head_logo h1 span {
	font-size: 18px;
}

#head_logo h1 a {
	width: 360px;
	height: 40px;
	display: block;
	color: #5c5c5c;
}

nav {
	height: 30px;
	float: right;
}

nav ul {
	overflow: visible;
}

nav ul li {
	list-style: none;
 	float: left;
	text-align: center;
}

nav ul li a {
	padding: 16px 20px;
	height: 2.6rem;
	line-height: 1rem;
	font-size: 14px;
	text-align:center;
	display: block;
	color: #5c5c5c;
	border-left: 1px solid #e7e7e7;
}

nav ul li:last-child a {
	border-right: solid 1px #e7e7e7;
}  


nav div.panel {
	display:block !important;
	float:left;
}

a#menu {
	display:none;
}


/*-----------------

 メイン画像

******************/

#main {
	width: 960px;
	height: 480px;
	margin: 0 auto;
}

#portfolio {
	width: 960px;
	margin: 0;
	padding: 0;
}


/*-----------------

 トップ小さなスライド

******************/

ul.topslide {
	height: 160px;
	width: 160px;
}


/*-----------------

 トップSNS等

******************/


.text_position {
	font-family: 'Oxygen', sans-serif;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	vertical-align: middle;
	line-height: 160px;
}

.text_position a {
	color: #FFFFFF;
	text-decoration: none;
	display: block;
	width: 100%;
	height: 100%;
}


.text_position2 {
	text-align: center;
	height: 160px;
}

.text_position2 a {
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 18%;
}


/*-----------------

 フッター

******************/


#footer {
	clear: both;
	padding: 25px 0;
	font-size: 12px;
	text-align: center;
}

#topback {
	display: none;
}

/*-----------------

 2p目以降のCSS

******************/

.c_box {
	width: 960px;
	margin-bottom: 20px;
}

.page_wrap {
	width: 960px;
	margin: 0;
}

.page_wrap h2 {
	margin-bottom: 0px;
	padding: 0 0 6px 10px;
	font-family: 'Oxygen', sans-serif;
	font-size: 18px;
	font-weight: 400;
	color: #5c5c5c;
}

.page_wrap h3 {
	font-family: 'Oxygen', sans-serif;
	color: #5c5c5c;
	font-weight: 700;
	font-size: 20px;
}

ul.gridimg {
	overflow: hidden;
	width: 960px;
}

ul.gridimg li {
	width: 25%;
	margin: 0 0 -4px 0;
	padding: 0;
	float: left;

}

ul.gridimg li img {
	width: 100%;
	height: auto;
}



/*-----------------

 Profile CSS

******************/


ul.profile {
	overflow: hidden;
	font-size: 14px;
	color: #5c5c5c;
}

ul.profile li {
	width: 480px;
	float: left;
}

ul.profile li img {
	width: 100%;
	height: auto;
}

ul.profile li.p10 {
	padding: 20px;
	width: 440px;
	float: left;
}

ul.profile li.p10 p {
	margin-bottom: 20px;
}


}