@charset "utf-8";
/* CSS Document 全共通css*/

.pc {
	display: block;
}
.sp {
	display: none;
}
.none {
	display: none;
}
/* リセット */
* {
	box-sizing: border-box;
}
*:before,
*:after {
    box-sizing: inherit;
}
html {
	width: 100%;
	font-size: 62.5%;
	overflow-y: scroll;
}
body {
	-webkit-text-size-adjust: 100%; /* フォントサイズ自動調整 */
	width: 100%;
	margin: 0;
	padding: 0;
	color: #000;
	color:#346288;
	line-height: 1.7;
	font-weight: 400;
	font-style: normal;
	text-decoration: none;
	font-family: 'Kosugi', sans-serif;
	background-color: #fff;
	font-size: 1.7rem;
	letter-spacing:0.05em;
	overflow: hidden;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-size: 1rem;
	font-weight: normal;
	font-style: normal;
}
dl, dt, dd, ol, ul, li, p {
	margin: 0;
	padding: 0;
}
strong {
	font-weight: bold;
	font-style: normal;
}
em {
	font-weight: bold;
	font-style: normal;
}
address {
	margin: 0;
	padding: 0;
	font-weight: normal;
	font-style: normal;
}
.bold {
	font-weight: bold;
}
.font_l {
	font-size: 1.4rem;
}
.font_ll {
	font-size: 1.8rem;
}
.font_s {
	font-size: 1.1rem;
}
.font_ss {
	font-size: 1.0rem;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.left {
	text-align: left;
}
.lefter {
	float: left;
}
.righter {
	float: right;
}
a {
	color: #000;
	text-decoration: none;
}
a:hover {
	color: #000;
	text-decoration: underline;
}
a img {
	border: none;
}
.clear {
	clear: both;
	font-size: 0;
	line-height: 0;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
/* 画像リンク */ /*色つきはサイズ注意*/
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
}
/* 画像リンク */ /*オーバー用透過なし*/
a:hover img.noopa {
	opacity: 1.0;
	filter: alpha(opacity=100);
}
/* 基本レイアウト */
body {
}
#wrapper {
	position:relative;
	display:flex;
	justify-content:center;
	align-content:space-between;
	flex-wrap:wrap;
	width: 100vw;
	height:100vh;
	margin: 0 auto;
	background-image:url(../images/interface-3593269.png);
	background-position:center bottom;
	background-repeat:no-repeat;
	background-size:contain;
	background-color:#75d4ff;
}
#wrapper > header {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
}
#contents {
	margin: 0px auto 0 auto;
	background-color: #fff;
}
#wrapper > footer {
	clear: both;
	width: 100%;
	margin: 0 auto 0 auto;
	background-color:#f7f7f7;
	font-family: 'Sawarabi Gothic', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	z-index:20000;
}
/* 以上基本レイアウト */

/*リーガルコム会社情報*/
#corpinfo {
	width:auto;
	padding:40px 0;
	text-shadow: rgb(255 255 255 / 80%) 1px 1px 2px;
}
#corpinfo h1 {
	width:100%;
	margin-bottom:10px;
	font-size:2.4rem;
}
p.copyright {
	width:100%;
	font-size:1.2rem;
	text-align:center;
}


/*ヘッダー*/

#wrapper > header .inside {
	width: 1280px;
	margin: 0 auto;
}
/*/ヘッダー*/

/*メニュー*/
#common_btn_area {
	position:fixed;
	right: calc(50% - 740px);
	top: 0;
	width:100px;
	height:100vh;
	background-color:hsla(0,0%,100%,0.36);
	z-index: 10000;
}
#common_btn_area.active {
	background-color:inherit;
}
@media screen and (max-width: 1480px) {
#common_btn_area {
	right: 0;
}
}
#common_btn_area #menubtn {
	position:relative;
	display: block;
	width: 41px;
	height: 22px;
	margin:70px auto 0 auto;
	z-index: 10001;
	cursor:pointer;
}
#common_btn_area.active #menubtn {
	display:block;
}
#common_btn_area #menubtn span {
	position:absolute;
	left:0;
	width: 100%;
	height: 2px;
	background-color: #000;
	display: inline-block;
	transition: all .4s;
}
#common_btn_area #menubtn span:nth-of-type(1) {
	top: 0px;
}
#common_btn_area #menubtn span:nth-of-type(2) {
	top: 10px;
}
#common_btn_area #menubtn span:nth-of-type(3) {
	bottom: 0;
	width: 85%;
}
#common_btn_area.active #menubtn span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-315deg);
	transform: translateY(10px) rotate(-315deg);
	background-color: #fff;
}
#common_btn_area.active #menubtn span:nth-of-type(2) {
	opacity: 0;
}
#common_btn_area.active #menubtn span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(315deg);
	transform: translateY(-10px) rotate(315deg);
	background-color: #fff;
	width: 100%;
}

/* pagetop */
#common_btn_area #gototop {
	position:absolute;
	right: 50%;
	top: 50%;
	width:123px;
	height:25px;
	margin-top:-13px;
	margin-right:-61px;
	background-image:url(../images/common/pagetop_arr.svg);
	background-size:contain;
	background-position:left bottom;
	background-repeat:no-repeat;
	letter-spacing:0.2em;
	line-height:1;
	text-align:center;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
#common_btn_area #gototop:hover {
	opacity:0.7;
}
#common_btn_area #gototop a:hover {
	text-decoration:none;
}
#common_btn_area.active #gototop {
	display:none;
}


/*グローバルナビ*/
.nav_waku {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #003366;
	z-index: 100;
}
#gnav {
	display:flex;
	justify-content:center;
	align-content:center;
	height:100%;
	color: #fff;
	overflow: hidden auto;
	z-index: 101;
}
#gnav ul {
	display:flex;
	justify-content:center;
	align-content:center;
	flex-wrap:wrap;
	z-index: 102;
}
#gnav ul li {
	list-style: none;
	width:100%;
	margin-bottom:40px;
	font-family: 'Great Vibes', cursive;
	font-size: 5.0rem;
	text-align: center;
	letter-spacing:0.1em;
	line-height:1;
}
#gnav ul li:last-child {
	margin-top:30px;
}
#gnav ul li span {
	margin-left:70px;
	font-family:"Sawarabi Gothic";
	font-size: 2.0rem;
	letter-spacing:0.4em;
}
#gnav ul li a {
	color: #fff;
	text-decoration:none;
}
#gnav ul li a:hover {
	opacity:0.7;
}
/*/グローバルナビ*/

/*フッター*/
#wrapper > footer .upper {
	display: flex;
	justify-content:space-between;
	align-items:center;
	width:1100px;;
	height: auto;
	margin:0 auto;
	padding:50px 0;
}
#wrapper > footer .upper .corp_info {
	text-align:center;
	line-height:1.4;
}
#wrapper > footer .upper ul {
	margin-left:1.5em;
}
#wrapper > footer .copyright {
	display:flex;
	justify-content:center;
	align-items:center;
	height:100px;
	background-color:#003366;
	color:#fff;
	text-align: center;
	font-size: 1.4rem;
}
/*/フッター*/

