@charset "utf-8";

/* ----基本---------------------------------------------------------- */
.head_bg {
	display:block;
	height:180px;
	background-image: url("./images/top_bg.jpg");
	background-repeat: repeat-x;
	padding:0;
	margin:12px 0 10px;
	position: relative;
	overflow:hidden;
	z-index:10;
}
.head_bg::before {
	content: "";
	position: absolute;
	top: -190px;
	left: calc(50% - 280px);
	right: calc(50% + 280px);
	width: 560px;
	height: 560px;
	background-color: rgba(255,255,255,.7);
	border-radius: 50%;
	z-index:11;
}
.head_bg span {
	display:block;
	top: 65px;
	width:100%;
	font-size:36px;
	text-align:center;
	z-index:12;
	position: absolute;
}

.pankuzu {
	display:block;
	padding:0;
	margin:0px 0 60px;
	background-color: #fff;
	font-size:12px;
}
.pankuzu a, {
	color:#000;
}

.ancerbox {
	display:block;
	padding:15px;
	margin:0px 0 60px;
	background-color: #fff;
	border:solid 4px #96ebd7;
	border-radius:50px;
	text-align:center;
	font-size:16px;
}
.ancerbox a {
	display:inline;
	padding:0 20px 0 0;
}
.arrow-bottom {
	display: inline-block;
	top: 2px;
	margin:0px 0 0 4px;
	padding: 10px;
	background-color: #29c4a0;
	border-radius: 50%;
	position: relative;
}
.arrow-bottom::before {
	content: "";
	position: absolute;
	width: 6px;
	height: 6px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	left: 6px;
	top: 7px;
	transform: rotate(135deg);
	top: 4px;
}
.ancerbox a:hover {
	opacity;.7;
}

.pagetitle {
	display:block;
	padding:10px 20px;
	margin:0px 0 20px;
	background-color: #29c4a0;
	color:#fff;
	font-size:24px;
	border-radius: 8px;
}
.catchcopy {
	display:block;
	margin:0px 0 15px;
	font-size:26px;
	color:#ee7800;
}
.copy {
	display:block;
	margin:0px 0 15px;
	font-size:16px;
}
.box {
	display:block;
	margin:0px 0 40px;
	font-size:16px;
}

/* ----内容---------------------------------------------------------- */
.service .twocloum1 {
	display:block;
	margin:0px 0 40px;
}
.service .twocloum1 ul {
	display: flex;
	width:100%;
	justify-content: space-between;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}
.service .twocloum1 ul li {
	display:block;
}
.service .twocloum1 ul li:nth-child(1) {
	width:850px;
}
.service .twocloum1 ul li:nth-child(2) {
	width:360px;
}
.service .twocloum1 ul li .chairman {
	display:inline-block;
	float:right;
	margin:30px 0 0px;
	font-size:16px;
}
.service .twocloum1 ul li .chairman span {
	font-size:36px;
}
.service .twocloum0 {
	display:block;
	margin:0px 0 40px;
}
.service .twocloum0 ul {
	display:block;
	justify-content: space-between;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}
.service .twocloum0 ul li {
	display:block;
}
.service .twocloum0 ul li .chairman {
	display:inline-block;
	float:right;
	margin:30px 0 0px;
	font-size:16px;
}
.service .twocloum0 ul li .chairman span {
	font-size:36px;
}
.service table {
	display:table;
	width:100%;
	padding: 0px 0px 0px 0px;
	margin: 0px 0px 30px 0px;
}
.service table th {
	width:180px;
	padding: 10px;
	border:1px solid #BFBFBF;
	font-weight: normal;
	vertical-align:middle;
	text-align:left;
	background-color:#eee;
}
.service table td {
	padding: 10px;
	border:1px solid #BFBFBF;
	vertical-align:middle;
}

.service .twocloum2 {
	display:block;
	margin:0px 0 40px;
}
.service .twocloum2 ul {
	display: flex;
	width:100%;
	justify-content: space-between;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}
