@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: 102%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}
@media only screen and (max-width:959px){
	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 {font-size:100%;}
}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body{
font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size:90%;
color:#000;
-webkit-text-size-adjust: none;
}


/* リンク設定
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#777;
}

a:hover, a:active{
-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s;
outline: none;
color:#999;
}


/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg{zoom: 1;}



/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner{
margin:0 auto;
width:960px;
}

#header{
overflow:hidden;
}

#content1,
#content2,
#content3,
#content4,
#content5,
#content6{
width:90%;
padding:4% 5%;
font-size: 100%;
}
@media only screen and (max-width:959px){
	#content1,
	#content2,
	#content3,
	#content4,
	#content6,
	#content5{
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		font-size: 100%;
	}
}

#footer{
clear:both;
position:relative;
background-image: url(images/parts/footer-pc.jpg);
background-size:cover;
}
@media only screen and (max-width:959px){
#footer{
background-image: url(images/parts/footer-sp.jpg);
	}
}


/* ヘッダー
*****************************************************/
#header .bg{background:#fff;}


/* サイト説明文
----------------------------------*/
#header h1,#header p{
padding:3px 0;
color: #000;
font-size:80%;
font-weight:normal;
text-align:center;
}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
clear:both;
padding:0 0 30px 0;
color: #515151;
font-size:160%;
font-weight:bold;
text-align:center;
margin-bottom:-29px;
}


/* タイポグラフィ
*****************************************************/
h2.title{
clear:both;
margin:25px 0 0;
padding:7px 10px;
font-size:110%;
color:#fff;
text-align:center;
border:1px solid #dadada;
border-bottom:0;
border-radius:30px 30px 0 0;
background:#522222 url(images/parts/border.png) repeat-x 0 100%;
}

h2.first{}

h3{
font-weight: bold;
margin: 1%;
}

img.aligncenter {
display: block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin: 0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float: left;}


/* ページトップボタン
*****************************************************/
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1;
}
 
#pageTop a {
  display: block;
  padding: 2% 1% 1% 1%;
  border-radius: 5px;
  width: 50px;
  height: 50px;
  background-color: #888;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
	font-size: 200%;
}
 
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}


/* スペシャルサンクス
*****************************************************/
#specialthx{
width:90%;
padding: 8% 5%;
font-size: 140%;
}
@media only screen and (max-width:959px){
#specialthx{
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		font-size: 130%;
	}
}

#specialthx h4{
	margin: 5% 0 0 0;
	font-size: 110%;
}

#specialthx p{}


/* 協賛
*****************************************************/
.sponsored table{
border-collapse: collapse;
border-spacing: 0;
width:100%;
table-layout:fixed;
font-size: 100%;
}

.sponsored table tr{}
@media only screen and (max-width:959px){
.sponsored table tr{
display:block;
}
}

.sponsored table th{
padding:1px 35px;
width:50%;
display:table-cell;
text-align:left;
}
@media only screen and (max-width:959px){
.sponsored table th{
display:block;
width:auto;
text-align:center;
font-size: 102%;
}
}

.sponsored table td{
padding:1px 0;
width:50%;
display:table-cell;
text-align:left;
}
@media only screen and (max-width:959px){
.sponsored table td{
display:block;
width:auto;
}
}


/* サンクスページ
*****************************************************/
.thanks{
margin:25px 0 0 0;
padding:10px;
border:1px solid #dadada;
background: #fff;
list-style:none;
border-radius:30px;
}

.thanks p{
padding:0 5px 15px 15px;
line-height:25px;
}
@media only screen and (max-width:959px){
.thanks p{
padding:0 5px 15px 5px;
}
}

.thanks h3{
margin:10px 0;
font-size:120%;
font-weight:normal;
color:#4485ae;
border-bottom:1px solid #515151;
}


/* プロフィール
*****************************************************/
.portf{
list-style:none;
}

.portf_para{
margin: 5% 0 0 0;
}

.portf_para p{
margin: 2% 0;
}

.portf table{
border-collapse: collapse;
border-spacing: 0;
width:100%;
table-layout:fixed;
font-size: 100%;
}

.portf table tr{}
@media only screen and (max-width:959px){
.portf table tr{
display:block;
}
}

.portf table th{
padding:1px 35px;
width:25%;
display:table-cell;
text-align:left;
}
@media only screen and (max-width:959px){
.portf table th{
display:block;
width:auto;
text-align:center;
font-size: 102%;
}
}

.portf table td{
padding:1px 0;
width:75%;
display:table-cell;
text-align:left;
}
@media only screen and (max-width:959px){
.portf table td{
display:block;
width:auto;
}
}

.portf table td img{
width:100%;
}


/* design works
*****************************************************/
.slider {
  margin: 0;
  background:#fff;
  border:none;
}
.slider_exp{
text-align:center;
margin-bottom: -40px
}


/* アニドネ
*****************************************************/
.anidone_logo1 img{
	display: block;
	margin: 0 auto;
}
@media only screen and (max-width:959px){
.anidone_logo1 img{
	width: 100%;
}
}

