@charset "UTF-8";
/* =====================================
    block
===================================== */
.is-ipad video {
	display: none;
}
@media only screen and (min-width: 768px) {
	body {
		min-width: 1024px;
	}	
}

span.ib {
	display: inline-block;
}

/* --------------------------------------------
		twitter 
-------------------------------------------- */
.timeline-Footer {
	border-top: 1px solid #CCCCCC;
}

a.u-floatLeft {
	display: none;
}

/* --------------------------------------------
		header 
-------------------------------------------- */
.hdr {
	position: fixed;
	z-index: 5000;
	top: 0;
	left: 0;
	padding: 9px 20px 0;
	width: 100%;
	height: 50px;
	background: #fff;
	background: rgba(255, 255, 255, 0.96);
}
@media only screen and (min-width: 768px) {
	.hdr {
		padding: 0 15px 10px;
		height: 116px;
	}
}
.hdr > .container {
	padding: 0;
	height: 100%;
}

.hdr_logo {
	margin: 0;
	font-size: 1em;
}
@media only screen and (min-width: 768px) {
	.hdr_logo {
		float: left;
		margin: 40px 0 0 3px;
	}
}

.hdr_btn {
	display: block;
	overflow: hidden;
	position: fixed;
	top: 0;
	right: 0;
	width: 65px;
	height: 50px;
	cursor: pointer;
	background: url(../img/top/biz_hmb_menu.png) 20px 50% no-repeat;
	background-size: 24px 19px;
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media only screen and (min-width: 768px) {
	.hdr_btn {
		display: none;
	}
}

.hdr_link {
	margin: 0 12px;
	border-top: 1px solid #cccccc;
	border-left: 3px solid #ff9900;
	border-right: 3px solid #ff9900;
	color: #ff9900;
	font-weight: bold;
	background-color: #fff;
	padding: 8px;
}
.wd_link {
	margin: 0 12px;
	border-top: 1px solid #f5628d;
	border-left: 3px solid #ff9900;
	border-right: 3px solid #ff9900;
	border-bottom: 3px solid #ff9900;
	border-radius: 0 0 5px 5px;
	color: #f5628d;
	font-weight: bold;
	background-color: #fff2f3;
	padding: 8px;
}
.hdr_link a, .wd_link a {
	display: block;
	position: relative;
	padding: 7px;
	text-align: center;
	text-decoration: none;
	font-size: 18px;
	color: inherit;
	line-height: 1;
}

.hdr_menu {
	display: block;
	z-index: 5001;
	top: 8px;
	left: 0;
	width: 100%;
}
@media only screen and (min-width: 768px) {
	.hdr_menu {
		position: static;
	}
}
@media only screen and (max-width: 767px) {
	.hdr_menu {
		position: fixed;
		transition: opacity .3s ease-out;
		transform: translateX(100%);
		opacity: 0;
	}
	.hdr_menu.open {
		transform: translateX(0);
		opacity: 1;
	}
}


.hdr_menu_tit {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 10.5vw;
	margin: 0 12px;
	border-radius: 5px 5px 0 0;
	border-top: 3px solid #ff9900;
	border-left: 3px solid #ff9900;
	border-right: 3px solid #ff9900;
	cursor: pointer;
	background: #fff url(../img/top/mod-closeBtn.png) right 5% center no-repeat;
	background-size: 5.3vw 5.3vw;
	text-align: center;
	color: #333333;
	font-size: 5.3vw;
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.hdr_menu_tit {
		display: none;
	}
}

.utilitiesNavs {
	position: absolute;
	/* right: 46px;
	bottom: 0;
	font-size: 10px; */
	display: flex;
	justify-content: center;
}
@media only screen and (min-width: 768px) {
	.utilitiesNavs {
		top: 0;
		right: 0;
		bottom: auto;
		font-size: 14px;
	}
}
@media only screen and (max-width: 767px) {
	.utilitiesNavs {
		top: 2px;
		right: 46px;
	}
}

.utilitiesNav {
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: 0px 0px 15px -5px rgba(0, 0, 0, 0.3);
	font-weight: bold;
}
.utilitiesNav.is-current::before {
	content: "";
	display: inline-block;
	background-color: ;
	background-image: url(../img/top/icon-nav-check2.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
}
.utilitiesNav.is-current {
	background-color: #FACE20;
}
.utilitiesNav:not(.is-current) {
	background-color: #bbb;
}
@media only screen and (min-width: 768px) {
	.weddingNav {
		width: auto;
		height: 40px;
		margin-left: 12px;
		margin-right: 3px;
	}
	.utilitiesNav {
		width: 147px;
		height: 40px;
		font-size: 14px;
	}
	.utilitiesNav.is-current::before {
		width: 22px;
		height: 16px;
		margin-right: 4px;
		top: -1px;
	}
	.utilitiesNav:nth-child(1) { border-radius: 0 0 0 13px; }
	.utilitiesNav:nth-child(2) { border-radius: 0 0 13px 0; }
}
@media only screen and (max-width: 767px) {
	.weddingNav {
		display: none;
	}
	.utilitiesNav {
		border-radius: 15px;
		height: 30px;
		width: 30vw;
		font-size: 2.67vw;
	}
	.utilitiesNav.is-current::before {
		width: 18px;
		height: 100%;
		margin-right: 2px;
		top: -2px;
		background-position: center;
	}
	.utilitiesNav:nth-child(1) { margin-right: 5px; }
	/* .utilitiesNav:not(.is-current) { background-color: #eee; } */
	/* .utilitiesNav.is-current { background-color: #ffcc00;	} */
}

.utilitiesNav:not(.is-current):hover {
	background-color: #ff9900;
}
.utilitiesNav a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	transition: color .3s ease-out;
	height: 100%;
	width: 100%;
	color: #fff;
}

/* --------------------------------------------
    heading
-------------------------------------------- */
.biz_hd {
	text-align: center;
	font-weight: bold;
}
.biz_hd span {
	display: inline-block;
	position: relative;
	line-height: 1;
	letter-spacing: 0.2em;
}
.biz_hd span::after {
	content: "";
	position: absolute;
	bottom: -15px;
	left: 0;
	width: 100%;
	
	background-color: #ff9900;
}
@media only screen and (min-width: 768px) {
	.biz_hd {	font-size: 40px; }
	.biz_hd span::after { height: 4px; }
}
@media only screen and (max-width: 767px) {
	.biz_hd { font-size: 5.33vw; }
	.biz_hd span::after { height: 2px; }
}





/* --------------------------------------------
    main
-------------------------------------------- */
.biz_top_main {
	margin: 0 auto;
	overflow-x: hidden;
}
@media only screen and (min-width: 768px) {
	.biz_top_main { }
}
@media only screen and (max-width: 767px) {
	.biz_top_main { max-width: 100vw; }
}





/* --------------------------------------------
    cover
-------------------------------------------- */
.cover {
	overflow: hidden;
	position: relative;
	width: 100%;
	background: url(../img/top/cover-bg-sp5.png) 50% no-repeat;
	background-size: cover;
	text-align: center;
	color: #fff;
}
@media only screen and (min-width: 768px) {
	.cover {
		height: auto;
		max-height: 800px;
	}
}
@media only screen and (max-width: 767px) {
	.cover {
		height: 56.25vw;
	}
}

.biz_cover_hd {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
@media only screen and (min-width: 768px) {
	.biz_cover_hd span { font-size: 44px; }
	.biz_cover_hd span:nth-child(1) { margin-bottom: 30px; }
	.biz_cover_hd span:nth-child(2) { margin-bottom: 60px; }
	.biz_cover_hd small { font-size: 34px; }
}
@media only screen and (max-width: 767px) {
	.biz_cover_hd span { font-size: 4vw; }
	.biz_cover_hd span:nth-child(1) { margin-bottom: 2vw; }
	.biz_cover_hd span:nth-child(2) { margin-bottom: 6vw; }
	.biz_cover_hd small { font-size: 3.2vw; }
}

.cover_award {
	position: absolute;
	z-index: 2;
	top: 10px;
	right: 70px;
	width: 215px;
}

@media (max-width:399px){
	.cover_award {
	left: 50%;
    margin-left: -107.5px;
}
}

.cover_award ul {
	float: right;
	width: 215px;
}
.cover_award li {
	float: left;
	margin: 0 0 0 15px;
}

.cover_award ul.hidden-pc li{width: 100px;}

.cover_award ul.hidden-pc li:first-child {
	margin: 0;
}

@media only screen and (min-width: 768px) {
	.cover_award {
		top: 20px;
		right: 50%;
		margin: 0 -500px 0 0;
		width: 1000px;
		height: 200px;
	}
	.cover_award ul {
		width: 457px;
		margin: 0 7px 0 0;
	}
	.cover_award li {
		margin: 0 0 0 25px;
	}
}

.cover_txt {
	position: absolute;
	z-index: 2;
}
@media only screen and (min-width: 768px) {
	.cover_txt {
		width: 100%;
		height: 100%;
	}
}
@media only screen and (max-width: 767px) {
	.cover_txt {
		width: 100%;
		height: 100%;
	}
}

#cover_link_txt {
	position: fixed;
	z-index: 100;
	right: 0;
	bottom: 0;
	left: 0;
	margin: 0 auto;
	width: 95%;
	transition: opacity 0.4s, bottom 0.4s, z-index;
	/* background: url(../img/top/cover_link-sp.png) 0 0 no-repeat; */
	background-size: 309px 84px;
	filter: drop-shadow(0 4px 8px #000);
	z-index: 1000;
}
#cover_link_txt a {
	display: block;
	overflow: hidden;
	width: 100%;
	height: 40px;
	white-space: nowrap;
	text-align: center;
	color: #fff;
	padding: 8px 0;
	font-size: 14px;
	line-height: 1em;
}
#cover_link_txt .contact_btn { margin: 0 0 5px; }
@media only screen and (min-width: 768px) {
	#cover_link_txt {
		width: 400px;
		height: 80px;
	}
	#cover_link_txt a {
		height: 70px;
		padding: 17px 0;
		font-size: 22px;
	}
}

