@charset "UTF-8";
@import "base.css";
@import "fonts.css";

/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////                  © Branding Technology inc.                  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/

/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/

/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
pre,
address,
li,
dt,
dd {
	font-size: 140%;
	-webkit-text-size-adjust: none;
	font-weight: 400;
}


img {
	vertical-align: middle;
	max-width: 100%;
	flex-shrink: 0;
	height: auto;
}

body.active {
	height: 100%;
	overflow: hidden;
}

table {
	width: 100%
}


div>p:last-child {
	margin-bottom: 0
}

* {
	box-sizing: border-box;
	outline: none;
}

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html {
	background: none;
}

body {
	color: #595757;
	font-family: 'Noto Sans JP', sans-serif;
}

.inner {
	width: 1080px;
	margin: 0 auto;
}

.inner-2 {
	width: 1280px;
	margin: 0 auto;
}

#wrapper {
	min-width: 1260px;
	overflow: hidden
}

a {
	text-decoration: none;
	color: #111;
}

a:hover {
	color: #111;
}

p,
dd,
dt,
li,
th,
td {
	line-height: 1em;
	letter-spacing: 0.011em
}

/*==========================================================================*/
/*                               Header                                     */
/*==========================================================================*/
header {
	position: fixed;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 80px;
	z-index: 3;
	background-color: #fff;
}

header h1 {
	margin: 0;
	padding-left: 36px;
	cursor: pointer;
}

header .header-right {
	display: flex;
	align-items: center;
	height: 100%;
}

header .header-nav {
	display: flex;
	align-items: center;
	margin-right: 105px;
}

header .header-nav li:not(:last-child) {
	margin-right: 40px;
}

header .header-nav li a {
	font-size: 20px;
	font-weight: 700;
	color: #000;
}

header .header-contact {
	display: flex;
	align-items: center;
	height: 100%;
}

header .header-contact li {
	display: flex;
	align-items: center;
	height: 100%;
	position: relative;
}

header .header-contact li a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

header .header-contact .phone {
	width: 315px;
}

header .header-contact .phone .icon {
	position: relative;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background-color: #82D214;
	margin-right: 10px;
}

header .header-contact .phone .icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_2_00000113311721884256899530000015009419969414077828_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 73.8 75' style='enable-background:new 0 0 73.8 75;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ffffff;%7D%0A%3C/style%3E%3Cg id='design'%3E%3Cg%3E%3Cpath class='st0' d='M60.4,60.2l-12.6-9.4h-0.1c-0.4-0.3-1-0.5-1.8-0.6c-1.1-0.1-2.1,0.1-3,0.8l-4.4,3.6c-0.1,0.1-0.3,0.2-0.5,0.2 c-0.2,0-0.4,0.1-0.5,0.1l-0.8-0.3c-0.6-0.2-1.4-0.6-2.4-1.3c-1-0.7-2.3-1.7-3.8-3.1s-3.2-3.2-5-5.6c-1.9-2.3-3.4-4.3-4.3-6.1 c-1-1.7-1.7-3.2-2.1-4.4c-0.5-1.3-0.8-2.5-0.9-3.5c0-0.1,0.1-0.3,0.2-0.5s0.2-0.3,0.3-0.4l3.8-3c0.7-0.5,1.1-1.2,1.4-2.1 s0.3-1.7-0.1-2.5l-5.9-15c-0.3-0.6-0.6-1-1-1.4c-0.4-0.4-0.9-0.6-1.5-0.7c-0.8-0.1-1.6,0.2-2.3,0.7L2.6,14.1 c-0.5,0.4-1,0.9-1.4,1.5c-0.4,0.6-0.7,1.3-0.8,1.9c0,0.1-0.1,0.6-0.2,1.4C0,19.7,0,20.9,0,22.4s0.3,3.3,0.8,5.4S2,32.2,3,34.8 s2.5,5.5,4.3,8.7s4.2,6.5,7.1,10.1c3.6,4.6,7.1,8.2,10.5,11c3.4,2.8,6.4,4.9,9.1,6.4s5.1,2.5,7,3c1.9,0.5,3.3,0.8,4.2,0.9 c0.4,0,0.7,0.1,0.9,0.1c0.2,0,0.4,0,0.4,0c0.7,0,1.3-0.2,2-0.4c0.7-0.2,1.3-0.6,1.8-1l10.3-8.2c0.9-0.7,1.3-1.6,1.3-2.7 C61.8,61.8,61.3,60.9,60.4,60.2L60.4,60.2z'/%3E%3Cpath class='st0' d='M45.5,41.9c0.2,0.3,0.5,0.5,0.9,0.5l3.2,0.3c0.7,0.1,1.3-0.4,1.4-1.1c0.8-4.7-0.4-9.5-3.4-13.2 c-3-3.8-7.5-6-12.3-6.2c-0.7,0-1.3,0.5-1.3,1.2l-0.3,3.2c0,0.3,0.1,0.7,0.3,1c0,0,0,0,0,0c0.2,0.3,0.6,0.4,1,0.4 c3.2,0.1,6.2,1.5,8.1,4c2,2.5,2.8,5.7,2.2,8.8C45.2,41.2,45.3,41.6,45.5,41.9L45.5,41.9z'/%3E%3Cpath class='st0' d='M56.7,43.1c0.2,0.3,0.5,0.5,0.9,0.5l3.2,0.3c0.7,0.1,1.3-0.4,1.4-1.1c1-7.7-1.1-15.3-6-21.3 c-4.9-6.1-11.9-9.8-19.7-10.5c-0.7-0.1-1.3,0.5-1.4,1.2l-0.3,3.2c0,0.3,0.1,0.7,0.3,1c0,0,0,0,0,0c0.2,0.3,0.5,0.4,0.9,0.5 c6.2,0.5,11.8,3.5,15.7,8.3c3.9,4.8,5.5,10.8,4.7,17C56.4,42.5,56.5,42.8,56.7,43.1L56.7,43.1z'/%3E%3Cpath class='st0' d='M65.4,14.2C58.6,5.8,48.5,0.6,37.6,0c-0.7,0-1.3,0.5-1.4,1.2l-0.3,3.2c0,0.3,0.1,0.7,0.3,0.9c0,0,0,0,0,0 c0.2,0.3,0.6,0.4,0.9,0.4c9.3,0.5,17.9,4.9,23.7,12.1c5.7,7.1,8.2,16.3,6.7,25.3c-0.1,0.3,0,0.7,0.3,1s0.5,0.5,0.9,0.5l3.2,0.3 c0.7,0.1,1.3-0.4,1.4-1.1C75,33.4,72.1,22.6,65.4,14.2L65.4,14.2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") no-repeat center /contain;
	width: 29px;
	height: 29px;
}

