/*-------------
 	General
-------------*/

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html{
	font: normal 16px sans-serif;
	color: #555;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, Meiryo, sans-serif;
}

ul, nav{
	list-style: none;
}

a{
	text-decoration: none;
	color: inherit;
	cursor: pointer;
/*	opacity: 0.9;*/
}

a:hover{
	opacity: 1;
}

a.btn{
	color: #fff;
	border-radius: 4px;
	text-transform: uppercase;
	background-color: #2196F3;
	font-weight: 800;
	text-align: center;
}

hr{
	margin: 0 auto 2.5rem auto;
	padding: 0;
	width: 150px;
	height: 2px;
	background-color: #e91e63;
	border: 0;
}

section{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1.5rem !important;
}


.hanbai{color:#e4007f;}


.moviewindow{
		width: 60%;
		position: relative;
		padding-bottom: 35.25%;
		height: 0;
		overflow: hidden;
}


@media (max-width: 1000px){

	section{
		padding: 100px 50px;
	}

	.moviewindow{
		width: 80%;
		position: relative;
		padding-bottom: 49.25%;
		height: 0;
		overflow: hidden;
	}
}

@media (max-width: 600px){

	section{
		padding: 80px 30px;
	}

	.moviewindow{
		width: 90%;
		position: relative;
		padding-bottom: 61.25%;
		height: 0;
		overflow: hidden;
	}

}

section h3.title{
	color: #e4007f;
	text-transform: capitalize; 
	font-size: max(1.125rem, min(2.6vw, 1.25rem));
	margin: 0 auto;
	padding: 1em 0 2em;
	text-align: center;
}
section h3.title > span {
	display: inline-block;
}


section h4.bold-box span.bunka{
	font-size:1rem;
}


section p{
	max-width: 960px;
	text-align: center;
	margin: 1.5rem auto;
	padding: 0 .5rem;
	line-height: 2;
	font-size:1rem;
	text-align: left;
}
section h4{
	text-align: center;
	font-size:1.25rem;
}

section.our-work h4{
	text-align: center;
	font-size:1.35rem;
}



@media (max-width: 768px){
section.our-work h4{
	text-align: center;
	font-size:1.15rem;
}
}



/*-------------
 	Header
-------------*/

header{
width: 100%;
margin: 0 auto;
padding: 0;
text-align: center;
background:#f8cde0;
/*
background-image: linear-gradient(319deg, rgba(255, 245, 152, 1), rgba(255, 254, 249, 1));
background-image: url(img/top_bg.png);
background-repeat: no-repeat;
background-size: cover;
background-color: #fffb71;
background: repeating-linear-gradient(-45deg, #21c0e1, #21c0e1 12px, #70dff6 12px, #70dff6 24px);
*/

}

header img{
margin: 0 auto;
width: 100%;
max-width: 960px;
display: block;
}

header p{
margin: 0 auto;
padding:.5rem;
width: 100%;
max-width: 960px;
font-size: max(.75rem, min(1.8vw, .9em));
text-align: left;
/*
text-shadow:
1px 1px 0 #21c0e1, -1px -1px 0 #21c0e1,
-1px 1px 0 #21c0e1, 1px -1px 0 #21c0e1,
0 1px 0 #21c0e1, 0 -1px 0 #21c0e1,
-1px 0 0 #21c0e1, 1px 0 0 #21c0e1;
*/
}


/*--------------------
 	Our Work Section
---------------------*/

.our-work{
background-color: #fff;
}

.our-work ul{
margin: 0 auto;
max-width:960px;
padding: 0;
display:flex;
}
.our-work li{
margin: 0 .5%;
width:49%;
padding: 0;
}
.our-work img{
width:100%;
border-radius:10px;
}


/*----------------------
 	Features Section
----------------------*/

.features{
	background-color: #f7f7f7;
}


.features li span{
font-size: .85rem;
}


/*-------------
 	Footer
-------------*/

footer{
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	color: #fff;
	background-color: #e4007f;
	padding: 30px 0 !important;
}

footer ul{
	display: flex;
	margin-bottom: 25px;
	font-size: 32px;
}

footer ul li{
	margin: 0 8px;	
}

footer ul li:first-child{
	margin-left: 0;	
}

footer ul li:last-child{
	margin-right: 0;	
}

footer p{
	text-transform: uppercase;
	font-size: 14px;
	color: rgba(255,255,255,0.6);
	margin-bottom: 10px;
}

footer p a{
	color: #fff;
}

@media (max-width: 700px){

	footer{
		padding: 80px 15px;
	}

}



/*====================================*/
/*==table==*/
/*====================================*/

.features dl {
display: flex;
flex-wrap: wrap;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
border-top: none;
background: #fff;
max-width:960px;
box-sizing: border-box;
}
.features dt {
background: #e4007f;
width: 20%;
padding: 1rem;
box-sizing: border-box;
border-top: 1px solid #ccc;
color: #fff;
text-align: center;
align-items: center;
}

.features dt.senkou {
background: #ffcf06;
color: #ea0000;
font-weight:bold;
font-size:1.2em;
}



.features dd {
padding: 1rem;
margin: 0;
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
width: 80%;
background: #fff;
box-sizing: border-box;
align-items: center;
font-size: 1.2rem;
line-height:1.3em;
}

.features dd.senkou {
font-size: 1.4rem;
background: #fffeca;
}
.features dd.senkou .hanbai{
color: #ea0000;
}


.features dd span{font-size: 1rem;}


ul.playguide{
margin-left: 1em;
list-style-type: disc;
}

ul.playguide a{
text-decoration: underline;
}

.features .btn {
margin-top: 1em;
padding: 1rem 0;
}

.features .btn a{
background: #00afcc;
padding: 1em .5em;
box-sizing: border-box;
color: #fff;
text-align: center;
transition: 0.8s ;
border-radius:10px;
font-weight:bold;
}

.features .btn a:hover{
opacity: 0.5;
}



@media (max-width: 768px) {
.features dt {width: 100%; padding:.5rem 1rem;}
.features dd {width: 100%;}
}



/*================*/


.chuui{
background-color: #fff;
}
.chuui-inn{
margin:1.5rem;
padding:1rem;
max-width:960px;
box-sizing: border-box;
border: 1px solid #00a7c9;
border-radius:6px;
}


.chuui ul{
margin:0;
padding:0;

}

.chuui li{
text-indent: -1em;
padding: 0 0 .3em 1em;
box-sizing: border-box;
}
.chuui-inn p{
margin:1.5rem 0 0 0;
padding:0;
}


@media (max-width: 980px){
.pc_on{display:none;}
}



/* youtube ߍ */
.yt {
margin: 0 auto;
width: 100%;
max-width: 1040px;
}

.yt ul{
margin: 0 auto;
padding:0;
width: 100%;
box-sizing: border-box;
}
.yt li{
margin: 1rem auto;
box-sizing: border-box;
padding:.5rem 0
width: 100%;
}

@media (min-width: 789px){
.yt ul{display: flex;}
.yt li{padding:.5rem 1%;width: 49%;}
}

.youtube-video {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube-video iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}



/*  */
section.kanbai{
background: #e4007f;
align-items: center;
padding: 0 !important;
}

section.kanbai p{
margin: 0 auto;
padding:1em;
color: #fff;
font-weight:bold;
font-size:1.2em;
}