.service .twocloum2 ul li {
	display:block;
}
.service .twocloum2 ul li:nth-child(1) {
	width:420px;
}
.service .twocloum2 ul li:nth-child(2) {
	width:800px;
}
.service a.servicelink {
	display:block;
	margin:0px 0 26px;
}
.service a.servicelink:hover {
	opacity:.7;
}
.service a.servicelink:hover {
	opacity:.7;
}
.service .map {
	display:block;
	margin:0px;
	padding:0px;
	border-radius:30px;
	background-color:#fffcd1;
	border:solid 7px #f0831e;
}
/* ----スライド---------------------------------------------------------- */
.service .twocloum3 {
	display:block;
	margin:0px 0 40px;
}
.service .twocloum3 ul {
	display: flex;
	width:100%;
	justify-content: space-between;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}
.service .twocloum3 ul li {
	display:block;
}
.service .twocloum3 ul li:nth-child(1) {
	width:660px;
}
.service .twocloum3 ul li:nth-child(2) {
	width:540px;
}
.service .twocloum3 ul li .image img {
	width:100%;
	height:auto;
}

div.g-inner {
	display:block;
	margin:0px 0px 40px 0px;
	position:relative;
}
#view {
	width:540px;
	height:360px;
	overflow:hidden;
	border:solid 1px #bfbfbf;
	border-right:none;
}
#view p {
	width:540px;
	height:405px;
	background-color:#fff;
	overflow:hidden;
	margin: 0;
}
#view p img {
	width:auto;
	height:auto;
	object-fit: cover;
}
#caption {
	position:absolute;
	width: 674px;
	top:370px;
	left:0px;
	right:0px;
}
#caption li {
	padding: 2px 0 0;
	word-wrap: break-word;
}
#caption li span {
	display:block;
	width: 674px;
	font-size:14px;
	line-height:1.4em;
}
#thumbBtn {
	display:block;
	position:absolute;
	width: 132px;
	top:0px;
	right:0px;
}
#thumbBtn li {
	width:132px;
	height:88px;
	background-color:#fff;
	overflow:hidden;
	margin: 0 0 0px 0px;
	text-align:left;
	cursor:pointer;
	border:solid 1px #bfbfbf;
}
#thumbBtn li img {
	width:132px;
	height:88px;
	object-fit: cover;
}
#thumbBtn li.active {
	opacity:0.5;
	filter:alpha(opacity=50);
	-ms-filter: "alpha( opacity=50 )";
}
.service .threebox {
	display:block;
	margin:0px 0 40px;
}
.service .threebox ul {
	display: flex;
	width:100%;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}
.service .threebox ul li {
	display:block;
	width:calc(31% - 40px);
	background-color:#d9f6ef;
	border-radius:10px;
	padding:20px;
	margin:0px 0px 20px 0px;
}
.service .threebox ul li div {
	display:block;
	font-size:18px;
	font-weight:bold;
	color:#29c4a0;
	border-bottom:solid 1px #29c4a0;
	padding:0px;
	margin:0px 0px 10px 0px;
}
.service .threebox ul li p {
	display:block;
	margin-left:1em;
	text-indent: -1em;
}
.service .threebox ul::after{
	content:"";
	display: block;
	width:31%;
}
.profilelink:hover {
	opacity:0.7;
}
/* ----トップ---------------------------------------------------------- */
.servicetop ul {
	display: flex;
	width:100%;
	justify-content: space-between;
	flex-wrap: wrap;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
}
.servicetop ul li {
	display:block;
	width:30%;
}
.servicetop ul li a {
	display:block;
	width:360px;
}
.servicetop ul li a span {
	display:block;
	padding:0px 0px 0px 0px;
	margin:4px 0px 20px 0px;
	text-align:center;
}
.servicetop ul li a:hover {
	opacity:.7;
}
