body {
	color: #28282a;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6, dl, dt, dd, form {
	margin: 0;
	padding: 0;
}
a {
	text-decoration: none;
}
#hd {
	background-color: #fff;
	height: 90px;
}
#hd img {
	width: 152px;
}
#vi {
	position: relative;
	width: 100%;
	padding-top: 720px;
	overflow: hidden;
}
#movwrap {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-color: #333;
	z-index: -1;
}
.orange {
	background: #EE7500;
}
.ctr {
	text-align: center;
}
#mov {
	min-width: 100%;
}
#contents {
	min-height: 500px;
}
#ti {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-image:url(img/bg.png);
	text-align: center;
}
#ti img {
	width: 150px;
	opacity: 0;
	transition: opacity 0.6s;
}
#ti a {
	color: #fff;
	font-size: 15pt;
	letter-spacing: 3px;
	font-family: 'Kulim Park', sans-serif;
	text-decoration: none;
	border: solid 2.5px #eee;
	border-radius: 2px;
	padding: 7px 60px 9px 64px;
	margin-top: 64px;
	opacity: 0;
	transition: opacity 0.6s;
}
#ti a:hover {
	background-color: #fff;
	color: #222;
}
@media screen and (max-width: 1290px) {
	#vi {
		padding-top: 56.53%;
	}
}
@media screen and (max-width: 1020px) {
	#ti a {
		margin-top: 45px;
	}
}
@media screen and (max-width: 740px) {
	#ti img {
		width: 114px;
	}
	#ti a {
		margin-top: 30px;
		padding: 7px 40px 9px 44px;
	}
}
@media screen and (max-width: 640px) {
	#vi {
		padding-top: 360px;
	}
}

