@charset "UTF-8";

/*
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

/*font-family: dnp-shuei-mgothic-std,sans-serif;
font-weight: 400;
font-style: normal;
*/

/*font-family: dnp-shuei-mgothic-std,sans-serif;
font-weight: 600;
font-style: normal;
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/*リセットここまで*/

body{font-family: kozuka-mincho-pr6n, serif;
font-weight: 400;
font-style: normal;
}

a {
	text-decoration: none;
  }
ul,li {
	list-style: none;
  }
  
/*.coming{
  font-family: "futura";
  font-style: normal;
  text-align: center;
  color: #717071;
  font-size: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}*/


* {
	box-sizing: border-box;
  }
  
  body {
	margin: 0;
	font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }

  /* font-family: leander-script-pro,sans-serif;
  font-weight: 700;
  font-style: normal; */

.gmenu{
	height: 80px;
	width: 100%;
	padding: 0px 15px;
	background-color: white;
	position: fixed;
	top: 0;
	z-index: 999;
	display: flex;
}

.logo img{
	margin-top: 20px;
	height: 40px;
}

nav{
	margin: 0 0 0 auto;
}

.navmenu > ul{
	display: flex;
}

.navmenu a{
	font-size: 16px;
	color: black;
	display: block;
	line-height: 80px;
	padding: 0 18px;
	position: relative;
}

.navmenu li ::after{
	position: absolute;
	bottom: 24px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #000000;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.75s;
  }
  
.navmenu li :hover::after {
	transform: scale(1, 1);
  }
/*メインイメージ*/
.main_imgBox {
    height: 100vh;
    overflow: hidden;
    position: relative; }

  .main_logo {
    z-index:11;
    position: absolute;
    top:54%;
    left:50%;
    transform:translate(-50%,-50%);
    width:42%;
    height:auto;
}
.main_img {
    z-index:10;
    opacity: 0;
    width: 100%;
    height: 100vh;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 48s 0s infinite;
    animation: anime 48s 0s infinite; }

    .main_img:nth-of-type(2) {
      -webkit-animation-delay: 8s;
      animation-delay: 8s; }

    .main_img:nth-of-type(3) {
      -webkit-animation-delay: 16s;
      animation-delay: 16s; }

    .main_img:nth-of-type(4) {
      -webkit-animation-delay: 24s;
      animation-delay: 24s; }

    .main_img:nth-of-type(5) {
      -webkit-animation-delay: 32s;
      animation-delay: 32s; }

    .main_img:nth-of-type(6) {
      -webkit-animation-delay: 40s;
      animation-delay: 40s; }

  .main_imgM {
    opacity: 0;
    width:100%;
    height:100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 48s 0s infinite;
    animation: anime 48s 0s infinite; }

    .main_imgM:nth-of-type(2) {
      -webkit-animation-delay: 8s;
      animation-delay: 8s; }

    .main_imgM:nth-of-type(3) {
      -webkit-animation-delay: 16s;
      animation-delay: 16s; }

    .main_imgM:nth-of-type(4) {
      -webkit-animation-delay: 24s;
      animation-delay: 24s; }

    .main_imgM:nth-of-type(5) {
      -webkit-animation-delay: 32s;
      animation-delay: 32s; }

    .main_imgM:nth-of-type(6) {
      -webkit-animation-delay: 40s;
      animation-delay: 40s; }

@keyframes anime {
    0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    17% {
        opacity: 1;
    }
    25% {
        opacity: 0;
         transform: scale(1.2);
                    z-index:9;
    }
    100% { opacity: 0 }
}

@-webkit-keyframes anime {
    0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    17% {
        opacity: 1;
    }
    25% {
        opacity: 0;
         -webkit-transform: scale(1.2);
            z-index:9;
    }
    100% { opacity: 0 }
}


.visionicon{
	min-width: 300px;
	width: 60%;
	margin: 80px auto 0 auto;
}

.businesstitle{
	margin-top: 10px;
	font-size: 80px;
	font-family: adobe-garamond-pro,serif;
	font-weight: 400;
	font-style: normal;
	line-height: 90px;
}
.visiontextpc{
	margin-top: 40px;
	font-size: 30px;
}

.visiontext{
	margin-top: 40px;
	font-size: 30px;
}

