@charset "utf-8";

#teaser.bgnone::before {
	display: none !important;
}



/*------------.policy --------------*/

#teaser.policy {
	background: url(../images/policy/teaser_policy.jpg) center center no-repeat;
	background-size: cover;
}
.pagepolicy {
	background: #feffe6;
	position: relative;
}
/* .pagepolicy::before {
	background: url(../images/policy/ico_line.png) 0 0 repeat-x;
	width: 100%;
	height: 13px;
	top: -12px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
} */


.policywrap {
	padding: 40px 0;
	font-weight: normal;
}
.policybox {
	margin-top: 35px;
	font-size: 18px;
	line-height: 1.8;
}
.policybox .tit {
	font-weight: bold;
}
.policybox .txt {
	font-style: normal;
	font-weight: 500;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	
}





/*------------.contact --------------*/
#teaser.contact {
	background: url(../images/contact/teaser_contact.jpg) center center no-repeat;
	background-size: cover;
}
.contact {
	padding-bottom: 70px;
}
.contact .inner {
	max-width: 780px;
}
.contacttel {
	padding: 30px 0 75px;
}
.contacttel .tel {
	display: flex;
	align-items: center;
	max-width: 700px;
	margin: 0 auto;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
.contacttel .tel a {
	pointer-events: none;
	font-size: 31px;
	color: #000;
	font-weight: bold;
}
.contacttel .tel span {
	font-size: 16px;
	margin-left: 20px;
}

.contact .anchorlist {
	display: flex;
	justify-content: center;
}
.contact .anchorlist li {
	width: 340px;
	margin: 0 12px;
}
.contact .anchorlist li a {
	display: block;
	border-radius: 10px;
	border: 4px solid #fff;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	color: #fff;
	padding: 15px 0;
	background: linear-gradient(to right,#0da2d1,#64d3e2);
	transition: all 0.5s;
}
.contact .anchorlist li a:hover {
	opacity: 0.5;
}

.contactform01 {
	padding-top: 25px;
}
.contactstep {
	display: flex;
	justify-content: space-between;
	margin: 60px 0 54px;
}
.contactstep li {
	width: 245px;
	background: #e6e6e6;
	text-align: center;
	font-size: 16px;
	padding: 10px 0;
}
.contactstep li span {
	margin-right: 20px;
}
.contactstep li.on {
	background: #3b3b3b;
	color: #fff;
}

.contacttab {
	width: 100%;
	border: 1px solid #818181;
	border-top: none;
	box-sizing: border-box;
	background: #fff;
}
.contacttab th {
	position: relative;
	font-size: 16px;
	background: #f1f1f1;
	padding: 15px 20px;
	border-bottom: 1px solid #818181;
	border-top: 1px solid #818181;
}
.contacttab th .must {
	display: block;
	color: #fff;
	background: #ec2028;
	text-align: center;
	border-radius: 5px;
	width: 51px;
	height: 33px;
	line-height: 33px;
	font-size: 14px;
	font-weight: normal;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.contacttab th .any {
	display: block;
	color: #fff;
	background: #888888;
	text-align: center;
	border-radius: 5px;
	width: 51px;
	height: 33px;
	line-height: 33px;
	font-size: 14px;
	font-weight: normal;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.contacttab td {
	padding: 15px ;
}

.contacttab td .msg{
	color: #ec2028;
	font-weight: bold;
}

.error_msg{
	text-align: center;
	color: #ec2028;
    font-size: 1.6rem;
    margin-bottom: 1em;
}

.thx_msg{
    font-size: 1.6rem;
    text-align: center;
    margin-bottom: 3em;
}


.contacttab td.pad {
	padding: 25px 20px;
}
.contacttab td .note {
	font-size: 14px;
	color: #575757;
	margin-top: 10px;
}
.contacttab td .txt {
	font-size: 14px;
	font-weight: bold;
	margin: 10px 0;
}
.contacttab td .list {
	display: flex;
	justify-content: left;
}
.contacttab td .list li {
	width: 210px;
}
.contacttab td .list li + li {
	margin-left: 30px;
}
.contacttab td.pad .list{
	display: flex;
	justify-content: left;
}
.contacttab td.pad .list li {
	width: 190px;
}
.contacttab td.pad .list li + li {
	margin-left: 0;
}
.contacttab .inputtxt {
	border: 1px solid #7d7d7d;
	width: 100%;
	height: 50px;
	padding: 10px 20px;
	box-sizing: border-box;
}
.contacttab td input[type=checkbox],
.contacttab td input[type=radio]{
	width: 30px;
	height: 30px;
	vertical-align: middle;
	margin-top: -5px;
	margin-right: 20px;
}
.contacttab .inputtxt:focus {
	outline: none;
	background: #fdf3ce;
}
.contacttab .inputtxt.inputW01 {
	width: 230px;
}
.contacttab .inputtxt.inputW02 {
	width: 330px;
}
.contacttab .select {
	display: flex;
	align-items: center;
}
.contacttab .select p {
	margin-left: 20px;
}
.selectWrap {
  position: relative;
  height: 50px;
}
.selectWrap span.customSelect {
  width: 160px;
}
span.customSelect {
  color: #333;
  padding: 0 20px 0 15px;
  border: 1px solid #818181;
  line-height: 50px;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
}
.customSelectInner {
  background: url(../images/contact/customselect_arrow.png) right center no-repeat;
  width: 100% !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.contacttab textarea {
	width: 100%;
	height: 410px;
	border: 1px solid #7d7d7d;
	box-sizing: border-box;
	margin-right: 30px;
	padding: 10px 20px;
	resize: none;
}
.formpolicy {
	background: #e6e6e6;
	padding: 14px;
	margin: 20px 0 50px;
	font-size: 17px;
	font-weight: 500;
}
.formpolicy a {
	font-size: 17px;
	color: #264c9b;
	margin-right: 10px;
}
.formpolicy input[type=checkbox] {
	width: 30px;
	height: 30px;
	vertical-align: middle;
	margin-top: -5px;
	margin-right: 15px;
}
.formbtn {
	width: 235px;
	margin: 0 auto;
}
.formbtn input {
	cursor: pointer;
	width: 100%;
	height: 75px;
	border: 4px solid #fff;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	background: linear-gradient(to right,#0da2d1,#64d3e2);
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	border-radius: 13px;
}
.list02{
	font-size: 16px;
}


.contactform01 + .contactform01 {
	margin-top: 150px;
}
.contacttab .list02 li + li {
	margin-top: 20px;
}


.contacttool {
	width: 780px;
	margin: 65px auto 0;
	font-weight: bold;
}
.contacttool .tit {
	text-align: center;
	font-size: 17px;
	border-bottom: 1px solid #c7c7bf;
	padding-bottom: 8px;
}
.contacttool .txt{
	font-size: 15px;
	padding: 10px 25px;
}

.contact .txt01 {
	text-align: center;
	margin-top: 50px;
	font-size: 1.6rem;
	font-size: 16px;
}
.selectcont {
	padding: 10px 0;
}
.selectcont label {
	display: block;
}
.selectcont label + label {
	margin-top: 15px;
}


/*------------.index --------------*/

#header.topheader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9;
	background: none;
}
#video {
	position: fixed;
	left: 0;
	top: 0;
	height: 100vh;
	width: 100vw;
	z-index: -1;
	object-fit: cover
}
#mainimg {
	/* background: url(../images/top/img_mainimg.jpg) center center no-repeat; */
	/* background-attachment: fixed; */
	/* background-size: cover; */
	width: 100%;
	/*height: 100vh;*/
	height: calc(100vh - 108px);
	z-index: 2;
}
#mainimg .inner02 {
	position: relative;
	height: 100vh;
	width: 100%;
}
#mainimg .tit {
	font-size: 24px;
	color: #fff;
	position: absolute;
	bottom: 150px;
	left: 0;
	letter-spacing: 9px;
	z-index: 2;
}
#mainimg .ico {
	position: absolute;
	bottom: 35px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}