.cl {
	float: left;
}
.cr {
	float: right;
}
.hdmn {
	padding: 0 50px;
}
.hdmn .cl {
	padding-top: 28px;
	width: 160px;
}
.hdmn .cr {
	text-align: right;
	padding-top: 44px;
	width: calc(100% - 170px);
}
.hdmn .cr a {
	position: relative;
	color: #000;
	font-size: 12pt;
	letter-spacing: 1px;
	font-family: 'Kulim Park', sans-serif;
	margin-left: 50px;
}
.hdmn .cr a:first-child {
	margin-left: 0;
}
.hdmn .cr a::after {
	position: absolute;
	bottom: -4px;
	left: -10px;
	content: '';
	width: calc(100% + 20px);
	height: 2px;
	background: #EE7500;
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}
.hdmn .cr a:hover::after {
	transform: scale(1, 1);
}
.menu-toggle {
	display: none;
}
@media screen and (max-width: 780px) {
	.hdmn {
		padding: 0 30px;
	}
	.hdmn .cr a {
		margin-left: 36px;
	}
}
@media screen and (max-width: 640px) {
	#hd {
		position: relative;
		height: 60px;
	}
	.hdmn {
		padding: 0;
	}
	.hdmn .cl {
		float: none;
		padding: 12px 0 0 17px;
	}
	#hd img {
		width: 132px;
	}
	.hdmn .cr {
		float: none;
		position: absolute;
		left: 0;
		top: 60px;
		width: 100%;
		height: 0;
		background-color: #333;
		padding-top: 0;
		overflow: hidden;
		z-index: 3;
		transition: height 0.3s ease;
	}
	.hdmn.toggled .cr {
		height: 204px;
	}
	.hdmn .cr a {
		display: block;
		margin: 0;
		border-bottom: 1px solid #aaa;
		padding: 16px 0 18px;
		color: #fff;
		text-align: center;
		line-height: 100%;
	}
	.hdmn .cr a:hover, .hdmn .cr a:active, .hdmn .cr a:focus {
		background-color: #888;
	}
	.hdmn .cr a:after {
		display: none;
	}
	.hdmn .menu-toggle {
		position: absolute;
		top: 14px;
		right: 14px;
		display: block;
		border: none;
		width: 34px;
		height: 34px;
		background: transparent;
		padding: 2px;
		box-shadow: none;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-tap-highlight-color: transparent;
		-ms-touch-action: manipulation;
		touch-action: manipulation;
		z-index: 100;
	}
	.hdmn .menu-toggle:focus {
		outline: 0;
	}
	.hdmn .menu-toggle > div {
		position: relative;
		margin-top: 7px;
		margin-bottom: 7px;
	}
	.hdmn .menu-toggle > div, .hdmn .menu-toggle > div:before, .hdmn .menu-toggle > div:after {
		display: block;
		width: 28px;
		height: 2px;
		background-color: #000;
		-moz-transition-property: background-color, -moz-transform;
		-o-transition-property: background-color, -o-transform;
		-webkit-transition-property: background-color, -webkit-transform;
		transition-property: background-color, transform;
		-moz-transition-duration: 0.4s;
		-o-transition-duration: 0.4s;
		-webkit-transition-duration: 0.4s;
		transition-duration: 0.4s;
	}
	.hdmn .menu-toggle > div:before, .hdmn .menu-toggle > div:after {
		position: absolute;
		content: "";
	}
	.hdmn .menu-toggle > div:before {
		top: -8.2px;
	}
	.hdmn .menu-toggle > div:after {
		top: 8.2px;
	}
	.hdmn.toggled .menu-toggle > div:before {
		top: -8px;
	}
	.hdmn.toggled .menu-toggle > div:after {
		top: 7px;
	}
	.hdmn.toggled .menu-toggle > div {
		background-color: transparent;
	}
	.hdmn.toggled .menu-toggle > div:before, .hdmn.toggled .menu-toggle > div:after {
	  background-color: #000;
	}
	.hdmn.toggled .menu-toggle > div:before {
		-moz-transform: translateY(7px) rotate(45deg);
		-ms-transform: translateY(7px) rotate(45deg);
		-webkit-transform: translateY(7px) rotate(45deg);
		transform: translateY(7px) rotate(45deg);
	}
	.hdmn.toggled .menu-toggle > div:after {
		-moz-transform: translateY(-7px) rotate(-45deg);
		-ms-transform: translateY(-7px) rotate(-45deg);
		-webkit-transform: translateY(-7px) rotate(-45deg);
		transform: translateY(-7px) rotate(-45deg);
	}
}

