@charset "utf-8";

/* - ALL -- */
html, body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	}
#top {
	background-color: transparent;
	}

/*   フォントファミリー */
@font-face {
	font-family: 'MyYuGothic';
	font-weight: normal;
	src: local('YuGothic-Medium');
		 local('Yu Gothic Medium');
		 local('YuGothic-Regular');
	}
@font-face {
	font-family: 'MyYuGothic';
	font-weight: bold;
	src: local('YuGothic-Bold');
		 local('Yu Gothic');
	}
html {
	font-family: '游ゴシック体', YuGothic, MyYuGothic, '游ゴシック Medium', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Helvetica, Arial, Verdana, sans-serif;
	font-size: 62.5%;
	background-color: #fff;
	}
@media all and (-ms-high-contrast: none) {	/* IEのline-height用 */
	html {
		font-family: 'メイリオ', Meiryo, '游ゴシック体', YuGothic, MyYuGothic, '游ゴシック Medium', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', Helvetica, Arial, Verdana, sans-serif;
	}
}
body {
	color: #333;
	font-size: 1.4rem;
	line-height: 1.7;
	}

#top {	/* フッタ固定 */
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-direction: column;
	flex-direction:         column;
	min-height: 100vh;
	}

/*   文字詰め */
.tsume {
	font-feature-settings: "palt";
	}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, .tsume {
		font-feature-settings: "pkna";
	}
}

/*   文字リンク色 */
a {
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
	outline:none;
	}
a:link {
	text-decoration: none;
	color: #0099cc;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	}
a:visited {
	text-decoration: none;
	color: #0099cc;
	}
a:active { 
	text-decoration: none;
	color: #0099cc;
	}
a:hover {
	text-decoration: underline;
	color: #0099cc;
	}

/*   p justify */
p {
	margin: 0;
	padding: 0 0 1.67em 0;
	text-align: justify;
	text-justify: inter-ideograph;
	}
i {
	font-style: italic;
	}
strong {
	font-weight: bold;
	}
span.ruby {
	font-size: 75%;
	}
img {
	line-height: 0;
	vertical-align: bottom;
	}
/*   見出しリセット */
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	font-weight: normal;
	line-height: 1;
	}
/*   リストリセット */
ul, ol {
	margin: 0;
	padding: 0;
	}

/*   clearfix */
.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
	}

/* - ヘッダ -- */
#header {
	position: relative;
	width: 100%;
	background-color: transparent;
	height: 46px;
	border-bottom: 1px solid #9c9e9c;
	}
.sns-navi {
	margin: 80px 0 0 0;
	}
.sns-menu {
	margin: 8px 0 8px 0;
	}

/*   ロゴ */
.logo {
	width: 70px;
	height: 70px;
	background-color: #9c9e9c;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1000;
	}
.logo img {
	width: 50px;
	max-width: 50px;
	height: auto;
	padding: 13px 10px 10px 10px;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

/* - ヘッダメニュー */
/*   スマホメニュー */
.hamburgler-icon-wrapper {
	position: absolute;
	top: 10px;
	right: 14px;
	height: 23px;
	width: 30px;
	cursor: pointer;
	line-height: 1;
	z-index: 910;
	}
.hamburgler-icon-wrapper .hamburgler-icon-moji {
	width: 30px;
	position: absolute;
	top: 18px;
	font-size: 1rem;
	color: #9c9e9c;
	text-align: center;
	}
.hamburgler-icon,
.hamburgler-icon:before,
.hamburgler-icon:after {
	content: '';
	position: absolute;
	border-radius: 1em;
	height: 2px;
	width: 30px;
	background-color: rgba(156, 158, 156, 1);
	transition: all 0.2s ease;
	}
.hamburgler-icon {
	top: 6px;
	}
.hamburgler-icon:before {
	top: -6px;
	}
.hamburgler-icon:after {
	top: 6px;
	}
.hamburgler-active .hamburgler-icon {
	background: transparent;
	transform: rotate(-135deg);
	top: 14px;
	}
.hamburgler-active .hamburgler-icon:before,
.hamburgler-active .hamburgler-icon:after {
	top: 0;
	}
.hamburgler-active .hamburgler-icon:before {
	transform: rotate(90deg);
	}
.hamburgler-active .hamburgler-icon,
.hamburgler-active .hamburgler-icon:before,
.hamburgler-active .hamburgler-icon:after {
	background-color: rgba(156, 158, 156, 1);
	}
.hamburgler-active span.moji {
	display: none;
	}
.hamburgler-menu {
	transition: all 0.4s ease;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100vh;
	background-color: rgba(255, 255, 255, 1);
	text-align: center;
	overflow: auto;
	z-index: 900;
	}
.hamburgler-active .hamburgler-menu {
	opacity: 1;
	pointer-events: initial;
	}
.header-navi {
	display: block;
	transition: all 0.4s ease;
	padding: 0;
	}
.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	}

/*   検索窓 */
#gsc {
	background-image: url("../img/header-menu-sh.png");
	background-size: 40px auto;
	background-position: 1px 0px;
	background-repeat: no-repeat;
	background-color: #fff;
	width: 180px;
	margin: 0 auto;
	}
#gsc input {
	outline: none !important;
	border: none !important;
	}
#gsc input[type=text] {
	-webkit-appearance: textfield;
	-webkit-box-sizing: content-box;
	font-family: inherit;
	font-size: 100%;
	}
#gsc input::-webkit-search-decoration,
#gsc input::-webkit-search-cancel-button {
	display: none;
	}
#gsc input[type=submit] {
	display: none;
	}
#gsc input[type=text] {
	padding: 0px 2px 0px 38px !important;
	background-position: 32px 50% !important;
	width: 140px;
	height: 40px;
	border: none;
	background-color: transparent !important;
	}
#gsc input:-moz-placeholder {
	color: #000;
	}
#gsc input::-webkit-input-placeholder {
	color: #000;
	}

/*   SNSボタン */
ul.sns-menu-list {
	display: -webkit-flex;
	display:         flex;
	-webkit-align-items: center;
	align-items:         center;
	-webkit-justify-content: center;
	justify-content:         center;
	}
ul.sns-menu-list li {
	list-style-type: none;
	text-align: center;
	}
ul.sns-menu-list li a {
	display: block;
	width: 40px;
	height: 40px;
	border: 1px solid #fff;
	margin: 0 10px 0 10px;
	font-size: 0px;
	cursor: pointer;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	text-align: center;
	position: relative;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	overflow: hidden;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
	}
ul.sns-menu-list li.header-menulist-is a {
	background-image: url("../img/header-menu-is.png");
	background-size: cover;
	background-repeat: no-repeat;
	}
ul.sns-menu-list li.header-menulist-is a:hover {
	background-color: #0099cc;
	background-position: bottom;
	}
ul.sns-menu-list li.header-menulist-yt a {
	background-image: url("../img/header-menu-yt.png");
	background-size: cover;
	background-repeat: no-repeat;
	}
ul.sns-menu-list li.header-menulist-yt a:hover {
	background-color: #0099cc;
	background-position: bottom;
	}
ul.sns-menu-list li.header-menulist-fb a {
	background-image: url("../img/header-menu-fb.png");
	background-size: cover;
	background-repeat: no-repeat;
	}
ul.sns-menu-list li.header-menulist-fb a:hover {
	background-color: #0099cc;
	background-position: bottom;
	}