.topnavi,
.newstopics,
.topperiphery,
.topaccess{
	background-color: #fff;
}


.top#content {
	position: relative;
	z-index: 3;
}
/* .top#content::before {
	background: url(../images/top/bg_wave.png) 0 0 repeat-x;
	width: 100%;
	height: 16px;
	top: -15px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
} */
.topnavi .inner {
	max-width: 1160px;
}



.topnews {
	background: #ffeef0;
	padding: 20px 0;
}
.topnews .inner02 {
	max-width: 920px;
}
.topnews .list li {
	padding: 12px 0;
	display: flex;
	align-items: center;
}
.topnews .list li .date {
	font-size: 16px;
}
.topnews .list li .date span {
	display: inline-block;
	background: #ff6263;
	color: #fff;
	margin:  0 40px;
	font-size: 13px;
	padding: 2px 10px;
	border-radius: 20px;
}
.topnews .list li a {
	font-size: 18px;
	font-weight: bold;
	color: #353535;
}





.newstopics .topicsmain {
	padding: 45px 0 60px;
	display: flex;
}
.newstopics .topicsmain .topicstit {
	width: 180px;
}
.newstopics .topicsmain .topicstit .tit {
	font-size: 37px;
	color: #0ca3c6;
	line-height: 1.3;
}
.newstopics .topicsmain .topicstit .btn {
	margin-top: 30px;
}
.newstopics .topicsmain .topicsnews {
	margin-left: 55px;
}
.newstopics .topicsmain .topicsnews li {
	display: flex;
	align-items: center;
}
.newstopics .topicsmain .topicsnews li + li {
	margin-top: 30px;
}
.newstopics .topicsmain .topicsnews .date {
	font-size: 16px;
}
.newstopics .topicsmain .topicsnews .date span {
	display: inline-block;
	margin: 0 35px 0 40px;
	background: linear-gradient(to right,#0ba1d0,#4ac4dd);
	padding: 2px;
	border-radius: 15px;
}
.newstopics .topicsmain .topicsnews .date span i {
	display: block;
	font-style: normal;
	font-size: 13px;
	background: #fff;
	width: 100px;
	text-align: center;
	padding: 2px 0;
	border-radius: 15px;
}
.newstopics .topicsmain .topicsnews a {
	font-size: 18px;
	color: #000;
	font-weight: bold;
}



.topblog {
	background-color: #feffe6;
	background-image: url(../images/top/bg_top02.png),url(../images/top/bg_top03.png);
	background-position: 0 15%,right 52%;
	background-repeat: no-repeat;
	padding: 35px 0 0;
	position: relative;
}
.topblog::before {
	background: url(../images/top/bg_top01.png) 0 0 repeat-x;
	width: 100%;
	height: 13px;
	top: -12px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}
.topblog .blogtit {
	font-size: 38px;
	color: #ff9000;
	padding-left: 70px;
}
.topblog .list {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}
.topblog .list li {
	width: 333px;
	background: #fff;
}
.topblog .list .img img {
	border-radius: 10px 10px 0 0;
}


.topblog .list li .cont {
	background: #fff;
	padding: 20px 15px 40px;
	color: #353535;
	border-radius: 0 0 10px 10px;
}
.topblog .list li .cont .date {
	font-size: 16px;
}
.topblog .list li .cont .tit {
	font-size: 18px;
	font-weight: bold;
}
.topblog .btn {
	text-align: right;
	margin-top: 20px;
}



.topfacilities {
	margin-top: 125px;
	position: relative;
	padding: 55px 0 30px;
	background: url(../images/top/bg_top04.png) 0 0 no-repeat;
	background-size: cover;
}
.topfacilities .facilitiestit {
	text-align: center;
	font-size: 40px;
	color: #381e14;
	line-height: 1.6;
	background: url(../images/top/bg_top05.png) center center no-repeat;
	padding: 15px 0 10px;
}
.topfacilities .facilitiestit span {
	font-size: 31px;
	display: block;
}
.topfacilities .tit {
	text-align: center;
	font-size: 26px;
	color: #353535;
	padding: 0 0 5px;
	font-weight: bold;
	letter-spacing: 10px;
}
.topfacilities .txt02 {
	text-align: center;
	font-size: 26px;
	color: #353535;
	padding: 0 0 25px;
	font-weight: bold;
	letter-spacing: 10px;
}
.topfacilities .txt02 span {
	display: inline-block;
	text-align: left;
	line-height: 1.2;
}
.topfacilities .txt {
	text-align: center;
	font-size: 18px;
	color: #353535;
}



.topslider .sliderbg01 {
	background: url(../images/top/img_slider01.png) center center no-repeat;
	background-size: cover;
}
.topslider .sliderbg02 {
	background: url(../images/top/img_slider02.png) center center no-repeat;
	background-size: cover;
}
.topslider .sliderbg03 {
	background: url(../images/top/img_slider03.png) center center no-repeat;
	background-size: cover;
}
.topslider .sliderbox {
	height: 790px;
}
.topslider .slick-dots {
	bottom: 30px;
}
.topslider .slick-dots li button:before
{
	background: #eaeaea;
    content: '';
	border-radius: 50%;
    opacity: 1;
}

.topslider .slick-dots li.slick-active button:before
{
    opacity: 1;
	background: linear-gradient(to right,#009ace,#6ad6e4);
}




.topperiphery .inner02 {
	position: relative;
}
.peripherybox {
	background: url(../images/top/bg_top06.png) 0 0 no-repeat;
	background-size: 100% 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 463px;
	height: 240px;
	position: absolute;
	bottom: 100%;
	right: 0;
	z-index: 2;
	box-sizing: border-box;
}
.peripherybox .tit {
	font-size: 32px;
	color: #ff9000;
	letter-spacing: 5px;
	margin-top: 30px;
	margin-bottom: 15px;
}
.peripherybox .txt {
	font-size: 18px;
	color: #353535;
}

@media screen and (max-width: 1024px) {
	.peripherybox {
		/* width: 463px; */
		width: 324px;
		/* height: 240px; */
		height: 168px;
	}
	.peripherybox .tit {
		font-size: 22px;
		margin-top: 30px;
		margin-bottom: 15px;
	}
	.peripherybox .txt {
		font-size: 14px;
	}
}

.peripherymain {
	padding: 40px 0 90px;
	display: flex;
	justify-content: space-between;
	background: url(../images/top/bg_top12.png) 70% 10px no-repeat,url(../images/top/bg_top07.png) 115px 95% no-repeat;
}
.peripherymain .peripherycont {
	width: 48%;
	text-align: center;
}
.peripherymain .peripherycont + .peripherycont {
	margin-top: 70px;
}
.peripherymain .peripherycont .peripherybox01 {
	float: right;
	width: 460px;
	margin-right: 85px;
}
.peripherymain .peripherycont .peripherybox02 {
	width: 460px;
	margin-left: 25px;
}
.peripherymain .peripherycont .img img {
	width: 100%;
}
.peripherymain .peripherycont .tit {
	font-size: 32px;
	color: #ff9000;
	letter-spacing: 5px;
	margin: 20px 0;
}
.peripherymain .peripherycont .txt {
	font-size: 18px;
	margin-bottom: 20px;
}
.peripherymain .peripherycont .txt span {
	display: inline-block;
	text-align: left;
}



.topabout {
	padding: 85px 0 90px;
	background: #feffe6;
	position: relative;
}
.topabout::before {
	background: url(../images/top/bg_top09.png) 0 0 repeat-x;
	width: 100%;
	height: 14px;
	bottom: -13px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}
.aboutslider {
	margin: 40px 0;
}
.aboutslider .slick-prev,
.aboutslider .slick-next {
	width: 69px;
	height: 69px;
	z-index: 2;
}
.aboutslider .slick-prev {
	background: url(../images/top/ico_prev.png) 0 0 no-repeat;
	left: 50%;
	margin-left: -550px;
}
.aboutslider .slick-next {
	background: url(../images/top/ico_next.png) 0 0 no-repeat;
	right: 50%;
	margin-right: -550px;
}
.topabout .btn {
	text-align: center;
}

@media screen and (max-width: 1120px) {
	.aboutslider .slick-prev {
		margin-left: -350px;
	}
	.aboutslider .slick-next {
		margin-right: -350px;
	}
}

.topservice {
	padding: 100px 0;
	background: rgba(255,255,255,0.3);
}
.topservice .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 80px;
}
.topservice .list li {
	width: 250px;
	margin-top: 20px;
	border: 3px solid #00b4d8;
	box-sizing: border-box;
	background: #fff;
	border-radius: 15px;
	padding: 10px;
	text-align: center;
	box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
}
.topservice .fc01 {
	color: #dd1000;
}
.topservice .fc02 {
	color: #f96b00;
}
.topservice .fc03 {
	color: #d1b100;
}
.topservice .fc04 {
	color: #008724;
}
.topservice .fc05 {
	color: #008773;
}
.topservice .fc06 {
	color: #0083b9;
}
.topservice .fc07 {
	color: #08089e;
}
.topservice .fc08 {
	color: #ef0665;
}

.topservice .tit {
	font-size: 18px;
	height: 2em;
	line-height: 1.2;
	margin: 5px 0;
	color: #381e14;
}
.topservice .tit span {
	display: block;
	font-size: 16px;
}
.topservice .txt {
	font-size: 28px;
	line-height: 1.2;
	margin-bottom: 10px;
}
.topservice .txt span{
	margin-right: 5px;
}
.topservice .txt span.small-txt{
	font-size: 20px;
}
.servicebtn {
	width: 470px;
	margin: 90px auto 0;
	text-align: center;
}
.servicebtn a {
	display: inline-block;
	font-size: 24px;
	border: 3px solid #00b4d8;
	color: #353535;
	text-decoration: none;
	padding: 20px 100px;
	box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
	border-radius: 18px;
	background:#fff url(../images/top/ico_arrow02.png) 20px center no-repeat;
}
.servicebtn a:hover {
	opacity: 0.5;
}


.topbox {
	background: #4fcbe4;
	/* padding: 75px 0 40px; */
	padding: 20px 0;
	position: relative;
}
.topbox::before {
	background: url(../images/top/bg_top10.png) 0 0 repeat-x;
	width: 100%;
	height: 14px;
	top: -14px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}
.topbox .tit {
	color: #fff;
	font-size: 31px;
	letter-spacing: 12px;
	text-align: center;
}
.topbox .list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 40px;
}
.topbox .list li {
	width: 400px;
	border: 3px solid #fff;
	border-radius: 15px;
	text-align: center;
	padding: 10px 0;
	font-size: 20px;
	margin: 10px 10px 0;
	letter-spacing: 5px;
	color: #fff;
	font-weight: bold;
}
.topbox .list li.bg01 {
	background: #dd1000;
}
.topbox .list li.bg02 {
	background: #f96b00;
}
.topbox .list li.bg03 {
	background: #d1b100;
}
.topbox .list li.bg04 {
	background: #008724;
}



