

/* --------------------------------------------- */
/* ▼モバイル (共通のデザイン)                    */
/* --------------------------------------------- */



@charset "utf-8";

body {
	width: 100%;
	margin: 0 auto;
	background: #DEDEDE;
}


header {
  width: 100%;
}

.footer_A {
	background: #333333;
	padding: 10px 10px;
}

.clearfix {
	display: block;
	clear: both;
}

img {
	margin-bottom: -7px; 
}




/*///// Header CSS /////*/


/*/// Header Head CSS ///*/
.header-head {
	background: #333333;
	padding: 10px 10px;
	color: #FFFFFF;
}
.header-head-text-1 {
	font-weight: bold;
	font-size: 1em;
}
.header-head-text-2 {
	font-size: 0.8em;
}



/*/// imgheader A ///*/
.imgheader-A {
	width: 100%;
	position: relative;
}
.imgheader-A-img {
	width: 100%;
}
.imgheader-A-text {
	position: absolute;
	top: 40%;
	width: 100%;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
}



/*/// Swiper CSS ///*/

/* 全体のスタイル */
.swiper-wrapper {
	width: 100%;
}
/* 全スライド共通スタイル */
.swiper-slide {
	height: 100%;
	text-align: center;
	line-height: 0px;
}
.swiper-img {
	width: 100%;
	object-fit: fill;
}
.swiper-text {
	color: #000000;
	font-size: 2em;
	position: absolute;
	display: flex;
	width: 100%;
	height: 100%;
	top: 50%;
	text-shadow: 3px 3px 4px rgba(0, 0, 0, 0.6);
	justify-content: center;
}
/* 4の倍数＋1枚目のスライドのスタイル（1枚目、5枚目…） */
.swiper-slide:nth-child(4n+1) {
	background-color: #FFFFFF;
}
/* 4の倍数＋2枚目のスライドのスタイル（2枚目、6枚目…） */
.swiper-slide:nth-child(4n+2) {
	background-color: #FFFFFF;
}
/* 4の倍数＋3枚目のスライドのスタイル（3枚目、7枚目…） */
.swiper-slide:nth-child(4n+3) {
	background-color: #FFFFFF;
}
/* 4の倍数＋4枚目のスライドのスタイル（4枚目、8枚目…） */
.swiper-slide:nth-child(4n+4) {
	background-color: #FFFFFF;
}




/*///// Main CSS /////*/



/*/// SNS-block CSS ///*/
.fa-twitter {
	color: #00acee;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4);
}
.fa-facebook-square {
	color: #3b5998;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4);
}
.fa-instagram {
	color: #e1306c;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4);
}
.fa-line {
	color: #00c300;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
}
.fa-youtube {
	color: #ff0000;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4);
}
.fa-discord {
	color: #738adb;
	text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
}


/*/// SNS-block-A CSS ///*/
.SNS-block-A {
	padding: 20px 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	background: #FFFFFF;
}
.SNS-block-link {
	margin: 0 8px;
	font-size: 1.8em;
}



/*/// SNS-block-B CSS ///*/
.SNS-block-B {
	padding: 20px 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	background: #333333;
}




/*/// catch-A CSS ///*/
.catch-A {
	width: 100%;
	background: #FFFFFF;
}
.catch-A-title {
	margin: 0;
	padding: 80px 15px 50px 15px;
	width: 100%;
  font-size: 1.3em;
	text-align: center;
	box-sizing: border-box;
}
.catch-A-text {
	padding: 0 15px 80px 15px;
	text-align: center;
}




/*/// catch-B CSS ///*/
.catch-B {
	width: 100%;
	padding: 0 0 40px 0;
	background: #FFFFFF;
}
.catch-B-img {
	width: 70%;
	margin: 30px 15% 0 15%;
	border-radius: 100em;
}
.catch-B-title {
	margin: 0;
	padding: 40px 15px 50px 15px;
	width: 100%;
  font-size: 1.2em;
	text-align: center;
	box-sizing: border-box;
}
.catch-B-text {
	padding: 0 15px 0px 15px;
	text-align: center;
}






/*/// catch-C CSS ///*/
.catch-C {
	background: #FFFFFF;
	padding: 40px 10px 40px 10px;
	box-sizing: border-box;
}
.catch-C-content {
	
}
.catch-C-title {
	margin: 0;
	font-size: 1.2em;
	width: 100%;
	padding: 0 15px 20px 15px;
	margin: 0 auto;
}
.catch-C-text {
	padding: 20px 15px 0 15px;
	font-size: 0.9em;
}
.catch-C-content ul {
	font-size: 0.9em;
	font-weight: bold;
}