header .header-contact .phone .txt span.big {
	font-size: 38px;
	font-weight: 700;
	line-height: 0.64em;
	letter-spacing: -0.03em;
	color: #323232;
}

header .header-contact .phone .txt span.small {
	font-size: 12px;
	font-weight: 700;
	color: #323232;
}

header .header-contact .mail {
	display: flex;
	justify-content: center;
	width: 220px;
	background-color: #FAE60A;
	transition: all ease .3s;
}

header .header-contact .mail .icon {
	position: relative;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background-color: #82D214;
	margin-right: 20px;
	transition: all ease .3s;
}

header .header-contact .mail .icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../images/mail.png) no-repeat center /cover;
	width: 28px;
	height: 18px;
}

header .header-contact .mail .txt {
	position: relative;
	left: -10px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.33em;
	color: #000;
	transition: all ease .3s;
}

header .header-contact .line {
	width: 80px;
}

header .header-contact .line .icon {
	width: 100%;
	height: 100%;
	position: relative;
}

header .header-contact .line .icon::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0%;
	width: 100%;
	height: 100%;
	background: url(../images/line.png) no-repeat center /cover;
}

/*==========================================================================*/
/*                               ALL                                        */
/*==========================================================================*/
/* FONT PAGE  */
.en {
	font-family: 'Lato', sans-serif;
}



/* FIX FONT + PADDING */
.pdb30 {
	padding: 0 0 30px
}

.pdb50 {
	padding: 0 0 50px;
}

.mgb0 {
	margin-bottom: 0;
}

.mgb30 {
	margin-bottom: 30px;
}

.mgb50 {
	margin-bottom: 50px;
}

.fs12 {
	font-size: 12px;
}

.fs16 {
	font-size: 16px;
}

.main-title {
	position: relative;
	z-index: 1;
	width: max-content;
	margin: 0 auto;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.5em;
	color: #fff;
	text-shadow: 3px 3px 5px rgb(0 0 0 / 20%), 3px 3px 5px rgb(0 0 0 / 20%);
}

.main-title::before {
	content: '';
	position: absolute;
	bottom: -25px;
	left: 50%;
	transform: translateX(-50%);
	width: 580px;
	height: 17px;
	background: url(../images/tlt-bf1.png) no-repeat center /cover;
	z-index: 3;
}


.block-title {
	font-size: 56px;
	font-weight: 700;
	color: #000;
	text-align: center;
}


#btn-top {
	position: fixed;
	bottom: 0;
	right: -100%;
	z-index: 20;
	width: 60px;
	height: 60px;
	background-color: #0AA046;
	cursor: pointer;
	transition: all ease .8s;
	opacity: 0;
}

#btn-top.active {
	right: 0;
	opacity: 1;
}

#btn-top::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 20px 20px 20px;
	border-color: transparent transparent #fff transparent;
}

header .btn-nav {
	width: 40px;
	height: 45px;
	position: fixed;
	top: 10px;
	right: 15px;
	cursor: pointer;
	transition: all ease .5s;
	z-index: 99;
	overflow: hidden;
}

header .btn-nav span:not(:first-child) {
	display: inline-block;
	width: 40px;
	height: 2px;
	background-color: #009D57;
	position: absolute;
	left: 0;
}

header .btn-nav span:nth-child(2) {
	bottom: 25px;
	transition: all ease .5s;
}

header .btn-nav span:nth-child(3) {
	bottom: 15px;
	transition: all ease .5s;
}

header .btn-nav span:nth-child(4) {
	bottom: 5px;
}

header .btn-nav span:first-child {
	position: absolute;
	top: -5px;
	left: 0;
	display: inline-block;
	width: 100%;
	color: #009D57;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
}

header .btn-nav.active span:not(:first-child) {
	background-color: #fff;
}

header .btn-nav.active span:first-child {
	color: #fff;
}

header .btn-nav.active span:nth-child(2) {
	transform: rotate(45deg);
	bottom: 15px;
}

header .btn-nav.active span:nth-child(3) {
	transform: rotate(-45deg);
	bottom: 15px;
}

header .btn-nav.active span:nth-child(4) {
	opacity: 0;
}

/*==========================================================================*/
/*                               Main                                       */
/*==========================================================================*/
#main {
	position: relative;
	z-index: 2;
	padding-top: 80px;
}

.banner {
	background: url(../images/banner-bg.jpg) no-repeat center /cover;
}

.banner .inner-2 {
	height: 100%;
	min-height: 880px;
	display: flex;
	align-items: flex-end;
}

.banner .banner-l,
.banner .banner-r {
	position: relative;
	flex: 0 0 50%;
	max-width: 50%;
	height: 100%;
	min-height: 880px;
}


.banner .banner-l .img {
	position: absolute;
	bottom: 0;
	left: -26%;
	width: 866px;
}

.banner .banner-l .txt {
	position: absolute;
	top: 25%;
	left: 11%;
	font-size: 18px;
	color: #fff;
	font-weight: 700;
	line-height: 1.44em;
	letter-spacing: 0.05em;
	text-shadow: 4px 4px 5px rgb(0 0 0 / 20%), 4px 4px 5px rgb(0 0 0 / 20%);
}

.banner .banner-l .txt span.big {
	font-size: 24px;
	line-height: 1.083em;
}

.banner .banner-r {
	display: flex;
	justify-content: flex-end;
	flex-direction: column;
}

.banner .banner-r .banner-tlt {
	position: absolute;
	top: 3%;
	left: -32%;
	width: 936px;
	height: auto;
}

.banner .banner-list {
	position: relative;
	left: 10px;
	margin-bottom: 75px;
}

.banner .banner-list .list-l {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 460px;
}

.banner .banner-list .list-l .item {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 225px;
	height: 56px
}

