﻿@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
@font-face {
font-family: "RM1c_b";
  src: url("./Dup/img/RM1c_b.ttf") format("ttf"),url("./Dup/img/RM1c_b.eot") format("eot"),url("./Dup/img/RM1c_b.woff") format("woff"),url("./Dup/img/RM1c_b.woff2") format("woff2");
}
.font1,#top_cms h3,#contents_links .square_box a h4{font-family: "RM1c_b","sans-serif";}



/*デザインチェック後修正*/
body{
	background-color: #f9f6f4;
}
#header h1 a{
	background-color: #f9f6f4;
}
#main_img #catch h2 span{
	padding: 10px 0;
}
#main_img h2 span{
	position: relative;
	line-height: 1.5;
	
}
#main_img:before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: -12%;
	width: 30%;
	height: 30%;
	background: url(Dup/img/pop5.png)no-repeat;
	background-size: contain;
	animation:katakata 6s infinite ease-in-out alternate;
	transform: rotate(-5deg);
}
@keyframes katakata {
  0% {transform:translate(0, 0) rotate(0deg);}
  21% {transform:translate(0, 0) rotate(0deg);}
 
  22% {transform:translate(0, 0) rotate(-3deg);}
  23% {transform:translate(0, -1px) rotate(0deg);}
  24% {transform:translate(0, -1px) rotate(3deg);}
 
  25% {transform:translate(1px, 0) rotate(-2deg);}
  26% {transform:translate(0, 1px) rotate(0deg);}
  27% {transform:translate(0, 0) rotate(3deg);}
 
  28% {transform:translate(0, 0) rotate(0deg);}
  100% {transform:translate(0, 0) rotate(0deg);}
}
#main_img h2 span:before{
	content: "";
	display: block;
	position: absolute;
	top: -10%;
    left: -5%;
    width: 30%;
    height: 30%;
    /* background-size: contain; */
    background: url(Dup/img/catch.png)no-repeat;
    z-index: 9;
    background-size: contain;
}
#main_img #catch h2 span:first-letter{
	color: #EFD657;
	font-size: 4vw;
	
}
#main_img #catch{
	padding: 180px 50px 50px!important;
}
#main_img #catch h2{
	border: none;
	transform: rotate(-4deg);
	font-size: 3vw;
	/*word-break: keep-all;
	-ms-word-break: keep-all;*/
}
/*#main_img #catch p{
	padding-top: 180px;
}*/
#page08 .border_color2 {
    border-color: #00b0b0;
}
#contents_links .square_box h4:first-letter{
	color: #00b0b0;
}
/*#contents_links .square_box:nth-of-type(2) h4:first-letter{
	color: #DE6016;
}
#contents_links .square_box:nth-of-type(3) h4:first-letter{
	color: #C0DE0B;
}*/
#intro figure{
	border: 2px solid #333;
}
#intro .box_wrap .box > div{
	width: 100%;
	margin-left: 0;
	border-left: 2px solid #333;
    border-bottom: 2px solid #333;
    border-right: 2px solid;
}
#intro .box_wrap .box > div span{
	border: none;
}
#intro .box_wrap .box:before{
	content: "";
	display: block;
	position: absolute;
	top: -20px;
	left: -40px;
	background: url(Dup/img/item16.png)no-repeat;
	background-size: contain;
	width: 20%;
	height: 20%;
	transform: rotate(-15deg);
}
#intro .box_wrap .box:nth-of-type(2):before{
	background: url(Dup/img/item17.png)no-repeat;
	background-size: contain;
	width: 30%;
	height: 30%;
	top: 24%;
    left: 87%;
    z-index: 999;
}
#contents h3 span:first-letter{
	color: #efd657;
}
#contents .contents_txt h3::after{
	border: 2px solid #efd657;
}
/*@media screen and (max-width: 768px){
	#intro .box_wrap .box > div{
		margin-left: 5%;
	}
	header.bg_white{
		background-color: #f9f6f4;
	}
	#contents > div:before{
		background: url(Dup/img/item12.png)no-repeat;
		top: -9%;
    left: 2%;
    background-size: contain;
    width: 20%;
    height: 20%;
	}
	#contents > div:after{
		background: url(Dup/img/item12.png)no-repeat;
		bottom: -16%;
    right: -5%;
	}
}*/
/* CSS Document */
/*#main_img #catch h2{
	transform: rotate(-5deg);
	font-size: 4vw;
	border: 10px solid #cc0000;
}*/
/*#catch{
	padding-top: 310px!important;
}*/
/*#catch h2{
	
	left: -113px!important;
}
#catch h2 span{
	padding: 10px 100px!important;
}*/

