@charset "UTF-8";

/*--------------------------------------------------
	基本ルール
--------------------------------------------------*/
/*font-sizeはremで指定しています。15px=1.5rem。*/
html {
	font-size: 62.5%;
}
body {
	font-size: 18px;
	font-size: 1.8rem;
	font-family: 'Noto Sans JP',"游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS P Gothic",sans-serif;
	line-height: 1.7;
	color: #666;
}
table {
	table-layout: fixed;/*IE11*/
	border-collapse: collapse;
	border-spacing: 0;
}
p, h1, h2, h3, h4, h5, h6, ul, li, ol, dl, dt, dd, figure {
	margin: 0;
	padding: 0;
}
ul, li, ol, dl, dt, dd {
	list-style: none;
}
a {
}
a:hover {
	text-decoration: none;
}
strong {
	font-weight: bold;
}
figure {
	margin-block: 0em;
	margin-inline: 0em;
}
img {
	margin: 0;
	vertical-align: middle;
	border: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
	body {
		image-rendering: -webkit-optimize-contrast;
	}
}
/*--------------------------------------------------
	ベースレイアウト
--------------------------------------------------*/
/*ヘッダー*/
header {
	border-top: 10px solid #e8c4c4;
}
header .hdr_inner {
	position: relative;
}
header .hdr_inner .navbtn {
	position: absolute;
	top: -10px;
	right: 16px;
	z-index: 998;
	width: 52px;
	height: 54px;
	background: url('../img/bg_btn.png') center/100% 100% no-repeat;
}
header .hdr_inner .navbtn span {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	text-indent: -7777px;
	overflow: hidden;
	background: url(../img/ico_navbtn.png) center/40% 40% no-repeat;
}
header .hdr_inner .navbtn.navopen span {
	background-image: url(../img/ico_navbtn-close.png);
}
/*一定距離スクロールすると電話・メニューボタンがページ右上に固定されるようにする*/
.fixed header .hdr_inner .navbtn {
	position: fixed;
	top: 0;
}
/*ナビゲーション本体*/
header .hdr_inner nav.hdr_nav {
	position: fixed;
	width: calc(100% - 16px - 52px);
	height: 100%;
	padding: 32px 24px 72px;
	box-sizing: border-box;
	top: 0;
	left: 0;
	z-index: 900;
	transform: translateX(-100vw);
	transition: all 0.4s cubic-bezier(0.38, 0, 0.25, 1);
	background: #f2f2f2;
}
header .hdr_inner nav.hdr_nav.navopen {
	position: fixed;
	overflow: scroll;
	transform: translateX(0);
	transition: all 0.4s cubic-bezier(0.38, 0, 0.25, 1);
	z-index: 900;
}
header .hdr_inner nav.hdr_nav h1 {
	width: 90%;
	margin-bottom: 16px;
}
header .hdr_inner nav.hdr_nav h1 img {
	width: 100%;
	height: auto;
}
header .hdr_inner nav.hdr_nav ul {
}
header .hdr_inner nav.hdr_nav ul li {
	border-bottom: 1px solid #A67C52;
}
header .hdr_inner nav.hdr_nav ul li a {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 20px 0 20px 30px;
	font-size: 6.2vw;
	line-height: 1.2;
	text-decoration: none;
}
/*SP表示時のナビゲーションのレイアウト終わり*/
/*------------------------------------------------*/
@media print, screen and (min-width: 600px) {
	header {
		position: fixed;
		width: 100%;
		padding: 24px 0;
		box-sizing: border-box;
		border-top: none;
		border-bottom: 4px solid #e8c4c4;
		background: #fff;
		z-index: 199;
	}
	header .hdr_inner {
		display: flex;
		justify-content: space-between;
		width: 1000px;
		margin: 0 auto;
	}
	header .hdr_inner .navbtn {
		display: none;
	}
	header .hdr_inner nav.hdr_nav {
		position: relative;
		display: flex;
		flex-flow: wrap;
		justify-content: space-between;
		width: 1000px;
		height: inherit;
		padding: 0;
		transform: none;
		transition: none;
		background: none;
		scrollbar-width: none;
	}
	header .hdr_inner nav.hdr_nav::-webkit-scrollbar {
		display: none;
	}
	header .hdr_inner nav.hdr_nav h1 {
		width: 230px;
		max-height: inherit;
		padding: 0;
		margin-bottom: 0;
		line-height: 0;
	}
	header .hdr_inner nav.hdr_nav h1:hover {
		opacity: .8;
	}
	header .hdr_inner nav.hdr_nav h1 img {
		width: 100%;
		height: auto;
	}
	header .hdr_inner nav.hdr_nav ul {
		display: flex;
		flex-flow: wrap;
		justify-content: flex-end;
	}
	header .hdr_inner nav.hdr_nav ul li {
		border-bottom: 0;
		background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1 1" preserveAspectRatio="none"><path fill="%238c6239" d="M0.000,0.000 L32.000,0.000 L32.000,32.000 L0.000,32.000 L0.000,0.000 Z" /></svg>');
		background-position: top 2px left 0;
		background-size: 1px 36px;
		background-repeat: no-repeat;
	}
	header .hdr_inner nav.hdr_nav ul li a {
		padding: 6px 30px 0;
		font-size: 1.8rem;
		text-align: center;
	}
	header .hdr_inner nav.hdr_nav ul li a:hover {
		opacity: .7;
	}
	header .hdr_inner nav.hdr_nav ul li a.headline span.main::before {
		content: none;
	}
	.fixed .navbtn {
		position: relative;
	}
}
/*メインイメージ*/
.mainimg {
	width: 100%;
	background: url(../img/bg_body.jpg) center/cover no-repeat;
}
.mainimg .mainimg_inner {
	position: relative;
	padding: 72px 0;
}
.mainimg .mainimg_inner p.mainimg_inner_logo {
	width: 64%;
	margin: 0 auto 32px;
}
.mainimg .mainimg_inner p.mainimg_inner_logo img {
	width: 100%;
	height: auto;
}
.mainimg .mainimg_inner p.mainimg_inner_text {
	position: relative;
	padding: 32px 8vw 0;
	line-height: 1.9;
}
.mainimg .mainimg_inner p.mainimg_inner_text::before {
	content: '';
	display: block;
	width: 100%;
	height: 4px;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	background: rgb(244,180,201);
	background: linear-gradient(90deg, rgba(244,180,201,1) 22%, rgba(255,230,122,1) 53%, rgba(160,216,239,1) 86%);
}
.mainimg .mainimg_inner p.mainimg_inner_text img {
	display: inline-block;
	width: 100%;
	height: auto;
}
.mainimg .mainimg_inner p.mainimg_inner_text .fade {
	opacity: 0;
	transform: translateY(0);
	animation: fade 6s ease forwards;
}
@keyframes fade {
	100% {
		opacity: 1;
		transform: translateY(-10px);
	}
}
.mainimg .mainimg_inner p.mainimg_inner_text .fade1 {animation-delay: 3.5s;}
.mainimg .mainimg_inner p.mainimg_inner_text .fade2 {animation-delay: 4.5s;}
.mainimg .mainimg_inner p.mainimg_inner_text .fade3 {animation-delay: 5.5s;}
.mainimg .mainimg_inner p.mainimg_inner_text .fade4 {animation-delay: 6.5s;}
@media print, screen and (min-width: 600px) {
	.mainimg {
		padding-top: 92px;
	}
	.mainimg .mainimg_inner {
		width: 1000px;
		margin: 0 auto;
	}
	.mainimg .mainimg_inner p.mainimg_inner_logo {
		width: 40%;
		margin-bottom: 48px;
	}
	.mainimg .mainimg_inner p.mainimg_inner_text {
		padding: 48px 256px 0;
		line-height: 2.8;
	}
}
/*コンテンツ部分*/
/*ここではコンテンツ部分のベースレイアウトのみ決める。本文のスタイル設定は「コンテンツ部分の共通スタイル」の項で行う*/
.wrapper {
}
.wrapper .content {
}
.wrapper .content main {
	padding-top: 32px;
}
@media print, screen and (min-width: 600px) {
	.wrapper {
	}
	.wrapper .content {
	}
	.wrapper .content main {
		padding-top: 112px;
	}
}
/*フッター*/
footer {
}
footer::before {
	background-image: url('../img/bg_content1.png');
}
footer .ftr_link {
	padding: 48px 0 56px;
}
footer .ftr_link .logo {
	width: 80%;
	margin: 0 auto 40px;
}
footer .ftr_link .logo a img {
	width: 100%;
	height: auto;
}
footer .ftr_link ul.share {
	display: flex;
	flex-flow: wrap;
	justify-content: center;
}
footer .ftr_link ul.share li {
	width: 60px;
	margin: 0 8px;
	background: url(../img/bg_btn.png) center/100% auto no-repeat;
}
footer .ftr_link ul.share li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 20px 0;
	box-sizing: border-box;
	text-indent: -7777px;
	background-position: center;
	background-size: 60% auto;
	background-repeat: no-repeat;
}
footer .ftr_link ul.share li.xtw a {
	background-image: url('../img/ico_sns-x.png');
}
footer .ftr_link ul.share li.line a {
	background-image: url('../img/ico_sns-line.png');
}
footer .ftr_link ul.share li.fb a {
	background-image: url('../img/ico_sns-fb.png');
}
footer .ftr_nav {
	position: relative;
	background: #e8c4c4;
}
footer .ftr_nav p.pagetop {
	position: absolute;
	width: 86px;
	top: -48px;
	right: 16px;
}
footer .ftr_nav p.pagetop a {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 26px 0;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background: url('../img/bg_top.png') center/100% auto no-repeat;
}
footer .ftr_nav .ftr_nav_inner {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	padding: 32px 5% 40px;
}
footer .ftr_nav .ftr_nav_inner ul {
	width: 100%;
	margin-bottom: 16px;
	font-size: 0;
}
footer .ftr_nav .ftr_nav_inner ul li {
	display: inline-block;
	margin-right: 16px;
	font-size: 3vw;
}
footer .ftr_nav .ftr_nav_inner ul li a {
	color: #8C6239;
	text-decoration: none;
}
footer .ftr_nav .ftr_nav_inner p.guideline {
	width: 70%;
	color: #8C6239;
	font-size: 3vw;
}
footer .ftr_nav .ftr_nav_inner p.logo {
	width: 25%;
}
footer .ftr_nav .ftr_nav_inner p.logo img {
	width: 100%;
	height: auto;
}
@media print, screen and (min-width: 600px) {
	footer .ftr_link {
		display: flex;
		flex-flow: wrap;
		justify-content: space-between;
		width: 1000px;
		padding: 112px 0;
		margin: 0 auto;
	}
	footer .ftr_link .logo {
		width: 40%;
		margin: 0;
	}
	footer .ftr_link .logo:hover {
		opacity: .8;
	}
	footer .ftr_link ul.share {
		width: 50%;
		justify-content: flex-end;
	}
	footer .ftr_link ul.share li {
		width: 70px;
	}
	footer .ftr_link ul.share li:hover {
		opacity: .8;
	}
	footer .ftr_link ul.share li.fb {
		margin-right: 0;
	}
	footer .ftr_link ul.share li a {
		padding: 24px 0;
	}
	footer .ftr_nav p.pagetop {
		width: 170px;
		top: -104px;
		right: 40px;
	}
	footer .ftr_nav p.pagetop:hover {
		opacity: .8;
	}
	footer .ftr_nav p.pagetop a {
		padding: 66px 0;
		font-size: 3.8rem;
	}
	footer .ftr_nav .ftr_nav_inner {
		width: 1000px;
		padding: 32px 0;
		margin: 0 auto;
	}
	footer .ftr_nav .ftr_nav_inner ul {
		width: 42%;
	}
	footer .ftr_nav .ftr_nav_inner ul li {
		font-size: 1.8rem;
	}
	footer .ftr_nav .ftr_nav_inner ul li a {
		text-decoration: underline;
	}
	footer .ftr_nav .ftr_nav_inner ul li a:hover {
		text-decoration: none;
	}
	footer .ftr_nav .ftr_nav_inner p.guideline {
		width: 33%;
		font-size: 1.2rem;
	}
	footer .ftr_nav .ftr_nav_inner p.logo {
		width: 20%;
	}
	footer .ftr_nav .ftr_nav_inner p.logo:hover {
		opacity: .8;
	}
}
@media print, screen and (min-width:600px) and (max-width: 1420px) {
	footer .ftr_nav p.pagetop {
		top: -424px;
		right: 24px;
	}
}
/*--------------------------------------------------
	コンテンツ部分の共通スタイル
--------------------------------------------------*/
section {
	padding: 24px 0 88px;
}
section h2 {
	padding: 24px 0 0;
	margin: 0 0 32px;
	font-size: 3.8rem;
	text-align: center;
}
section .sec_content {
}
section .sec_content h3 {
	margin: 0 0 16px;
}
section .sec_content p,
section .sec_content ul,
section .sec_content ol,
section .sec_content dl {
	margin-bottom: 16px;
}
section .sec_content table {
	width: 100%;
	margin: 0 0 16px;
	border-width: 1px;
	border-style: solid;
	border-color: #b6b3b8;
}
section .sec_content table caption {
	padding: 10px;
	font-size: 1.6rem;
	font-weight: bold;
	background-color: #b6b3b8;
}
section .sec_content table th,
section .sec_content table td {
	padding: 10px;
	border-width: 1px;
	border-style: solid;
	border-color: #b6b3b8;
}
section .sec_content table th {
	background-color: #d8d7d9;
}
@media print, screen and (min-width: 600px) {
	section {
		padding: 40px 0 104px;
	}
	section h2 {
		padding: 10px 0 14px;
		font-size: 5.6rem;
	}
}
/*--------------------------------------------------
	サイト全体で使う共通スタイル
--------------------------------------------------*/
/*フォント*/
.headline,
#characters .s1 .character .artist dl dt {
	font-family: 'Montserrat','Noto Sans JP';
}
/*コンテンツエリア装飾*/
footer,
#index .s1,
#index .s2,
#index .s3 {
	position: relative;
}
footer::before,
#index .s1::before,
#index .s2::before,
#index .s3::before {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	box-sizing: border-box;
	position: absolute;
	top: -10px;
	left: 0;
	background-position: 0 0;
	background-size: 25px 10px;
	background-repeat: repeat-x;
	background-image: url('../img/bg_content1.png');
}
@media print, screen and (min-width: 600px) {
	footer::before,
	#index .s1::before,
	#index .s2::before,
	#index .s3::before {
		height: 20px;
		top: -20px;
		background-size: 50px 20px;
	}
}
/*見出し装飾*/
.headline {
	line-height: 1.3;
	color: #a67c52;
}
.headline span.main {
	position: relative;
	display: inline-block;
}
.headline span.main::before {
	content: '';
	display: block;
	width: 20px;
	height: 30px;
	box-sizing: border-box;
	position: absolute;
	top: 24%;
	left: -6vw;
	background: url('../img/ef_1.png') 50% 50%/100% auto no-repeat;
}
.headline span.sub {
	display: block;
	font-weight: 700;
	font-size: 42%;
}
.headline span.sub::before {
	content: '－ ';
	font-weight: bold;
}
.headline span.sub::after {
	content: ' －';
	font-weight: bold;
}
@media print, screen and (min-width: 600px) {
	.headline span.main::before {
		width: 40px;
		height: 60px;
		top: 20%;
		left: -48px;
	}
}
/*--------------------------------------------------
	ページ個別のスタイル
--------------------------------------------------*/
section img {
	width: 100%;
	height: auto;
}
/*-------------------------------------------index*/
#index .wrapper .content main {
	padding-top: 0;
}
#index .s1 .slider_characters {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1 1" preserveAspectRatio="none"><path fill="%23f8f4e8" d="M0.000,0.000 L32.000,0.000 L32.000,32.000 L0.000,32.000 L0.000,0.000 Z" /></svg>');
	background-position: center center;
	background-size: 100% 160px;
	background-repeat: no-repeat;
}
#index .s1 .slider_characters .character a img {
	width: 70%;
	height: auto;
	margin: 0 auto;
}
#index .s2 {
	background-color: #e8c4c4;
}
#index .s2::before {
	background-image: url('../img/bg_content2.png');
}
#index .s2 .headline span.main::before {
	background-image: url('../img/ef_2.png');
}
#index .s2 .sec_content {
	padding-top: 40px;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1 1" preserveAspectRatio="none"><path fill="%23f4e2e2" d="M0.000,0.000 L32.000,0.000 L32.000,32.000 L0.000,32.000 L0.000,0.000 Z" /></svg>');
	background-position: top 0% left 50%;
	background-size: 100% 25%;
	background-repeat: no-repeat;
}
#index .s2 .slider_sns .sns .sns_timeline {
	width: 75%;
	box-sizing: border-box;
	margin: 0 auto;
}
#index .s2 .slider_sns .sns .sns_timeline .sp {
	padding: 32px 32px 48px;
	border: 8px solid #f8f4eb;
	border-radius: 8px;
	background: #fff;
}
#index .s2 .slider_sns .sns .sns_timeline .sp dl {
	margin-bottom: 0;
}
#index .s2 .slider_sns .sns .sns_timeline .sp dl dt {
	margin-bottom: 16px;
	text-align: center;
	color: #a67c52;
}
#index .s2 .slider_sns .sns .sns_timeline .sp dl:first-of-type dd {
	padding-bottom: 32px;
	margin-bottom: 20px;
	background: url(../img/line_1.png) bottom 0 left 0/auto 6px repeat-x;
}
#index .s2 .slider_sns .sns .sns_timeline .sp dl dd img {
	width: 30%;
	margin: 0 auto;
}
#index .s2 .slider_sns .sns .sns_icon {
	position: relative;
	width: 60%;
	margin: -32px auto 0;
	z-index: 99;
}
#index .s3 {
	background: url(../img/bg_body.jpg) center/cover no-repeat;
}
#index .s3::before {
	background-image: url('../img/bg_content3.png');
}
#index .s3 .sec_content {
}
#index .s3 .slider_news {
	margin: 0 auto 48px;
}
#index .s3 .slider_news .slider {
	position: relative;
	margin: 0 32px;
}
#index .s3 .slider_news .slider a {
	text-decoration: none;
}
#index .s3 .slider_news .slider figure {
}
#index .s3 .slider_news .slider figure img {
	border-radius: 20px;
}
#index .s3 .slider_news .slider dl {
	position: relative;
	width: 76%;
	padding: 16px 24px 20px;
	margin: -24px auto 0;
	box-sizing: border-box;
	color: #a67c52;
	background: #fff;
}
#index .s3 .slider_news .slider dl dt {
	text-align: center;
	font-size: 3.6vw;
}
#index .s3 .slider_news .slider dl dd {
	line-height: 1.6;
	font-size: 4vw;
}
#index .s3 p.archive {
	width: 64%;
	margin: 0 auto;
	border-radius: 5px;
	background: #c69c6d;
}
#index .s3 p.archive a {
	display: block;
	padding: 6px 0 8px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
