@charset "utf-8";

/* * {
  outline: 1px solid magenta;
} */

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Questrial&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Tangerine&display=swap');
/* @import url('https://fonts.googleapis.com/css?family=Meiryo'); */

/* AOTF-MidashiGo-MB31Proフォント読み込み */
@font-face {
    font-family: "AOTF-MidashiGo-MB31Pro";
    src: url("../font/AOTF-MidashiGo-MB31Pro.otf") format("opentype");
}

/*keyframes.cssの読み込み
---------------------------------------------------------------------------*/
@import url("keyframes.css");


/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	color: #fff;
	/*全体の文字色*/
	/* font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
	font-family: "AOTF-MidashiGo-MB31Pro", sans-serif;
	/*フォント種類*/
	font-size: 16px;
	/*文字サイズ*/
	line-height: 2;
	/*行間*/
	background: #222;
	/*背景色*/
	-webkit-text-size-adjust: none;
}

h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
li,
dl,
dt,
dd,
form,
figure,
form {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	font-weight: normal;
	font-family: "AOTF-MidashiGo-MB31Pro", sans-serif;
}



.pcNone { display: none !important; }
.spNone { display: block !important; width: 100%;}

/* PC */
@media (min-width: 768px) {
	.pcNone { display: block !important; width: 100%;}
	.spNone { display: none !important;}
  }


ul {
	list-style-type: none;
}

ol {
	padding-left: 40px;
	padding-bottom: 15px;
}

img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
	font-size: 100%;
	border-spacing: 0;
}

video {
	max-width: 100%;
}

iframe {
	width: 100%;
}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #fff;
	/*リンクテキストの色*/
	transition: 0.2s;
	/*マウスオン時の移り変わるまでの時間設定。0.2秒。*/
	text-decoration: none;
}

a:hover {
	color: #ffd93f;
	/*マウスオン時の文字色*/
	text-decoration: none;
	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
}

.contact_btn_area{
	text-align: center;	
	width: 100%;
	margin-top: 6em;
}
.contact_btn{
	border: 1px solid #ffffff;
	padding: 1em;
	font-size: 1.3em;
}

/*inner
---------------------------------------------------------------------------*/
.inner {
	max-width: 1400px;
	/*サイトの最大幅*/
	margin: 0 auto;
	padding-left: 2%;
	padding-right: 2%;
}

/*ヘッダー
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	position: relative;
	padding: 20px;
	/*ヘッダー内の余白*/
}

/*ヘッダーブロック（トップページへの追加設定）*/
.home header {
	padding: 0px;
	/*余白をなしに*/
}

/*ロゴ画像*/
header #logo {
	width: 200px;
	/*画像幅*/
	margin: 0 auto;
	text-align: center;
	/*中央配置*/
}

/*ロゴ画像（トップページへの追加設定）*/
.home header #logo {
	display: none;
	/*スライドショーの邪魔なので非表示に*/
}

/*メインメニューのブロック
---------------------------------------------------------------------------*/
/*メニューブロック*/
#menubar {
	position: relative;
	z-index: 10;
	text-align: center;
	/*文字を中央に*/
	/* background: #fff; */
	/*背景色*/
	/* border-top: 1px solid #ccc; */
	/*上の線の幅、線種、色*/
	/* border-bottom: 1px solid #ccc; */
	/*下の線の幅、線種、色*/
	/* font-family: 'Questrial', sans-serif; */
	font-family: "AOTF-MidashiGo-MB31Pro", sans-serif;
	/*冒頭で読み込んだGoogle Fontsを適用する指定*/
	height: 105px;
	/*高さ。「#menubar ul li a」や「fixmenu」とも連動するので変更の際は注意。説明はこの下の「#menubar ul li a」で書いています。*/
}


/*メニュー１個あたりの設定*/
#menubar ul li {
	float: left;
	/*左に回り込み*/
	width: 25%;
	/*幅。今回は５個なので、100÷5=20。*/
	font-size: 20px;
	/*文字サイズ*/
}

#menubar ul li a {
	text-decoration: none;
	display: block;
	height: 85px;
	/*メニューブロックの高さ。ここの「85」と、下の行の「20」を合計した「105」の数字と、上の「#menubar」の「height」および下のfixmenu設定に２箇所ある「margin-top」の数字を合わせて下さい。*/
	padding-top: 20px;
	/*メニューブロックの高さプラス、上に空ける余白。メニューテキストの上下の配置バランスをここで調整して下さい。※変更の際は、上の行の注意書きもしっかり読んで下さい。*/

}

/*マウスオン時の文字色*/
#menubar ul li a:hover {
	color: #3fe9ff;
	/*文字色*/
}

/*飾り文字*/
#menubar ul li span {
	display: block;
	font-size: 10px;
	/*文字サイズ*/
	letter-spacing: 0.2em;
	/*文字間隔を少し広くとる設定*/
}

/*スマホ用メニューを表示させない*/
#menubar-s,
#menubar-s2 {
	display: none;
}

/*３本バーアイコンを表示させない*/
#menubar_hdr {
	display: none;
}

/*ドロップダウンメニューの親メニュー*/
#menubar a.cursor-default {
	cursor: default;
	/*マウスオーバー時に通常のカーソルになるように*/
	color: #333;
	/*文字色*/
}

