@charset "UTF-8";
/* ******************************************************************

 For Foundation of Style
 
******************************************************************* */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;800;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700&family=Roboto+Condensed:wght@300;400&display=swap');

html{
/*	background:#ededed;
	height: 100%;*/
	font-size:62.5%;
/*	scroll-behavior: smooth;*/
}
* { 
    margin: 0px; 
    padding: 0px; 
}
body{
	height: 100%;
	margin:0;
	padding:0;
	color:#454343;
	background:#FFF;
	text-align:center;
	font-size:16px;
	font-size:1.6rem;
	font-weight: 300;
	_font-size     :x-small;/* winIE5.x only */
	_fo\nt-size    :x-small;/* winIE6 only */
	font-family: 'Noto Sans JP', sans-serif;
	line-height:180%;
}
.serif{
	font-family: 'Noto Serif JP', serif;
}
hr{ display:none;}
.non{ display:none;}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,fieldset,legend,input,textarea,p,blockquote,th,td{
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
	empty-cells:show;
}
fieldset,img{
	border:0;
}
address,caption,cite,em,th {
	font-style:normal;
	font-weight:normal;
}
caption,th{
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
/*	font-weight:normal;*/
}
abbr,acronym {
	border:0;
}
input,textarea,select {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
input,textarea,select {
	*font-size:100%;
}
img {
	vertical-align:top;
}
ul{
	list-style: none;
}
.small{
	font-size:1.0rem;
}
/* ****************************
	 Link
**************************** */
a:link,
a:visited {
	color:#000;
	text-decoration: none;
}
a:hover,
a:active {
	color: #000;
	text-decoration: none;
}

/* ****************************
	clearFix
**************************** */
.clearFix:after {
  content: "";
  clear: both;
  display: table;
}
/* ---- for IE7 and Mac ---- */
.clearFix {
	display: inline-block;
	min-height: 1%;
	/* escape MacIE5 \*/
	display: block;
	/* escape MacIE5 */
}
/* ---- for IE5 IE6... ---- */
/* escape MacIE5 \*/
* html .clearFix {
	height: 1%;
}
/* escape MacIE5 */

.clear{
	clear:both;
}
#not-found{
	width:100%;
	text-align:center;
}

/* *******************************************************************

	Layout

******************************************************************* */
#layout{
	width:100%;
/*	text-align:left;*/
	background:#FFF;
}
.contents-layout{
	width:1100px;
	min-width:1100px;
	text-align:left;
	margin:0 auto;
	position:relative;
}
.main-contents{
	width:1020px;
	text-align:center;
	background:#FFF;
	position:relative;
	margin:0 auto;
}

/* *******************************************************************

	Header Home

******************************************************************* */
#mobile-header{
	display:none;
}
.menu-opener,
.mobile-menu{
	display:none;
}
header{
	width:100%;
	border-bottom:1px solid #8f8d00;
	padding-top:43px;
	padding-bottom:20px;
}
.header-content{
	width:1100px;
	margin:0 auto;
	display:grid;
	grid-template-columns: 690px 420px;
}
#logo{
	text-align:left;
}
#logo .image{
	margin-bottom:20px;
}
#logo .image img{
	width:288px;
	height:100px;
}
#logo .site-title{
	font-size:1.5rem;
	line-height:160%;
	font-weight:400;
}
#logo .site-title span{
	letter-spacing:0.04rem;
}
.header-content ul{
	padding-top:65px;
}
.header-content li{
	float:left;
	padding:0 20px;
	font-size:1.5rem;
	font-weight:400;
}
.header-content li a:hover,
.header-content li a.on{
	color:#8f8d00;
}
.header-content li a{
	position: relative;
	padding-bottom:3px;
}
.header-content li a:hover::before,
.header-content li a.on::before{
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -15px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #8f8d00;
	border-right: 1px solid #8f8d00;
	transform: rotate(45deg);
}