ul.sns-menu-list li.header-menulist-tw a {
	background-image: url("../img/header-menu-tw.png");
	background-size: cover;
	background-repeat: no-repeat;
	}
ul.sns-menu-list li.header-menulist-tw a:hover {
	background-color: #0099cc;
	background-position: bottom;
	}

/*   言語選択 */
#lang-menu {
	margin: 0 0 0 0;
	line-height: 41px;
	cursor: pointer;
	border-top: 1px solid #e7e7e7;
	border-bottom: 1px solid #e7e7e7;
	}
#lang-menu span {
	vertical-align: 0;
	}
#lang-menu a {
	border: none;
	color: #9c9e9c;
	}
#lang-menu a:hover {
	text-decoration: none;
	color: #fff;
	}
.lang-menu-wrapper {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	overflow: hidden;
	text-align: center;
	color: #666;
	font-size: 1.4rem;
	}
.lang-menu-wrapper:hover {
	color: #fff;
	background-color: #0099cc;
	}
.lang-menu-wrapper span:before {
	content: "";
	display:inline-block;
	background-image: url("../img/arrow.png");
	background-size: cover;
	background-repeat: no-repeat;
	width: 14px;
	height: 9px;
	margin: 0 6px 0 0;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
	}
.lang-menu-wrapper:hover span:before {
	background-position: bottom;
	}
#lang-menu ul.lang-menu-list li {
	overflow: hidden;
	height: 0;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	list-style-type: none;
	text-align: center;
	line-height: 1;
	}
#lang-menu ul.lang-menu-list li.now {
	color: #999;
	}
#lang-menu:hover ul.lang-menu-list li {
	overflow: visible;
	height: 41px;
	background-color: #fff;
	line-height: 41px;
	}
#lang-menu ul.lang-menu-list li a {
	color: #0099cc;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	background-color: #fff;
	display: block;
	}
#lang-menu ul.lang-menu-list li a:hover {
	color: #fff;
	background-color: #0099cc;
	}

/*   グローバルメニュー */
ul.main-menu-list {
	padding: 0 0 0 0;
	margin: 23px 0 100px 0;
	list-style-type: none;
	}
ul.main-menu-list li {
	padding: 0.65em 1em 0.65em 1em;
	}
ul.main-menu-list li a {
	color: #666;
	font-weight: bold;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
	background-color: #fff;
	}
ul.main-menu-list li a:hover {
	color: #0099cc;
	text-decoration: none;
	}

/* - フッタ -- */
#footer {
	width: 100%;
	color: #9c9e9c;
	text-align: center;
	padding: 23px 0 23px 0;
	background-color: #fff;
	}

/*   ページトップへ */
.pagetop {
	display: none;
	position: fixed;
	bottom: -10px;
	right: 14px;
	z-index: 400;
	}
.pagetop a {
	display: block;
	width: 44px;
	height: 44px;
	border: 1px solid #9c9e9c;
	background-color: transparent;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	text-align: center;
	color: #000;
	font-size: 0;
	text-decoration: none;
	line-height: 44px;
	background-image: url("../img/pagetop.png");
	background-size: cover;
	background-repeat: no-repeat;
	opacity: .6;
	filter: alpha(opacity=60);
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	overflow: hidden;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
	}
.pagetop a:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	background-color: #0099cc;
	border: 1px solid #0099cc;
	background-position: bottom;
	}

/*   バナーエリア */
.footer-banner {
	width: 100%;
	padding: 23px 0 23px 0;
	border-bottom: 1px solid #9c9e9c;
	}
ul.footer-banner-list {
	display: -webkit-flex;
	display:         flex;
	-webkit-justify-content: center;
	justify-content:         center;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	}
ul.footer-banner-list li {
	list-style-type: none;
	padding: 0 15px 0 15px;
	line-height: 0;
	}
ul.footer-banner-list li a {
	-webkit-transition: opacity .3s ease;
	-moz-transition: opacity .3s ease;
	transition: opacity .3s ease;
	}
ul.footer-banner-list li a:hover {
	opacity: .6;
	filter: alpha(opacity=60);
	}
ul.footer-banner-list li img {
	vertical-align: middle;
	}


/*   フッタメニュー */
ul.footer-menu-list {
	display: -webkit-flex;
	display:         flex;
	-webkit-justify-content: center;
	justify-content:         center;
	-webkit-align-items: center;
	align-items:         center;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	margin: 10px 0 23px 0;
	}
ul.footer-menu-list li {
	list-style-type: none;
	text-align: center;
	padding: 0 1em 0 1em;
	font-size: 1.2rem;
	}
ul.footer-menu-list li a {
	color: #666;
	line-height: 2;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
	}
ul.footer-menu-list li a:hover {
	color: #0099cc;
	text-decoration: none;
	}

/*   コピーライト */
.footer-caption {
	line-height: 1;
	}
.footer-caption small {
	font-size: 1.0rem;
	}
.footer-caption span {
	font-family: Arial;
	}
.footer-caption .footer-logo {
	width: 64px;
	max-width: 64px;
	height: auto;
	margin: 0 auto;
	}
.footer-caption img {
	margin: 0 0 15px 0;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}


/* - メイン -- */
main {
	display: block;
	}
#main {
	position: relative;
	width: 100%;
	background-color: transparent;
	flex: 1 0 auto;	/* フッタ固定 */
	}

/*   ページインナー */
.main-contents-top {
	position: relative;
	width: 88%;
	background-color: #fff;
	margin: 0 0 0 0;
	padding: 8% 6% 12% 6%;
	}
.main-contents {
	width: 88%;
	background-color: #fff;
	margin: 0 0 0 0;
	padding: 6% 6% 6% 6%;
	}

/*   H2 */
.page-title {
	margin: 0 0 2em 0;
	}
h2 {
	font-size: 2.1rem;
	color: #333;
	text-align: center;
	padding: 0 0 0.55em 0;
	margin: 0 0 0 0;
	border-bottom: 1px solid #333;
	}

/*   リンクボタン */
p.btn-top {
	text-align: right;
	padding: 0 0 0 0;
	}
p.btn-top a {
	width: 11em;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.btn-top a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}
p.btn-back {
	text-align: center;
	padding: 0 0 0 0;
	}
p.btn-back a {
	width: 11em;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.btn-back a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}
p.btn-sub {
	text-align: right;
	padding: 0 0 0 0;
	}
p.btn-sub a {
	width: 17em;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.btn-sub a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}

p.dd-btn-archive {
	text-align: center;
	padding: 0 0 0 0;
	}
p.dd-btn-archive a {
	width: 18em;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.dd-btn-archive a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}

p.dd-btn-sub {
	text-align: center;
	padding: 0 0 0 0;
	}
p.dd-btn-sub a {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	padding: 0 1em 0 1em;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.dd-btn-sub a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}

p.btn-siteinfo {
	text-align: center;
	padding: 0 0 0 0;
	}
p.btn-siteinfo a {
	width: 16em;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	padding: 0 1em 0 1em;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.btn-siteinfo a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}

p.btn-sub-wide {
	text-align: right;
	padding: 0 0 0 0;
	}
p.btn-sub-wide a {
	width: 21em;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.btn-sub-wide a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}

/* - トップページ -- */
/*   イメージスライダー */
#viewer_all {
	width: 100%;
	text-align: center;
	z-index: -1;
	position: relative;
	margin: -1px 0 0 0;
	}
.viewer {
	width: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	}