#cover_link_img {
	position: fixed;
	z-index: 100;
	right: 0;
	bottom: 0;
	left: 0;
	margin: 0 auto;
	width: 83.47vw;
	height: 19.6vw;
	transition: opacity 0.4s, bottom 0.4s, z-index;
	background: url(../img/top/cover_link_sp_2021.png) 0 0 no-repeat;
	background-size: 83.47vw 19.6vw;
	filter: drop-shadow(0 4px 8px #000);
}
#cover_link_img a {
	display: inline-block;
	overflow: hidden;
	width: 100%;
	height: 100%;
	white-space: nowrap;
	text-indent: 100%;
}
@media only screen and (min-width: 768px) {
	#cover_link_img {
		left: 630px;
		width: 372px;
		height: 147px;
		background: url(../img/top/cover_link_pc_2021.png) 0 0 no-repeat;
		background-size: contain;
	}
	#cover_link_img:hover {
		/* background: url(../img/top/cover_link-pc_ov.png) 0 0 no-repeat; */
		filter: brightness(105%);
	}
}
#cover_link_img.is-hide,
#cover_link_txt.is-hide {
	opacity: 0;
	z-index: -1;
	bottom: -140px;
	transition: opacity 0.4s, bottom 0.4s, z-index 0s 0.4s;
}

.cover_tit {
	font-size: 16px;
	font-weight: normal;
	line-height: 1.2;
}
@media only screen and (min-width: 768px) {
	.cover_tit {
		font-size: 46px;
	}
}

.cover_logo {
	display: inline-block;
	margin: 8px 0 4px 3px;
}
@media only screen and (min-width: 768px) {
	.cover_logo {
		margin: 20px 0 7px -15px;
	}
}

/* @media only screen and (min-width: 768px) { */
	.cover_fillter {
		position: absolute;
		z-index: 1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(102, 102, 102, 0.3);
	}
/* } */

.cover_movWrap {
	display: block;
	overflow: hidden;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}
@media only screen and (max-width: 767px) {
	.cover_movWrap {
			width: 100%;
	}
	.cover_movWrap video {
		width: 100%;
	}
}

@media only screen and (min-width: 768px) {
	.cover_mov {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}

@media only screen and (min-width: 768px) {
	.cover_btn {
		margin-top: 25px;
		margin-left: 3px;
		font-size: 0;
	}
	.cover_btn a:hover {
		opacity: 0.8;
	}
}





/* --------------------------------------------
    anounce
-------------------------------------------- */
.biz_announce {
	background-color: #ffcc00;
	text-align: center;
	font-size: 4.67vw;
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.biz_announce {
		font-size: 36px;
	}
	.biz_announce .inner {
		background-image: url(../img/top/bg_ana.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		margin: 0 auto;
		min-width: 1050px;
		max-width: 1280px;
		padding: 65px 0 55px;
	}
}
@media only screen and (max-width: 767px) {
	.biz_announce .inner {
		padding: 5.33vw 0;
	}
}

.biz_announce .newyear {
    background-image: none;
    padding: 0 0 0 0;
    margin: 0 auto 0 auto;
}
@media only screen and (max-width: 767px) {
    .biz_announce .newyear {
        background-image: none;
        padding: 0 0 0 0;
        margin: 0 auto 0 auto;
    }
}

.biz_announce .newyear p {
	font-size: 24px;
    padding: 11px 0 9px 0;
}
@media only screen and (max-width: 767px) {
    .biz_announce .newyear p {
		font-size: 3vw;
        padding: 8px 0 8px 0;
    }
}

.biz_announce .bx-wrapper {
	background-color: transparent;
	border: none;
	margin-bottom: 0;
	box-shadow: none;
}
.biz_announce #count_num {
	font-size: 9.33vw;
	line-height: 1.2;
}
@media only screen and (min-width: 768px) {
	.biz_announce #count_num {
		font-size: 100px;
	}
}

.biz_announce .note {
	font-size: 2.67vw;
}
@media only screen and (min-width: 768px) {
	.biz_announce .note {
		margin-top: 10px;
		font-size: 17px;
	}
}





/* --------------------------------------------
    about
-------------------------------------------- */
#about .inner {
	
}
@media only screen and (min-width: 768px) {
	#about .inner {
		width: 1000px;
		margin: 0 auto;
		padding: 100px 0 90px;
	}
}

.about_lead {
	line-height: 1.5;
	text-align: center;
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.about_lead {
		font-size: 40px;
		margin-bottom: 60px;
	}
}
@media only screen and (max-width: 767px) {
	.about_lead {
		font-size: 4vw;
		padding: 10.6vw 0;
	}
}

.about_lead span {
	color: #ff9900;
}

.about_slider_wrap .bx-wrapper {
	box-shadow: none;
}

.about_slider_wrap .bx-pager-link {
	background-color: #cccccc!important;
}