/* *******************************************************************

	Footer

******************************************************************* */
footer{
	width:100%;
	border-top:1px solid #8f8d00;
	padding-top:40px;
	padding-bottom:40px;
}
.footer-content{
	width:1100px;
	margin:0 auto;
	text-align:left;
	position:relative;
	display:grid;
	grid-template-columns: 700px 400px;
}
.footer-content dl dt{
	font-size:1.2rem;
	font-weight:700;
	color:#000;
}
.footer-content dl dd a{
	font-size:1.2rem;
	font-weight:400;
	color:#000;
}
.footer-content .mail{
	font-size:1.2rem;
	line-height:180%;
	text-align:right;
	font-weight:400;
	color:#000;
}
.footer-content .mail span.title{
	display:block;
	font-weight:500;
}
.footer-content .mail span.address{
	display:block;
	font-weight:700;
	margin-top:15px;
	position: relative;
}
.footer-content .mail span.address a{
	border:1px solid #000;	
	padding:4px 50px 5px 29px;
	font-weight:400;
	color:inherit;
	position: relative;
}
.footer-content .mail span.address:after{
	content: "";
	width: 30px;
	height: 30px;
	background:url(../img/footer_mail.png) no-repeat;
	top: 7px;
	right: 10px;
	position: absolute;
	display: inline-block;
}
.footer-content .copyright{
	margin:50px 0 0 0;
	font-size:1.2rem;
	font-family:'Roboto Condensed', sans-serif;
	font-weight:400;
	letter-spacing:0.1rem;
}
/* *******************************************************************

	Margins

******************************************************************* */
.mg-btm-20{	margin-bottom:20px !important;}
.mg-btm-30{	margin-bottom:30px !important;}
.mg-btm-40{	margin-bottom:40px !important;}
.mg-btm-50{	margin-bottom:50px !important;}
.mg-btm-60{	margin-bottom:60px !important;}
.mg-btm-70{	margin-bottom:70px !important;}
.mg-btm-80{	margin-bottom:80px !important;}
.mg-btm-90{	margin-bottom:90px !important;}
.mg-btm-100{	margin-bottom:100px !important;}
.mg-btm-200{	margin-bottom:200px !important;}

/* *******************************************************************

	Index

******************************************************************* */

.contents-layout.index{
	display:grid;
	grid-template-columns:712px 300px;
	column-gap:88px;
	padding-top:88px;
}

h2.index{
	font-size:2.8rem;
	font-weight:400;
	margin-bottom:35px;
}
h3.index{
	font-size:1.6rem;
	font-weight:700;
	line-height:240%;
}
.main-text{
	font-size:1.6rem;
	font-weight:400;
	line-height:240%;
}
.index-link{
	text-align:right;
	margin-top:20px;	
}
.index-link a{
	position: relative;
	color:#8f8d00;
	font-weight:400;
}
.index-link a::before{
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -15px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #8f8d00;
	border-right: 1px solid #8f8d00;
	transform: rotate(45deg);
}
/* ----------------------
	New
----------------------- */
.archive-news-layout{
	text-align:left;
	margin:0 auto;
	width:1000px;
	padding-bottom:180px;
}
.archive-news-layout a.news-list{
	margin:0 auto;
	width:1000px;
	display:grid;
	grid-template-columns: 185px 1fr;
	grid-template-rows: 55px 1fr;
	grid-column-gap:35px;
	margin-bottom:60px;
}
.archive-news-layout .pic{
    grid-column: 1 / 2;
    grid-row:1 / 3;
    width: 185px;
    height: auto;
    margin-bottom: 0;
    background: none;
}

.archive-news-layout .pic img{
	width:185px;
	height:auto;
}
.archive-news-layout .date{
	grid-column: 2 / 3;
    grid-row:1 / 2;
	font-size:1.5rem;
	font-weight:700;
	color:#8f8d00;
	padding-top:10px;
}
.archive-news-layout .text{
	grid-column: 2 / 3;
    grid-row:2 / 3;
	font-size:1.6rem;
	color:#565858;
	line-height:140%;
	font-weight:400;
}
.archive-news-layout .news-more{
	width:auto;
}
.archive-news-layout .news-more a{
	border:1px solid #8f8d00;
	padding:2rem 10rem;
	font-size:2rem;
	font-weight:500;
	letter-spacing:0.05rem;
	color:#454343;
	display:inline-block;
	margin-top:30px;
}
.archive-news-layout .news-more a:hover{
	color:#8f8d00;
}
/* ----------------------
	Profile
----------------------- */
.contents-layout.page{
	width:1100px;
	padding-top:88px;
}
.contents-layout.page .index-left{
	width:715px;
	margin-left:0;
}
h4.index-profile{
	font-size:2.4rem;
	font-weight:400;
	line-height:150%;
	margin-bottom:30px;
}
h4.index-profile span{
	font-size:1.8rem;
}
.index-right .title{
	font-size:1.6rem;
	margin-bottom:20px;
	font-weight:400;
}
.index-right .field{
	font-size:1.6rem;
	margin-bottom:40px;
	font-weight:400;
	line-height:200%;
}
.index-right .field span{
	display:block;
	font-weight:700;
}
.index-right .profile-more{
	width:100%;
}
.index-right .profile-more a{
	width:100%;
	border:1px solid #8f8d00;
	padding:1.6rem 0;
	font-size:2rem;
	font-weight:400;
	letter-spacing:0.05rem;
	color:#454343;
	display:inline-block;
	margin-top:0px;
	text-align:center;
}
.index-right .profile-more a:hover{
	color:#8f8d00;
}

