@charset "UTF-8";

/*reset*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure,  footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent; font-family: sans-serif;}  body { line-height:1; }  article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section {  display:block; }  nav ul { list-style:none; }  blockquote, q { quotes:none; }  blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }  a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }  / change colours to suit your needs / ins { background-color:#ff9; color:#000; text-decoration:none; }  / change colours to suit your needs / mark { background-color:#ff9; color:#000;  font-style:italic; font-weight:bold; }  del { text-decoration: line-through; }  abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }  table { border-collapse:collapse; border-spacing:0; }  /* change border colour to suit your needs  */ hr { display:block; height:1px; border:0;  border-top:1px solid #cccccc; margin:1em 0; padding:0; }  input, select { vertical-align:middle; } 

.inview	{
	opacity: 0;
}

.inview.fadeIn	{
	transition: all 1s ease-out;
	position: relative;
}

.is-show	{
	opacity: 1;
}

.totop	{
	position: fixed;
	bottom: 30px;
	right: 5px;
	display: flex;
	visibility: hidden;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background-color: #e95283;
	color: white;
	width: 65px;
	height: 65px;
	border-radius: 50%;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	line-height: 110%;
	font-size: 14px;
	z-index: 10;
	opacity: 0;
	transition: all 0.5s linear;
}

.totop.show	{
	display: flex;
	visibility: visible;
	opacity: 0.75 !important;
}

.totop.show:hover	{
	bottom: 33px;
	opacity: 1 !important;
}

.totop img	{
	transform: rotate(-90deg);
	display: block;
	width: 7px;
	margin-bottom: 5px;
	margin-top: -5px;
}

.s_menu	{
	display: none;
}
.sp	{
	display: none !important;
}
*	{
	box-sizing: border-box;
}
h1,h2,h3,h4,h5,h6,p,th,td,dd,dt,span	{
	font-family: 'M PLUS 2', sans-serif;
	font-weight: 600;
	line-height: 140%;
	color: #212c68;
}
h1,h2,h3,h4,h5,h6,p,th,td,dd,dt	{
	font-size: 18px;
}
.lh120	{
	line-height: 120% !important;

}
.text-center	{
	text-align: center;
}

.pink	{
	color: #e95283;
}

.green	{
	color: #8dc41e;
}

.navy	{
	color: #212c68;
}

.red	{
	color: #e04156;
}

.mb15	{
	margin-bottom: 15px !important;
}

.mb25	{
	margin-bottom: 25px !important;
}

.mb50	{
	margin-bottom: 50px !important;
}

.mb75	{
	margin-bottom: 75px !important;
}

.mb100	{
	margin-bottom: 100px !important;
}

.fs16	{
	font-size: 16px;
}

.fs22	{
	font-size: 22px;
}

.fs24	{
	font-size: 24px;
}

.fs26	{
	font-size: 26px;
}

.fs30	{
	font-size: 30px;
}

.fs32	{
	font-size: 32px;
}

.fs34	{
	font-size: 34px;
}

.fs36	{
	font-size: 36px;
}

.fs40	{
	font-size: 40px;
}

.fs50	{
	font-size: 50px;
}

.w700	{
	max-width: 700px;
	width: 100%;
	margin: 0 auto;
}

.w770	{
	max-width: 770px;
	width: 100%;
	margin: 0 auto;
}

.w900	{
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
}

img	{
	max-width: 100%;
}
.key	{
	position: relative;
	width: 100vw;
	overflow: hidden;
}
.key img	{
	display: block;
}
.key_contact	{
	position: fixed;
	top: 7.5vw;
	right: -4px;
	width: 90px;
	z-index: 10;
}

.marker	{
	position: relative;
}
.marker:after	{
	content: "";
	position: absolute;
	bottom: -3px;
	left: -3px;
	width: calc(100% + 6px);
	height: 50%;
	z-index: -1;
	background-color: rgb(241,208,208);
}
nav	{
	background-color: #b9daea;
	border-top: 3px solid #202933;
	border-bottom: 3px solid #202933;
	padding: 40px 0;
	position: relative;
	top: -1px;
}

nav ul	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 0 70px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
nav ul li	{
	width: calc(20% - 10px);
	text-align: center;
	background-color: white;
	border: 2px solid #202933;
	border-radius: 10px;
	box-shadow: 0 0 5px rgba(0,0,0,.4);
}

nav ul li:nth-child(-n+5)	{
	margin-bottom: 20px;
	
}
nav ul li a	{
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	color: #202933;
	text-decoration: none;
	font-weight: bold;
	padding: 10px 0;
}

nav ul li.nav_red	{
	width: calc(40% - 8px);
	background-color: #e04156;
	border-color: #e04156;
}
nav ul li.nav_red a	{
	color: white;
}
.sec1	{
	position: relative;
	z-index: 2;
}
.sec1 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 60px 70px 0;
	text-align: center;
}