/*@media screen and (max-width: 1500px){
	#main_img #catch{
		padding-top: 290px!important;
		font-size: 3.5vw;
	}
}
@media screen and (max-width: 1400px){
	#main_img #catch{
		padding-top: 230px!important;
	}
	#main_img #catch h2{
		font-size: 3.5vw;
	}
}
@media screen and (max-width: 1200px){
	#main_img #catch{
		padding-top: 200px!important;
		
	}
	#main_img #catch h2{
		font-size: 3vw;
	}
}
@media screen and (max-width: 1100px){
	#main_img #catch{
		padding-top: 150px!important;
		
	}
}
@media screen and (max-width: 1028px){
	#main_img #catch{
		padding-top: 130px!important;
		
	}
	#main_img #catch h2{
		font-size: 2.8vw;
	}
}*/


.youtube_box{
  position: relative;
  width: 80%;
  padding-top: 56.25%;
  margin: 20px auto;
}
.youtube_box iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

#main_img{position: relative}



/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#video {height: 500px;}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
#video {height: 44vh;}
}



/* color */
.txt_color_nomal{color: #3d3d3d;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #00B0B0} /* メインカラー */
.txt_color2{color: #ebf1ff} /* サブカラー */
.txt_color3{color: #cc0000} /* アクセントカラー1 */
.txt_color4{color: #f3f3f3} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #00B0B0} /* メインカラー */
.bg_color2{background-color: #ebf1ff} /* サブカラー */
.bg_color3{background-color: #cc0000} /* アクセントカラー1 */
.bg_color4{background-color: #f3f3f3} /* アクセントカラー2 */

/* border-color ※!important */
.border_color1{border-color: #00B0B0}
.border_color2{border-color: #ebf1ff}
.border_color3{border-color: #cc0000}
.border_color4{border-color: #f3f3f3}


/* hover ---------------------------------------------------------------------------------------------*/
.hvr_txt_color_nomal:hover{color: #3d3d3d;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #00B0B0} /* メインカラー */
.hvr_txt_color2:hover{color: #ebf1ff} /* サブカラー */
.hvr_txt_color3:hover{color: #cc0000} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #f3f3f3} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #00B0B0} /* メインカラー */
.hvr_bg_color2:hover{background-color: #ebf1ff} /* サブカラー */
.hvr_bg_color3:hover{background-color: #cc0000} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #f3f3f3} /* アクセントカラー2 */

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #00B0B0 }
.hvr_border_color2:hover{border-color: #ebf1ff}
.hvr_border_color3:hover{border-color: #cc0000}
.hvr_border_color4:hover{border-color: #f3f3f3}


.linkStyle{
	color: #00B0B0;
}

/*ここから個別----------------------------*/
#wrap{
	overflow: hidden;
}
#header h1{
	background-color: transparent;
}
#header h1 img{
	max-width: 350px;
	/*transform: translateY(-15px);*/
}
/*#intro{
	background: url(Dup/img/bg.jpg)no-repeat;
}*/
#intro{
	background: url(Dup/img/bg9.jpg);
}
#intro .box_wrap .box{
	position: relative;
}
/*#intro .box_wrap .box:before{
	content: "";
	display: block;
	position: absolute;
	top: -65px;
	left: -40px;
	background: url(Dup/img/item1.png)no-repeat;
	background-size: contain;
	width: 120px;
	height: 120px;
	transform: rotate(-15deg);
}
#intro .box_wrap .box:nth-of-type(2):before{
	background: url(Dup/img/item2.png)no-repeat;
}*/
/*#intro .box_wrap figure{
	position: relative;
}
#intro .box_wrap figure:before{
	content: "";
	display: block;
	background: url(Dup/img/item6.png)no-repeat;
	width: 10%;
	height: 10%;
	background-size: contain;
	position: absolute;
	top: 10px;
	left: 10px;
	
}*/
#main_menu li:last-of-type a span{
	display: none;
}
#sc_menu li:last-of-type a span{
	display: none;
}

#intro h4:first-letter{
	color: #cc0000;
	font-size: 35px;

}
#intro .box_wrap{
	align-items: baseline;
}
/*#intro .box_wrap .box figure{
	position: relative;
	z-index: 1;
}
#intro .box_wrap .box:first-of-type figure::before{
	content: '';
    background-image: linear-gradient( -45deg, #fff4b8 15%, #fff 15%, #fff 50%, #fff4b8 50%, #fff4b8 65%, #fff 65%, #fff );
    background-size: 10px 10px;
    width: 100%;
    height: 80%;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: -1;
}*/
#intro .box div span:first-letter{
	color: #cc0000;
}
#intro .box div span{
	border-color: #0958b0 transparent transparent transparent!important;
}
#intro .box:nth-of-type(2) div span{
	border-color: #09B051 transparent transparent transparent!important;
}
#catch p{
	padding-top: 150px;
}
/*#contents > div div:first-of-type{
	width: 0!important;
	padding: 0;
}
#contents > div div:nth-of-type(2){
	max-width: 1200px;
}
#contents .contents_txt{
	background-color: transparent;
}*/
#contents img{
	display: none;
}
#contents_links .square_box a:before{
	border: 3px solid #00b0b0;
}
/*#contents_links .square_box:nth-of-type(2) a:before{
	border: 3px solid #DE6016;
}
#contents_links .square_box:nth-of-type(3) a:before{
	border: 3px solid #C0DE0B;
}*/
#contents_links .square_box{
	box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
#contents_links .square_box a{
	background-color: rgba(0,0,0,0.2);
}
#contents_links .square_box a:hover{
	background-color: rgba(0,0,0,0.1);
}
#contents::before{
	background-color: rgba(0,0,0,0.2);
}
#contents h3 span{
	font-size: 40px;
}
#contents > div{
	position: relative;
}
#contents > div:before,
#contents > div:after{
	content: "";
	display: block;
	position: absolute;
	background-size: contain;
	width: 30%;
	height: 30%;
	transform: rotate(-25deg);
}
#contents > div:before{
	background: url(Dup/img/item12.png)no-repeat;
	top: -20%;
	left: 2%;
	background-size: contain;
	width: 25%;
	height: 25%;
}
#contents > div:after{
	background: url(Dup/img/item13.png)no-repeat;
	bottom: -25%;
    right: -15%;
    transform: rotate(25deg);
	background-size: contain;
}
#contents .contents_txt{
	background-color: transparent;
}#contents .d_flex > div:first-of-type{
	padding: 0;
}
/*#intro .box_wrap .box:first-of-type div{
	border: 3px solid #0958b0;
}
#intro .box_wrap .box:nth-of-type(2) div{
	border: 3px solid #09B051;
}*/
#top_cms .top_cms_title{
	/*transform: rotate(-3deg);*/
	padding-bottom: 20px;
}