.viewer ul {
	width: 100%;
	overflow: hidden;
	position: relative;
	}
.viewer ul li {
	top: 0;
	left: 0;
	width: 100%;
	position: absolute;
	list-style-type: none;
	}
.viewer ul li img {
	width: 100%;
	height: auto;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}

/*   ニュース欄 */
dl.news-top {
	margin: 0 0 2em 0;
	}
dl.news-top dt {
	padding: 0 0 0 0;
	margin: 0 0 0.35em 0;
	font-weight: bold;
	}
dl.news-top dd {
	padding: 0 0 0 0;
	margin: 0 0 1.5em 0;
	text-align: justify;
	text-justify: inter-ideograph;
	}
dl.news-top dd a {
	color: #333;
	}
dl.news-top dd a:hover {
	color: #0099cc;
	}

/*   YouTube欄 */
.youtube-all img {
	width: 100%;
	height: auto;
	display: inline-block;
	}
.youtube-all a {
	outline: none;
	}
.youtube-all figure {
	width: 100%;
	position: relative;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	}
.youtube-all figcaption {
	position: absolute;
	bottom: 0;
	width: 100%;
	line-height: 3;
	background-color: rgba(0,0,0,0.5);
	text-align: center;
	color: #fff;
	font-weight: bold;
	}
.youtube-all figure:after {
	content: "";
	position: absolute;
	right: 50%;
	top: 50%;
	width: 72px;
	height: 50px;
	margin-top: -25px;
	margin-right: -36px;
	background-image: url("../img/youtube-play.png");
	background-size: cover;
	background-repeat: no-repeat;
	}
.youtube-all figure:hover:after {
	background-position: bottom;
	}
.youtube-all figure img {
	filter: brightness(0.7);
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
	}
.youtube-all figure:hover img {
	filter: brightness(1);
	}

/*   PDF欄 */
.pdf-all {
	margin-top: 4rem;
}
.pdf-all img {
	width: 100%;
	height: auto;
	display: inline-block;
}
.pdf-all a {
	outline: none;
	text-decoration: none;
}
.pdf-all figure {
	width: 100%;
	margin: 0;
	padding: 0;
}
.pdf-all figcaption {
	width: 100%;
	margin: 0 auto 1.5em;
	padding: 1rem 0;
	background-color: rgba(0,0,0,0.7);
	text-align: center;
	color: #fff;
	font-weight: bold;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
.pdf-all figcaption span {
	font-size: 0.75em;
}
.pdf-all figure img {
	filter: brightness(0.7);
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
}
.pdf-all figure:hover img {
	filter: brightness(1);
	}
.pdf-all figure:hover figcaption {
	background-color: rgba(0,0,0,0.55);
	}

.pdf-all .btn-top {
	text-align: center;
}
.pdf-all .btn-top a {
	width: 75%;
}
.pdf-all .pdf-1,.pdf-all .pdf-2,.pdf-all .pdf-3 {
	margin-bottom: 3.5rem;
}


/* - サブページ -- */
/*   サブページインナー */
.sub-contents-top {
	position: relative;
	width: 88%;
	background-color: #fff;
	margin: 0 0 0 0;
	padding: 46px 6% 23px 6%;
	}

/*   サブページリンクリスト */
ul.subtitle-list {
	text-align: center;
	padding: 0.5em 0 0 0;
	}
ul.subtitle-list li {
	display: inline;
	}
ul.subtitle-list li a {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 24px;
	margin: 0.5em 0 0 0;
	padding: 0 1em 0 1em;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	border: 1px solid #fff;
	background-color: transparent;
	transition: all .3s;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	}
ul.subtitle-list li a:hover {
	color: #fff;
	border: 1px solid #0099cc;
	background-color: #0099cc;
	}
ul.subtitle-list li.current a {
	color: #333;
	border: 1px solid #333;
	}
ul.subtitle-list li.current a:hover {
	color: #fff;
	border: 1px solid #0099cc;
	background-color: #0099cc;
	}

/* - ニュース -- */
.news-item-all {
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	margin: 0 0 2em 0;
	}
.news-item-img {
	width: 32%;
	text-align: center;
	position: relative;
	}
.news-item-img:after {
	padding-top: 100%;
	display: block;
	content: "";
	}
.news-item-img > .news-item-img-inner {
	position: absolute;
	top: 0px;
	left: 0px;
	bottom: 0px;
	right: 0px;
	}
.news-item-img .news-item-img-inner img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	}
.news-item-title {
	width: 63%;
	margin: 0 0 0 5%;
	}
.news-item-title h3 {
	font-size: 1.4rem;
	line-height: 1.7;
	font-weight: bold;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}
.news-list-all a {
	color: #333;
	}
.news-list-all a:hover {
	color: #0099cc;
	text-decoration: none;
	}
.news-list-all a img {
	-webkit-transition: opacity .3s ease;
	-moz-transition: opacity .3s ease;
	transition: opacity .3s ease;
	opacity: 1;
	filter: alpha(opacity=100);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	}
.news-list-all a:hover img {
	opacity: .6;
	filter: alpha(opacity=60);
	}
.news-item-title p {
	font-size: 1.2rem;
	line-height: 1;
	color: #9c9e9c;
	padding: 0 0 0 0;
	margin: 0 0 1em 0;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
	}
.news-list-all a:hover .news-item-title p {
	color: #0099cc;
	text-decoration: none;
	}

/*   インフィニットスクロール */
.navigation {
	height: 30px;
	}
p.btn-more {
	text-align: right;
	padding: 0 0 0 0;
	}
p.btn-more a {
	width: 100%;
	display: inline-block;
	font-size: 1.2rem;
	line-height: 2.25;
	border: 1px solid #333;
	color: #333;
	text-align: center;
	text-decoration: none;
	outline: none;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
p.btn-more a:hover {
	color: #fff;
	background-color: #0099cc;
	border: 1px solid #0099cc;
	}
#infscr-loading {
	margin-left: -100px;
	width: 200px;
	position: absolute;
	left: 50%;
	bottom: 0;
	text-align: center;
	}

/* - ニュース詳細 -- */
.news-contents p.news-date {
	font-size: 1.4rem;
	line-height: 2;
	font-weight: normal;
	color: #9c9e9c;
	padding: 0 0 0 0;
	}
.news-contents h3 {
	font-size: 150%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0 0 40px 0;
	}
.news-contents h4 {
	font-size: 115%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0em 0em 1em 0em;
	}
.news-contents h5 {
	font-size: 100%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0em 0em 0em 0em;
	}
.news-contents blockquote {
	overflow: auto;
	line-height: 1.8;
	margin: 0px 0px 40px 0px;
	padding: 1.5em 2em 1.5em 2em;
	border: 1px solid #000;
	}
.news-contents hr {
	height: 1px;
	border: none;
	border-top: 1px #000 solid;
	margin: 0px 0px 2em 0px;
	}
.news-contents ul {
	margin: 0 0 2em 2em;
	}
.news-contents ol {
	margin: 0 0 2em 2em;
	}
.news-contents img {
	max-width: 100%;
	height: auto;
	display: inline-block;
	line-height: 0;
	}
.news-contents table {
	width: 100%;
	margin: 0px 0px 40px 0px;
	border-collapse: collapse;
	}
.news-contents table th {
	line-height: 1.25;
	font-weight: bold;
	padding: 0.5em 0.5em 0.5em 0.5em;
	text-align: center;
	vertical-align: middle;
	background-color: #f6f6f6;
	border: 1px solid #ccc;
	}