.about_slider_wrap .bx-pager-link:hover,
.about_slider_wrap .bx-pager-link.active {
	background-color: #ffcc00!important;
}
@media only screen and (min-width: 768px) {
	.about_slider_wrap .bx-pager-item {
		margin: 0 8px!important;
	}
	.about_slider_wrap .bx-pager-link {
		width: 15px!important;
		height: 15px!important;
		border-radius: 7.5px!important;
	}
}
@media only screen and (max-width: 767px) {
	.about_slider_wrap .bx-pager-item {
		margin: 0 2px!important;
	}
	.about_slider_wrap .bx-pager-link {
		width: 8px!important;
		height: 8px!important;
		border-radius: 4px!important;
	}
}

.about_txt {
	font-weight: bold;
	text-align: center;
}
@media only screen and (min-width: 768px) {
	.about_txt {
		line-height: 1.5;
		font-size: 24px;
	}
	.about_txt:nth-child(3) { margin-top: 90px; }
	.about_kind + .about_txt { margin-top: 100px;	}
}
@media only screen and (max-width: 767px) {
	.about_txt {
		line-height: 1.7;
		font-size: 4vw;
		margin-top: 1em;
	}
}

.about_kind {
	display: flex;
}
@media only screen and (min-width: 768px) {
	.about_kind {
		justify-content: space-between;
		margin-top: 60px;
	}
}
@media only screen and (max-width: 767px) {
	.about_kind {
		flex-direction: column;
		margin: 10.67vw 2.67vw 10.67vw 2.67vw;
	}
}

.about_kind li {
	display: flex;
	align-items: center;
}
@media only screen and (min-width: 768px) {
	.about_kind li {
		width: 33%;
		flex-direction: column;
		
	}
	.about_kind li:not(:last-child) {
		border-right: 1px solid #cccccc;
	}
}
@media only screen and (max-width: 767px) {
	.about_kind li { padding: 2.67vw 4vw;	}
	.about_kind li:nth-child(1) { background-color: #f5fddd; }
	.about_kind li:nth-child(2) { background-color: #e7f9fe; margin-top: 2.67vw; }
	.about_kind li:nth-child(3) { background-color: #fff2f5; margin-top: 2.67vw; }
}

.about_kind li p {
	line-height: 1.5;
}
@media only screen and (min-width: 768px) {
	.about_kind li p {
		width: 300px;
		margin-top: 30px;
		font-size: 20px;
	}
}
@media only screen and (max-width: 767px) {
	.about_kind li p {
		font-size: 4vw;
	}
}

@media only screen and (max-width: 767px) {
	.about_kind li img {
		width: 29.3vw;
		margin-right: 4vw;
	}
}

@media only screen and (min-width: 768px) {
	.about_img {
		margin-top: 50px;
	}	
}
@media only screen and (max-width: 767px) {
	.about_img {
		margin-top: 6.67vw;
		width: 70%;
	}	
}





/* --------------------------------------------
    renewal
-------------------------------------------- */
#renewal {
	background-color: #e9e9e9;
	background-position: top center;
	background-repeat: no-repeat;
	text-align: center;
	color: #fff;
}
@media only screen and (min-width: 1350px) {
	#renewal { padding: 100px 0 110px; background-size: 1920px 845px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	#renewal { padding: 7.4vw 0 8.15vw; background-size: 142.22vw 62.6vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	#renewal { padding: 77.78px 0 85.56px; background-size: 1493.33px 657.22px; }
}
@media only screen and (min-width: 768px) {
	#renewal { background-image: url(../img/top/bg_renewal.jpg); }
}
@media only screen and (max-width: 767px) {
	#renewal { padding: 14vw 0 8vw 0; background-image: url(../img/top/bg_renewal_sp.jpg); background-size: 117%; }
}

#renewal .inner {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
@media only screen and (min-width: 1350px) {
	#renewal .inner { padding-bottom: 500px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	#renewal .inner { padding-bottom: 37.04vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	#renewal .inner { padding-bottom: 388.8px; width: 1050px;}
}
@media only screen and (min-width: 768px) {
	#renewal .inner {
		max-width: 1350px;
		min-width: 1050px;
	}
}
@media only screen and (max-width: 767px) {
	#renewal .inner {
		width: 96%;
		padding-bottom: 47vw;
	}
}

.reewnal_txt {
	font-weight: bold;
	line-height: 1;
}
.reewnal_txt:nth-child(3) { line-height: 1.7; }
@media only screen and (min-width: 1350px) {
	.reewnal_txt:nth-child(1) { font-size: 34px; margin-bottom: 45px;}
	.reewnal_txt:nth-child(2) { font-size: 68px; margin-bottom: 60px;}
	.reewnal_txt:nth-child(3) { font-size: 34px; margin-bottom: 65px;}
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.reewnal_txt:nth-child(1) { font-size: 2.51vw; margin-bottom: 3.33vw;}
	.reewnal_txt:nth-child(2) { font-size: 5.00vw; margin-bottom: 4.44vw;}
	.reewnal_txt:nth-child(3) { font-size: 2.51vw; margin-bottom: 4.81vw;}
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.reewnal_txt:nth-child(1) { font-size: 26.44px;  margin-bottom: 34.965px;}
	.reewnal_txt:nth-child(2) { font-size: 52.89px; margin-bottom: 46.62px;}
	.reewnal_txt:nth-child(3) { font-size: 26.44px; margin-bottom: 50.505px;}
}
@media only screen and (max-width: 767px) {
	.reewnal_txt:nth-child(1) { font-size: 3vw;  margin-bottom: 4.67vw;}
	.reewnal_txt:nth-child(2) { font-size: 5.1vw; margin-bottom: 3vw;}
	.reewnal_txt:nth-child(3) { font-size: 4vw; margin-bottom: 0; line-height: 1.6;}
}

