/* --------------------------
   Default Styling
----------------------------- */

*,*::before, *::after{
	box-sizing: border-box;
}

html{
	scroll-bihavior: smooth;
}

body {
	background: #ffffff;
	color: #222222;
	font: 100%/1.5;
	  font-family: "Zen Kaku Gothic New", sans-serif;
	  font-weight: 400;
	  font-style: normal;
	  position: relative;
	  word-wrap: break-word;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	margin: 0;
	font-size: 1em;
	line-height: 1.0;
	font-weight: normal;
}

ul{
	margin: 0;
	padding-left: 0;
	list-style: none;
}

p{
	line-height: 1.0;
	margin: 0;
	padding: 0;
	font-size: 25px;
}

figure{
	margin: 0;
}

img{
	max-width: 100%;
}

.center{
	text-align: center;
        margin:0;
        padding: 0;
}
a{
	text-decoration: none;
	color: #666666;
	cursor: pointer;
}

a:hover,
a:focus{
	transition: .5s;
}

a.clear:hover,
a.clear:focus{
	transition: .5s;
        opacity: 0.3;
}

a, input, textarea{
	transition: all 0.15s ease-in-out;
}

input[type="submit"]:hover{
	cursol: pointer;
}

.dsp_pc{
	display: block;
}


.dsp_sp{
	display: none;
}

@media screen and (max-width: 768px){

.dsp_pc{
	display: none;
}
.dsp_sp{
	display: block;
}

}


/*PCで電話がかからないようにする*/

@media (min-width: 969px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

/* wow.jsに必要　*/
.box {
  animation-fill-mode: forwards;
}


body.preload .wow.fadeIn {
	opacity: 0 !important;
}


/*Reusable Classes--*/

.wrap{
  width: 1280px;
  margin: 0 auto;
}


@media screen and (max-width: 1280px){
.wrap{
  max-width: 960px;
  width: 90%;
  margin: 0 auto;
}
}


@media screen and (max-width: 768px){
.wrap{
  max-width: 600px;
  width: 90%;
  margin: 0 auto;
}
}


/* font */
// <uniquifier>: Use a unique and descriptive class name

.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.zen-kaku-gothic-new-medium {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.zen-kaku-gothic-new-bold {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-style: normal;
}




/*animation*/
.fluffy {  /* fluffy 3秒 無限ループ */
  animation: fluffy 3s infinite;
}

@keyframes fluffy {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
}


/*-----------------------------
	 Header(MVContents)
------------------------------- */
.header{
    width: 100%;
    height: 0;
    padding-top: 58.0%;
    background-color: #ffffff;
    background-image: url('../images/mv/mv_image_pc.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 50;
}


@media (max-width: 767px){
.header{
    width: 100%;
    height: 0;
    padding-top: 111.64%;
    background-color: #ffffff;
    background-image: url('../images/mv/mv_image_sp.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 50;
}
}



/*--------------------------
	Contents00
---------------------------*/

.Contents00{
	width: 100%;
	padding: 240px 0 320px;
	margin: 0 auto;
	background-color: #e6f5ff;
	z-index: 1;
}


@media (max-width: 960px){
.Contents00{
	padding: 120px 0 160px;
}
}

@media (max-width: 767px){
.Contents00{
	padding: 100px 0 120px;
}
}

@media (max-width: 420px){
.Contents00{
	padding: 60px 0 80px;
	background-color: #e6f5ff;
}
}

/*--------------------------
	Contents01
---------------------------*/

.Contents01{
	width: 100%;
	padding: 0;
	margin: 0 auto;
	background: #2144d3;
        position: relative;
        overflow: hidden;
	z-index: 1;
}

.Contents01_Cap{
    width: 100%;
    height: 0;
    padding-top: 7.396%;
    background-color: #2144d3;
    background-image: url('../images/contents01/contents01-top_back.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}


/*-------------------------------
	Contents02
--------------------------------*/

.Contents02{
	width: 100%;
	padding: 0;
	margin: 0 auto;
        position: relative;
        overflow: hidden;
	z-index: 1;
}


.Contents02_Cap{
    width: 100%;
    height: 0;
    padding-top: 19.896%;
    background-color: #2144d3;
    background-image: url('../images/contents02/contents02-top_back.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}


/*-------------------------------
	Contents03
--------------------------------*/

.Contents03{
	width: 100%;
	height: auto;
        background-color: #ffecfb;
	margin: 0 auto;
	z-index: 1;
        position: relative;
        overflow: hidden;
}

.Contents03_Cap{
    width: 100%;
    height: 0;
    padding-top: 16.5625%;
    background-color: #ffecfb;
    background-image: url('../images/contents03/contents03-top_back.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}


.Contents03_Hakama{
    width: 100%;
    height: 0;
    padding-top: 16.67%;
    background-color: #ffffff;
    background-image: url('../images/contents03/contents03-bottom_back.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media (max-width: 1280px){
.Contents03{
	margin: 0 auto;
}
}

@media (max-width: 600px){
.Contents03{
	margin: 0 auto;
}
}





/*-------------------------------
	Contents04
--------------------------------*/

.Contents04{
	width: 100%;
	padding: 0;
	margin: 0 auto;
	background-color: #2144d3;
	position: relative;
	z-index: 1;
}