/*ドロップダウンメニュー用
----------------------------------------------------------------------------------------------------------------------------------*/
/*メニューブロック*/
#menubar ul.ddmenu {
	position: absolute;
	visibility: hidden;
	z-index: 10;
	left: 0px;
	width: 94%;
	padding: 50px 3%;
	background: #000;
	/*背景色。古いブラウザ用。*/
	background: rgba(0, 0, 0, 0.85);
	/*背景色。0,0,0は黒のことで0.85は色が85%出た状態のこと。*/
	text-align: center;
	/*テキストをセンタリング*/
	border-bottom: 1px solid #fff;
	/*境界が見辛いので、下線の設定。*/
}

/*ドロップダウンメニューの出現アニメーション*/
#menubar li:hover ul.ddmenu {
	animation-name: opa1;
	/*keyframes.cssで使う@keyframesの指定*/
	animation-fill-mode: both;
	animation-duration: 0.8S;
	/*アニメーションを実行する時間。「s」は秒の事。*/
	animation-delay: 0.1s;
	/*出現するタイミング（秒後）*/
}

/*メニュー１個あたりの設定*/
#menubar ul.ddmenu li {
	float: none;
	width: auto;
	display: inline-block;
	font-size: 85%;
	/*文字サイズ*/
}

#menubar ul.ddmenu li a {
	height: auto;
	padding: 20px;
	/*メニューテキスト同士の余白*/
	color: #fff;
	/*文字色*/
	opacity: 0.7;
	/*透明度。70%色がついた状態。*/
}

/*マウスオン時*/
#menubar ul.ddmenu li a:hover {
	opacity: 1;
	/*透明度。色が100%出た状態。*/
}

/*fixmenu設定（メニューが画面上部に到達した際のスタイル）
---------------------------------------------------------------------------*/
/*上部固定メニュー用fixmenu設定*/
body.is-fixed-menu #menubar.nav-fix-pos {
	position: fixed;
	width: 100%;
	top: 0px;
	height: 60px;
	/*メニューの高さを少し狭くする*/
}

body.is-fixed-menu #contents {
	margin-top: 105px;
	/*※上の「#menubar ul li a」の注意書きにある数字を指定します。*/
}

/*※以下の２ブロックのスタイルの「中身」は、上の２ブロックのスタイルと単純に合わせておいて下さい。*/
body.is-fixed #menubar.nav-fix-pos {
	position: fixed;
	width: 100%;
	top: 0px;
}

body.is-fixed #contents {
	margin-top: 105px;
	/*※上の「#menubar ul li a」の注意書きにある数字を指定します。*/
}

/*装飾文字を非表示にする*/
body.is-fixed-menu #menubar ul li span {
	display: none;
}

/*メニューテキストの上下バランスを調整しなおす。２つの数字の合計と、「body.is-fixed-menu #menubar.nav-fix-pos」の「height: 60px;」の数字が合うようにして下さい。*/
body.is-fixed-menu #menubar ul li a {
	height: 50px;
	padding-top: 10px;
}

/*ドロップダウンメニューへの再設定*/
body.is-fixed-menu #menubar ul.ddmenu li a {
	padding: 20px;
	height: auto;
}

/*コンテンツ
---------------------------------------------------------------------------*/
#contents {
	padding: 100px 0 50px;
	/*上、左右、下へのコンテンツ内の余白*/
	position: relative;
	animation-name: opa2;
	/*keyframes.cssで使う@keyframesの指定*/
	animation-duration: 0.5S;
	/*アニメーションの実行時間*/
	animation-delay: 0.5s;
	/*出現するタイミング（秒後）*/
	animation-fill-mode: both;
}

/*h2タグ*/
#contents h2 {
	clear: both;
	margin-bottom: 100px;
	font-size: 210%;
	/*文字サイズ*/
	text-align: center;
	/*文字をセンタリング*/
	letter-spacing: 0.2em;
	/*文字間隔を少し広めにとる指定。通常がいいならこの１行削除。*/
	/* color: #3fe9ff; */
	color:#AAAAAA
	/*文字色*/
}

/*h2タグ内のspanタグ（装飾文字）*/
#contents h2 span {
	display: block;
	font-size: 50%;
	/*文字サイズ*/
	color: #999;
	/*文字色*/
}

/*h3タグ*/
#contents h3 {
	clear: both;
	margin-bottom: 30px;
	font-size: 150%;
	/*文字サイズ*/
	border-bottom: 1px solid #fff;
	/*下線の幅、線種、色*/
	padding-left: 3%;
	/*左側に空ける余白*/
	letter-spacing: 0.1em;
	/*文字間隔を少し広めにとる指定。通常がいいならこの１行削除。*/
	color: #ffffff;
	/*文字色*/
}


/*段落タグ*/
#contents p {
	padding: 0 3% 30px;
	/*上、左右、下への余白*/
}

#contents h2+p,
#contents h3+p {
	margin-top: -5px;
}

#contents p+p {
	margin-top: -10px;
}

#contents section+section {
	margin-top: 100px;
}

/*list（worksページで使っている横長ブロック）
---------------------------------------------------------------------------*/
/*ボックスの設定*/
#contents .list {
	position: relative;
	border-radius: 5px;
	/*角丸の指定。ほんの少し角が丸くなります。*/
	overflow: hidden;
	/*角丸から内容が飛び出ないよう、飛び出た部分を非表示にする指定*/
	display: flex;
	align-items: center;
	/*中のブロックの縦並びの揃え方*/
	background: #000;
	/*背景色*/
	color: #fff;
	/*文字色*/
	margin: 0 3% 30px;
	/*ボックスの下に空けるスペース。上、左右、下への順番。*/
	border: 1px solid rgba(255, 255, 255, 0.5);
	/*枠線の幅、線種、色。255,255,255は白の事で0.5は色が50%出た状態の事。*/
}

