@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');


*{margin:0;padding:0;text-decoration:none}fieldset{border:0}body{line-height:1.8}body,dd,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,select,ul{margin:0;padding:0}img{border:0;vertical-align:top}a{text-decoration:none}em{font-style:normal}ul li{list-style-type:none;list-style-image:none}address{font-style:normal}
html{font-size: 62.5%;}
body{font-size: 1.6em;}



ul {
}
ul li {
	list-style:none;	
}

input[type="button"],input[type="text"],input[type="submit"],input[type="image"],textarea{
    -webkit-appearance: none;
    border-radius: 0;
}

/* box-sizing */ 
* {
	box-sizing: border-box;
}




/* リンク */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
a {
	color: #000;
}


/* テキスト装飾 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

.pc {
	display: block;
}
.sp {
	display: none;
}
table {
	width: 100%;
	border-collapse: collapse;
}
	table th {
	}
	table td {
	}


/* float解除 */
.cbox { 
}
* html .cbox {
	zoom: 100%;
}
*:first-child+html .cbox {
	display: inline-block;
}
.cbox:after {
	content: "."; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}







/* 横幅 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
body {
	position: relative;
	font-family: "Noto Sans JP";
	font-weight: 500;
	background: #282828;
	color: #FFF;
	padding: 0;
	margin: 0;
	letter-spacing: 1px;
	line-height: 2.4;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	/*text-align: justify;*/
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}

.set {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	
	-webkit-flex-wrap: wrap; 
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}


/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
	position: absolute;
	width: 100%;
	top: 0;
	padding: 20px;
	z-index: 200;
}
nav{
	font-size: 1.6rem;
	font-weight: 500;
	text-align: right;
}
	nav li {
		display: inline-block;
		margin-left: 20px;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.inner {
	width: 1200px;
	max-width: 90%;
	margin: 0 auto;
	position: relative;
}

.title {
	text-align: center;
	line-height: 1.4;
	position: relative;
	margin-bottom: 100px;
}
	.title h2 {
		font-size: 5rem;
		font-weight: 300;
		margin-bottom: 10px;
	}

.article {
	margin-bottom: 100px;
}
.cell {
	margin: 80px 0;
}




h3 {
	font-size: 3rem;
	font-weight: 300;
	padding-bottom: 10px;
	margin-bottom: 40px;
	border-bottom: solid 1px #737373;
}





/*== ボタン共通設定 */
.btn{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
	overflow: hidden;
    /*ボタンの形状*/
	text-decoration: none;
	display: block;
   	border: 1px solid #e60000;/* ボーダーの色と太さ */
	background: #e60000;
    padding: 5px 40px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/   
    transition: ease .2s;
}

/*ボタン内spanの形状*/
.btn span {
	position: relative;
	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
	color:#FFF;
}

.btn:hover span{
	color:#fff;
}

/*== 背景が流れる（左から右） */
.bgleft:before {
 	content: '';
    /*絶対配置で位置を指定*/
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
    /*色や形状*/
 	background:#000;/*背景色*/
 	width: 100%;
	height: 100%;
    /*アニメーション*/
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}

/*hoverした際の形状*/
.bgleft:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
}



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#footer {
	font-size: 1.2rem;
	text-align: center;
	padding: 10px 0;
}

	#footer p {
		color: #FFF;
	}






/* max 1023px */
@media screen and (max-width: 1023px) {
.pc {
	display: none;
}
.sp {
	display: block;
}

	
	
body {
	line-height: 1.8;
	font-size: 1.4rem;
}
table {
}
	table th {
		display: block;
		width: 100%;
	}
	table td {
		display: block;
		width: 100%;
	}
	
	
	
	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
	display: none;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.title {
	margin-bottom: 80px;
}
	.title h2 {
		font-size: 2.4rem;
	}
	.title p {
		font-size: 1.2rem;
	}

	
.article {
	margin-bottom: 10%;
}

.cell {
	margin: 10% 0;
}
	

h3 {
	font-size: 2rem;
	font-weight: 300;
	padding-bottom: 10px;
	margin-bottom: 40px;
	border-bottom: solid 1px #737373;
}
	
	
	
	
/*== ボタン共通設定 */
.btn{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
	overflow: hidden;
    /*ボタンの形状*/
	text-decoration: none;
	display: block;
   	border: 1px solid #e60000;/* ボーダーの色と太さ */
	background: #e60000;
    padding: 5px 10px;
    text-align: center;
    outline: none;
    /*アニメーションの指定*/   
    transition: ease .2s;
	
	font-size: 1.2rem;
}

/*ボタン内spanの形状*/
.btn span {
	position: relative;
	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
	color:#FFF;
}

.btn:hover span{
	color:#fff;
}

/*== 背景が流れる（左から右） */
.bgleft:before {
 	content: '';
    /*絶対配置で位置を指定*/
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
    /*色や形状*/
 	background:#000;/*背景色*/
 	width: 100%;
	height: 100%;
    /*アニメーション*/
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}

/*hoverした際の形状*/
.bgleft:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
}

	
	
	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

	
}