.banner .banner-list .list-l .item:not(:last-child) {
	margin-bottom: 10px;
}

.banner .banner-list .list-l .item span {
	font-size: 34px;
	font-weight: 700;
	color: #fff;
}

.banner .banner-list .list-l .item1 {
	background-color: #FF7BA9;
}

.banner .banner-list .list-l .item2 {
	background-color: #3FA6F2;
}

.banner .banner-list .list-l .item3 {
	background-color: #AD57BD;
}

.banner .banner-list .list-l .item4 {
	background-color: #FF901E;
}

.banner .banner-list .list-l .item5 {
	background-color: #FF1D25;
	/* width: 100%; */
}
.banner .banner-list .list-l .item7 {
	background-color:#0AA046;
	/* width: 100%; */
}
.banner .banner-list .list-r {
	position: absolute;
	top: 50%;
	right: -50px;
	transform: translateY(-50%);
	width: 210px;
}

.banner .banner-content {
	position: relative;
	font-size: 45px;
	font-weight: 700;
	color: #FF1D25;
	text-align: center;
	letter-spacing: -0.03em;
	margin-bottom: 42px;
}

.banner .banner-service {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.banner .banner-service li {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 340px;
	height: 125px;
	background-color: #fff;
	border-radius: 60px;
}

.banner .banner-service li:not(:last-child) {
	margin-right: 25px;
}

.banner .banner-service li span {
	position: relative;
	font-size: 45px;
	font-weight: 700;
	letter-spacing: 0.05em;
	color: #000;
	margin-top: 15px;
}

.banner .banner-service li span.dot {
	position: relative;
}

.banner .banner-service li span.dot::before {
	content: '';
	position: absolute;
	top: -17px;
	left: 50%;
	transform: translateX(-50%);
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background-color: #82D214;
}

.banner .banner-bottom {
	padding: 78px 0 80px;
	min-height: 370px;
	background-color: #FAE60A;
}

.sec-fmail {
	position: relative;
	z-index: 2;
	padding: 85px 0;
	min-height: 670px;
	background: url(../images/fmail-bg.jpg) no-repeat center /cover;
}

.sec-fmail .fmail-wrapper {
	margin-top: 47px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.sec-fmail .fmail-wrapper .item {
	display: flex;
	align-items: center;
	position: relative;
	height: 160px;
	border-radius: 90px;
	background-color: #fff;
	padding: 0 25px;
	transition: all ease .5s;
}

.sec-fmail .fmail-wrapper .item a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.sec-fmail .fmail-wrapper .item.item1 .icon,
.sec-fmail .fmail-wrapper .item.item2 .icon {
	position: relative;
	width: 134px;
	height: 134px;
	border-radius: 50%;
	background-color: #82D214;
}

.sec-fmail .fmail-wrapper .item.item1 .icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../images/mail2.png) no-repeat center /cover;
	width: 70px;
	height: 50px;
}

.sec-fmail .fmail-wrapper .item.item2 .icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_2_00000113311721884256899530000015009419969414077828_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 73.8 75' style='enable-background:new 0 0 73.8 75;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ffffff;%7D%0A%3C/style%3E%3Cg id='design'%3E%3Cg%3E%3Cpath class='st0' d='M60.4,60.2l-12.6-9.4h-0.1c-0.4-0.3-1-0.5-1.8-0.6c-1.1-0.1-2.1,0.1-3,0.8l-4.4,3.6c-0.1,0.1-0.3,0.2-0.5,0.2 c-0.2,0-0.4,0.1-0.5,0.1l-0.8-0.3c-0.6-0.2-1.4-0.6-2.4-1.3c-1-0.7-2.3-1.7-3.8-3.1s-3.2-3.2-5-5.6c-1.9-2.3-3.4-4.3-4.3-6.1 c-1-1.7-1.7-3.2-2.1-4.4c-0.5-1.3-0.8-2.5-0.9-3.5c0-0.1,0.1-0.3,0.2-0.5s0.2-0.3,0.3-0.4l3.8-3c0.7-0.5,1.1-1.2,1.4-2.1 s0.3-1.7-0.1-2.5l-5.9-15c-0.3-0.6-0.6-1-1-1.4c-0.4-0.4-0.9-0.6-1.5-0.7c-0.8-0.1-1.6,0.2-2.3,0.7L2.6,14.1 c-0.5,0.4-1,0.9-1.4,1.5c-0.4,0.6-0.7,1.3-0.8,1.9c0,0.1-0.1,0.6-0.2,1.4C0,19.7,0,20.9,0,22.4s0.3,3.3,0.8,5.4S2,32.2,3,34.8 s2.5,5.5,4.3,8.7s4.2,6.5,7.1,10.1c3.6,4.6,7.1,8.2,10.5,11c3.4,2.8,6.4,4.9,9.1,6.4s5.1,2.5,7,3c1.9,0.5,3.3,0.8,4.2,0.9 c0.4,0,0.7,0.1,0.9,0.1c0.2,0,0.4,0,0.4,0c0.7,0,1.3-0.2,2-0.4c0.7-0.2,1.3-0.6,1.8-1l10.3-8.2c0.9-0.7,1.3-1.6,1.3-2.7 C61.8,61.8,61.3,60.9,60.4,60.2L60.4,60.2z'/%3E%3Cpath class='st0' d='M45.5,41.9c0.2,0.3,0.5,0.5,0.9,0.5l3.2,0.3c0.7,0.1,1.3-0.4,1.4-1.1c0.8-4.7-0.4-9.5-3.4-13.2 c-3-3.8-7.5-6-12.3-6.2c-0.7,0-1.3,0.5-1.3,1.2l-0.3,3.2c0,0.3,0.1,0.7,0.3,1c0,0,0,0,0,0c0.2,0.3,0.6,0.4,1,0.4 c3.2,0.1,6.2,1.5,8.1,4c2,2.5,2.8,5.7,2.2,8.8C45.2,41.2,45.3,41.6,45.5,41.9L45.5,41.9z'/%3E%3Cpath class='st0' d='M56.7,43.1c0.2,0.3,0.5,0.5,0.9,0.5l3.2,0.3c0.7,0.1,1.3-0.4,1.4-1.1c1-7.7-1.1-15.3-6-21.3 c-4.9-6.1-11.9-9.8-19.7-10.5c-0.7-0.1-1.3,0.5-1.4,1.2l-0.3,3.2c0,0.3,0.1,0.7,0.3,1c0,0,0,0,0,0c0.2,0.3,0.5,0.4,0.9,0.5 c6.2,0.5,11.8,3.5,15.7,8.3c3.9,4.8,5.5,10.8,4.7,17C56.4,42.5,56.5,42.8,56.7,43.1L56.7,43.1z'/%3E%3Cpath class='st0' d='M65.4,14.2C58.6,5.8,48.5,0.6,37.6,0c-0.7,0-1.3,0.5-1.4,1.2l-0.3,3.2c0,0.3,0.1,0.7,0.3,0.9c0,0,0,0,0,0 c0.2,0.3,0.6,0.4,0.9,0.4c9.3,0.5,17.9,4.9,23.7,12.1c5.7,7.1,8.2,16.3,6.7,25.3c-0.1,0.3,0,0.7,0.3,1s0.5,0.5,0.9,0.5l3.2,0.3 c0.7,0.1,1.3-0.4,1.4-1.1C75,33.4,72.1,22.6,65.4,14.2L65.4,14.2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A") no-repeat center /contain;
	width: 85px;
	height: 85px;
}