.anidone_logo2{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	max-width: 100%;
}
@media only screen and (max-width:959px){
	.anidone_logo2{
		display: block;
		text-align: center;
	}
	.anidone_logo2 img{
		max-width: 100%;
	}
}

.anidone_exp1{
	padding: 2% 5%;
}

.anidone_exp2{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	margin: 5% 0 0 0;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.anidone_exp2 p{
	width: 50%;
	text-align: center;
}

.anidone_exp2 img{
	max-width: 100%;
}


.anidone_exp3{
	border: 1px solid #ddd;
	border-radius: 20px;
}

@media only screen and (max-width:959px){
	.anidone_exp2{display: block;}
	.anidone_exp2 p{width: 100%;}
	.anidone_exp2 img{width: 100%;}
	.anidone_exp3{margin: 5% 0;}
}
	


/* フッター PC用
*****************************************************/
#footer ul{
font-size:12px;
width:100%;
display:-webkit-inline-flex;
display:-ms-inline-flexbox;
display:inline-flex;
}

#footer ul li{
-ms-flex-preferred-size:100%;
-webkit-flex-basis:100%;
flex-basis:100%;
-ms-flex-negative:1;
-webkit-flex-shrink:1;
flex-shrink:1;
text-align: center;
font-size: 130%;
}

#footer ul li	span{
overflow:hidden;
}

#footer ul li	a{
display:block;
margin: 35px 0;
color: #5d564a;
width: 100%;
height:100%;
}

#footer ul li a span img{
width:100%;
height:auto;
}

#footer ul li	a:hover{text-decoration:underline;}

#footer ul li li{
display:block;
padding:0;
margin:0 0 0 10px;
background-position:0 5px;
}

*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#copyright{
clear:both;
padding:10px;
text-align:center;
font-size:75%;
zoom:1;
color:#000;
}


/* フッター(959px以下)
*****************************************************/
@media only screen and (max-width: 959px){
#footer ul{
font-size:12px;
width:100%;
display:-webkit-inline-flex;
display:-ms-inline-flexbox;
display:inline-flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}

#footer ul li{
-ms-flex-preferred-size:100%;
-webkit-flex-basis:100%;
flex-basis:100%;
-ms-flex-negative:1;
-webkit-flex-shrink:1;
flex-shrink:1;
}

#footer ul li span{
overflow:hidden;
}

#footer ul li a{
display:block;
padding:0;
}

#footer ul li a span img{
width:50%;
height:auto;
}

#footer ul li	a:hover{text-decoration:underline;}

#footer ul li li{
display:block;
padding:0;
margin:0 0 0 10px;
background-position:0 5px;
}

*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#copyright{
clear:both;
padding:10px;
text-align:center;
font-size:75%;
zoom:1;
color:#000;
}
}


/* グローバルナビ
------------------------------------------------------------*/
.gnavi{
margin:0;
width:100%;
}

/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 960px){
nav div.panel{
display: block !important;
height: 50px;
margin: 2% 0;
width: 100%;
background-image: url(images/parts/nav1-pc.jpg);
background-size:cover;
}

a#menu{display:none;}		

nav#mainNav ul{
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
display: inline-flex;
width: 100%;
height:100%;
vertical-align: middle;
}

nav#mainNav ul li{
-ms-flex-preferred-size: 100%;
-webkit-flex-basis: 100%;
flex-basis: 100%;
-ms-flex-negative: 1;
-webkit-flex-shrink: 1;
flex-shrink: 1;
text-align: center;
display: block;
}

nav#mainNav ul li a{
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
width: 100%;
height: 100%;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
color: #5d564a;
text-shadow: 2px 2px 3px #999;
}
	
}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:959px){
nav#mainNav{
margin:10px auto;
}

nav#mainNav a.menu{
display:block;
height: 50px;
}

nav#mainNav span{
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
width: 100%;
height: 100%;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
color: #5d564a;
background-image: url(images/parts/nav1-sp.jpg);
font-size: 120%;
}

nav#mainNav a#menu span img,
nav#mainNav ul li a span.nav1 img{width: 100%;}

nav#mainNav a#menu:hover{cursor:pointer;}

nav#mainNav ul li{
display: block;
height: 50px;
}

nav#mainNav ul li a{
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
padding-bottom:5px;
width: 100%;
height: 100%;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
color: #5d564a;
border-bottom: 1px solid #888;
}

nav#mainNav ul li a span{
display:block;
}

}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, #header, .inner{width:100%;}

	#header h1, #header p{padding:5px 10px;}
	#header h2{padding:0;}
	#header h2 img{width:100%;margin-bottom:20px;}
	#header ul{padding:20px 10px 10px;}


	nav#mainNav ul, .thumbWrap{margin:0 auto;}

	nav div.panel{float:none;}
	
	#mainImg img{height:auto;}

	#banners{width:100%;margin:0 auto;text-align:center;}
	#banners p{display:inline;margin:0 auto;}
	#banners p img{width:100%;height:auto;}
	#banners{margin-bottom:20px;}

}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#header{text-align:center;}
	#header h1,#header p,#header h2,#header ul{float:none;}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none;}
	#footer{padding-left:15px;}
	#footer ul{text-align:left;}
	#footer ul ul{padding:0;}
}
