@charset "utf-8";

/* common
-------------------- */
#Wrapper {
}
.body-wrap {
    width: 1100px;
    margin-left: auto;
    margin-right: auto;
}






/* Header
-------------------- */
#Header {
	position: relative;
	padding: 36px;
}
#Header h1,
#Header p#TopTitle {
	margin-bottom: 10px;
	color: #666;
	font-size: 11px;
}

#Header #Logo {
	width: 288px;
}
#HeaderSnsIcons {
	position: absolute;
	top: 35px;
	right: 295px;
}
#HeaderSnsIcons *:before {
	color: #777;
	font-size: 20px;
}
#HeaderSnsIcons a {
	text-decoration: none;
}
#HeaderSnsIcons a:hover {
	text-decoration: none;
}

#BtnMenu {
    display: none;
}

#HeaderNaviLinks {
	position: absolute;
	top: 33px;
	right: 395px;
}
#HeaderNaviLinks a {
	color: #666;
	font-size: 12px;
	text-decoration: none;
}
#HeaderNaviLinks a:hover {
	text-decoration: underline;
}


/* GrobalNavi
-------------------- */
#GrobalNavi {
	position: relative;
	width: 1100px;
	margin: 0 auto;
	padding-bottom: 6px;
}
#GrobalNavi ul {
}
#GrobalNavi li {
	position: relative;
	z-index: 3000;
    float: left;
	height: 42px;
	margin-right: 8px;
	border-bottom: 2px solid #D0EAF0;
	overflow: hidden;
}
#GrobalNavi li:last-child {
	border-bottom: none;
}
#GrobalNavi li a {
	display: block;
	width: 156px;
	height: 42px;
	margin-top: -13px;
	padding-bottom: 13px;
	color: #000;
	font-size: 16px;
	font-family: 'Lato', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	text-align: center;
	text-decoration: none;
	line-height: 1.2;
}
#GrobalNavi li a:hover {
	margin-top: 0;
	padding-bottom: 0;
	text-decoration: none;
}
#GrobalNavi li a span {
	display: block;
	color: #46B9BA;
	font-size: 13px;
}
#GrobalNavi >ul > li#RecruitLink a {
	width: 110px;
}

#GrobalNavi li.dropdown-item ul {
	position: absolute;
	z-index: 3050;
	display: block;
}
#GrobalNavi li.dropdown-item ul li {
	float: none;
	height: auto;
	border-bottom: none;
	margin-bottom: 1px;
	background: #333;
}
#GrobalNavi li.dropdown-item ul a {
	display: block;
	width: 156px;
	height: auto;
	margin-top: 0;
	padding: 10px 0;
	background: #48BBBC;
	color: #fff;
	font-size: 13px;
	text-align: center;
}
#GrobalNavi li.dropdown-item ul a:hover {
	color: #000;
}
#GrobalNavi li.dropdown-item:hover {
	overflow: visible;
}


.diamond-wrap {
	position: relative;
	width: 177px;
	height: 177px;
}
.diamond {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 124.785px;
	height: 124.785px;
	margin: auto;
	background: #3676BD;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	overflow: hidden;
}
.diamond-wrap2 {
	position: relative;
	width: 162px;
	height: 162px;
}
.diamond2 {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 116.64px;
	height: 116.64px;
	margin: auto;
	background: #3676BD;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	overflow: hidden;
}


#GrobalNavi .genericon {
	display: block;
}
#GrobalNavi .genericon:before {
	font-size: 40px;
}
.header-navi a {
	display: block;
	padding: 10px 10px 30px;
	color: #fff;
	font-size: 16px;
	font-family: 'Lato', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}
.header-navi a:hover {
	color: #000;
}

#ContactNavi {
	position: absolute;
	top: -110px;
	right: 68px;
	z-index: 1001;
	width: 130px;
}
#AccessNavi {
	position: absolute;
	top: -40px;
	right: -18px;
	z-index: 1002;
	width: 130px;
}

#RecruitNaviBg {
	position: absolute;
	top: -66px;
	right: 144px;
	height: 160px;
}
#RecruitNaviBg .diamond2 {
	background: #d0eaf0;
}

#ContactNaviBg {
	position: absolute;
	top: -160px;
	right: 46px;
}
#ContactNaviBg .diamond {
	background: #48BBBC;
}

#AccessNaviBg {
	position: absolute;
	top: -72px;
	right: -42px;
}
#AccessNaviBg .diamond {
	background: #88d3d3;
}

#DummyNaviBg {
	position: absolute;
	top: 14px;
	right: 63px;
}
#DummyNaviBg .diamond2 {
	background: #d9f7f7;
}


/* SP */
#GrobalNavi #SPNavi {
	display: none;
}

@media screen and (max-width: 640px){
}