.visiontext2{
	margin-top: 30px;
	font-size: 20px;
	line-height: 60px;
}

.businessicon{
	max-width: 160px;
	min-width: 100px;
	width: 20%;
	margin: 200px auto 0 auto;
}


.subback{
	margin-top: 10px;
	width: 100%;
	height: 40vh;
	object-fit: cover;
}

.mintcanback{
	margin-top: 20px;
	position: relative;
	background-image: url(../img/mintcantop.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	min-height: 40vh;
}
.mintcanphoto{
	max-width: 900px;
	width: 90%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.businesstext{
	margin-top: 20px;
	font-size: 20px;
	line-height: 50px; 
	font-feature-settings: "palt";
}

.linkbtn{
	max-width: 500px;
	width: 70%;
	margin: 20px auto 0 auto;
}

.linkbtn a:hover{
	opacity: 0.8;
}

/* .subtitleback{
	mix-blend-mode: multiply;
	width: 30%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.subtitle{
	width: 30%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
} */

.movierap{
	max-width: 960px;
	margin: 0 auto;
}

.movie{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.movie iframe{
	margin-top: 60px;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;	
}

.wrap{
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

p {
	text-align: center;
}

p img{
	width: 80%;
}

/* .job{
	background-color: #605d5d;
}

.balloon{
	position: relative;
	display: inline-block;
	padding: 7px 10px;
	width: 100%;
	font-size: 16px;
	background: #00B2BC;
}

.balloon:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #00B2BC;
  }
  
  .balloontext {
	  font-size: 26px;
	  color: white;
	margin: 0;
	padding: 14px;
  }
   */



/*コンタクトフォーム*/

.formkoumoku{
	max-width: 660px;
	margin: 90px auto 0 auto;
}

.koumoku{
	margin: 40px auto 0 auto ;
	width: 90%;
}

.onamae{
	text-align: left;
	margin-bottom: 6px;
}
.inp{
	width: 100%;
	font-size: 20px;
	padding: 10px;
}

.texta {
    resize: none;
    width: 100%;
    font-size: 18px;
    overflow: auto;
    padding: 10px;
		margin-bottom: 40px;
}


.btn{
	text-align: center;	
	margin-top: 40px;
}
.subbtn {
  border: none;
  display: inline-block;
  padding: 16px 120px;
  text-decoration: none;
  background: #118CE2;/*ボタン色*/
  color: #FFF;
  border-bottom: solid 3px #107dcb;
  font-size: 20px;
}

.subbtn:hover {
	opacity: 0.8;
  }

.subbtn:active {
  /*ボタンを押したとき*/
  -webkit-transform: translateY(4px);
  transform: translateY(4px);/*下に動く*/
  border-bottom: none;/*線を消す*/
}

/*フッター*/
.sango{
	width: 100%;
	height: 200px;
	object-fit: cover;
	display: block;
	margin: 140px auto 0 auto;
}

.footerborder{
	height: 24px;
	border-top: 4px solid #118CE2;
	border-bottom: 10px solid #118CE2;
	margin-bottom: 10px;
}

.sitemapback{
	width: 100%;
	background-color: #118CE2;
}
.footerarea{
	max-width: 960px;
	margin: 0 auto;
}
.sitemap{
	display: flex;
	justify-content: center;
}
.pages{
	margin-top: 24px;
}
.pages p{
	text-align: left;
	padding: 12px 40px;
}
.pages a{
	color: white;
	font-size: 16px;
}
.cbluelink{
	margin-top: 20px;
	border-top: 1px solid white;
	width: 100%;
	padding: 30px;
	color: white;
}

  /* パソコンで見たときは"pc"のclassがついた画像が表示される */
  .navmenu { display: block !important; }
  .navmenusp { display: none !important; }
   
  /* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
  @media only screen and (max-width: 960px) {
	  .navmenu { display: none !important; }
	  .navmenusp { display: block !important; }
  }

    /* パソコンで見たときは"pc"のclassがついた画像が表示される */
	.visiontextpc { display: block !important; }
	.visiontextsp { display: none !important; }
	 
	/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
	@media only screen and (max-width: 550px) {
		.visiontextpc { display: none !important; }
		.visiontextsp { display: block !important; }
	}
  
@media(max-width:1180px){
	.navmenu a{
		font-size: 14px;
		padding: 0 10px;
	}
}

  @media(max-width:960px){

	  
	  .ham{
		  position: fixed;
		  right: 0;
		  margin: 10px 0 0 auto;
		  width: 60px;
		  height: 60px;
		  cursor: pointer;
		  background-color: white;
		  z-index: 1001;
	  }

	  .ham_line{
		  position: absolute;
		  left: 10px;
		  width: 40px;
		  height: 2px;
		  background-color: #000000;
	  }
	  .ham_line1{
		  top: 14px;
	  }
	  .ham_line2{
			top: 28px;
		}
		.ham_line3{
			top: 42px;
		}
		
		.ham_line {
	transition: all 0.3s;
}

/* 以下はすべて新規行で追加 */
.clicked .ham_line1 {
	transform: rotate(45deg);
	top: 28px;
}
.clicked .ham_line2 {
	width: 0px;
}
.clicked .ham_line3 {
	transform: rotate(-45deg);
	top: 28px;
}

.navmenusp {
	margin-top: 80px;
	position: fixed;
	width: 300px;
	height: 100%;
	right: -800px;
	background-color: rgb(97, 97, 97);
	transition: all 0.6s;
	z-index: 1000;
	text-align: center;
}


.navmenusp a{
	padding: 40px 0;
	color: white;
	display: block;
	background-color:rgb(97, 97, 97);
	border-bottom: 1px solid rgb(152, 152, 152);
}

.navmenusp a:hover{
	background-color:rgb(123, 123, 123);
}

.clicked .navmenusp{
	right: 0px;
}

.main_logo{
	width: 60%;
}
}

@media screen and (max-width: 760px) {
	.main_logo{
		width: 80%;
	}
	.visiontextpc{
		margin-top: 40px;
		font-size: 24px;
	}
	.visiontext{
		margin-top: 40px;
		font-size: 24px;
	}
	.visiontext2{
		line-height: 50px;
	}
	.businessicon{
		margin-top: 150px;
	}
	/*フッター*/
	.pages{
		margin-top: 20px;
	}
	.pages p{
		padding: 12px 26px;
	}
	.pages a{
		font-size: 14px;
	}
	.cbluelink{
		font-size: 14px;
		margin-top: 20px;
		padding: 20px;
	}
	/*フッター*/
	.pages p{
		padding: 5px 20px;
	}
	.pages a{
		font-size: 14px;
	}	
}

@media screen and (max-width: 640px) {
	.visiontextpc{
		margin-top: 40px;
		font-size: 20px;
	}
	.visiontext{
		margin-top: 40px;
		font-size: 20px;
	}
	.visiontext2{
		font-size: 18px;
		line-height: 40px;
	}
	.businesstitle{
		font-size: 60px;
		line-height: 60px;
	}
	.businessicon{
		margin-top: 110px;
	}
	.businesstext{
		font-size: 18px;
		line-height: 24px;
	}
}

@media screen and (max-width: 550px) {
	.visionicon{
		margin-top: 80px;
	}
	.visiontextsp{
		font-size: 20px;
		line-height: 36px;
		margin-top: 20px;
		font-feature-settings: "palt";
	}
	.visiontext2{
		margin-top: 10px;
		font-size: 14px;
		line-height: 30px;
		font-feature-settings: "palt";
	}
	.businesstitle{
		font-size: 40px;
		line-height: 40px;
	}
	.businesstext{
		font-size: 14px;
		line-height: 20px;
	}
	/*フッター*/
	.sango{
		margin-top: 40px;
	}
	.sitemap{
		display: block;
		padding: 20px;
	}
	.pages{
		margin: 0px;
	}
	.pages p{
		text-align: center;
		padding: 5px 30px;
	}
	.pages a{
		font-size: 14px;
	}
	.cbluelink{
		margin-top: 0;
	}
/*フォーム*/
	.formkoumoku{
		margin: 70px auto 0 auto;
	}
}

@media screen and (max-width: 350px) {


		/*フッター*/
		.sitemap{
			display: block;
			padding: 20px;
		}
		.pages{
			margin: 0px;
		}
		.pages p{
			padding: 5px 30px;
		}
		.pages a{
			font-size: 14px;
		}

}