@charset "utf-8";

/******** body ********/
html{
  scroll-behavior: smooth;
}
body{
	color: #444;
	font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
	font-size: 14px;
	line-height: 1.5;
}
@media screen and (min-width:768px){
	body{
		font-size: 16px;
	}
}
img{
	width: 100%;
}
.wrapper{
	width: 100%;
}

/******** main ********/

/* container */
.container, .container-2col{
	padding: 28px 0;
	/* border-bottom: solid 1px #efefef; */
}
.container:last-child{
	border-bottom: 0;
}
@media screen and (min-width: 768px){
	.container{
		padding: 42px 0;
		margin:  auto;
	}
}

/******** article section content ********/

.article, .section, .content{
	width: 90%; 
	margin: auto;
}
/* 大見出し */
.article-header, .section-header, .content-header{

	margin-bottom: 38px;
}
.article-header h2, .section-header h2, .content-header h2{
	font-size: 38px;
	font-family: 'Crimson Text', serif;
	/*font-weight: 400;
	letter-spacing: 0.05rem;*/
	line-height: 1.4;
	/*transform: scale(1, 0.9);*/
}
.article-header p, .section-header p, .content-header p{
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.05rem;
	color: #666;
}
@media screen and (min-width: 768px){
	/* 大見出し */
	.article-header, .section-header, .content-header{
		margin-bottom: 52px;
	}
	.article-header h2, .section-header h2, .content-header h2{
		font-size: 52px;
	}
	.article-header p, .section-header p, .content-header p{
		font-size: 13px;
	}
}
@media screen and (min-width:1240px){
	.article, .section, .content{
		box-sizing: border-box;
		width: 95%;
		padding: 0 60px;
		margin: auto;
	}
	.section-news-summary{
		font-size: 18px;
	}
}
@media screen and (min-width:1400px){
	.article, .section, .content{
		width: 1400px;
	}
}

/******** info-btn(固定のお知らせ欄) ********/
.info-btn{
	margin: 16px auto;
}
.info-btn a{
	display: block;
	width: 100%;
	border-radius: 2px;
	color: #333;
	padding: 5px;
	border: solid 1px #333;
	transition: all 0.3s ease-out;
}
.info-btn a:hover{
	background-color: #333;
	color: #fff;
}
.info-btn a::before{
	content: "i";
	text-align: center;
	display: inline-block;
	font-weight: bold;
	margin-right: 0.5rem;
	color: #fff;
	background-color: #333;
	width: 20px;
	height: 20px;
	border-radius: 100%;
}

/******** スクロールバー ********/

/*スクロールバーの横幅指定*/
.scrollArea::scrollbar {
    width: 8px;
    height: 8px;
}
.scrollArea::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
/*スクロールバーの背景色・角丸指定*/
.scrollArea::scrollbar-track {
  	border-radius: 10px;
	background: #f0f0f0;
}
.scrollArea::-webkit-scrollbar-track {
  	border-radius: 10px;
	background: #f0f0f0;
}
/*スクロールバーの色・角丸指定*/
.scrollArea::scrollbar-thumb {
  	border-radius: 10px;
	background:#afafaf;
}
.scrollArea::-webkit-scrollbar-thumb {
  	border-radius: 10px;
	background:#afafaf;
}

/******** ボタン類(btn) ********/

/* 詳しく見るボタン */
.seeMore{
	display: inline-block;
	font-size: 11px;
	color: #000;
	margin-top: 1rem;
	border: solid 1px #000;
	border-radius: 2px;
	padding: 4px; 
}
.seeMore::before{
	content: url(../images/list_arrow.png);
	margin-right: 0.2rem;
}
/* 黒ボタン デフォルトは白文字*/
.btn-01{
	font-size: 11px;
	width: 150px;
	padding: 8px 4px;
	margin: 28px auto 36px auto;
	display: block;
	box-sizing: border-box;
	border: solid 1px #000;
	border-radius: 2px;
	background: #000;
	text-align: center;
	text-decoration: none;
	color: #fff;
	position: relative; /* ボタン内アイコン用 */
	transition: all 0.5s ease-out;
}
.btn-01::before{
	content: url(../images/btn_arrow.png);
	margin-right: 0.5rem;
}
.btn-01:hover{
	border: solid 1px #999;
	background: #999;
}
/* 角丸枠のみボタン デフォルトはグレー枠黒文字*/
.btn-02{
	display: block;
	box-sizing: border-box;
	border: solid 1px #666;
	border-radius: 50px;
	text-align: center;
	text-decoration: none;
	color: #000;
	position: relative; /* ボタン内アイコン用 */
	transition: all 0.5s ease-out;
}
.btn-02:hover{
	background: #666;
	color: #ccc;
}
/* 四角い枠のみのボタン デフォルトは黒線・文字*/
.btn-03{
	display: block;
	box-sizing: border-box;
	border: solid 1px #000;
	text-align: center;
	text-decoration: none;
	color: #000;
	position: relative; /* ボタン内アイコン用 */
	transition: all 0.5s ease-out;
}
.btn-03:hover{
	background: #ccc;
	border: solid 1px #fff;
	color: #fff;
}
@media screen and (min-width: 768px){
	.btn-01{
		margin: 36px auto 0 auto;
	}
}
.pointer:hover{
	cursor: pointer;
}
/* a i.fa-chevron-right{
	position: absolute;
	right: 5px;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 1rem;
}*/

/******** ムービーコンテナ幅いっぱい ********/
.movie-w100-container{
	background: #000;
}
/* Youtube比率調整用 */
.movie-box{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie-box iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/******** コンテナのフェード  ********/
.effect-fade{
	opacity : 0;
	transform : translate(-50px, 0);
	transition : all 2000ms;
}
.effect-fade.effect-scroll{
	opacity : 1;
	transform : translate(0, 0);
}
/******** ぼかしエフェクト  ********/
.blur{
	-ms-filter: blur(20px);
  	filter: blur(20px);
	transition : all 1500ms;
}
.blur.blur-scroll{
	-ms-filter: blur(0);
  	filter: blur(0);
}

	