@charset "UTF-8";

.insta {
	border-bottom: 1px solid #ccc;
	padding-bottom: 60px;
	margin-bottom: 80px;
}

.insta_ttl {
	text-align: center;
}

.insta_ttl img {
	vertical-align: middle;
}

.insta_ttl em {
	font-weight: bold;
	font-style: normal;
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
	font-size: 24px;
}

.insta_wrap {
	margin-top: 40px;
	position: relative;
}

.insta_list {
	text-align: center;
	width: 880px;
	margin: 0 auto;
}

.insta_item {
	padding: 15px 0;
}

.insta_item a {
	position: relative;
	display: inline-block;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 50%;
	overflow: hidden;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
}

.insta_item figure {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: relative;
	width: 240px;
	height: 240px;
	overflow: hidden;
	border-radius: 50%;
}

.insta_item figure:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
	transition: opacity .3s .1s;
	opacity: 0;
}

.insta_item:hover figure:before {
	transition: opacity .3s;
	opacity: 1;
}

.insta_item p {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	padding: 0 60px;
	text-align: left;
	box-sizing: border-box;
	color: #fff;
	font-size: 14px;
	transition: transform .3s .1s, opacity .3s .1s;
	transform: translateY(0%);
	opacity: 0;
}

.insta_item:hover p {
	transition: transform .3s, opacity .3s;
	transform: translateY(-50%);
	opacity: 1;
}

.insta_arrow {
	-webkit-appearance: none;
	border: 0;
	padding: 0;
	margin-top: -19px;
	position: absolute;
	top: 50%;
	background: none;
	cursor: pointer;
	outline-style: none;
}

.insta_arrow.-left {
	left: 0px;
}

.insta_arrow.-right {
	right: 0px;
}

#body {
	-webkit-font-smoothing: antialiased;
}

.disc {
	display: inline-block;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	border-radius: 50%;
	overflow: hidden;
	padding: 7px;
	box-sizing: border-box;
	background: #FFF;
}

.disc > div,
.disc canvas,
.disc img {
	overflow: hidden;
	display: inline-block;
	border-radius: 50%;
	max-width: 100%;
	height: auto;
}

.intro {
	overflow: hidden;
}

.intro_wrap {
	height: 750px;
	position: relative;
}

.intro_logo {
	position: absolute;
	text-align: center;
	width: 100%;
	top: 50%;
	margin-top: -90px;
	display: none;
}

.intro_logo_catch {
}

.intro_logo_symbol {
	margin-top: 25px;
}

.intro_photo {
	position: absolute;
	margin: -65px 0 0 -65px;
	border-radius: 50%;
	overflow: hidden;
	display: none;
	cursor: pointer;
}

.intro_photo.-ready {
	transition: opacity .4s;
}

.intro_photo.-ready:hover {
	opacity: .6;
}

.intro_photo.-photo01,
.intro_photo.-photo10 {
	top: 87%;
}

.intro_photo.-photo02,
.intro_photo.-photo09 {
	top: 72%;
}

.intro_photo.-photo03,
.intro_photo.-photo08 {
	top: 50%;
}

.intro_photo.-photo04,
.intro_photo.-photo07 {
	top: 28%;
}

.intro_photo.-photo05,
.intro_photo.-photo06 {
	top: 13%;
}

.intro_photo.-photo01,
.intro_photo.-photo05 {
	left: 40%;
}

.intro_photo.-photo02,
.intro_photo.-photo04 {
	left: 25%;
}

.intro_photo.-photo06,
.intro_photo.-photo10 {
	left: 60%;
}

.intro_photo.-photo07,
.intro_photo.-photo09 {
	left: 75%;
}

.intro_photo.-photo03 {
	left: 17%;
}

.intro_photo.-photo08 {
	left: 83%;
}

.intro_pop {
	position: absolute;
	top: 55%;
	left: 50%;
	background: #E83428;
	border-radius: 5px;
	padding: 7px 2px 2px 2px;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	display: none;
}

.intro_pop_close {
	position: absolute;
	right: -31px;
	top: -31px;
	cursor: pointer;
}

.intro_pop_wrap {
	background-color: #FFF;
	border-radius: 3px;
	padding: 30px 40px;
}

.intro_pop_row {
	width: 100%;
}

.intro_pop_col {
}

.intro_pop_col.-fig {
	text-align: center;
	position: relative;
	z-index: 10;
}

.intro_pop_col.-fig img {
}

.intro_pop_col.-cnt {
	line-height: 1.5;
	padding-top: 35px;
	font-size: 16px;
	max-width: 320px;
	text-align: justify;
	position: relative;
	z-index: 5;
}

.intro_pop_name {
	position: relative;
	font-size: 22px;
}

.intro_pop_name span {
	position: relative;
}