.news-contents table td {
	line-height: 1.5;
	padding: 0.5em 0.5em 0.5em 0.5em;
	background-color: #fff;
	border: 1px solid #ccc;
	}

.news-contents ul.news-linklist {
	font-size: 100%;
	line-height: 1.5;
	border-top: 1px dotted #ccc;
	padding: 0px 0px 0px 0px;
	margin: 2em 0 2em 0;
	}
.news-contents ul.news-linklist li {
	list-style-type: none;
	padding: 0.55em 0em 0.5em 2em;
	margin: 0em 0em 0em 0em;
	border-bottom: 1px dotted #ccc;
	background-image:url("../img/listmarker.gif");
	background-repeat: no-repeat;
	background-position: 0.9em 1.1em;
	}
.news-contents ul.news-linklist li a {
	color: #333;
	}
.news-contents ul.news-linklist li a:hover {
	color: #0099cc;
	text-decoration: none;
	}

/* - とは アコーディオン -- */
.accordian {
	width: 100%;
	height: 220px;
	overflow: hidden;
	margin: 0 auto;
	margin-bottom: 23px;
	}
.accordian img {
	width: 330px;
	height: 220px;
	}
.accordian ul {
	width: 100%;
	}
.accordian li {
	position: relative;
	display: block;
	width: 20%;
	float: left;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	}
.accordian ul:hover li {
	width: 5%;
	cursor: pointer;
	}
.accordian ul li:hover {
	width: 80%;
	}
.accordian li img {
	display: block;
	}
.image_title {
	background: rgba(0, 0, 0, 0.5);
	position: absolute;
	left: 0;
	bottom: 0;
	width: 1200px;
	height: 60px;
	cursor: pointer;
	text-align: left;
	}
.image_title a {
	display: block;
	color: #fff;
	text-decoration: none;
	padding: 6px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.2;
	}
.image_title a span {
	font-size: 10px;
	}
.accordian ul li:hover a br {
	display: none;
	}
.accordian li a {
	-webkit-pointer-events: none;
	pointer-events: none;
	-webkit-touch-callout: none;
	touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
	}

/* - とは DL Table -- */
dl.dl-table {
	margin-bottom: 46px;
	border-bottom: 1px dotted #ccc;
	}
dl.dl-table dt {
	margin: 0 0 0 0;
	padding: 1.5em 0 0.5em 0;
	font-weight: bold;
	border-top: 1px dotted #ccc;
	}
dl.dl-table dd {
	padding: 0 0 1.5em 0;
	margin: 0 0 0 0;
	}
dl.dl-table dd ul {
	padding: 0 0 0 1.5em;
	}
dl.dl-table dd ul li {
	padding: 0.5em 0 0.5em 0;
	}

/* - アーカイブ -- */
h3.under-line {
	font-size: 1.6rem;
	font-weight: bold;
	padding: 0.5em 0 0.5em 0;
	border-bottom: 1px solid #333;
	}
/*   アーカイブ DL Table -- */
dl.dl-table-noborder {
	margin-bottom: 36px;
	}
dl.dl-table-noborder dt {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	text-align: center;
	}
dl.dl-table-noborder dd {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	}

dl.dl-table-noborder-inner {
	margin: 0 0 0 0;
	}
dl.dl-table-noborder-inner dt {
	margin: 0 0 0 0;
	padding: 0.25em 0 0 0;
	font-weight: bold;
	text-align: left;
	}
dl.dl-table-noborder-inner dd {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
dl.dl-table-noborder-inner dd span {
	font-size: 1.2rem;
	}
dl.dl-table-noborder dt img {
	width: 50%;
	height: auto;
	pointer-events: none;
	touch-callout: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-touch-callout: none;
	-moz-user-select: none;
	}
ul.btn-ul {
	list-style-type: none;
	}
ul.btn-ul li {
	padding: 0.5em 0 0.5em 0;
	}
dl.dl-bottom {
	margin-bottom: 0;
	}

/* - 取材申込み -- */
h3.under-line-top {
	font-size: 1.6rem;
	font-weight: bold;
	padding: 0 0 0.5em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #333;
	}
h3.under-line-second {
	font-size: 1.6rem;
	font-weight: bold;
	padding: 0.5em 0 0.5em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #333;
	}
ul.btn-ul-center {
	list-style-type: none;
	}
ul.btn-ul-center li {
	padding: 0.5em 0 0.5em 0;
	}

dl.dl-table dd ul.caution {
	padding: 0 0 0 1.5em;
	}
dl.dl-table dd ul.caution li {
	padding: 0.25em 0 0.25em 0;
	}
dl.dl-bottom {
	margin-bottom: 0;
	}

/* - 画像画像貸し出し -- */
ol.ol-number {
	counter-reset:number;
	list-style-type: none;
	padding: 0 0 2em 0;
	}
ol.ol-number li {
	position: relative;
	line-height: 1.5em;
	padding: 2em 0.5em 2em 80px;
	border-bottom: 1px solid #333;
	}
ol.ol-number li:before {
	position: absolute;
	counter-increment: number;
	content: counter(number);
	display:inline-block;
	background: #fff;
	color: #333;
	font-size: 24px;
	border: 1px solid #333;
	border-radius: 50%;
	left: 20px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	}

ol.ol-number li div.fukidashi:before {
 	content: "";
	border-top: 14px solid #fff;
	border-right: 10px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 10px solid transparent;
	position: absolute;
	left: 50%;
	bottom: -27px;
	z-index: 21;
	margin-left: -10px;
	}
ol.ol-number li div.fukidashi:after {
	content: "";
	border-top: 14px solid #333;
	border-right: 10px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 10px solid transparent;
	position: absolute;
	left: 50%;
	bottom: -29px;
	z-index: 20;
	margin-left: -10px;
	}
dl.dl-bottom2 {
	margin-bottom: 12px;
	}

/* - プレスリリース -- */
dl.press {
	margin: 0 0 0 0;
	}
dl.press dt {
	margin: 0 0 0 0;
	padding: 0.25em 0 0 0;
	font-weight: bold;
	text-align: left;
	}
dl.press dd {
	padding: 0.25em 0 1em 0;
	margin: 0 0 0 0;
	}

dl.press dd ul {
	line-height: 1.5;
	border-top: 1px dotted #ccc;
	padding: 0 0 0 0;
	margin: 0.5em 0 0.5em 0;
	}
dl.press dd ul li {
	list-style-type: none;
	padding: 0.55em 0em 0.5em 2em;
	margin: 0em 0em 0em 0em;
	border-bottom: 1px dotted #ccc;
	background-image:url("../img/listmarker.gif");
	background-repeat: no-repeat;
	background-position: 0.9em 1.1em;
	}

/* - メールニュース -- */
fieldset {
	padding: 0 3.5em 1.5em 2.5em;
	margin: 0 0 2em 0;
	border: 1px solid #ccc;
	background: #fbfbfb;
	}
legend {
	padding: 0 0.5em 0 0.5em;
	font-weight: bold;
	}
.label_all {
	padding: 1em 0 0.5em 0;
	}
.label_all .label_left {
	text-align: left;
	float: none;
	}
.label_all .label_left label {
	height: 34px;
	width: 222px;
	display: table-cell;
	vertical-align: middle;
	text-align: left;
	}
.label_all .label_right input {
	border: 1px solid #ccc;
	padding: 1px 1px;
	line-height: 1.5;
	height: 24px;
	padding: 0.25em 0.25em 0.25em 0.5em;
	margin-bottom: 0.5em;
	}
.label_all .label_right input#email,
.label_all .label_right input#col1 {
	width: 100%;
	}