.sec1 .inner img	{
	max-width: 950px;
	width: 100%;
}

.sec2	{
	position: relative;
	z-index: 1;
	background-color: #faece2;
	margin: -75px 0 0;
	background-image: url(images/sec2bg.png);
	background-size: calc(100% + 400px) auto;
	background-repeat: no-repeat;
	background-position: center 400px;
}

.sec2:before	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,1));
}
.sec2:after	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,0));
}
.sec2 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto -100px;
	padding: 0 70px;
}

.sec2 .inner .sec2p1after	{
	background-image: url(images/sec2p1after.png);
	background-size: auto 161px;
	background-repeat: no-repeat;
	background-position: right bottom;
}
.sec2img1	{
	max-width: 510px;
	margin: 30px auto;
	display: block;
}

.sec2 .meritbox	{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sec2 .meritbox:nth-of-type(2) .imgarea	{
	order: 2;
}

.sec2 .meritbox:nth-of-type(2) .contentarea	{
	order: 1;
}
.sec2 .meritbox .imgarea	{
	max-width: 250px;
	width: 100%;
	position: relative;
}
.sec2 .meritbox:nth-of-type(2) .imgarea:after,
.sec2 .meritbox:nth-of-type(3) .imgarea:after	{
	content: "";
	position: absolute;
}

.sec2 .meritbox:nth-of-type(2) .imgarea:after	{
	background-image: url(images/sec2merit2after.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	width: 98px;
	height: 177px;
	top: -70px;
	left: -40px;
}

.sec2 .meritbox:nth-of-type(3) .imgarea:after	{
	background-image: url(images/sec2merit3after.png);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	width: 189px;
	height: 74px;
	bottom: -32px;
	right: -65px;
}

.sec2 .meritbox .contentarea	{
	max-width: calc(100% - 275px);
	width: 100%;
}
.sec2 .meritbox:nth-of-type(1) .contentarea h2	{
	color: #e95283;
}

.sec2 .meritbox:nth-of-type(2) .contentarea h2	{
	color: #8dc41e;
}

.sec2 .meritbox:nth-of-type(3) .contentarea h2	{
	color: #2aa7e1;
}

.sec3	{
	position: relative;
	z-index: 1;
	background-color: #000000;
	margin: -75px 0 0;
	background-size: calc(100% + 400px) auto;
	background-repeat: no-repeat;
	background-position: center 400px;
    background : -moz-radial-gradient(-700.32% -49.85%, ellipse farthest-side, rgba(255, 255, 248, 0.5) 0%, rgba(228, 238, 224, 0.5) 59.36%);
	background : -webkit-radial-gradient(-700.32% -49.85%, ellipse farthest-side, rgba(255, 255, 248, 0.5) 0%, rgba(228, 238, 224, 0.5) 59.36%);
	background : -webkit-gradient(radial,-700.32% -49.85% ,0 , -700.32% -49.85%, 957.41 ,color-stop(0,rgba(255, 255, 248, 0.5) ),color-stop(0.5936,rgba(228, 238, 224, 0.5) ));
	background : -o-radial-gradient(-700.32% -49.85%, ellipse farthest-side, rgba(255, 255, 248, 0.5) 0%, rgba(228, 238, 224, 0.5) 59.36%);
	background : -ms-radial-gradient(-700.32% -49.85%, ellipse farthest-side, rgba(255, 255, 248, 0.5) 0%, rgba(228, 238, 224, 0.5) 59.36%);
	background : radial-gradient(-700.32% -49.85%, ellipse farthest-side, rgba(255, 255, 248, 0.5) 0%, rgba(228, 238, 224, 0.5) 59.36%);
}

.sec3:before	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,1));
}
.sec3:after	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,0));
}
.sec3 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 0 70px;
}

