@charset "utf-8";
html {
	font-size: 62.5%;
}
* {
	box-sizing: border-box;
}
*:focus {
	outline: none;
}
html, body {
    zoom: 1;
    position: relative;
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
    -webkit-text-size-adjust: 100%;
	  word-wrap:break-word;
font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ W3", sans-serif;
	line-height: 1.6;
}

p {
	line-height:1.8em;
	color:#333;
	margin:0 auto 1em;
	letter-spacing:0.05em;
}

.b {
	font-weight:bold;
}
.catch{
	font-size:1.1em;
	padding:0.5em 0;
}
a {
	color:#333;
}
a:hover {
	color:#ff0000;
}
h1 { 
	font-size: 2rem;
	line-height:2em;
	text-align:center;
	margin:0 0 1em;
	color:#F00;	
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	
	letter-spacing: 0.1em;
}
h2 { 
	font-size: 1.7rem;
	color:#FFF;
	padding:1rem;
	background: #F00;
	text-align:center;
	margin:1rem 0 2rem;
}
#archive h2 { 
	font-size: 2rem;
	color:#F00;
	background: none;
	text-align:left;
	padding:0;
	margin:2rem 0 0;
}
#archive h2 span{ 
	font-size: 1.3rem;
}
h3 { 
	font-size: 1.6rem;
	border-bottom:3px solid #ff0000;
	margin-bottom:1em;
	margin:2em 0;
	position: relative;
	color:#111;
    padding: 1.5em 0 0 2.1em;
}
#archive h3 {
padding: 0 0 0 0.2em;	
}
h3:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width:50%;
  height: inherit;
  border-bottom: 3px solid #9E9E9E;
}

.heading::before {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    color: #ffdbdb;
    font-size: 3em;
    line-height: 1;
    content: attr(data-number);
    pointer-events: none;
}
h3 span {
	font-size:1.2rem;
	padding-left:1rem;
}
#main {
	font-size:1.4rem;
	width:100%;
	margin:0;
	}

.contents {
	max-width:1000px;
	margin:0 auto;
	padding:20px;
}
#logo {
	text-align:center;
	padding:50px 0 20px;
}
#logo img {
	padding:5px;
	width: 100%;
    height: auto; 
	max-width: 300px;
}

#studio {
	clear:both;
	text-align:center;
	padding:10px 0;
	background: #F00;
	color:#FFF;	
	font-size:1.4rem;
}
#studio p {
	color:#FFF;
}
#studio img {
	max-width:400px;
}
footer {
	clear:both;
	text-align:center;
	font-size:0.8em;
	padding:10px 0;
	background: #000;
	color:#FFF;
}
footer p {
	margin:10px 0;
	color:#FFF;
}
footer a {
	color:#FFF;
}
footer a:hover {
	color:#F9B5B5;
}

.history p{
margin:0 1em 1em;	
}

.history img {
	text-align: center;
	width: 90%;
	max-width: 700px;
	margin:0 5% 1em;
}

.partbox {
	padding:5px 15px;
	background: #ffdbdb;
	margin:10px;
}
.partbox a {
	display:inline-block;
	padding:10px  20px;
}
.contents table {
	border:1px solid #111;
	width:100%;
}
.contents table td{
	border-bottom:1px solid #999;
	padding:10px;
}
.contents table tr:last-child td {
  border-bottom: none;
}

.archivebox-wrap,.titlebox-wrap {
	max-width:100% !important;
	height:40px;
	margin:0 0 1em;
	display:flex;
	background:#111;
	overflow:hidden;
	-webkit-flex-wrap:wrap;
    flex-wrap:wrap;
    -webkit-justify-content:center;
    justify-content:center;
}
.titlebox-wrap {
background:#F00;
}
.archivebox,.titlebox {
	display:inline-block;
	text-align:center;
	color:#FFF;
	width:20%;
	border-right:1px solid rgba(255, 255, 255, .7);	
}
.titlebox {
	width:50%;
	font-weight:bold;
	font-size: 1.1em;
	}
.archivebox:last-child,.titlebox:last-child {
	border-right:none;
}
.archivebox a,.titlebox a {
	background:#333;
	color:#EEE;
	width:100%;
	display:block;	
	padding:7px 2px;
	border-bottom:none;	
	height:100%;
	box-shadow:none;
}
.titlebox a {
background:#F00;
}

.nolinks{
	margin-top:5px !important;
	width:20%;
}
.titlebox-wrap .nolinks {
	width:50%;
	margin-top:0px !important;
	padding:7px 2px;
	}

.archivebox a:hover,.titlebox a:hover{
	background: #f44336;
	color:#FFF;
}

/* ページTOPボタン
--------------------------------------------------*/	
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
#page-top a {
    text-decoration: none;
    color: #fff;
    width: 60px;
    height:60px;
    padding: 18px 0;
    text-align: center;
    display: block;
    background: #F00;
    border-radius: 50%;
    border: 1px solid rgba(255, 0, 0, 0.9);
	text-align:center;
	-webkit-transition: background-color .35s ease-out,color .35s ease-out;
    transition: background-color .35s ease-out,color .35s ease-out;
}
#page-top a:hover {
    text-decoration: none;
background-color: rgba(255, 0, 0, 0.6);
}

#page-top svg {
    width: 20px;
    height: 20px;
    position: relative;
}
#page-top svg g path {
    fill: #fff;
}
@media only screen and (max-width: 480px) {
#page-top {
	positition:relative;
	font-size: 65%;
	bottom: 10px;
    right: 10px;
}
#page-top a {
    width: 55px;
	height:55px;
    padding: 15px 0;
}
}

/* @media
--------------------------------------------------*/
@media screen and (max-width:48em) {
h1 { 
	font-size: 1.8rem;
	line-height:1.4em;
	margin:0 0 1em;
}

h2 { 
	font-size: 1.6rem;

}
h3 { 
	font-size: 1.5rem;
}	
}

@media screen and (min-width:769px) {
	.sp-only {
	display:none;
}
}