.label_all .label_right input[type="radio"] {
	margin-top: -2px;
	margin-right: 0.5em;
	border: 0px;
	}
.label_all .label_right input#reg2 {
	margin-left: 2em;
	}
.send {
	text-align: center;
	}
input#sendbutton {
	-webkit-appearance: none;
	font-weight: bold;
	padding: 1em 4em 1em 4em;
	background-color: #999;
	color: #fff;
	border-style: none;
	cursor: pointer;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	}
input#sendbutton:hover {
	background-color: #0099cc;
	color: #fff;
	}
.label_all .label_right .error {
	color: #ff3333;
	}

/* - ご利用にあたって -- */
.indent-div {
	padding: 0 0 0 0;
	}
h4.h4-siteinfo {
	font-weight: bold;
	line-height: 2;
	}
ol.siteinfo-ol {
	padding: 0 0 1.67em 1.5em;
	margin: 0 0 0 0;
	}
ol.siteinfo-ol li {
	padding: 0 0 0.5em 0;
	margin: 0 0 0 0;
	}
ol.inner-ol {
	padding: 1em 0 0.25em 2.25em;
	margin: 0 0 0 0;
	}
ol.inner-ol li {
	padding: 0 0 0.25em 0;
	margin: 0 0 0 0;
	list-style-type: none;
	position: relative;
	}
ol.inner-ol li span {
	position: absolute;
	left: -2.25em;
	}
ol.inner-ol.browser {
	padding: 0 0 1.67em 3.5em;
	margin: -1em 0 0 0;
	}
ul.inner-ul {
	padding: 1em 0 0.25em 1.5em;
	margin: 0 0 0 0;
	}
ul.inner-ul li {
	padding: 0 0 0.25em 0;
	margin: 0 0 0 0;
	list-style-type: disc;
	}
ul.btn-ul-siteinfo {
	list-style-type: none;
	padding: 0 0 1.67em 0;
	margin: -1em 0 0 0;
	}
ul.btn-ul-siteinfo li {
	padding: 0.5em 0 0.5em 0;
	}

/* - リンク -- */
.link-wrap-all {
	padding: 0px 0px 46px 0px;
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	-webkit-justify-content: center;
	justify-content:         center;
	}
.link-wrap-all .link-wrap {
	width: 280px;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	text-align: center;
	}
.link-wrap-all a .link-wrap {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	}
.link-wrap-all a {
	color: #666;
	font-size: 1.4rem;
	text-decoration: none;
	padding: 0 0 0 0;
	margin: 18px 0 18px 0;
	}
.link-wrap-all a:hover {
	color: #0099cc;
	text-decoration: none !important;
	}
.link-wrap-all a .link-wrap img {
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
	margin: 0 0 6px 0;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	}
.link-wrap-all a:hover .link-wrap img {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	}

/* - コンタクト -- */
dl.dl-table-contact {
	margin-bottom: 46px;
	border-bottom: 1px dotted #ccc;
	}
dl.dl-table-contact dt {
	margin: 0 0 0 0;
	padding: 1.5em 0 0.5em 0;
	font-weight: bold;
	border-top: 1px dotted #ccc;
	}
dl.dl-table-contact dd {
	padding: 0 0 1.5em 0;
	margin: 0 0 0 0;
	}

dl.dl-table-contact dt:first-child {
	padding: 0em 0 0.5em 0;
	border-top: 1px dotted #fff;
	}
#at_map {
	width: 100%;
	height: 320px;
	margin: 0 0 12px 0;
	}
h4.h4-contact {
	font-weight: bold;
	line-height: 2;
	padding: 1em 0 0 0;
	}

/* - サイトマップ -- */
dl.dl-sitemap {
	margin-bottom: 46px;
	}
dl.dl-sitemap dt {
	margin: 0 0 0 0;
	padding: 2em 0 0.5em 0;
	border-bottom: 1px dotted #ccc;
	}
dl.dl-sitemap dd {
	padding: 0.5em 0 0 0;
	margin: 0 0 0 0;
	}
dl.dl-sitemap dd ul {
	padding: 0 0 0 0;
	margin: 0 0 0 2.5em;
	}
dl.dl-sitemap a {
	color: #333;
	}
dl.dl-sitemap a:hover {
	color: #0099cc;
	}
dl.dl-sitemap dt.first-dt {
	padding: 0em 0 0.5em 0;
	}

/* - リンクバナー -- */
ul.ul-linkbanner {
	padding: 0 0 1.67em 2em;
	margin: 0 0 0 0;
	}
ul.ul-linkbanner li {
	padding: 0.25em 0 0.25em 0;
	margin: 0 0 0 0;
	list-style-type: disc;
	}

.banner_all {
	padding: 1em 0 1em 0;
	}
.banner_l {
	padding: 0 0 0 0;
	text-align: center;
	}
.banner_r {
	padding: 0 0 0 0;
	text-align: center;
	}
.banner_all textarea {
	width: 90%;
	height: 9em;
	margin: 1em 0 2em 0;
	}

/* - ご寄付 -- */
#join {
	padding: 0 0 0 0;
	}
#join h3 {
	font-size: 1.8rem;
	line-height: 1.5;
	padding: 0 0 1em 0;
	font-weight: normal;
	}
#join h4 {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: bold;
	padding: 1em 0 1em 0;
	}
#join h4.h4-border {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: bold;
	padding: 1em 0 0.5em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #333;
	}


#join h5 {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: bold;
	margin: 0em 0em 0em 0em;
	border: none;
	}
#join .waku {
	border: 1px solid #ccc;
	padding: 1em 0em 1em 0em;
	margin: 0 0 1em 0;
	}
#join .waku p {
	padding: 1em 0 0 0;
	}

#join .pindent  {
	margin-left: 0em;
	}

#join p img {
	float: none;
	padding: 0.5em 0 1em 0;
	}

#join dl dt {
	font-size: 100%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0 1em 0 1em;
	}
#join dl dd {
	padding: 0 1em 0.5em 0em;
	}
#join ul {
	font-size: 100%;
	line-height: 1.5;
	border-top: 1px dotted #ccc;
	padding: 0 0 0 0;
	margin: 0 0 0.5em 0;
	}
#join ul li {
	list-style-type: disc;
	list-style-position: inside;
	padding: 0.5em 0 0.5em 1em;
	border-bottom: 1px dotted #ccc;
	}
#join ul.narabi {
	font-size: 100%;
	line-height: 1.5;
	border: 0;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	text-align: center;
	}
#join ul.narabi li {
	list-style-type: none;
	padding: 0 1em 0 1em;
	border: 0;
	font-weight: bold;
	}
#join ul.narabi li span {
	font-weight: normal;
	}
#join ol {
	font-size: 100%;
	line-height: 1.5;
	padding: 1em 0 0 0;
	margin: 0 0 0.5em 0;
	}
#join ol li {
	list-style-type: decimal;
	list-style-position: outside;
	padding: 0.5em 0 0.5em 0em;
	}
#join ol li a {
	text-decoration: none;
	}

#join dl.barrierdl {
	margin: 0 1em 0em 1.5em;
	}