.sec3 .inner:first-of-type	{
	margin-top: -100px;
}
.sec3 .inner h1.hasback	{
	background-image: url(images/sec3h1back.png);
	background-position: center bottom;
	background-size: 682px auto;
	background-repeat: no-repeat;
	padding-bottom: 45px;
}

.sec3 .inner .supportbox	{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	max-width: 900px;
	margin: 0 auto;
	width: 100%;
}

.sec3 .inner .supportbox .item	{
	width: calc(33.333% - 13.334px);
	border-radius: 15px;
	overflow: hidden;
	background-color: #fff;
}

.sec3 .inner .supportbox .item .contentarea	{
	padding: 20px 20px 30px;
}

.sec3 .inner .supportbox .item:nth-child(-n+3)	{
	margin-bottom: 20px;
}

.contact_button	{
	position: relative;
	z-index: 2;
}
.contact_button .inner	{
	max-width: 870px;
	width: 100%;
	padding: 0 50px;
	margin: 0 auto 55px;
}

.contact_button .inner .contact_title	{
	max-width: 770px;
	width: 100%;
	display: block;
}

.contact_button .inner a,
section .inner a.contactlink	{
	max-width: 560px;
	display: block;
	margin: 0 auto;
	width: 100%;
	transition: all 0.3s linear;
	position: relative;
	top: 0;
	opacity: 1;
}


.contact_button .inner a:hover,
section .inner a.contactlink:hover	{
	top: -5px;
	opacity: 0.7;
}

.sec3 .carousel img	{
	width: calc(27.5vw - 16px);
	margin: 0 8px;
	border-radius: 15px;
}

.sec3 .roundbox	{
	display: flex;
	flex-wrap: wrap;
	max-width: 650px;
	width: 100%;
	margin: 0 auto -100px;
	align-items: center;
	justify-content: space-between;
}

.sec3 .roundbox .item	{
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(33.333% - 6.6666px);
	aspect-ratio: 1 / 1;
	background-image: url(images/sec3round.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}

.sec3 .roundbox .item:nth-child(-n+3)	{
	margin-bottom: 10px;
}
.sec3img1	{
	max-width: 490px;
	margin: 30px auto;
	display: block;
	width: 100%;
}

.sec4	{
	background : #202933;
	background : rgba(32, 41, 51, 0.05);
	position: relative;
	z-index: 1;
	margin: -75px 0 0;
}

.sec4:before	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,1));
}
.sec4:after	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,0));
}
.sec4 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto -100px;
	padding: 0 70px;
	margin-top: -100px;
}

.sec4 .sec4box	{
	max-width: 820px;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}

.sec4 .sec4box .sec4man,
.sec4 .sec4box .sec4woman	{
	position: absolute;
	z-index: 2;
}
.sec4 .sec4box .sec4man	{
	width: 174px;
	bottom: 130px;
	left: -120px;
}

.sec4 .sec4box .sec4woman	{
	width: 182px;
	top: 70px;
	right: -120px;
}
.sec4 .sec4box .item	{
	width: calc(50% - 15px);
}

.sec4 .sec4box .item:nth-child(-n+2)	{
	margin-bottom: 25px;
}

.sec4 .sec4box .item .imgarea	{
	position: relative;
	margin-bottom: 20px;
}
.sec4 .sec4box .item .mainimg	{
	border-radius: 15px;
	position: relative;
	z-index: 1;
}

.sec4 .sec4box .item .cloud	{
	position: absolute;
	width: 120px;
	z-index: 2;
	bottom: -25px;
	right: -20px;
	transform: scale(-1,1);
}

.sec4 .sec4box .item:nth-child(-n+2) .cloud	{
	right: auto;
	left: -12px;
	bottom: -35px;
	transform: scale(1,1);
}

.sec4 .sec4box .item .contentarea h2	{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	width: 100%;
	height: 85px;
	padding-bottom: 10px;
	border-bottom: 2px solid #212c68;
}

.sec4 .sec4box .item .contentarea p	{
	padding: 0 10px;
}

