@charset "utf-8";

header{
	background:#fff;
	width:100%;
	box-shadow:2px 2px 2px 1px rgba(0, 0, 0, 0.2);
}

.header_inner{
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:10px;
}

.br_logo{
	width:15%;
	margin-left:10px;
}

.br_logo img{
	width:100%;
}

.sns_ico{
	display:flex;
	justify-content:space-between;
	width:20%;
}

.sns_ico img{
	width:80%;
}

.mv{
	width:100%;
	background:url(../image/mv_bg.png);
	padding:20px 20px 40px 20px;
	clip-path: polygon(93% 0%, 100% 12%, 100% 100%, 7% 100%, 0% 88%, 0% 0%);
	margin:30px 0 30px 0;
}

.mv h1{
	padding:0 4%;
}

.mv h1 img{
	margin-bottom:15px;
	margin-top:5px;
}

.mv img{
	width:100%;
}

.bnr_area{
	display:flex;
	/*justify-content:space-around;*/
	justify-content:center; /*バナー2つ表示の場合のみ適用*/
	width:85%;
	margin:0 auto;
}

.bnr_area>div{
	width:30%;
	background:#fff;
	margin:0 20px; /*バナー2つ表示の場合のみ適用*/
}

.bnr_area img{
	width:100%;
	box-shadow:2px 2px 2px 1px rgba(0, 0, 0, 0.2);
	transition-duration:0.3s;
}

.bnr_area img.bnr:hover{
	opacity:0.5;
}

.bnr_area img.non-actv_bnr{
	pointer-events: none;
}

.column{
	width:100%;
	height:100%;
	margin-bottom:40px;
	text-align:left;
}

.column img{
	width:100%;
}

.column_inner {
  width: 100%;
  background:#fff;
  padding:50px;
}

.column_main{
	font-size:18px;
}

.column_inner h2{
	color:#fff;
	background-image: linear-gradient(to right, #7c52a0, #6c65b5, #5677c5, #3987d1, #0097d8);
	font-size: 2.4rem;
	padding:1em 8em 1em 1em;
	display:inline-block;
	margin-bottom:20px;
}

.column_txt_l{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-top:30px;
}

.column_txt_l > div, .column_txt_r > div{
	width:calc(50% - 20px);
	
}

.column_txt_r{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin-top:30px;
}

.column_txt_full{
	width:100%;
	margin-top:30px;
}

.decorative-double-line {
  width:100%;
  position: relative;
  padding-top: 3px;
  background-image: linear-gradient(to right, #7c52a0, #6c65b5, #5677c5, #3987d1, #0097d8);
  margin-top:58px;
}

.decorative-double-line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 10px;
  margin-top:8px;
  background-image: linear-gradient(to right, #7c52a0, #6c65b5, #5677c5, #3987d1, #0097d8);
}

.youtube{
	width:100%;
	height:100%;
	margin-bottom:40px;
}
.youtube_inner {
  width: 80%;
  margin:0 auto;
}

.youtube h2{
	margin: 0 0 10px;
    color: #fff;
    font-size: 3.2rem;
	text-align:center;
    font-weight: 700;
    text-shadow: #000 3px 0 0, #000 -3px 0 0, #000 0 -3px 0, #000 0 3px 0, #000 3px 1px 0, #000 -3px 1px 0, #000 1px -3px 0, #000 1px 3px 0, #000 3px -1px 0, #000 -3px -1px 0, #000 -1px -3px 0, #000 -1px 3px 0, #000 3px 2px 0, #000 -3px 2px 0, #000 2px -3px 0, #000 2px 3px 0, #000 3px -2px 0, #000 -3px -2px 0, #000 -2px -3px 0, #000 -2px 3px 0, #000 3px 3px 0, #000 -3px 3px 0, #000 3px -3px 0, #000 -3px -3px 0, #000 2px 0 0, #000 -2px 0 0, #000 0 -2px 0, #000 0 2px 0, #000 1px 2px 0, #000 -1px 2px 0, #000 1px -2px 0, #000 -1px -2px 0, #000 2px 1px 0, #000 -2px 1px 0, #000 2px -1px 0, #000 -2px -1px 0, #000 2px 2px 0, #000 -2px 2px 0, #000 2px -2px 0, #000 -2px -2px 0, #000 1px 1px 0, #000 -1px 1px 0, #000 1px -1px 0, #000 -1px -1px 0;
}

.iframe-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow:auto; 
  -webkit-overflow-scrolling:touch;
  border:2px solid #ccc; 
}
.iframe-wrap iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    display:block;
}