#join dl.barrierdl dt {
	font-size: 100%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0 0 0.5em 0em;
	margin: 0 0 0 0;
	}
#join dl.barrierdl dd {
	padding: 0 0 0.5em 0em;
	margin: 0 0 0 0;
	}
	
/* - アーティスト一覧 -- */
#artist-list {
}
#artist-list dl {
	width: 100%;
}
#artist-list dt {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: bold;
	padding: 1em 0 0.5em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #333;
	}
#artist-list dd {
	margin: 0 0 2em;
	padding: 0px;
}
#artist-list ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
#artist-list li {
	margin: 0px;
	padding: 1em 0.75% 1em 1.75%;
	vertical-align: top;
	width: 100%;
	display: inline-block;
}



/* ---- レスポンシブ ---- */
/* - スマホ横（480px以上） -- */
@media screen and (min-width: 480px) {
.accordian img {
	width: 500px;
	height: 333px;
	}
	
#artist-list li {
	width: 47%;
}
}

/* - タブレット縦横（768px以上） -- */
@media screen and (min-width: 768px), print {
/*   TB ロゴ */
.logo {
	width: 121px;
	height: 121px;
	}
.logo img {
	width: 77px;
	max-width: 77px;
	height: auto;
	padding: 25px 22px 20px 22px;
	}

/* - TB ヘッダ -- */
#header {
	height: auto;
	border-bottom: none;
	}
.sns-navi {
	margin: 0 0 0 0;
	height: 60px;
	border-bottom: 1px solid #9c9e9c;
	}
.search-menu {
	margin: 10px 0 0 0;
	}
.sns-menu {
	margin: 10px 15px 0 0;
	}
.main-menu {
	border-bottom: 1px solid #9c9e9c;
	}

/*   TB スマホメニュー */
.hamburgler-menu {
	transition: none;
	opacity: 1;
	pointer-events: auto;
	position: static;
	background-color: rgba(255, 255, 255, 0);
	height: auto;
	color: 9c9e9c;
	text-align: left;
	overflow: visible;
	}
#hamburgler {
	display: none;
	}
.header-navi {
	display: inline;
	transition: none;
	padding: 0;
	position: static;
	transform: none;
	}

/* - TB ヘッダメニュー */
.sns-navi {
	display: -webkit-flex;
	display:         flex;
	-webkit-align-items: flex-start;
	align-items:         flex-start;
	-webkit-justify-content: flex-end;
	justify-content:         flex-end;
	}

/*   TB 検索窓 */
#gsc {
	background-image: url("../img/header-menu-sh.png");
	background-size: 40px auto;
	background-position: 1px 0px;
	background-repeat: no-repeat;
	background-color: #fff;
	width: auto;
	margin: 0 5px 0 0;
	}
#gsc input {
	outline: none !important;
	border: none !important;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	}
#gsc input[type=text] {
	-webkit-appearance: textfield;
	-webkit-box-sizing: content-box;
	font-family: inherit;
	font-size: 100%;
	}
#gsc input::-webkit-search-decoration,
#gsc input::-webkit-search-cancel-button {
	display: none;
	}
#gsc input[type=submit] {
	display: none;
	}
#gsc input[type=text] {
	padding: 0px 2px 0px 38px !important;
	background-position: 32px 50% !important;
	width: 0px;
	height: 40px;
	border: none;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	background-color: transparent !important;
	}
#gsc input[type=text]:hover {
	width: 140px;
	margin-right: 4px;
	background-color: transparent;
	border-color: #666;
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	}
#gsc input:-moz-placeholder {
	color: #000;
	}
#gsc input::-webkit-input-placeholder {
	color: #000;
	}

/*   TB SNSボタン */
ul.sns-menu-list li a {
	margin: 0 5px 0 5px;
	}

/*   TB 言語選択 */
#lang-menu {
	margin: 0 0 0 6px;
	line-height: 60px;
	cursor: pointer;
	z-index: 100;
	border-top: 0;
	border-left: 1px solid #9c9e9c;
	border-bottom: 1px solid #9c9e9c;
	}
#lang-menu span {
	vertical-align: 0;
	}
#lang-menu a {
	border: none;
	color: #9c9e9c;
	}
#lang-menu a:hover {
	text-decoration: none;
	color: #fff;
	}
.lang-menu-wrapper {
	width: 120px;
	background-color: #fff;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	overflow: hidden;
	text-align: center;
	color: #666;
	font-size: 1.4rem;
	}
.lang-menu-wrapper:hover {
	color: #fff;
	background-color: #0099cc;
	}
.lang-menu-wrapper span:before {
	content: "";
	display:inline-block;
	background-image: url("../img/arrow.png");
	background-size: cover;
	background-repeat: no-repeat;
	width: 14px;
	height: 9px;
	margin: 0 6px 0 0;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
	}
.lang-menu-wrapper:hover span:before {
	background-position: bottom;
	}
#lang-menu ul.lang-menu-list li {
	overflow: hidden;
	height: 0;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	list-style-type: none;
	text-align: center;
	line-height: 1;
	}
#lang-menu ul.lang-menu-list li.now {
	color: #999;
	}
#lang-menu:hover ul.lang-menu-list li {
	overflow: visible;
	height: 33px;
	background-color: #fff;
	line-height: 33px;
	}
#lang-menu ul.lang-menu-list li a {
	color: #0099cc;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	background-color: #fff;
	display: block;
	}
#lang-menu ul.lang-menu-list li a:hover {
	color: #fff;
	background-color: #0099cc;
	}


/*   TB グローバルメニュー */
ul.main-menu-list {
	width: auto;
	display: -webkit-flex;
	display:         flex;
	-webkit-justify-content: center;
	justify-content:         center;
	-webkit-align-items: center;
	align-items:         center;
	padding: 0 0 0 121px;
	margin: 0 0 0 0;
	line-height: 1;
	}
ul.main-menu-list li {
	list-style-type: none;
	text-align: center;
	padding: 0 0 0 0;
	}
ul.main-menu-list li a {
	display: block;
	padding: 0.65em 1em 0.65em 1em;
	color: #666;
	font-weight: bold;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	transition: all .3s ease;
	background-color: #fff;
	}
ul.main-menu-list li a:hover {
	color: #fff;
	text-decoration: none;
	background-color: #0099cc;
	}

/* - TB フッタ -- */
#footer {
	padding: 46px 0 46px 0;
	}

/*   TB ページトップへ */
.pagetop {
	bottom: 5px;
	right: 28px;
	}

/*   TB フッタメニュー */
ul.footer-menu-list {
	margin: 10px 0 46px 0;
	}
ul.footer-menu-list li a {
	line-height: 1.5;
	}

/*   TB コピーライト */
.footer-caption .footer-logo {
	width: 74px;
	max-width: 74px
	}
.footer-caption img {
	margin: 0 0 22px 0;
	}

/* - TB メイン -- */
/*   TB ページインナー */
.main-contents-top {
	width: 84%;
	background-color: #fff;
	margin: 0 0 0 0;
	padding: 92px 8% 92px 8%;
	}
.main-contents {
	width: 84%;
	background-color: #fff;
	margin: 0 0 0 0;
	padding: 46px 8% 46px 8%;
	}

/*   TB H2 */
.page-title {
	margin: 0 0 3.5em 0;
	}
h2 {
	font-size: 3rem;
	margin: 0 0 0 0;
	}
/*   TB リンクボタン */
p.btn-top a {
	width: 11em;
	font-size: 1.4rem;
	line-height: 2.75;
	}