/*虫眼鏡アイコン*/
.toggle_box {
	position: absolute;
	display: block;
}
@media only screen and (min-width: 1350px) {
	.toggle_box { bottom: 333px; right: 300px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.toggle_box { bottom: 24.67vw; right: 22.22vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.toggle_box { bottom: 259.06px; right: 233.31px; }
}
@media only screen and (min-width: 768px) {
	.toggle_box { width: 60px; height: 60px;	}
}
@media only screen and (max-width: 767px) {
	.toggle_box { 
		width: 10.67vw;
		height: 10.67vw;
		bottom: 28vw;
		right: 20vw;
	}
}

/*説明ウインドウ*/
.renewal_box {
	display: none;
	position: absolute;
	border-radius: 5px;
	color: #fff;
	text-align-last: left;
}
@media only screen and (min-width: 1350px) {
	.renewal_box { right: 110px; bottom: 423px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.renewal_box { right: 8.14vw; bottom: 31.91vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
		.renewal_box { right: 85.47px; bottom: 335.06px; }
}
@media only screen and (min-width: 768px) {
	.renewal_box {
		font-size: 17px;
		line-height: 1.8;
		width: 380px;
		padding: 25px;
		background-color: rgba(0, 0, 0, 0.6);
	}
}
@media only screen and (max-width: 767px) {
	.renewal_box {
		line-height: 1.7;
		padding: 3vw;
		right: 0;
		bottom: 42vw;
		font-size: 14px;
		width: 100%;
		background-color: rgba(0, 0, 0, 0.8);
	}
}
#renewal img {
	position: absolute;
}
.renewal_img_pc {
	bottom: 0;
}

/*PC画像*/
@media only screen and (min-width: 1350px) {
	.renewal_img_pc { width: 875px; left: 40px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.renewal_img_pc { width: 64.81vw; left: 2.96vw;}
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.renewal_img_pc { width: 680.5px; left: 31.08px;}
}
@media only screen and (max-width: 767px) {
	.renewal_img_pc { width: 63vw; left: 0;}
}

/*コントローラー画像*/
.renewal_img_ctlr {
	bottom: 1.33vw;
}
@media only screen and (min-width: 1350px) {
	.renewal_img_ctlr {	width:353px; right: 123px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.renewal_img_ctlr {	width: 26.14vw; right: 9.11vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.renewal_img_ctlr {	width: 274.47px; right: 95.66px; }
}
@media only screen and (max-width: 767px) {
	.renewal_img_ctlr {	width: 30vw; right: 5.33vw; }
}

/*はめ込み動画*/
.renewal_video_wrap {
	position: absolute;
}
.renewal_video_wrap video {
	width: 100%;
}
@media only screen and (min-width: 1350px) {
	.renewal_video_wrap { left: 195px; bottom: 150px; width: 576px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.renewal_video_wrap { left: 14.44vw; bottom: 11.11vw; width: 42.67vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.renewal_video_wrap { left: 151.62px; bottom: 116.67px; width: 448.04px; }
}
@media only screen and (max-width: 767px) {
	.renewal_video_wrap { left: 10.95vw; bottom: 10.7vw; width: 41.8vw; }
}



/* ----------------------
    ニュースリリース
---------------------- */
@media only screen and (min-width: 768px) {
	#news {	padding: 80px 0; }
}
@media only screen and (max-width: 767px) {
	#news {	padding: 10.66vw 0; }
}

#news .inner {
	margin: 0 auto;
}
@media only screen and (min-width: 768px) {
	#news .inner { width: 1000px; }
}
@media only screen and (max-width: 767px) {
	#news .inner { width: 96vw;	}
}
.news_lists {
	overflow: hidden;
}
@media only screen and (min-width: 768px) {
	.news_lists {
		margin-top: 50px;
		margin-bottom: 20px;
		padding :10px;
	}
}
@media only screen and (max-width: 767px) {
	.news_lists {
		margin-top: 8vw;
		margin-bottom: 1.6vw;
		padding :0 5px ;
	}
}

.news_list {
	position: relative;
	overflow: hidden;
	box-shadow: 0px 0px 15px -5px rgba(0, 0, 0, 0.3);
	box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
	.news_list { margin-bottom: 30px; border-radius: 15px;	}
	.news_list::after {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		border-radius: 15px;
		pointer-events: none;
		transition: border-color .1s ease-out;
		border: 5px solid transparent;
	}
	.news_list:hover::after {
		border: 5px solid #ff9900;
	}
}
@media only screen and (max-width: 767px) {
	.news_list { margin-bottom: 3vw; border-radius: 2vw;	}
}

.news_list a {
	display: flex;
	text-decoration: none;
	align-items: center;
	position: relative;
}

@media only screen and (min-width: 768px) {
	.news_list a::after {
		content: "";
		position: absolute;
		top: 0;
		display: block;
		height: 100%;
		background-image: url(../img/top/icon-biz-window-open.png);
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		width: 50px;
		right: 20px;
	}
}

.news_list_thumb img {
	width: 100%;		
}
@media only screen and (min-width: 768px) {
	.news_list_thumb { width: 120px; height: 120px;	}
}
@media only screen and (max-width: 767px) {
	.news_list_thumb { width: 16vw; height: 16vw; flex-shrink: 0;}
}

.news_list_tit {
	position: relative;
}
@media only screen and (min-width: 768px) {
	.news_list_tit { padding: 0 0 0 40px; }
}
@media only screen and (max-width: 767px) {
	.news_list_tit { 
		padding: 0 3vw; 
		font-weight: normal; 
		font-size: 3.2vw; 
	}
}

.news_more {
    display: none;
}

.news_accordion_btn {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	margin: 0 auto;
	border-radius: 12px;
	border: 5px solid #ff9900;
	background-color: #ff9900;
	box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.2);
	transition: background-color .3s ease-out;
}
@media only screen and (min-width: 768px) {
	.news_accordion_btn { height: 75px; width: 270px; }
	.news_accordion_btn:hover {
		background-color: #fff;
	}
}
@media only screen and (max-width: 767px) {
	.news_accordion_btn { height: 10vw; width: 36vw; margin-top: 8vw; }
}
.news_accordion_btn::after {
	content: "";
	position: absolute;
	display: block;
	height: 100%;
	background-image: url(../img/top/icon-arrow-circle-invert.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
@media only screen and (min-width: 768px) {
	.news_accordion_btn::after { width: 36px;	right: 20px; }
	.news_accordion_btn:hover::after {
		background-image: url(../img/top/icon-arrow-circle.png);
	}
}
@media only screen and (max-width: 767px) {
	.news_accordion_btn::after { width: 4.8vw;	right: 2vw; }
}

.news_accordion_btn .txt_close { display: none; }
.news_accordion_btn.act .txt_open {	display: none; }
.news_accordion_btn.act .txt_close { display: inline; }
.news_accordion_btn.act::after { transform: rotate(180deg); }

.news_accordion_btn span {
	position: relative;
	color: #fff;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.1em;
}
@media only screen and (min-width: 768px) {
	.news_accordion_btn span {
		font-size: 24px;
		transform: translateX(-10px);
	}
	.news_accordion_btn:hover span {
		color: #ff9900;
	}
}
@media only screen and (max-width: 767px) {
	.news_accordion_btn span {
		font-size: 12px;
		transform: translateX(-1vw);
	}
}





/* --------------------------------------------
    できること
-------------------------------------------- */
#able {
	background-color: #fff2bf;
}
@media only screen and (min-width: 768px) {
	#able { padding: 60px 0; }
}
@media only screen and (max-width: 767px) {
	#able {	padding: 10.66vw 0; }
}

#able .inner {
	margin: auto;
}
@media only screen and (min-width: 768px) {
	#able .inner { width: 1000px;	}
}
@media only screen and (max-width: 767px) {
	#able .inner { width: 96vw;	}
}

@media only screen and (min-width: 768px) {
	#able .biz_hd { margin-bottom: 60px; }
}
@media only screen and (max-width: 767px) {
	#able .biz_hd { margin-bottom: 8vw; }
}

.able-item {
	background-color: #fff;
	border-radius: 15px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
	.able-item { padding: 25px 40px 40px;	}
	.able-item:not(:last-child) {	margin-bottom: 60px; }
}
@media only screen and (max-width: 767px) {
	.able-item { padding: 5.33vw;	}
	.able-item:not(:last-child) {	margin-bottom: 3vw; }
}

.able-ttl {
	display: flex;
	width: 100%;
	align-items: center;
	font-weight: bold;
}
.able-ttl p {
	letter-spacing: 0.025em;
	line-height: 1;
}
@media only screen and (min-width: 768px) {
	.able-ttl { margin-bottom: 30px; }
	.able-ttl p {	display: flex; align-items: flex-end; }
	.able-ttl img { margin-right: 20px; }
	.able-ttl span { font-size: 24px; }
	.able-ttl strong { font-size: 34px; }
}
@media only screen and (max-width: 767px) {
	.able-ttl { margin-bottom: 4vw; }
	.able-ttl p {	display: flex; flex-direction: column; justify-content: space-between; height: 100%; }
	.able-ttl img { margin-right: 3vw; width: 10.13vw; }
	.able-ttl span { font-size: 4vw; }
	.able-ttl strong { font-size: 5.33vw; }
}

.able-item-right,
.able-item-left {
	width: 100%;
}
@media only screen and (min-width: 768px) {
	.able-item-left { width: 43%; }
	.able-item-right { width: 52%; }
}
@media only screen and (max-width: 767px) {
	.able-item-left { position: relative; }
}

.able-tags {
	display: flex;
	color: #fff;
}
.able-tags li {
	border: 3px solid transparent;
	display: flex;
	justify-content: center;
	align-items: center;
}
.able-tags .open   { background-color: #99cc00; border-color: #cef754; }
.able-tags .closed { background-color: #00ccff; border-color: #85e3fb; }
.able-tags .quiz   { background-color: #ff3366; border-color: #fd7d9d; }
@media only screen and (min-width: 768px) {
	.able-tags li {
		border-radius: 20px;
		margin-right: 10px;
		height: 35px;
		width: 110px;
		font-size: 15px;
	}
}
@media only screen and (max-width: 767px) {
	.able-tags {
		margin: 3vw auto;
		justify-content: center;
	}
	.able-tags li {
		border-radius: 20px;
		height: 8vw;
		width: 23vw;
		font-size: 12px;
	}
	.able-tags li:not(:last-child) { margin-right: 1.2vw; }
}

@media only screen and (min-width: 768px) {
	.able-txt {
		margin-top: 30px;
		font-size: 17px;
		line-height: 1.8;
	}
}
@media only screen and (max-width: 767px) {
	.able-txt {
		font-size: 4vw;
	}
}

.able-btn-movie {
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;	
	text-decoration: none;
}
@media only screen and (min-width: 768px) {
	.able-btn-movie {
		margin: 20px auto 0;
		width: 240px;
		height: 40px;
		border-radius: 20px;
		font-size: 17px;
		border: 5px solid #ff9900;
		box-shadow: 0px 0px 15px -5px rgba(0, 0, 0, 0.3);
		transition: all .3s ease-out;
		background-color: #ff9900;
		color: #fff;
	}
	.able-btn-movie:hover {
		color: #ff9900;
		background-color: #fff;
	}
}

@media only screen and (max-width: 767px) {
	.able-btn-movie { 
		color: transparent;
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background-image: url(../img/top/icon-play.png);
		background-repeat: no-repeat;
		background-size: 16vw;
		background-position: center;
	}
}




/* --------------------------------------------
    選ばれる理由
-------------------------------------------- */
@media only screen and (min-width: 768px) {
	#reason {	padding: 70px 0; }	
}
@media only screen and (max-width: 767px) {
	#reason {	padding: 10.66vw 0; }
}

#reason .inner {
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (min-width: 768px) {
	#reason .inner { width: 1000px; }
}
@media only screen and (max-width: 767px) {
	#reason .inner { width: 96vw; }
}

.reason_lead {
	font-weight: bold;
	line-height: 1.7;
	text-align: center;
}
@media only screen and (min-width: 768px) {
	.reason_lead {
		margin-top: 50px;
		font-size: 24px;
		margin-bottom: 60px;
	}
}
@media only screen and (max-width: 767px) {
	.reason_lead {
		margin-top: 8vw;
		font-size: 4vw;
		margin-bottom: 8vw;
	}
}

.reason_item p {
	line-height: 1.7;
}
@media only screen and (min-width: 768px) {
	.reason_item p { font-size: 17px;	}	
}

@media only screen and (max-width: 767px) {
	.reason_item + .reason_item {
		margin-top: 4vw;
	}
}

@media only screen and (max-width: 767px) {
	.reason_item img { margin-top: 2vw;	}	
}

.reason_item.full_width {
	position: relative;
}
@media only screen and (min-width: 1350px) {
	.reason_item.full_width { padding: 50px 0 580px; background-size: 1920px 594px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.reason_item.full_width { padding: 3.7vw 0 43vw; background-size: 142.22vw 44vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.reason_item.full_width { padding: 38.89px 0 451.11px; background-size: 1493.33px 462px; }
}
@media only screen and (min-width: 768px) {
	.reason_item.full_width {
		background-color: #f5f5f5;
		background-image: url(../img/top/bg-reason.png);
		background-position: top center;
		background-repeat: no-repeat;
	}
}

@media only screen and (min-width: 768px) {
	.reason_item.full_width .inner {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

@media only screen and (min-width: 768px) {
	.reason_item.full_width p {
		width: 530px;
	}	
}

@media only screen and (min-width: 768px) {
	.reason_item.full_width img {
		position: absolute;
	}
}

@media only screen and (min-width: 1350px) {
	.reason_full_img_pc { width: 1278px; bottom: 50px; }
}
@media only screen and (min-width: 1050px) and (max-width: 1349px) {
	.reason_full_img_pc { width: 94.7vw; bottom: 3.7vw; }
}
@media only screen and (min-width: 768px) and (max-width: 1049px) {
	.reason_full_img_pc { width: 994px; bottom: 38.89px; }
}
@media only screen and (min-width: 768px) {
	.reason_full_img_pc {
		transform: translateX(-50%);
		left: 50%;
	}
}
@media only screen and (max-width: 767px) {
	.reason_full_img_pc {
		background-color: #f3f3f3;
		padding: 6vw 2vw;
		margin: 4vw 0 2vw;
	}
}

.reason_item.inner:not(:last-child) {
	border-bottom: 1px solid #cccccc;
}
@media only screen and (min-width: 768px) {
	.reason_item.inner {
		margin-top: 40px;
		padding-bottom: 40px;
		display: flex;
		justify-content: space-between;
	}
}
@media only screen and (max-width: 767px) {
	.reason_item.inner {
		padding-bottom: 4vw;
	}
}

@media only screen and (min-width: 768px) {
	.reason_item_left {
		width: 430px;
	}
}

.reason_baloon {
	position: relative;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: #ffcc00;
	border-radius: 10px;
}
.reason_baloon::after {
	content: "";
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
}
@media only screen and (min-width: 768px) {
	.reason_baloon { width: 430px; height: 108px; }
	.reason_baloon.right::after {
		background-image: url(../img/top/baloon-arrow-right.png);
		transform: translate(100%, -50%);
		top: 50%;
		right: 0;
		width: 20px;
		height: 18px;
	}
	.reason_baloon.bottom::after {
		background-image: url(../img/top/baloon-arrow-bottom.png);
		transform: translate(-50%, 90%);
		bottom: 0;
		left: 50%;
		width: 29px;
		height: 14px;
	}
	.reason_baloon span   { font-size: 20px; }
	.reason_baloon strong { font-size: 40px; }
}
@media only screen and (max-width: 767px) {
	.reason_baloon { width: 100%; height: 16vw; }
	.reason_baloon::after {
		background-image: url(../img/top/baloon-arrow-bottom.png);
		transform: translate(-50%, 95%);
		bottom: 0;
		left: 50%;
		width: 4vw;
		height: 3vw;
	}
	.reason_baloon span   { font-size: 4vw; }
	.reason_baloon strong { font-size: 5.33vw; }
}

@media only screen and (min-width: 768px) {
	.reason_item.inner .reason_baloon + p {
		margin-top: 40px;
	}
}
@media only screen and (max-width: 767px) {
	.reason_baloon + p {
		margin-top: 5.33vw;
		font-size: 15px;
	}
}


/* --------------------------------------------
    事例
-------------------------------------------- */
#example {
	background-color: #fff2bf;
}
@media only screen and (min-width: 768px) {
	#example { padding: 75px 0 80px; }
}
@media only screen and (max-width: 767px) {
	#example {	padding: 10.66vw 0; }
}

.example_lists {
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	position: relative;
}
.example_lists::after {
	content: "";
	display: block;
	width: 100%;
	height: 60px;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #fff2bf; /* Old browsers */
/*	background: linear-gradient(to bottom, transparent 0%, #fff2bf 100%); */ /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	background: linear-gradient(to bottom, rgba(255, 242, 191, 0) 0%, rgba(255, 242, 191, 1) 100%);
}
.example_lists.act::after {
	content: none;
}
@media only screen and (min-width: 768px) { 
	.example_lists { margin-top: 60px; width: 1000px; }
	.example_lists + .news_accordion_btn { margin-top: 60px; }
}
@media only screen and (max-width: 767px) {
	.example_lists { margin-top: 8vw; width: 96vw; }
	.example_lists + .news_accordion_btn { margin-top: 8vw; }
}

.example_lists article {
	position: relative;
	background-color: #fff;
	
	overflow: hidden;
}
@media only screen and (min-width: 768px) {
	.example_lists article {
		padding: 30px;
		display: flex;
		border-radius: 18px;
		justify-content: space-between;
		border: 4px solid #fccd00;
	}
	.example_lists article:not(:last-child) {
		margin-bottom: 40px;
	}
}
@media only screen and (max-width: 767px) {
	.example_lists article {
		padding: 4vw;
		border: 2px solid #fccd00;
		border-radius: 2.4vw;
	}
	.example_lists article:not(:last-child) {
		margin-bottom: 4vw;
	}
}

.example_lists article.new::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 120px;
	height: 120px;
	background-image: url(../img/top/icon-example-new.png);
	background-repeat: no-repeat;
	background-size: contain;
}
@media only screen and (min-width: 768px) {
	.example_lists article.new::before { width: 120px; height: 120px; }
}

.example_img {

}
.example_img img { width: 100%; }
@media only screen and (min-width: 768px) {
	.jsModal,
	.example_img {
		width: 360px;
	}
	.example_img img {
		width: 360px;
		object-fit: cover;
	}
}
@media only screen and (max-width: 767px) {
	.example_img img {
		width: 86.93vw;
	}
}

.example_txt {
	line-height: 1.7;
}
@media only screen and (min-width: 768px) {
	.example_txt { width: 520px; }
	.example_txt h3 { font-size: 24px; }
	.example_txt p { font-size: 17px;	margin-top: 1em; }
}
@media only screen and (max-width: 767px) {
	.example_txt h3 { font-size: 4vw; margin-top: 4vw; }
	.example_txt p { font-size: 4vw;	margin-top: 4vw; }
}

.example_more {
	display: none;
}
@media only screen and (min-width: 768px) {
	.example_more {
		margin-bottom: 40px;
	}
}





/* --------------------------------------------
    Map
-------------------------------------------- */
@media only screen and (min-width: 768px) {
	#map { padding: 80px 0;	}
}
@media only screen and (max-width: 767px) {
	#map { padding: 8vw 0;	}
}
#map .biz_hd small {
	font-size: inherit;
	letter-spacing: 0;
	margin-right: 0.01em;
}
@media only screen and (min-width: 768px) {

}
.op7 {
	opacity: 0.7;
}


#operation-map .inner {
	margin: 0 auto;
	width: 98%;
	padding-bottom: 20px;
}
.sec.sec-yellow {
	background-color: #fbcf21;
}
.contents-body .sec-yellow.yellow2 h2 {
	color: #222;
	border-bottom-color: #222;
}

#map-cnt {
	position: relative;
	width: 100%;
}
@media only screen and (min-width: 768px) {
	#map-cnt { margin-top: 60px; }
}
@media only screen and (max-width: 767px) {
	#map-cnt { margin-top: 8vw; }
}
#map-cnt .map-img {
	position: relative;
	border: 5px solid #ffcc00;
}
#map-canvas {
	width: 100%;
	padding: 0 0 61%;
	height: 0;
}
#map-cnt .annotation {
	background: #fff;
	padding: 6px 10px 16px;
	line-height: 1.1em;
	font-weight: 600;
	color: #f54067;
	padding-left: 20px;
}
#map-cnt .annotation small {
	display: block;
	color: #000;
	margin-top: 1em;
	margin-left: 6px;
	text-indent: -1em;
}
#map-cnt + p {
	text-align: center;
}

@media only screen and (min-width: 768px) {
	#operation-map .inner {
		width: 1000px;
	}
	#map-cnt .annotation {
		font-size: 1.875rem;
	}
	#map-cnt .annotation small {
		font-size: .9375rem;
		margin-left: -10px;
		text-indent: 0;
	}
	#map-cnt + p {
		margin-top: 40px;
		font-size: 32px;
		line-height: 1.3;
	}
	#map-cnt + p small {
		font-size: 12px;
	}
}
@media only screen and (min-width: 1024px) {
	#operation-map .inner {
		width: 1024px;
	}
	#operation-map h2 {
		font-size: 52px;
	}
}
@media only screen and (max-width: 767px) {
	#operation-map .inner {
		width: 96vw;
	}
	#map-cnt + p {
		margin-top: 4vw;
		font-size: 4.27vw;
		line-height: 1.3;
	}
	#map-cnt + p small {
		font-size: 2.67vw;
	}
}