.group_point{
	width:100%;
	height:100%;
	margin-bottom:40px;
}

/*.group_point_inner{
	width:100%;
	height:100%;
	background:#fff;
	margin-bottom:40px;
}

.group_point iframe{
	border:solid #fff 0px;
	width:100%;
	height:1208px;
	padding:0;
	display:block;
}*/

.group_point_inner {
  position: relative;
  width: 100%;
  padding-top: 100%;
  overflow:auto; 
  -webkit-overflow-scrolling:touch;
  background:#fff;  
}
.group_point_inner iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    display:block;
}

.group_point h2{
	margin: 0 0 10px;
    color: #fff;
    font-size: 3.2rem;
	text-align:center;
    font-weight: 700;
    text-shadow: #000 3px 0 0, #000 -3px 0 0, #000 0 -3px 0, #000 0 3px 0, #000 3px 1px 0, #000 -3px 1px 0, #000 1px -3px 0, #000 1px 3px 0, #000 3px -1px 0, #000 -3px -1px 0, #000 -1px -3px 0, #000 -1px 3px 0, #000 3px 2px 0, #000 -3px 2px 0, #000 2px -3px 0, #000 2px 3px 0, #000 3px -2px 0, #000 -3px -2px 0, #000 -2px -3px 0, #000 -2px 3px 0, #000 3px 3px 0, #000 -3px 3px 0, #000 3px -3px 0, #000 -3px -3px 0, #000 2px 0 0, #000 -2px 0 0, #000 0 -2px 0, #000 0 2px 0, #000 1px 2px 0, #000 -1px 2px 0, #000 1px -2px 0, #000 -1px -2px 0, #000 2px 1px 0, #000 -2px 1px 0, #000 2px -1px 0, #000 -2px -1px 0, #000 2px 2px 0, #000 -2px 2px 0, #000 2px -2px 0, #000 -2px -2px 0, #000 1px 1px 0, #000 -1px 1px 0, #000 1px -1px 0, #000 -1px -1px 0;
}

.rule_btn{
	width:30%;
	background: #cccc66;
	border-radius: 10px;
	background: rgb(255,150,3);
	background: -webkit-linear-gradient(bottom, rgba(255,150,3,1) 0%, rgba(254,214,3,1) 100%);
	background: -o-linear-gradient(bottom, rgba(255,150,3,1) 0%, rgba(254,214,3,1) 100%);
	background: linear-gradient(to top, rgba(255,150,3,1) 0%, rgba(254,214,3,1) 100%);
	box-shadow: 3px 3px 5px 0px rgba(255,255,255,0.8) inset,-3px -3px 5px 0px rgba(0,0,0,0.4) inset;
	border:solid #fff 3px;
	margin:0 auto 60px auto;
	text-align:center;
	padding:15px 45px;
	cursor:pointer;
}




.rule_btn img{
	width:100%;
}


.rule_btn .rule_btn_txt{
	width:100%;
	transition-duration:0.3s;
}

.rule_btn .rule_btn_txt:hover{
	filter:brightness(1.5);
}




.attention_txt{
	text-align:center;
	font-size:2rem;
	font-weight:bold;
}

.section02{
	width:100%;
	margin: 0 auto 30px auto;
	background:#cbcaca;
}

.section03 {
    width: 100%;
    margin: 0 auto;
}






/* モーダル ここから */

body.fixed {
	position: fixed;
	left: 0;
}
.content {
	display: none;
	position: fixed;
	top: 0;
	left:0;
	width: 100%;
	height: 100vh;
	z-index:9999;
}
.overlay {
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
}

.modal{
	position: absolute;
	background-color: #fff;
	top: 7.5%;
	left: 50%;
	transform: translate(-50%, 0%);
	width: 80%;
	height: 85%;
	padding:5%;
	overflow: scroll;
}


.modal__close img{
	width:20px;
	height:20px;
	position:absolute;
	right:0;
	top:0;
	margin:20px 20px 0 0 ;
}

.modal_close_txt{
	font-size:1.8rem;
	background:#e2e2e2;
	border-radius:20px;
	padding:10px 20px;
	color:#000;
	font-weight:bold;
	width:30%;
	margin:50px auto 0 auto;
	transition-duration:0.3s;
}

.modal_close_txt:hover{
	opacity:0.5;
}

.modal_close_txt a{
	text-decoration:none;
	color:#000;
}

/* モーダル ここまで */