/*リンクテキストの文字色*/
#contents .list a {
	color: #fff;
}

/*ボックス内のh4（見出し）タグ*/
#contents .list h4 {
	margin-bottom: 20px;
	/*下のテキストとの間に空けるスペース*/
	font-size: 140%;
	/*文字サイズ*/
	color: #3fe9ff;
	/*文字色*/
}

/*ボックス内のp（段落）タグ*/
#contents .list p {
	padding: 0;
	text-align: justify;
	/*余白のリセット*/
}

/*ボックス内のfigure画像*/
#contents .list figure {
	width: 50%;
	/*画像の幅*/
}

/*「class="text"」を指定したブロック。テキストブロック。*/
#contents .list .text {
	width: max-content;
	/*ブロックの幅。下のpaddingの5%とも連動するので変更の際は注意して下さい。*/
	padding: 2% 5%;
	/*上下、左右へのブロック内の余白*/
}

/*偶数目のブロックの設定（画像とテキストブロックが左右交互に入れ替わる設定です。全部同じむきがよければこのブロックを削除します。）*/
#contents .list:nth-of-type(even) .text {
	order: 1;
}

/*装飾文字の設定（共通）*/
#contents .list::before {
	font-size: 18vw;
	line-height: 1;
	position: absolute;
	color: rgba(255, 255, 255, 0.15);
	/*文字色。255,255,255は白のことで、0.15は色が15%出た状態のこと。*/
	/* font-family: 'Tangerine', cursive; */
	font-family: "AOTF-MidashiGo-MB31Pro", sans-serif;
	/*冒頭で読み込んだGoogle Fontsを適用する指定*/
}

/*奇数番目のブロックの文字の配置場所指定*/
#contents .list:nth-of-type(odd)::before {
	left: -60px;
	top: -40px;
}

/*偶数番目のブロックの文字の配置場所指定*/
#contents .list:nth-of-type(even)::before {
	right: 0px;
	top: -40px;
}

/*１つ目ブロックに表示させるテキスト*/
#contents .list:nth-of-type(1)::before {
	content: "Works1";
}

/*２つ目ブロックに表示させるテキスト*/
#contents .list:nth-of-type(2)::before {
	content: "Works2";
}

/*３つ目ブロックに表示させるテキスト*/
#contents .list:nth-of-type(3)::before {
	content: "Works3";
}

/*ボックス内のボタン（共通）*/
.btn1 a {
	display: block;
	text-decoration: none;
	border: 1px solid #fff;
	/*枠線の幅、線種、色*/
	text-align: center;
	/*テキストをセンタリング*/
	padding: 10px 30px;
	/*上下、左右へのボタン内の余白*/
	margin: 40px auto 0;
	/*上、左右、下へのボックスの外側への余白*/
}

/*ボタンのマウスオン時（共通）*/
.btn1 a:hover {
	background: #3fe9ff;

	/*背景色*/
	color: #000 !important;
	/*文字色*/
}

/*list-column（トップページで使っている３列ブロック）
---------------------------------------------------------------------------*/
/*カラムブロック全体を囲むボックス*/
#contents .list-column-container {
	display: flex;
	justify-content: space-between;
	/*中のブロックの横並びの揃え方*/
	flex-wrap: wrap;
	/*中のブロックを自動で折り返す*/
	margin: 0 3%;
}
#contents .list-column-container::after{
	width: 33%;
	content: "";
	display: block;
}

/*１カラムあたりの設定*/
#contents .list-column {
	display: flex;
	flex-direction: column;
	/*中のブロックを並べる向きの指定。これは縦に並べる意味。*/
	width: 32%;
	/*ブロック幅*/
	margin-bottom: 20px;
	/*ブロックの下に空ける余白*/
	background: #000;
	/*背景色*/
	color: #fff;
	/*文字色*/
	border-radius: 5px;
	/*角丸の指定。ほんの少し角が丸くなります。*/
	overflow: hidden;
	/*角丸から内容が飛び出ないよう、飛び出た部分を非表示にする指定*/
	border: 1px solid rgba(255, 255, 255, 0.5);
	/*枠線の幅、線種、色。255,255,255は白の事で0.5は色が50%出た状態の事。*/
}

/*リンクテキストの文字色*/
#contents .list-column a {
	color: #fff;
}

/*ボックス内のh4（見出し）タグ*/
#contents .list-column h4 {
	margin-bottom: 20px;
	/*下のテキストとの間に空けるスペース*/
	font-size: 140%;
	/*文字サイズ*/

}

/*ボックス内のp（段落）タグ*/
#contents .list-column p {
	padding: 0;
	/*余白のリセット*/
}

/*「class="text"」を指定したブロック。テキストブロック。*/
#contents .list-column .text {
	padding: 5%;
	/*ブロック内の余白*/
	flex: 1 0 auto;
}

/*IEバグ対応*/
#contents .list-column figure {
	min-height: 0%;
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	position: relative;
	z-index: 1;
	font-size: 80%;
	/*文字サイズ*/
	/* background: #ffffff; */
	background-color: rgba(256,256,256,0.8);
	/*背景色*/
	color: #ffffff;
	/*文字色*/
	text-align: center;
}

footer a:hover {
	color: #3fe9ff;
}

footer .pr {
	display: block;
	font-size: 80%;
}

footer .footer_logo{
	width: 150px;
}