.sec5 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto 100px;
	padding: 0 70px;
}

.sec5 .tree	{
	display: block;
	width: 128px;
	margin: 0 auto 30px;
}

.sec5 h1	{
	background-image: url(images/sec5people.png);
	background-size: 160px auto;
	background-repeat: no-repeat;
	background-position: right bottom;
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
	line-height: 180%;
}

.sec5 .sec5pic	{
	display: block;
	max-width: 475px;
	width: 100%;
	margin: 15px auto 0;
}

.sec5 .sec5box .item	{
	max-width: 900px;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.sec5 .sec5box .item .imgarea,
.sec5 .sec5box .item .contentarea	{
	width: calc(50% - 10px);
}

.sec5 .sec5box .item .imgarea	{
	position: relative;
}

.sec5 .sec5box .item .imgarea .mainimg	{
	border-radius: 15px;
}

.sec5 .sec5box .item .imgarea .leaf	{
	position: absolute;
	width: 72px;
	top: 15px;
	right: -35px;
}

.sec5 .sec5box .item .contentarea	{
	padding-top: 30px;
}

.sec5 .sec5box .item:nth-child(2) .imgarea	{
	order: 2;
}

.sec5 .sec5box .item:nth-child(2) .contentarea	{
	order: 1;
}

.sec5 .sec5box .item:nth-child(2) .imgarea .leaf	{
	right: auto;
	left: -55px;
}

.sec5 .sec5box .item:nth-child(1) .contentarea h2	{
	padding-left: 20px;
}

.sec6	{
	position: relative;
	z-index: 1;
	background-color: rgba(233,82,131,0.05);
	margin: -75px 0 0;
}

.sec6:before	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,1));
}

.sec6:after	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,0));
}

.sec6 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto -100px;
	padding: 0 70px;
}

.sec6 .inner .sec6title	{
	width: 200px;
	display: block;
	margin: 0 auto 45px;
}

.sec6 .inner .sec6box	{
	display: flex;
	max-width: 580px;
	justify-content: space-between;
	margin: 0 auto;
}
.sec6 .inner .sec6box .item	{
	width: 33.333%;
}

.sec6 .inner .sec6box .item img	{
	width: 70%;
}

.sec6 .inner .sec6box .item p	{
	font-size: 17px;
}

.sec6 .inner .voice	{
	max-width: 900px;
	margin: 0 auto;
}

.sec6 .inner .voicebox	{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.sec6 .inner .voicebox .imgarea,
.sec6 .inner .voicebox .contentarea	{
	width: calc(50% - 15px);
}

.sec6 .inner .voicebox .contentarea	{
	padding-bottom: 20px;
}

.sec6 .inner .voicebox .contentarea h2	{
	letter-spacing: -1px;
}

.sec6 .inner .voicebox .contentarea .subtitle	{
	display: block;
	letter-spacing: 0;
}

.sec7	{
	position: relative;
	z-index: 1;
	background-color: rgba(42,167,225,0.05);
	margin: -75px 0 0;
}

.sec7:before	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,1));
}

.sec7:after	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,0));
}

.sec7 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto -100px;
	padding: 0 70px;
}

.sec7 .inner h1 .fs50	{
	display: block;
	margin-top: 15px;
	letter-spacing: 2px;
}

.sec7 .inner h1 a	{
	text-decoration: none;
	color: #212c68;
}

.sec7 .inner h1 a[target="_blank"]:after	{
	position: relative;
	bottom: -6px;
	margin-left: 5px;
	content: "";
	display: inline-block;
	width: 32px;
	height: 32px;
	background-image: url(images/ext_link.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
}

.sec8	{
	position: relative;
	z-index: 1;
}

.sec8 .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 0 70px;
}

.sec8 .inner dl.qa dt	{
	background-color: #212c68;
	color: white;
	border-radius: 15px;
	padding: 10px 0;
	position: relative;
}

.sec8 .inner dl.qa dt:not(:first-of-type)	{
	margin-top: 40px;
}
.sec8 .inner dl.qa dt:after	{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 45px;
	background-image: url(images/arrow.png);
	width: 13px;
	height: 22px;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	transition: all 0.2s linear;
}

