@charset "UTF-8";

body	{
    font-family: 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif;
    /*フッターを常に下部に固定する*/
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}


/* Ａ: ナビゲーションバー */
.menu	{margin:0;
	border: none;
	background-color: #fff;}

.menu .collapse	{margin-top: 10px;
	font-size: 12px;}

.menu .navbar-toggle	{margin-top: 17px;}





/* Ｂ: グローバルメニュー */

.global	{padding: 0;
	background-color: #fff;}


@media (min-width: 768px) {

.global ul,
.global ol	{display: table;
	width: 100%;
	table-layout: fixed;
	margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.4;
	list-style: none;}

.global li	{display: table-cell;
	text-align: center;
	*float: left;}

.global li a	{display: block;
	padding: 10px 5px 10px 5px;
	color: #000;
	text-decoration: none;}

.global li a:hover	{background-color: #eee;}

.global li span	{display: block;
	font-size: 10px;}


/* 横に並べたリンクを区切る罫線 */
.global li a	{padding: 10px 0;
	border-right: solid 1px #aaa;}

.global li:first-child a	{border-left: solid 1px #aaa;}


/* 罫線で区切る設定 */
.global	{padding: 0;
	border-bottom: solid 1px #aaa;
	border-top: solid 1px #aaa;}


/* グラデーションの設定 */
/*.global	{background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(50%,#f3f3f3), color-stop(51%,#ededed), color-stop(100%,#fff));
	background-image: -webkit-linear-gradient(top, #fff 0%,#f3f3f3 50%,#ededed 51%,#fff 100%);
	background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2YzZjNmMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUxJSIgc3RvcC1jb2xvcj0iI2VkZWRlZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background-image: linear-gradient(to bottom,  #fff 0%,#f3f3f3 50%,#ededed 51%,#fff 100%);}*/

.global	{background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(50%,#f3f3f3), color-stop(51%,#ededed), color-stop(100%,#fff));
	background-image: -webkit-linear-gradient(top, #fff 0%,#f3f3f3 50%,#ededed 51%,#fff 100%);
	background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2YzZjNmMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUxJSIgc3RvcC1jb2xvcj0iI2VkZWRlZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background-image: linear-gradient(to bottom,  #fff 0%,#f3f3f3 0%,#ededed 0%,#fff 0%);}


/*.global li a:hover	{background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(91%,#fff), color-stop(92%,#ed1e79), color-stop(100%,#ed1e79));
	background-image: -webkit-linear-gradient(top,  #fff 0%,#fff 91%,#191970 92%,#191970 100%);
	background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YyZjJmMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjkxJSIgc3RvcC1jb2xvcj0iI2YyZjJmMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjkyJSIgc3RvcC1jb2xvcj0iI2VkMWU3OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZDFlNzkiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background-image: linear-gradient(to bottom,  #fff 0%,#fff 91%,#191970 92%,#191970 100%);}*/

.global li a:hover	{background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(91%,#fff), color-stop(92%,#ed1e79), color-stop(100%,#ed1e79));
	background-image: -webkit-linear-gradient(top,  #fff 0%,#fff 91%,#191970 92%,#191970 100%);
	background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YyZjJmMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjkxJSIgc3RvcC1jb2xvcj0iI2YyZjJmMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjkyJSIgc3RvcC1jb2xvcj0iI2VkMWU3OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZDFlNzkiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background-image: linear-gradient(to bottom,  #fff 0%,#fff 91%,#191970 92%,#191970 100%);}


/* Bootstrapの設定を無効化 */
.global .navbar-nav,
.global .navbar-nav>li	{float: none;}

.global .navbar-collapse:before,
.global .navbar-collapse:after,
.global .nav:before,
.global .nav:after
	{display: none;}

} /* @media */

.global{
	color:#f3f3f3;
	color:#ededed;
	color:#ed1e79;
}


/* Ｃ: カルーセル */
.carousel	{margin-bottom: 30px;}

.carousel-caption	{left: 15%;
	bottom: 40px;
	text-align: left;}

.carousel-caption h3	{font-size: 42px;}


@media (max-width: 680px) {
	.carousel-inner>.item>img	{min-width: 500px;}
	.carousel-control	{width: 20px;}
	.carousel-caption	{bottom: 0;}
	.carousel-indicators	{bottom: 0;}
	.carousel-caption h3	{font-size: 20px;}
	.carousel-caption p	{font-size: 12px;}
} /* @media */




/* Ｄ１: 新着情報メニュー */
.new	{margin-bottom: 20px;
	padding: 0;
}
.news	{
	margin-bottom: 10px;
	padding: 0;
}

.new h2	{margin: 0 0 10px 0;
	font-size: 20px;
	line-height: 1.2;
}
.news h2	{margin: 10 0 10px 0;
	font-size: 20px;
	line-height: 1.2;
}

.new ul,
.new ol	{margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.4;
	list-style: none;}

.new li a	{display: block;
	padding: 10px 5px 10px 5px;
	color: #000;
	/*color: #ff8c00;*/
	text-decoration: none;
	margin-bottom: 10px;
}


.new li a:hover	{background-color: #eee;}

.new time	{float: left;
	border: none;}

.new p	{margin: 0 0 0 110px;}

.new .desc	{color: #666;
	font-size: 12px;}

.new li a:after	{content: "";
	display: block;
	clear: both;}
.new li a	{*zoom: 1;}



/* 縦に並べたリンクを区切る罫線 */
.new li a	{
	/*border-bottom: solid 1px #aaa;*/
	border-bottom: solid 1px #ff8c00;
}



/* 枠の設定 */
.new h2	{padding: 10px;
	background-color: #fff;
	color: #000;}

/* 吹き出し型にする設定 */
/*.new h2	{position: relative;}*/

.new h2:after	{content: '';
	position: absolute;
	top: 100%;
	left: 40px;
	height: 0;
	width: 0;
	border: solid 15px transparent;
	/*border-top-color: #6d0e38;*/
	}




/* Ｄ２: 企業概要 */
.entry	{margin-bottom: 40px;
	padding: 0;}

.entry img	{max-width: 100%;
	height: auto;
	margin: 0 0 10px 0;
	vertical-align: bottom;}

.entry h2	{margin: 0;
	font-size: 20px;
	line-height: 1.2;}

.entry p	{margin: 0 0 10px 0;
	font-size: 14px;
	line-height: 1.6;}


/* 枠の設定 */
.entry h2	{padding: 10px;
	background-color: #fff;
	color: #00080;}

/* 吹き出し型にする設定 */
.entry h2	{position: relative;}

.entry h2:after	{content: '';
	position: absolute;
	top: 100%;
	left: 40px;
	height: 0;
	width: 0;
	border: solid 15px transparent;
	/*border-top-color: #6d0e38;*/
	/*border-top-color: #sss;*/}



/* Ｄ３: サブメニュー */
.submenu	{margin-bottom: 40px;
	padding: 0;}

.submenu h1	{margin: 0 0 10px 0;
	font-size: 18px;
	line-height: 1.2;}

.submenu ul,
.submenu ol	{margin: 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.4;
	list-style: none;}

.submenu li a	{display: block;
	padding: 10px 5px 10px 5px;
	color: #000;
	text-decoration: none;}

.submenu li a:hover	{background-color: #eee;}

.submenu img	{float: left;
	border: none;}

.submenu p	{margin: 0 0 0 80px;}

.submenu .title	{font-size: 18px;}

.submenu .desc	{color: #666;
	font-size: 12px;}

.submenu li a:after	{content: "";
	display: block;
	clear: both;}
.submenu li a	{*zoom: 1;}


/* 右矢印 */
.submenu li a	{position: relative;
	display: block;
	margin: 0 0 20px 0;
	padding: 30px 20px 30px 20px;
	border: solid 0px #aaa;
	color: #000;
	text-decoration: none;}

.submenu li a:before	{position: absolute;
	right: 10px;
	top: 50%;
	content: '\f054';
	margin: -8px 0 0 0;
	color: #888;
	font-family: 'FontAwesome';
	font-size: 16px;
	line-height: 1;}



/* フッター */
.footer	{
    padding: 20px 0 20px 0;
	border-top: solid 1px #aaa;
    margin-top: auto;   /*フッターを常に下部に固定する*/
}

.footer p	{margin: 0 0 3px 0;
	font-size: 12px;
	line-height: 1.4;}

.footer a	{color: #666;
	text-decoration: none;}

/* TOPへ戻る */
.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
}
.pagetop a {
    display: block;
    /*background-color: #ccc;*/
    background-color: #2f4f4f;
    text-align: center;
    /*color: #222;*/
    color: #fff;
    font-size: 16px;
    text-decoration: none;
    padding: 10px 10px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.pagetop a:hover {
    display: block;
    /*background-color: #b2d1fb;*/
    background-color: #778899;
    text-align: center;
    color: #000080;
    font-size: 16px;
    text-decoration: none;
    padding:10px 10px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.kiji p {
	margin-top: 0;margin-left:30px;
}
/* ----CSS Study----- :/
@charset "UTF-8";

body	{margin: 0;
	font-family: 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif}


/* 基本 */
.home * {
	margin: 0;
}

.home img	{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.home-sub img {
	max-width: 100px;
}


/* グリッド */
.home {
	--side: 20px;
	display: grid;
	grid-template-columns: 100px 1fr auto;
	grid-template-rows: auto 180px;
	grid-column-gap: 15px;
	grid-row-gap: 30px;
	margin: 0 var(--side) 30px;
	font-family: 'Noto Sans Japanese', sans-serif;
    /*font-family: 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif;*/
}

/* Safari用の設定 */
@supports (-webkit-nbsp-mode: space) {
	.burger {
		grid-template-rows: auto 192px;
	}
}

/* 大きい画像 */
.home-photo {
	grid-column: 1 / -1;
	grid-row: 1;
	margin: 0 calc( var(--side) * -1);
}

.home-photo img {
	height: 100%;
	object-fit: cover;
	max-height: 600px;
}

/* サイトタイトル */
.home-title {
	grid-column: 3;
	grid-row: 1 / -1;
	align-self: end;
	z-index: 1;
	padding: 80px 0 40px;
	font-size: 56px;
	font-weight: 900;
	line-height: 1.3;
	writing-mode: vertical-rl;
}

/* サイト解説文章 */
.home-text {
	grid-column: 2;
	grid-row: 2;
	justify-self: center;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.85;
	writing-mode: vertical-rl;
}

/* サブ情報 */
.home-sub {
	grid-column: 1;
	grid-row: 2;
}

.home-sub p {
	margin-top: 10px;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.5;
}


/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
	.home {
		--side: calc( (100vw - 960px) / 2 );
	}

	/* 文章 */
	.home-text {
		line-height: 2.5;
	}
}


/* ##### 画面の横幅769～999ピクセル ##### */
@media (min-width: 769px) and (max-width: 999px) {
	/* 文章 */
	.home-text {
		line-height: calc(22.2px + 7.8 * (100vw - 768px) / 232);
	}
}



/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {

	.home {
		grid-template-columns: 1fr auto;
		grid-template-rows: auto 180px auto;
	}

	/* タイトル */
	.home-title {
		grid-column: 2;
		grid-row: 1 / 3;
		font-size: 35px;
	}

	/* 文章 */
	.home-text {
		grid-column: 1;
		grid-row: 2;
		overflow-x: auto;
		min-width: 1px; /* Safari 10.x用の設定 */
		justify-self: stretch;
		padding-left: 30px;
	}

	.home::after	{
		grid-column: 1;
		grid-row: 2;
		justify-self: start;
		z-index: 1;
		width: 30px;
		content: '';
		background: linear-gradient(
			to right, 
			rgba(255,255,255,1) 0%, 
			rgba(255,255,255,0) 100%
		);
	}

	/* サブ情報 */
	.home-sub {
		grid-column: 1 / -1;
		grid-row: 3;

		/* サブ情報のグリッド */
		display: grid;
		grid-auto-flow: column;
		grid-column-gap: 10px;
		max-width: 280px;
	}

	.home-sub p {
		margin: 0;
	}

}
