@charset "utf-8";
/* ------------------------------------ タグ設定 ------------------------------------ */
body {
	margin: 0;
	padding: 0;
	font-size: 90%;
	line-height: 1.5;
	color: #666;
	text-align: center;
	
}
a img {
	border: none;
}
/* ------------------------------------ clearfix ------------------------------------ */
.cf:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
	font-size:0;
	line-height:0;
}
.cf {
	display:inline-block;
}
/* \*/
.cf {
	display:block;
}
/* */

/* --------------------------- link --------------------------- */
a {
	color: #595757;
	text-decoration: none;
}
a:hover {
	color: #353434;
}
a.textlinkUl {
	text-decoration: underline;
}
a img {
	border:none;
	border:0
}
a:hover img.link {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}
/* --------------------------- フォント --------------------------- */

.bold {
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.cell > p, footer .copyright, .to-journal, #blog {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/* --------------------------- 画像 --------------------------- */
@media screen and (max-width: 768px) {
img {
	max-width: 100%;
	height: auto;
	width /***/:auto;　
}
}
.photo-type01 {
	border: 10px solid #FFF;
	box-shadow:2px 2px 5px 3px #b9b9d2;
	-moz-box-shadow:2px 2px 5px 3px #b9b9d2;
	-webkit-box-shadow:2px 2px 5px 3px #b9b9d2;
}

/* settings 
------------------------------------------------------------------ */
.important {
	font-weight: bold;
}
.mar_r0  {
	margin-right: 0px !important;
}
.mar_b0 {
	margin-bottom: 0px !important;
}
.mar_b5 {
	margin-bottom: 5px !important;
}
.mar_b10 {
	margin-bottom: 10px !important;
}
.mar_b15{
	margin-bottom: 15px !important;
}
.mar_b20{
	margin-bottom: 20px !important;
}
.mar_b25{
	margin-bottom: 25px !important;
}
.mar_b30{
	margin-bottom: 30px !important;
}
.mar_b35{
	margin-bottom: 35px !important;
}
.mar_b40{
	margin-bottom: 40px !important;
}
.mar_b45{
	margin-bottom: 45px !important;
}
.mar_b50{
	margin-bottom: 50px !important;
}
.mar_b55{
	margin-bottom: 55px !important;
}
.mar_b60{
	margin-bottom: 60px !important;
}
.mar_b65{
	margin-bottom: 65px !important;
}
.mar_b70{
	margin-bottom: 70px !important;
}
.mar_b75{
	margin-bottom: 75px !important;
}
.mar_b80{
	margin-bottom: 80px !important;
}
.mar_b85{
	margin-bottom: 85px !important;
}
.mar_b90{
	margin-bottom: 90px !important;
}
.mar_b95{
	margin-bottom: 95px !important;
}
.mar_b100{
	margin-bottom: 100px !important;
}
.mar_t15{
	margin-top: 15px !important;
}
.mar_l20 {
	margin-left: 20px !important;
}
br.sp {
	display: none;
}
.textL {
	text-align: left;
}
.bold {
	font: bold;
}
.red {
	color: #C1272D;
}

@media screen and (max-width: 414px) {
	br.sp {
		display: block;
	}
	.clear {
	clear: both;
	}
}
body {
	position: relative;
}
.pc_block {
	display:block;
}
.sp_block {
	display:none;
}
@media screen and (max-width: 768px){
  br.pc {
		display: none;
	}
}
@media screen and (max-width: 640px){
	.pc_block {
		display:none;
	}
	.sp_block {
		display: block;
	}
}

/* ボディ 
------------------------------------------------------------------ */


body {
	position: relative;
}
/* ヘッダー
------------------------------------------------------------------ */
header {
	position: fixed;
	width: 100%;
	top: 0;
	background-color: #FFF;
	z-index: 10000;
}
.header {
	width: 960px;
	margin: auto;
	height: 100px;
	background-color: #FFF;
	z-index: 10000;
}
@media screen and (max-width: 768px) {
.header {
	width: 100%;
	z-index: 3;
}
.header .header__heading {
	background: #FFF;
	position: absolute;
	width: 100%;
	z-index: 3;
}
}
#js-cover {
	z-index: 9000;
}
#contents {
	z-index: 1000;
}
#random {
	z-index: 100;
}
#random > div {
	z-index: 100;
}
/* ロゴ */
.logo img {
	display: none;
}
.header h1 {
	padding-top: 55px;
}
.header h1 span {
	padding-left: 7px;
}
@media screen and (max-width: 1300px) {
body > header nav {
	margin-left: 380px;
}
}
@media screen and (max-width: 1060px) {
body > header nav {
	margin-left: 360px;
}
}
@media screen and (max-width: 768px) {
	.logo img { 
		max-width: 184px;
		width: 38.5%;
		margin: 0 auto;
		display: block; 
		text-align:center;
	}
	.header h1 {
		padding-top: 34px;
	}
}


/* header logo 分割の場合仕様 */

/*@media screen and (max-width: 768px) {
	.logo img {
	    width: 72px;
    display: inline;
  
	}
}*/