.sec8 .inner dl.qa dt.open:after	{
	transform: translateY(-50%) rotate(90deg);
}

.sec8 .inner dl.qa dd	{
	padding: 25px 50px 0;
	display: none;
}

.sec8 .inner .company *	{
	color: #231815;
}
.sec8 .inner .company th,
.sec8 .inner .company td	{
	padding: 0 0 40px;
	letter-spacing: -1px;
}
.sec8 .inner .company th	{
	width: 150px;
	text-align: left;
	letter-spacing: 0;
}

.sec8 .inner .company th .small	{
	zoom: 0.8;
}
.form	{
	position: relative;
	z-index: 1;
}

.form .inner	{
	max-width: 890px;
	width: 100%;
	margin: 0 auto;
	padding: 0 70px;
}

.form form label,
.form form input,
.form form textarea	{
	display: block;
	width: 100%;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
}

.form form label	{
	margin-bottom: 5px;
	font-weight: 700;
	padding-left: 20px;
}
.confirm .form form label	{
	padding-left: 0;
}

.confirm .form form p	{
	padding: 0;
}
.form form input[type="text"],
.form form input[type="email"],
.form form textarea	{
	margin-bottom: 40px;
	border: 3px solid #212c68;
	border-radius: 15px;
	font-size: 24px;
	padding: 15px;
}

.form form .submit	{
	margin-top: 50px;
}

.form form a	{
	color: #231815;
	text-decoration: none;
}

.form form a[target="_blank"]:after	{
	position: relative;
	bottom: -1px;
	margin-left: 5px;
	content: "";
	display: inline-block;
	width: 15px;
	height: 15px;
	background-image: url(images/ext_link_black.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
}
.form form a.button,
.form form input[type="submit"]	{
	color: white;
	width: auto;
	text-decoration: none;
	display: inline-block;
	background-color: #e95283;
	padding: 5px 15px;
	border: 1px solid #e95283;
	margin-bottom: 0;
	line-height: 1;
	width: 360px;
	border-radius: 15px;
	padding: 25px 0;
	box-shadow: 7px 7px 7px rgba(0,0,0,0.3);
	transition: all 0.3s linear;
	opacity: 1;
}

.form form a.button:hover,
.form form input[type="submit"]:hover	{
	opacity: 0.7;
}
body.confirm:not(.thanks) .form form a.button	{
	background-color: #999;
	border: 1px solid #999;
}

.form form a.button input[type="button"]	{
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	border: 0;
	display: inline;
	color: inherit;
	padding: 0;
	line-height: 1;
}

footer	{
	background-color: #b9daea;
	border-bottom: 38px solid #202933;
}

footer .inner	{
	max-width: 900px;
	width: 100%;
	padding: 110px 0 45px;
	margin: 0 auto;
}

footer .inner .logo	{
	width: 235px;
	display: block;
	margin-bottom: 35px;
}

footer .inner p	{
	color: #231815;
}

body.confirm	{
	background-color: #faece2;
}

body.confirm main .logo	{
	position: absolute;
	width: 12vw;
	top: 3vw;
	right: 13vw;
	z-index: 10;
}
body.confirm .form:before	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,1));
}

body.confirm .form	{
	position: relative;
}
/* body.confirm .form:after	{
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	background: linear-gradient(0deg, rgba(255,255,255,1), rgba(255,255,255,0));
	position: absolute;
	bottom: 0;
	pointer-events: none;
} */
body.confirm .form .inner	{
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	padding: 0 70px;
}

.actionarea	{
	display: none;
}
.pb100 {
	padding-bottom: 100px !important;
}


