@charset "utf-8";
.theme_main_only h1, .theme_main_only h2, .theme_main_only h3, .theme_main_only h4, .theme_main_only p {
	margin: 0;
}
.theme_main_only .btn {
	padding: 0;
	font-weight: 500;
}
#contents .inner {
	max-width: 100%;
}
#main h1 img {
	width: 100%;
}
#footer {
	margin-top: 0;
}
/*---------------------- mainVisual ----------------------*/
.mainVisual {
	position: relative;
}
.mainVisual ul {
	position: absolute;
	left: calc(411 / 2000 * 100%);
	bottom: calc(362 / 1135 * 100%);
	width: calc(590 / 2000 * 100%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.mainVisual ul li {
	width: calc(280 / 590 * 100%);
}
/*---------------------- about ----------------------*/
#about .text h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 20px;
}
#about .text h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#about .text h2 .en:first-letter {
	color: #48D0BA;
}
#about .text p {
	font-size: 18px;
	line-height: 2.0;
	letter-spacing: 0.03em;
}
#about .text ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
@media only screen and (min-width: 768px) {
	#about {
		background-image: url("../img/tremil/pc_about_bg.png");
		background-repeat: no-repeat;
		background-position: top center;
	}
	#about .aboutInner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		max-width: 1280px;
		margin: auto;
		padding: 110px 0 90px;
	}
	#about .photo {
		width: calc(645 / 1280 * 100%);
		text-align: right;
	}
	#about .text {
		width: calc(585 / 1280 * 100%);
		padding: 180px 0 0;
	}
	#about .text p {
		margin: 0 0 55px;
	}
	#about .text ul li:first-of-type {
		margin-right: 15px;
	}
}
@media only screen and (max-width: 767px) {
	#about {
		background-image: url("../img/tremil/sp_about_bg.png");
		background-repeat: no-repeat;
		background-position: top center;
		background-size: contain;
		padding: 30px 0;
		margin: 0 0 30px;
	}
	#about .text {
		padding: 0 6%;
	}
	#about .text h2 {
		font-size: 20px;
		margin: 0 0 20px;
	}
	#about .text p {
		font-size: 16px;
		line-height: 1.9;
		letter-spacing: normal;
		margin: 0 0 20px;
	}
	#about .text ul {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#about .text ul li {
		width: calc((100% - 15px) / 2)
	}
}
/*---------------------- solution ----------------------*/
#solution {
	text-align: center;
	margin: 0 0 145px;
}
#solution h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 40px;
}
#solution h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#solution h2 .en:first-letter {
	color: #48D0BA;
}
#solution ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	max-width: 1100px;
	margin: auto;
}
#solution ul li {
	border-radius: 20px;
	box-shadow: 0px 0px 10px 0px rgba(143, 147, 149, 0.25);
}
#solution ul li h3 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #212121;
	margin: 0 0 10px;
}
#solution ul li p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #424242;
	margin: 0 0 20px;
}
@media only screen and (min-width: 768px) {
	#solution ul li {
		width: calc(260 / 1100 * 100%);
		padding: 24px 0px;
	}
}
@media only screen and (max-width: 767px) {
	#solution {
		margin: 0 0 40px;
	}
	#solution h2 {
		font-size: 20px;
		margin: 0 0 20px;
	}
	#solution ul {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 0 6%;
	}
	#solution ul li {
		width: calc(94% / 2);
		border-radius: 10px;
		padding: 15px 10px;
		margin-bottom: 6%;
	}
	#solution ul li h3 {
		font-size: 12px;
		letter-spacing: normal;
		margin: 0 0 10px;
	}
	#solution ul li p {
		font-size: 10px;
		margin: 0 0 10px;
	}
}
/*---------------------- scene ----------------------*/
#scene {
	margin: 0 0 110px;
}
#scene h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 40px;
	text-align: center;
}
#scene h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#scene h2 .en:first-letter {
	color: #48D0BA;
}
#scene > ul > li {
	border-radius: 20px;
	box-shadow: 0px 0px 10px 0px rgba(143, 147, 149, 0.25);
	overflow: hidden;
	padding: 0 0 10px;
	margin: 0 0 30px;
}
#scene > ul > li h3 {
	margin: 0 0 15px;
}
#scene > ul > li p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #424242;
	margin: 0 10px 10px 20px;
}
#scene ul.tag {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0 0 0 20px;
}
#scene ul.tag li {
	background-color: #ECFDFB;
	font-size: 13px;
	line-height: 1.5;
	letter-spacing: 0.03em;
	color: #23AE98;
	border-radius: 4px;
	padding: 5px 10px;
	margin: 0 10px 10px 0;
}
#scene .applyBtn {
	text-align: center;
	margin: 50px 0 0;
}
#scene .applyBtn a {
	display: inline-block;
	box-sizing: border-box;
	background-color: #FF8C00;
	border: 3px solid #FF8C00;
	width: 430px;
	line-height: 88px;
	padding-left: 50px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #FFF;
	text-decoration: none;
	text-align: left;
	background-image: url("../img/tremil/orange_btn_arrow01.svg");
	background-repeat: no-repeat;
	background-position: center right 55px;
}
@media only screen and (min-width: 768px) {
	#scene > ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		max-width: 1100px;
		margin: auto;
	}
	#scene > ul > li {
		width: calc(536 / 1100 * 100%);
	}
	#scene .applyBtn a {
		transition: 0.3s;
	}
	#scene .applyBtn a:hover {
		opacity: 1.0;
		background-color: #FFF;
		color: #FF9000;
		background-image: url("../img/tremil/orange_btn_arrow02.svg");
	}
}
@media only screen and (max-width: 767px) {
	#scene {
		margin: 0 0 50px;
	}
	#scene h2 {
		font-size: 20px;
		margin: 0 0 20px;
	}
	#scene > ul {
		padding: 0 6%;
	}
	#scene > ul > li {
		border-radius: 10px;
		padding: 0 0 10px;
		margin-bottom: 25px;
	}
	#scene > ul > li h3 {
		margin: 0 0 10px;
	}
	#scene > ul > li p {
		font-size: 13px;
		margin: 0 15px 15px;
	}
	#scene ul.tag {
		margin: 0 0 0 15px;
	}
	#scene ul.tag li {
		font-size: 10px;
		border-radius: 3px;
		padding: 3px 6px;
		margin: 0 6px 6px 0;
	}
	#scene .applyBtn {
		margin: 45px 0 0;
	}
	#scene .applyBtn a {
		width: 250px;
		line-height: 44px;
		padding-left: 30px;
		font-size: 16px;
		background-position: center right 25px;
		background-size: 20px;
	}
}
/*---------------------- features ----------------------*/
#features {
	background-color: #48D0BA;
	text-align: center;
	padding: 70px 0 100px;
	margin: 0 0 185px;
}
#features h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: #FFF;
	margin: 0 0 40px;
}
#features h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#features ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	max-width: 1100px;
	margin: auto;
}
#features ul li {
	border-radius: 20px;
	background-color: #FFF;
	box-shadow: 0px 0px 10px 0px rgba(143, 147, 149, 0.25);
}
#features ul li h3 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #424242;
	margin: 0 0 10px;
}
#features ul li p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #424242;
	margin: 10px 0 0;
}
@media only screen and (min-width: 768px) {
	#features ul li {
		width: calc(267 / 1100 * 100%);
		padding: 30px 0;
	}
}
@media only screen and (max-width: 767px) {
	#features {
		padding: 30px 0;
		margin: 0 0 50px;
	}
	#features h2 {
		font-size: 20px;
		margin: 0 0 20px;
	}
	#features ul {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 0 6%;
	}
	#features ul li {
		width: calc(94% / 2);
		border-radius: 10px;
		padding: 15px 0;
		margin-bottom: 6%;
	}
	#features ul li h3 {
		font-size: 12px;
		letter-spacing: normal;
		margin: 0 0 10px;
	}
	#features ul li img {
		width: calc(100% - 20px);
	}
	#features ul li p {
		font-size: 10px;
		letter-spacing: normal;
		margin: 10px 0 0;
	}
}
/*---------------------- feature ----------------------*/
#feature h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-align: center;
	margin: 0 0 40px;
}
#feature h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#feature h2 .en:first-letter {
	color: #48D0BA;
}
#feature h3 {
	background-repeat: no-repeat;
	background-position: top left;
	padding-left: 80px;
	font-size: 36px;
	font-weight: 700;
	color: #424242;
	margin: 0 0 20px;
}
#feature01 h3, #feature03 h3 {
	background-image: url("../img/tremil/feature_location_icon01.svg");
}
#feature02 h3 {
	background-image: url("../img/tremil/feature_location_icon02.svg");
}
#feature h3::before {
	content: attr(data-en);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.15em;
	color: #35C5AD;
	display: block;
	margin: 0 0 -5px;
}
#feature h4 {
	display: inline-block;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 38px;
	color: #FFF;
	background-color: #424242;
	border-radius: 20px;
	margin: 0 0 25px;
	padding: 0 20px;
}
#feature h4 + p {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.03em;
	color: #616161;
	margin: 0 0 25px;
}
#feature .text ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#feature .text ul li {
	background-color: #F5F5F5;
}
#feature .text ul li h5 {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #616161;
	margin: 0 0 10px;
}
#feature .text ul li p {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.06em;
	color: #616161;
	margin: 0;
}
@media only screen and (min-width: 768px) {
	#feature {
		background-image: url("../img/tremil/feature_bg.png");
		background-repeat: no-repeat;
		background-position: top center;
		position: relative;
	}
	#feature::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 720px;
		background: linear-gradient(90deg, #48D0BA 0%, #48D0BA 50%, #FFF 50%, #FFF 100%);
		z-index: -1;
	}
	#feature h2 {
		position: absolute;
		top: -120px;
		left: 0;
		right: 0;
	}
	#spFeatureNavi {
		display: none;
	}
	#feature .featureInner {
		max-width: 1280px;
		margin: 0 auto 190px;
	}
	#feature01, #feature02, #feature03 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#feature01 > .photo, #feature02 > .photo, #feature03 > .photo {
		width: 495px;
		text-align: right;
		padding: 100px 0 0;
	}
	#feature01 > .text, #feature02 > .text, #feature03 > .text {
		width: 760px;
		padding: 95px 0 0;
	}
	#feature h3 {
		min-height: 64px;
	}
	#feature .text ul li {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 15px 0 15px 15px;
		border-radius: 60px;
		width: 325px;
		box-sizing: border-box;
		margin: 0 10px 10px 0;
	}
	#feature .text ul li .icon {
		width: 86px;
	}
	#feature .text ul li .text {
		width: calc(100% - 98px);
	}
	#feature .prevArrow {
		position: absolute;
		right: 135px;
		bottom: -80px;
		cursor: pointer;
	}
	#feature .nextArrow {
		position: absolute;
		right: 55px;
		bottom: -80px;
		cursor: pointer;
	}
	#feature .prevArrow img, #feature .nextArrow img {
		transition: 0.3s;
	}
	#feature .prevArrow:hover img, #feature .nextArrow:hover img {
		transform: scale(1.17);
	}
	#feature .prevArrow.slick-disabled img, #feature .nextArrow.slick-disabled img {
		transform: scale(1.0);
		opacity: 0.3;
		cursor: default;
	}
	#feature .prevArrow.slick-disabled:hover img, #feature .nextArrow.slick-disabled:hover img {
		transform: scale(1.0);
	}
	#feature .slick-dots {
		bottom: -55px;
		display: inline-block !important;
		width: auto;
		padding: 0;
		list-style: none;
		text-align: center;
		right: 220px;
	}
	#feature .slick-dots li {
		width: 110px;
		height: 12px;
		margin: 0 10px;
	}
	#feature .slick-dots li button {
		width: 110px;
		height: 12px;
		padding: 0;
	}
	#feature .slick-dots li button:before {
		content: "";
		line-height: 0;
		top: 0;
		left: 0;
		width: 110px;
		height: 12px;
		opacity: 1;
		background-color: #EAEAEA;
		border-radius: 6px;
		transition: 0.3s;
	}
	#feature .slick-dots li.slick-active button:before, #feature .slick-dots li:hover button:before {
		background-color: #35C5AD;
	}
}
@media only screen and (max-width: 767px) {
	#feature h2 {
		font-size: 24px;
		margin: 0 0 20px;
	}
	#spFeatureNavi {
		padding: 0 15px;
		margin: 0 0 25px;
	}
	#spFeatureNavi ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#spFeatureNavi ul li {
		width: calc((100% - 10px) / 3)
	}
	#spFeatureNavi ul li a {
		display: block;
		background-color: #F5F5F5;
		border-radius: 6px;
		font-size: 14px;
		font-weight: 700;
		text-align: center;
		color: #424242;
		text-decoration: none;
		position: relative;
		padding: 10px 0 0;
		height: 60px;
		box-sizing: border-box;
	}
	#spFeatureNavi ul li a::after {
		position: absolute;
		content: "";
		left: 0;
		right: 0;
		bottom: 15px;
		margin: auto;
		width: 10px;
		height: 10px;
		border-bottom: 2px solid #48D0BA;
		border-right: 2px solid #48D0BA;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#feature .featureInner > ul > li {
		margin: 0 0 40px;
	}
	#feature .featureInner > ul > li > .photo {
		margin: 0 0 15px;
	}
	#feature .featureInner > ul > li > .text {
		padding: 0 15px;
	}
	#feature h3 {
		background-size: 55px;
		padding-left: 65px;
		font-size: 24px;
		margin: 0 0 10px;
		min-height: 55px;
	}
	#feature h3::before {
		content: attr(data-en);
		font-size: 12px;
		display: block;
		margin: 0;
	}
	#feature h4 {
		font-size: 15px;
		letter-spacing: 0.06em;
		line-height: 32px;
		border-radius: 16px;
		margin: 0 0 10px;
		padding: 0 15px;
	}
	#feature h4 + p {
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0.08em;
		margin: 0 0 10px;
	}
	#feature .text ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#feature .text ul li {
		width: calc((100% - 5px) / 2);
		border-radius: 14px;
		margin: 0 0 5px;
		padding: 8px 0 10px 10px;
		box-sizing: border-box;
	}
	#feature .text ul li .icon {
		display: none;
	}
	#feature .text ul li h5 {
		font-size: 15px;
		margin: 0 0 5px;
		position: relative;
		padding-left: 1.06em;
	}
	#feature .text ul li h5::before {
		position: absolute;
		content: "●";
		left: 0;
		color: #35C5AD;
	}
	#feature .text ul li p {
		font-size: 11px;
		line-height: 1.25;
		letter-spacing: 0;
	}
}
/*---------------------- compare ----------------------*/
#compare {
	background-color: #ECFDFB;
	margin: 0 0 95px;
}
#compare .compareInner {
	max-width: 1152px;
	margin: auto;
}
#compare .compareTab {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden;
	padding: 26px 26px 0;
}
#compare .tab {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #FFF;
	border-radius: 20px 20px 0 0;
	cursor: pointer;
	width: 340px;
	padding: 25px;
	box-sizing: border-box;
	background-color: #35C5AD;
	margin-right: 10px;
}
#compare .tab::before {
	content: attr(data-en);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #FFF;
	display: block;
}
#compare .tab.active {
	color: #424242;
	background-color: #FFF;
	box-shadow: 0px 0px 26px 0px rgba(0, 0, 0, 0.05);
}
#compare .tab.active::before {
	color: #1FBAA1;
}
#compare .content {
	display: none;
	overflow: hidden;
	background-color: #FFF;
	border-radius: 0 20px 20px 20px;
	box-shadow: 0px 0px 26px 0px rgba(0, 0, 0, 0.05);
	max-width: 1100px;
	margin: auto;
	text-align: center;
}
#compare .content.show {
	display: block;
}
#compare .content.compare01 {
	padding: 155px 50px 0;
	box-sizing: border-box;
}
#compare .content.compare01 .compare01Inner {
	background-color: #F5F5F5;
	border-radius: 20px;
	padding: 50px 0 85px;
	margin: 0 0 115px;
}
#compare .content.compare01 .compare01Inner .comment {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.03em;
	color: #4A4A4A;
	margin: 0 0 55px;
}
#compare .content.compare02 {
	padding: 45px 0 0;
	box-sizing: border-box;
	text-align: center;
}
#compare .applyBtn a {
	display: inline-block;
	box-sizing: border-box;
	background-color: #FF8C00;
	border: 3px solid #FF8C00;
	width: 430px;
	line-height: 88px;
	padding-left: 50px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #FFF;
	text-decoration: none;
	text-align: left;
	background-image: url("../img/tremil/orange_btn_arrow01.svg");
	background-repeat: no-repeat;
	background-position: center right 55px;
}
@media only screen and (min-width: 768px) {
	#compare {
		padding: 115px 0 120px;
	}
	#compare .compareTab {
		padding: 26px 26px 0;
	}
	#compare .tab {
		width: 400px;
	}
	#compare .content.compare01, #compare .content.compare02 {
		height: 1223px;
	}
	#compare .content.compare02 .applyBtn {
		margin: 45px 0 0;
	}
	#compare .applyBtn a {
		transition: 0.3s;
	}
	#compare .applyBtn a:hover {
		opacity: 1.0;
		background-color: #FFF;
		color: #FF9000;
		background-image: url("../img/tremil/orange_btn_arrow02.svg");
	}
}
@media only screen and (max-width: 767px) {
	#compare {
		margin: 0 0 35px;
	}
	#compare .compareTab {
		padding: 6% 6% 0;
	}
	#compare .tab {
		font-size: 12px;
		letter-spacing: normal;
		border-radius: 10px 10px 0 0;
		width: calc((100% - 30px) / 2);
		padding: 10px 0 10px 15px;
	}
	#compare .tab::before {
		font-size: 10px;
	}
	#compare .tab.active {
		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
	}
	#compare .compareContent {
		padding: 0 6% 6%;
	}
	#compare .content {
		border-radius: 0 10px 10px 10px;
		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
	}
	#compare .content.compare01 {
		padding: 15px 15px 30px;
	}
	#compare .content.compare01 .compare01Inner {
		background-color: #F5F5F5;
		border-radius: 10px;
		padding: 15px;
		margin: 0 0 25px;
	}
	#compare .content.compare01 .compare01Inner .comment {
		font-size: 15px;
		margin: 0 0 15px;
	}
	#compare .content.compare02 {
		padding: 15px 15px 30px;
	}
	#compare .content.compare02 .applyBtn {
		margin: 25px 0 0;
	}
	#compare .applyBtn a {
		width: 250px;
		line-height: 44px;
		padding-left: 30px;
		font-size: 16px;
		background-position: center right 25px;
		background-size: 20px;
	}
}
/*---------------------- flow ----------------------*/
#flow {
	text-align: center;
	margin: 0 0 185px;
}
#flow h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 120px;
}
#flow h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#flow h2 .en:first-letter {
	color: #48D0BA;
}
#flow ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	max-width: 1100px;
	margin: auto;
}
#flow ul li {
	position: relative;
	border-radius: 20px;
	background-color: #FFF;
	box-shadow: 0px 0px 10px 0px rgba(143, 147, 149, 0.25);
}
#flow ul li .number {
	position: absolute;
	top: -80px;
	left: 50%;
	margin-left: -30px;
	display: inline-block;
	background-color: #35C5AD;
	line-height: 60px;
	width: 60px;
	border-radius: 50%;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #FFF;
}
#flow ul li p {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: 0.03em;
	color: #616161;
	margin: 10px 0 0;
}
#flow ul li p.asterisk {
	position: absolute;
	font-size: 13px;
	left: 0;
	right: 0;
	bottom: -30px;
}
@media only screen and (min-width: 768px) {
	#flow ul li {
		width: calc(255 / 1100 * 100%);
		padding: 25px 0;
	}
}
@media only screen and (max-width: 767px) {
	#flow {
		margin: 0 0 20px;
	}
	#flow h2 {
		font-size: 20px;
		margin: 0 0 50px;
	}
	#flow ul {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 0 6%;
	}
	#flow ul li {
		width: calc(94% / 2);
		border-radius: 10px;
		padding: 10px 0;
		margin-bottom: 65px;
	}
	#flow ul li .number {
		top: -40px;
		left: 50%;
		margin-left: -15px;
		line-height: 30px;
		width: 30px;
		font-size: 12px;
	}
	#flow ul li img {
		width: calc(100% - 20px);
	}
	#flow ul li p {
		font-size: 10px;
		margin: 10px 0 0;
	}
	#flow ul li p.asterisk {
		font-size: 9px;
		bottom: -25px;
	}
}
/*---------------------- delivery ----------------------*/
#delivery {
	max-width: 1100px;
	border-radius: 20px;
	background-color: #F5F5F5;
	padding: 50px 80px 70px;
	margin: 0 auto 130px;
}
#delivery h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-align: center;
	margin: 0 0 15px;
}
#delivery h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#delivery h2 .en:first-letter {
	color: #48D0BA;
}
#delivery .deliverySec01 p {
	font-size: 21px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.04em;
}
#delivery .deliverySec01 p.highlight {
	font-size: 28px;
	letter-spacing: 0.06em;
	color: #23AE98;
	margin: 0 0 5px;
}
#delivery .deliverySec03 {
	background-color: #FFF;
	border-radius: 20px;
	padding: 15px 40px;
	margin: 15px 0;
}
#delivery .deliverySec03 h3 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.03em;
	text-align: center;
	margin: 0 0 20px;
}
#delivery .deliverySec03 .payment ul li {
	text-align: center;
}
#delivery .deliverySec03 .payment ul li h4 {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.06em;
	margin: 5px 0 0;
}
#delivery .deliverySec03 .payment ul li p {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.03em;
	color: #424242;
}
#delivery .deliverySec03 .note {
	font-size: 13px;
	line-height: 1.8;
	letter-spacing: 0.03em;
	color: #616161;
	text-align: left;
}
#delivery .deliverySec04 {
	background-color: #FFF;
	border: 2px solid #C73A66;
	border-radius: 10px;
}
#delivery .deliverySec04 p {
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.03em;
	color: #424242;
}
#delivery .deliverySec04 p.highlight {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.03em;
	color: #CC3333;
	margin: 0 0 5px;
}
@media only screen and (min-width: 768px) {
	#delivery .deliverySec01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: 100%;
		padding: 0 35px;
		box-sizing: border-box;
		margin: 0 0 40px;
	}
	#delivery .deliverySec03 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: 100%;
		box-sizing: border-box;
	}
	#delivery .deliverySec03 .payment {
		width: 580px;
	}
	#delivery .deliverySec03 .payment ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#delivery .deliverySec03 .payment ul li {
		width: 190px;
	}
	#delivery .deliverySec03 .payment ul li:first-of-type {
		width: 160px;
	}
	#delivery .deliverySec03 .note {
		width: 230px;
	}
	#delivery .deliverySec04 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 10px 35px 10px 30px;
	}
	#delivery .deliverySec04 .text {
		width: 800px;
	}
}
@media only screen and (max-width: 767px) {
	#delivery {
		border-radius: 10px;
		padding: 30px 15px 15px;
		margin: 0 6% 50px;
		text-align: center;
	}
	#delivery h2 {
		font-size: 20px;
		margin: 0 0 25px;
	}
	#delivery .deliverySec01 {
		margin: 0 0 30px;
	}
	#delivery .deliverySec01 p {
		font-size: 12px;
	}
	#delivery .deliverySec01 p.highlight {
		font-size: 17px;
	}
	#delivery .deliverySec01 .fig {
		margin: 20px 0 0;
	}
	#delivery .deliverySec03 {
		border-radius: 10px;
		padding: 20px 15px;
		margin: 20px 0;
	}
	#delivery .deliverySec03 h3 {
		font-size: 20px;
		margin: 0 0 20px;
	}
	#delivery .deliverySec03 .payment ul li {
		margin: 0 0 40px;
	}
	#delivery .deliverySec03 .payment ul li h4 {
		font-size: 18px;
		font-weight: 700;
		letter-spacing: 0.06em;
		margin: 5px 0 0;
	}
	#delivery .deliverySec03 .payment ul li p {
		font-size: 14px;
		font-weight: 400;
		line-height: 1.6;
		letter-spacing: 0.03em;
		color: #424242;
	}
	#delivery .deliverySec03 .note {
		font-size: 13px;
		line-height: 1.8;
		letter-spacing: 0.03em;
		color: #616161;
		text-align: left;
	}
	#delivery .deliverySec04 {
		padding: 20px 15px;
		border-radius: 6px;
	}
	#delivery .deliverySec04 .text {
		margin: 15px 0 0;
	}
	#delivery .deliverySec04 p {
		text-align: left;
	}
	#delivery .deliverySec04 p {
		font-size: 13px;
	}
	#delivery .deliverySec04 p.highlight {
		font-size: 16px;
		margin: 0 0 10px;
		text-indent: -1em;
		padding-left: 1em;
	}
}
/*---------------------- price ----------------------*/
#price {
	background-color: #35C5AD;
	text-align: center;
	padding: 85px 0 100px;
	margin: 0 auto 115px;
}
#price h2 {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: #FFF;
	margin: 0 0 40px;
}
#price h2 .en {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.1em;
}
#price .priceInner {
	max-width: 1100px;
	margin: auto;
	background-color: #FFF;
	border-radius: 20px;
	padding: 60px 45px;
	box-sizing: border-box;
}
#price ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#price ul li {
	background-color: #E7F7F4;
	border-radius: 6px;
	text-align: center;
}
#price ul li .rentalPeriod {
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 0.03em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0 0 20px;
}
#price ul li .rentalPeriod span:first-of-type {
	display: inline-block;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: normal;
	margin: -10px 10px 0 0;
}
#price ul li .rentalPrice {
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.03em;
	color: #616161;
	margin: 0 0 30px;
}
#price ul li .rentalPrice .exTax {
	font-size: 21px;
	font-weight: 700;
	color: #212121;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0 0 -5px;
}
#price ul li .rentalPrice .exTax span {
	display: inline-block;
	font-size: 40px;
	font-weight: 700;
	margin: -10px 10px 0 0;
}
#price ul li .perDay {
	display: inline-block;
	background-image: url("../img/tremil/price_icon01.svg");
	background-repeat: no-repeat;
	background-position: left center;
	font-size: 16px;
	letter-spacing: 0.03em;
	line-height: 26px;
	color: #23AE98;
	text-align: left;
	padding-left: 30px;
}
#price .apply {
	background-image: url("../img/tremil/price_apply_pc_bg.png");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	width: 100%;
	text-align: left;
	color: #FFF;
	box-sizing: border-box;
}
#price .apply h3 {
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0.03em;
	margin: 0 0 10px;
}
#price .apply h3::before {
	display: block;
	content: attr(data-en);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: normal;
	margin: 0 0 5px;
}
#price .apply p {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.03em;
	margin: 0 0 25px;
}
#price .apply .applyBtn a {
	display: inline-block;
	box-sizing: border-box;
	background-color: #FF8C00;
	border: 3px solid #FF8C00;
	width: 430px;
	line-height: 88px;
	padding-left: 50px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #FFF;
	text-decoration: none;
	text-align: left;
	background-image: url("../img/tremil/orange_btn_arrow01.svg");
	background-repeat: no-repeat;
	background-position: center right 55px;
}
@media only screen and (min-width: 768px) {
	#price ul {
		margin: 0 0 50px;
	}
	#price ul li {
		width: 235px;
		padding: 45px 0;
		box-sizing: border-box;
	}
	#price .apply {
		height: 363px;
		padding: 45px 0 0 70px;
	}
	#price .apply .applyBtn a {
		transition: 0.3s;
	}
	#price .apply .applyBtn a:hover {
		opacity: 1.0;
		background-color: #FFF;
		color: #FF9000;
		background-image: url("../img/tremil/orange_btn_arrow02.svg");
	}
}
@media only screen and (max-width: 767px) {
	#price {
		padding: 30px 6%;
		margin: 0 0 50px;
	}
	#price h2 {
		font-size: 20px;
		margin: 0 0 20px;
	}
	#price .priceInner {
		border-radius: 10px;
		padding: 15px;
	}
	#price ul {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	#price ul li {
		width: calc(94% / 2);
		margin: 0 0 6%;
		padding: 30px 0;
	}
	#price ul li .rentalPeriod {
		font-size: 14px;
		margin: 0 0 20px;
	}
	#price ul li .rentalPeriod span:first-of-type {
		font-size: 28px;
		margin: -10px 5px 0 0;
	}
	#price ul li .rentalPrice {
		font-size: 12px;
		margin: 0 0 15px;
	}
	#price ul li .rentalPrice .exTax {
		font-size: 14px;
	}
	#price ul li .rentalPrice .exTax span {
		font-size: 28px;
		margin: -10px 5px 0 0;
	}
	#price ul li .perDay {
		background-size: 20px;
		font-size: 12px;
		line-height: 20px;
		padding-left: 25px;
	}
	#price .apply {
		background-color: #35C5AD;
		background-image: url("../img/tremil/price_apply_sp_bg.png");
		background-position: bottom center;
		background-size: contain;
		text-align: center;
		border-radius: 6px;
		padding: 20px 0 180px;
	}
	#price .apply h3 {
		font-size: 26px;
		margin: 0 0 15px;
	}
	#price .apply h3::before {
		font-size: 12px;
		margin: 0;
	}
	#price .apply p {
		font-size: 15px;
		margin: 0 0 20px;
	}
	#price .apply .applyBtn a {
		width: 250px;
		line-height: 44px;
		padding-left: 30px;
		font-size: 16px;
		background-position: center right 25px;
		background-size: 20px;
	}
}
/*---------------------- others ----------------------*/
#others {
	max-width: 1100px;
	margin: 0 auto 115px;
}
#others section {
	background-color: #ECFDFB;
	border-radius: 20px;
	text-align: center;
	padding: 25px 0 40px;
}
#others h2 {
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 0.03em;
	margin: 0 0 20px;
}
#others p {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin: 0 0 35px;
}
#others p.highlight {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.03em;
	margin: 0 0 5px;
}
#others .contactBtn {
	margin: 45px 0 0;
}
#others .contactBtn a {
	display: inline-block;
	box-sizing: border-box;
	background-color: #1FBAA1;
	border: 3px solid #1FBAA1;
	width: 300px;
	line-height: 45px;
	border-radius: 50px;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	text-decoration: none;
}
@media only screen and (min-width: 768px) {
	#others {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#others section {
		width: 530px;
	}
	#others .contactBtn a {
		transition: 0.3s;
	}
	#others .contactBtn a:hover {
		opacity: 1.0;
		background-color: #FFF;
		color: #1FBAA1;
	}
	#others section .table {
		margin: 30px 0 0;
	}
}
@media only screen and (max-width: 767px) {
	#others {
		margin: 0 6% 50px;
	}
	#others section {
		border-radius: 10px;
		padding: 25px 15px 30px;
		margin: 0 0 6%;
	}
	#others h2 {
		font-size: 18px;
		margin: 0 0 20px;
	}
	#others p {
		font-size: 12px;
		margin: 0 0 35px;
	}
	#others p.highlight {
		font-size: 16px;
		margin: 0 0 5px;
	}
	#others .contactBtn {
		margin: 30px 0 0;
	}
	#others .contactBtn a {
		width: 250px;
		line-height: 44px;
		font-size: 16px;
		background-position: center right 25px;
		background-size: 20px;
	}
}
/*---------------------- appBanner ----------------------*/
#appBanner {
	background-color: #35C5AD;
	position: relative;
	margin: 0 0 130px;
}
#appBanner .linkBtn {
	position: absolute;
}
#appBanner .linkBtn a {
	display: inline-block;
	box-sizing: border-box;
	background-color: #F9DE00;
	border: 3px solid #F9DE00;
	width: 430px;
	line-height: 88px;
	padding-left: 50px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #424242;
	text-decoration: none;
	text-align: left;
	background-image: url("../img/tremil/yellow_btn_arrow01.svg");
	background-repeat: no-repeat;
	background-position: center right 55px;
}
@media only screen and (min-width: 768px) {
	#appBanner {
		height: 580px;
		background-image: url("../img/tremil/pc_app_banner.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	#appBanner .linkBtn {
		left: 50%;
		bottom: 50px;
		margin-left: -475px;
	}
	#appBanner .linkBtn a {
		transition: 0.3s;
	}
	#appBanner .linkBtn a:hover {
		opacity: 1.0;
		background-color: #FFF;
	}
}
@media only screen and (max-width: 767px) {
	#appBanner {
		height: 480px;
		background-image: url("../img/tremil/sp_app_banner.png");
		background-repeat: no-repeat;
		background-position: top center;
		margin: 0 0 50px;
	}
	#appBanner .linkBtn {
		left: 50%;
		bottom: 30px;
		margin-left: -155px;
	}
	#appBanner .linkBtn a {
		width: 310px;
		line-height: 44px;
		padding-left: 30px;
		font-size: 16px;
		background-position: center right 25px;
		background-size: 20px;
	}
}
/*---------------------- faq ----------------------*/
#faq {
	max-width: 1100px;
	margin: 0 auto 105px;
}
#faq h2 {
	font-size: 31px;
	font-weight: 700;
	letter-spacing: 0.03em;
}
#faq h2::before {
	content: attr(data-en);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #1FBAA1;
	display: block;
}
#faq dl {
	background-color: #FFF;
	border-radius: 10px;
	margin: 0 0 25px;
	box-shadow: 0px 0px 16px 0px rgba(168, 178, 188, 0.26);
}
#faq dt {
	font-size: 17px;
	letter-spacing: 0.03em;
	background-image: url(../img/tremil/faq_icon01.svg);
	background-repeat: no-repeat;
	background-position: left 20px center;
	padding-left: 70px;
	position: relative;
}
#faq dt::after {
	position: absolute;
	top: 50%;
	margin-top: -7px;
	right: 40px;
	content: "";
	vertical-align: middle;
	width: 10px;
	height: 10px;
	border-top: 2px solid #616161;
	border-right: 2px solid #616161;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	transition: all 0.3s;
}
#faq dt.open::after {
	margin-top: -2px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