/*/// catch-D CSS ///*/
.catch-D {
	width: 100%;
	background: #333333;
	color: #FFFFFF;
}
.catch-D-title {
	margin: 0;
	padding: 40px 15px 50px 15px;
	width: 100%;
  font-size: 1.2em;
	text-align: center;
	box-sizing: border-box;
}
.catch-D-text {
	padding: 0 15px 80px 15px;
	text-align: center;
}




/*/// showcase-A CSS ///*/
.showcase-A {
	width: 100%;
	min-height: 300px;
	overflow: hidden;
}
.showcase-A img {
	width: 100%;
}
.showcase-A-content {
	background: rgba(0, 0, 0, 0.7);
	width: 100%;
	height: 100%;
	bottom: 0;
	right: 0;
	display: flex;
	align-items: center;
	margin: 0;
}
.showcase-A-inner {
	margin: 0;
	padding: 30px;
}
.showcase-A-content h2 {
	width: 100%;
	text-align: center;
	color: #FFFFFF;
	padding: 30px 5px;
	font-size: 1.2em;
	margin: 0;
}
.showcase-A-content div {
	color: #FFFFFF;
	padding: 0 10px 20px 10px;	
	margin: 0;
}





/*/// showcase-B CSS ///*/
.showcase-B {
	width: 100%;
	min-height: 300px;
	overflow: hidden;
}
.showcase-B img {
	width: 100%;
}
.showcase-B-content {
	background: rgba(0, 0, 0, 0.7);
	width: 100%;
	height: 100%;
 	bottom: 0;
	right: 0;
	display: flex;
	align-items: center;
}
.showcase-B-inner {
	margin: 0;
	padding: 30px;
}
.showcase-B-content h2 {
	width: 100%;
	text-align: center;
	color: #FFFFFF;
	padding: 30px 5px;
	font-size: 1.2em;
	margin: 0;
}
.showcase-B-content div {
	color: #FFFFFF;
	padding: 0 10px 20px 10px;	
}






/*/// btn-showcase-A CSS ///*/
.btn-showcase-A {
	width: 100%;
	padding: 30px 15px;
	background: #FFFFFF;
	box-sizing: border-box;
}
.btn-showcase-A img {
	display: block;
	width: 60%;
	margin: 0 auto 0px auto;
}
.btn-showcase-A-content {
	width: 100%;
	margin: 30px 0 0 0;
  padding: 15px;
	border: solid #DCDCDC 1px;
	box-sizing: border-box;
}
.btn-showcase-A-content h2 {
	width: 100%;
	margin: 0;
	text-align: center;
}
.btn-showcase-A-text {
	padding: 20px 10px;
}
.btn-showcase-A-btn-outer {
	width: 100%;
	display: flex;
	justify-content: center;
	margin: 0 0 15px 0;
}
.btn-showcase-A-btn-outer a {
	display: block;
	background: #FF5500;
	padding: 8px 13px;
	font-weight: bold;
	font-size: 1.2em;
	text-decoration: none;
	color: #FFFFFF;
}






/*///// Footer CSS /////*/