.sec-fmail .fmail-wrapper .item.item3 .icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../images/phone2.png) no-repeat center /cover;
	width: 124px;
	height: 124px;
}

.sec-fmail .fmail-wrapper .item.item1 {
	width: 100%;
	background-color: #FAE60A;
	margin-bottom: 40px;
}

.sec-fmail .fmail-wrapper .item.item2 {
	width: 53%;
}

.sec-fmail .fmail-wrapper .item.item3 {
	width: 44.3%;
}

.sec-fmail .item-wrapper {
	display: flex;
	align-items: center;
}

.sec-fmail .item-wrapper .wrapper-r {
	margin-left: 10px;
}

.sec-fmail .wrapper-r .txt {
	position: relative;
	top: -5px;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: -0.05em;
	line-height: 1.3125em;
	color: #000;
	margin-bottom: 5px;
}

.sec-fmail .wrapper-r .btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 294px;
	height: 59px;
	margin: 0 auto;
	border-radius: 40px;
	background-color: #1B1464;
	font-size: 30px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.08em;
}

.sec-fmail .wrapper-r .txt2 {
	position: relative;
	top: -15px;
	font-weight: 700;
	color: #000;
	text-align: center;
	margin-left: 5px;
}

.sec-fmail .wrapper-r .txt2 span.big {
	font-size: 30px;
	line-height: 1.75em;
	position: relative;
	left: 13px;
}

.sec-fmail .wrapper-r .txt2 span.small {
	position: relative;
	top: -5px;
	margin-bottom: 10px;
	font-size: 18px;
	line-height: 2em;
}

.sec-fmail .wrapper-r .txt2 .en {
	position: relative;
	top: 10px;
	left: 10px;
	font-size: 40px;
	color: #0AA046;
	letter-spacing: -0.03em;
}

.sec-fmail .fmail-wrapper .item.item3 .icon {
	position: relative;
	width: 124px;
	height: 124px;
	margin-left: 20px;
	margin-right: 15px;
}

.sec-fmail .fmail-wrapper .item.item3 .icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: url(../images/line2.png) no-repeat center /cover;
	width: 124px;
	height: 124px;
}

.sec-fmail .wrapper-r .txt3 {
	font-size: 40px;
	font-weight: 700;
	color: #000;
	line-height: 1.25em;
}

.sec-fmail .wrapper-r .txt3 span.gr {
	color: #06C355;
}

.block1 .block1-top {
	padding: 220px 0 105px;
}

.block1 .block1-top .block1-title {
	display: flex;
	align-items: center;
	width: max-content;
	margin: 0 auto;
	position: relative;
	left: 10px;
}

.block1 .block1-top .block1-title span {
	display: inline-block;
}

.block1 .block1-top .block1-title span.title-l {
	position: relative;
	z-index: 3;
	width: 450px;
	height: 125px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 53px;
	font-weight: 700;
	color: #fff;
	margin-right: 30px;
}

.block1 .block1-top .block1-title span.title-l::before {
	content: '';
	position: absolute;
	top: -186px;
	left: 49%;
	z-index: -2;
	transform: translateX(-50%);
	background: url(../images/block1-img-01.png) no-repeat center /cover;
	width: 156px;
	height: 242px;
}

.block1 .block1-top .block1-title span.title-l::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-color: #0AA046;
}

.block1 .block1-top .block1-title span.title-r {
	font-size: 53px;
	font-weight: 700;
	color: #000;
}

.block1 .block1-top .block1-title .abs {
	position: absolute;
	top: -130px;
	left: 56%;
	display: flex;
	justify-content: center;
	width: 504px;
	height: 70px;
	transform: translateX(-50%);
	font-size: 36px;
	font-weight: 700;
	color: #56B4D8;
	letter-spacing: -0.005em;
}

.block1 .block1-top .block1-title .abs::before {
	content: '';
	position: absolute;
	top: 0;
	left: -30px;
	width: 536px;
	height: 70px;
	background: url('../images/block1-boxchat.png') no-repeat center /cover;
}

.block1 .block1-top .block1-title .abs span {
	position: relative;
	top: 8px;
	left: 9px;
	width: max-content;
}

.block1-center {
	padding: 190px 0 0;
	background: #fff url(../images/block1-bg.jpg) no-repeat center /cover;
	min-height: 980px;
}

.block1-center .bottom-wrapper {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	width: auto;
	margin-bottom: 88px;
}

.block1-center .bottom-wrapper .step {
	display: flex;
	align-items: center;
	width: 740px;
	height: 100px;
	background: #fff;
}

.block1-center .bottom-wrapper .step:not(:last-child) {
	margin-bottom: 20px;
}

.block1-center .step .step-num {
	width: 80px;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: #82D214;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
}

.block1-center .step .step-num span.en {
	display: inline-block;
	position: relative;
	top: -10px;
	margin-top: 20px;
	font-size: 40px;
}

.block1-center .step .step-content {
	width: 480px;
	font-size: 28px;
	font-weight: 700;
	color: #000;
	padding-left: 20px;
	line-height: 1.21em;
}