/* グローバルナビの位置調整 */
.nav-content ul {
	float: left;
	text-align: left;
}
.nav-content ul li {
	display: inline;
	font-size: 100%;
}
.nav-content ul li a {
	color: #FFF;
	display: inline-block;
}
.nav-content > ul > li {
	margin-right: 25px;
}
.nav-content > ul > li:last-child {
	margin-right: 0px;
}
.header_nav_sns ul {
	text-align: right;
	margin-top: -8px;
}
.header_nav_sns li {
	padding-left: 15px;
	display: inline-block;
}
.header_nav_sns.on_sp {
	display: none;
}
@media screen and (max-width: 768px) {
.nav-content {
	position: absolute;
	width: 100%;
	top: -735px;
	z-index: 2;
	-webkit-transition: 1.5s top;
	transition: 1.5s top;
}
.nav-content ul li {
	float:none;
	display: block;
	font-size: 22px;
	font-size: 2.2rem;
}
.nav-content ul li a {
	text-align: center;
	display: block;
	padding: 5px 0px;
	background-color: #FFF;
	border-bottom: 1px solid #BBB;
	opacity: 0.85;
}
.nav-content ul li:first-child {
	border-top: 1px solid #BBB;
}
.nav-content > ul > li {
	margin-right: 0px;
}
.is-open .nav-content {
    top: 134px;
}
.header_nav_sns.on_sp {
	display: block;
	margin-bottom: 0px;
}
.header_nav_sns ul {
    text-align: center;
    padding-top: 27.8px;
}
.header_nav_sns.on_sp ul li {
	padding: 0 19px 0 0;
	display: inline-block;
}
.header_nav_sns.on_sp ul li:last-child {
  padding: 0px;
}
}
@media screen and (max-width: 400px) {
	.is-open .nav-content {
    top: 146px;
}
.header_nav_sns.on_sp {
    margin-bottom: 15px;
}
#js-accordion > div > nav > ul > li > a > img {
	width: 25px;
	}
	}
/* ナビゲーション スマホ用パーツＰＣ時非表示
----------------------------------------------------- */
#mainmenu .btn {
	display: none;
}
#mainmenu .check {
	display: none;
}
#mainmenu .cbtn {
	display: none;
}
@media screen and (max-width: 768px) {
.nav-content ul {
	width: 100%;
}
.header {
	width: 100%;
}
}

/* ナビゲーション スマホ用表示時
----------------------------------------------------- */
@media screen and (max-width: 768px) {
#js-cover {
	background: #000;
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0px;
	opacity: 0;
	z-index: 1;
}
.menu-button {
	width: 30px;
	height: 30px;
	display: block;
	position: absolute;
	right: 14px;
	top: 45px;
}
.menu-button i {
	display: block;
	width: 20px;
	height: 2px;
	border-radius: 3px;
	background: #ccc;
	-webkit-transition: background 0.5s;
	transition: background 0.5s;
	position: relative;
	left: 5px;
	top: 14px;
}
.menu-button i:before,  .menu-button i:after {
	content: "";
	display: block;
	width: 20px;
	height: 2px;
	border-radius: 3px;
	background: #ccc;
	position: absolute;
	-webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: all 0.3s !important;
	transition: all 0.3s !important;
}
.menu-button i:before {
	-webkit-transform: translateY(8px);
	-ms-transform: translateY(8px);
	transform: translateY(8px);
}
.menu-button i:after {
	-webkit-transform: translateY(-8px);
	-ms-transform: translateY(-8px);
	transform: translateY(-8px);
}
.is-open .menu-button i {
	background: #FFF;
}
.is-open .menu-button i:after {
	-webkit-transform: translateY(0px) rotate(-45deg);
	-ms-transform: translateY(0px) rotate(-45deg);
	transform: translateY(0px) rotate(-45deg);
}
.is-open .menu-button i:before {
	-webkit-transform: translateY(0px) rotate(45deg);
	-ms-transform: translateY(0px) rotate(45deg);
	transform: translateY(0px) rotate(45deg);
}
}
/* メイン
------------------------------------------------------------------ */

#contents {
	padding: 100px 0 0;
}
@media screen and (max-width: 768px) {
#contents {
    padding: 135px 0 0;
	margin-bottom: 0px !important;
}
}
@media screen and (max-width: 378px) {
#contents {
    padding: 148px 0 0;
}
    
}
/* footer */
footer {
	clear: both;
	padding: 20px 0px 100px;
	text-align: left;
	background: #FFF;
}
#about footer {
	background: #e7e7e0;
}
#blog footer {
	background: #E3E2DE;
}
#blog footer {
	background:#E7E7E0;
}
footer .footer {
	margin: 0 auto;
	width: 960px;
}
#blog footer .footer {
    margin: 0 262px 0;
    width: 580px;
}
@media screen and (max-width: 768px) {
footer .footer {
	margin: auto;
	width: 96%;
	padding: 0 2%;
}
}
footer .footer nav a {
	color: #FFF;
}
footer .footer nav ul {
	text-align: center;
	width: 240px;
	margin: auto;
}
footer .footer_logo {
	margin-top: 50px;
}
footer .copyright {
	text-align: center;
	color: #595757;
	;
}
@media screen and (max-width: 640px) {
	footer {
		padding: 20px 0px 60px;
	}
	footer .copyright {
		font-size: 12px;
		margin-top: 15px;
	}
	footer .footer nav ul,  footer .footer nav.footer_nav_sns ul,  footer .footer_logo,  footer .copyright {
		text-align: center;
	}
}