p.btn-back {
	padding: 0 0 46px 0;
	margin: 46px 0 0 0;
	}
p.btn-back a {
	width: 11em;
	font-size: 1.4rem;
	line-height: 2.75;
	}
p.btn-sub a {
	width: 17em;
	font-size: 1.4rem;
	line-height: 2.75;
	}
p.dd-btn-sub {
	text-align: left;
	}
p.dd-btn-sub a {
	font-size: 1.4rem;
	line-height: 2.75;
	}
p.dd-btn-archive{
	text-align: left;
	}
p.dd-btn-archive a {
	width: 14.5em;
	font-size: 1.4rem;
	line-height: 2.75;
	}
p.btn-siteinfo a {
	font-size: 1.4rem;
	line-height: 2.75;
	}
p.btn-sub-wide a {
	width: 21em;
	font-size: 1.4rem;
	line-height: 2.75;
	}

/* - TB トップページ -- */
/*   TB イメージスライダー */
#viewer_all {
	margin: 0 0 0 0;
	}
/*   TB ニュース欄 */
dl.news-top {
	line-height: 1.85;
	margin: 0 0 0 0;
	}
dl.news-top dt {
	clear: left;
	float: left;
	margin: 0 0 2em 0;
	width: 10em;
	font-weight: normal;
	}
dl.news-top dd {
	margin: 0 0 2em 0;
	margin-left: 10em;
	}

/*   TB YouTube欄 */
.youtube-all {
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	}
.youtube-left {
	width: 50%;
	}
.youtube-right {
	width: 50%;
	}
	

/*   TB PDF欄 */
.pdf-all {
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	}
.pdf-1,.pdf-2,.pdf-3 {
	width: 33.33%;
	}


/* - TB サブページ -- */
/*   TB サブページインナー */
.sub-contents-top {
	position: relative;
	width: 84%;
	background-color: #fff;
	margin: 0 0 0 0;
	padding: 69px 8% 46px 8%;
	}
/*   TB サブページリンクリスト */
ul.subtitle-list li a {
	font-size: 1.4rem;
	padding: 0 1.5em 0 1.5em;
	}
/* - TB ニュース -- */
.news-list-all {
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	-webkit-justify-content: space-between;
	justify-content:         space-between;
	margin: 0 0 0 0;
	}
.news-list-all a {
	width: 48%;
	margin: 0 0 0 0;
	}
/*   TB インフィニットスクロール */
.navigation {
	height: 46px;
	}
p.btn-more a {
	font-size: 1.4rem;
	line-height: 2.75;
	}
#infscr-loading {
	bottom: 46px;
	}
/* - TB とは アコーディオン -- */
.accordian {
	margin-bottom: 46px;
	height: 467px;
	}
.accordian img {
	width: 700px;
	height: 467px;
	}
.image_title {
	height: 70px;
	}
.image_title a {
	padding: 10px;
	font-size: 14px;
	line-height: 1.2;
	}
.image_title a span {
	font-size: 12px;
	}
/*   TB とは DL Table -- */
dl.dl-table {
	margin-bottom: 46px;
	border-bottom: 1px dotted #ccc;
	}
dl.dl-table dt {
	clear: left;
	float: left;
	margin: 0 0 0 0;
	padding: 1.5em 1em 1.5em 0;
	width: 12em;
	font-weight: bold;
	border-top: 1px dotted #ccc;
	}
dl.dl-table dd {
	padding: 1.5em 0 1.5em 0;
	margin: 0 0 0 13em;
	border-top: 1px dotted #ccc;
	}
dl.dl-table dd ul {
	padding: 0 0 0 1.5em;
	}

/* - TB アーカイブ -- */
h3.under-line {
	font-size: 2.1rem;
	padding: 0.5em 0 0.5em 0;
	border-bottom: 1px solid #333;
	}
/*   TB アーカイブ DL Table -- */
dl.dl-table-noborder {
	margin-bottom: 58px;
	}
dl.dl-table-noborder dt {
	float: left;
	margin: 0 3em 0 0;
	padding: 0 0 0 0;
	width: 12em;
	text-align: left;
	position: relative;
	}
dl.dl-table-noborder dd {
	padding: 0 0 0 0;
	margin: 0 0 0 15em;
	}
dl.dl-table-noborder dd:after {
	content: '';
	display: block;
	clear: both;
	}
dl.dl-table-noborder-inner {
	margin: 32px 0 23px 0;
	}
dl.dl-table-noborder-inner dt {
	float: left;
	margin: 0 0 0 0;
	padding: 0.25em 1em 0.25em 0;
	width: 10em;
	font-weight: bold;
	text-align: left;
	}
dl.dl-table-noborder-inner dd {
	padding: 0.25em 0 0.25em 0;
	margin: 0 0 0 11em;
	}
dl.dl-table-noborder-inner dd:after {
	content: '';
	display: block;
	clear: both;
	}
dl.dl-table-noborder-inner dd span {
	font-size: 1.4rem;
	}
dl.dl-table-noborder dt img {
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
	}
ul.btn-ul {
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	}
ul.btn-ul li {
	width: 50%;
	padding: 0.5em 0 0.5em 0;
	}
dl.dl-bottom {
	margin-bottom: 0;
	}

/* - TB 取材申込み -- */
h3.under-line-top {
	font-size: 2.1rem;
	padding: 0 0 0.5em 0;
	margin: 0 0 1.5em 0;
	border-bottom: 1px solid #333;
	}
h3.under-line-second {
	font-size: 2.1rem;
	padding: 1em 0 0.5em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #333;
	}
ul.btn-ul-center {
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	-webkit-justify-content: center;
	justify-content:         center;
	margin: 0 0 3em 0;
	}
ul.btn-ul-center li {
	padding: 0.5em 0.5em 0.5em 0.5em;
	}
.btn-ul-center p.dd-btn-sub a {
	}

/* - TB プレスリリース -- */
dl.press dt {
	clear: left;
	float: left;
	margin: 0 1em 0 0;
	width: 11em;
	font-weight: normal;
	}
dl.press dd {
	margin: 0 0 1.5em 12em;
	}

/* - TB メールニュース -- */
fieldset {
	padding: 2.5em 2.5em 2.5em 2.5em;
	margin: 0 0 2em 0;
	border: 1px solid #ccc;
	background: #fbfbfb;
	}
.label_all {
	padding: 1em 0 0.5em 0;
	}
.label_all .label_left {
	text-align: right;
	float: left;
	margin-right: 0.5em;
	}
.label_all .label_right {
	text-align: left;
	float: left;
	}
.label_all .label_left label {
	height: 34px;
	width: 222px;
	display: table-cell;
	vertical-align: middle;
	text-align: right;
	}

/* - TB ご利用にあたって -- */
.indent-div {
	padding: 0 0 0 4em;
	}

/* - TB リンク -- */
.link-wrap-all .link-wrap {
	width: 280px;
	padding: 30px 0px 30px 0px;
	margin: 12px 10px 12px 10px;
	text-align: center;
	}

/* - TB コンタクト -- */
dl.dl-table-contact {
	margin-bottom: 46px;
	border-bottom: 1px dotted #ccc;
	margin-top: -23px;
	}
dl.dl-table-contact dt {
	clear: left;
	float: left;
	margin: 0 0 0 0;
	padding: 1.5em 1em 1.5em 0;
	width: 12em;
	font-weight: bold;
	border-top: 1px dotted #ccc;
	}