.topinformation {
	background-color: #feffe6;
	background-image: url(../images/top/bg_top02.png);
	background-position: 100px 70px;
	background-repeat: no-repeat;
	padding: 95px 0 75px;
	position: relative;
}
.topinformation::before {
	background: url(../images/top/bg_top13.png) 0 0 repeat-x;
	width: 100%;
	height: 42px;
	top: -41px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}
.topinformation .bnr {
	text-align: center;
	margin-top: 50px;
}
.topinformation .bg {
	position: absolute;
	right: 80px;
	bottom: -27px;
	z-index: 3;
}




.topaccess {
	padding: 115px 0 0;
	position: relative;
}
.topaccess::before {
	background: url(../images/common/bg_footer.png) 0 0 repeat-x;
	width: 100%;
	height: 15px;
	top: -14px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}
.googelmap {
	height: 475px;
	margin-top: 50px;
	position: relative;
}
.googelmap iframe {
	width: 100%;
	height: 100%;
}
.googlemap_confirm {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.2);
}
.googlemap_confirm .confirm_bnr {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.googlemap_confirm .tit a {
	display: block;
	text-decoration: none;
	font-size: 24px;
	color: #fff;
	font-weight: 900;
	text-align: center;
	width: 540px;
	border: 2px solid #fff;
	border-radius: 10px;
	padding: 35px 0;
	cursor: pointer;
}


/*------------.about --------------*/

#teaser.about {
	background: url(../images/about/teaser_about.jpg) center center no-repeat;
	background-size: cover;
}