/*フッターメニュー
---------------------------------------------------------------------------*/
/*ボックス全体*/
#footermenu {
	overflow: hidden;
	padding: 0;
	padding-top: 10px;
	padding-bottom: 40px;
	display: flex;
	justify-content: center;
}

/*リンクテキスト*/
#footermenu li a {
	text-decoration: none;
	opacity: 0.7;
	color: #000000;
	font-size: 1.3em;
	/*透明度。70%の色がついた状態。*/
}
#footermenu li {
	border-right: 1px solid #000000;
	padding: 0 20px;
}
/* 最後の要素の右側の境界線を消す */
#footermenu ul:last-child li {
    border-right: none;
}

/*マウスオン時*/
#footermenu li a:hover {
	opacity: 1;
	/*透明度。100%色がついた状態。*/
}

/*１行分の設定*/
#footermenu ul {

	text-align: center;
}

/*見出し*/
#footermenu li.title,
#footermenu li.title a {
	opacity: 1;
	/*透明度。100%色がついた状態。*/
}

/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	clear: both;
	text-align: center;
	background: #000;
	/*背景色*/
	padding: 20px 0;
	/*上下、左右へのボックス内の余白*/
}

#copyright a {
	text-decoration: none;
}

/*facebookやtwitterなどのアイコン
---------------------------------------------------------------------------*/
/*アイコン全体を囲むブロック*/
ul.icon {
	margin-bottom: 20px;
}

/*アイコン１個あたりの設定*/
ul.icon li {
	display: inline-block;
	/*横並びにさせる指定*/
}

/*アイコン画像の設定*/
ul.icon img {
	width: 30px;
	/*画像の幅*/
}

ul.icon img:hover {
	opacity: 0.8;
}

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*見出しを含まないお知らせブロック*/
#new dl {
	padding: 0px 20px;
	/*上下、左右へのブロック内の余白*/
}

/*日付設定*/
#new dt {
	float: left;
	width: 9em;
	/*幅*/
	letter-spacing: 0.1em;
}

/*記事設定*/
#new dd {
	padding-left: 9em;
}

/*ta1設定
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption,
.ta2 caption {
	border: 1px solid #ccc;
	/*テーブルの枠線の幅、線種、色*/
	border-bottom: none;
	/*下線だけ消す*/
	text-align: left;
	/*文字を左寄せ*/
	background: rgba(0, 0, 0, 0.5);
	/*背景色*/
	font-weight: bold;
	/*太字に*/
	padding: 10px;
	/*ボックス内の余白*/
}

/*ta1テーブル*/
.ta1 {
	width: 94%;
	table-layout: fixed;
	margin: 0 3% 30px;
}

.ta1,
.ta1 td,
.ta1 th {
	border: 1px solid #ccc;
	/*テーブルの枠線の幅、線種、色*/
	padding: 10px;
	/*ボックス内の余白*/
	word-break: break-all;
}

/*左側ボックス*/
.ta1 th {
	width: 150px;
	/*幅*/
	text-align: center;
	/*センタリング*/
	font-weight: normal;
	color: #3fe9ff;
}

/*inputボタン
---------------------------------------------------------------------------*/
#contents input[type="submit"].btn,
#contents input[type="button"].btn,
#contents input[type="reset"].btn {
	-webkit-appearance: none;
	outline: none;
	padding: 5px 20px;
	/*上下、左右へのボックス内の余白*/
	border: 1px solid #333;
	/*枠線の幅、線種、色*/
	font-size: 130%;
	/*文字サイズ*/
	border-radius: 3px;
	/*角丸のサイズ*/
	background: #555;
	/*背景色*/
	color: #fff;
	/*文字色*/
}

/*マウスオン時の設定*/
#contents input[type="submit"].btn:hover,
#contents input[type="button"].btn:hover,
#contents input[type="reset"].btn:hover {
	border: 1px solid #333;
	/*枠線の幅、線種、色*/
	background: #3fe9ff;
	/*背景色*/
	color: #333;
	/*文字色*/
}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	background: #F00;
	/*背景色*/
	color: #FFF;
	/*文字色*/
	font-size: 70%;
	/*文字サイズ*/
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
}

/*ヘッダーにメニューが固定される分、リンク先が隠れるのを防ぐ為のスタイル。※ページ内へのリンクで使う。
---------------------------------------------------------------------------*/
.link {
	display: block;
	margin-top: -120px;
	padding-top: 120px;
}

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
/*通常時のボタンは非表示*/
body .nav-fix-pos-pagetop a {
	display: none;
}

/*fixmenu_pagetop.jsで設定している設定値になったら出現するボタンスタイル*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	display: block;
	text-decoration: none;
	text-align: center;
	width: 50px;
	/*幅*/
	line-height: 50px;
	/*高さ*/
	z-index: 1;
	position: fixed;
	bottom: 20px;
	/*下から20pxの場所に配置*/
	right: 3%;
	/*右から3%の場所に配置*/
	background: #666;
	/*背景色（古いブラウザ用）*/
	background: rgba(0, 0, 0, 0.6);
	/*背景色。0,0,0は黒の事。0.6は60%色がついた状態。*/
	color: #fff;
	/*文字色*/
	border: 1px solid #fff;
	/*枠線の幅、線種、色*/
	animation-name: opa1;
	/*keyframes.cssで使う@keyframesの指定*/
	animation-duration: 1S;
	/*アニメーションの実行時間*/
	animation-fill-mode: both;
	/*アニメーションの待機中は最初のキーフレームを維持、終了後は最後のキーフレームを維持。*/
}