.block1-center .step .step-img {
	width: 180px;
}

.block1-center .txt {
	font-size: 46px;
	font-weight: 700;
	letter-spacing: -0.005em;
	padding: 0 20px;
	color: #fff;
}

.block1-center .txt span.dot {
	position: relative;
}

.block1-center .txt span.dot::before {
	content: '';
	position: absolute;
	top: -13px;
	left: 20px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #FAE60A;
}

.block1-bottom {
	padding: 55px 0;
	min-height: 260px;
	background: url(../images/block1-bg2.jpg) no-repeat center /cover;
}

.block1-bottom h4 {
	position: relative;
	left: 20px;
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	line-height: 2em;
	width: max-content;
	margin: 0 auto;
}

.block2 {
	position: relative;
	z-index: 1;
	padding: 140px 0 75px;
}

.block2::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background: url(../images/block2-bf.png) no-repeat center /cover;
	width: 100%;
	height: calc((100vw * 1855) / 1916);
}

.block2::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: -1;
	background: url(../images/block2-af.png) no-repeat center /cover;
	width: 100%;
	height: calc((100vw * 1922) / 1921);
}

.block2 .block-title {
	margin-bottom: 92px;
}

.block2 .block2-wrapper {
	display: flex;
	flex-wrap: wrap;
}

.block2 .block2-wrapper .item {
	width: 100%;
	background-color: #fff;
	box-shadow: 5px 5px 15px 0 rgba(0, 0, 0, 0.3);
	padding-bottom: 45px;
	margin-bottom: 80px;
}

.block2 .block2-wrapper .item-top {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}

.block2 .block2-wrapper .top-img {
	position: relative;
	flex: 0 0 420px;
	max-width: 420px;
	padding-top: 15px;
}

.block2 .block2-wrapper .top-img .des {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 85px;
	background-color: #82D214;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.4em;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
}

.block2 .block2-wrapper .top-content {
	flex: 0 0 calc(100% - 420px);
	max-width: calc(100% - 420px);
	padding-top: 35px;
	padding-left: 57px;
}

.block2 .block2-wrapper .top-content h4 {
	font-size: 30px;
	font-weight: 700;
	color: #000;
	line-height: 1.533em;
	letter-spacing: 0;
	margin-bottom: 30px;
}

.block2 .block2-wrapper .top-content ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 88%;
}

.block2 .block2-wrapper .top-content ul li {
	flex: 0 0 50%;
	max-width: 50%;
	display: flex;
	align-items: center;
	margin-bottom: 23px;
}

.block2 .block2-wrapper .top-content ul .is-l {
	width: 102px;
	height: 37px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #82D214;
}

.block2 .block2-wrapper .top-content ul .is-l span {
	font-size: 18px;
	font-weight: 700;
	color: #82D214;
}

.block2 .block2-wrapper .top-content ul .is-r {
	margin-left: 20px;
}

.block2 .block2-wrapper .top-content ul .is-r span {
	font-size: 18px;
	font-weight: 700;
	color: #000;
}

.block2 .block2-wrapper .top-content ul.first {
	max-width: 100%;
}

.block2 .block2-wrapper .top-content ul.first li {
	flex: 0 0 100%;
	max-width: 100%;
}

.block2 .block2-wrapper .top-content ul.first .is-l {
	width: 200px;
	height: 42px;
}

.block2 .block2-wrapper .top-content ul.first .is-l span {
	font-size: 24px;
}

.block2 .block2-wrapper .top-content ul.first .is-r {
	margin-left: 35px;
}

.block2 .block2-wrapper .top-content ul.first .is-r span {
	font-size: 36px;
}

.block2 .item-bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 45px 0 55px;
}

.block2 .item-bottom .bottom-l {
	flex: 0 0 calc(100% - 500px);
	max-width: calc(100% - 500px);
	padding-right: 40px;
}

.block2 .item-bottom .bottom-l h5 {
	font-size: 24px;
	font-weight: 700;
	color: #82D214;
	letter-spacing: 0;
	line-height: 1.667em;
	margin-bottom: 15px;
}

.block2 .item-bottom .bottom-l p {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 2em;
	color: #000;
}

.block2 .item-bottom .bottom-r {
	flex: 0 0 500px;
	max-width: 500px;
	position: relative;
	margin-top: 15px;
	left: -5px;
}

.block2 .item-bottom .bottom-r h5 {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 40px;
	background-color: #82D214;
	margin-bottom: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 21px;
	font-weight: 700;
	color: #fff;
}

.block2 .item-bottom .bottom-r h5::before {
	content: '';
	position: absolute;
	top: 0;
	left: -1px;
	z-index: 2;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 0 20px 15px;
	border-color: transparent transparent transparent #fff;
}

.block2 .item-bottom .bottom-r h5::after {
	content: '';
	position: absolute;
	top: 0;
	right: -1px;
	z-index: 2;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 15px 20px 0;
	border-color: transparent #fff transparent transparent;
}

.block2 .item-bottom .bottom-r .box {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	min-height: 340px;
	background-color: #F9F7E7;
	border: 1px solid #C4AF96;
	border-radius: 10px;
	padding: 25px 15px;
}

.block2 .item-bottom .bottom-r .is-item {
	position: relative;
	flex: 0 0 50%;
	max-width: 50%;
}



.block2 .item-bottom .bottom-r .is-item:first-child {
	border-right: 2px dashed #000;
	padding-right: 25px;
}

.block2 .item-bottom .bottom-r .is-item:last-child {
	padding-left: 25px;
}

.block2 .item-bottom .bottom-r .name {
	width: 200px;
	height: 36px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-transform: uppercase;
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	margin: 0 auto 23px;
}

.block2 .item-bottom .bottom-r .name.before {
	background-color: #56B4D8;
}

.block2 .item-bottom .bottom-r .name.after {
	background-color: #EF88BE;
}

.block2 .item-bottom .bottom-r .price {
	font-size: 29px;
	font-weight: 700;
	color: #000;
	text-align: center;
	margin-bottom: 8px;
	min-height: 30px;
	letter-spacing: -0.01em;
}

.block2 .item-bottom .bottom-r .content {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	color: #000;
	margin-bottom: 10px;
	line-height: 18px;
}