/*下層--------------------*/
#cms{
	position: relative;
}
#cms::before,#cms::after{
	content: "";
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
	width: 600px;
	height: 418px;
	z-index: -1;
}
#cms::before{
	background: url(Dup/img/bg_left.png)no-repeat top left;
	top: 0;
	left: 0;
}
#cms::after{
	background: url(Dup/img/bg_right.png)no-repeat right bottom;
	bottom: 0;
	right: 0;
}
#cms_2-a .cate{
	margin-bottom: 130px;
}
#page08 .txt_color2{
	color: #00b0b0;
}

@media screen and (max-width: 1500px){
	#main_img #catch p{
		padding-top: 100px;
		
	}
}
/*@media screen and (max-width: 1400px){
	#main_img #catch{
		padding-top: 230px!important;
	}
	#main_img #catch h2{
		
	}
}*/
/*@media screen and (max-width: 1200px){
	#main_img #catch{
		padding-top: 200px!important;
		
	}
	#main_img #catch h2{
		
	}
}*/
@media screen and (max-width: 1300px){
	#main_img #catch{
		padding-top: 140px!important;
		
	}
}

@media screen and (max-width: 1100px){
	/*#main_img #catch{
		padding-top: 150px!important;
		
		
	}*/
	header #header #main_menu {
    width: 60%;
    margin-left: 40%;
}
}
@media screen and (max-width: 1028px){
	#main_img #catch{
		padding-top: 90px!important;
		
	}
	#main_img #catch h2 span:first-letter{
	color: #EFD657;
	/*font-size: 34px;*/
	
}
}