/* スクロールバーカスタマイズ */
.scroll_bar{
   overflow-y: scroll;
   overflow-x: scroll;
}
.scroll_bar::-webkit-scrollbar{
   width: 10px;
}
.scroll_bar::-webkit-scrollbar-track{
   background-color: rgba(255,255,255,0);
}
.scroll_bar::-webkit-scrollbar-thumb{
   background-color: #d9d9d9;
   border-radius:20px;
}




@media screen and (max-width:1220px){
	.header_title {
		width: 100%;
	}
	
	.youtube{
		width:90%;
		margin:0 auto 40px auto;
	}
	
	.youtube_inner{
		width:100%;
	}
	
	.group_point{
		width:95%;
		margin:0 auto 40px auto;
	}
	
	.rule_btn{
		width:40%;
	}
	
	.group_point_inner {
	  padding-top: 110%;
	}
}

@media screen and (max-width:1150px){
	.group_point_inner {
	  padding-top: 115%;
	}
}

@media screen and (max-width:1120px){
	.group_point_inner {
	  padding-top: 123%;
	}
}




@media screen and (max-width:767px){
	.l-main {
		margin: 0 0 30px;
	}
	
	.mv{
		width:100%;
		background:url(../image/mv_bg_sp.png);
		clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 100%, 0% 0%);
		padding:10px 0 0 0;
		margin:15px 0 30px 0;
	}
	
	.header_title{
		width:100%;
	}
	
	.br_logo{
		width:35%;
		margin-left:5px;
	}

	.br_logo img{
		width:100%;
	}

	.sns_ico{
		display:flex;
		justify-content:space-between;
		width:55%;
		margin-right:-10px;
	}

	.sns_ico img{
		width:80%;
	}
	
	.mv h1{
		padding:2% 4% 2%;
	}
	
	.mv h1 img{
		margin:0;
	}
	
	/* トップスライダー ここから*/
	.bg_bk_trans{
		background: rgba(0,0,0,0.3);
	}
	
	ul.slick-dots{
		display:flex;
		justify-content:center;
	}
	
	.slick-initialized .slick-slide{
		text-align:center;
	}
	/* トップスライダー ここまで*/
	
	.column{
		width:98%;
		margin:0 auto;
	}
	
	.column_inner {
        padding: 30px 0 45px 0;
	}
	
	.column_main{
		width:95%;
		margin:0 auto;
		font-size:16px;
	}
	
	.column_inner h2 {
		font-size: 2.2rem;
		padding: 0.5em;
		text-align:left;
		margin-bottom:30px;
	}
	
	.column_txt_l > div, .column_txt_r > div{
		width:100%;
	}
	
	.column_txt_l{
		margin-top:0;
	}
	
	.column_txt_r{
		flex-wrap:wrap-reverse;
		margin-top:0;
	}
		
	.column_txt_full{
		margin-top:0;
	}
	
	.column_photo{
		margin-top:30px;
	}
	
	.decorative-double-line{
		margin-top:30px;		
	}
	
	.rule_btn{
		width:60%;
		margin:0 auto 30px auto; 
	}
	
	/*chromeのみ対応*/
	@media screen and (-webkit-min-device-pixel-ratio:0) {
		.rule_btn .rule_btn_txt:hover{
			filter: none;
		}
	}
	
	
	.attention_txt {
		font-size: 2rem;
	}
	
	.modal__close img {
		margin: 13px 15px 0 0;
	}
	
	.modal {
		top: 5%;
		padding:3% 1% 3% 2%;
		height:85%;
		width:90%;
	}
	
	/*chromeのみ対応*/
	@media screen and (-webkit-min-device-pixel-ratio:0) {
	  .modal{
		top:3%;
		height: 75%;
		padding-top:50px;
	}
	
	.modal_close_txt{
		width:50%;
		font-size:2rem;
		margin: 30px auto 0 auto;
	}
	
	.youtube{
		width:90%;
	}
		
	.youtube_inner{
		width:100%;
	}
		
	.group_point{
		width:98%;
	}
	
	.group_point_inner {
	  padding-top: 125%;
	}
	
	
}


	
	
}


@media screen and (max-width:580px){
	.bnr02_list>li img {
		width: 95%;
	}
	
	.rule_btn{
		width:70%;
	}
	
	
}
	
@media screen and (max-width:499px){
	.bnr02_list>li img {
		width: 100%;
	}
	
	.rule_btn{
		width:80%;
	}
	
	.attention_txt {
		font-size: 1.8rem;
	}
	
	.group_point_inner {
	  padding-top: 130%;
	}
		
}

@media screen and (max-width:420px){
	.group_point_inner {
	  padding-top: 150%;
	}
	
}

@media screen and (max-width:370px){
	.group_point_inner {
	  padding-top: 150%;
	}
}
