@charset "utf-8";
/* CSS Document */

body {
	background-image: url("../images/bg.jpg");
	background-size: cover;
    background-attachment: fixed;
	color: #FFFFFF;
}

@media(max-width:750px) {
body {
	background-image: url("../images/bgmob.jpg");
	background-size: 100vw;
	background-attachment: fixed;
	}
}

/*logo.png*/
#top {
	float: left;
	margin-left: 50px;
	width: 300px;
}

@media(max-width:750px) {
#top {
	margin: auto auto auto 15px;
	width: 230px;
	}
}

/*logomoo.png*/
#moo {
	width: 200px;
	margin:150px auto 0 auto;
}

@media (max-width: 750px){
	#moo {
		width: 150px;
		margin: 170px auto 0 auto;
		display: flex;
	}
}
/*メニュー*/
.list {
	float: right;
	margin: 50px 0 0;
	background-color: #3f3f3f;
	display: flex;
	flex-wrap : wrap;
}

@media (max-width: 992px){
	.list {
		display: none;
	}
}

.list li a {
	display: block;
	color: #C7C7C7;
	text-decoration: none;
}

.list li {
	display: inline;
	margin: 5px 30px 5px 30px;
}

/* hamburgerここから */
	/* inputを非表示 */
.input-hidden{
	display: none;
}
	/* label */
.hamburger-demo-switch{
	cursor: pointer;
	position: absolute;
	right: 3%;
	top: 10px; /* ハンバーガーアイコンの位置（上から） */
	z-index: 9999;
	width: 4em; /* アイコン（クリック可能領域）の幅 */
	height: 4em; /* アイコン（クリック可能領域の）高さ */
}
/* メニュー展開時にハンバーガーアイコンを固定 */
#hamburger-demo1:checked ~ .hamburger-demo-switch{
	position: fixed;
}
/* ハンバーガーアイコン */
.hamburger-switch-line1, .hamburger-switch-line1-before, .hamburger-switch-line1-after{
	width: 25px;
	height: 3px;
	background: #999999; /* ハンバーガーアイコンの色 */
	position: absolute;
	top: 50%;
	left: 50%;
	transition: .3s;
	content: "";
}
.hamburger-switch-line1{
		transform: translate(-50%, -50%);
}
.hamburger-switch-line1-before{
	transform: translate(-50%, -300%);
}
.hamburger-switch-line1-after{
	transform: translate(-50%, 200%);
}
/* ハンバーガーアイコン･アニメーション */
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1{
	width: 0;
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1-before{
	transform: rotate(45deg) translate(-40%, 325%);
}
#hamburger-demo1:checked ~ .hamburger-demo-switch .hamburger-switch-line1-after{
	transform: rotate(-45deg) translate(-40%, -325%);
}
/* メニューエリア */
.hamburger-demo-menuwrap{
	position: fixed;
	height: 100%;
	background: #fafafa; /* メニューエリアの背景色 */
	padding: 5em 3% 2em;
	z-index: 9998;
	transition: .3s;
	overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
	top: 0;
	left: 100%;
	width: 70%;
}
/* メニューリスト */
.hamburger-demo-menulist{
	margin-right: 3%;
	padding-left: 5% !important; /* !important不要な場合もあり */
	list-style: none;
}
.hamburger-demo-menulist li a{
	text-decoration: none;
	color: #333; /* メニューリストの文字色 */
	display: block;
	padding: .5em 0;
}
/* メニューエリア･アニメーション */
	/* 右から */
#hamburger-demo1:checked ~ .hamburger-demo-menuwrap{
	left: 30%;
}
	/* コンテンツカバー */
#hamburger-demo1:checked ~ .hamburger-demo-cover{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(3,3,3,.5);
	display: block;
}
/* PCではハンバーガーメニューを表示しない */
@media (min-width: 992px){
	.hamburger-demo-menubox{
		display: none;
	}
}
/*ハンバーガーメニュー終わり*/

/*全体*/
#main {
	text-align: center;
}

/*使用可能ソフト*/
ul.soft {
	text-align: left;
    position: relative;
    padding: 50px 0 10px 0;
    font: 16px/1.6 'arial narrow', sans-serif;
    border: solid 2px #666666;
    border-radius:30px;
    color: #666666;
    width:500px;
	background-color: #FFFFFF;
	margin: auto;
}

@media(max-width:750px) {
	ul.soft {
	    width:260px;
	    padding: 50px 0 10px 20px;
	}
}

ul.soft:before {
    content: "使用可能ソフト"; 
    position: absolute;
    display: block;
    top: -15px;
    left: 70px;
	background-color: #FFFFFF;
	font-size: 16px;
    font-weight: bold;
    padding: 0 5px;
}

@media(max-width:750px) {
	ul.soft:before{
	left: 20px;
	}
}

ul.soft li{
	margin: 5px 0 0 180px;
	list-style: square;
}

@media(max-width:750px) {
	ul.soft li{
		margin: 5px 0 0 50px;
	}
}

/*sample*/
.sample {
   	width: 100%;	
    display: flex;
    justify-content: space-between;
	background-color: #fff;
	margin: 100px 0 0;
}

@media(max-width:1025px) {
	.sample {
		margin: 100px auto 0;
		padding: 50px 0;
	}
}

@media(max-width:750px) {
	.sample {
		flex-direction: column;
		margin: 100px 0 0;
	}
}

.sample>p {
    	width: 50%;
		margin: 150px;
}

@media(max-width:1366px) {
	.sample>p {
    	width: 50%;
		margin: 100px;
	}
}