#faq dd {
	display: none;
	padding: 0 20px 20px;
}
#faq dd p {
	background-color: #ECFDFB;
	background-image: url(../img/tremil/faq_icon02.svg);
	background-repeat: no-repeat;
	background-position: left 10px center;
	border-radius: 5px;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0.03em;
	color: #424242;
	padding: 10px 10px 10px 70px;
}
@media screen and (min-width: 768px) {
	#faq {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#faq h2 {
		width: 225px;
	}
	#faq .faqInner {
		width: 835px;
	}
	#faq dt {
		line-height: 75px;
		cursor: pointer;
	}
}
@media screen and (max-width: 767px) {
	#faq {
		margin: 0 0 60px;
	}
	#faq .faqInner {
		margin: 0 6%;
	}
	#faq h2 {
		font-size: 20px;
		text-align: center;
		margin: 0 0 20px;
	}
	#faq h2::before {
		font-size: 14px;
	}
	#faq dl {
		margin: 0 0 20px;
	}
	#faq dt {
		font-size: 12px;
		background-position: left 10px center;
		background-size: 25px;
		padding: 15px 45px;
	}
	#faq dt::after {
		margin-top: -5px;
		right: 20px;
		width: 8px;
		height: 8px;
	}
	#faq dt.open::after {
		margin-top: -2px;
	}
	#faq dd {
		padding: 0 10px 10px;
	}
	#faq dd p {
		background-position: left 10px center;
		background-size: 25px;
		font-size: 11px;
		padding: 10px 10px 10px 45px;
	}
}
/*---------------------- oemBanner ----------------------*/
#oemBanner {
	margin: 0 0 60px;
}
#oemBanner a {
	display: block;
	position: relative;
	max-width: 1100px;
	margin: auto;
	border-radius: 20px;
	overflow: hidden;
}
#oemBanner h2 {
	position: absolute;
	font-size: 47px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #FFF;
	top: 65px;
	left: 125px;
}
#oemBanner p {
	position: absolute;
	font-size: 27px;
	letter-spacing: 0.03em;
	color: #FFF;
	top: 135px;
	left: 125px;
}
#oemBanner .arrow {
	position: absolute;
	top: 50%;
	margin-top: -24px;
	right: 80px;
}
@media screen and (min-width: 768px) {
	#oemBanner a {
		height: 240px;
		transition: all 0.3s;
	}
	#oemBanner a:hover {
		opacity: 1.0;
	}
	#oemBanner a:hover img {
		opacity: 1.0;
		transform: scale(1.1);
		transform-origin: center bottom;
	}
	#oemBanner a:hover span.arrow img {
		transform: translateX(0) scale(1.4);
		transform-origin: left center;
	}
}
@media screen and (max-width: 767px) {
	#oemBanner {
		margin: 0 6% 40px;
	}
	#oemBanner a {
		border-radius: 10px;
	}
	#oemBanner h2 {
		font-size: 22px;
		top: 50%;
		margin-top: -30px;
		left: 30px;
	}
	#oemBanner p {
		font-size: 13px;
		top: 50%;
		margin-top: 5px;
		left: 30px;
	}
	#oemBanner .arrow img {
		width: 30px;
		height: 30px;
	}
	#oemBanner .arrow {
		margin-top: -15px;
		right: 30px;
	}
}