@media print, screen and (min-width: 600px) {
	#index .s1 .slider_characters {
		padding: 0 2%;
		background-size: 100% 240px;
	}
	#index .s1 .slider_characters .character {
		padding: 0 0.25%;
	}
	#index .s1 .slider_characters .character:hover {
		opacity: .8;
	}
	#index .s2 .sec_content {
		padding: 32px 4% 0;
		background-size: 100% 264px;
	}
	#index .s2 .slider_sns .sns .sns_timeline {
		width: 90%;
		height: 560px;
	}
	#index .s2 .slider_sns .slick-slide {
		transform: scale(.9);
		transition: transform .5s;
	}
	/*#index .s2 .slider_sns .slick-slide.slick-center,*/
	#index .s2 .slider_sns .slick-slide:nth-of-type(2) {
		transform: scale(1);
		transition: transform .5s;
	}
	#index .s3 .slider_news .slider {
		margin: 0 16px;
	}
	#index .s3 .slider_news .slider:hover {
		opacity: 0.8;
	}
	#index .s3 .slider_news .slider dl dt {
		font-size: 2.2rem;
	}
	#index .s3 .slider_news .slider dl dd {
		font-size: 1.8rem;
	}
	#index .s3 p.archive {
		width: 28%;
	}
	#index .s3 p.archive:hover {
		opacity: .8;
	}
}
@media print, screen and (min-width: 1200px) {
	#index .s2 .sec_content {
		padding-left: 12%;
		padding-right: 12%;
		box-sizing: border-box;
		margin: 0 auto;
	}
}
/*--------------------------------------characters*/
#characters .s1 {
	background: url(../img/bg_body.jpg) bottom 0px left 50%/100% 32px no-repeat;
}
#characters .s1 .sec_content {
	padding: 0 5%;
}
#characters .s1 .character figure {
	margin-bottom: 32px;
	text-align: center;
}
#characters .s1 .character figure img {
	width: 70%;
	height: auto;
}
#characters .s1 .character h3 {
	padding: 24px 0 0;
	font-size: 7vw;
	text-align: center;
	background: url(../img/line_1.png) 0 0/auto 8px repeat-x;
}
#characters .s1 .character > p {
	font-size: 4.6vw;
	text-align: center;
}
#characters .s1 .character > p::first-letter {
	font-feature-settings: "palt"
}
#characters .s1 .character .artist {
	margin-top: 88px;
}
#characters .s1 .character .artist p.name {
	text-align: center;
}
#characters .s1 .character .artist p.name a {
	color: #a67c52;
}
#characters .s1 .character .artist dl {
	margin-bottom: 48px;
}
#characters .s1 .character .artist dl dt {
	margin-bottom: 8px;
	font-size: 9vw;
	color: #a67c52;
	text-align: center;
}
#characters .s1 .character .artist dl dt::before {
	content: '- ';
	vertical-align: 0.2rem;
}
#characters .s1 .character .artist dl dt::after {
	content: ' -';
	vertical-align: 0.2rem;
}
#characters .s1 .character .artist dl dd {
	position: relative;
	padding: 48px 0;
	font-size: 0;
	text-align: center;
}
#characters .s1 .character .artist dl dd::before,
#characters .s1 .character .artist dl dd::after {
	content: '';
	display: block;
	width: 100%;
	height: 8px;
	box-sizing: border-box;
	position: absolute;
	background: url(../img/line_1.png) 0 0/auto 8px repeat-x;
}
#characters .s1 .character .artist dl dd::before {
	top: 0;
	left: 0;
}
#characters .s1 .character .artist dl dd::after {
	bottom: 0;
	left: 0;
}
#characters .s1 .character .artist dl dd a {
	display: inline-block;
	margin: 0 24px;
}
#characters .s1 .character .artist dl dd a img {
	width: 10vw;
	height: auto;
}
#characters .s1 .characternav ul {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
}
#characters .s1 .characternav ul li {
	position: relative;
	width: 30%;
}
#characters .s1 .characternav ul li.current::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	opacity: .4;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10" preserveAspectRatio="none"><path fill="%23000" d="M5.0,0.0 C7.761,0.0 10.0,2.238 10.0,5.0 C10.0,7.761 7.761,10.0 5.0,10.0 C2.238,10.0 0.0,7.761 0.0,5.0 C0.0,2.238 2.238,0.0 5.0,0.0 Z" /></svg>');
}
@media print, screen and (min-width: 600px) {
	#characters .s1 {
		padding-bottom: 160px;
		background-size: 100% 64px;
	}
	#characters .s1 .sec_content {
		width: 1000px;
		margin: 0 auto;
	}
	#characters .s1 .character figure {
		margin-bottom: 64px;
	}
	#characters .s1 .character h3 {
		padding-top: 48px;
		font-size: 4.4rem;
	}
	#characters .s1 .character > p {
		font-size: 2.4rem;
	}
	#characters .s1 .character .artist dl {
		width: 40%;
		margin-left: auto;
		margin-right: auto;
	}
	#characters .s1 .character .artist dl dt {
		font-size: 2.6rem;
	}
	#characters .s1 .character .artist dl dd a:hover {
		opacity: .7;
	}
	#characters .s1 .character .artist dl dd a img {
	width: 4.8rem;
	}
	#characters .s1 .characternav ul {
		width: 60%;
		margin: 0 auto;
	}
	#characters .s1 .characternav ul li a:hover {
		opacity: .8;
	}
}
/*--------------------------------------------news*/
#news .s1 {
	padding-bottom: 64px;
	background: url(../img/bg_body.jpg) bottom 0px left 50%/100% 32px no-repeat;
}
#news .s1 .sec_content {
	padding: 0 5% 24px;
	margin-bottom: 48px;
	background: url(../img/line_2.png) left 0 bottom 0/auto 8px repeat-x;
}
#news .s1 .sec_content:last-of-type {
	padding-bottom: 0;
	background: none;
}
#news .s1 .news {
}
#news .s1 .news figure {
	margin-bottom: 24px;
}
#news .s1 .news figure img {
	border-radius: 20px;
}
#news .s1 .news dl dt {
	position: relative;
	padding-right: 5em;
	padding-bottom: 24px;
	margin-bottom: 16px;
	font-size: 5.0vw;
	line-height: 1.2;
	background: url(../img/line_1.png) left 0 bottom 0/auto 4px repeat-x;
}
#news .s1 .news dl dt span {
	position: absolute;
	top: 0.5rem;
	right: 0;
	display: block;
	font-size: 70%;
}
#news .s1 .news dl dd {
	line-height: 1.6;
	font-size: 4vw;
}
#news .s1 .news p.more {
	text-align: right;
}
#news .s1 .news p.more a {
	color: #666;
}
/**/
#news .s1 p.top,
#news .s1 p.archive {
	width: 64%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 64px;
	border-radius: 5px;
	background: #c69c6d;
}
#news .s1 p.top a,
#news .s1 p.archive a {
	display: block;
	padding: 6px 0 8px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
@media print, screen and (min-width: 600px) {
	#news .s1 .sec_content {
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 56px;
		margin-bottom: 64px;
		background-size: auto 16px;
	}
	#news .s1 .news {
		width: 1000px;
		margin: 0 auto;
	}
	#news .s1 .news dl {
		width: 95%;
		margin: 0 auto;
	}
	#news .s1 .news dl dt {
		font-size: 2.4rem;
	}
	#news .s1 .news dl dd {
		font-size: inherit;
		line-height: 1.8;
	}
	#news .s1 .news p.more {
		width: 95%;
		margin-left: auto;
		margin-right: auto;
	}
	#news .s1 p.top,
	#news .s1 p.archive {
		width: 28%;
	}
	#news .s1 p.top:hover,
	#news .s1 p.archive:hover {
		opacity: .8;
	}
}