.intro_pop_name:before {
	content: "";
	display: block;
	width: 335px;
	height: 78px;
	position: absolute;
	bottom: -15px;
	left: -13px;
	background: url(../img1612/img-pop-back.png) no-repeat;
	z-index: 0;
}

.intro_pop_text {
	margin-top: 15px;
}

.intro_pop_url {
	margin-top: 10px;
}

.graf {
	margin-top: 60px;
}

.graf_row {
	display: table;
	width: 100%;
}

.graf_col {
	display: table-cell;
	vertical-align: middle;
}

.graf_col.-left {
}

.graf_col.-right {
}

.graf_head {
	text-align: center;
}

.graf_col.-left .graf_head {
	color: #0D6FB8;
}

.graf_col.-right .graf_head {
	color: #E83428;
}

.graf_head_ttl {
	display: inline-block;
	font-size: 36px;
	margin-right: 5px;
	font-weight: bold;
}

.graf_head_count {
	display: inline-block;
	font-size: 24px;
}

.graf_head_count em {
	font-size: 30px;
	font-style: normal;
	font-weight: bold;
	margin: 0 5px;
}

.graf_cnt {
	margin-top: 10px;
	position: relative;
}

.graf_fig {
	display: inline-block;
	vertical-align: middle;
}

.graf_attr {
	display: inline-block;
	vertical-align: middle;
	padding-left: 20px;
}

.graf_attr_dl {
	margin-top: 10px;
}

.graf_attr_dl:first-child {
	margin-top: 0;
}

.graf_attr_dl dt,
.graf_attr_dl dd {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.3;
}

.graf_attr_dl dt {
	width: 32px;
	height: 32px;
	border-radius: 16px;
}

.graf_attr_dl dt.-type01 {
	background: #0d6fb8;
}

.graf_attr_dl dt.-type02 {
	background: #0ba29a;
}

.graf_attr_dl dt.-type03 {
	background: #90c31f;
}

.graf_attr_dl dt.-type04 {
	background: #f7ee13;
}

.graf_attr_dl dt.-type05 {
	background: #e83428;
}

.graf_attr_dl dt.-type06 {
	background: #ef7a15;
}

.graf_attr_dl dt.-type07 {
	background: #f7ee13;
}

.graf_attr_dl dd {
	font-size: 16px;
	padding-left: 8px;
}

.serv {
	margin-top: 50px;
}

.serv_head {
	text-align: center;
}

.serv_head_ttl {
	font-size: 30px;
	color: #0D6FB8;
	font-weight: bold;
}

.serv_head_count {
	font-size: 20px;
}

.serv_list {
	font-size: 0;
	margin-top: 30px;
}

.serv_list > li {
	width: 25%;
	display: inline-block;
	vertical-align: top;
	text-align: center;
}

.serv_list.-col5 > li {
	width: 20%;
}

.serv_list > li a {
	display: block;
	text-decoration: none;
	color: #333;
}

.serv_list > li span {
	max-width: 90%;
}

.serv_list > li h3 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	margin-top: 20px;
}

.serv_list2 {
	margin-top: 40px;
	border-top: 1px solid #ddd;
	height: 880px;
	position: relative;
}

.serv_list2 > li {
	display: inline-block;
	vertical-align: top;
	text-align: center;
	position: absolute;
}

.serv_list2 > li.-item01 {
	top: 50px;
	left: 220px;
}

.serv_list2 > li.-item02 {
	top: 50px;
	right: 220px;
}

.serv_list2 > li.-item03 {
	top: 240px;
	left: 20px;
}

.serv_list2 > li.-item04 {
	top: 370px;
	left: 250px;
}

.serv_list2 > li.-item05 {
	top: 370px;
	right: 250px;
}

.serv_list2 > li.-item06 {
	top: 240px;
	right: 30px;
}

.serv_list2 > li.-item07 {
	top: 580px;
	left: 90px;
}

.serv_list2 > li.-item08 {
	top: 650px;
	left: 50%;
	margin-left: -71px;
}

.serv_list2 > li.-item09 {
	top: 580px;
	right: 90px;
}

.serv_list2 > li a {
	display: block;
	text-decoration: none;
	color: #333;
}

.serv_list2 > li h3 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	margin-top: 20px;
}

.serv_cmsimg {
	width: 210px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.serv_cmsimg:before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 100%;
}

.link {
	background: #eee;
	padding: 50px 0;
}

.link_list {
	font-size: 0;
}

.link_list > li {
	display: inline-block;
	vertical-align: top;
	width: 22.75%;
	margin-top: 3%;
	margin-left: 3%;
}

.link_list > li:nth-child(4n+1) {
	margin-left: 0;
}

.link_list > li:nth-child(-n+4) {
	margin-top: 0;
}