/*マウスオン時*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
	background: #999;
	/*背景色*/
}

/*ul.disc,olタグ
---------------------------------------------------------------------------*/
ul.disc {
	list-style: disc;
	padding: 0 3% 20px 6%;
}

ol {
	padding: 0 3% 20px 6%;
}

/*その他
---------------------------------------------------------------------------*/
.look {
	background: #333;
	border: 1px solid #ccc;
	display: inline-block;
	padding: 0px 10px !important;
	border-radius: 4px;
}

p.look {
	margin: 0 3%;
}

.mb15,
.mb1em {
	margin-bottom: 15px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.clear {
	clear: both;
}

.color1,
.color1 a {
	color: #ffd93f !important;
}

.pr {
	font-size: 10px;
}

.wl {
	width: 96%;
}

.ws {
	width: 50%;
}

.c {
	text-align: center !important;
}

.r {
	text-align: right !important;
}

.l {
	text-align: left !important;
}

.fl {
	float: left;
}

.fr {
	float: right;
}

.big1 {
	font-size: 30px;
}

.mini1 {
	font-size: 11px;
	display: inline-block;
	line-height: 1.5;
}

.sh {
	display: none;
}



/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px) {

	/*全体の設定
---------------------------------------------------------------------------*/
	body {
		font-size: 2vw;
		/*文字サイズ*/
	}

	/*ヘッダー
---------------------------------------------------------------------------*/
	/*ヘッダーブロック*/
	header {
		border-bottom: 1px solid #ccc;
	}

	/*ヘッダーブロック（トップページへの追加設定）*/
	.home header {
		border: none;
	}

	

	/*メインメニュー
---------------------------------------------------------------------------*/
	/*スマホ用メニューブロック全体*/
	#menubar-s {
		overflow: auto;
		height: 100%;
		position: fixed;
		z-index: 100;
		top: 0px;
		width: 100%;
		background: rgba(0, 0, 0, 0.8);
		/*背景色*/
		border-top: 1px solid #fff;
		/*上の線の幅、線種、色*/
		animation-name: frame1;
		/*冒頭のkeyframesの名前*/
		animation-duration: 0.5s;
		/*アニメーションの実行時間。0.5秒。*/
		animation-fill-mode: both;
		/*待機中は最初のキーフレームを、完了後は最後のキーフレームを維持*/
		font-size: 16px;
		/*文字サイズ*/
	}

	#menubar-s li span {
		margin-left: 20px;
		font-size: 80%;
	}

	/*メニュー１個あたりの設定と、子メニューの見出し。*/
	#menubar-s ul li a,
	#menubar_hdr2 {
		display: block;
		text-decoration: none;
		padding: 30px 20px 30px 60px;
		border-bottom: 1px solid #fff;
		/*下の線の幅、線種、色*/
		color: #fff;
		/*文字色*/
	}

	/*PC用メニューを非表示にする*/
	#menubar {
		display: none;
	}

	/*子メニュー
---------------------------------------------------------------------------*/
	/*子メニューの見出しの追加。基本は上のブロックで設定しています。*/
	#menubar_hdr2 {
		padding-left: 60px;
		/*上にある「メニュー１個あたりの設定と、子メニューの見出し」の最後の数字（４つ目）に合わせる。*/
	}

	/*子メニューメニューブロック全体*/
	#menubar-s2 {
		display: block;
		margin-top: 10px;
		border-radius: 5px;
		background: rgba(0, 0, 0, 0.3);
		border: 1px solid #fff;
	}

	/*「＞」アイコン設定*/
	#menubar_hdr2.close {
		background: url(../images/arrow2.png) no-repeat 20px 35px / 18px;
	}

	/*「＾」アイコン設定*/
	#menubar_hdr2.open {
		background: url(../images/arrow3.png) no-repeat 20px 35px / auto 18px;
	}

	/*子メニュー１個あたりの設定*/
	#menubar-s2 li a {
		border-bottom: 1px solid #fff !important;
		padding: 10px 20px !important;
	}

	#menubar-s2 li:last-child a {
		border-bottom: none !important;
	}

	/*３本バーアイコン設定
---------------------------------------------------------------------------*/
	/*３本バーブロック*/
	#menubar_hdr {
		display: block;
		position: fixed;
		z-index: 100;
		top: 20px;
		/*上からの配置場所*/
		right: 5%;
		/*右からの配置場所*/
	}

	/*アイコン共通設定*/
	#menubar_hdr.close,
	#menubar_hdr.open {
		width: 50px;
		/*幅*/
		height: 50px;
		/*高さ*/
		border: 1px solid #fff;
	}

	/*三本バーアイコン*/
	#menubar_hdr.close {
		background: #000 url(../images/icon_menu.png) no-repeat center top/50px;
		/*背景色、背景画像の読み込み、画像の上半分（３本マーク）を表示。幅は50px。*/
	}

	/*閉じるアイコン*/
	#menubar_hdr.open {
		background: #000 url(../images/icon_menu.png) no-repeat center bottom/50px;
		/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
	}

	/*fixmenu設定（メニューが画面上部に到達した際のスタイル）
---------------------------------------------------------------------------*/
	/*fixmenuから折りたたみメニューになるのでリセット。*/
	body.is-fixed-menu #contents {
		margin-top: 0px;
	}

	body.is-fixed #contents {
		margin-top: 0px;
	}

	/*コンテンツ
---------------------------------------------------------------------------*/
	#contents {
		padding: 50px 0;
		/*上下、左右へのコンテンツ内の余白*/
	}

	/*h2タグ*/
	#contents h2 {
		margin-bottom: 50px;
	}

	/*list-column（トップページで使っている３列ブロック）
---------------------------------------------------------------------------*/
	/*ボックス内のh4（見出し）タグ*/
	#contents .list-column h4 {
		margin-bottom: 0px;
	}

	/*ヘッダーメニューが固定されなくなるので、再設定。
---------------------------------------------------------------------------*/
	.link {
		margin-top: -30px;
		padding-top: 30px;
	}

	/*ファーストビューサイズ変更
---------------------------------------------------------------------------*/

	header .slide0 {
		display: inline-block;
		align-items: center;
		justify-content: center;
		width: 100vw;
		height: 100vh;
		overflow: hidden;
		position: relative;
		background-image: url("../images/load.png");
		background-size: cover;
	}

	header img {
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
		-o-object-position: 50% 30%;
		object-position: 50% 30%;
	}

	/*その他
---------------------------------------------------------------------------*/
	body.s-n .sub,
	body.s-n #footermenu {
		display: none;
	}

	.big1 {
		font-size: 20px;
	}

}