@media screen and (max-width: 1024px)	{
}
@media screen and (max-width: 834px)	{
	.pc	{
		display: none !important;
	}
	.sp	{
		display: block !important;
	}
	h1, h2, h3, h4, h5, h6, p, th, td, dd, dt	{
		font-size: 3.5vw;
	}

	.mb15	{
		margin-bottom: 2vw !important;
	}
	
	.mb25,.spmb25	{
		margin-bottom: 3.3333vw !important;
	}
	
	.mb50,.spmb50	{
		margin-bottom: 6.6666vw !important;
	}
	
	.mb75	{
		margin-bottom: 10vw !important;
	}
	
	.mb100	{
		margin-bottom: 13.333vw !important;
	}
	
	.fs16	{
		font-size: 3vw;
	}
	
	.fs22	{
		font-size: 3.5vw;
	}
	
	.fs24	{
		font-size: 3.5vw;
	}
	
	.fs26	{
		font-size: 3.5vw;
	}
	.fs30,.spfs30	{
		font-size: 4vw;
	}
	.spfs28	{
		font-size: 3.5vw;
	}
	
	.fs32	{
		font-size: 4.5333vw;
	}
	
	.fs34,.spfs34	{
		font-size: 4.5333vw;
	}
	
	.fs36	{
		font-size: 4.8;
	}
	
	.spfs40,.fs40	{
		font-size: 5.3333vw;
	}
	
	.fs50	{
		font-size: 6.6666vw;
	}
	
	.sp_text-left	{
		text-align: left !important;
	}
	
	.block-center	{
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	br.sp	{
		display: inline-block !important;
	}
	
	*	{
		font-family: 'M PLUS 2', sans-serif;
		font-weight: 600;
		line-height: 140%;
		font-size: 3.2vw;
		box-sizing: border-box;
		color: #212c68;
	}
	p	{
		font-size: 3.5vw;
	}
	.sec2img1	{
		max-width: none;
		width: 100%;
	}
	.sec3img1	{
		max-width: none;
	}
	
	.form form a.button, .form form input[type="submit"]	{
		width: auto;
	}
	
	.actionarea	{
		z-index: 10;
		position: fixed;
		bottom: 0;
		left: 0;
		display: block;
		width: 100%;
		background-color: #212c68;
		padding: 7vw 0;
		margin-bottom: -1px;
	}
	.actionarea a	{
		padding: 3vw 0 4.2vw;
		line-height: 1;
		text-decoration: none;
		display: block;
		margin: 0 auto;
		width: 77.5vw;
		color: white;
		background-color: #e04156;
		border-radius: 10px;
		font-size: 5.3333vw;
	}
	nav	{
		padding: 25px 0;
	}
	nav ul	{
		max-width: 1140px;
		width: 100%;
		margin: 0 auto;
		padding: 0 9.3333vw;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	nav ul li	{
		width: calc(50% - 7.5px);
		text-align: center;
		background-color: white;
		border: 2px solid #202933;
		border-radius: 10px;
		box-shadow: 0 0 5px rgba(0,0,0,.4);
	}
	
	nav ul li:nth-child(-n+8)	{
		margin-bottom: 15px;
	}
	nav ul li a	{
		display: flex;
		width: 100%;
		height: 100%;
		justify-content: center;
		align-items: center;
		color: #202933;
		text-decoration: none;
		font-weight: bold;
		padding: 10px 0;
	}
	
	nav ul li.nav_red	{
		width: 100%;
		background-color: #e04156;
		border-color: #e04156;
	}
	nav ul li.nav_red a	{
		color: white;
	}
	.sec1 .inner,
	.sec2 .inner,
	.sec3 .inner,
	.sec4 .inner,
	.sec5 .inner,
	.sec6 .inner,
	.sec7 .inner,
	.sec8 .inner,
	.form .inner,
	footer .inner	{
		padding-left: 6.6666vw;
		padding-right: 6.6666vw;
	}
	
	.sec2 .inner	{
		margin-top: -100px;
	}
	.sec2	{
		background-image: url(images/sec2bg_sp.png);
		background-size: calc(100% + 40vw) auto;
	}
	.sec2 .inner .sec2p1after	{
		background: none;
		position: relative;
	}
	.sec2 .inner .sec2p1after .sec2p1afterinner	{
		display: block;
		padding-left: 3.3333vw;
		padding-right: 3.3333vw;
	}
	.sec2 .inner .sec2p1after:after	{
		content: "";
		position: absolute;
		right: -7vw;
		bottom: -12vw;
		z-index: 1;
		width: 26vw;
		height: 26vw;
		background-image: url(images/sec2p1after.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right bottom;
	}
	.sec2 .meritbox	{
		align-items: flex-start;
	}
	.sec2 .meritbox .imgarea	{
		max-width: 36.666vw;
	}
	
	.sec2 .meritbox .contentarea	{
		max-width: calc(100% - 36.667vw);
	}
	.sec2 .meritbox:nth-of-type(1) .contentarea h2,
	.sec2 .meritbox:nth-of-type(1) .contentarea p,
	.sec2 .meritbox:nth-of-type(3) .contentarea h2,
	.sec2 .meritbox:nth-of-type(3) .contentarea p	{
		padding-left: 3.3333vw;
	}
	
	.sec2 .meritbox:nth-of-type(2) .contentarea p	{
		padding-right: 3.3333vw;
	}
	
	.sec2 .meritbox:nth-of-type(2) .imgarea:after	{
		width: 13.333vw;
		height: 26.666vw;
		top: -9vw;
		left: -5vw;
	}
	
	.sec2 .meritbox:nth-of-type(3) .imgarea:after	{
		width: 27vw;
		height: 10.5vw;
		bottom: -6vw;
		right: -10vw;
	}
	.contact_button	{
		margin-top: -15vw;
	}
	.contact_button .inner	{
		padding-left: 6.6666vw;
		padding-right: 6.6666vw;
	}
	.sec3 .inner h1.hasback	{
		background-size: 100% auto;
	}
	
	.sec3 .inner .supportbox .item	{
		width: calc(50% - 7.5px);
		margin-bottom: 15px !important;
	}
	.sec3 .inner .supportbox .item .contentarea	{
		padding: 3.3vw;
	}
	
	.sec3 .inner .supportbox .item .contentarea h2	{
		display: flex;
		flex-direction: column;
		height: 7.5vw;
		align-items: center;
		justify-content: center;
	}
	
	.sec3 .roundbox .item p	{
		line-height: 120%;
		zoom: 0.9;
	}
	.sec3 .carousel img	{
		width: 60vw;
	}
	
	.sec3 .inner .supportbox .item,
	.sec3 .carousel img	{
		border-radius: 2vw;
	}
	
	.sec3img1	{
		width: 77.777vw;
	}
	.sec4 .sec4box	{
		padding-left: 3.3333vw;
		padding-right: 3.3333vw;
	}

	.sec4 .sec4box .item	{
		width: 100%;
		margin-bottom: 8.5vw !important;
	}
	.sec4 .sec4box .item:last-of-type	{
		margin-bottom: 0 !important;
	}
	.sec4 .sec4box .item .mainimg	{
		border-radius: 2vw;
	}	
	.sec4 .sec4box .item .cloud,
	.sec4 .sec4box .item .cloud:nth-child(-n+2)	{
		width: 17.5vw;
		transform: scale(1,1) !important;
		position: absolute;
		z-index: 2;
		bottom: -3.333vw !important;
		left: -1.6666vw !important;
		right: auto;
	}

	.sec4 .sec4box .item .contentarea h2	{
		height: auto;
	}
	.sec4	{
		width: 100vw;
		overflow-x: hidden;
	}
	.sec4 .sec4box .sec4man	{
		width: 25vw;
		bottom: 47vw;
		left: -8vw;
	}
	
	.sec4 .sec4box .sec4woman	{
		width: 27vw;
		top: 70vw;
		right: -8vw;
	}

	.sec5 .tree	{
		width: 20vw;
	}
	
	.sec5 h1	{
		background-size: 27.5vw auto;
	}
	
	.sec5 .sec5pic	{
		width: 70vw;
	}
	
	.sec5 .sec5box .item	{
		flex-direction: column;
	}
	.sec5 .sec5box .item .contentarea	{
		padding-top: 4vw;
		padding-bottom: 4vw;
	}
	.sec5 .sec5box .item:nth-child(1) .contentarea h2	{
		padding-left: 0;
	}
	.sec5 .sec5box .item:nth-child(2) .imgarea	{
		order: 1;
		margin-left: 6.6666vw;
	}
	.sec5 .sec5box .item:nth-child(2) .contentarea	{
		order: 2;
		width: 70vw;
		margin-left: 13.333vw;
	}
	.sec5 .sec5box .item .imgarea	{
		width: 76vw;
		border-radius: 2vw;
	}
	
	.sec5 .sec5box .item .imgarea .leaf	{
		width: 12.6vw;
		right: -6.6666vw;
		top: 2vw;
	}
	.sec5 .sec5box .item:nth-child(2) .imgarea .leaf	{
		left: -6vw;
	}
	.sec5 .sec5box .item:nth-child(1) .contentarea	{
		width: 80vw;
		margin-left: 3.3333vw;
		margin-bottom: 
	}
	.sec6 .inner .sec6title	{
		width: 55vw;
	}	
	.sec6 .inner .sec6box	{
		margin-bottom: 6.6666vw !important;
	}
	.sec6 .inner .sec6box .item p	{
		zoom: 0.7;
	}
	
	.sec6 .inner .voicebox	{
		flex-direction: column;
	}
	
	.sec6 .inner .voicebox .imgarea,
	.sec6 .inner .voicebox .contentarea	{
		width: 100%;
	}
	
	.sec6 .inner .voicebox .contentarea h2	{
		letter-spacing: 0;
		line-height: 140%;
	}
	
	.sec7 .inner	{
		margin-top: -100px;
	}
	
	.sec7 .inner h1 .fs50	{
		margin-top: 0;
	}
	
	.sec8	{
		margin-top: -50px;
	}
	
	.sec8 .inner dl.qa dt	{
		display: flex;
		height: 15vw;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	
	.sec8 .inner dl.qa dt:after	{
		right: 5vw;
		width: 2.5vw;
		height: 7.5vw;
	}
	.sec8 .inner dl.qa dt:not(:first-of-type)	{
		margin-top: 6.6666vw;
	}
	.sec8 .inner dl.qa dd	{
		padding: 3.33333vw 6.6666vw;
	}
	
	.sec8 .inner .company th	{
		width: 25vw;
	}
	
	.form form a.button, .form form input[type="submit"]	{
		width: 100%;
	}
	
	footer .inner	{
		padding: 15vw inherit 7.5vw;
	}
	
	footer .inner .logo	{
		width: 40vw;
	}
	
	.s_menu	{
		display: block;
	}
	
	.menubutton	{
		width: 20vw;
		height: 20vw;
		border-radius: 10vw;
		background-color: #212c68;
		border: 4px solid white;
		position: fixed;
		top: 8vw;
		right: 5.5vw;
		z-index: 100;
		box-shadow: 5px 5px 5px rgba(0,0,0,0.3);
	}
	.menubutton:before	{
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		width: 100%;
		height: 100%;
		background-image: url(images/menubutton.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 40% auto;
		opacity: 1;
		transition: all 0.3s linear;
	}
	.menubutton:after	{
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		width: 100%;
		height: 100%;
		background-image: url(images/menubutton_r.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 40% auto;
		transition: all 0.3s linear;
		opacity: 0;
	}
	.menubutton.open:before	{
		opacity: 0;
	}
	.menubutton.open:after	{
		opacity: 1;
	}
	
	.drawnav	{
		position: fixed;
		top: 17.45vw;
		left: 6.6666vw;
		width: 83.333vw;
		background-color: rgba(33,44,104,0.95);
		z-index: 99;
		padding: 20.5vw 10vw 10vw;
		display: none;
	}
	
	.drawnav ul li	{
		list-style: none;
	}
	
	.drawnav ul li:after {
		background: radial-gradient(circle farthest-side, #fff, #fff 20%, transparent 60%, transparent);
		background-size: 5px;
		content: '';
		display: inline-block;
		height: 5px;
		width: 100%;
		line-height: 1.1;
	}
	.drawnav ul li a	{
		color: white;
		text-decoration: none;
		padding: 0 2vw;
	}
	.drawnav a.m_contactbutton	{
		background-color: #e04156;
		color: white;
		text-decoration: none;
		display: block;
		text-align: center;
		line-height: 1;
		padding: 3vw 0 4.2vw;
		border-radius: 10px;
		margin-top: 6.6666vw;
	}
	.confirm .inner p	{
		overflow-wrap: anywhere;
	}
	
	.form form a.button	{
		margin-bottom: 3vw;
	}
	
	body.confirm main .logo	{
		width: 32vw;
		right: auto;
		left: 6.6666vw;
		top: 6.6666vw;
	}
	
	body.thanks main .form	{
		min-height: 70vh;
	}
}