.about_sec {
	padding: 50px 0 0;
}
.about_sec .img01 {
	text-align: center;
	margin-top: 40px;
}
.about_sec .img01 img {
	width: 100%;
}
.about_sec .img02 {
	text-align: center;
	margin-top: 20px;
}
.about_sec .img02 img {
	width: 100%;
}
.about_box {
	padding: 110px 0 170px;
	position: relative;
	font-size: 18px;
	line-height: 1.7;
	font-weight: normal;
}
.about_box .tit {
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 35px;
}
.about_box .bg01 {
	position: absolute;
	right: 45px;
	top: 20px;
	z-index: 2;
}
.about_box .bg02 {
	position: absolute;
	left: 50px;
	bottom: 40px;
	z-index: 2;
}

.about_main {
	padding: 85px 0 90px;
}
.about_in + .about_in {
	margin-top: 80px;
}

.about_tab {
	width: 100%;
	font-size: 18px;
	margin-top: 50px;
	font-weight: normal;
}
.about_tab th {
	width: 250px;
	padding: 20px 50px;
	box-sizing: border-box;
	background-color: #dcf3ff;
	border: 1px solid #cbcbcb;
	vertical-align: top;
}
.about_tab td {
	padding: 20px 50px;
	border: 1px solid #cbcbcb;
	background-color: #fff;
}
.about_tab .list01 > li {
	text-indent: -4.2rem;
	padding-left: 4.2rem;
}
.about_tab .list02 {
	margin: 10px 0;
}
.about_tab .list02 > li {
	text-indent: -4.9rem;
	padding-left: 4.9rem;
}