/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px) {

	/*全体の設定
---------------------------------------------------------------------------*/
	body {
		font-size: 3vw;
	}

	/*コンテンツ
---------------------------------------------------------------------------*/
	/*h2タグ*/
	#contents h2 {
		margin-bottom: 30px;
	}

	/*h3タグ*/
	#contents h3 {
		margin-bottom: 20px;
	}

	#contents section+section {
		margin-top: 30px;
	}

	/*list（worksページで使っている横長ブロック）
---------------------------------------------------------------------------*/
	/*ボックス内のボタン（共通）*/
	.btn1 a {
		padding: 5px 10px;
		/*上下、左右へのボタン内の余白*/
	}

	/*テーブル（ta1）
---------------------------------------------------------------------------*/
	/*ta1設定*/
	.ta1,
	.ta1 td,
	.ta1 th {
		padding: 5px;
		/*ボックス内の余白*/
	}

	/*ta1の左側ボックス*/
	.ta1 th {
		width: 100px;
	}

	/*その他
---------------------------------------------------------------------------*/
	.ws,
	.wl {
		width: 94%;
	}

	.fl {
		float: none;
	}

	.fr {
		float: none;
	}

	.big1 {
		font-size: 16px;
	}

	.sh {
		display: block;
	}

	.pc {
		display: none;
	}

}



/***********************************
* 共通パーツ
***********************************/
.loading {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	z-index: 9999;
	background-color: #212121;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-animation: fade-out-right 1s;
	animation: fade-out-right 1s;
	-webkit-animation-delay: 1.2s;
	animation-delay: 1.2s;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	-webkit-animation-timing-function: cubic-bezier(0.785, 0.135, 0.15, 0.86);
	animation-timing-function: cubic-bezier(0.785, 0.135, 0.15, 0.86);
	/* easeInOutCirc */
}

@-webkit-keyframes fade-out-right {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}

@keyframes fade-out-right {
	0% {
		left: 0;
	}

	100% {
		left: 100%;
	}
}

.loading .logo {
	width: 100px;
	position: absolute;
}

.loading .loader {
	color: #ffffff;
	font-size: 90px;
	text-indent: -9999em;
	overflow: hidden;
	width: 0.94em;
	height: 0.94em;
	border-radius: 50%;
	margin: 72px auto;
	position: relative;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
	animation: load6 1.7s infinite ease, round 1.7s infinite ease;
}

@-webkit-keyframes load6 {
	0% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
	}

	5%,
	95% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
	}

	10%,
	59% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
	}

	20% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
	}

	38% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
	}

	100% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
	}
}

@keyframes load6 {
	0% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
	}

	5%,
	95% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
	}

	10%,
	59% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, -0.087em -0.825em 0 -0.42em, -0.173em -0.812em 0 -0.44em, -0.256em -0.789em 0 -0.46em, -0.297em -0.775em 0 -0.477em;
	}

	20% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, -0.338em -0.758em 0 -0.42em, -0.555em -0.617em 0 -0.44em, -0.671em -0.488em 0 -0.46em, -0.749em -0.34em 0 -0.477em;
	}

	38% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, -0.377em -0.74em 0 -0.42em, -0.645em -0.522em 0 -0.44em, -0.775em -0.297em 0 -0.46em, -0.82em -0.09em 0 -0.477em;
	}

	100% {
		-webkit-box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
		box-shadow: 0 -0.83em 0 -0.4em, 0 -0.83em 0 -0.42em, 0 -0.83em 0 -0.44em, 0 -0.83em 0 -0.46em, 0 -0.83em 0 -0.477em;
	}
}