/* *******************************************************************

	Profile

******************************************************************* */
h2.profile{
	font-size:2.6rem;
	font-weight:400;
	margin-bottom:25px;
	line-height:140%;
}
h2.profile span{
	font-size:1.8rem;
	font-weight:400;
}
h3.profile{
	font-size:1.5rem;
	font-weight:500;
}
h3.bio{
	font-size:1.5rem;
	font-weight:500;
	color:#5e5a5a;
	margin-bottom:20px;
	line-height:160%;
}
.profile-text{
	font-size:1.5rem;
	font-weight:300;
	line-height:220%;
	margin-bottom:200px;
}

/* *******************************************************************

	NEWS

******************************************************************* */

.contents-layout.news{
	padding-top:40px;
}
.yearly ul{
	padding-bottom:30px;
}
.yearly li{
	float:left;
	color:#8f8d00;
	font-weight:700;
	padding-bottom:60px;
	padding-right:12px;
}
.yearly li a{
	color:#8f8d00;
	font-size:1.6rem;
	font-weight:700;
}
.yearly li a:after{
	content:'/';
	padding-left:12px;
}
.yearly li:last-child a::after{
	content:'';
	padding-left:0;
}


h2.news {
    font-size: 2.8rem;
    font-weight: 400;
    margin-bottom: 50px;
}
.contents-layout.news .archive-news-layout{
	text-align:left;
	margin:0 auto;
	width:1100px;
	padding-bottom:180px;
}
.contents-layout.news .archive-news-layout a.news-list{
	margin:0 auto;
	width:1100px;
	display:grid;
	grid-template-columns: 185px 1fr;
	grid-template-rows: 55px 1fr;
	grid-column-gap:35px;
	margin-bottom:60px;
}
.contents-layout.news .archive-news-layout .pic{
    grid-column: 1 / 2;
    grid-row:1 / 3;
    width: 185px;
    height: auto;
    margin-bottom: 0;
    background: none;
}
.contents-layout.news .archive-news-layout .pic img{
	width:185px;
	height:auto;
}
.contents-layout.news .archive-news-layout .date{
	grid-column: 2 / 3;
    grid-row:1 / 2;
	font-size:1.5rem;
	font-weight:700;
	color:#8f8d00;
	padding-top:10px;
}
.contents-layout.news .archive-news-layout .text{
	grid-column: 2 / 3;
    grid-row:2 / 3;
	font-size:1.8rem;
	color:#565858;
	line-height:140%;
	font-weight:400;
}
.contents-layout.news-entry{
	padding-top:90px;
}
.news-content{
	width:955px;
	margin:0 auto;
}
.news-content .pic{
	padding-bottom:50px;
}
.news-content .date{
	font-size:1.5rem;
	font-weight:700;
	color:#8f8d00;
}
.news-content .title{
	font-size:2rem;
	font-weight:400;
	margin-top:15px;
	margin-bottom:35px;
}
.news-content .text{
	font-size:1.6rem;
	font-weight:400;
	line-height:250%;
}
.news-content .text a{
	color:#8f8d00;
}
.news-post-nav{
	text-align:center;
	margin:120px 0 80px 0;
}
.news-post-nav div{
	margin:0 18vh;
}
.news-post-nav .back{
	display:inline-block;
	width:3vh;
	height:3vh;
	border-top:1px solid #000;
	border-left:1px solid #000;
	transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
}
.news-post-nav .forward{
	display:inline-block;
	width:3vh;
	height:3vh;
	border-top:1px solid #000;
	border-right:1px solid #000;
	transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
}
.news-post-nav .back a,
.news-post-nav .forward a{
	padding:4vh;
}
.news-post-nav .back.empty,
.news-post-nav .forward.empty{
	border-color:#dedede;
}

/* *******************************************************************

	Koma2

******************************************************************* */


