@charset "utf-8";

body{
	background-color: #f7faff;
}

@media screen and (max-width: 768px) {
	.main-wrap1 {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap1 .content-wrap {
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap1 .content-wrap img{
		width: 100%;
	}
	.main-wrap2 {
		width: 100%;
		margin: 0 auto;
		background-color: #1e237f;
		overflow: hidden;
	}
	.main-wrap2 .content-wrap {
		width: 90%;
		margin: 0 auto;
		position: relative;
		background: url(../img/m2_bg_sp.png) no-repeat center top;
		background-size: 100% auto;
		background-color: #fff;
	}
	.main-wrap2 .content-wrap::after {
		content: ""; 
		display: block;
		width: 30vw;
		height: 20vw;
		background-color: #1e237f;
		position: absolute;
		top: -7vw;
		left: -19vw;
		transform: rotate(-45deg);
	}
	.main-wrap2 .content-wrap::before {
		content: "";
		display: block;
		width: 30vw;
		height: 20vw;
		background-color: #1e237f;
		position: absolute;
		bottom: -7vw;
		right: -19vw;
		transform: rotate(-45deg);
	}
	.main-wrap2 .content {
        width: 100%;
        margin: 0 auto;
		padding: 46vw 0 12vw 0;
		position: relative;
	}
	.main-wrap2 h3 {
		width: 100%;
		font-size: 14px;
		text-align: center;
	}
    .main-wrap2 .btn-entry-wrap{
        margin: 5vw auto 0 auto;
    }
	.main-wrap3 {
		width: 100%;
		margin: 40px auto 0 auto;
	}
	.main-wrap3 .content-wrap {
		width: 90%;
		margin: 0 auto;
		padding: 30px 0 40px 0;
		background-color: #fff;
		position: relative;
	}
	.main-wrap3 .content {
        width: 90%;
        margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .content .title {
		position: absolute;
		top: 0;
		left: 0;
	}
	.main-wrap3 .content .title h3 {
		font-size: 14px;
		color: #1e237f;
		line-height: 1.0em;
	}
	.main-wrap3 .content .title::after {
		content: "";
		display: block;
		width: 190px;
		height: 2px;
		background-color: #1e237f;
		position: absolute;
		top: 0;
		left: 100px;
		transform: rotate(122deg);
		transform-origin: top left;
	}
	.main-wrap3 .content .img {
        width: 84%;
        padding: 26px 0 0 0;
		margin: 0 auto;
	}
	.main-wrap3 .content .img img{
		width: 100%;
		vertical-align: bottom;
	}
	.main-wrap3 .content .txt {
		width: 100%;
		vertical-align: top;
		text-align: center;
		margin: 30px 0 0 0;
	}
	.main-wrap3 .content .txt h4 {
		font-size: 20px;
		margin: 0 0 5px 0;
	}
	.main-wrap3 .content .txt span {
		font-size: 18px;
		font-weight: bold;
	}
	.main-wrap3 .content .txt span span {
		font-size: 14px;
	}
    .main-wrap3 .btn-entry-wrap{
        margin: 20px auto 0 auto;
	}
	.main-wrap4 {
		width: 100%;
		padding: 40px 0 0 0;
		margin: 0 auto 0 auto;
	}
	.main-wrap4 .content-wrap {
		width: 90%;
		margin: 0 auto;
		padding: 30px 0 40px 0;
		background-color: #fff;
		position: relative;
	}
	.main-wrap4 .content {
        width: 90%;
        margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .content .title {
		position: absolute;
		top: 0;
		left: 0;
	}
	.main-wrap4 .content .title h3 {
		font-size: 14px;
		color: #1e237f;
		line-height: 1.0em;
	}
	.main-wrap4 .content .title::after {
		content: "";
		display: block;
		width: 190px;
		height: 2px;
		background-color: #1e237f;
		position: absolute;
		top: 0;
		left: 100px;
		transform: rotate(122deg);
		transform-origin: top left;
	}
	.main-wrap4 .content .listwrap {
		display: block;
		width: 100%;
		padding: 90px 0 0 60px;
	}
	.main-wrap4 .content .listwrap dl {
		display: block;
		width: 100%;
	}
	.main-wrap4 .content .listwrap dl dt {
		display: block;
		width: 100%;
		padding: 5px 10px 0 0;
		font-size: 16px;
		font-weight: bold;
	}
	.main-wrap4 .content .listwrap dl dd {
		display: table-cell;
		padding: 0 0 5px 0;
		font-size: 16px;
	}
	.main-wrap4 .content .listwrap dl dd a{
		color: #000;
		border-bottom:1px solid #000;
       	padding-bottom: 3px;
		font-size: 16px;
	}
	.main-wrap4 .content .listwrap dl dd a:hover{
		text-decoration: none;
		color: #000;
		border-bottom:1px solid #000;
	}
	.main-wrap4 .content .listwrap .txt {
		display: block;
		width: 100%;
		font-size: 16px;
		margin: 20px 0 10px 0;
	}
	.main-wrap4 .content .listwrap .gmapfr {
		width: 100%;
		height: 50vw;
		background-color: #fff;
	}
	.main-wrap4 .content .listwrap .gmapfr .gmap {
		width: 100%;
		height: 100%;
	}
	.main-wrap4 .content .listwrap .gmapfr iframe{
		width: 100%;
		height: 50vw;
	}
	.main-wrap5 {
		width: 100%;
		margin: 40px auto 0 auto;
	}
	.main-wrap5 .content-wrap {
		width: 90%;
		margin: 0 auto;
		padding: 30px 0 40px 0;
		background-color: #fff;
		position: relative;
	}
	.main-wrap5 .content {
        width: 90%;
        margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .content .title {
		width: 100%;
	}
	.main-wrap5 .content .title h3 {
		width: 100%;
		text-align: center;
		font-size: 20px;
	}
	.main-wrap5 .content .button {
		width: 100%;
	}
    .main-wrap5 .content .button .btn-entry-wrap{
        width: 180px;
        height: 50px;
        display: block;
        position: relative;
        padding: 0;
        margin: 20px auto 20px auto;
	}
	.main-wrap6 {
		width: 100%;
		margin: 40px auto 0 auto;
		background: url(../img/m6_bg_sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.main-wrap6 .content-wrap {
		width: 100%;
		margin: 0 auto;
		padding: 50px 0 50px 0;
		position: relative;
	}
	.main-wrap6 .content {
        width: 90%;
        margin: 0 auto;
		padding: 30px 5% 30px 5%;
		position: relative;
	}
	.main-wrap6 .content::after {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background-color: #fff;
		opacity: 0.7;
		border-radius: 20px;
		z-index: 1;
	}
	.main-wrap6 .content .inner {
		position: relative;
		z-index: 10;
		text-align: center;
	}
	.main-wrap6 .content .inner .subtitle {
		font-size: 12px;
		font-weight: bold;
		display: inline-block;
		padding: 3px 15px 3px 15px;
		border: solid 2px #000;
		border-radius: 100px;
	}
	.main-wrap6 .content .inner h3 {
		width: 100%;
		margin: 10px 0 0 0;
		font-size: 22px;
		text-align: center;
	}
	.main-wrap6 .content .inner p {
		width: 100%;
		margin: 16px 0 0 0;
		font-size: 14px;
		text-align: left;
	}
	.main-wrap6 .content .button {
		width: 100%;
		margin: 30px 0 0 0;
	}
    .main-wrap6 .btn-entry-wrap{
		margin: 0 auto;
    }
    .main-wrap .btn-entry-wrap{
        width: 180px;
		height: 50px;
        display: block;
        position: relative;
        padding: 0;
    }
    .main-wrap .btn-entry-wrap .btn-entry {
		background-color: #00873b;
        width: 100%;
		height: 50px;
        line-height: 1em;
        display: table;
		table-layout: fixed;
        position: absolute;
        top: 50%;
		left: 0;
        transform: translateY(-50%);
        border-radius: 30px;
        overflow: hidden;
        padding: 0;
        margin: 0;
    }
    .main-wrap .btn-entry-wrap .btn-entry span.txt{
        font-size: 14px;
        color:#fff;
        width: 100%;
        display: table-cell;
		padding: 0 0 0 16px;
		vertical-align: middle;
		text-align: left;
        font-weight: 600;
        overflow: hidden;
    }
    .main-wrap .btn-entry-wrap .btn-entry span.icon{
		width: 52px;
        display: table-cell;
		text-align: center;
		vertical-align: middle;
        overflow: hidden;
    }
    .main-wrap .btn-entry-wrap .btn-entry span.icon span{
		display: inline-block;
        width: 42px;
		height: 42px;
		background-color: #fff;
		border-radius: 50%;
		overflow: hidden;
		vertical-align: middle;
	}
    .main-wrap .btn-entry-wrap .btn-entry span.icon span img{
		width: 100%;
	}
    .main-wrap .btn-entry-wrap .btn-entry:hover{
		background-color: #15a152;
        transition: background-color 0.4s;
    }
}

@media screen and (min-width: 769px) {
	.main-wrap1 {
		width: 100%;
		min-width: 1360px;
		margin: 0 auto;
	}
	.ipad .main-wrap1 {
		min-width: 1280px;
	}
	.main-wrap1 .content-wrap {
		width: 100%;
		margin: 0 auto;
		height: 700px;
		position: relative;
		overflow: hidden;
	}
	.ipad .main-wrap1 .content-wrap {
		height: 660px;
	}
	.main-wrap1 .content-wrap img{
		height: 100%;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.main-wrap2 {
		width: 100%;
		min-width: 1360px;
		margin: 0 auto;
		background-color: #1e237f;
		overflow: hidden;
	}
	.ipad .main-wrap2 {
		min-width: 1280px;
	}
	.main-wrap2 .content-wrap {
		width: 1360px;
		min-height: 500px;
		margin: 0 auto;
		position: relative;
		background: url(../img/m2_bg.png) no-repeat center center;
		background-size: 1360px auto;
		background-color: #fff;
	}
	.ipad .main-wrap2 .content-wrap {
		width: 1280px;
		background: url(../img/m2_bg.png) no-repeat center center;
		background-size: 1280px auto;
		background-color: #fff;
	}
	.main-wrap2 .content-wrap::after {
		content: "";
		display: block;
		width: 500px;
		height: 300px;
		background-color: #1e237f;
		position: absolute;
		top: -20px;
		left: -372px;
		transform: rotate(-60deg);
	}
	.main-wrap2 .content-wrap::before {
		content: "";
		display: block;
		width: 500px;
		height: 300px;
		background-color: #1e237f;
		position: absolute;
		bottom: -20px;
		right: -372px;
		transform: rotate(-60deg);
	}
	.main-wrap2 .content {
		width: 1280px;
		margin: 0 auto;
		padding: 172px 0 140px 0;
		position: relative;
	}
	.ipad .main-wrap2 .content {
		width: 1200px;
	}
	.main-wrap2 h3 {
		width: 100%;
		font-size: 20px;
		text-align: center;
	}
    .main-wrap2 .btn-entry-wrap{
        height: 100%;
        width: 180px;
        display: block;
        position: relative;
        padding: 0;
        margin: 20px auto 0 auto;
    }
	.main-wrap3 {
		width: 100%;
		min-width: 1360px;
		margin: 50px auto 0 auto;
	}
	.ipad .main-wrap3 {
		min-width: 1280px;
	}
	.main-wrap3 .content-wrap {
		width: 1280px;
		margin: 0 auto;
		padding: 70px 76px 70px 76px;
		background-color: #fff;
		position: relative;
	}
	.ipad .main-wrap3 .content-wrap {
		width: 1200px;
	}
	.main-wrap3 .content {
		display: table;
		table-layout: fixed;
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap3 .content .title {
		display: table-cell;
		width: 225px;
		vertical-align: top;
		position: relative;
		overflow: hidden;
	}
	.main-wrap3 .content .title h3 {
		font-size: 18px;
		color: #1e237f;
		line-height: 1.2em;
	}
	.main-wrap3 .content .title::after {
		content: "";
		display: block;
		width: 244px;
		height: 2px;
		background-color: #1e237f;
		position: absolute;
		top: 0;
		left: 134px;
		transform: rotate(122deg);
		transform-origin: top left;
	}
	.main-wrap3 .content .img {
		display: table-cell;
		width: 376px;
		vertical-align: top;
	}
	.main-wrap3 .content .img img{
		width: 100%;
	}
	.main-wrap3 .content .txt {
		display: table-cell;
		vertical-align: top;
		text-align: center;
		padding: 26px 0 0 0;
	}
	.main-wrap3 .content .txt h4 {
		font-size: 26px;
		margin: 0 0 5px 0;
	}
	.main-wrap3 .content .txt span {
		font-size: 20px;
		font-weight: bold;
	}
	.main-wrap3 .content .txt span span {
		font-size: 16px;
	}
    .main-wrap3 .btn-entry-wrap{
        height: 100%;
        width: 180px;
        display: block;
        position: relative;
        padding: 0;
        margin: 20px auto 0 auto;
	}
	.main-wrap4 {
		width: 100%;
		min-width: 1360px;
		padding: 50px 0 0 0;
		margin: 0 auto 0 auto;
	}
	.ipad .main-wrap4 {
		min-width: 1280px;
	}
	.main-wrap4 .content-wrap {
		width: 1280px;
		margin: 0 auto;
		padding: 70px 76px 70px 76px;
		background-color: #fff;
		position: relative;
	}
	.ipad .main-wrap4 .content-wrap {
		width: 1200px;
	}
	.main-wrap4 .content {
		display: table;
		table-layout: fixed;
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap4 .content .title {
		display: table-cell;
		width: 225px;
		vertical-align: top;
		position: relative;
		overflow: hidden;
	}
	.main-wrap4 .content .title h3 {
		font-size: 18px;
		color: #1e237f;
		line-height: 1.2em;
	}
	.main-wrap4 .content .title::after {
		content: "";
		display: block;
		width: 244px;
		height: 2px;
		background-color: #1e237f;
		position: absolute;
		top: 0;
		left: 134px;
		transform: rotate(122deg);
		transform-origin: top left;
	}
	.main-wrap4 .content .listwrap {
		display: table-cell;
		vertical-align: top;
		padding: 20px 0 0 0;
	}
	.main-wrap4 .content .listwrap dl {
		display: table;
		width: 100%;
	}
	.main-wrap4 .content .listwrap dl dt {
		display: table-cell;
		padding: 5px 10px 5px 0;
		font-weight: bold;
		width: 120px;
		font-size: 16px;
	}
	.main-wrap4 .content .listwrap dl dd {
		display: table-cell;
		padding: 5px 0;
		font-size: 16px;
	}
	.main-wrap4 .content .listwrap dl dd a{
		font-size: 16px;
		color: #000;
		border-bottom:1px solid #000;
       	padding-bottom: 3px;
	}
	.main-wrap4 .content .listwrap dl dd a:hover{
		text-decoration: none;
		color: #000;
		border-bottom:1px solid #000;
	}
	.main-wrap4 .content .listwrap .txt {
		display: block;
		width: 100%;
		font-size: 16px;
		margin: 20px 0 10px 0;
	}
	.main-wrap4 .content .listwrap .gmapfr {
		width: 616px;
		height: 462px;
		background-color: #fff;
	}
	.main-wrap4 .content .listwrap .gmapfr .gmap {
		width: 100%;
		height: 100%;
	}
	.main-wrap4 .content .listwrap .gmapfr iframe{
		width: 616px;
		height: 462px;
	}
	.main-wrap5 {
		width: 100%;
		min-width: 1360px;
		margin: 50px auto 0 auto;
	}
	.ipad .main-wrap5 {
		min-width: 1280px;
	}
	.main-wrap5 .content-wrap {
		width: 1280px;
		margin: 0 auto;
		padding: 70px 76px 70px 76px;
		background-color: #fff;
		position: relative;
	}
	.ipad .main-wrap5 .content-wrap {
		width: 1200px;
	}
	.main-wrap5 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap5 .content .title {
		width: 100%;
	}
	.main-wrap5 .content .title h3 {
		width: 100%;
		text-align: center;
		font-size: 30px;
	}
	.main-wrap5 .content .button {
		width: 100%;
	}
    .main-wrap5 .content .button .btn-entry-wrap{
        width: 180px;
        height: 50px;
        display: block;
        position: relative;
        padding: 0;
        margin: 20px auto 20px auto;
	}
	.main-wrap5 .content .button {
		width: 100%;
	}
    .main-wrap .inner .content .button .btn-entry-wrap{
        width: 180px;
        height: 50px;
        display: block;
        position: relative;
        padding: 0;
        margin: 20px auto 20px auto;
	}
	.main-wrap6 {
		width: 100%;
		min-width: 1360px;
		min-height: 517px;
		margin: 70px auto 0 auto;
		background: url(../img/m6_bg.jpg) no-repeat center center;
		background-size: cover;
	}
	.ipad .main-wrap6 {
		min-width: 1280px;
	}
	.main-wrap6 .content-wrap {
		width: 1280px;
		margin: 0 auto;
		padding: 50px 0 50px 0;
		position: relative;
	}
	.ipad .main-wrap6 .content-wrap {
		width: 1200px;
	}
	.main-wrap6 .content {
		width: 710px;
		margin: 0;
		padding: 40px 60px 40px 60px;
		position: relative;
	}
	.main-wrap6 .content::after {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background-color: #fff;
		opacity: 0.7;
		border-radius: 20px;
		z-index: 1;
	}
	.main-wrap6 .content .inner {
		position: relative;
		z-index: 10;
	}
	.main-wrap6 .content .inner .subtitle {
		font-size: 12px;
		font-weight: bold;
		display: inline-block;
		padding: 3px 15px 3px 15px;
		border: solid 2px #000;
		border-radius: 100px;
	}
	.main-wrap6 .content .inner h3 {
		width: 100%;
		margin: 10px 0 0 0;
		font-size: 22px;
	}
	.main-wrap6 .content .inner p {
		width: 100%;
		margin: 16px 0 0 0;
		font-size: 14px;
	}
	.main-wrap6 .content .button {
		width: 100%;
		margin: 30px 0 0 0;
	}
    .main-wrap .btn-entry-wrap{
        width: 180px;
		height: 50px;
        display: block;
        position: relative;
        padding: 0;
    }
    .main-wrap .btn-entry-wrap .btn-entry {
		background-color: #00873b;
        width: 100%;
		height: 50px;
        line-height: 1em;
        display: table;
		table-layout: fixed;
        position: absolute;
        top: 50%;
		left: 0;
        transform: translateY(-50%);
        border-radius: 30px;
        overflow: hidden;
        padding: 0;
        margin: 0;
    }
    .main-wrap .btn-entry-wrap .btn-entry span.txt{
        font-size: 14px;
        color:#fff;
        width: 100%;
        display: table-cell;
		padding: 0 0 0 16px;
		vertical-align: middle;
		text-align: left;
        font-weight: 600;
        overflow: hidden;
    }
    .main-wrap .btn-entry-wrap .btn-entry span.icon{
		width: 52px;
        display: table-cell;
		text-align: center;
		vertical-align: middle;
        overflow: hidden;
    }
    .main-wrap .btn-entry-wrap .btn-entry span.icon span{
		display: inline-block;
        width: 42px;
		height: 42px;
		background-color: #fff;
		border-radius: 50%;
		overflow: hidden;
		vertical-align: middle;
	}
    .main-wrap .btn-entry-wrap .btn-entry span.icon span img{
		width: 100%;
	}
    .main-wrap .btn-entry-wrap .btn-entry:hover{
		background-color: #15a152;
        transition: background-color 0.4s;
    }
}