.block2 .item-bottom .bottom-r .txt {
	position: relative;
	top: 10px;
	left: 5px;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.05em;
	text-align: center;
	color: #FF1D25;
	line-height: 1.25em;
	min-height: 95px;
	margin-bottom: 5px;
}

.block2 .item-bottom .bottom-r .txt span.nu {
	margin-right: 5px;
}

.block2 .item-bottom .bottom-r ul li {
	width: 100%;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #FFFFFF;
}

.block2 .item-bottom .bottom-r ul li:not(:last-child) {
	margin-bottom: 5px;
}

.block2 .item-bottom .bottom-r ul li span {
	font-size: 18px;
	font-weight: 700;
	color: #000;
	text-align: center;
	letter-spacing: 0.03em;
}

.block2 .item-bottom .bottom-r ul li span.num {
	margin: 0 5px;
}


.block2 .item-bottom .bottom-r .is-item ul {
	position: absolute;
	left: 0;
	bottom: 5px;
	width: 210px;
}
/* .block2 .item1 .item-bottom .bottom-r .is-item ul{
	bottom: -18px;
} */
.block2 .item1 .item-bottom .bottom-r .box {
	min-height: 365px;
  }
.block2 .item-bottom .bottom-r .is-item:last-child ul {
	left: 25px;
}

.block2 .item-bottom .bottom-r .is-item:first-child ul::before {
	content: '';
	position: absolute;
	top: 0;
	right: -48px;
	width: 48px;
	height: 100%;
	background-color: #FF1D25;
	clip-path: polygon(0 0%, 100% 30%, 100% 100%, 0% 100%);
}
.block2 .item.item1 .item-bottom .bottom-r .is-item:first-child ul::before {
	display: none;
}
.block2 .item.item1 .item-bottom .bottom-r .is-item:last-child ul{
	position: relative;
	left: 0;
}
.block2 .item.item1 .item-bottom .bottom-r .is-item:last-child ul::before {
	content: '';
	position: absolute;
	top: 0;
	left: -48px;
	width: 48px;
	height: 100%;
	background-color: #FF1D25;
	clip-path:polygon(-1px 35.39%, 100% 0.36%, 100% 100%, 0% 100%);
}
/* .block2 .item.item1 .item-bottom .bottom-r .is-item:first-child ul::before {
	clip-path: polygon(0px 0%, 102.08% 21.60%, 100% 100%, 0% 100%);
} */
.block3 {
	position: relative;
	z-index: 1;
	padding: 95px 0 55px;
	background-color: #FCFBF2;
}

.block3::before {
	content: '';
	position: absolute;
	top: -195px;
	left: 0;
	z-index: -1;
	background: url(../images/block3-bf.png) no-repeat center /cover;
	width: 1806px;
	height: 1121px;
}

.block3::after {
	content: '';
	position: absolute;
	bottom: -195px;
	right: 0;
	z-index: -1;
	background: url(../images/block3-af.png) no-repeat center /cover;
	width: 1807px;
	height: 1120px;
}

.block3 .block-title {
	margin-bottom: 78px;
}

.block3 .block3-wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.block3 .column {
	flex: 0 0 520px;
	max-width: 520px;
	margin-bottom: 40px;
}

.block3 .column .item {
	background-color: #fff;
	width: 100%;
	min-height: 660px;
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.3);
	border-radius: 15px;
	padding: 25px 30px;
}
.block3 .column.column1 .item{
	min-height: 685px;
}
.block3 .item h4 {
	position: relative;
	padding-left: 60px;
	margin-bottom: 15px;
}

.block3 .column .item h4::before {
	content: '';
	position: absolute;
	top: -5px;
	left: -40px;
	width: 86px;
	height: 86px;
	background: url(../images/block3-img-01.png) no-repeat center /cover;
}

.block3 .column.column9 .item h4::before{
	background-image: url(../images/block3-img-01-9.png);

}
.block3 .column.column1 .item h4::before {
	background-image: url(../images/block3-img-01-7.png);
}

.block3 .column.column2 .item h4::before {
	background-image: url(../images/block3-img-01-2.png);
}

.block3 .column.column3 .item h4::before {
	background-image: url(../images/block3-img-01-3.png);
}

.block3 .column.column4 .item h4::before,
.block3 .column.column8 .item h4::before {
	background-image: url(../images/block3-img-01-4.png);
}

.block3 .column.column5 .item h4::before {
	background-image: url(../images/block3-img-01-5.png);
}

.block3 .column.column6 .item h4::before {
	background-image: url(../images/block3-img-01-6.png);
}

.block3 .column.column7 .item h4::before {
	background-image: url(../images/block3-img-01-8.png);
}

.block3 .item h4 span {
	display: inline-block;
}

.block3 .item h4 span.big {
	font-size: 34px;
	font-weight: 700;
	letter-spacing: -0.06em;
	line-height: 1.3em;
	color: #0AA046;
}

.block3 .item h4 span.small {
	font-size: 20px;
	font-weight: 700;
	line-height: 2em;
	color: #000;
}

.block3 .item .price {
	background-color: #F7F4D4;
	padding: 20px 18px 18px;
	margin-bottom: 17px;
	margin-top: 10px;
}