/* --------------------------------------------
    sns
-------------------------------------------- */
#sns {
	background-color: #fff2bf;
}
@media only screen and (min-width: 768px) {
	#sns { padding: 70px 0; }
}
@media only screen and (max-width: 767px) {
	#sns {	padding: 10.66vw 0; }
}

#sns > .inner{
	margin-right: auto;
	margin-left: auto;
}
@media only screen and (min-width: 768px) {
	#sns > .inner{ width: 1000px; }
}
@media only screen and (max-width: 767px) {
	#sns > .inner{ width: 96vw; }
}

.case_twitter {
	position: relative;
	margin: 20px 0 0;
	padding: 0 0 15px;
	border-radius: 10px;
	background: #fccd00;
}
@media only screen and (min-width: 768px) {
	.case_twitter {
		/* margin: 90px 0 0; */
		padding: 18px;
		height: 453px;
	}
}
.case_twitter > .inner {
	padding: 0 15px;
}
@media only screen and (min-width: 768px) {
	.case_twitter > .inner {
		padding: 0;
	}
}
.case_twitter iframe {
	width: 100%;
}

.case_twitter_heading {
	overflow: hidden;
	width: 100%;
	height: 120px;
	background: url(../img/top/case_twitter_tit-sp-20210820.png) 0 0 no-repeat;
	background-size: 280px auto;
	background-position: center top;
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media only screen and (min-width: 768px) {
	.case_twitter_heading {
		position: absolute;
		top: 0;
		left: -14px;
		width: 262px;
		height: 453px;
		background: url(../img/top/case_twitter_tit-pc-20210820.png) 0 0 no-repeat;
		background-size: 262px 453px;
	}
}

.case_twitter_body {
	padding: 10px 0 15px;
	border-radius: 10px;
}
@media only screen and (min-width: 768px) {
	.case_twitter_body {
		float: right;
		margin: -2px 0 0 0;
		width: 640px;
		height: auto;
	}
}






/* --------------------------------------------
    system
-------------------------------------------- */
@media only screen and (min-width: 768px) {
	#system {	padding: 70px 0 80px;	}
}
@media only screen and (max-width: 767px) {
	#system {	padding: 10.66vw 0; }
}

#system .inner {
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (min-width: 768px) {
	#system .inner { width: 1000px;	}
}
@media only screen and (max-width: 767px) {
	#system .inner { width: 96vw;	}
}

.system_lead {
	text-align: center;
	font-weight: bold;
	line-height: 1.6;
}
@media only screen and (min-width: 768px) {
	.system_lead {
		margin-top: 60px;
		font-size: 24px;
	}
}
@media only screen and (max-width: 767px) {
	.system_lead {
		margin-top: 8vw;
		font-size: 4vw;
	}
	.system_lead .ib { display: block; }
	.system_lead br { display: none; }
	.system_lead + .about_kind {
		margin: 8vw 0 0;
	}
}

@media only screen and (min-width: 768px) {
	.system_item {
		border: 5px solid #fccd00;
		margin-top: 40px;
		padding: 40px 40px 30px;
		border-radius: 25px;
	}
}
@media only screen and (max-width: 767px) {
	.system_item {
		border: 2px solid #fccd00;
		margin-top: 8vw;
		padding: 8vw;
		border-radius: 6vw;
	}
}

.system_ttl {
	display: flex;
	align-items: center;
}
.system_ttl strong {
	letter-spacing: 0.025em;
	line-height: 1;
}
@media only screen and (min-width: 768px) {
	.system_ttl {

	}
	.system_ttl img { margin-right: 20px; }
	.system_ttl strong { margin-right: 20px; font-size: 32px; }
}
@media only screen and (max-width: 767px) {
	.system_ttl {
		flex-wrap: wrap;
	}
	.system_ttl img { margin-right: 2.67vw; height: 5.33vw; }
	.system_ttl strong { font-size: 5.33vw; }
	.system_ttl .able-tags { width: 100%; justify-content: flex-start; }
}

.system_txt {
	line-height: 1.8;
	letter-spacing: 0.06em;
}
@media only screen and (min-width: 768px) {
	.system_txt { font-size: 17px; }
	.system_ttl + .system_txt {	margin-top: 20px; }
}
@media only screen and (max-width: 767px) {
	.system_txt { font-size: 15px; }
	.system_ttl + .system_txt {	margin-top: 2.67vw; }
}

.option_item:not(:last-of-type) {
	border-bottom: 1px solid #ccc;
}
@media only screen and (min-width: 768px) {
	.option_item {
		padding: 30px 0;
		display: flex;
		justify-content: space-between;
	}
	.option_item:first-of-type { margin-top: 20px; }
}
@media only screen and (max-width: 767px) {
	.option_item {
		position: relative;
	}
	.option_item:first-of-type { margin-top: 5.33vw; }
}

@media only screen and (min-width: 768px) {
	.option_item_left {	width: 240px; }
}
@media only screen and (max-width: 767px) {
	.option_item_left {	width: 53.33vw; margin: 0 auto; padding-top: 12vw; }
}

@media only screen and (min-width: 768px) {
	.option_item_right { width: 630px; }
}
@media only screen and (max-width: 767px) {
	.option_item_right {
		width: 100%;
		padding-bottom: 6vw;
	}
}

.option_item strong {
	letter-spacing: 0.025em;
	display: block;
}
@media only screen and (min-width: 768px) {
	.option_item strong {
		font-size: 24px;
		margin-bottom: 30px;
	}
}
@media only screen and (max-width: 767px) {
	.option_item strong {
		display: block;
		width: 100%;
		text-align: center;
		font-size: 4vw;
		position: absolute;
		top: 5vw;
		text-align: center;
	}
}

@media only screen and (min-width: 768px) {
	.option_item .able-tags {
		margin-bottom: 20px;
	}
}

.option_more {
	background-color: #fff2bf;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.option_more {
		font-size: 20px;
		height: 50px;
		border-radius: 25px;
		margin-top: 10px;
	}
}
@media only screen and (max-width: 767px) {
	.option_more {
		flex-direction: column;
		text-align: center;
		font-size: 4vw;
		height: 17.33vw;
		border-radius: 2vw;
		margin-top: 2vw;
		padding: 2vw;
	}
}




