@charset "utf-8";
.mfp-bg{
  opacity: 0;
  transition: opacity 1s;
}
.mfp-bg.mfp-ready{
  opacity: 0.8;
}
.mfp-bg.mfp-removing{
  opacity: 0;
}

.mfp-wrap .mfp-content{
  opacity: 0;
  transition: opacity 1s;
}

.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}
html{
	height: auto;
	margin-right: 0!important;
    overflow: unset!important;
}

@media screen and (max-width: 768px){
	.main-wrap1 {
		width: 100%;
		margin:  0 auto;
		padding: 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap1 .content-wrap {
		width: 100%;
		margin: 0 auto 0 auto;
		padding: 0 20px 0 20px;
	}
	.main-wrap1 .content {
		width: 100%;
		overflow-x: scroll;
		overflow-y: hidden;
		white-space: nowrap;
		margin: 0 auto 0 auto;
		position: relative;
		padding: 2px 0 2px 0;
		-webkit-overflow-scrolling: touch;
	}
	.main-wrap1 .content .breadcrumbfr {
		width:auto;
		list-style: none;
	}
	.main-wrap1 .content .breadcrumb {
		display: inline-block;
		margin:0 0 3px 0;
	}
	.main-wrap1 .content .breadcrumb .breadcrumblnk {
		padding:0 10px;
		vertical-align: middle;
		display: inline-block;
		color: #969696;
	}
	.main-wrap1 .content .breadcrumb a.breadcrumblnk {
		vertical-align: middle;
		display: inline-block;
		color:#323232;
		font-weight: 600!important;
	}
	.main-wrap1 .content .breadcrumb a.breadcrumblnk:hover {
		color:#323232;
	}
	.main-wrap1 .content .breadcrumb:first-child .breadcrumblnk {
		padding:0 10px 0 0;
	}
	.main-wrap1 .content .breadcrumb span.breadcrumbborder {
		vertical-align: middle;
		display: inline-block;
		position: relative;
		top:0px;
	}
	.main-wrap1 .content .breadcrumb span.breadcrumbborder img{
		vertical-align: middle;
        width: 15px;
		top: -1px;
		position: relative;
	}
	.main-wrap2 {
		width: 100%;
		margin: 0 auto;
		padding: 80px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap2 .content-wrap {
		width: 90%;
		margin: 0 auto;
	}
	.main-wrap2 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner-wrap {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner .ttl-wrap{
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner .txt {
		width: 100%;
		padding: 15px 0 15px 0;
		position: relative;
		text-align: center;
	}
	.main-wrap2 .inner .txt img {
		width: 100%;
	}
	.main-wrap2 .inner ul {
		width: 100%;
		display: block;
		font-size: 0;
		text-align: left;
		margin: 50px 0 0 0;
	}
	.main-wrap2 .inner ul li{
		width: 50%;
		display: inline-block;
		vertical-align: top;
		padding: 0 20px 0 20px;
		border-right: solid 1px #000;
		margin: 10px 0 0 0;
		text-align: center;
	}
	.main-wrap2 .inner ul li:nth-child(1){
		margin: 0 0 0 0;
	}
	.main-wrap2 .inner ul li:nth-child(2){
		margin: 0 0 0 0;
	}
	.main-wrap2 .inner ul li:nth-child(2n-1){
		border-left: solid 1px #000;
	}
	.main-wrap2 .inner ul li a{
		display: inline-block;
		color:#000;
		position: relative;
	}
	.main-wrap2 .inner ul li a::after{
		content: " ";
		display: block;
		height: 1px;
		width: 0%;
		background-color: #000;
		position: absolute;
		bottom: 4px;
		left: 50%;
		transform: translateX(-50%);
		transition: width 0.4s;
	}
	.main-wrap2 .inner ul li a:hover::after{
		width: 100%;
	}
	
	
	.main-wrap4 {
		width: 100%;
		margin: 0 auto;
		padding: 50px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap4 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap4 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap4 .inner img {
		width: 100%;
		margin: 30px auto 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap4 .inner .txt {
		width: 100%;
		margin: 30px auto 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap5 {
		width: 100%;
		margin: 0 auto;
		padding: 30px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap5 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap5 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap5 .inner img {
		width: 100%;
		position: relative;
		text-align: left;
	}
	.main-wrap6 {
		width: 100%;
		margin: 0 auto;
		padding: 30px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap6 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap6 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap7 {
		width: 100%;
		margin: 0 auto;
		padding: 0 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap7 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap7 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap7 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap7 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap7 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap7 .inner .block {
		padding: 30px 0 0;
	}
	.main-wrap7 .inner .block .title {
		width: 100%;
		font-weight: bold;
		overflow: hidden;
	}
	.main-wrap7 .inner .block .title span{
		display: inline-block;
		position: relative;
		padding: 0 20px 0 0;
	}
	.main-wrap7 .inner .block span::after {
		content: "";
		width: 99999px;
		height: 1px;
		display: inline-block;
		position: absolute;
		top: 50%;
		left: 100%;
		background: #015077;
	}
	.main-wrap7 .inner .block .text {
		padding-top: 15px;
	}
	.main-wrap3 {
		width: 100%;
		margin: 0 auto;
		padding: 40px 0 0 0;
		background-color: #ffffff;
	}
	.main-wrap3 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap3 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap4 {
		width: 100%;
		margin: 0 auto;
		padding: 30px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap4 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap4 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap4 .inner img {
		width: 100%;
		position: relative;
		text-align: left;
	}
	.main-wrap5 {
		width: 100%;
		margin: 0 auto;
		padding: 30px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap5 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap5 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap6 {
		width: 100%;
		margin: 0 auto;
		padding: 0 0 40px 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap6 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap6 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap6 .inner .block {
		padding: 30px 0 0;
	}
	.main-wrap6 .inner .block .title {
		width: 100%;
		font-weight: bold;
		overflow: hidden;
	}
	.main-wrap6 .inner .block .title span{
		display: inline-block;
		position: relative;
		padding: 0 20px 0 0;
	}
	.main-wrap6 .inner .block span::after {
		content: "";
		width: 99999px;
		height: 1px;
		display: inline-block;
		position: absolute;
		top: 50%;
		left: 100%;
		background: #015077;
	}
	.main-wrap6 .inner .block .text {
		padding-top: 15px;
	}
	.main-wrap6 .inner .block .block2 .block-element2 {
		width: 100%;
		font-size: 0;
		margin: 20px 0 0 0;
	}
	.main-wrap6 .inner .block .block2 .block-element2 a img{
		width: 100%;
	}
	.main-wrap6 .inner .block .block2 .block-element2 a:nth-child(1) {
		display: inline-block;
		vertical-align: top;
		width: 48%;
	}
	.main-wrap6 .inner .block .block2 .block-element2 a:nth-child(2) {
		display: inline-block;
		vertical-align: top;
		width: 48%;
		margin: 0 0 0 4%;
	}
	.main-wrap-last{
		padding-bottom: 100px;
	}
}

@media screen and (min-width: 769px){
	.main-wrap {
		overflow: hidden;
	}
	.main-wrap1 {
		min-width: 1200px;
		width: 100%;
		margin:  0 auto;
		padding: 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap1 .content-wrap {
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
	}
	.main-wrap1 .content {
		width: 1000px;
		margin: 0 auto 0 auto;
		position: relative;
		color:#323232;
		padding: 8px 0 8px 0;
	}
	.main-wrap1 .content .breadcrumbfr {
		width:auto;
		list-style: none;
	}
	.main-wrap1 .content .breadcrumb {
		display: inline-block;
		float: left;
		margin:0 0 3px 0;
		color:#323232;
	}
	.main-wrap1 .content .breadcrumb .breadcrumblnk {
		padding:0 20px;
		vertical-align: middle;
		display: inline-block;
		color: #969696;
	}
	.main-wrap1 .content .breadcrumb a.breadcrumblnk {
		vertical-align: middle;
		display: inline-block;
		color:#323232;
		font-weight: 800!important;
	}
	.main-wrap1 .content .breadcrumb a.breadcrumblnk:hover {
		color:#323232;
	}
	.main-wrap1 .content .breadcrumb:first-child .breadcrumblnk {
		padding:0 20px 0 0;
	}
	.main-wrap1 .content .breadcrumb span.breadcrumbborder {
		vertical-align: middle;
		display: inline-block;
		position: relative;
		top:0px;
	}
	.main-wrap1 .content .breadcrumb span.breadcrumbborder img{
		vertical-align: middle;
        width: 15px;
		top: -1px;
		position: relative;
	}
	.main-wrap2 {
		width: 100%;
		min-width: 1200px;
		margin: 0 auto;
		padding: 40px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap2 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap2 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner-wrap {
		width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner .ttl-wrap {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner .txt {
		width: 100%;
		position: relative;
		text-align: center;
	}
	.main-wrap2 .inner .txt img {
		width: 100%;
	}
	.main-wrap2 .inner ul {
		width: 100%;
		display: block;
		font-size: 0;
		text-align: center;
		margin: 100px 0 0 0;
	}
	.main-wrap2 .inner ul li{
		display: inline-block;
		vertical-align: top;
		padding: 0 20px 0 20px;
		border-right: solid 1px #000;
	}
	.main-wrap2 .inner ul li:nth-child(1){
		border-left: solid 1px #000;
	}
	.main-wrap2 .inner ul li a{
		display: inline-block;
		color:#000;
		position: relative;
	}
	.main-wrap2 .inner ul li a::after{
		content: " ";
		display: block;
		height: 1px;
		width: 0%;
		background-color: #000;
		position: absolute;
		bottom: 4px;
		left: 50%;
		transform: translateX(-50%);
		transition: width 0.4s;
	}
	.main-wrap2 .inner ul li a:hover::after{
		width: 100%;
	}
	.main-wrap3 {
		width: 100%;
		min-width: 1200px;
		margin: 0 auto;
		padding: 100px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap3 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap3 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner-wrap {
		width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap4 {
		width: 100%;
		min-width: 1200px;
		margin: 0 auto;
		padding: 50px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap4 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap4 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner-wrap {
		width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .inner img {
		width: 100%;
		position: relative;
		text-align: left;
	}
	.main-wrap5 {
		width: 100%;
		min-width: 1200px;
		margin: 0 auto;
		padding: 50px 0 0 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap5 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap5 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner-wrap {
		width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .inner .ttl {
		width: 100%;
		margin: 0 auto;
		position: relative;
		text-align: left;
	}
	.main-wrap6 {
		width: 100%;
		min-width: 1200px;
		margin: 0 auto;
		padding: 0 0 180px 0;
		position: relative;
		background-color: #ffffff;
	}
	.main-wrap6 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap6 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner-wrap {
		width: 1000px;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap6 .inner .txt {
		width: 100%;
		padding: 50px 0 0;
		position: relative;
		text-align: left;
	}
	.main-wrap6 .inner .block {
		padding: 50px 0 0;
	}
	.main-wrap6 .inner .block .title {
		width: 100%;
		font-weight: bold;
		overflow: hidden;
	}
	.main-wrap6 .inner .block .title span{
		display: inline-block;
		position: relative;
		padding: 0 20px 0 0;
	}
	.main-wrap6 .inner .block span::after {
		content: "";
		width: 99999px;
		height: 1px;
		display: inline-block;
		position: absolute;
		top: 50%;
		left: 100%;
		background: #015077;
	}
	.main-wrap6 .inner .block .text {
		padding-top: 15px;
	}
	.main-wrap6 .inner .block .block2 {
		font-size: 0;
		width:1000px;
		display:table;
		table-layout: fixed;
	}
	.main-wrap6 .inner .block .block2 .block-element {
		display:table-cell;
		width:500px;
		vertical-align: top;
	}
	.main-wrap6 .inner .block .block2 .block-element2 {
		display:table-cell;
		width:420px;
	}
	.main-wrap6 .inner .block .block2 .block-element .text {
		padding-top: 15px;
	}
	.main-wrap6 .inner .block .block2 .block-element2 img {
		width:200px;
		margin-bottom: 20px;
		float: right;
	}
	.main-wrap6 .inner .block .block2 .block-element2 img:nth-child(2n-1) {
		margin-left: 20px;
	}
	footer .footer-wrap .footer-border{
        width: 100%;
        height: 350px;
        background: url("../img/footer_bg.png") no-repeat center center;
        background-size: cover;
    }
}