@-webkit-keyframes round {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes round {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.contact-form p {
	margin: 0 0 40px;
}

.contact-form label {
	font-size: 17px;
}

@media only screen and (max-width: 834px),
(max-device-width: 834px) {
	.contact-form label {
		font-size: 16px;
	}
}

.contact-form input,
.contact-form textarea {
	margin: 15px 0 0;
	background-color: #f7f7f7 !important;
}

.contact-form input::-webkit-input-placeholder,
.contact-form textarea::-webkit-input-placeholder {
	font-size: 14px;
}

.contact-form input:-ms-input-placeholder,
.contact-form textarea:-ms-input-placeholder {
	font-size: 14px;
}

.contact-form input::-ms-input-placeholder,
.contact-form textarea::-ms-input-placeholder {
	font-size: 14px;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
	font-size: 14px;
}

.contact-form textarea {
	padding: 20px;
}

.contact-form input[type=text],
.contact-form input[type=email] {
	width: 100%;
	max-width: 100%;
}

.contact-form input[type=submit] {
	display: block;
	margin: 0;
	background-color: transparent !important;
	color: #ffffff;
	border: none !important;
	font-weight: 600;
	width: 100%;
	padding: 20px 0;
}

.contact-form .wpcf7-checkbox .wpcf7-list-item {
	display: block;
	margin: 15px 0 0;
}

.contact-form .wpcf7-checkbox .wpcf7-list-item label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.contact-form .wpcf7-checkbox .wpcf7-list-item label input[type=checkbox] {
	margin: 0;
	margin-right: 15px;
	width: 16px;
	height: 16px;
}

.contact-form .wpcf7-checkbox .wpcf7-list-item label .wpcf7-list-item-label {
	font-size: 14px;
}

.contact-form .gradient-btn {
	margin: 40px auto;
	padding: 0;
}

.contact-form .ajax-loader {
	display: none !important;
}

.contact-form .required {
	background-color: #81D4FA;
	color: #ffffff;
	font-size: 12px;
	padding: 5px 10px;
	margin-left: 15px;
}

.contact-form hr {
	border-color: #f7f7f7;
}

.google-map iframe {
	width: 100%;
	height: 350px;
}

@media only screen and (max-width: 834px),
(max-device-width: 834px) {
	.google-map iframe {
		height: 250px;
	}
}

.common-arrow.bottom {
	width: 22px;
	height: 22px;
	border-top: 3px solid #81D4FA;
	border-right: 3px solid #81D4FA;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	margin: 0 auto;
}

.service_img{
	width: 60%;
	margin: auto;
	display: block;
}
@media screen and (max-width:480px) 
{
	.service_img{
		width: 100%;
	}
}

/* 追加 */

/* ------------- スクロールフェードインDown用(下から上へ) START------------- */
.fadeInDown {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}

@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}

@keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(20px);
		-ms-transform: translateY(20px);
		transform: translateY(20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}

/* ------------- スクロールフェードインDown用 END ------------- */

/* ------------- スクロールフェードインDown用(右から左) START ------------- */
.fadeInRight {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInRight;
	animation-name: fadeInRight;
	visibility: visible !important;
}

@-webkit-keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translateX(20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}

@keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translateX(20px);
		-ms-transform: translateX(20px);
		transform: translateX(20px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
}

/* ------------- スクロールフェードインDown用 END ------------- */

/* ------------- スクロールでその場で画像をフェードイン START ------------- */
.fadeInImage {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInImage;
	animation-name: fadeInImage;
	visibility: visible !important;
}

@-webkit-keyframes fadeInImage {
	0% {
		opacity: 0;
		-webkit-transform: translateX(0px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}

@keyframes fadeInImage {
	0% {
		opacity: 0;
		-webkit-transform: translateX(0px);
		-ms-transform: translateX(0px);
		transform: translateX(0px);
	}

	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
}

/* ------------- スクロールフェードイン画像フェードイン END ------------- */

/* ------------- Wantedlyボタン START ------------- */
.btn-76,
.btn-76 *,
.btn-76 :after,
.btn-76 :before,
.btn-76:after,
.btn-76:before {
  border: 0 solid;
  box-sizing: border-box;
}
.btn-76 {
	display:flex;
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: button;
  background-color: #000;
  background-image: none;
  color: #fff;
  cursor: pointer;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif,
    Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
  font-size: 100%;
  line-height: 1.5;
  margin: 0;
  -webkit-mask-image: -webkit-radial-gradient(#000, #fff);
  padding: 0;
  margin: auto;
}
.btn-76:disabled {
  cursor: default;
}
.btn-76:-moz-focusring {
  outline: auto;
}
.btn-76 svg {
  display: block;
  vertical-align: middle;
}
.btn-76 [hidden] {
  display: none;
}
.btn-76 {
  --neon: #81D4FA;
  box-sizing: border-box;
  display: block;
  font-weight: 900;
  -webkit-mask-image: none;
  outline: 4px solid #fff;
  outline-offset: -4px;
  overflow: hidden;
  padding: 1.2rem 3rem;
  position: relative;
  text-transform: uppercase;
  transition: 0.2s linear 0.1s;
}
.btn-76:hover {
  background: var(--neon);
  box-shadow: 0 0 5px var(--neon), 0 0 25px var(--neon), 0 0 50px var(--neon),
    0 0 100px var(--neon);
  color: #fff;
  outline-color: transparent;
  transition: 0.2s linear 0.6s;
}
.btn-76 span {
  display: block;
  inset: 0;
  position: absolute;
}
.btn-76 .top {
  border-top: 4px solid var(--neon);
  opacity: 0;
  transform: translateX(calc(-100% + var(--progress, 0%)));
  transition: none;
}
.btn-76:hover .top {
  --progress: 100%;
  opacity: 1;
  transition: transform 0.2s linear;
}
.btn-76 .right {
  border-right: 4px solid var(--neon);
  opacity: 0;
  transform: translateY(calc(-100% + var(--progress, 0%)));
  transition: none;
}
.btn-76:hover .right {
  --progress: 100%;
  opacity: 1;
  transition: transform 0.2s linear 0.2s;
}
.btn-76 .bottom {
  border-bottom: 4px solid var(--neon);
  opacity: 0;
  transform: translateX(calc(100% - var(--progress, 0%)));
  transition: none;
}
.btn-76:hover .bottom {
  --progress: 100%;
  opacity: 1;
  transition: transform 0.2s linear 0.4s;
}
.btn-76 .left {
  border-left: 4px solid var(--neon);
  opacity: 0;
  transform: translateY(calc(100% - var(--progress, 0%)));
  transition: none;
}
.btn-76:hover .left {
  --progress: 100%;
  opacity: 1;
  transition: transform 0.2s linear 0.6s;
}
/* ------------- Wantedlyボタン END ------------- */

/* ------------- テクノロジー背景 START ------------- */


/*========= レイアウトのためのCSS ===============*/

#wrapper{
  display: flex;
  justify-content: center;
  align-items: center;
  text-align:center;
  color: #fff;
}

a{
  color: #fff;
}

/*========= particle js を描画するエリア設定 ===============*/

html,body{
  height: 100%;/*高さを100%にして描画エリアをとる*/
}

#particles-js{ 
  position:fixed;/*描画固定*/
  z-index:-1;/*描画を一番下に*/
  width: 100%;
  height: 100%;
  background-color:#000000;/*背景色*/
}

#wrapper{
  position: relative;/*描画を#particles-jsよりも上にするためposition:relative;を指定*/
  z-index: 1;/*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
  width:100%;
  height: 100%;
}
/* ------------- テクノロジー背景 END ------------- */

/* ------------- TOPICを光らせる START ------------- */
.shine span.mask{
	position: relative;/*キラッの基点となる位置を定義*/
	  display: block;
	  line-height: 0;/*行の高さを0にする*/
	  overflow: hidden;/*拡大してはみ出る要素を隠す*/
  }
  
  .shine span.mask::before {
	position: absolute;
	content:"";
	width: 50%;/*キラッの横幅*/
	height: 100%;/*キラッの縦幅*/
	top: 0;/*.shine span.maskのトップ0を基点*/
	left: -75%;/*画面の見えていない左から右へ移動するスタート地点*/
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgb(255, 255, 255) 100%);
	transform: skewX(-25deg);/*背景白透過を斜めに*/
  }
  
  .shine span.mask:hover::before {/*hoverした時の変化*/
	animation: shine 0.7s;/*アニメーションの名前と速度を定義*/
  }
  
  @keyframes shine {
	100% {
	  left: 125%;/*画面の見えていない左から右へ移動する終了地点*/
	}
  }
/* ------------- TOPICを光らせる END ------------- */

/* ------------- TOPICの画像を順番に表示 START ------------- */
.fadeUp {
	animation-name:fadeUpAnime;
	animation-duration:0.5s;
	animation-fill-mode:forwards;
	opacity: 0;
	}
	
	@keyframes fadeUpAnime{
	  from {
		opacity: 0;
	  transform: translateY(100px);
	  }
	
	  to {
		opacity: 1;
	  transform: translateY(0);
	  }
	}
/* ------------- TOPICの画像を順番に表示 END ------------- */

/************

/************** contact.html **************/
#contact_content {
	position: relative;
	content: "";
	display: block;
	width: 90%;
	top: 0;
	left: 0;
	margin: auto;
	margin-top: 5em;
	margin-bottom: 2em;
}