/*------------.service --------------*/

#teaser.service {
	background: url(../images/service/teaser_service.jpg) center center no-repeat;
	background-size: cover;
}

.service_anchor {
	padding: 0 0 160px;
}
.service_anchor .inner {
	max-width: 1055px;
}
.service_anchor .list {
	display: flex;
	justify-content: space-between;
	margin-bottom: -10px;
}
.service_anchor .list + .list {
	margin-top: 10px;
}
.service_anchor .list li {
	margin-top: 10px;
	margin-left: 5px;
	margin-right: 5px;
	width: 249px;
	border: 3px solid #00b4d8;
	border-radius: 20px;
	background-color: #fff;
	padding: 10px 10px 15px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	transition: all .4s;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
}
.service_anchor .list li:hover {
	opacity: 0.5;
}
.service_anchor .list li dl {
	display: flex;
	align-items: center;
}
.service_anchor .list li dl dt {
	width: 72px;
	flex-shrink: 0;
}
.service_anchor .list li dl dd {
	padding-left: 20px;
	font-size: 18px;
	line-height: 1.3;
	font-size: 900;
}
.service_anchor .list li dl dd span {
	font-weight: 16px;
	display: block;
}

/*
.service_anchor .list li dl dd.col01 {
	color: #dd1000;
}
.service_anchor .list li dl dd.col02 {
	color: #f96b00;
}
.service_anchor .list li dl dd.col03 {
	color: #d1b100;
}
.service_anchor .list li dl dd.col04 {
	color: #008724;
}
.service_anchor .list li dl dd.col05 {
	color: #008773;
}
.service_anchor .list li dl dd.col06 {
	color: #0083b9;
}
.service_anchor .list li dl dd.col07 {
	color: #08089e;
}
.service_anchor .list li dl dd.col08 {
	color: #ef0665;
}

*/










