/***************************
 *
 * トップページ
 * ★ページ中身用★
 *
 **************************/
@media all and (min-width: 737px) {
	/*
MAIN VISUAL
*/
	.main-visual {
		position: relative;
	}
	.main-visual .main-visual-inner {
		position: relative;
	}
	.main-visual-swiper {
		width: 100%;
		padding-bottom: 5px;
	}

	.main-visual-swiper .swiper-wrapper {
		/* transition-timing-function: linear; */
	}
	/* .main-visual-swiper .swiper-slide {
		width: 700px;
	} */
	.main-visual-swiper .swiper-slide {
		width: 100%;
	}
	.main-visual-swiper .swiper-slide img {
		/* border: 5px solid white; */
		height: 721px;
		width: 100%;
		max-width: 100%;
		object-fit: cover;
		box-sizing: border-box;
		display: block;
	}
	/* .main-visual-swiper .swiper-slide img {
		border: 5px solid white;
		box-sizing: border-box;
		display: block;
	} */
	.main-visual .main-visual-content {
		position: absolute;
		left: 50%;
		top: 50%;
		/* width: 700px; */
		max-width: 1200px;
		width: 100%;
		margin: 0 auto;
		height: 100%;
		box-sizing: border-box;
		padding: 0 0px;
		display: flex;
		/* align-items: center; */
		flex-direction: column;
		flex-wrap: wrap;
		z-index: 8;
		justify-content: center;
		transform: translate(-50%, -50%);
	}
	.main-visual .main-visual-content .main-visual-title {
		font-size: 3.6rem;
		line-height: 1.6153846154em;
		color: white;
		font-weight: bold;
		/* padding: 0 40px; */
		position: absolute;
		left: 0;
		top: 130px;
	}
	.main-visual .main-visual-content .main-visual-title > span {
		display: inline-block;
		font-size: 4.3rem;
		font-weight: 500;
		color: #222222;
		z-index: 15;
		background: #fff;
		font-weight: bold;
		padding: 3px 15px;
		margin-bottom: 5px;
		box-shadow: 0px 0px 30px rgba(69, 83, 134, 0.2);
	}
	.main-visual .main-visual-content .main-visual-title span.red {
		color: #d63e46;
	}
	.main-visual .main-visual-content .main-visual-title span.small {
		font-size: 2.1rem;
		line-height: 2em;
		margin-bottom: 10px;
		background: rgba(214, 62, 70, 0.9);
		color: white;
	}
	/* .main-visual .main-visual-content .main-visual-marks {
		width: 100%;
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: 11;
	} */
	.main-visual .main-visual-content .main-visual-marks {
		width: 741px;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		bottom: 20px;
		z-index: 11;
	}
	.main-visual .main-visual-stick-1 {
		position: absolute;
		left: 0;
		bottom: -29px;
		background: url(../img/main-visual-stick-1.png) left bottom no-repeat;
		background-size: contain;
		width: 410px;
		height: 252px;
		z-index: 8;
	}
	.main-visual .main-visual-stick-2 {
		position: absolute;
		right: 0;
		bottom: -29px;
		background: url(../img/main-visual-stick-2.png) right bottom no-repeat;
		background-size: contain;
		width: 489px;
		height: 250px;
		z-index: 8;
	}

	/*
	MAIN INTRO 2
	*/
	.main-intro-2 {
		position: relative;
		padding-bottom: 80px;
	}
	.main-intro-2 .box-content {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 0;
	}
	.list-con-2 {
		position: relative;
		border-top: 1px solid #eeeeee;
		margin-top: 100px;
	}
	.list-con-2 > li {
		border-bottom: 1px solid #eeeeee;
		padding: 30px 10px;
		position: relative;
		padding-left: 115px;
	}
	.list-con-2 > li:after {
		content: "";
		display: block;
		position: absolute;
		right: 10px;
		top: 30px;
		background: url(../img/bullet.png) 0 0 no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		transition: 0.3s ease;
	}
	.list-con-2 > li:hover:after {
		transform: translate3d(10px, 0, 0);
	}
	.list-con-2 .con-link {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 3;
	}
	.list-con-2 .con-pic {
		width: 80px;
		position: absolute;
		left: 10px;
		top: 20px;
	}
	.list-con-2 .con-title {
		font-weight: bold;
		font-size: 2.4rem;
	}
	.list-con-2 .con-caption {
		letter-spacing: 0.2em;
		font-size: 1.3rem;
		color: #33589f;
	}
	.main-intro-2 .main-intro-2-pics {
		position: relative;
	}
	.main-intro-2 .main-intro-2-pics:after {
		content: "";
		display: block;
		position: absolute;
		left: 50px;
		top: -204px;
		background: url(../img/main-intro-2-stick-1.png) 0 0 no-repeat;
		background-size: contain;
		width: 90px;
		height: 136px;
	}
	.main-intro-2 .main-intro-2-pics img:nth-child(1) {
		width: 620px;
		border-top-right-radius: 150px;
		border-bottom-right-radius: 150px;
		border-top-left-radius: 150px;
		border-bottom-left-radius: 150px;
		position: absolute;
		right: 90px;
		top: -70px;
	}
	.main-intro-2 .main-intro-2-pics video {
		width: 260px;
		height: 260px;
		object-fit: cover;
		border-radius: 80px;
		position: absolute;
		left: 0px;
		bottom: -30px;
	}
	.main-intro-2 .main-intro-2-pics img:nth-child(2) {
		width: 260px;
		border-radius: 80px;
		position: absolute;
		left: 0px;
		bottom: 0px;
	}

	/*
	MAIN CON 3
	*/
	.main-con-3 {
		position: relative;
		background: url(../img/main-con-3-bg.jpg) center center no-repeat;
		background-size: cover;
		padding-top: 1px;
		padding-bottom: 60px;
	}
	.main-con-3 .box-content:after {
		content: "";
		display: block;
		position: absolute;
		left: 432px;
		bottom: -84px;
		background: url(../img/main-con-3-stick-1.png) 0 0 no-repeat;
		background-size: contain;
		width: 60px;
		height: 159px;
	}
	.main-con-3 .banners {
		margin-top: -150px;
	}
	.banners {
		position: relative;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 40px;
	}
	.banners .banner {
		position: relative;
	}
	.banners .banner .banner-link {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 3;
	}
	.banners .banner .banner-pic {
		border-radius: 100px;
		overflow: hidden;
		position: relative;
		height: 300px;
		background: #fff;
	}
	.banners .banner .banner-pic:after {
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(42, 51, 69, 0.4);
	}
	.banners .banner .banner-pic img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: opacity 0.4s ease, transform 1.4s ease, -webkit-transform 1.4s ease;
		transform: scale(1);
	}
	.banners .banner .banner-content {
		padding: 25px;
		position: relative;
	}
	.banners .banner .banner-content .banner-title {
		font-weight: bold;
		color: white;
		text-align: left;
		margin-bottom: 10px;
		font-size: 2.4rem;
	}
	.banners .banner .banner-content p {
		color: white;
		font-size: 1.5rem;
	}
	.banners .banner .banner-content:after {
		content: "";
		display: block;
		position: absolute;
		right: 10px;
		top: 30px;
		background: url(../img/arc-link.png) 0 0 no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		transition: 0.3s ease;
	}
	.banners .banner .banner-link:hover + .banner-pic img {
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
		opacity: 0.7;
		-webkit-transition-duration: 0.4s;
		transition-duration: 0.4s;
	}
	.banners .banner .banner-link:hover + .banner-pic + .banner-content:after {
		transform: translate3d(10px, 0px, 0);
	}

	/*
	MAIN USE
	*/
	.main-use {
		position: relative;
		padding-top: 60px;
		padding-bottom: 40px;
	}
	.main-use .title-main {
		position: relative;
		z-index: 3;
	}
	.main-use .title-main:before {
		content: "";
		display: block;
		margin: 0 auto -35px;
		position: relative;
		background: url(../img/main-use-en.png) center top no-repeat;
		background-size: contain;
		width: 732px;
		height: 85.5px;
		z-index: -1;
	}
	.main-use .main-use-stick-1 {
		position: absolute;
		left: 0;
		bottom: -30px;
		background: url(../img/main-use-stick-1.png) 0 0 no-repeat;
		background-size: contain;
		width: 409px;
		height: 252px;
		z-index: 2;
	}
	.main-use .main-use-stick-2 {
		position: absolute;
		right: 0;
		bottom: -30px;
		background: url(../img/main-use-stick-2.png) 0 0 no-repeat;
		background-size: contain;
		width: 490px;
		height: 250px;
		z-index: 2;
	}
	.list-use {
		/* display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-gap: 20px 30px; */
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		max-width: 960px;
		margin: 20px auto;
		align-items: flex-start;
	}
	.list-use > li {
		position: relative;
		background: #f7f7f2;
		border-radius: 150px;
		box-sizing: border-box;
		padding: 20px;
		padding-top: 80px;
		padding-bottom: 65px;
		width: 300px;
		margin-bottom: 20px;
		transition: 0.4s ease;
	}
	.list-use > li:hover {
		transform: translate3d(0, -20px, 0);
		opacity: 0.7;
	}
	.list-use .use-link {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 3;
	}
	.list-use .use-caption-en {
		width: 203px;
		margin: 0 auto;
		position: absolute;
		left: 50%;
		top: 20px;
		transform: translate(-50%, 0);
	}
	.list-use > li:nth-child(2) .use-caption-en {
		width: 109px;
	}
	.list-use > li:nth-child(3) .use-caption-en {
		width: 192.5px;
	}
	.list-use > li:nth-child(4) .use-caption-en {
		width: 124px;
	}
	.list-use > li:nth-child(5) .use-caption-en {
		width: 167.5px;
	}
	.list-use > li:nth-child(6) .use-caption-en {
		width: 179.5px;
	}
	.list-use > li:nth-child(2) {
		margin-top: 70px;
	}
	.list-use > li:nth-child(4) {
		margin-top: -70px;
	}
	.list-use > li:nth-child(6) {
		margin-top: -70px;
	}
	.list-use .use-pic {
		width: 236px;
		margin: 0 auto 20px;
	}
	.list-use .use-title {
		text-align: center;
		font-weight: bold;
		font-size: 2.4rem;
		margin-bottom: 15px;
	}
	.list-use .use-title + p {
		text-align: center;
		font-size: 1.5rem;
	}

	/*
	MAIN EXP
	*/
	.main-exp {
		position: relative;
		background: url(../img/main-exp-bg.jpg) center bottom no-repeat;
		background-size: cover;
		padding-top: 90px;
		padding-bottom: 175px;
	}
	.main-exp .main-exp-header {
		position: relative;
		margin-bottom: 70px;
	}
	.main-exp .main-exp-header .title-main {
		display: inline-block;
	}
	.main-exp .main-exp-header .title-caption {
		display: inline-block;
		color: #33589f;
		margin-left: 20px;
	}
	.main-exp .main-exp-header .btn-text {
		position: absolute;
		right: 0;
		top: 0;
		margin: 0;
	}
	.main-exp-swiper {
		padding-bottom: 50px;
	}
	.main-exp-swiper {
	}
	.main-exp-swiper .swiper-slide {
		width: 380px;
		position: relative;
		padding-top: 20px;
		padding-left: 20px;
		box-sizing: border-box;
	}
	.main-exp-swiper .main-exp-swiper-link {
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 3;
	}
	.main-exp-swiper .main-exp-swiper-pic {
		width: 100px;
		height: 100px;
		border-radius: 100%;
		overflow: hidden;
		position: absolute;
		left: -20px;
		top: -20px;
	}
	.main-exp-swiper .main-exp-swiper-pic img {
		border-radius: 100%;
		width: 100px;
		height: 100px;
		object-fit: cover;
	}
	.main-exp-swiper .main-exp-swiper-item {
		background: #fff;
		position: relative;
		border-radius: 80px;
		padding: 45px 40px 40px 85px;
	}
	.main-exp-swiper .main-exp-swiper-item > p {
		font-size: 1.5rem;
		line-height: 1.7333em;
		color: #221815;
	}
	.main-exp-swiper .main-exp-swiper-item .main-exp-swiper-info {
		border-top: 1px solid #eeeeee;
		margin-top: 15px;
		padding-top: 15px;
	}
	.main-exp-swiper .main-exp-swiper-item .main-exp-swiper-info i {
		color: #f8bd00;
	}
	.main-exp-swiper .swiper-pagination {
		bottom: 0;
	}
	.main-exp-swiper .swiper-pagination .swiper-pagination-bullet {
		background: #fff;
		opacity: 0.3;
	}
	.main-exp-swiper .swiper-pagination .swiper-pagination-bullet-active {
		opacity: 1;
	}
	/*
	MAIN SEMINAR
	*/
	.main-semi {
		position: relative;
		padding-top: 1px;
		padding-bottom: 70px;
	}
	.main-semi .title-main {
		position: relative;
		margin-top: -130px;
	}
	.main-semi .title-main:before {
		content: "";
		display: block;
		background: url(../img/main-semi-ic.png) center top no-repeat;
		background-size: contain;
		width: 86px;
		height: 94px;
		margin: 0 auto;
		position: relative;
		left: 15px;
	}
	.main-semi .title-caption {
		color: #b43b4a;
	}
	.list-semi {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-gap: 30px;
		margin-top: 60px;
		margin-bottom: 45px;
	}
	.list-semi > li {
		position: relative;
		border-radius: 60px;
		background: #f6f5f0;
		box-sizing: border-box;
		padding: 35px;
	}
	.list-semi > li .semi-title {
		text-align: center;
		font-weight: bold;
		margin-bottom: 20px;
		font-size: 2rem;
	}
	.list-semi > li p {
		text-align: center;
		font-size: 1.6rem;
		line-height: 1.875em;
	}
	.main-semi p.center {
		text-align: center;
		font-size: 1.6rem;
		line-height: 1.875em;
	}
	.main-semi .main-semi-stick-1 {
		background: url(../img/main-semi-stick-1.png) 0 0 no-repeat;
		background-size: contain;
		position: absolute;
		right: 50px;
		top: 60px;
		width: 138px;
		height: 170px;
	}
	.main-semi .main-semi-stick-2 {
		background: url(../img/main-semi-stick-2.png) 0 0 no-repeat;
		background-size: contain;
		position: absolute;
		left: 0px;
		bottom: -10px;
		width: 355px;
		height: 169px;
		z-index: 3;
	}
	/*
	MAIN COLUMN
	*/
	.main-column {
		position: relative;
		background: url(../img/bg-blue.jpg) 0 0 repeat;
		background-size: cover;
		padding-top: 40px;
		padding-bottom: 70px;
	}
	.main-column .main-column-stick-2 {
		background: url(../img/main-column-stick-2.png) 0 0 no-repeat;
		background-size: contain;
		position: absolute;
		left: 90px;
		bottom: -105px;
		width: 79px;
		height: 123px;
		z-index: 3;
	}
	.main-column .main-column-top {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 0;
		position: relative;
	}
	.main-column-top .main-column-top-pics {
		position: relative;
		z-index: 3;
	}
	.main-column-top .main-column-top-pics:after {
		content: "";
		display: block;
		position: absolute;
		left: 480px;
		top: 564px;
		background: url(../img/main-column-top-stick-1.png) 0 0 no-repeat;
		background-size: contain;
		width: 97px;
		height: 91px;
		z-index: 4;
	}
	.main-column-top .main-column-top-pics img:nth-child(1) {
		width: 620px;
		border-top-right-radius: 150px;
		border-bottom-right-radius: 150px;
		border-top-left-radius: 150px;
		border-bottom-left-radius: 150px;
		position: absolute;
		left: 90px;
		top: 30px;
		z-index: 3;
	}
	.main-column-top .main-column-top-pics video {
		width: 260px;
		height: 260px;
		object-fit: cover;
		border-radius: 80px;
		position: absolute;
		right: 0px;
		top: 380px;
		z-index: 3;
	}
	.main-column-top .main-column-top-pics img:nth-child(2) {
		width: 260px;
		border-radius: 80px;
		position: absolute;
		left: 280px;
		top: 380px;
		z-index: 3;
	}
	.main-column .main-column-en {
		width: 890px;
		margin: 120px auto -50px;
		position: relative;
	}
	.main-column .main-column-en img {
		opacity: 0.5;
	}
	.main-column .title-main {
		z-index: 6;
		position: relative;
		margin-bottom: 55px;
	}
	/*
	MAIN INSTA
	*/
	.main-insta {
		position: relative;
		padding-top: 70px;
	}
	.main-insta .main-insta-header {
		position: relative;
	}
	.main-insta .main-insta-header .main-insta-title {
		width: 276px;
	}
	.main-insta .main-insta-header .btn-text {
		margin: 0;
		position: absolute;
		right: 0;
		top: 0;
		width: 290px;
	}

	/*
	MAIN NEWS
	*/
	.main-news {
		position: relative;
		padding: 70px;
	}
	.main-news-box {
		position: relative;
		background: url(../img/main-news-box-bg.jpg) 0 0 no-repeat;
		background-size: cover;
		box-sizing: border-box;
		padding: 50px 0;
		display: flex;
		justify-content: space-between;
		align-items: center;
		border-radius: 80px;
		overflow: hidden;
	}
	.main-news-box .main-news-box-l {
		width: 30%;
	}
	.main-news-box .main-news-box-l .btn-text {
		margin-bottom: 0;
	}
	.main-news-box .main-news-box-r {
		width: 70%;
		box-sizing: border-box;
		padding-right: 50px;
	}
	.main-news-box .main-news-box-r .list-news {
		margin-bottom: 0;
	}
	.main-news-box .title-main {
	}
	.main-news-box .title-caption {
		color: #33589f;
	}
	.main-news-box .main-news-box-pic {
		width: 105px;
		margin: 40px auto;
	}

	.cta-btns-wrap {
		margin: 10px auto 30px;
	}
	.cta-btns {
		display: flex;
		justify-content: center;
		gap: 50px;
	}
	.cta-btns p.center {
		text-align: center;
		font-size: 1.8rem;
		margin-bottom: 20px;
	}
	.cta-btns .btn {
		width: 300px;
		margin: 0;
		position: relative;
		overflow: initial;
		border-bottom: 5px solid #334d7f;
		border-radius: 10px;
	}
	.cta-btns .btn:before {
		content: none;
	}
	.cta-btns .btn a:before {
		content: none;
	}
	.cta-btns .btn-l {
		width: 300px;
		margin: 0;
		position: relative;
	}
	.cta-btns .btn-blue a {
		overflow: initial;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
		border-bottom-left-radius: 7px;
		border-bottom-right-radius: 7px;
		background: #40609f;
		/* padding-top: 22px;
		padding-bottom: 22px; */
		font-size: 2rem;
	}
	.cta-btns .btn-blue:hover {
		border-bottom: 5px solid rgba(255, 255, 255, 0);
	}
	.cta-btns .btn-blue a:after {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		margin-left: -130px;
		top: -25px;
		background: url(../img/cta-btn-up-1.png) center center no-repeat;
		background-size: contain;
		width: 260px;
		height: 51px;
		animation: upDown 1s ease-in-out infinite;
	}
	.cta-btns .btn-blue a:hover {
		color: white !important;
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
	}
	.cta-btns .btn-blue a:hover {
		position: relative;
		top: 5px;
	}
	.cta-btns .btn-l,
	.cta-btns .btn-l a,
	.cta-btns .btn-l a img {
		transition: none;
	}
	.cta-btns .btn-l a:hover {
		border-bottom: 5px solid rgba(255, 255, 255, 0);
		position: relative;
		top: 5px;
		opacity: 1;
		transition: none;
		height: 70px;
	}
	.cta-btns .btn-l a:hover img {
		opacity: 1;
	}
	.cta-btns .btn-l a {
		background: #03c510;
		display: flex;
		align-items: center;
		justify-content: center;
		border-bottom: 5px solid #029e0d;
		border-radius: 10px;
		height: 75px;
	}
	.cta-btns .btn-l a img {
		overflow: initial;
		margin: 0 auto;
		display: block;
		position: relative;
		width: 185px;
	}
	.cta-btns .btn-l a:after {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		margin-left: -110px;
		top: -25px;
		background: url(../img/cta-btn-up-2.png) center center no-repeat;
		background-size: contain;
		width: 220px;
		height: 51px;
		animation: upDown 1s ease-in-out infinite;
	}
	@keyframes upDown {
		0% {
			transform: translateY(0);
		}
		50% {
			transform: translateY(-10px);
		}
		100% {
			transform: translateY(0);
		}
	}
}