dl.dl-table-contact dd {
	padding: 1.5em 0 1.5em 0;
	margin: 0 0 0 13em;
	border-top: 1px dotted #ccc;
	}
dl.dl-table-contact dt:first-child {
	padding: 0em 0 0.5em 0;
	border-top: 1px dotted #fff;
	}
dl.dl-table-contact dd.first-dd {
	padding: 0em 0 1.5em 0;
	border-top: 1px dotted #fff;
	}
#at_map {
	height: 450px;
	}

/* - TB リンクバナー -- */
.banner_all {
	padding: 1em 0 1em 0;
	display: -webkit-flex;
	display:         flex;
	-webkit-flex-wrap: wrap;
	flex-wrap:         wrap;
	-webkit-justify-content: center;
	justify-content:         center;
	}
.banner_l {
	width: 48%;
	padding: 0 2% 0 0;
	text-align: center;
	}
.banner_r {
	width: 48%;
	padding: 0 0 0 2%;
	text-align: center;
	}

/* - TB ご寄付 -- */
#join h3 {
	font-size: 2.4rem;
	line-height: 1.5;
	padding: 0 0 1em 0;
	font-weight: normal;
	}
#join h4 {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	padding: 1em 0 1em 0;
	}
#join h4.h4-border {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	padding: 1em 0 0.5em 0;
	margin: 0 0 1em 0;
	border-bottom: 1px solid #333;
	}
#join h5 {
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: bold;
	margin: 0em 0em 0.5em 0em;
	border: none;
	}
#join .waku {
	border: 1px solid #ccc;
	padding: 2em 2em 0.5em 2em;
	margin: 0 0 2em 0;
	}
#join .waku p {
	padding: 1em 0 0 0;
	}

#join .pindent  {
	margin-left: 1.25em;
	}

#join p img {
	float: left;
	padding: 0.5em 2em 0.5em 0;
	}

#join dl dt {
	font-size: 100%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0 0 0 2em;
	}
#join dl dd {
	padding: 0 0 0.5em 2em;
	}
#join ul {
	font-size: 100%;
	line-height: 1.5;
	border-top: 1px dotted #ccc;
	padding: 0 0 0 0;
	margin: 0 0 0.5em 0;
	}
#join ul li {
	list-style-type: disc;
	list-style-position: inside;
	padding: 0.5em 0 0.5em 1em;
	border-bottom: 1px dotted #ccc;
	}
#join ul.narabi {
	font-size: 100%;
	line-height: 1.5;
	border: 0;
	padding: 0 0 0 0;
	margin: 0 0 1.8em 0;
	text-align: center;
	}
#join ul.narabi li {
	list-style-type: none;
	padding: 0 1em 0 1em;
	border: 0;
	font-weight: bold;
	}
#join ul.narabi li span {
	font-weight: normal;
	}
#join ol {
	font-size: 100%;
	line-height: 1.5;
	padding: 1em 0 0 0;
	margin: 0 0 0.5em 0;
	}
#join ol li {
	list-style-type: decimal;
	list-style-position: outside;
	padding: 0.5em 0 0.5em 0em;
	}

#join dl.barrierdl {
	margin: 0 0 1em 0;
	}
#join dl.barrierdl dt {
	font-size: 100%;
	line-height: 1.5;
	font-weight: bold;
	padding: 0 0 0.5em 2em;
	}
#join dl.barrierdl dd {
	padding: 0 0 0.5em 2em;
	}


#artist-list dt {
	font-size: 2.1rem;
}

#artist-list li {
	width: 30%;
}

}

/* - PC（1025px以上） -- */
@media screen and (min-width: 1025px) {
body {
	font-size: 1.6rem;
	line-height: 1.85;
	}

/*   PC ロゴ */
.logo {
	width: 176px;
	height: 176px;
	}
.logo img {
	width: 112px;
	max-width: 112px;
	height: auto;
	padding: 38px 32px 30px 32px;
	}

/* - PC ヘッダ -- */
.sns-navi {
	height: 90px;
	}
.search-menu {
	margin: 25px 0 0 0;
	}
.sns-menu {
	margin: 25px 15px 0 0;
	}

/*   PC 言語選択 */
#lang-menu {
	line-height: 90px;
	}
#lang-menu:hover ul.lang-menu-list li {
	height: 47px;
	line-height: 47px;
	}

/*   PC グローバルメニュー */
ul.main-menu-list {
	padding: 0 0 0 0;
	}
.lang-menu-wrapper {
	width: 140px;
	}
ul.main-menu-list li a {
	padding: 0.95em 1em 0.95em 1em;
	}

/* - PC フッタ -- */
/*   PC ページトップへ */
.pagetop {
	bottom: 20px;
	right: 50px;
	}


/*   PC フッタメニュー */
ul.footer-menu-list li {
	font-size: 1.4rem;
	}

/*   PC コピーライト */
.footer-caption small {
	font-size: 1.2rem;
	}
.footer-caption .footer-logo {
	width: 88px;
	max-width: 88px;
	}
.footer-caption img {
	margin: 0 0 28px 0;
	}

/*   PC ページインナー */
.main-contents-top {
	width: 78%;
	padding: 92px 11% 92px 11%;
	}
.main-contents {
	width: 78%;
	padding: 46px 11% 46px 11%;
	}

/* - PC メイン -- */
/*   PC H2 */
h2 {
	font-size: 3.6rem;
	}
/*   PC リンクボタン */
p.btn-top a {
	font-size: 1.6rem;
	}
p.btn-back a {
	font-size: 1.6rem;
	}
p.btn-sub a {
	font-size: 1.6rem;
	}
p.dd-btn-sub a {
	font-size: 1.6rem;
	}
p.dd-btn-archive a {
	width: 16em;
	font-size: 1.6rem;
	}
p.btn-siteinfo a {
	font-size: 1.6rem;
	}
p.btn-sub-wide a {
	font-size: 1.6rem;
	}

/* - PC サブページ -- */
.sub-contents-top {
	width: 78%;
	padding: 92px 11% 46px 11%;
	}
/*   PC サブページリンクリスト */
ul.subtitle-list li a {
	font-size: 1.6rem;
	}
/* - PC ニュース -- */
.news-item-title h3 {
	font-size: 1.6rem;
	}
/*   PC インフィニットスクロール */
p.btn-more a {
	font-size: 1.6rem;
	}
/* - PC とは アコーディオン -- */
.accordian {
	height: 667px;
	}
.accordian img {
	width: 1000px;
	height: 667px;
	}
.image_title {
	height: 100px;
	}
.image_title a {
	padding: 10px;
	font-size: 21px;
	line-height: 1.2;
	}
.image_title a span {
	font-size: 14px;
	}

/* - PC 取材申込み -- */
ul.btn-ul-center li {
	padding: 0.5em 0.75em 0.5em 0.75em;
	}
.btn-ul-center p.dd-btn-sub a {
	}

/* - PC ご利用にあたって -- */
.indent-div {
	padding: 0 0 0 10em;
	}

#artist-list li {
	width: 22%;
}

}

/* - PC-WIDE（1025px以上） -- */
@media screen and (min-width: 1600px) {
/*   PC-WIDE とは アコーディオン -- */
.accordian img {
	width: 1200px;
	height: 800px;
	}
}

/* - 印刷用 -- */
@media print {
#lang-menu {
	display: none;
	}
}