.cl3 {
	width: 1024px;
	margin: 0 auto;
}
.smenu {
}
.smenu > div {
	float: left;
	margin-right:5%;
	margin-bottom: 30px;
	width: 30%;
	text-align: center;
	cursor: pointer;
}
.smenu .smnbtn {
	width: 200px;
	height: 200px;
	border-radius: 120px;
	background: #4a4a4d;
	display: block;
	padding: 20px;
	margin: 0 auto 20px;
}
.smenu .smnbtn .innci {
	display: block;
	border: solid 3px #686869;
	border-radius: 50%;
	width: 194px;
	height: 194px;
	overflow: hidden;
	z-index: 1;
}
.smenu .smnbtn .innci > span {
	display: block;
	border-radius: 50%;
	width: 100%;
	height: 100%;
}
.smenu > div:hover .smnbtn .innci, .smenu > div:active .smnbtn .innci {
	border-color: #EE7500;
	transition: all 0.5s ease-out;
}
.smenu > div:hover .smnbtn .innci > span, .smenu > div:active .smnbtn .innci > span {
	transform: rotate(360deg);
	transition: all 0.5s ease-out;
}
.smenu .smnbtn .btns1 {
	background: #38383a url(img/sf1.png);
	background-size: 94%;
	background-position: center;
}
.smenu .smnbtn .btns2 {
	background: #38383a url(img/sf2.png);
	background-size: 94%;
	background-position: center;
}
.smenu .smnbtn .btns3 {
	background: #38383a url(img/sf3.png);
	background-size: 94%;
	background-position: center;
}
.smenu .smnbtn .btns4 {
	background: #38383a url(img/sf4.png);
	background-size: 94%;
	background-position: center;
}
.smenu .smnbtn .btns5 {
	background: #38383a url(img/sf5.png);
	background-size: 94%;
	background-position: center;
}
.smenu .smnbtn .btns6 {
	background: #38383a url(img/sf6.png);
	background-size: 94%;
	background-position: center;
}
.smenu h3 {
	color: #48484a;
	font-size: 22pt;
	line-height: 23pt;
	letter-spacing: 2px;
	font-family: 'Kulim Park', sans-serif;
	margin-bottom: 13px;
}
.smenu p.cmt {
	color: #68686a;
	font-size: 9.5pt;
	line-height: 15pt;
	letter-spacing: 1px;
	width: 235px;
	margin: 0 auto;
}
.cprof .cl {
	text-align: right;
	width: 49%;
}
.cprof .cr {
	width: 49%;
}
.cprof dt {
	color: #58585a;
	font-size: 8.5pt;
	letter-spacing: 1px;
	margin-bottom:0.4em;
}
.cprof dd {
	font-size: 11pt;
	letter-spacing: 2px;
	margin-bottom: 1.7em;
}
.cprof dd a {
	color: #28282a;
}
.cprof dd a:hover, .cprof dd a:active {
	text-decoration: underline;
}
p.ld {
	font-size: 12pt;
	line-height: 22pt;
	width: calc(100% - 60px);
	max-width: 860px;
	letter-spacing: 2px;
	margin: 0 auto 5em;
	text-align: center;
}
.blk0, .blk1, .blk2, .blk3 {
	min-height: 500px;
	margin: 0 auto;
	clear: both;
	padding: 80px 0 100px;
}
.blk0 {
	padding-top: 90px;
}
.blk1 {
	background: #F2F2F2;
}
.blk2 {
	background: #ccc url(img/bg_r.png) no-repeat;
}
.blk3 {
	background: #88888b;
}
.cprof {
	overflow: hidden;
}
form {
	width:720px;
	margin: 0 auto;
}
form dl dt {
	color: #58585a;
	font-weight: bold;
	font-size: 8.5pt;
	letter-spacing: 1px;
	margin-bottom: 0.4em;
}
p.cntmes {
	font-size: 12pt;
	line-height: 22pt;
	letter-spacing: 2px;
	margin: 0 auto 1em;
	text-align: center;
}
h2 {
	margin-bottom: 50px;
	color: #000;
	text-align: center;
	font-family: 'Kulim Park', sans-serif;
	font-size: 41pt;
	letter-spacing: 7px;
	text-decoration: none;
	line-height: 100%;
}
#ft {
	color: #fff;
	border-top: solid 4px #EE7500;
	background: #181818;
	padding: 40px 0 10px;
}
#ft img {
	width: 200px;
	margin: 0 auto 10px;
}
#ft p.cp {
	color: #848282;
	font-size: 11pt;
	line-height: 11pt;
	letter-spacing: 1px;
	text-align: center;
	font-family: 'Kulim Park', sans-serif;
}
@media screen and (max-width: 1080px) {
	.cl3 {
		width: 860px;
	}
}
@media screen and (max-width: 1064px) {
	#movwrap {
		flex-direction: column;
	}
	#mov {
		min-width: auto;
		min-height: 100%;
	}
}
@media screen and (min-width: 941px) {
	.smenu > div:nth-child(3n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 940px) {
	p.ld {
		text-align: justify;
	}
	p.ld br {
		display: none;
	}
	.cl3 {
		width: 680px;
	}
	.smenu > div {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 40px;
	}
	.smenu > div:nth-child(2n) {
		margin-right: 0;
	}
}
@media screen and (min-width: 881px) {
	.cprof dd .onsp {
		display: none;
	}
}
@media screen and (max-width: 880px) {
	.cprof dd .onpc {
		display: none;
	}
}
@media screen and (max-width: 800px) {
	form {
		width: calc(100% - 40px);
	}
}
@media screen and (max-width: 760px) {
	.cl3 {
		width: 580px;
	}
}
@media screen and (max-width: 680px) {
	.cprof {
		margin-left: auto;
		margin-right: auto;
		width: calc(100% - 40px);
		max-width: 480px;
	}
	.cprof .cl, .cprof .cr {
		float: none;
		width: 100%;
		text-align: left;
	}
	.cprof .cl {
		margin-bottom: 40px;
	}
	.cprof dt {
		float: left;
		width: 140px;
	}
	.cprof dd {
		padding-left: 160px;
	}
}
@media screen and (max-width: 640px) {
	.blk0, .blk1, .blk2, .blk3 {
		padding: 40px 0 50px;
	}
	.blk0 {
		padding-top: 45px;
		padding-bottom: 70px;
	}
	.blk2 {
		background-size: auto 80%;
	}
	h2 {
		margin-bottom: 28px;
		font-size: 30pt;
	}
	p.ld {
		margin-bottom: 2.5em;
	}
	
	.cl3 {
		width: 490px;
	}
	.smenu .smnbtn {
		width: 180px;
		height: 180px;
		padding: 10px;
	}
	.smenu .smnbtn .innci {
		width: 174px;
		height: 174px;
	}
	.smenu h3 {
		font-size: 20pt;
		line-height: 21pt;
	}
	.smenu p.cmt {
		width: 220px;
	}
}
@media screen and (max-width: 570px) {
	p.cntmes {
		text-align: justify;
	}
}
@media screen and (max-width: 540px) {
	.cprof {
		width: calc(100% - 30px);
		max-width: 320px;
	}
	.cprof dt {
		float: none;
		width: 100%;
	}
	.cprof dd {
		padding-left: 0;
	}
	.cprof .cr dt, .cprof .cr dd {
		text-align: right;
	}
}
@media screen and (max-width: 520px) {
	.cl3 {
		width: 360px;
	}
	.smenu .smnbtn {
		margin-bottom: 10px;
		width: 140px;
		height: 140px;
	}
	.smenu .smnbtn .innci {
		width: 134px;
		height: 134px;
	}
	.smenu p.cmt {
		width: 160px;
	}
	.smenu > div {
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 480px) {
	p.ld {
		width: calc(100% - 40px);
	}
	.smenu > div {
		margin-bottom: 30px;
	}
	form {
		width: calc(100% - 20px);
	}
}
@media screen and (max-width: 420px) {
	.blk2 {
		background-size: auto 60%;
	}
	h2 {
		font-size: 22pt;
		letter-spacing: 3px;
	}
	p.ld {
		width: calc(100% - 20px);
		font-size: 10pt;
		line-height: 170%;
	}
	p.cntmes {
		font-size: 10pt;
		line-height: 170%;
	}
	#ft p.cp {
		font-size: 9.5pt;
		line-height: 9.5pt;
	}
}
@media screen and (max-width: 400px) {
	.cl3 {
		width: calc(100% - 20px);
	}
	.smenu .smnbtn {
		width: 124px;
		height: 124px;
	}
	.smenu .smnbtn .innci {
		width: 118px;
		height: 118px;
	}
	.smenu h3 {
		font-size: 14pt;
		line-height: 15pt;
	}
	.smenu p.cmt {
		width: 140px;
		text-align: justify;
	}
}
@media screen and (max-width: 360px) {
	.smenu .smnbtn {
		width: 100px;
		height: 100px;
	}
	.smenu .smnbtn .innci {
		width: 94px;
		height: 94px;
	}
}

/*map*/
#map {
	background: #333;
	width: 100%;
	height: 480px;
	margin: 0 auto 30px;
}
.maplink {
	display: block;
	/*max-width: 180px;*/
	padding: 4px 0 0 10px;
	text-align: center;
	font-weight: bold;
	font-size: 12px;
	line-height: 21px;
	letter-spacing: 2px;
	color: #555;
	white-space: nowrap;
	overflow: hidden;
	z-index: 2;
	border-bottom-width: 0 !important;
}
.maplink img {
	display: block;
	margin: 0 auto;
	width: 83px;
}
.mapatt {
	margin: 0 auto;
	width: calc(100% - 40px);
	text-align: center;
	color: #000;
	font-size: 10.5pt;
	letter-spacing: 1px;
}
.gm-style-iw {
	width: 242px !important;
}
.gm-style .gm-style-iw-t::after {
}
.gm-style .gm-style-iw-c {
	top: 1px !important;
}
@media screen and (max-width: 420px) {
	#map {
		height: 380px;
	}
	.gm-style-iw-d {
		height: 80px;
		overflow: hidden !important;
	}
	.gm-style-iw-d > div {
		box-sizing: border-box;
		width: 152px;
		padding-right: 6px;
	}
	.maplink {
		padding-left: 0;
	}
	.maplink img {
		width: 50px;
	}
}
@media screen and (max-width: 360px) {
	.maplink {
		font-size: 10px;
		line-height: 16px;
	}
}