.service_sec:last-child {
	padding-bottom: 165px;
}
.service_sec + .service_sec {
	margin-top: 295px;
}
.service_main {
	padding-bottom: 40px;
}
.service_sec .img {
	text-align: center;
	margin: 80px 0 60px;
}
.service_bnr {
	position: relative;
	padding: 55px 0 60px;
	background-color: #1abcd9;
}
.service_bnr .bnr {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.service_bnr .bnr p {
	width: 46%;
}
.service_bnr .bnr p a {
	display: flex;
	background-color: #fff;
	font-size: 23px;
	padding: 35px 0 40px 80px;
	position: relative;
	line-height: 1.4;
	text-decoration: none;
	border-radius: 20px;
	color: #353535;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
	transition: all .4s;
}
.service_bnr .bnr p a:hover {
	opacity: .5;
}
.service_bnr .bnr p a .img01 {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.service_bnr .bnr p a .img02 {
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.service_bnr .bnr p a::before {
	background: url(../images/service/ico_arrow.png) 0 0 no-repeat;
	width: 27px;
	height: 28px;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	content: "";
	z-index: 2;
	position: absolute;
}



.service_bnr::before {
	background: url(../images/service/bg_service01.png) 0 0 repeat-x;
	width: 100%;
	height: 13px;
	top: -12px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}
.service_bnr::after {
	background: url(../images/service/bg_service02.png) 0 0 repeat-x;
	width: 100%;
	height: 13px;
	bottom: -13px;
	left: 0;
	content: "";
	z-index: 2;
	position: absolute;
}



/*------------.access --------------*/

#teaser.access {
	background: url(../images/access/teaser_access.png) center center no-repeat;
	background-size: cover;
}

.access_main {
	padding: 90px 0 150px;
}
.access_sec + .access_sec {
	margin-top: 170px;
}

.access_main .googlemap {
	height: 650px;
	margin-top: 50px;
}
.access_main .googlemap iframe {
	width: 100%;
	height: 100%;
}
.access_sec .access_box {
	margin-top: 80px;
	padding-bottom: 35px;
	border-bottom: 3px solid #00b4d8;
}
.access_sec .access_box + .access_box {
	margin-top: 35px;
}
.access_sec .access_box .tit {
	font-size: 30px;
	color: #381e14;
	margin-bottom: 20px;
}
.access_sec .access_box .txt {
	font-size: 17px;
	color: #4d4d4d;
	line-height: 2.2;
}





/*------------.facilities --------------*/

#teaser.facilities {
	background: url(../images/facilities/teaser_facilities.png) center center no-repeat;
	background-size: cover;
}


.facilities_about {
	padding: 45px 0 0;
}
.facilities_about .img {
	margin: 40px 0 45px;
}
.facilities_about .img img {
	width: 100%;
}
.facilities_about .tit {
	text-align: center;
	font-size: 23px;
	font-weight: 900;
}
.facilities_about .txt {
	font-size: 18px;
	line-height: 1.7;
	padding: 10px 0 0;
}



.facilities_main {
	padding: 135px 0 0;
}
.facilities_main .hdL {
	margin-bottom: 70px;
}
.facilities_box01 {
	display: flex;
	justify-content: space-between;
}
.facilities_box01.rowreverse {
	flex-direction: row-reverse;
}
.facilities_box01 .img {
	flex-shrink: 0;
	width: 47%;
}
.facilities_box01 .img img {
	width: 100%;
}
.facilities_in01 {
	width: 47%;
	padding: 50px 0 0;
}
.facilities_box01.rowreverse .facilities_in01 {
	display: flex;
	justify-content: flex-end;
}
.facilities_cont {
	width: 455px;
}
.facilities_cont .tit {
	font-size: 25px;
	font-weight: 900;
	margin-bottom: 20px;
}
.facilities_cont .txt {
	font-size: 18px;
	line-height: 1.7;
}

.facilities_box02 {
	margin-top: 85px;
}
.facilities_box02 .list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
}
.facilities_box02 .list li {
	width: 47%;
}
.facilities_box02 .list li img {
	width: 100%;
}
.facilities_box02 .facilities_cont {
	width: auto;
}
.facilities_box02 .facilities_cont .tit {
	margin-bottom: 0;
}


.floor_main {
	padding: 200px 0 180px;
}
.floor_cont + .floor_cont {
	margin-top: 150px;
}
.floor_cont .floor_img {
	margin: 80px 0 0;
}
.floor_cont .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.floor_cont .list li {
	width: 45.7%;
	text-align: center;
	margin-top: 75px;
}
.floor_cont .list li .tit {
	font-size: 20px;
	font-weight: 900;
	text-align: center;
	padding: 10px 0;
}
.floor_cont .list li .txt {
	font-size: 17px;
}


/**/

.switchItems{
	display: none;
}

/**/

.gnavfixed {
    position: fixed;
    top: 0;
    padding: 0;
    width: 100%;
    z-index: 1000;
}
.gnavfixed2 {
    position: fixed;
    top: -76px;
    padding: 0;
    width: 100%;
    z-index: 1000;
}




/*------------.online --------------*/

#teaser.online {
	background: url(../images/online/teaser_online.jpg) center center no-repeat;
	background-size: cover;
}

/**/

.online_block01{
	padding: 88px 0 174px;
	position: relative;
}

.online_block01 .block_inner .flex_area{
	margin-top: 65px;
	position: relative;
}

.online_block01 .block_inner .flex_area .left{
	width: calc(50vw - 30px);
	height: 390px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}


.online_block01 .block_inner .flex_area .left img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.online_block01 .block_inner .flex_area .right{
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;
	position: relative;
}

.online_block01 .block_inner .flex_area .right::after{
	content: '';
	display: inline-block;
	background: url("../images/about/bg_about01.png")no-repeat;
	background-size: contain;
	width: 423px;
	height: 75px;
	position: absolute;
	bottom: -135px;
	right: -105px;
	z-index: 1;
}



.online_block01 .block_inner .flex_area .right .r_inner{
	width: 50%;
	padding-left: 35px;
	box-sizing: border-box;
}

.online_block01 .block_inner .flex_area .right .r_inner .txt_lv1{
	font-size: 25px;
	font-weight: 700;
	line-height: 1.48;
	color: #353535;
}

.online_block01 .block_inner .flex_area .right .r_inner .txt_lv2{
	margin-top: 35px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.77;
	color: #353535;
}

/**/

.service_bnr .inner.w1000{
	max-width: 1000px;
}