/* レイアウト
-------------------- */
.contents {
	position: relative;
	z-index: 1060;
    margin-bottom: 50px;
}
.contents .body-wrap {
	margin-bottom: 40px;
}





/* TopLink
-------------------- */
#TopLink {
	position: fixed;
	bottom: 50px;
	left: 50%;
    z-index: 10000;
	margin-left: 450px;
	text-align: right;
    text-decoration: none;
    font-family: 'Oswald', sans-serif;
    cursor: pointer;
    opacity: 0.7
}
#TopLink img:hover {
    opacity: 0.5;
}





/* Footer
-------------------- */
#Footer {
	padding: 46px 0;
	background: #333333;
}
#FooterWrap {
	position: relative;
}
#FooterLogo {
	float: left;
	width: 288px;
}

#SocialLinks {
	position: absolute;
	top: 16px;
	right: 280px;
}
#SocialLinks div {
	float: left;
}
#SocialLinks div.tweet {
	margin-right: 16px;
}

#FooterContact {
	float: right;
	width: 250px;
	background: #48BBBC;
}
#FooterContact a {
	display: block;
	padding: 12px 15px 2px;
	color: #fff;
	font-size: 18px;
	text-decoration: none;
	vertical-align: bottom;
}
#FooterContact .genericon {
	margin-right: 20px;
}
#FooterContact .genericon-mail:before {
	position: relative;
	top: -6px;
	font-size: 40px;
}


#FooterNavi {
	padding: 30px 0;
	background: #EDEDED;
}
#FooterNaviWrap > ul {
	float: left;
	margin-right: 76px;
}
#FooterNaviWrap > ul:last-child {
	margin-right: 0;
}
#FooterNaviWrap > ul > li {
	margin-bottom: 20px;
}
#FooterNavi a {
	text-decoration: none;
}
#FooterNaviWrap > ul > li > span,
#FooterNaviWrap > ul > li > a {
	color: #000;
	font-size: 14px;
	font-weight: bold;
}


#FooterNaviWrap > ul ul {
	margin-top: 10px;
}
#FooterNaviWrap > ul ul li {
	margin-bottom: 5px;
	margin-left: 16px;
}
#FooterNaviWrap > ul ul li a {
	color: #000;
}

#FooterNavi ul#FnaviService a {
	display: block;
	padding-left: 20px;
	background: url(../img/common/icn_open_link.png) left 4px no-repeat;
}

#FooterNavi li#FnaviOthers ul {
	margin-top: 0;
}
#FooterNavi li#FnaviOthers li {
	margin-bottom: 10px;
}
#FooterNavi li#FnaviOthers a {
	color: #000;
	font-size: 14px;
	font-weight: bold;
}





#FooterNavi li {
}
#FooterNavi li a {
}



#Copyright {
	padding: 40px 0;
	color: ##333333;
	font-size: 12px;
	text-align: center;
}










/* 汎用スタイル
-------------------- */
/* 見出し */
.contents h2 {
	margin-bottom: 30px;
	font-size: 34px;
	font-family: oswald;
	letter-spacing: 2px;
}
.contents h3 {
}
.contents h4 {
}

h2.title-header {
	padding-top: 56px;
	text-align: center;
}
h2.title-header span {
	display: block;
	color: #666;
	font-size: 14px;
	letter-spacing: 0;
}
h2.title-header01 {
	background: url("../img/common/icn_domain.png") top center no-repeat;
}
h2.title-header02 {
	background: url("../img/common/icn_service.png") top center no-repeat;
}
h2.title-header03 {
	background: url("../img/common/icn_staff.png") top center no-repeat;
}
h2.title-header04 {
	background: url("../img/common/icn_partner.png") top center no-repeat;
}
h2.title-header05 {
	background: url("../img/common/icn_faq.png") top center no-repeat;
}
h2.title-header06 {
	background: url("../img/common/icn_gallery.png") top center no-repeat;
}
h2.title-header07 {
	background: url("/img/common/icn_event.png") top center no-repeat;
}
/* 下層ページトップタイトル */
#SubMainImage {
	height: auto;
	margin-bottom: 0;
}
.sub-page-title .body-wrap {
	position: relative;
}
#SubMainImage h1 {
	min-height: 1.2em;
	padding: 55px 0 35px;
	font-weight: bold;
	text-align: center;
}
h1.title-header:before {
	z-index: 1050;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border: 210px solid transparent;
	border-top: 210px solid rgba(72,187,188,0.6);
}
h1.title-header01 p {
	background: url("../img/common/icn_wish2.png") center 18px no-repeat;
}
h1.title-header02 p {
	background: url("../img/common/icn_domain2.png") center 18px no-repeat;
}
h1.title-header03 p {
	background: url("../img/common/icn_domain2.png") center 18px no-repeat;
}
h1.title-header04 p {
	background: url("../img/common/icn_corporate2.png") center 18px no-repeat;
}
h1.title-header05 p {
	background: url("../img/common/icn_partner2.png") center 18px no-repeat;
}
h1.title-header06 p {
	background: url("../img/common/icn_recruit2.png") center 18px no-repeat;
}
h1.title-header p {
	z-index: 2000;
	position: absolute;
	top: 0;
	left: 0;
	width: 420px;
	margin-bottom: 30px;
	padding-top: 56px;
	background-size: 38px 38px;
	color: #fff;
	font-size: 27px;
	font-family: oswald;
	letter-spacing: 2px;
	text-align: center;
	-webkit-font-smoothing: antialiased;

}
h1.title-header span {
	display: block;
	font-size: 14px;
	letter-spacing: 0;
}
.sub-page-title {
	position: relative;
	z-index: 1000;
	width: 100%;
	min-width: 1100px;
	height: 160px;
	margin-bottom: 60px;
	background: #fff;
}
#SubMainImage01 {
	background: #fff url(../img/wish/bg_wish.jpg) center top / cover no-repeat;
}
#SubMainImage02 {
	background: #fff url(../img/domain/bg_domain.jpg) center top / cover no-repeat;
}
#SubMainImage03 {
	background: #fff url(../img/csr/bg_csr.jpg) center top / cover no-repeat;
}
#SubMainImage04 {
	background: #fff url(../img/corporate/bg_corporate.jpg) center top / cover no-repeat;
}
#SubMainImage05 {
	background: #fff url(../img/partner/bg_partner.jpg) center top / cover no-repeat;
}
#SubMainImage06 {
	background: #fff url(../img/recruit/bg_recruit.jpg) center top / cover no-repeat;
}