.block3 .item .price dl {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.block3 .item .price dl:not(:last-child) {
	margin-bottom: 12px;
}

.block3 .item .price dl dt,
.block3 .item .price dl dd {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1em;
	color: #000;
}

.block3 .item .price dl dd span.num {
	font-size: 30px;
	position: relative;
	top: 2px;
	margin-right: 10px;
}

.block3 .info {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}


.block3 .info.if3 dl dt {
	width: auto;
	padding: 0 5px;
}

.block3 .info.if3 dl dd {
	margin-left: 10px;
}

.block3 .info dl {
	flex: 0 0 220px;
	max-width: 220px;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

.block3 .info dl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 30px;
	background-color: #EF88BE;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	color: #fff;
}

.block3 .info.if2 dl dt {
	background-color: #56B4D8;
}

.block3 .info dl dd {
	margin-left: 20px;
	font-size: 18px;
	font-weight: 700;
	color: #000;
}

.block3 h5 {
	width: 100%;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	margin: 10px 0 20px;
	background-color: #808080;
}

.block3 .txt {
	font-size: 16px;
	font-weight: 700;
	color: #000;
	margin-left: -11px;
	margin-bottom: 15px;
}

.block3 .txt2 {
	font-size: 18px;
	font-weight: 700;
	color: #000;
	line-height: 1.778em;
	padding-left: 5px;
	letter-spacing: -0.03em;
}

.block4 .block4-top {
	padding: 135px 0 120px;
	background: url(../images/block4-bg.jpg) no-repeat center /cover;
	min-height: 1710px;
}

.block4 .block-title2 {
	position: relative;
	text-align: center;
	font-size: 36px;
	font-weight: 700;
	line-height: 1em;
	letter-spacing: 0;
	color: #000;
	margin-bottom: 165px;
}

.block4 .block-title2::before {
	content: '';
	position: absolute;
	bottom: -40px;
	left: calc(50% - 273px);
	background: url(../images/tlt-bf2.png) no-repeat center /cover;
	width: 546px;
	height: 16px;
}

.block4 .block4-top .block4-wrapper {
	position: relative;
	display: flex;
	flex-wrap: wrap;
}

.block4 .block4-top .column {
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.block4 .block4-top .column:not(:last-child) {
	margin-bottom: 160px;
}

.block4 .block4-top .img {
	position: absolute;
	top: -60px;
	left: 0;
}

.block4 .block4-top .img span {
	position: absolute;
	bottom: 10px;
	left: 10px;
	color: #fff;
}

.block4 .block4-top .content {
	width: 820px;
	min-height: 540px;
	background-color: #fff;
	box-shadow: 7px 7px 15px 0 rgba(0, 0, 0, 0.3);
	padding: 43px 58px 40px 210px;
}

.block4 .block4-top .content h4 {
	font-size: 36px;
	letter-spacing: 0;
	line-height: 1;
	font-weight: 700;
	color: #82D214;
	padding-bottom: 22px;
	border-bottom: 1px solid #82D214;
	margin-bottom: 30px;
}

.block4 .block4-top .content .title {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.85em;
	color: #000;
	letter-spacing: -0.03em;
	margin-bottom: 23px;
	padding-left: 5px;
}

.block4 .block4-top .content .txt {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 2em;
	padding-left: 5px;
	color: #000;
}

.block4 .block4-bottom {
	padding: 120px 0 120px;
	position: relative;
	z-index: 1;
}

.block4 .block4-bottom::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url(../images/block4-bg2.png);
	width: 100%;
	height: 2552px;
}

.block4 .block4-bottom {
	padding: 272px 0 155px;
}

.block4 .bottom-wrapper1 {
	display: flex;
	justify-content: flex-start;
	position: relative;
	margin-bottom: 155px;
}

.block4 .bottom-wrapper1 .wrapper-l {
	width: 550px;
}

.block4 .bottom-wrapper1 .wrapper-l h4 {
	position: relative;
	font-size: 36px;
	font-weight: 700;
	letter-spacing: 0;
	color: #000;
	padding-left: 10px;
	margin-bottom: 67px;
}

.block4 .bottom-wrapper1 .wrapper-l h4::before {
	content: '';
	position: absolute;
	bottom: -35px;
	left: 10px;
	background: url(../images/tlt-bf3.png) no-repeat center /cover;
	width: 356px;
	height: 17px;
}

.block4 .bottom-wrapper1 .wrapper-l .title {
	font-size: 30px;
	font-weight: 700;
	color: #82D214;
	line-height: 1.8em;
	letter-spacing: 0;
	padding-left: 10px;
	margin-bottom: 25px;
}

.block4 .bottom-wrapper1 .wrapper-l .txt {
	font-size: 17px;
	font-weight: 700;
	color: #000;
	line-height: 2em;
}

.block4 .bottom-wrapper1 .wrapper-r {
	position: absolute;
	top: 2px;
	right: -420px;
}

.block4 .block4-bottom .bottom-tlt {
	position: relative;
	font-size: 36px;
	font-weight: 700;
	color: #000;
	letter-spacing: 0;
	text-align: center;
	margin-bottom: 85px;
}

.block4 .block4-bottom .bottom-tlt::before {
	content: '';
	position: absolute;
	bottom: -40px;
	left: calc(50% - 126px);
	background: url(../images/tlt-bf4.png) no-repeat center /cover;
	width: 252px;
	height: 17px;
}

.block4 .block4-bottom .bottom-wrapper2 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 150px;
}

.block4 .bottom-wrapper2 .column {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	max-height: 300px;
	background-color: #fff;
	box-shadow: 5px 5px 8px rgb(0 0 0 / 10%),
		-5px -5px 8px rgb(0 0 0 / 10%), -5px 5px 8px rgb(0 0 0 / 10%), 5px -5px 8px rgb(0 0 0 / 10%)
}

.block4 .bottom-wrapper2 .column:not(:last-child) {
	margin-bottom: 39px;
}

.block4 .bottom-wrapper2 .column .img {
	flex: 0 0 440px;
	max-width: 440px;
}

.block4 .bottom-wrapper2 .column .content {
	flex: 0 0 calc(100% - 440px);
	max-width: calc(100% - 440px);
	padding: 30px 30px 10px 68px;
	position: relative;
}

.block4 .bottom-wrapper2 .column .content h3 {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.667em;
	letter-spacing: 0;
	color: #000;
	margin-bottom: 30px;
}

.block4 .bottom-wrapper2 .column .content h3 span {
	position: relative;
	z-index: 1;
	display: inline-block;
}

.block4 .bottom-wrapper2 .column .content h3 span::after {
	content: '';
	position: absolute;
	bottom: 3px;
	left: -6px;
	z-index: -1;
	width: calc(100% + 10px);
	height: 15px;
	background-color: #FAF775;
}

.block4 .bottom-wrapper2 .column .content p {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.9em;
	color: #000;
	padding-right: 30px;
}

.block4 .bottom-wrapper2 .column p.num {
	position: absolute;
	top: -26px;
	left: -20px;
	z-index: 2;
	width: 116px;
	height: 116px;
	font-size: 32px;
	font-weight: 700;
	color: #fff;
	padding: 0px 0px 0 16px
}

.block4 .bottom-wrapper2 .column .num::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 116px 116px 0 0;
	border-color: #56B4D8 transparent transparent transparent;
}