.service_bnr .inner.w1000 .caution_list{
	background: #fff;
	padding: 29px 41px 27px;
	box-sizing: border-box;
	border-radius: 16px;
}

.service_bnr .inner.w1000 .caution_list li{
	display: flex;
	align-items: center;
	font-size: 16px;
	font-weight: 700;
	line-height: 2.06;
	color: #000;
}

.service_bnr .inner.w1000 .caution_list li::before{
	content: '※';
	display: inline-block;
	font-size: 16px;
	color: #ff0000;
	padding-right: 5px;
}


/**/

.online_block02{
	padding: 155px 0 100px;
	position: relative;
	
}

.online_block02::before{
	content: '';
	display: inline-block;
	background: url("../images/about/bg_about02.png")no-repeat;
	background-size: contain;
	width: 499px;
	height: 565px;
	position: absolute;
	top: 32px;
	left: 3.8%;
	z-index: 1;
}

.online_block02 .block_inner{
}

.online_block02 .block_inner .slick01{
	width: 100%;
	margin-top: 37px;
	position: relative;
}

.online_block02 .block_inner .slick01{
}

.online_block02 .block_inner .slick01 .s-slide{
	width: 100%;
	position: relative;
}

.online_block02 .block_inner .slick01 .s-slide .cap_txt{
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	color: #000000;
	width: 100%;
	background: rgba(255,255,255,0.78);
	padding: 20px 50px;
	box-sizing: border-box;
	position: absolute;
	bottom: 0;
	left: 0;
}

.online_block02 .block_inner .slick01 .s-slide + .s-slide{
}

.online_block02 .block_inner .slick01 .s-slide img{
	width: 100%;
	height: auto;
}

.online_block02 .block_inner .slick01 .prev-arrow,
.online_block02 .block_inner .slick01 .next-arrow{
	width: 52px;
	height: auto;
}

.online_block02 .block_inner .slick01 .prev-arrow{
	position: absolute;
	bottom: -78px;
	left: 50%;
	transform: translateX(-50%);
	margin-left: -175px;
	z-index: 1;
}
.online_block02 .block_inner .slick01 .next-arrow{
	position: absolute;
	bottom: -78px;
	left: 50%;
	transform: translateX(-50%);
	margin-left: 175px;
	z-index: 1;
}

.online_block02 .block_inner .slick01 .slick-dots{
	position: absolute;
	bottom: -70px;
	left: 50%;
	transform: translateX(-50%);
}

.online_block02 .block_inner .slick01 .slick-dots li{
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 2px solid #00b4d8;
	box-sizing: border-box;
	background: #fff;
	margin: 0 5px;
}

.online_block02 .block_inner .slick01 .slick-dots li.slick-active{
	background: #00b4d8;
}

.online_block02 .block_inner .slick01 .slick-dots li button{
	display: none;
}

/**/

.online_block03{
	padding: 100px 0 65px;
}

.online_block03 .block_inner{
	max-width: 1000px;
	margin: 0 auto;
}

.online_block03 .block_inner .flow_list{
	margin-top: 30px;
	list-style: none;
}

.online_block03 .block_inner .flow_list li{
	width: 100%;
	border: 1px solid #00b4d8;
	border-radius: 16px;
	padding: 17px 70px 30px 40px;
	box-sizing: border-box;
	background: #fff;
	position: relative;
}

.online_block03 .block_inner .flow_list li + li{
	margin-top: 43px;
}

.online_block03 .block_inner .flow_list li + li::before{
	content: '';
	display: inline-block;
	background: url("../images/online/step_ico@2x.png")no-repeat;
	background-size: contain;
	width: 38px;
	height: 27px;
	position: absolute;
	top: -36px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}