@media(max-width:1025px) {
	.sample>p {
    	width: 50%;
		margin: 70px;
	}
}

@media(max-width:750px) {
	.sample>p {
    	width: 80%;	
		margin: 0 auto 50px auto;
	}
}

.menu {
	list-style: square;
	color: #666666;
	margin: auto 300px auto 0;
	text-align: left;
}

@media(max-width:1366px) {
	.menu {
		margin: auto 150px auto 0;
	}
}

@media(max-width:1025px) {
	.menu {
		margin: auto 100px auto 0;
	}
}

@media(max-width:750px){
	.menu {
		margin: auto;
	}
}

.menu li {
	text-align: left;
	margin-left: 50px;
}

/*画像・動画*/
#icon {
	width: 50px;
	display:flex;
	align-items: center;
	justify-content: center;
	margin: 50px auto;
}

@media(max-width:750px) {
	#icon {
	width: 30px;
	margin: 30px auto 50px 105px;
	}
}

div.vid_contents {
	text-align: center;
}

video.vid_main {
	width: 100%;
	max-width: 920px;
	margin: 100px auto;
}

/*lightbox追記修正*/
.lightboxOverlay{/*拡大時のモーダル*/
    width:100% !important;
}
.lb-outerContainer,.lb-dataContainer{
    width:calc(100% - 20px) !important;
    max-width:1300px;/*拡大時の最大幅*/
}
.lb-outerContainer{
    height:auto !important;
    margin-left:auto;
    margin-right:auto;
}
.lb-image{
    width:100% !important;
    height:auto !important;
}

#lightbox .lb-container { 
	padding: 0px; 
}
#lightbox .lb-outerContainer { 
	padding: 0px; 
}

/*テキスト*/
#prof {
	width: 200px;
}

p.prof {	
    font: 16px/1.6 'arial narrow', sans-serif;
	color: #666666;
	background-color: #FFFFFF;
	font-weight: bold;
}

p.m {	
    font: 16px/1.6 'arial narrow', sans-serif;
	color: #666666;
	background-color: #FFFFFF;
	text-align: left;
}

p.thank {	
    font: 16px/1.6 'arial narrow', sans-serif;
	color: #fff;
	margin: 100px auto 200px auto;
}

h1.text-shadow-drop-center {
	text-align: center;
	font-family: 'Sawarabi Mincho', sans-serif;
	font-size: 70px;
	margin: 100px auto 80px auto;
	-webkit-animation: text-shadow-drop-center 0.6s both;
	        animation: text-shadow-drop-center 0.6s both;
}

@-webkit-keyframes text-shadow-drop-center {
  0% {
    text-shadow: 0 0 0 rgba(0, 0, 0, 0);
  }
  100% {
    text-shadow: 0 0 18px rgba(0, 0, 0, 0.7);
  }
}

@keyframes text-shadow-drop-center {
  0% {
    text-shadow: 0 0 0 rgba(0, 0, 0, 0);
  }
  100% {
    text-shadow: 0 0 18px rgba(0, 0, 0, 0.7);
  }
}

.text-pop-up-top {
	font-family: 'Sawarabi Mincho', sans-serif;
	font-size: 300px;
	margin-top: 50px;
	margin-left: 70px;

	-webkit-animation: text-pop-up-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: text-pop-up-top 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

@media(max-width:750px) {
.text-pop-up-top {
	font-size: 80px;
	margin: 70px auto auto 20px;
	}
}

@-webkit-keyframes text-pop-up-top {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    text-shadow: none;
  }
  100% {
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    text-shadow: 0 1px 0 #cccccc, 0 2px 0 #cccccc, 0 3px 0 #cccccc, 0 4px 0 #cccccc, 0 5px 0 #cccccc, 0 6px 0 #cccccc, 0 7px 0 #cccccc, 0 8px 0 #cccccc, 0 9px 0 #cccccc, 0 50px 30px rgba(0, 0, 0, 0.3);
  }
}
@keyframes text-pop-up-top {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    text-shadow: none;
  }
  100% {
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    text-shadow: 0 1px 0 #cccccc, 0 2px 0 #cccccc, 0 3px 0 #cccccc, 0 4px 0 #cccccc, 0 5px 0 #cccccc, 0 6px 0 #cccccc, 0 7px 0 #cccccc, 0 8px 0 #cccccc, 0 9px 0 #cccccc, 0 50px 30px rgba(0, 0, 0, 0.3);
  }
}

/*お問い合わせ*/
.q {
	color: #333333;
}

.t {
	color: #ADADAD;
	font-size: 9px;
}

form {
	margin-top: 30px;
	font-size: 15px;
}

input[type="text"],input[type="email"],textarea {
	font-size: 16px;
	width: 290px;
}

textarea {
	height: 170px;
	overflow: auto;
}
input[type="submit"],input[type="reset"] {
	font-size: 16px;
	padding: 5px 20px;
	color: #666666;
	background: #ffffff;
	border: #999999 1px solid;
	border-radius: 3px;
	margin: 20px 20px 50px;
}
@media(max-width:750px) {
	input[type="submit"],input[type="reset"] {
		margin: 20px 5px;
	}
}

/*バック*/
.b {
	width: 100%;
	height: 100%;
	background-color: rgb(0,0,0,0.5);
}

.c {
	background-color: rgb(255,255,255,0.7);
}

/*フッター*/
#footer {
	width: 100%;
	text-align: center;
	color: #777777;
	background-color: #FFFFFF;
	margin: auto;
}