/*タブレット----------------------*/
@media screen and (max-width: 768px){
	#main_img #catch{
		width: 90%;
	}
	#main_img #catch p {
    padding-top: 40px;
}
	#main_img #catch h2{
		font-size: 4vw;
	}
	#contents h3 span {
    font-size: 23px;
}
	#contents .logo{
		height: 0;
	}
	#main_img #catch h2 span {
    padding: 10px 0px!important;
}
	#intro .box_wrap .box:before{
		left: 20px;
	}
	header.bg_white{
		background-color: #f9f6f4;
	}
	#contents > div:before{
		background: url(Dup/img/item12.png)no-repeat;
		top: -9%;
    left: 2%;
    background-size: contain;
    width: 20%;
    height: 20%;
	}
	#contents > div:after{
		background: url(Dup/img/item13.png)no-repeat;
		bottom: -16%;
    right: -5%;
		background-size: contain;
	}
	#header h1 img{
		    transform: translateY(0px);
	}
	#main_img h2 span:before{
		top: -6%;
    left: -6%;
    width: 23%;
    height: 23%;
	}
	#main_img #catch h2 span:first-letter{
	color: #EFD657;
	font-size: 60px;
	
}
	#main_img:before{
		top: 5px;
		left: 0%;
		width: 25%;
		height: 30%;
	}
	#intro .box_wrap .box:nth-of-type(2):before{
		left: 74%;
	}
}


/*スマホ---------------*/
@media screen and (max-width: 667px){
	#main_img #catch {
    width: 100%;
}
	/*#main_img #catch h2{
		font-size: 30px;
	}*/
	#main_img #catch h2 span{
		font-size: 7vw;
	}
	#main_img #catch h2 span:first-letter{
	color: #EFD657;
	font-size: 10vw;
	
}
	/*#contents > div:before, #contents > div:after{
		width: 150px;
		height: 150px;
	}
	#contents > div:before{
		top: -40px;
		left: -10px;
	}
	#contents > div:after{
		bottom: -106px;
    	right: -29px;
	}*/
	#main_img h2 span:before{
		top: -7%;
    	left: -8%;
    width: 20%;
    height: 20%;
	}
	#contents > div:before, #contents > div:after{
		    width: 25%;
    height: 22%;
	}
	#intro .box_wrap .box:nth-of-type(2):before{
		width: 22%;
    height: 22%;
		top: -23px;
	}
}


/*IE*/
@media all and (-ms-high-contrast:none){
	#cms_2-a .cate .cate_title{
		padding-top: 10px!important;
	}
	#cms_3-e .cate_title{
		padding-top: 5px!important;
	}
	#cms_5-a .cate .cate_title span:last-of-type{
		padding: 0!important;
	}
	#cms_6-a .cate .cate_title{
		padding-top: 10px!important;
	}
}