/* --------------------------------------------
    support
-------------------------------------------- */
#support {
	background-color: #fff2bf;
}
@media only screen and (min-width: 768px) {
	#support { padding: 75px 0; }
}
@media only screen and (max-width: 767px) {
	#support {	padding: 10.66vw 0; }
}

#support .inner {
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (min-width: 768px) {
	#support .inner { width: 1000px; }
}
@media only screen and (max-width: 767px) {
	#support .inner { width: 96vw; }
}

.support_item {
	background-color: #fff;
}
@media only screen and (min-width: 768px) {
	.support_item {
		margin-top: 60px;
		border-radius: 20px;
	}
}
@media only screen and (max-width: 767px) {
	.support_item {
		margin-top: 8vw;
		border-radius: 3vw;
		overflow: hidden;
	}
}

.support_ttl {
	background-color: #ffcc00;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.support_ttl { 
		font-size: 32px; 
		border-radius: 20px 20px 0 0;
		height: 90px;
	}
}
@media only screen and (max-width: 767px) {
	.support_ttl { 
		font-size: 4vw;
		height: 12vw;
	}
}

.support_body {
	letter-spacing: 0.04em;
}
@media only screen and (min-width: 768px) {
	.support_body {
		padding: 40px;
		font-size: 17px;
	}
}
@media only screen and (max-width: 767px) {
	.support_body {
		padding: 5.33vw;
		font-size: 4vw;
	}
}

