@charset "utf-8";
/***************************************************/
/*==================== 基本設定 ====================*/
/***************************************************/
html {
	font-size: 62.5%;								 /* フォントサイズ */
	scroll-behavior: smooth;
}
body {
	background-color: white;						/* 背景色 白 */
	color: #787878;								/* 文字色 文字の色 */
	font-family: 'Noto Sans JP', sans-serif;		 /* ゴシック体 */
	text-align: center;								 /* センタリング */
	margin: 0;										 /* 外側余白 */
	padding: 0;										 /* 内側余白 */
}
a {
	text-decoration: none;
}
ul {
	list-style: none;
}
table {
	padding: 0;										/* 内側余白 */
	border: 0;										/* 外枠の太さ */
	margin-left: auto;								/* 外側左余白 */
	margin-right: auto;								/* 外側右余白 */
}
img {
	border: 0;										/* 囲い線無し(IE用?) */
}
figure {
	margin: 0;
	padding: 0;
}
/*-------------------- DIV --------------------*/
article {
	margin: 0 auto;
	padding-bottom: 30px;
	text-align: center;
}
section {
	width: 1000px;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:999px) {
	section {
		width: 100vw;
		margin: 0 auto;
		text-align: center;
	}
}
div.div_sp_top_100{
	margin-top: 100px;
}
/*==================== 共通 ====================*/
section.sxn_s_top {
	width: 100%;
	margin-top: 75px;
	text-align: center;
}
@media screen and (max-width:999px) {
	section.sxn_s_top {
		margin-top: 20px;
		width: 100vw;
	}
}
@media print {										/* 印刷時 */
	section.sxn_s_top {
		margin-top: 0;
	}
}
section.sxn_sp_150 {
	margin-top: 150px;
}
@media screen and (max-width:480px) {
	section.sxn_sp_150 {
		margin-top: 50px;
	}
}
section.sxn_sp_075 {
	margin-top: 75px;
}
section.sxn_end_200 {
	margin-bottom: 200px;
}
/*-------------------- Link Color --------------------*/
a:link {
	color: #787878; 								/*未訪問Linkの色*/
}
a:visited {
	color: #787878;								/*訪問済Linkの色*/
}
a:hover {
	clear: black;									/*リンク上にカーソルがある間の色*/
	transition: color 0.8s;							 /* ゆっくり色が変わる */
}
a:active {
	color: #787878;								/*カーソルを押してる間の色*/
}
/*==================== font ====================*/
/*日本語ゴシック*/
.f10_g_l1 {											 /* ○ */
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.2rem;
	letter-spacing: 0.2rem;
}
.f14_g_l3 {											 /* ○ */
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
.f20_g_l3 {											 /* ○ */
	font-size: 2rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
/*alphabet ゴシック*/
.f10_g_a {											 /* ○ */
	font-size: 1rem;
	font-weight: 300;
	letter-spacing: 0rem;
}
.f13_g_a {											 /* ○ */
	font-size: 1.3rem;
	font-weight: 300;
	letter-spacing: 0.1rem;
}
.f20_g_a_l0 {										 /* ○ */
	font-size: 2rem;
	font-weight: 300;
	letter-spacing: 0.1rem;
	line-height: 0;
}
/*****************************************************/
/*==================== LINK_Mark ====================*/
/*****************************************************/
/*--------------- 色変化無 ---------------*/
.link_l_0 {
	position: relative;
	padding: 7px 0;
	display: inline-block;
	transition: 0.3s;
	color: #787878;
}
.link_l_0::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #787878;
	transition: 0.3s;
	transform: translateX(-50%);
}
.link_l_0:hover::after {
	width: 100%;
}
.link_l_0:hover img {
	transition-duration: 0.3s;
}
/*--------------- opacity ---------------*/
.link_l_1 {
	position: relative;
	padding: 7px 3px;
	display: inline-block;
	transition: 0.3s;
	color: #787878;
}
.link_l_1::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #787878;
	transition: 0.3s;
	transform: translateX(-50%);
}
.link_l_1:hover::after {
	width: 100%;
}
.link_l_1:hover img {
	opacity: 0.6;
	transition-duration: 0.3s;
}
/**************************************************/
/*==================== arrows ====================*/
/**************************************************/
/*========== arrows_1 ==========*/
.arrows_1 *, .arrows_1 *:before, .arrows_1 *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.arrows_1 {
	position: relative;
	display: flex;
	height: 0px;
	margin: 2em auto;
	justify-content: center;
	align-items: center;
}
.arrows_1 .arrow_1 {
	position: absolute;
	left: calc ( 50vw - 30px );
	width: 60px;
	height: 10px; /* 太さ */
	-webkit-transform: scale(0.3);
			transform: scale(0.3);
	-webkit-animation: arrow-move_1 3s ease-out infinite;
			animation: arrow-move_1 3s ease-out infinite;
	opacity: 0;
}
.arrows_1 .arrow_1:nth-child(1) {
	-webkit-animation: arrow-move_1 3s ease-out 1s infinite;
			animation: arrow-move_1 3s ease-out 1s infinite;
}
.arrows_1 .arrow_1:nth-child(2) {
	-webkit-animation: arrow-move_1 3s ease-out 2s infinite;
			animation: arrow-move_1 3s ease-out 2s infinite;
}
.arrows_1 .arrow_1:before,
.arrows_1 .arrow_1:after {
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	content: '';
	border-radius: 2px;
	background: #787878;
}
.arrows_1 .arrow_1:before {
	left: 1px;
	-webkit-transform: skewY(30deg);
			transform: skewY(30deg);
}
.arrows_1 .arrow_1:after {
	right: 1px;
	width: 50%;
	-webkit-transform: skewY(-30deg);
			transform: skewY(-30deg);
}
@-webkit-keyframes arrow-move_1 {
	25% {
		opacity: 0.6;
	}
	43.75% {
		-webkit-transform: translateY(1em);
				transform: translateY(1em);
		opacity: 0.8;
	}
	62.5% {
		-webkit-transform: translateY(2em);
				transform: translateY(2em);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(3em) scale(0.5);
				transform: translateY(3em) scale(0.5);
		opacity: 0;
	}
}
@keyframes arrow-move_1 {
	25% {
		opacity: 0.6;
	}
	43.75% {
		-webkit-transform: translateY(1em);
				transform: translateY(1em);
		opacity: 0.8;
	}
	62.5% {
		-webkit-transform: translateY(2em);
				transform: translateY(2em);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(3em) scale(0.5);
				transform: translateY(3em) scale(0.5);
		opacity: 0;
	}
}
/*========== arrows_2 ==========*/
.arrows_2 *, .arrows_2 *:before, .arrows_2 *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.arrows_2 {
	position: relative;
	display: flex;
	height: 0px;
	margin: 2em auto;
	justify-content: center;
	align-items: center;
}
.arrows_2 .arrow_2 {
	position: absolute;
	top: calc(100% - 0px);
	left: 50%;
	width: 40px;
	height: 40px;
}
.arrows_2 .arrow_2::before,
.arrows_2 .arrow_2::after {
	position: absolute;
	display: block;
	width: 2px;
	height: 20px;
	content: '';
	-webkit-transition: all 0.3s ease-in-out;
			transition: all 0.3s ease-in-out;
	-webkit-transform: translate(-50%, -50%) rotateZ(-60deg);
			transform: translate(-50%, -50%) rotateZ(-60deg);
	transform-origin: bottom right;
	border-radius: 10px;
	background: #787878;
}
.arrows_2 .arrow_2::after {
	-webkit-transform: translate(-50%, -50%) rotateZ(60deg);
			transform: translate(-50%, -50%) rotateZ(60deg);
	-webkit-transform-origin: bottom left;
			transform-origin: bottom left;
}
.arrows_2 .bounce_2 {
	-webkit-animation: arrow-move_2 2s infinite ease-in-out;
			animation: arrow-move_2 2s infinite ease-in-out;
}
@-webkit-keyframes arrow-move_2 {
	0%, 20%, 50%, 80%, 100% {
		-webkit-transform: translateY(0);
				transform: translateY(0);
	}
	48% {
		-webkit-transform: translateY(-20px);
				transform: translateY(-20px);
	}
	60% {
		-webkit-transform: translateY(-15px);
				transform: translateY(-15px);
	}
}
@keyframes arrow-move_2 {
	0%, 20%, 50%, 80%, 100% {
		-webkit-transform: translateY(0);
				transform: translateY(0);
	}
	48% {
		-webkit-transform: translateY(-20px);
				transform: translateY(-20px);
	}
	60% {
		-webkit-transform: translateY(-15px);
				transform: translateY(-15px);
	}
}
/*******************************************************/
/*==================== breadcrumb  ====================*/
/*******************************************************/
div.div_breadcrumb {
	margin: 0 auto;
	padding: 20px 0;
}
.breadcrumb *, .breadcrumb *:after, .breadcrumb *:before {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.breadcrumb {
	width: 100%;
	padding: 10px 0px;
/*
	background-color: whitesmoke;
	color: red;
	border-radius: 0.5em;
*/
}
.breadcrumb a {
	text-decoration: none;
	color: silver;
}
.breadcrumb .breadcrumbs {
	padding-left: 0;
	padding-right: 0;
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
}
.breadcrumb li {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1rem;
	letter-spacing: 0.1rem;
	display: inline-block;
	position: relative;
	padding-right: calc(16px + 8px);
	margin-right: 8px;
	color: #787878;
}
.breadcrumb li::before {
	content: '›';
	width: 12px;
	height: 12px;
	line-height: 1;
	text-align: center;
	font-size: 1.2rem;
	color: inherit;									/* 親のスタイルを継承 */
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
			transform: translateY(-50%);
}
.breadcrumb li:last-child {
	margin-right: 0;
	padding-right: 0;
	color: #787878;
}
.breadcrumb li:last-child::before {
	content: normal;
}
@media screen and (max-width:999px) {
	div.div_breadcrumb {
		display: none;
	}
}
/**************************************************/
/*==================== header ====================*/
/**************************************************/
header {
	margin: 0 auto;
	text-align: center;
}
/*==================== MAIN-Menu ====================*/
.main-menu {
	background: rgba(255,255,255,0.95);			/*背景を白色に*/
	box-shadow: 0 2px 8px rgba(30,30,80,0.3);		/*影*/
	top: 0;
	left: 0;
	position: fixed;								 /* 位置を固定 */
	width: 100%;
	z-index: 999;
	padding: 1rem 0;
}
@media screen and (max-width:999px) {
	.fix-menu {
		position: static;
		width: 100vw;
	}
}
@media print {										 /* 印刷時 */
	.main-menu {
		position: static;
	}
}
/*==================== NAVI ====================*/
.navi {
	border-radius: 4px;
	color: #888888;
	display: block;
	overflow: hidden;
	width: 100%;
}
.navi  ul {
	margin: 0;
	padding: 0;
}
.navi ul li {
	display: inline-block;
	list-style-type: none;
	-webkit-transition: all 0.5s;
			transition: all 0.5s;
}
@media screen and (max-width:999px) {
	.navi {
		width: 100vw;
	}
	.navi ul li {
		display: block;
		height: 50px;
	}
}
.navi > ul > li > a > .caret {
	border-top: 4px solid #aaaaaa;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	content: '';
	display: inline-block;
	height: 0;
	width: 0;
	vertical-align: middle;
	-webkit-transition: color 0.1s linear;
			transition: color 0.1s linear;
}
.navi > ul > li > a {
	color: #787878;								/* ロゴ同色 */
	display: block;
	line-height: 55px;							 	 /* Main menu HEIGHT */
	padding: 0 25px;								 /* Main menu 横 余白 */
	text-decoration: none;
}
.navi > ul > li > a > img {
	vertical-align: middle;
	height: 35px;
	margin-right: 30px; 
	padding-top: 0;
}
/* Main Menu BG Color */
/*
.navi > ul > li:hover {
	background-color: rgba( 240, 240, 240, 0.8);
}
*/
/* Main Menu a Color */
.navi > ul > li:nth-child(n + 2):hover > a {
	color: rgb( 0, 0, 0 );
	animation: zoom_navi 0.3s;						/* ぶるぶる元 */
}
.navi > ul > li:hover > a > .caret {
	border-top-color: rgb( 255, 255, 255 );
}
.navi > ul > li > div {
	background-color: rgba(255,255,255,0.95);
	border-top: 0;
	border-radius: 0 0 4px 4px;
	box-shadow: 0 2px 2px 0 rgba(30, 30, 80, 0.3);
	display: none;
	margin: 0;
	opacity: 0;
	position: absolute;
	white-space: nowrap;							/* 改行禁止 */
	width: 165px;
	visibility: hidden;								/* 非表示 */
	-webkit-transition: opacity 0.2s;
			transition: opacity 0.2s;
}
@media screen and (min-width:1000px) {
	.navi_img_sp {
		display: none;
	}
}
@media print {										/* 印刷時 */
	.navi_img_sp {
		display: none;
	}
}
@media screen and (max-width:999px) {
	.navi > ul > li > a > .caret {
		display: none;
	}
	.navi > ul > li > div > ul {
		display: none;
	}
	.navi > ul > li > div {
		top: 11vh;
		left: 58%;
		margin: 0;
	}
	.navi_img_sp {
		vertical-align: middle;
		height: 50px;
		margin-right: 0; 
		padding-top: 20px;
	}
}
.navi > ul > li:hover > div {
	display: block;
	opacity: 1;
	visibility: visible;							/* 表示 */
}
.navi > ul > li > div ul {
	padding: 0;
	margin: 0;
}
.navi > ul > li > div ul > li {
	display: block;
}
.navi > ul > li > div ul > li > a {
	color: #787878;
	display: block;
	margin: 0;
	padding: 12px 24px;
	text-decoration: none;
}
.navi > ul > li > div ul > li:hover > a {
	background-color: rgba( 240, 240, 240, 0.8);	/* Sub Menu BG Color */
	color: rgb( 0, 0, 0 );
	animation: zoom_navi 0.3s;						 /* ぶるぶる元 */
}
@keyframes zoom_navi {
	50% {
		transform: scale(1.15);						 /* ぶるぶる拡大率 */
	}
}
/*==================== SP_Menu ====================*/
/* チェックボックス 非表示 */
.navi-hidden {
	display: none;
}
@media screen and (max-width:999px) {
	.main-menu {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 20px;
		background: white;
	}
	/* ハンバーガーアイコン 設置スペース */
	.navi-open {
		display: flex;
		height: 40px;
		width: 10px;
		justify-content: center;
		align-items: center;
		position: fixed;							/* 位置を固定 */
		z-index: 100;								/* 重なり順を一番下に */
		cursor: pointer;
	}
	/* ハンバーガーメニューのアイコン */
	.navi-open span,
	.navi-open span:before,
	.navi-open span:after {
		content: '';
		display: block;
		height: 4px;
		width: 30px;
		border-radius: 3px;
		background: #787878;
		transition: 0.5s;
		position: absolute;
	}
	/* 三本線 一番上 位置調整 */
	.navi-open span:before {
		bottom: 8px;
	}
	/* 三本線 一番下 位置調整 */
	.navi-open span:after {
		top: 8px;
	}
	/* アイコンがクリックされたら真ん中の線を透明にする */
	#navi-check:checked ~ .navi-open span {
		background: rgba(255, 255, 255, 0);
	}
	/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
	#navi-check:checked ~ .navi-open span::before {
		bottom: 0;
		transform: rotate(45deg);
	}
	
	#navi-check:checked ~ .navi-open span::after {
		top: 0;
		transform: rotate(-45deg);
	}
	/* メニューデザイン */
	.navi {
		/* 閉じる部分の領域 */
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		/* メニューを画面外へ */
		left: 100%;
		/* 重なりを一番上に */
		z-index: 99;
		background: white;
		transition: .5s;
	}
	/* アイコンがクリックされたらメニューを表示 */
	#navi-check:checked ~ .navi {
		left: 0;/* メニューを画面に入れる */
	}
}
/*=============== ブルブル ===============*/
.link_bulu {
	display: inline-block;
	padding: 1rem 0rem;
	font-size: 1.2rem;
	font-weight: 300;
	letter-spacing: 0.1rem;
}
.link_bulu:hover {
	animation: zoom .3s;
}
@keyframes zoom {
	50% {
		transform: scale(1.1);
	}
}
/******************************************************/
/*==================== Top Button ====================*/
/******************************************************/
#gotop {
	display: block;
	width: 50px;
	height: 50px;
	box-sizing: border-box;
	background: rgba( 255, 255, 255, 0.8);
	border: 1px solid #787878;
	padding-top: 30px;
	text-align: center;
	letter-spacing: -1px;
	font-size: 85%;
	text-decoration: none;
	color: #333;
	opacity: 0.5;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 999999;
}
#gotop::before {
	content: "";
	display: block;
	border-top: 2px solid black;
	border-right: 2px solid black;
	width: 25%;
	height: 25%;
	top: 25%;
	left: 0;
	right: 0;
	margin: auto;
	position: absolute;
	transform: rotate(-45deg);
}
#gotop:hover {
	opacity: 1;
}
/* SP */
@media screen and (max-width:999px) {
	#gotop{
		width: 40px;
		height: 40px;
		text-indent: -9999px;
		opacity: 1;
		border: none;
		background: none;
		bottom: 10px;
		right: 10px;
	}
	#gotop::before {
		bottom: 0;
	}
}
@media print {										/* 印刷時 */
	#gotop {
		display: none;
	}
}
/*************************************************/
/*==================== index ====================*/
/*************************************************/
/*==================== 共通 ====================*/
/*-------------------- DIV --------------------*/
div.div_idx_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_idx_a_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_idx_a_2 {
	text-align: right;
}
/*-------------------- dl dt dd --------------------*/
.ddt_idx_a_1 {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	margin: 10px;
}
/*=============== 0Block ===============*/
/*=============== Top Photo Animation ===============*/
/*=== 画像の表示エリア === */
.slide {
	position : relative;
	overflow : hidden;
	width : 100%;
	height : 85vh;
	margin : auto;
	background : gainsboro;
}
@media screen and (max-width:999px) {
	.slide {
		height: 40vh;
		width: 100vw;
	}
}
/*=== 画像の設定 === */
.slide img {
	filter: contrast(80%);							/* コントラスト 100%がオリジナル */
	object-fit: none;
	display: block;
	position: absolute;
/* 画像のサイズを表示エリアに合せる */
	width: inherit;									/* 親のスタイルを継承 */
	height: inherit;								/* 親のスタイルを継承 */
	opacity: 0;
	animation: slideAnime_main 28s ease infinite;
	animation-timing-function: ease;
}
/*=== スライドのアニメーションを段差で開始する === */
.slide img:nth-of-type(1) { animation-delay: 0s }
.slide img:nth-of-type(2) { animation-delay: 7s }
.slide img:nth-of-type(3) { animation-delay: 14s }
.slide img:nth-of-type(4) { animation-delay: 21s }
/*=== スライドのアニメーション === */
@keyframes slideAnime_main {
	 0% { opacity: 0 }
	12% { opacity: 1 }
	25% { opacity: 1 }
	37% { opacity: 0 }
   100% { opacity: 0 }
}
/*--------------- slide_title(現在未使用) ---------------*/
.slide_title {
	font-size: 7rem;
	font-weight: 900;
	letter-spacing: 0.1rem;
	font-style: oblique;
	color: black;
	text-shadow: -1px -1px 0 #787878, -1px 0 0 #787878, -1px 1px 0 #787878,
					0 -1px 0 #787878,                        0 1px 0 #787878,
				  1px -1px 0 #787878,  1px 0 0 #787878,  1px 1px 0 #787878;
	left: 0;
	position: absolute;
	right: 0;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
}
@media screen and (max-width:999px) {
	.slide_title {
		font-size: 3rem;
		font-weight: 900;
		top: 25%;
		transform: translateY(-50%);
		width: 100vw;
	}
}
/*=============== 1Block ===============*/
/*-------------------- section --------------------*/
section.sxn_idx_1_1 {
	margin-top: 200px;
}
@media screen and (max-width:480px) {
	section.sxn_idx_1_1 {
		margin-top: 100px;
	}
}
.img_idx_w_1_1 {
	width: 65%;
}
/*-------------------- DIV --------------------*/
div.div_idx_1_1 {
	display: inline-block;
	padding: 50px 0;
	vertical-align: middle;
}
div.div_idx_1_1 img {
	width: 475px;
}
@media screen and (max-width:480px) {
	div.div_idx_1_1 img {
		width: 90vw;
	}
}
div.div_idx_1_2 {
	display: inline-block;
	width: 50%;
	padding-left: 20px;
	text-align: left;
	vertical-align: middle;
}
div.div_idx_1_2 > span {
	display: inline-block;
	white-space: nowrap;
}
@media screen and (max-width:480px) {
	div.div_idx_1_2 {
		width: 80%;
	}
}
/*=============== 2Block ===============*/
/*-------------------- DIV --------------------*/
/* (div_idx_2_1) works.html 使用 */
div.div_idx_2_1 {
	display: inline-block;
	margin: 20px 15px 0 20px;
	vertical-align: top;
}
div.div_idx_2_1 > figure {
	text-align: center;
	vertical-align: middle;
}
div.div_idx_2_1 > figure > img {
	width: 450px;
}
@media screen and (max-width:999px) {
	div.div_idx_2_1 > figure > img {
		width: 90vw;
	}
}
div.div_idx_2_1 > div {
	margin: 0 auto;
	padding: 0;
	text-align: left;
	inline-size: 450px; /* 文章範囲 */
	height: 160px;
}
@media screen and (max-width:999px) {
	div.div_idx_2_1 > div {
		width: 90vw;
		height: auto;
	}
}
/*=============== 3Block ===============*/
/*-------------------- DIV --------------------*/
div.div_idx_3_1 {
	display: inline-block;
	margin: 20px 0 0 0;
	vertical-align: top;
}
div.div_idx_3_1 > figure {
	text-align: center;
	vertical-align: middle;
}
div.div_idx_3_1 > figure > img {
	width: 315px;
}
div.div_idx_3_1 > div {
	margin: 0 auto;
	padding: 0;
	inline-size: 315px; /* 文章範囲 */
	text-align: left;
	height: 180px;
}
div.div_idx_3_1 > div > dl > dt {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_idx_3_1 > div > p {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_idx_3_1 > div > p > time {
	margin-right: 10px;
	padding-right: 10px;
	border-right: #787878 solid 1px;
}
@media screen and (max-width:999px) {
	div.div_idx_3_1 > figure > img {
		width: 90vw;
	}
	div.div_idx_3_1 > div {
		width: 90vw;
		height: auto;
	}
}
/*=============== 4Block ===============*/
/*-------------------- DIV --------------------*/
/* (div_idx_4_1) about_us.html 使用 */
div.div_idx_4_1 {
	margin: 20px 0 0 0;
	padding: 0 0 10px 0;
}
/*---------- slide_4_1 ----------*/
/* (slide_4_1) about_us.html 使用 */
.slide_4_1 {
	position: relative;
	overflow: hidden;
	width: 1000px;
	height: 333px;
	margin: auto;
	background : gainsboro;
}
@media screen and (max-width:999px) {
	.slide_4_1 {
		height: 40vh;
		width: 100vw;
	}
}
/*=== 画像の設定 === */
.slide_4_1 img {
	object-fit: none;
	display: block;
	position: absolute;
	width: inherit;									/* 親のスタイルを継承 */
	height: inherit;								/* 親のスタイルを継承 */
	opacity: 0;
	animation: slideAnime_4-1 40s ease infinite;
	animation-timing-function: ease;
}
/*
@media screen and (max-width:999px) {
	.slide_4_1 img {
		width: 100vw;
		height: auto;
	}
}
*/
/*=== スライドのアニメーションを段差で開始する === */
.slide_4_1 img:nth-of-type(1) { animation-delay: 0s }
.slide_4_1 img:nth-of-type(2) { animation-delay: 5s }
.slide_4_1 img:nth-of-type(3) { animation-delay: 10s }
.slide_4_1 img:nth-of-type(4) { animation-delay: 15s }
.slide_4_1 img:nth-of-type(5) { animation-delay: 20s }
.slide_4_1 img:nth-of-type(6) { animation-delay: 25s }
.slide_4_1 img:nth-of-type(7) { animation-delay: 30s }
.slide_4_1 img:nth-of-type(8) { animation-delay: 35s }
/*=== スライドのアニメーション === */
@keyframes slideAnime_4-1 {
	 0% { opacity: 0 }
	 6% { opacity: 1 }
	12% { opacity: 1 }
	18% { opacity: 0 }
   100% { opacity: 0 }
}
/*=============== 5Block ===============*/
/*-------------------- DIV --------------------*/
div.div_idx_5_1 {
	margin: 20px 0 0 0;
	padding-bottom: 15px;
	vertical-align: top;
}
div.div_idx_5_2 {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
}
div.div_idx_5_2 > figure > img {
	width: 325px;
}
div.div_idx_5_2 > div {
	height: 70px;
}
div.div_idx_5_2 > div > dl {
	padding: 0 40px;
}
div.div_idx_5_2 > div > dl > dt {
	text-align: left;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.2rem;
	letter-spacing: 0.2rem;
}
div.div_idx_5_2 > div > dl > dt:last-child {		 /*You Tube 用*/
	text-align: center;
}
div.div_idx_5_2 > div > dl > dt > span {
	text-align: left;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2rem;
	letter-spacing: 0.2rem;
}
div.div_idx_5_2 > div > dl > dd {
	text-align: left;
	padding-top: 10px;
	margin: 0;
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.2rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_idx_5_1 > a:nth-child(n + 2) {
		display: none; /*２枚目以後非表示*/
	}
	div.div_idx_5_2 > figure > img {
		width: 100vw;
	}
	div.div_idx_5_2 > div > dl {
		padding: 0 20px;
	}
}
/*************************************************/
/*==================== WORKS ====================*/
/*************************************************/
/*-------------------- slide_wrk_1 --------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.slide_wrk_1 {
	width: 1000px;
	padding-top: 660px;			 				/* 画像の高さ */
	position: relative;
	margin: 30px auto;
	text-align: center;
}
.slide_wrk_1 > img {
	position: absolute;
	width: inherit; 							/* 親のスタイルを継承 */
	left: 0;
	top: 0;
	transition: all 0.5s;
	border-radius: 3px;
	/*box-shadow:0px 0px 5px 0px rgba(0,0,0,0.3);*/
}
.slide_wrk_1 input[name='slide_wrk_1_switch'] {
	display: none;
}
/* サムネイル */
.slide_wrk_1 label {
	margin: 15px 5px 0 5px;
	border: 2px solid #ffffff;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
	border-radius: 3px;
}
.slide_wrk_1 label:hover {
	opacity: 0.9;
}
.slide_wrk_1 label img {
	display: block;
	width: 80px;
	border-radius: 2px;
}
.slide_wrk_1 input[name='slide_wrk_1_switch']:checked + label {
	border: 2px solid #FF7043;
	opacity: 1;
}
.slide_wrk_1 input[name='slide_wrk_1_switch'] ~ img {
	opacity: 0;
}
.slide_wrk_1 input[name='slide_wrk_1_switch']:checked + label + img {
	opacity: 1;
}
@media screen and (max-width:999px) {
	.slide_wrk_1 {
		width: 100%;
		padding-top: 66%;
	}
	.slide_wrk_1 label img {
		width: 50px;
	}
}
/*-------------------- slide_wrk_2 --------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.slide_wrk_2 {
	width: 1000px;
	padding-top: 660px;			 				/* 画像の高さ */
	position: relative;
	margin: 30px auto;
	text-align: center;
}
.slide_wrk_2 > img {
	position: absolute;
	width: inherit; 							/* 親のスタイルを継承 */
	left: 0;
	top: 0;
	transition: all 0.5s;
	border-radius: 3px;
	/*box-shadow:0px 0px 5px 0px rgba(0,0,0,0.3);*/
}
.slide_wrk_2 input[name='slide_wrk_2_switch'] {
	display: none;
}
/* サムネイル */
.slide_wrk_2 label {
	margin: 15px 5px 0 5px;
	border: 2px solid #ffffff;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
	border-radius: 3px;
}
.slide_wrk_2 label:hover {
	opacity: 0.9;
}
.slide_wrk_2 label img {
	display: block;
	width: 80px;
	border-radius: 2px;
}
.slide_wrk_2 input[name='slide_wrk_2_switch']:checked + label {
	border: 2px solid #FF7043;
	opacity: 1;
}
.slide_wrk_2 input[name='slide_wrk_2_switch'] ~ img {
	opacity: 0;
}
.slide_wrk_2 input[name='slide_wrk_2_switch']:checked + label + img {
	opacity: 1;
}
@media screen and (max-width:999px) {
	.slide_wrk_2 {
		width: 100%;
		padding-top: 66%;
	}
	.slide_wrk_2 label img {
		width: 50px;
	}
}
/*-------------------- slide_wrk_3 --------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.slide_wrk_3 {
	width: 1000px;
	padding-top: 660px;			 				/* 画像の高さ */
	position: relative;
	margin: 30px auto;
	text-align: center;
}
.slide_wrk_3 > img {
	position: absolute;
	width: inherit; 							/* 親のスタイルを継承 */
	left: 0;
	top: 0;
	transition: all 0.5s;
	border-radius: 3px;
	/*box-shadow:0px 0px 5px 0px rgba(0,0,0,0.3);*/
}
.slide_wrk_3 input[name='slide_wrk_3_switch'] {
	display: none;
}
/* サムネイル */
.slide_wrk_3 label {
	margin: 15px 5px 0 5px;
	border: 2px solid #ffffff;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
	border-radius: 3px;
}
.slide_wrk_3 label:hover {
	opacity: 0.9;
}
.slide_wrk_3 label img {
	display: block;
	width: 80px;
	border-radius: 2px;
}
.slide_wrk_3 input[name='slide_wrk_3_switch']:checked + label {
	border: 2px solid #FF7043;
	opacity: 1;
}
.slide_wrk_3 input[name='slide_wrk_3_switch'] ~ img {
	opacity: 0;
}
.slide_wrk_3 input[name='slide_wrk_3_switch']:checked + label + img {
	opacity: 1;
}
@media screen and (max-width:999px) {
	.slide_wrk_3 {
		width: 100%;
		padding-top: 66%;
	}
	.slide_wrk_3 label img {
		width: 50px;
	}
}
/*--------------- Shine effect ---------------*/
/* (div_idx_2_1) 使用 */
.shine_effect figure {
	position: relative;
	overflow: hidden;
}
.shine_effect figure::before {
	position: absolute;
	top: 0;
	left: -75%;
	z-index: 2;
	display: block;
	content: '';
	width: 50%;
	height: 100%;
	background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	-webkit-transform: skewX(-25deg);
	transform: skewX(-25deg);
}
.shine_effect figure:hover::before {
	-webkit-animation: shine .75s;
	animation: shine .75s;
}
@-webkit-keyframes shine {
	100% {
	  left: 125%;
	}
}
@keyframes shine {
	100% {
	  left: 125%;
	}
}
/*-------------------- DIV --------------------*/
div.div_wrk_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_wrk_a_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_wrk_1_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
div.div_wrk_1_1 > div > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3rem;
	margin-top: 15px;
	margin-bottom: 15px;
}
div.div_wrk_1_1 > div > p > span {
	display: inline-block;
	padding-left: 10px;
	font-size: 2.5rem;
	font-weight: 300;
	line-height: 3rem;
	margin-top: 15px;
	margin-bottom: 15px;
}
div.div_wrk_1_x_1 {
	margin-top: 100px;
	margin-left: 10%;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.8rem;
	letter-spacing: 0.2rem;
}
div.div_wrk_1_x_2 > img {
	display: inline-block;
	margin-top: 30px;
	width: 33%;
}
div.div_wrk_1_x_3 > a > img {
	display: inline-block;
	margin: 30px 0 50px 0;
	width: 24%;
}
div.div_wrk_1_x_4 {
	margin-top: 10px;
	margin-bottom: 100px;
	margin-left: 10%;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.8rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_wrk_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
	div.div_wrk_1_x_2 > img {
		width: 95%;
		margin-top: 10px;
	}
	div.div_wrk_1_x_3 > a > img {
		width: 95%;
		margin-top: 10px;
	}
}
div.div_wrk_2_1 {
	margin: 0 auto;
	padding: 20px 0;
	width: 100%;
}
div.div_wrk_3_1 {
	display: inline-block;
	width: 40%;
}
div.div_wrk_3_2 {
	margin: 15px 0;
	padding-left: 80px;
	text-align: left;
	inline-size: 80%;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
}
div.div_wrk_3_3 {
	margin: 15px 0;
	padding-left: 80px;
	text-align: left;
	inline-size: 80%;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.2rem;
	letter-spacing: 0.1rem;
}
div.div_wrk_4_1 {
	display: inline-block;
	padding-top: 0px;
	vertical-align: top;
	text-align: left;
	inline-size: 40%;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.6rem;
	letter-spacing: 0.2rem;
}
div.div_wrk_4_2 {
	margin: 0 auto;
	width: 100%;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 10px;
}
@media screen and (max-width:999px) {
	div.div_wrk_3_1 {
		width: 100%;
		margin-bottom: 50px;
	}
	div.div_wrk_3_2 {
		padding-left: 35%;
	}
	div.div_wrk_4_1 {
		inline-size: 80%;
	}
}
/*---------- button wrk_1 ----------*/
.button_wrk_1 {
	margin-top: 20px;
	display: inline-block;
	width: 200px;
	padding: 15px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
	cursor: pointer;
	user-select: none;
	transition: box-shadow 0.2s, transform 0.2s;
	color: #787878;
	border-width: 0;
	border-style: solid;
	border-radius: 12% / 50%;
	background: transparent;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.button_wrk_1:hover {
	-webkit-transform: scale(1.02);
			transform: scale(1.02);
	box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
	color: #787878;
}
.button_wrk_1:active {
	transition-duration: 0.05s;
	-webkit-transform: scale(0.99);
			transform: scale(0.99);
	box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.15) inset;
}
.button_wrk_1:focus,
.button_wrk_1:focus:hover {
	color: #787878;
}
/*-------------------- 見出し線 --------------------*/
.wrk_m_line_1 {
	display: flex;
	justify-content: left;
	align-items: center;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.5rem;
	letter-spacing: 0.2rem;
}
.wrk_m_line_1::after {
	content: '';
	width: 70%;											/* 長さ */
	height: 1px;										/* 太さ */
	background-color: #e6e6e6;
	margin-left: 20px;
}
@media screen and (max-width:999px) {
	.wrk_m_line_1 {
		padding-left: 10%;
	}
}
/****************************************************/
/*==================== ABOUT US ====================*/
/****************************************************/
/*-------------------- DIV --------------------*/
div.div_abo_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_abo_a_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_abo_a_2 {
	text-align: right;
}
/*-----------------------------------*/
div.div_abo_1_1 {
	margin: 20px 0 0 0;
	padding: 0 0 10px 0;
	width: 1000px;
	height: 333px;
	position: relative;
	overflow: hidden;
	margin: auto;
}
div.div_abo_1_1 > img {
	display: block;
	position: absolute;
	width: inherit;								/* 親のスタイルを継承 */
	height: inherit;							/* 親のスタイルを継承 */
}
@media screen and (max-width:999px) {
	div.div_abo_1_1 {
		height: 40vh;
		width: 100vw;
	}
	div.div_abo_1_1 > img {
		object-fit: none;
	}
}
/*-----------------------------------*/
div.div_abo_3_1 {
	margin: 20px 0 0 0;
	padding: 0 0 10px 0;
}
/*---------- slide_rec_1 ----------*/
.slide_abo_3 {
	position: relative;
	overflow: hidden;
	width: 1000px;
	height: 333px;
	margin: auto;
	background : gainsboro;
}
@media screen and (max-width:999px) {
	.slide_abo_3 {
		height: 40vh;
		width: 100vw;
	}
}
/*=== 画像の設定 === */
.slide_abo_3 img {
	object-fit: none;
	display: block;
	position: absolute;
	width: inherit;									/* 親のスタイルを継承 */
	height: inherit;								/* 親のスタイルを継承 */
	opacity: 0;
	animation: slideAnime_abo_3 25s ease infinite;
	animation-timing-function: ease;
}
/*
@media screen and (max-width:999px) {
	.slide_abo_3 img {
		width: 100vw;
		height: auto;
	}
}
*/
/*=== スライドのアニメーションを段差で開始する === */
.slide_abo_3 img:nth-of-type(1) { animation-delay: 0s }
.slide_abo_3 img:nth-of-type(2) { animation-delay: 5s }
.slide_abo_3 img:nth-of-type(3) { animation-delay: 10s }
.slide_abo_3 img:nth-of-type(4) { animation-delay: 15s }
.slide_abo_3 img:nth-of-type(5) { animation-delay: 20s }
/*=== スライドのアニメーション === */
@keyframes slideAnime_abo_3 {
	 0% { opacity: 0 }
	 2% { opacity: 1 }
	20% { opacity: 1 }
	22% { opacity: 0 }
   100% { opacity: 0 }
}
/***********************************************/
/*==================== DNA ====================*/
/***********************************************/
/*========== Scroll 1-Page ==========*/
.dna_con {
	overflow: auto;
	scroll-snap-type: y mandatory;
	height: 92vh;
	position : relative;
	width : 100%;
	margin : auto;
}
.dna_con::-webkit-scrollbar {
	display: none;
}
.dna_area {
	scroll-snap-align: start;
	height: 92vh;
	width: 100%;
}
.dna_area_1920 {
	scroll-snap-align: start;
	height: 92vh;
	width: 100%;
}
.dna_area_1900 {
	scroll-snap-align: start;
	height: 92vh;
	width: 100%;
}
.dna_area_1025 {
	scroll-snap-align: start;
	height: 92vh;
	width: 100%;
}
.dna_area_footer {
	scroll-snap-align: start;
	width: 100%;
}
/*------------------------------*/
.dna_area > img {
	object-fit: none;
	display : block;
	position : absolute;
	overflow: hidden;
	width : inherit; 							/* 親のスタイルを継承 */
	height : inherit;							/* 親のスタイルを継承 */
	opacity : 1;
}
.dna_area > div > span {
	display: inline-block;
	white-space: nowrap;
}
.dna_area_1920 > img {
	object-fit: none;
	display : block;
	position : absolute;
	overflow: hidden;
	width : inherit; 							/* 親のスタイルを継承 */
	height : inherit;							/* 親のスタイルを継承 */
	opacity : 1;
}
.dna_area_1900 > img {
	object-fit: none;
	display : block;
	position : absolute;
	overflow: hidden;
	width : inherit; 							/* 親のスタイルを継承 */
	height : inherit;							/* 親のスタイルを継承 */
	opacity : 1;
}
@media screen and (min-width:1435px) {
	.dna_area_1900 {
		display: none;
	}
}
@media screen and (max-width:1434px) and (min-width:1000px){
	.dna_area_1920 {
		display: none;
	}
}
@media screen and (max-width:999px) {
	.dna_area_1920 {
		display: none;
	}
	.dna_area_1900 {
		display: none;
	}
}
.dna_title {
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 0.3rem;
	line-height: 3rem;
	color: white;
	text-shadow: -1px -1px 0 #787878, -1px 0 0 #787878, -1px 1px 0 #787878,
					0 -1px 0 #787878,                        0 1px 0 #787878,
				  1px -1px 0 #787878,  1px 0 0 #787878,  1px 1px 0 #787878;
	left: 25vw;
	position: relative;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 50%;
}
@media screen and (max-width:1024px) {
	.dna_title {
		font-size: 1.5rem;
		font-weight: 400;
		line-height: 3rem;
		top: 45%;
		transform: translateY(-50%);
		width: 80%;
		left: 10vw;
	}
}
@media screen and (max-width:480px) {
	.dna_title {
		font-size: 1.3rem;
		font-weight: 400;
		line-height: 1.4rem;
		top: 45%;
		transform: translateY(-50%);
		width: 80%;
		left: 10vw;
	}
}
/***********************************************************/
/*==================== COMPANY PROFILE ====================*/
/***********************************************************/
/*-------------------- section --------------------*/
section.sxn_cp_1_1 {
	margin: 0 auto;
	margin-top: 150px;
	margin-bottom: 200px;
}
@media screen and (max-width:480px) {
	section.sxn_cp_1_1 {
		margin-top: 50px;
	}
}
/*-------------------- DIV --------------------*/
div.div_cp_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
		margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_cp_a_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_cp_1 {
	margin: 0 auto;
	width: 700px;
	padding-top: 20px;
	padding-bottom: 10px;
	border-bottom: #787878 solid 1px;
}
div.div_cp_1_1 {
	width: 180px;
	padding-bottom: 10px;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.5rem;
	letter-spacing: 0.2rem;
}
div.div_cp_1_2 {
	width: 515px;
	padding-bottom: 10px;
	display: inline-block;
	vertical-align: top;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.5rem;
	letter-spacing: 0.2rem;
}
div.div_cp_1_2 span {
	display: inline-block;
}
@media screen and (max-width:480px) {
	div.div_cp_1 {
		width: 100%;
	}
	div.div_cp_1_1 {
		width: 90%;
		font-weight: 600;
	}
	div.div_cp_1_2 {
		width: 90%;
	}
}
div.div_cp_2 {
	margin: 0 auto;
	width: 100%;
	padding-top: 20px;
	padding-bottom: 10px;
}
/*-------------------- button --------------------*/
/*---------- button co_1 ----------*/
.button_cp_1 {
	margin-top: 5px;
	display: inline-block;
	width: 55px;
	padding: 1px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	cursor: pointer;
	user-select: none;
	transition: box-shadow 0.2s, transform 0.2s;
	color: #787878;
	border-width: 0;
	border-style: solid;
	border-radius: 20% / 50%;
	background: transparent;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.button_cp_1:hover {
	-webkit-transform: scale(1.02);
			transform: scale(1.02);
	box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
	color: #787878;
}
.button_cp_1:active {
	transition-duration: 0.05s;
	-webkit-transform: scale(0.99);
			transform: scale(0.99);
	box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.15) inset;
}
.button_cp_1:focus,
.button_cp_1:focus:hover {
	color: #787878;
}
/*---------- button co_2 ----------*/
.button_cp_2 {
	margin-top: 20px;
	display: inline-block;
	width: 160px;
	padding: 15px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
	cursor: pointer;
	user-select: none;
	transition: box-shadow 0.2s, transform 0.2s;
	color: #787878;
	border-width: 0;
	border-style: solid;
	border-radius: 12% / 50%;
	background: transparent;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.button_cp_2:hover {
	-webkit-transform: scale(1.02);
			transform: scale(1.02);
	box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
	color: #787878;
}
.button_cp_2:active {
	transition-duration: 0.05s;
	-webkit-transform: scale(0.99);
			transform: scale(0.99);
	box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.15) inset;
}
.button_cp_2:focus,
.button_cp_2:focus:hover {
	color: #787878;
}
/*******************************************************/
/*==================== RECRUITMENT ====================*/
/*******************************************************/
/******************* 矢印 ********************/
.rec_arrows *, .rec_arrows *:before, .rec_arrows *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.rec_arrows {
	position: relative;
	display: flex;
	height: 10px;
	margin: 20px auto;
	margin-right: 20px;

	justify-content: center;
	align-items: center;
}
.rec_arrows .rec_arrow,
.rec_arrows .rec_arrow:before {
	position: absolute;
	left: calc(50% - 10px);
	content: '';
}
.rec_arrows .rec_arrow {
	top: calc(50% - 18px);
	width: 36px;
	height: 36px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	border-width: 0 3px 3px 0;
	border-style: solid;
	border-color: transparent #787878 #787878 transparent;
}
.rec_arrows .rec_arrow:before {
	top: calc(50% - 10px);
	width: 20px;
	height: 20px;
	-webkit-animation: rec_arrow-move 2s infinite ease-in-out;
	animation: rec_arrow-move 2s infinite ease-in-out;
	border-width: 0 2px 2px 0;
	border-style: solid;
	border-color: transparent #787878 #787878 transparent;
}
@-webkit-keyframes rec_arrow-move {
	0% {
		opacity: 0.3;
	}
	5% {
		opacity: 1;
	}
	100% {
		transform: translate(-8px, -8px);
		opacity: 0;
	}
}
@keyframes rec_arrow-move {
	0% {
		opacity: 0.3;
	}
	5% {
		opacity: 1;
	}
	100% {
		transform: translate(-8px, -8px);
		opacity: 0;
	}
}
/*********************************************/
section.sxn_rec_top {
	width: 100%;
	margin-top: 75px;
	text-align: center;
}
section.sxn_rec_top div {
	width : 100%;
	position : relative;
	overflow : hidden;
	margin : auto;

}
@media screen and (max-width:999px) {
	section.sxn_rec_top div {
		height: 40vh;
		width: 100%;
	}
}
section.sxn_rec_top img {
	object-fit: none;
	display: block;
	width: inherit;									/* 親のスタイルを継承 */
	height: inherit;								/* 親のスタイルを継承 */
}
/*-------------------- DIV --------------------*/
div.div_rec_a_1 {
	text-align: center;
	font-size: 2.5rem;
	font-weight: 500;
	line-height: 5rem;
	letter-spacing: 0.5rem;
}
div.div_rec_a_1 > span {
	display: inline-block;
}
div.div_rec_a_2 {
	padding-top: 50px;
	padding-bottom: 100px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 5rem;
	letter-spacing: 0.1rem;
}
div.div_rec_a_2 > span {
	display: inline-block;
}
div.div_rec_a_3 {
	margin: 0 auto;
	padding: 10px 0;
	text-align: left;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.1rem;
	inline-size: 70%;
}
div.div_rec_a_3 > span {
	display: inline-block;
}
@media screen and (max-width:999px) {
	div.div_rec_a_1 {
		font-size: 2rem;
		letter-spacing: 0.2rem;
	}
	div.div_rec_a_2 {
		font-size: 1.6rem;
		line-height: 4rem;
		letter-spacing: 0rem;
	}
	div.div_rec_a_3 {
		font-size: 1.6rem;
		line-height: 4rem;
		letter-spacing: 0rem;
	}
}
div.div_rec_b_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-top: 150px;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
div.div_rec_b_1 > p:first-child {
	font-size: 2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0rem;
} 
div.div_rec_b_1 > p:last-child {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
} 
@media screen and (max-width:480px) {
	div.div_rec_b_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_rec_b_2 {
	text-align: right;
}
@media screen and (max-width:999px) {
	div.div_rec_b_1 {
		margin-top: 50px;
	}
}
/*-----------------------------------*/
div.div_rec_1_1 {
	margin: 20px 0 0 0;
	padding: 0 0 10px 0;
	width: 1000px;
	height: 333px;
	position: relative;
	overflow: hidden;
	margin: auto;
}
div.div_rec_1_1 > img {
	padding-bottom: 5px;
	display: block;
	position: absolute;
	width: inherit;								/* 親のスタイルを継承 */
	height: inherit;							/* 親のスタイルを継承 */
}
@media screen and (max-width:999px) {
	div.div_rec_1_1 {
		height: 40vh;
		width: 100vw;
	}
	div.div_rec_1_1 > img {
		object-fit: none;
	}
}
/*-------------------- 共通 --------------------*/
div.div_rec_m_1_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-top: 50px;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
div.div_rec_m_1_1 > p:first-child {
	font-size: 2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0rem;
} 
div.div_rec_m_1_1 > p:last-child {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
} 
@media screen and (max-width:480px) {
	div.div_rec_m_1_1 {
		border-left: none;
		border-right: none;
		margin-top: 50px;
	}
}
div.div_rec_m_1_2 {
	margin: 20px 0;
}
div.div_rec_m_1_2 img {
	width: 100%;
}
/*-------------------- 入社の流れ --------------------*/
div.div_rec_ny_2_1 {
	width: 100%;
	height: 40px;
	background-color: #787878;
	color: white;
	margin-top: 50px;
	padding-top: 10px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_rec_ny_2_2 {
	width: 100%;
	height: 40px;
	padding: 50px 0;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_rec_ny_2_3 {
	margin: 0 auto;
	width: 50%;
	margin-top: 20px;
	padding-top: 20px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
div.div_rec_ny_2_3 img {
	width: 100%;
	padding: 0;
}
@media screen and (max-width:999px) {
	div.div_rec_ny_2_3 {
		width: 70%;
	}
}
/*-------------------- 募集要項 --------------------*/
div.div_rec_bos_2_1 {
	width: 100%;
	height: 40px;
	background-color: #787878;
	color: white;
	margin-top: 40px;
	padding-top: 10px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_rec_bos_2_2 {
	width: 100%;
	padding-top: 30px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
div.div_rec_bos_2_2 span {
	display: inline-block;
}
div.div_rec_bos_2_3 {
	margin: 0 auto;
	width: 50%;
	margin-top: 20px;
	padding-top: 20px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
div.div_rec_bos_2_3 img {
	width: 100%;
	padding: 0;
}
@media screen and (max-width:999px) {
	div.div_rec_bos_2_3 {
		width: 70%;
	}
}
/*-------------------- インターンシップ --------------------*/
div.div_rec_inter_2_1 {
	width: 100%;
	margin-top: 50px;
	padding-top: 10px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
div.div_rec_inter_2_1 span {
	display: inline-block;
}
div.div_rec_inter_3_1 {
	width: 100%;
	margin-top: 50px;
	padding-left: 100px;
	text-align: left;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_rec_inter_3_2 {
	width: 100%;
	margin-top: 50px;
	padding-left: 100px;
	inline-size: 90%;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_rec_inter_3_1 {
		padding-left: 10px;
	}
	div.div_rec_inter_3_2 {
		padding: 10px;
		inline-size: 100%;
	}
}
/*-------------------- slide_inter_1 --------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.slide_inter_1 {
	width: 800px;
	padding-top: 530px;			 				/* 画像の高さ */
	position: relative;
	margin: 30px auto;
	text-align: center;
}
.slide_inter_1 > img {
	position: absolute;
	width: inherit; 							/* 親のスタイルを継承 */
	left: 0;
	top: 0;
	transition: all 0.5s;
	border-radius: 3px;
	/*box-shadow:0px 0px 5px 0px rgba(0,0,0,0.3);*/
}
.slide_inter_1 input[name='slide_inter_1_switch'] {
	display: none;
}
/* サムネイル */
.slide_inter_1 label {
	margin: 15px 5px 0 5px;
	border: 2px solid #ffffff;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
	border-radius: 3px;
}
.slide_inter_1 label:hover {
	opacity: 0.9;
}
.slide_inter_1 label img {
	display: block;
	width: 80px;
	border-radius: 2px;
}
.slide_inter_1 input[name='slide_inter_1_switch']:checked + label {
	border: 2px solid #FF7043;
	opacity: 1;
}
.slide_inter_1 input[name='slide_inter_1_switch'] ~ img {
	opacity: 0;
}
.slide_inter_1 input[name='slide_inter_1_switch']:checked + label + img {
	opacity: 1;
}
@media screen and (max-width:999px) {
	.slide_inter_1 {
		width: 100%;
		padding-top: 66%;
	}
}
/*-------------------- slide_inter_2 --------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.slide_inter_2 {
	width: 800px;
	padding-top: 530px;			 				/* 画像の高さ */
	position: relative;
	margin: 30px auto;
	text-align: center;
}
.slide_inter_2 > img {
	position: absolute;
	width: inherit; 							/* 親のスタイルを継承 */
	left: 0;
	top: 0;
	transition: all 0.5s;
	border-radius: 3px;
	/*box-shadow:0px 0px 5px 0px rgba(0,0,0,0.3);*/
}
.slide_inter_2 input[name='slide_inter_2_switch'] {
	display: none;
}
/* サムネイル */
.slide_inter_2 label {
	margin: 15px 5px 0 5px;
	border: 2px solid #ffffff;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
	border-radius: 3px;
}
.slide_inter_2 label:hover {
	opacity: 0.9;
}
.slide_inter_2 label img {
	display: block;
	width: 80px;
	border-radius: 2px;
}
.slide_inter_2 input[name='slide_inter_2_switch']:checked + label {
	border: 2px solid #FF7043;
	opacity: 1;
}
.slide_inter_2 input[name='slide_inter_2_switch'] ~ img {
	opacity: 0;
}
.slide_inter_2 input[name='slide_inter_2_switch']:checked + label + img {
	opacity: 1;
}
@media screen and (max-width:999px) {
	.slide_inter_2 {
		width: 100%;
		padding-top: 66%;
	}
}
/*-------------------- 先輩の声 --------------------*/
div.div_rec_sen_0 {
	margin: 0 auto;
	width: 80%;
	margin-top: 50px;
	padding-top: 10px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
div.div_rec_sen_0 span {
	display: inline-block;
}
div.div_rec_sen_1 {
	margin: 0 auto;
	margin-top: 100px;
	width: 800px;
}
div.div_rec_sen_1 img {
	width: 100%;
}
@media screen and (max-width:999px) {
	div.div_rec_sen_1 {
		margin-top: 50px;
		width: 80%;
	}
}
/*--------------------------------------------------*/
section.sxn_rec_sen_01_1 {
	width: 1000px;
	padding: 100px 0 200px 0;
}
div.div_rec_sen_01_1 {
	display: inline-block;
	width: 495px;
}
div.div_rec_sen_01_1 > img {
	width: 100%;
}
div.div_rec_sen_01_2 {
	display: inline-block;
	width: 500px;
	padding-top: 0;
	padding-left: 50px;
	vertical-align: top;
	text-align: left;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 4rem;
	letter-spacing: 0.2rem;
	inline-size: 50%;
}
div.div_rec_sen_01_2 > span {
	font-weight: 700;
}
div.div_rec_sen_01_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.1rem;
}
div.div_rec_sen_01_3 {
	padding: 20px 0 20px 0px;
	text-align: left;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	inline-size: 100%;
}
div.div_rec_sen_01_3 > span {
	font-weight: 700;
}
div.div_rec_sen_01_4 {
	padding: 0px 0 20px 0px;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	inline-size: 100%;
}
div.div_rec_sen_01_4 > span {
	font-weight: 700;
}
div.div_rec_sen_01_5 > img {
	width: 100%;
}
div.div_rec_sen_01_6 {
	padding: 0px 0 20px 0px;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	inline-size: 100%;
}
div.div_rec_sen_01_6 > span {
	padding-left: 30px;
	font-weight: 300;
}
@media screen and (max-width:999px) {
	section.sxn_rec_sen_01_1 {
		width: 100%;
		padding: 10px 0 200px 0;
	}
	div.div_rec_sen_01_1 {
		width: 100vw;
	}
	div.div_rec_sen_01_2,div.div_rec_sen_01_4 {
		padding: 0 10px;
		width: 100%;
	}
	div.div_rec_sen_01_5 > img {
		width: 100vw;
	}
}
/***************************************************/
/*==================== HISTORY ====================*/
/***************************************************/
/*-------------------- timeline --------------------*/
.timeline {
	list-style: none;
	/* 左のスペース */
	padding-left: 13%;
	/* 左寄せ */
	text-align: left;
}
.timeline > li {
	margin-bottom: 60px;
}
/* for Desktop */
@media (min-width : 767px) { 					 /* 巾767以上いの場合 */
	.timeline > li {
		overflow: hidden;
		margin: 0;
		position: relative;
	}
	.timeline-date {
		width: 160px;
		float: left;
		margin-top: 20px;
		font-size: 1.4rem;
		font-weight: 300;
		line-height: 2rem;
		letter-spacing: 0.2rem;
	}
	.timeline-content {
		width: 70%;
		float: left;
		padding: 5px 0 5px 30px;
		/*border-left: 3px #F3C759 solid;*/
		border-left: 3px #F3C759 solid;
	}
	.timeline-content > h2 {
		margin-bottom: 0;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 1.6rem;
		letter-spacing: 0.2rem;
	}
	.timeline-content > p {
		font-size: 1.4rem;
		font-weight: 300;
		line-height: 1.6rem;
		letter-spacing: 0.2rem;
	}
	.timeline-content:before {
		content: '';
		width: 12px;
		height: 12px;
		/*background: #3DB680;*/
		background: #3DB680;
		position: absolute;
		left: 156px;
		top: 24px;
		border-radius: 100%;
	}
}
/* for Sp */
@media (max-width : 766px) {
	.timeline {
		padding: 0 20px;
	}
	.timeline-date {
		font-size: 1.4rem;
		font-weight: 300;
		line-height: 1.4rem;
		letter-spacing: 0.1rem;
	}
	.timeline-content > h2 {
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.4rem;
		letter-spacing: 0.1rem;
	}
	.timeline-content > p {
		font-size: 1.4rem;
		font-weight: 300;
		line-height: 1.6rem;
		letter-spacing: 0.1rem;
	}
}
/**************************************************/
/*==================== TOPICS ====================*/
/**************************************************/
/*-------------------------------------------*/
/*---------- Thumbnail Slide Photo ----------*/
/*-------------------------------------------*/
section.sxn_tpx_sl {
	margin: 0 auto;
	padding: 40px 0;
}
@media screen and (min-width:480px) {
	div.div_tpx_arrow {
		display: none;
	}
	.carousel > input:nth-of-type(6):checked ~ .carousel__slides .carousel__slide:first-of-type {
		margin-left: -500%;
	}
	.carousel > input:nth-of-type(5):checked ~ .carousel__slides .carousel__slide:first-of-type {
		margin-left: -400%;
	}
	.carousel > input:nth-of-type(4):checked ~ .carousel__slides .carousel__slide:first-of-type {
		margin-left: -300%;
	}
	.carousel > input:nth-of-type(3):checked ~ .carousel__slides .carousel__slide:first-of-type {
		margin-left: -200%;
	}
	.carousel > input:nth-of-type(2):checked ~ .carousel__slides .carousel__slide:first-of-type {
		margin-left: -100%;
	}
	.carousel > input:nth-of-type(1):checked ~ .carousel__slides .carousel__slide:first-of-type {
		margin-left: 0%;
	}
	.carousel > input:nth-of-type(1):checked ~ .carousel__thumbnails li:nth-of-type(1) {
		box-shadow: 0px 0px 0px 5px rgba(0, 0, 255, 0.5);
	}
	.carousel > input:nth-of-type(2):checked ~ .carousel__thumbnails li:nth-of-type(2) {
		box-shadow: 0px 0px 0px 5px rgba(0, 0, 255, 0.5);
	}
	.carousel > input:nth-of-type(3):checked ~ .carousel__thumbnails li:nth-of-type(3) {
		box-shadow: 0px 0px 0px 5px rgba(0, 0, 255, 0.5);
	}
	.carousel > input:nth-of-type(4):checked ~ .carousel__thumbnails li:nth-of-type(4) {
		box-shadow: 0px 0px 0px 5px rgba(0, 0, 255, 0.5);
	}
	.carousel > input:nth-of-type(5):checked ~ .carousel__thumbnails li:nth-of-type(5) {
		box-shadow: 0px 0px 0px 5px rgba(0, 0, 255, 0.5);
	}
	.carousel > input:nth-of-type(6):checked ~ .carousel__thumbnails li:nth-of-type(6) {
		box-shadow: 0px 0px 0px 5px rgba(0, 0, 255, 0.5);
	}
	.carousel__thumbnails {
		list-style: none;
		padding: 0 0 10px 0;
		margin: 0;
		display: flex;
		margin: 0 -10px;
	}
	.carousel__slides + .carousel__thumbnails {
		margin-top: 20px;
	}
	.carousel__thumbnails li {
		flex: 1 1 auto;
		max-width: calc((60% / 6) - 20px);
		margin: 0 5px;
		transition: all 300ms ease-in-out;
	}
	.carousel__thumbnails label {
		display: block;
		position: relative;
	}
	.carousel__thumbnails label:before {
		display: block;
		content: "";
		width: 100%;
		padding-top: 100%;
	}
	.carousel__thumbnails label > img {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 100%;
	}
	.carousel__thumbnails label:hover, .carousel__thumbnails label:focus {
		cursor: pointer;
	}
	.carousel__thumbnails label:hover img, .carousel__thumbnails label:focus img {
		box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.25);
		transition: all 300ms ease-in-out;
	}
	.carousel__thumbnails img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}
.sl_container {
	max-width: 600px;
	margin: 0 auto;
	padding: 0 0;
}
.carousel {
	display: block;
	text-align: left;
	position: relative;
	margin-bottom: 10px;
}
.carousel > input {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
}
.carousel__slides {
	position: relative;
	z-index: 1;
	padding: 0;
	margin: 0;
	overflow: hidden;
	white-space: nowrap;
	box-sizing: border-box;
	display: flex;
}
.carousel__slide {
	position: relative;
	display: block;
	flex: 1 0 100%;
	width: 100%;
	height: 100%;
	overflow: hidden;
	transition: all 300ms ease-out;
	/*vertical-align: top;*/
	box-sizing: border-box;
	white-space: normal;
}
.carousel__slide figure {
	display: block;
	margin: 0;
}
.carousel__slide div {
	position: relative;
	width: 100%;
}
.carousel__slide div:before {
	display: block;
	content: "";
	width: 100%;
	padding-top: 66.6666666667%;
}
.carousel__slide div > img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
}
.carousel__slide img {
	display: block;
	flex: 1 1 auto;
	object-fit: cover;
}
.carousel__slide figcaption {
	align-self: flex-end;
	padding: 0;
	flex: 0 0 auto;
	width: 100%;
	max-height: 200px;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.1rem;
	text-align: center;
}
.carousel__slide figcaption > span {
	text-align: left;
}
.carousel_cyousei_1 { /* フルサイズ以外のオプション */
	margin-top: 50px;
}
@media screen and (max-width:999px) {
	.carousel__slide figcaption{
		font-size: 1.2rem;
	}
}
.carousel__slide .credit {
	margin-top: 0;
	color: #787878;
	display: block;
}
.carousel__slide.scrollable {
	overflow-y: scroll;
}
/*-----------------------------------------------------*/
/*-------------------- つづきを読む --------------------*/
/*-----------------------------------------------------*/
.to_be_box *, .to_be_box *:before, .to_be_box *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.to_be_box {
	position: relative;
}
.to_be_box label {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 140px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
	/* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
	background: linear-gradient(to bottom, rgba(250, 252, 252, 0) 0%, rgba(250, 252, 252, 0.95) 90%);
}
.to_be_box input:checked + label {
	background: inherit; /* 開いた時にグラデーションを消す */
}
.to_be_box label:after {
	line-height: 2.5rem;
	position: absolute;
	z-index: 2;
	bottom: 20px;
	left: 50%;
	width: 16rem;
	font-family: FontAwesome;
	content: ' 続きをよむ';
	transform: translate(-50%, 0);
	letter-spacing: 0.05em;
	color: #ffffff;
	border-radius: 20px;
	background-color: rgba(27, 37, 56, 1);
}
.to_be_box input {
	display: none;
}
.to_be_box .to_be_container {
	overflow: hidden;
	height: 250px; /* 開く前に見えている部分の高さ */
	transition: all 0.5s;
}
.to_be_box input:checked + label {
	display: none;
}
.to_be_box input:checked + label:after {
	font-family: FontAwesome;
	content: ' 閉じる';
}
.to_be_box input:checked ~ .to_be_container {
	height: auto;
	padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}
/*-------------------- DIV --------------------*/
div.div_s1_c_1 {
	padding-top: 0;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.1rem;
	text-align: center;
}
div.div_s1_c_1 p {
	margin: 0;
}
div.div_s1_c_1 div {
	text-align: left;
	margin-bottom: 10px;
}
@media screen and (max-width:999px) {
	div.div_s1_c_1 div {
		padding: 0 20px;
	}
}
/*---------- SP Thumbnail Slide Photo ----------*/
@media screen and (max-width: 480px) {
	div.div_tpx_arrow {
		padding-top: 5px;
		padding-left: 30px;
		text-align: left;
	}
	div.div_tpx_arrow > span {
		font-size: 1.2rem;
		letter-spacing: 0.1rem;
		font-weight: 600;
	}
	section.sxn_tpx_sl {
		background-color: 	#efefef;
	}
	.carousel__thumbnails label > img {
		display: none;
	}
	.carousel__slides {
		margin: 0 auto;
		padding: 0;
		width: 90%;								 /* コンテンツが見切れて見えるようにする */
		overflow-x: auto;						 /* 横スクロールの指定 */
		white-space: nowrap; 					 /* 横スクロールの指定 */
		-webkit-overflow-scrolling: touch; 		 /* スクロールを滑らかにする */
	}
	.scroll_list li {
		display: inline-block; 					 /* 横並びにする指定 */
		list-style: none;
		height: 450px; 							 /* 横スクロールする範囲の高さを指定 */
	}
	.list1 {
		margin-left: 0;
	}
	.list2, .list3, .list4, .list5, .list6 {
		margin-left: 30px;
	}
}
/*=============== TOPICS MAIN ===============*/
.ddt_tpx_m_1 {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	margin: 10px;
}
/*-------------------- section --------------------*/
section.sxn_tpx_a_1 {
	margin-top: 50px;
	margin-bottom: 50px;
}
/*-------------------- DIV --------------------*/
div.div_tpx_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_tpx_a_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_tpx_m_1_1 {
	display: inline-block;
	margin: 20px 5px 0 5px;
	vertical-align: top;
}
div.div_tpx_m_1_1 > figure {
	text-align: center;
	vertical-align: middle;
}
div.div_tpx_m_1_1 > figure > img {
	width: 315px;
}
@media screen and (max-width:999px) {
	div.div_tpx_m_1_1 > figure > img {
		width: 90vw;
	}
}
div.div_tpx_m_1_1 > div {
	margin: 0 auto;
	padding: 0;
	inline-size: 315px; /* 文章範囲 */
	text-align: left;
	height: 180px;
}
@media screen and (max-width:999px) {
	div.div_tpx_m_1_1 > div {
		width: 90vw;
		height: auto;
	}
}
div.div_tpx_m_1_1 > div > p {
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_m_1_1 > div > p > time {
	margin-right: 10px;
	padding-right: 10px;
	border-right: #787878 solid 1px;
}
div.div_tpx_m_1_1 > div > dl > dt {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
/*----- View More Photo -----*/
/*-------------------- section --------------------*/
section.sxn_tpx_p_btn_1 {
	margin-top: 30px;
}
/*-------------------- DIV --------------------*/
div.div_tpx_p_btn_1 {
	margin: 20px 0 5px 0;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
div.div_tpx_p_btn_1 > img {
	width: 250px;
}
div.div_tpx_p_btn_2 {
	margin: 20px 0 5px 0;
	display: inline-block;
	padding-left: 30px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 3rem;
	letter-spacing: 0.2rem;
	width: 250px;
	vertical-align: middle;
}
@media screen and (max-width:999px) {
	div.div_tpx_p_btn_2 {
		padding-left: 0;
	}
}
div.div_tpx_p_btn_3 {
	margin: 0 auto;
	margin-top: 30px;
	padding: 10px;
	font-size: 2rem;
	font-weight: 500;
	line-height: 3rem;
	letter-spacing: 0.2rem;
	width: 250px;
	vertical-align: middle;
	border: lightgray solid 1px;
}
/*-------------------- button --------------------*/
.button_tpx_p_1 {
	margin-top: 30px;
	display: inline-block;
	width: 180px;
	padding: 15px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 2rem;
	letter-spacing: 0.2rem;
	cursor: pointer;
	user-select: none;
	transition: box-shadow 0.2s, transform 0.2s;
	color: #787878;
	border-width: 0;
	border-style: solid;
	border-radius: 12% / 50%;
	background: transparent;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.button_tpx_p_1:hover {
	-webkit-transform: scale(1.02);
			transform: scale(1.02);
	box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
	color: #787878;
}
.button_tpx_p_1:active {
	transition-duration: 0.05s;
	-webkit-transform: scale(0.99);
			transform: scale(0.99);
	box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.15) inset;
}
.button_tpx_p_1:focus,
.button_tpx_p_1:focus:hover {
	color: #787878;
}
/*---------- button_tpx_l_1 ----------*/
.button_tpx_l_1 {
	margin-top: 20px;
	display: inline-block;
	width: 210px;
	padding: 15px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
	cursor: pointer;
	user-select: none;
	transition: box-shadow 0.2s, transform 0.2s;
	color: #787878;
	border-width: 0;
	border-style: solid;
	border-radius: 12% / 50%;
	background: transparent;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.button_tpx_l_1:hover {
	-webkit-transform: scale(1.02);
			transform: scale(1.02);
	box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
	color: #787878;
}
.button_tpx_l_1:active {
	transition-duration: 0.05s;
	-webkit-transform: scale(0.99);
			transform: scale(0.99);
	box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.15) inset;
}
.button_tpx_l_1:focus,
.button_tpx_l_1:focus:hover {
	color: #787878;
}
/*----- ページ切替 -----*/
/*-------------------- section --------------------*/
section.sxn_tpx_b_1 {
	margin-top: 150px;
	margin-bottom: 50px;
}
/*-------------------- DIV --------------------*/
div.div_tpx_b_btn_1 {
	margin-top: 20px;
}
div.div_tpx_b_btn_1 > div {
	display: inline-block;
	padding: 15px 20px;
	border-top: lightgray solid 1px;
	border-bottom: lightgray solid 1px;
}
div.div_tpx_b_btn_1 > div > a {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_b_btn_1 > div > a:hover {
	animation: zoom_tpx_btn 0.3s;
}
div.div_tpx_b_btn_1 > div:nth-child(1) {
	border-right: lightgray solid 1px;
}
div.div_tpx_b_btn_1 > div:nth-child(2) {
	border-left: lightgray solid 1px;
}
div.div_tpx_b_btn_x {
	color: #efefef;
	display: inline-block;
	padding: 15px 20px;
	border-top: lightgray solid 1px;
	border-bottom: lightgray solid 1px;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_b_btn_2 {
	margin-bottom: 20px;
}
div.div_tpx_b_btn_2 > div {
	display: inline-block;
	padding: 15px 20px;
	border-bottom: lightgray solid 1px;
}
div.div_tpx_b_btn_2 > div > a {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_b_btn_2 > div > a:hover {
	animation: zoom_tpx_btn 0.3s;
}
div.div_tpx_b_btn_3 {
	margin-bottom: 20px;
}
div.div_tpx_b_btn_3 > div {
	display: inline-block;
	padding: 15px 20px;
	border-top: lightgray solid 1px;
	border-bottom: lightgray solid 1px;
}
div.div_tpx_b_btn_3 > div > a {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_b_btn_3 > div > a:hover {
	animation: zoom_tpx_btn 0.3s;
}
@keyframes zoom_tpx_btn {
	50% {
		transform: scale(1.1);
	}
}
/*========== JYUNBOKU-KAI ==========*/
/*-------------------- DIV --------------------*/
div.div_tpx_j_1_1 {
	margin: 0;
	vertical-align: top;
}
div.div_tpx_j_1_1 > div:first-child {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
}
div.div_tpx_j_1_1 > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_j_1_1 > div > span {
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_j_1_1 > figure {
	margin-top: 30px;
	text-align: center;
	vertical-align: middle;
}
div.div_tpx_j_1_1 > figure > img {
	width: 1000px;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_1_1 > div:first-child > p {
		font-size: 2rem;
		line-height: 2rem;
	}
	div.div_tpx_j_1_1 > figure > img {
		width: 100vw;
	}
}
/*-------------------- DIV 縦写真用 --------------------*/
div.div_tpx_j_1_1_t {
	margin: 0;
	vertical-align: top;
}
div.div_tpx_j_1_1_t > div:first-child {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_1_1_t > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
}
div.div_tpx_j_1_1_t > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_j_1_1_t > div > span {
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_j_1_1_t > figure {
	margin-top: 30px;
	text-align: center;
	vertical-align: middle;
}
div.div_tpx_j_1_1_t > figure > img {
	width: 500px;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_1_1_t > div:first-child > p {
		font-size: 2rem;
		line-height: 2rem;
	}
	div.div_tpx_j_1_1_t > figure > img {
		width: 100vw;
	}
}
/*-------------------- DIV --------------------*/
div.div_tpx_j_1_2 {
	margin: 0 auto;
	text-align: center;
	inline-size: 80%;							 /* 文章範囲 */
}
div.div_tpx_j_1_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_j_1_3 {
	padding-top: 14px;
	padding-bottom: 14px;
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_1_3 {
		inline-size: 80%;						 /* 文章範囲 */
	}
}
div.div_tpx_j_1_3 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_1_3 > p {
		font-size: 1.4rem;
		line-height: 2rem;
	}
}
div.div_tpx_j_2_1 {
	margin: 0;
	vertical-align: top;
}
div.div_tpx_j_2_1 > div {
	margin: 0 auto;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_2_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
}
div.div_tpx_j_2_1 > figure > img {
	width: 600px;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_2_1 > figure > img {
		width: 100vw;
	}
}
div.div_tpx_j_2_2 {
	margin: 0 auto;
	padding-bottom: 40px;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: center;
	vertical-align: top;
}
div.div_tpx_j_2_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_2_2 > p {
		font-size: 1.4rem;
		line-height: 2rem;
	}
}
div.div_tpx_j_2_3 {
	vertical-align: top;
	margin: 0 auto;
	inline-size: 60%;							 /* 文章範囲 */
	text-align: left;
}
div.div_tpx_j_2_3 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
/*---------- Photo ----------*/
/*-------------------- DIV --------------------*/
div.div_tpx_j_p_1_1 {
	margin: 0 0 30px 0;
	vertical-align: top;
}
div.div_tpx_j_p_1_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_p_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
}
div.div_tpx_j_p_1_1 > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_j_p_1_1 > div > span {
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_j_p_1_2 {
	margin: 0 auto;
	width: 1000px;
	vertical-align: top;
}
div.div_tpx_j_p_1_2 ul {
	padding: 0;
	margin: 0;
}
div.div_tpx_j_p_1_2 li {
	display: inline-block;
}
div.div_tpx_j_p_1_2 img {
	width: 496px;
	margin: 1px;
}
@media screen and (max-width:999px) {
	div.div_tpx_j_p_1_1 > div:first-child > p {
		font-size: 2rem;
		line-height: 2rem;
	}
	div.div_tpx_j_p_1_2 {
		margin: 0;
		width: 100%;
	}
	div.div_tpx_j_p_1_2 img {
		width: 100vw;
	}
}
/*========== NIHON University ==========*/
/*-------------------- DIV --------------------*/
div.div_tpx_n_1_1 {
	margin: 0 0 20px 0;
	vertical-align: top;
}
div.div_tpx_n_1_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_n_1_1 > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_n_1_1 > div > span {
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_n_1_1 > figure {
	margin-top: 3%;
	text-align: center;
	vertical-align: middle;
}
div.div_tpx_n_1_1 > figure > img {
	width: 1000px;
}
@media screen and (max-width:999px) {
	div.div_tpx_n_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
	div.div_tpx_n_1_1 > div > span {
		line-height: 1.6rem;
	}
	div.div_tpx_n_1_1 > div:first-child > p {
		font-size: 2rem;
		line-height: 2rem;
	}
	div.div_tpx_n_1_1 > figure > img {
		width: 100vw;
	}
}
div.div_tpx_n_1_2 {
	padding-top: 14px;
	padding-bottom: 14px;
	margin: 0 auto;
	inline-size: 40%;							 /* 文章範囲 */
	text-align: left;
}
div.div_tpx_n_1_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_n_1_2 > p:first-child{
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
}
@media screen and (max-width:999px) {
	div.div_tpx_n_1_2 {
		inline-size: 80%;						 /* 文章範囲 */
	}
	div.div_tpx_n_1_2 > p {
		font-size: 1.4rem;
		line-height: 2.4rem;
	}
}
div.div_tpx_n_1_3 {
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 3rem;
	letter-spacing: 0.1rem;
}
div.div_tpx_n_2_1 {
	margin: 0;
	padding-bottom: 40px;
	vertical-align: top;
}
div.div_tpx_n_2_1 > div {
	margin: 0 auto;
}
div.div_tpx_n_2_1 > figure > img {
	width: 600px;
}
@media screen and (max-width:999px) {
	div.div_tpx_n_2_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
	div.div_tpx_n_2_1 > figure > img {
		width: 100vw;
	}
}
div.div_tpx_n_2_2 {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: center;
	vertical-align: top;
}
div.div_tpx_n_2_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_n_2_3 {
	vertical-align: top;
	margin: 0 auto;
	inline-size: 60%;							 /* 文章範囲 */
	text-align: left;
}
div.div_tpx_n_2_3 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_n_2_4 {
	vertical-align: top;
	margin: 0 auto;
	padding-top: 10px;
	inline-size: 60%;							 /* 文章範囲 */
	text-align: left;
}
div.div_tpx_n_2_4 p {
	font-size: 1rem;
	font-weight: 300;
	line-height: 2.5rem;
	letter-spacing: 0.1rem;
}
div.div_tpx_n_2_4 > p:nth-child(2) {
	padding-left: 20px;
}
@media screen and (max-width:999px) {
	div.div_tpx_n_2_2 > p {
		font-size: 1.4rem;
		line-height: 2rem;
	}
	div.div_tpx_n_2_3 {
		inline-size: 90%;						 /* 文章範囲 */
	}
	div.div_tpx_n_2_4 {
		inline-size: 90%;						 /* 文章範囲 */
	}
}
/*---------- Photo ----------*/
/*-------------------- DIV --------------------*/
div.div_tpx_n_p_1_1 {
	margin: 0 0 30px 0;
	vertical-align: top;
}
div.div_tpx_n_p_1_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_n_p_1_1 > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_n_p_1_1 > div > span {
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_n_p_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
	div.div_tpx_n_p_1_1 > div:first-child > p {
		font-size: 2rem;
		line-height: 2rem;
	}
}
div.div_tpx_n_p_1_2 {
	margin: 0 auto;
	width: 1000px;
	vertical-align: top;
}
div.div_tpx_n_p_1_2 ul {
	padding: 0;
	margin: 0;
}
div.div_tpx_n_p_1_2 li {
	display: inline-block;
}
div.div_tpx_n_p_1_2 img {
	width: 496px;
	margin: 1px;
}
@media screen and (max-width:999px) {
	div.div_tpx_n_p_1_2 {
		margin: 0;
		width: 100%;
	}
	div.div_tpx_n_p_1_2 img {
		width: 100vw;
	}
}
/*========== others ==========*/
/*-------------------- DIV --------------------*/
/*-- img 600px --*/
div.div_tpx_o_1_1 {
	margin: 0;
	vertical-align: top;
}
div.div_tpx_o_1_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_o_1_1 > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_o_1_1 > figure {
	margin-top: 3%;
	text-align: center;
	vertical-align: middle;
}
div.div_tpx_o_1_1 > figure > img {
	width: 600px;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
	div.div_tpx_o_1_1 > figure > img {
		width: 100vw;
	}
}
/*-- img 1,000px --*/
div.div_tpx_o_2_1 {
	margin: 0;
	vertical-align: top;
}
div.div_tpx_o_2_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 0rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_o_2_1 > div:first-child > p {
	font-size: 3rem;
	font-weight: 600;
	line-height: 3.4rem;
	margin-top: 15px;
}
div.div_tpx_o_2_1 > figure {
	margin-top: 3%;
	text-align: center;
	vertical-align: middle;
}
div.div_tpx_o_2_1 > figure > img {
	width: 1000px;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_2_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
	}
	div.div_tpx_o_2_1 > figure > img {
		width: 100vw;
	}
}
/*-----------------*/
div.div_tpx_o_1_2 {
	padding-top: 14px;
	padding-bottom: 54px;
	margin: 0 auto;
	inline-size: 100%;							 /* 文章範囲 */
}
div.div_tpx_o_1_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_1_2 {
		inline-size: 80%;						 /* 文章範囲 */
	}
}
/*---------- 220425 ----------*/
div.div_tpx_o_1_3 {
	margin-top: 0%;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
div.div_tpx_o_1_3 > img {
	width: 250px;
}
div.div_tpx_o_1_3 > p {
	padding-left: 30px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 3rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_1_3 > p {
		padding-left: 0;
	}
}
/*---------- 220108 ----------*/
div.div_tpx_o_1_4 {
	display: block;
	padding: 40px 0;
}
div.div_tpx_o_1_4 > img {
	width: 1000px;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_1_4 > img {
		width: 100vw;
	}
}
/*---------- 220108 ----------*/
div.div_tpx_o_1_5 {
	display: inline-block;
	width: 70%;
}
div.div_tpx_o_1_5_a {
	margin: 15px 0;
	padding-left: 40%;
	text-align: left;
	inline-size: 90%;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_o_1_5_b {
	display: flex;
	justify-content: left;
	align-items: center;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.5rem;
	letter-spacing: 0.2rem;
}
div.div_tpx_o_1_5_b::after {
	content: '';
	width: 80%;											/* 長さ */
	height: 1px;										/* 太さ */
	background-color: #e6e6e6;
	margin-left: 20px;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_1_5 {
		width: 90%;
	}
	div.div_tpx_o_1_5_a {
		padding-left: 30%;
	}
	div.div_tpx_o_1_5_b::after {
		margin-left: 3%;
		width: 70%;	
	}
}

/*---------- 160600 ----------*/
div.div_tpx_o_1_6 {
	padding-top: 50px;
	text-align: center;
}
div.div_tpx_o_1_6 > img {
	width: 40%;
}
@media screen and (max-width:999px) {
	div.div_tpx_o_1_6 > img {
		width: 70%;
	}
}
p.p_tpx_o_1 {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
p.p_tpx_o_2 {
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
p.p_tpx_o_3 {
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.1rem;
}
/******************************************************/
/*==================== BOOK&MEDIA ====================*/
/******************************************************/
/*-------------------- slide_s_1 --------------------*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.slide_s_1 {
	width: 800px;
	padding-top: 530px;			 				/* 画像の高さ */
	position: relative;
	margin: 30px auto;
	text-align: center;
}
.slide_s_1 > img {
	position: absolute;
	width: inherit; 							/* 親のスタイルを継承 */
	left: 0;
	top: 0;
	transition: all 0.5s;
	border-radius: 3px;
	/*box-shadow:0px 0px 5px 0px rgba(0,0,0,0.3);*/
}
.slide_s_1 input[name='slide_s_1_switch'] {
	display: none;
}
/* サムネイル */
.slide_s_1 label {
	margin: 15px 5px 0 5px;
	border: 2px solid #ffffff;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
	border-radius: 3px;
}
.slide_s_1 label:hover {
	opacity: 0.9;
}
.slide_s_1 label img {
	display: block;
	width: 40px;
	border-radius: 2px;
}
.slide_s_1 input[name='slide_s_1_switch']:checked + label {
	border: 2px solid #FF7043;
	opacity: 1;
}
.slide_s_1 input[name='slide_s_1_switch'] ~ img {
	opacity: 0;
}
.slide_s_1 input[name='slide_s_1_switch']:checked + label + img {
	opacity: 1;
}
@media screen and (max-width:999px) {
	.slide_s_1 {
		width: 100%;
		padding-top: 66%;
	}
}
/*---------- button bm_1 ----------*/
.button_bm_1 {
	margin-top: 20px;
	display: inline-block;
	width: 160px;
	padding: 10px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
	cursor: pointer;
	user-select: none;
	transition: box-shadow 0.2s, transform 0.2s;
	color: #787878;
	border-width: 0;
	border-style: solid;
	border-radius: 12% / 50%;
	background: transparent;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.button_bm_1:hover {
	-webkit-transform: scale(1.02);
			transform: scale(1.02);
	box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
	color: #787878;
}
.button_bm_1:active {
	transition-duration: 0.05s;
	-webkit-transform: scale(0.99);
			transform: scale(0.99);
	box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.15) inset;
}
.button_bm_1:focus,
.button_bm_1:focus:hover {
	color: #787878;
}
/*-------------------- DIV --------------------*/
div.div_bm_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_bm_a_1 {
		border-left: none;
		border-right: none;
	}
}
/*--------------- div ---------------*/
div.div_bm_1_1 {
	margin: 20px 0 0 0;
	padding-bottom: 15px;
	vertical-align: top;
}
div.div_bm_1_2 {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	margin-top: 10px;
}
div.div_bm_1_2 > figure > img {
	width: 1000px;
}
div.div_bm_1_2 > div {
	padding-bottom: 10px;
}
div.div_bm_1_2 > div > dl {
	padding: 0 100px;
}
div.div_bm_1_2 > div > dl > dt {
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6rem;
	letter-spacing: 0.2rem;
}
div.div_bm_1_2 > div > dl > dt:last-child {		 /*You Tube 用*/
	text-align: center;
}
div.div_bm_1_2 > div > dl > dt > span {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
}
div.div_bm_1_2 > div > dl > dd {
	text-align: left;
	padding-top: 10px;
	padding-left: 300px;
	margin: 0;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.4rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_bm_1_2 > figure > img {
		width: 100vw;
	}
	div.div_bm_1_2 > div > dl {
		padding: 0 20px;
	}
	div.div_bm_1_2 > div > dl > dt {
		font-size: 1.2rem;
	}
	div.div_bm_1_2 > div > dl > dt > span {
		font-size: 1.2rem;
	}
	div.div_bm_1_2 > div > dl > dd {
		padding-left: 50px;
		font-size: 1.2rem;
	}
}
/*--------------- BOOK div ---------------*/
div.div_bmbk_1_1 {
	margin: 0;
	vertical-align: top;
}
div.div_bmbk_1_1 > div {
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 3.2rem;
	letter-spacing: 0.2rem;
}
div.div_bmbk_1_1 > div:first-child > span {
	display: inline-block;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.6rem;
	margin-top: 15px;
}
@media screen and (max-width:999px) {
	div.div_bmbk_1_1 > div {
		inline-size: 90vw;						 /* 文章範囲 */
		font-size: 2rem;
		line-height: 2rem;
	}
}
div.div_bmbk_1_2 {
	padding-top: 0px;
	padding-bottom: 0px;
	margin: 0 auto;
	inline-size: 80%;							 /* 文章範囲 */
	text-align: left;
}
div.div_bmbk_1_2 > p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 2.4rem;
	letter-spacing: 0.2rem;
}
@media screen and (max-width:999px) {
	div.div_bmbk_1_2 {
		inline-size: 90%;						 /* 文章範囲 */
	}
}
/*-------------------- section --------------------*/
section.sxn_bm_b_1 {
	margin-top: 150px;
	margin-bottom: 50px;
}
/*-------------------- DIV --------------------*/
div.div_bm_b_btn_1 {
	margin-top: 20px;
}
div.div_bm_b_btn_1 > div {
	display: inline-block;
	padding: 15px 20px;
	border-top: lightgray solid 1px;
	border-bottom: lightgray solid 1px;
}
div.div_bm_b_btn_1 > div > a {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_bm_b_btn_1 > div > a:hover {
	animation: zoom_tpx_btn 0.3s;
}
div.div_bm_b_btn_1 > div:nth-child(1) {
	border-right: lightgray solid 1px;
}
div.div_bm_b_btn_1 > div:nth-child(2) {
	border-left: lightgray solid 1px;
}
div.div_bm_b_btn_x {
	color: #efefef;
	display: inline-block;
	padding: 15px 20px;
	border-top: lightgray solid 1px;
	border-bottom: lightgray solid 1px;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_bm_b_btn_2 {
	margin-bottom: 20px;
}
div.div_bm_b_btn_2 > div {
	display: inline-block;
	padding: 15px 20px;
	border-bottom: lightgray solid 1px;
}
div.div_bm_b_btn_2 > div > a {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_bm_b_btn_2 > div > a:hover {
	animation: zoom_tpx_btn 0.3s;
}
div.div_bm_b_btn_3 {
	margin-bottom: 20px;
}
div.div_bm_b_btn_3 > div {
	display: inline-block;
	padding: 15px 20px;
	border-top: lightgray solid 1px;
	border-bottom: lightgray solid 1px;
}
div.div_bm_b_btn_3 > div > a {
	display: block;
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 2rem;
	letter-spacing: 0.2rem;
}
div.div_bm_b_btn_3 > div > a:hover {
	animation: zoom_tpx_btn 0.3s;
}
@keyframes zoom_tpx_btn {
	50% {
		transform: scale(1.1);
	}
}
/*--------------- YouTube ---------------*/
.bm_youtube {
	width: 952px;
	height: 536px;
}
@media screen and (max-width:999px) {
	.bm_youtube {
		width:auto;
		height: auto;
	}
}
/************************************************/
/*==================== LINK ====================*/
/************************************************/
/*-------------------- DIV --------------------*/
div.div_lk_a_1 {
	width: 250px;
	vertical-align: middle;
	padding: 1px 20px;
	margin: 0 auto;
	margin-bottom: 20px;
	border-left: 1px solid #787878;
	border-right: 1px solid #787878;
}
@media screen and (max-width:480px) {
	div.div_lk_a_1 {
		border-left: none;
		border-right: none;
	}
}
div.div_lk_1_top {
	padding-top: 100px;
	padding-bottom: 50px;
}
div.div_lk_1_bottom {
	padding-top: 50px;
	padding-bottom: 100px;
}
div.div_lk_1 {
	width: 800px;
	margin: 0 auto;
}
div.div_lk_1 > div {
	padding: 30px 0;
}
div.div_lk_l {
	width: 395px;
	display: inline-block;
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.6rem;
	font-weight: 500;
}
div.div_lk_l a {
	position: relative;
	display: inline-block;
}
div.div_lk_l a::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: "";
	width: 100%;
	height: 1px;
	background: #787878;
	transform: scale(0,1);
	transform-origin: right top;
	transition: transform 0.3s;
}
div.div_lk_l a:hover::after {
	transform-origin: left top;
	transform: scale(1,1);
}
div.div_lk_r {
	width: 395px;
	display: inline-block;
	text-align: right;
	font-size: 1.4rem;
	line-height: 1.4rem;
	font-style: oblique;							/* 斜字 */
}
div.div_lk_r a {
	position: relative;
	display: inline-block;
}
div.div_lk_r a::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: "";
	width: 100%;
	height: 1px;
	background: #787878;
	transform: scale(0,1);
	transform-origin: left top;
	transition: transform 0.3s;
}
div.div_lk_r a:hover::after {
	transform-origin: right top;
	transform: scale(1,1);
}
@media screen and (max-width:480px) {
	div.div_lk_1 {
		padding: 10px 0;
		width: 100%;
	}
	div.div_lk_l {
		width: 90%;
	}
	div.div_lk_r {
		width: 90%;
	}
}
.cp_hr_1 {
	position: relative;
	height: 1px;
	border-width: 0;
	background-image: -webkit-linear-gradient(left,
	transparent 0%,#283593 50%,transparent 100%);
	background-image:         linear-gradient(90deg,
	transparent 0%,#283593 50%,transparent 100%);
}
/**************************************************/
/*==================== footer ====================*/
/**************************************************/
footer {
	background-color: #787878;
	color: white;
	padding: 50px 0 50px 0;
}
footer a:link {
	color: #FFFFFF;
}
footer a:visited {
	color: #FFFFFF;
}
footer a:active {
	color: #FFFFFF;
}
/*-------------------- DIV --------------------*/
div.div_ftr_1_1 {
	display: inline-block;
	margin: 0;
	vertical-align: top;
}
div.div_ftr_1_1 > div:first-child > p {
	font-size: 2rem;
	font-weight: 900;
	letter-spacing: 0.1rem;
	font-style: oblique;
	color: white;
	text-align: center;
}
div.div_ftr_1_2 {
	margin: 35px 0;
	vertical-align: top;
}
div.div_ftr_1_2 a {
	padding: 0 15px;
}
div.div_ftr_1_3 {
	font-size: 1rem;
	font-weight: 100;
	line-height: 1rem;
	letter-spacing: 0.1rem;
}
div.div_ftr_2_1 {
	display: inline-block;
	margin-left: 100px;
	vertical-align: top;
}
div.div_ftr_2_2 {
	font-size: 1.3rem;
	font-weight: 400;
	letter-spacing: 0.1rem;
	color: white;
	text-align: left;
	width: 10vw;
	padding-bottom: 12px;
	margin-bottom: 12px;
	border-bottom: white solid 1px 
}
div.div_ftr_3_1 {
	font-size: 1.2rem;
	font-weight: 100;
	letter-spacing: 0.1rem;
	color: white;
	text-align: left;
	padding-bottom: 20px;
}
div.div_ftr_3_2 {
	font-size: 1.2rem;
	font-weight: 100;
	letter-spacing: 0.1rem;
	color: white;
	text-align: left;
	padding-bottom: 20px;
	padding-left: 15px;
}
@media screen and (max-width:999px) {
	footer {
		padding: 10px 0;
	}
	div.div_ftr_1_1 {
		display: inline;
		margin: 0 auto;
	}
	div.div_ftr_1_2 {
		margin: 30px 0;
	}
	div.div_ftr_2_1 {
		display: none;
	}
}
/*==================== EOF ====================*/