.online_block03 .block_inner .flow_list li dl{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.online_block03 .block_inner .flow_list li dl dt{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	height: 60px;
	background: #00b4d8;
	border-radius: 50%;
}

.online_block03 .block_inner .flow_list li dl dt span{
	font-size: 39px;
	font-weight: bold;
	color: #fff;
}

.online_block03 .block_inner .flow_list li dl dd{
	width: calc(100% - 80px);
	font-size: 22px;
	font-weight: bold;
	color: #353535;
}

.online_block03 .block_inner .flow_list li .txt01{
	font-size: 18px;
	line-height: 1.77;
	color: #353535;
	text-align: justify;
	padding: 5px 0 0 80px;
	box-sizing: border-box;
}

.online_block03 .block_inner .flow_list li .txt01 a{
	color: #0063fa;
	text-decoration: underline;
}

.online_block03 .block_inner .flow_list li .txt01 span{
	color: #ff0000;
}

.online_block03 .block_inner .flow_list li .txt01 + .txt01{
	margin-top: 35px;
}

.online_block03 .block_inner .flow_list li .link_btn{
	width: 326px;
	margin: 26px auto 0;
}

.online_block03 .block_inner .flow_list li .link_btn a{
	display: block;
	width: 100%;
	line-height: 85px;
	border-radius: 11px;
	background: linear-gradient(to right,#0ba1d0,#4ac4dd);
	font-size: 16px;
	color: #fff;
	text-align: center;
	position: relative;
}

.online_block03 .block_inner .flow_list li .link_btn a::before{
	content: '';
	display: inline-block;
	background: url("../images/online/link_ico@2x.png")no-repeat;
	background-size: contain;
	width: 28px;
	height: 28px;
	position: absolute;
	top: 50%;
	right: 26px;
	transform: translateY(-50%);
}

.online_block03 .block_inner .flow_list li .link_btn a::after{
	content: '';
	display: inline-block;
	background: url("../images/online/btn_ico.png")no-repeat;
	background-size: contain;
	width: 48px;
	height: 48px;
	position: absolute;
	top: 50%;
	left: 35px;
	transform: translateY(-50%);
}

/**/

.online_block04{
	padding: 65px 0 80px;
}

.online_block04 .block_inner .txt01{
	max-width: 1000px;
	margin: 43px auto 68px;
	font-size: 18px;
	line-height: 1.77;
	color: #353535;
}

.online_block04 .block_inner .service_bnr .inner .flow_list02{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
}

.online_block04 .block_inner .service_bnr .inner .flow_list02 li{
	width: 46.2%;
	position: relative;
}

.online_block04 .block_inner .service_bnr .inner .flow_list02 li img{
	width: 100%;
	height: auto;
}

.online_block04 .block_inner .service_bnr .inner .flow_list02 li:nth-child(n + 3){
	margin-top: 80px;
}

.online_block04 .block_inner .service_bnr .inner .flow_list02 li .num_txt{
	width: 92px;
	height: 92px;
	border: 2px solid #00b4d8;
	border-radius: 50%;
	box-sizing: border-box;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}

.online_block04 .block_inner .service_bnr .inner .flow_list02 li .num_txt span{
	font-size: 59px;
	font-weight: bold;
	color: #19bbdc;
}

.online_block04 .block_inner .service_bnr .inner .flow_list02 li:nth-child(even)::before{
	content: '';
	display: inline-block;
	background: url("../images/online/step_ico02@2x.png")no-repeat;
	background-size: contain;
	width: 28px;
	height: 38px;
	position: absolute;
	top: 50%;
	left: -50px;
	transform: translateY(-50%);
}

/**/

.online_block05{
	padding: 80px 0 160px;
}

.online_block05 .block_inner{
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}

.online_block05 .block_inner::before{
	content: '';display: inline-block;
	background: url(../images/about/bg_about01.png)no-repeat;
	background-size: contain;
	width: 423px;
	height: 75px;
	position: absolute;
	top: -105px;
	right: -100px;
}

.online_block05 .block_inner .txt01{
	font-size: 16px;
	color: #000000;
	margin-top: 44px;
}

.online_block05 .block_inner .contactstep{
	max-width: 76.9%;
	margin: 65px auto 38px;
}

.online_block05 .block_inner form{
	max-width: 76.9%;
	margin: 0 auto;
}

.online_block05 .block_inner .contacttab{
	width: 100%;
}

.online_block05 .block_inner .contacttab .flex-area{
	display: flex;
	align-items: center;
}

.online_block05 .block_inner .contacttab .flex-area label{
	margin: 0 35px 0 0;
	font-size: 16px;
	color: #575757;
}

.online_block05 .block_inner .contacttab .flex-area .year{
	display: flex;
	align-items: center;
}

.online_block05 .block_inner .contacttab .flex-area .year span,
.online_block05 .block_inner .contacttab .flex-area .month span,
.online_block05 .block_inner .contacttab .flex-area .day span{
	font-size: 16px;
	color: #575757;
	padding: 0 25px 0 17px;
}

.online_block05 .block_inner .contacttab .flex-area .month{
	display: flex;
	align-items: center;
}

.online_block05 .block_inner .contacttab .flex-area .day{
	display: flex;
	align-items: center;
}

.online_block05 .block_inner .contacttab .flex-area .inputW03{
	width: 203px;
}

.online_block05 .block_inner .contacttab .flex-area .inputW04{
	width: 102px;
}

.online_block05 .block_inner .contacttab .flex-input{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.online_block05 .block_inner .contacttab .flex-input + .flex-input{
	margin-top: 20px;
}

.online_block05 .block_inner .contacttab .flex-input span{
	font-size: 16px;
	color: #575757;
}

.online_block05 .block_inner .contacttab .flex-input .inputW05{
	width: 640px;
}

.online_block05 .block_inner .contacttab tr td textarea{
	width: 100%;
	height: 203px;
}

/**/

.top-online_area{
	padding: 0 0 85px;
	background: #fff;
}

.top-online_area .online_inner{
	max-width: 884px;
	margin: 0 auto;
}

.top-online_area .online_inner .online_bnr{
	width: 100%;
}

.top-online_area .online_inner .online_bnr a{
	transition: 0.3s;
}

.top-online_area .online_inner .online_bnr a:hover{
	opacity: 0.8;
}

.top-online_area .online_inner .online_bnr a img{
	width: 100%;
	height: auto;
	filter: drop-shadow(10px 8px 4px rgba(0,0,0,0.2));
}