.support_img_wrap.center { text-align: center; }
@media only screen and (min-width: 768px) {
	.support_img_wrap {
		margin-top: 35px;
		margin-bottom: 35px;
	}
}
@media only screen and (max-width: 767px) {
	.support_img_wrap {
		margin-top: 4vw;
		margin-bottom: 4vw;
	}
}
.support_img_wrap figcaption {
	text-align: center;
}
@media only screen and (min-width: 768px) {
	.support_img_wrap.flex {
		display: flex;
		justify-content: space-between;
	}
	.support_img_wrap.flex figure {
		width: 450px;
	}
	.support_img_wrap figcaption {
		margin-top: 10px;
	}
}
@media only screen and (max-width: 767px) {
	.support_img_wrap.flex figure {
		width: 100%;
	}
	.support_img_wrap.flex figure + figure {
		margin-top: 4vw;
	}
	.support_img_wrap figcaption {
		margin-top: 2.66vw;
	}
}





/* --------------------------------------------
    inquiry
-------------------------------------------- */
@media only screen and (min-width: 768px) {
	#inquiry { padding: 75px 0 150px;	}
}
@media only screen and (max-width: 767px) {
	#inquiry {	padding: 10.66vw 0 18.67vw; }
}

#inquiry .inner {
	margin-right: auto;
	margin-left: auto;
}
@media only screen and (min-width: 768px) {
	#inquiry .inner {	width: 1000px; }
}
@media only screen and (max-width: 767px) {
	#inquiry .inner {	width: 96vw; }
}

.inquiry_txt {
	text-align: center;
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.inquiry_txt {
		margin-top: 60px;
		font-size: 24px;
	}
}
@media only screen and (max-width: 767px) {
	.inquiry_txt {
		margin-top: 8vw;
		font-size: 4vw;
	}
}