.footer-credit {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer-SNS-block {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 15px 50px 15px;
	box-sizing: border-box;
}
.footer-SNS-link {
	margin: 0 8px;
	text-decoration: none;
	font-size: 1.7em;
}


/*/// Footer A CSS ///*/
.footer_A {
	background: #333333;
	padding: 40px 10px 40px 10px;
	display: block;
	justify-content: center;
	align-items: center;
}
.footer_A span {
	color: #FFFFFF;
	margin: 10px 10px 0 0;
}
.footer_A_img_link {
	width: 30%;
	display: inline-flex;
	justify-content: center;
}
.footer_A_img {
	width: 100%;
}




/*/// Footer B CSS ///*/
.footer_B {
	background: #333333;
	padding: 40px 10px 40px 10px;
	display: block;
}
.footer_B_btn_outer {
	width: 100%;
	margin: 30px 0 100px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer_B_btn_outer a {
	background: #FF5500;
	padding: 8px 20px;
	font-weight: bold;
	font-size: 1.3em;
	text-decoration: none;
	color: #FFFFFF;
}
.footer_B span {
	color: #FFFFFF;
	margin: 10px 10px 0 0;
}
.footer_B_img_link {
	width: 30%;
	display: inline-flex;
	justify-content: center;
}
.footer_B_img {
	width: 100%;
}











/* ----------------------------------- */
/* ▼タブレット                         */
/* ----------------------------------- */



@media all and (min-width: 768px) {
	
	
	/*/// Header Head CSS ///*/
	.header-head {
		background: #333333;
		padding: 20px 30px;
		color: #FFFFFF;
	}
	.header-head-text-1 {
		font-weight: bold;
		font-size: 1.8em;
	}
	.header-head-text-2 {
		font-size: 1em;
	}
	
	
	
	/*/// imgheader A ///*/
	.imgheader-A-text {
		font-size: 2em;
	}
	


	/*/// Swiper CSS ///*/
	
	/* 全体のスタイル */
	.swiper-wrapper {
		width: 100%;
		height: 250px;
	}
	/* 全スライド共通スタイル */
	.swiper-text {
    top: 50%; 
		font-size: 3em;
	}

	
	
	
	
	/*/// SNS-block CSS ///*/
	.SNS-block-link {
		margin: 0 15px;
		font-size: 2.8em;
	}

	
	
	
	
	/*/// showcase-A CSS ///*/
	.showcase-A {
		/*! width: 100%; */
		min-height: 300px;
		position: relative;
		overflow: hidden;
	}
	.showcase-A img {
		width: 100%;
	}
	.showcase-A-content {
		background: rgba(0, 0, 0, 0.7);
		position: absolute;
		width: 50%;
		height: 100%;
		bottom: 0;
		right: 0;
		display: flex;
		align-items: center;
	}
	.showcase-A-inner {
		margin: 0;
	}
	.showcase-A-content h2 {
		width: center;
		text-align: center;
		color: #FFFFFF;
		font-size: 1.2em;
		padding: 0 0 20px 0;
		margin: 0;
	}
	.showcase-A-content div {
		color: #FFFFFF;
		padding: 0 20px 0px 20px;	
		text-align: center;
	}
	
	
	

	
	/*/// showcase-B CSS ///*/
	.showcase-B {
		/*! width: 100%; */
		min-height: 300px;
		position: relative;
		overflow: hidden;
	}
	.showcase-B img {
		width: 100%;
	}
	.showcase-B-content {
		background: rgba(0, 0, 0, 0.7);
		position: absolute;
		width: 50%;
		height: 100%;
		bottom: 0;
		left: 0;
		display: flex;
		align-items: center;
	}
	.showcase-B-inner {
		margin: 0;
	}
	.showcase-B-content h2 {
		width: center;
		text-align: center;
		color: #FFFFFF;
		font-size: 1.2em;
		padding: 0 0 20px 0;
		margin: 0;
	}
	.showcase-B-content div {
		color: #FFFFFF;
		padding: 0 20px 0px 20px;	
		text-align: center;
	}
	




	/*/// btn-showcase-A CSS ///*/
	.btn-showcase-A {
		display: flex;
	}
	.btn-showcase-A img {
		width: 40%;
		padding: 20px;
		box-sizing: border-box;
	}
	.btn-showcase-A-content {
		width: 60%;
		margin: 0;
		padding: 30px 0 0 20px;
		border: none;
		box-sizing: border-box;
	}
	.btn-showcase-A-content h2 {
		width: 100%;
		margin: 0;
		font-size: 1.5em;
		text-align: center;
	}
	.btn-showcase-A-text {
		padding: 30px 20px;
	}
	.btn-showcase-A-btn-outer {
		width: 100%;
	}
	.btn-showcase-A-btn-outer a {
		font-size: 1.3em;
	}

	
	
	
	
	/*/// catch-A CSS ///*/
	.catch-A-title {
		font-size: 2em;
	}


	
	
	/*/// catch-B CSS ///*/
	.catch-B {
		display: flex;
	}
	.catch-B-img {
		width: 30%;
		padding: 20px;
		margin: 0;
		border-radius: 100em;
	}
	.catch-B-content {
		width: 70%;
	}
	.catch-B-title {
		margin: 0;
		padding: 15px 0 0 0;
		width: 100%;
		height: 30%;
		font-size: 1.3em;
    display: flex;
		justify-content: center;
		align-items: center;
	}
	.catch-B-text {
		padding: 0 20px 0 0;
		font-size: 0.9em;
		text-align: center;
	}
	
	
	
	
	/*/// catch-C CSS ///*/
	.catch-C {
		background: #FFFFFF;
		padding: 40px 30px;
	}
	.catch-C-content {
	}
	.catch-C-title {
		margin: 0;
		font-size: 2em;
		width: 100%;
		padding: 0 10px 20px 10px;
		margin: 0 auto;
		text-align: center;
	}
	.catch-C-text {
		padding: 20px 0 0 0;
		font-size: 1em;
	}
	.catch-C-content ul {
		display: block;
		margin-left: 30%;
		font-size: 1.4em;
		font-weight: bold;
	}

	
	
	/*/// catch-D CSS ///*/
	.catch-D-title {
		font-size: 2em;
	}
	
	

	
	/*///// Footer CSS /////*/

	.footer-SNS-link {
		margin: 0 14px;
		font-size: 2.2em;
	}
	
	/*/// Footer A CSS ///*/
	.footer_A {
		background: #333333;
		padding: 80px 10px 60px 10px;
		justify-content: center;
		align-items: center;
	}
	.footer_A span {
		color: #FFFFFF;
		margin: 20px 10px 0 0;
	}
	.footer_A_img_link {
		width: 20%;
		display: inline-flex;
		justify-content: center;
	}
	.footer_A_img {
		width: 100%;
	}
	
	
	
	/*/// Footer B CSS ///*/
	.footer_B {
		background: #333333;
		padding: 80px 10px 60px 10px;
	}
	.footer_B span {
		color: #FFFFFF;
		margin: 20px 10px 0 0;
	}
	.footer_B_img_link {
		width: 20%;
		display: inline-flex;
		justify-content: center;
	}
	.footer_B_img {
		width: 100%;
	}
	
    
}




  
  
/* ------------------------------------ */
/* ▼パソコン用                          */
/* ------------------------------------ */



@media all and (min-width: 920px) {

	body {
		width: 85%;
	}



	/*/// Swiper CSS ///*/

	/* 全体のスタイル */
	/* 全スライド共通スタイル */
	.swiper-slide {
		max-height: 80vh;
	}
	.swiper-text {
		font-size: 4em;
	}




	/*/// imgheader A ///*/
	.imgheader-A-text {
		top: 45%;
		font-size: 3em;
	}


	
	/*/// SNS-block CSS ///*/
  .SNS-block-link {
		margin: 0 25px;
		font-size: 3.5em;
	}

	
	
	
	/*/// showcase-A CSS ///*/
	.showcase-A-content h2 {
		font-size: 2em;
	}
	.showcase-A-content div {
		font-size: 1.2em;
	}


	/*/// showcase-B CSS ///*/
	.showcase-B-content h2 {
		font-size: 2em;
	}
	.showcase-B-content div {
		font-size: 1.2em;
	}


	/*/// btn-showcase-A CSS ///*/
	.btn-showcase-A {
		display: flex;
		padding: 60px;
	}
	.btn-showcase-A-content {
		padding: 80px 0 0 20px;
	}
	.btn-showcase-A img {
		padding: 50px;
	}
	.btn-showcase-A-content h2 {
		font-size: 2.2em;
	}
	.btn-showcase-A-text {
		font-size: 1.2em;
		padding: 50px 60px;
	}
	.btn-showcase-A-btn-outer a {
		font-size: 1.8em;
		padding: 10px 30px;
	}

	
	
	
	
	/*/// catch-A CSS ///*/
	.catch-A {
		padding: 0px 40px;
		box-sizing: border-box;
	}
	.catch-A-title {
		font-size: 2.5em;
	}
	.catch-A-text {
		font-size: 1.4em;
	}


	
	
	/*/// catch-B CSS ///*/
	.catch-B-title {
		margin: 60px 0 0 0;
		font-size: 2.2em;
	}
	.catch-B-text {
		font-size: 1.2em;
		padding: 0 40px 0 0;
	}
	
	
	
	
	/*/// catch-C CSS ///*/
	.catch-C {
		padding: 60px 40px;
	}
	.catch-C-text {
		font-size: 1.2em;
		padding: 20px 50px;
	}
	.catch-C-title {
		font-size: 2.2em;
	}
	.catch-C-content ul {
		margin-left: 37%;
	}
	
	
	
	/*/// catch-D CSS ///*/
	.catch-D {
		padding: 0px 40px;
		box-sizing: border-box;
	}
	.catch-D-title {
		font-size: 2.5em;
	}
	.catch-D-text {
		font-size: 1.4em;
	}
	

	
	
	/*///// Footer CSS /////*/
	
	.footer-SNS-link {
		margin: 0 20px;
		font-size: 3em;
	}

	/*/// Footer A CSS ///*/
	.footer_A_img_link {
		width: 10%;
	}

	

	/*/// Footer B CSS ///*/
	.footer_B_img_link {
		width: 10%;
	}

	
	
	

}
  

@media all and (min-width: 1200px) {

  
}