.contact_heading_page {
	position: absolute;
	top: -6em;
	left: 0;
	width: 100%;
	padding: 1vh 3vh;
	/* z-index: 1; */
	background-color: rgba(0, 0, 0, 0.8);
}

/* フォームデザイン */
.Form-Item {
	border-top: 1px solid #000000;
	padding-top: 16px;
	padding-bottom: 16px;
	flex-wrap: wrap;
	width: 100%;
	display: flex;
	align-items: center;
}

.Form-Item:nth-child(5) {
	border-bottom: 1px solid #000000;
}

.Form-Item-Label {
	width: 100%;
	max-width: inherit;
	display: flex;
	align-items: center;
	letter-spacing: 0.05em;
	font-weight: bold;
	font-size: 15px;
	color: #fffdfd;
}

.Form-Item-Label.isMsg {
	margin-top: 0;
	margin-bottom: auto;
}

.Form-Item-Label-Required {
	border-radius: 4px;
	margin-right: 8px;
	padding-top: 4px;
	padding-bottom: 4px;
	width: 32px;
	display: inline-block;
	text-align: center;
	background: #e40000;
	color: #fff;
	font-size: 10px;
}

.Form-Item-Input {
	border: 1px solid #000000;
	border-radius: 6px;
	padding-left: 1em;
	padding-right: 1em;
	height: 40px;
	flex: inherit;
	width: 100%;
	max-width: 100%;
	background: #fff;
	font-size: 15px;
	margin-top: 18px;
	color: #000;
}

.Form-Item-Textarea {
	border: 1px solid #000000;
	border-radius: 6px;
	padding-left: 1em;
	padding-right: 1em;
	height: 200px;
	flex: inherit;
	width: 100%;
	/* max-width: calc(100vmax * .4); */
	background: #fff;
	font-size: 15px;
	margin-top: 18px;
	color: #000;
}


.Form-Btn {
	border-radius: 5px;
	margin: auto;
	margin-top: 1em;
	height: 3em;
	width: 160px;
	display: block;
	letter-spacing: 0.05em;
	background-color: #ffffff;
	color: #000000;
	font-size: 16px;
	font-weight: bold;
}