/* 文章 */
.main p {
    margin-bottom: 20px;
	line-height: 2;
}
.main .txt-copy {
	font-size: 24px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}




/* ボタン */
.link-btn a {
	position: relative;
	display: inline-block;
	padding: 15px 80px;
    background: #48BBBC;
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    vertical-align: bottom;
    letter-spacing: 3px;
}
.link-btn a:hover {
	background: #8ed5d6;
}
.link-btn a:before {
	display: block;
	position: absolute;
	content: '';
	left: 10px;
	top: 50%;
	width: 7px;
	height: 7px;
	margin-top: -5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.page-button a {
	position: relative;
	display: inline-block;
	padding: 15px 80px;
    background: #48BBBC;
    color: #fff;
    font-size: 18px;
    text-decoration: none;
    vertical-align: bottom;
    letter-spacing: 3px;
}
.page-button a:hover {
	background: #8ed5d6;
}
.page-button a:before {
	display: block;
	position: absolute;
	content: '';
	left: 10px;
	top: 50%;
	width: 7px;
	height: 7px;
	margin-top: -5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}



/* テーブルデザイン
-------------------- */
.contents table {
    margin-bottom: 30px;
}
.contents th {
    padding: 10px 30px;
    background: #EDEDED;
    vertical-align: middle;
}
.contents td {
    padding: 10px 30px;
}



/* フォームデザイン
-------------------- */
input[type=text] {
	margin-right: 10px;
	padding: 3px;
}
.form-s {
	width: 10%;
}
.form-m {
	width: 30%;
}
.form-l {
	width: 60%;
}
textarea.form-l {
	width: 90%;
	height: 8em;
}
input[type=radio] {
	margin: 0 4px 0 8px;
}
select {
	margin: 0 4px 0 8px;
}

/* ボタンスタイル */
.button {
	font-size:15px;
	font-weight:normal;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	border:1px solid #dcdcdc;
	padding:5px 15px;
	text-decoration:none;
	background:-moz-linear-gradient( center top, #f9f9f9 7%, #e9e9e9 98% );
	background:-ms-linear-gradient( top, #f9f9f9 7%, #e9e9e9 98% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e9e9e9');
	background:-webkit-gradient( linear, left top, left bottom, color-stop(7%, #f9f9f9), color-stop(98%, #e9e9e9) );
	background-color:#f9f9f9;
	color:#333;
	display:inline-block;
	text-shadow:1px 1px 0px #ffffff;
 	-webkit-box-shadow:inset 1px 1px 0px 0px #ffffff;
 	-moz-box-shadow:inset 1px 1px 0px 0px #ffffff;
 	box-shadow:inset 1px 1px 0px 0px #ffffff;
    cursor: pointer;
}
.button:hover {
	background:-moz-linear-gradient( center top, #e9e9e9 7%, #f9f9f9 98% );
	background:-ms-linear-gradient( top, #e9e9e9 7%, #f9f9f9 98% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e9e9e9', endColorstr='#f9f9f9');
	background:-webkit-gradient( linear, left top, left bottom, color-stop(7%, #e9e9e9), color-stop(98%, #f9f9f9) );
	background-color:#e9e9e9;
}
.button:active {
	position:relative;
	top:1px;
}