.block4 .block4-bottom .bottom-flow {
	display: flex;
	justify-content: space-between;
}

.block4 .bottom-flow .flow-l {
	flex: 0 0 280px;
	max-width: 280px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	position: relative;
	height: 230px;
	background-color: #82D214;
}

.block4 .bottom-flow .flow-l::before {
	content: '';
	position: absolute;
	top: 63px;
	right: -25px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 0 25px 40px;
	border-color: transparent transparent transparent #82D214;
}

.block4 .bottom-flow .flow-l p {
	position: absolute;
	top: 46px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	text-align: center;
	padding-bottom: 15px;
	border-bottom: 1px solid #fff;
}

.block4 .bottom-flow .flow-l h4 {
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0;
	margin-top: 40px;
}

.block4 .bottom-flow .flow-r {
	flex: 0 0 calc(100% - 280px);
	max-width: calc(100% - 280px);
	display: flex;
	justify-content: flex-end;
	position: relative;
	top: -5px;
}

.block4 .bottom-flow .flow-r li {
	position: relative;
	flex: 0 0 calc(100% / 3);
	max-width: calc(100% / 3);
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.block4 .bottom-flow .flow-r li.is-1 {
	padding-right: 5px;
}

.block4 .bottom-flow .flow-r li .img {
	position: relative;
	margin-bottom: 25px;
}

.block4 .bottom-flow .flow-r li:not(:last-child) .img::before {
	content: '';
	position: absolute;
	top: 52%;
	right: -54px;
	transform: translateY(-50%);
	background: url(../images/chevron-r.png) no-repeat center /cover;
	width: 21px;
	height: 32px;
}

.block4 .bottom-flow .flow-r li.is-2 .img::before {
	right: -49px;
}

.block4 .bottom-flow .flow-r li .txt {
	position: relative;
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	color: #000;
	line-height: 1.333em;
	letter-spacing: 0;
}

.block4 .bottom-flow .flow-r li.is-1 .txt {
	left: -11px;
}

.block4 .bottom-flow .flow-r li.is-2 .txt {
	left: 5px;
}

.block4 .bottom-flow .flow-r li.is-3 .txt {
	left: -5px;
}

.contact {
	padding: 120px 0 120px;
}

.contact .contact-title {
	font-size: 36px;
	font-weight: 700;
	color: #000;
	text-align: center;
	position: relative;
	left: -16px;
	margin-bottom: 46px;
}

.contact .contact-title span.big {
	font-size: 54px;
	color: #82D214;
	padding: 0 10px 0 15px;
	position: relative;
	top: 8px;
	left: -10px;
}

.contact .contact-title span.small {
	color: #82D214;
	position: relative;
	left: 10px;
}

.contact .content {
	font-size: 24px;
	font-weight: 700;
	color: #000;
	text-align: center;
	line-height: 1.5em;
	letter-spacing: 0;
	position: relative;
	left: -25px;
	margin-bottom: 53px;
}

.contact .content2 {
	font-size: 36px;
	font-weight: 700;
	color: #82D214;
	text-align: center;
	margin-bottom: 80px;
}

.contact .privacy {
	margin-top: 60px;
	margin-bottom: 40px;
}

.contact .privacy .content2 {
	margin-bottom: 40px;
}

.contact .privacy .privacy-box {
	height: 370px;
	overflow: auto;
	border: 1px solid #C9C9C9;
	background: #f0f0f0;
	padding: 30px;
	border-radius: 3px;
}

.contact .privacy .privacy-box p {
	font-size: 14px;
	line-height: 1.5em;
}

.contact .privacy .privacy-box p:not(:last-child) {
	margin-bottom: 20px;
}

.contact .hide {
	display: none;
}

#fmail>.fmail_checkbox_list {
	width: 100%;
	margin: 0 0 30px;
	display: flex;
	justify-content: center;
}

.contact #fmail #en1667353224_01_label {
	clear: both;
	display: flex;
	align-items: center;
	margin: 0 auto;
	padding: 15px 20px;
	border-radius: 3px;
	width: 295px;
	height: 55px;
	line-height: 1.25em;
	text-indent: 5px;
	font-size: 16px;
	font-weight: 400;
	border: dashed 1px #CCCCCC;
	background-color: transparent;
}

.contact #fmail #en1667353224_01_label.fmail_label_enabled {
	background-color: rgb(250 230 10 / 30%);
}

footer .foot-top {
	padding: 187px 0 105px;
}

footer .foot-top .inner-2 {
	position: relative;
}

footer .foot-top .inner-2 .img {
	position: relative;
	z-index: 2;
	pointer-events: none;
}

footer .foot-top .inner-2 .info {
	position: absolute;
	top: -110px;
	right: -320px;
	width: 1080px;
	min-height: 420px;
	background-color: #FCFBF2;
	padding: 90px 0 20px 110px;
}

footer .foot-top .inner-2 .info dl {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

footer .foot-top .inner-2 .info dl dt {
	width: 150px;
	height: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #0AA046;
	color: #0AA046;
	font-size: 18px;
	font-weight: 700;
}

footer .foot-top .inner-2 .info dl.sp-2 dt {
	height: 70px;
}

footer .foot-top .inner-2 .info dl dd {
	font-size: 18px;
	font-weight: 700;
	color: #000;
	line-height: 1.667em;
	margin-left: 30px;
}

footer .foot-bottom .map {
	width: 100%;
	height: 500px;
}

footer .foot-bottom .map iframe {
	width: 100% !important;
	height: 100% !important;
}

footer .foot-bottom .bot {
	padding: 75px 0 90px;
	background-color: #82D214;
}

footer .foot-bottom .bot .wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
}

footer .foot-bottom .bot h5 {
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0;
}

footer .foot-bottom .bot .img {
	margin-left: 60px;
}

footer .foot-bottom .bot address {
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	text-align: center;
}

/*==========================================================================*/
/*                               Footer                                     */
/*==========================================================================*/



/* CHORME ONLY  */
@media screen and (-webkit-min-device-pixel-ratio:0) {}

/* FIREFOX CSS */
@supports (-moz-appearance:none) and (-webkit-appearance:none) {}

/* IE STUPID CSS */
@media screen\0 {}

/* EDGE 12+ CSS */
@supports (-ms-ime-align:auto) {}