/* scroll transition */
.floatUp {
	opacity: 0;
	transform: translateY(60px);
	transition: all 0.9s;
	/*transition-delay: 0.2s;*/
}
.floatUp.strong {
	transform: translateY(100px);
	transition-delay: 0.5s;
}
.floatUp.animated {
	opacity: 1;
	transform: translateY(0) !important;
}
.floatLeft {
	opacity: 0;
	transform: translateX(60px);
	transition: all 0.9s;
	transition-delay: 0.4s;
}
.floatRight {
	opacity: 0;
	transform: translateX(-60px);
	transition: all 0.9s;
	transition-delay: 0.4s;
}
.floatLeft.animated, .floatRight.animated {
	opacity: 1;
	transform: translateY(0) !important;
}
.floatClose .cl {
	opacity: 0;
	transform: translateX(-60px);
	transition: all 0.9s;
}
.floatClose .cr {
	opacity: 0;
	transform: translateX(60px);
	transition: all 0.9s;
}
.floatClose .cl.animated, .floatClose .cr.animated {
	opacity: 1;
	transform: translateX(0) !important;
}


.fadeIn {
	opacity: 0;
	transition: all 0.9s;
	transition-delay: 0.2s;
}
.fadeIn.animated {
	opacity: 1;
}
.fadeInChildren > div {
	opacity: 0;
	transition: all 0.9s;
	transition-delay: 0.2s;
}
.fadeInChildren > div.animated {
	opacity: 1;
}

/* anchor */
span.adjustAnchor {
	position: relative;
	top: -80px;
	display: block;
}
@media screen and (max-width: 640px) {
	span.adjustAnchor {
		top: -30px;
	}
}

/* rwd */
#rwdwp {
	position: fixed;
	right: 30px;
	bottom: 30px;
	width: 60px;
	height: 60px;
	z-index: 99999;
}
#rwd {
    border-radius: 50px;
    background-color: #EE7500;
    background-size: 60px auto;
    opacity: 0;
    transition: opacity 0.7s;
}
#rwd a {
	color: #fff;
    font-size: 18px;
    text-align: center;
    vertical-align: middle;
    width: 60px;
    height: 60px;
    padding: 0;
    display: table-cell;
    cursor: pointer;
}
#rwd a::after {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    position: absolute;
    right: 45%;
    top: calc(50% + 1px);
    border-top: solid 2.5px #fff;
    border-left: solid 2.5px #fff;
    transform: rotate(45deg) translateY(-50%);
    color: inherit;
}
@media screen and (max-width: 420px) {
	#rwdwp {
		right: 15px;
		bottom: 15px;
	}
}

/* clear fix */
.cf:after {
	content: "";
	display: table;
	clear: both;
}
.cf {
	*zoom: 1;
}