.inquiry_btn {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	background-color: #ff9900;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
	box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.2);
	transition: background-color .3s ease-out;
}
.inquiry_btn span {
	position: relative;
	display: inline-block;
	font-weight: bold;
}
.inquiry_btn span::before,
.inquiry_btn span::after {
	content: "";
	position: absolute;
	transform: translateX(-100%);
}
.inquiry_btn span::before {
	background-image: url(../img/top/icon-inquiry.png);
}
.inquiry_btn span::after {
	background-image: url(../img/top/icon-inquiry-invert.png);
	transition: opacity .3s ease;
	opacity: 0;
}
.inquiry_btn:hover {
	color: #ff9900;
	background-color: #fff;
	border-color: #ff9900;
}
.inquiry_btn:hover span::after {
	opacity: 1;
}
@media only screen and (min-width: 768px) {
	.inquiry_btn {
		border: 10px solid #fbb040;
		border-radius: 20px;
		width: 800px;
		height: 120px;
		margin-top: 60px;
		margin-bottom: 150px;
	}
	.inquiry_btn span {
		font-size: 28px;
	}
	.inquiry_btn span::before,
	.inquiry_btn span::after {
		width: 45px;
		height: 35px;
		left: -20px;
	}
}
@media only screen and (max-width: 767px) {
	.inquiry_btn {
		border: 5px solid #fbb040;
		border-radius: 3vw;
		width: 100%;
		height: 13.33vw;
		margin-top: 8vw;
		margin-bottom: 13.33vw;
	}
	.inquiry_btn span {
		font-size: 4vw;
	}
	.inquiry_btn span::before,
	.inquiry_btn span::after {
		width: 8vw;
		height: 100%;
		background-size: contain;
		background-repeat: no-repeat;
		left: -2vw;
	}
}

@media only screen and (min-width: 768px) {
	.inquiry_faq { margin-top: 50px; }
}
@media only screen and (max-width: 767px) {
	.inquiry_faq { margin-top: 8vw; }
}

.faq_item {
	position: relative;
	overflow: hidden;
	box-shadow: 0px 0px 15px -5px rgba(0, 0, 0, 0.3);
	cursor: pointer;
	z-index: 1;
}
.faq_item::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 1;
}
.faq_item:hover::after {
	border-color: #ff9900;
}
@media only screen and (min-width: 768px) {
	.faq_item {
		border-radius: 10px;
		margin-top: 30px;
	}
	.faq_item::before {
		border-radius: 10px;
	}
	.faq_item::after {
		border: 5px solid transparent;
	}
	.inquiry_txt + .faq_item {
		margin-top: 60px;
	}
}
@media only screen and (max-width: 767px) {
	.faq_item {
		border-radius: 2vw;
		margin-top: 2vw;
	}
	.faq_item::before {
		border-radius: 2vw;
	}
	.faq_item::after {
		border: 2px solid transparent;
	}
	.inquiry_txt + .faq_item {
		margin-top: 8vw;
	}
}

.faq-line {
	display: flex;
}
.faq-q .faq-line {
	position: relative;
}
.faq-q .faq-line::after {
	content: "";
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../img/top/icon-iquiry-arrow.png);
	position: absolute;
	right: 20px;
	transition: transform .3s ease;
}
.open .faq-q .faq-line::after {
	transform: rotate(180deg);
}
.faq-a {
	display: none;
}
@media only screen and (min-width: 768px) {
	.faq-line {
		min-height: 80px;
	}
	.faq-q .faq-line::after {
		width: 36px;
		height: 36px;
		top: calc(50% - 18px);
	}
}
@media only screen and (max-width: 767px) {
	.faq-line {
		min-height: 16vw;
	}
	.faq-q .faq-line::after {
		width: 4.8vw;
		height: 4.8vw;
		top: calc(50% - 2.4vw);
	}
}

.faq-icon {
	display: flex;
	justify-content: center;
	background-color: #ffcc00;
}
.faq-q .faq-icon {
	align-items: center;	
}
.faq-a .faq-icon {
	align-items: flex-start;
}
@media only screen and (min-width: 768px) {
	.faq-icon { width: 72px; }
	.faq-a .faq-icon { padding-top: 30px;	}
}
@media only screen and (max-width: 767px) {
	.faq-icon { width: 9.2vw; }
	.faq-a .faq-icon { padding-top: 4vw;	}
	.faq-icon img { width: 4.8vw; }
}

.faq-txt {
	display: flex;
}
.faq-q .faq-txt {
	font-weight: bold;
	align-items: center;
}
.faq-a .faq-txt {
	line-height: 1.7;
}
.faq-a .faq-txt figcaption {
	text-align: center;
}
.faq-txt a,
.faq-txt a:link {
	color: #ff9900!important;
	text-decoration: none;
}
.faq-txt a:visited {
	color: #333333;
	text-decoration: none;
}
.faq-txt a:hover,
.faq-txt a:active {
	color: #ff9900;
	text-decoration: underline;
}
@media only screen and (min-width: 768px) {
	.faq-txt {
		width: calc(100% - 72px);
		padding: 0 40px 0 20px;
		font-size: 17px;
	}
	.faq-a .faq-txt {
		padding-top: 30px;
		padding-bottom: 40px;
	}
	.faq-txt figure {
		min-width: 350px;
		margin-left: 20px;
	}
	.faq-a .faq-txt figcaption {
		margin-top: 15px;
	}
}
@media only screen and (max-width: 767px) {
	.faq-txt {
		width: calc(100% - 9.2vw);
		padding: 0 12vw 0 4vw;
		font-size: 12px;
	}
	.faq-a .faq-txt {
		padding-top: 4vw;
		padding-bottom: 4vw;
		flex-direction: column;
	}
	.faq-txt figure {
		width: 100%;
		margin-top: 2vw;
	}
	.faq-a .faq-txt figcaption {
		margin-top: 2vw;
	}
}




/* --------------------------------------------
    footer
-------------------------------------------- */
footer:not(.timeline-Footer) {
	position: relative;
	background-color: #ffcc00;
}
@media only screen and (min-width: 768px) {
	footer:not(.timeline-Footer) {
		padding: 75px 0 65px;
	}
}
@media only screen and (max-width: 767px) {
	footer:not(.timeline-Footer) {
		padding: 10vw 0 8vw;
	}
}

footer .inner {
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (min-width: 768px) {
	footer .inner {
		width: 1000px;
		padding-left: 40px;
	}
}
@media only screen and (max-width: 767px) {
	footer .inner {
		width: 96vw;
		text-align: center;
	}
}

.footer_company {
	font-weight: bold;
}
@media only screen and (min-width: 768px) {
	.footer_company {
		font-size: 24px;
		margin-bottom: 40px;
	}
}
@media only screen and (max-width: 767px) {
	.footer_company {
		font-size: 5,33vw;
		margin-bottom: 4vw;
	}
}

.footer_address {
	line-height: 1.8;
}
@media only screen and (min-width: 768px) {
	.footer_address { font-size: 14px; }
}
@media only screen and (max-width: 767px) {
	.footer_address { font-size: 15px; }
}

.footer_totop {
	display: inline-block;
	position: absolute;
	-ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	text-decoration: none;
	right: 60px;
	bottom: 70px;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.05em;
	transition: opacity .3s ease-out;
}
.footer_totop:hover {
	opacity: 0.6;
}
.footer_totop::before {
	content: url(../img/top/icon-totop-arrow.png);
	margin-bottom: 10px;
	position: relative;
	left: 2px;
}
@media only screen and (max-width: 767px) {
	.footer_totop {
		display: none;
	}
}


@media only screen and (min-width: 768px) {
}
@media only screen and (min-width: 768px) {
}
@media only screen and (min-width: 768px) {
}




























































