@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap');


/* =================== */
/*       pubulic       */
/* =================== */
html {
	overflow-x:hidden;
	scroll-padding-top:150px !important;
}
html,body {
  font-size:clamp(11.5px, 1.34vw, 27px);
  font-family:"Noto Sans JP", sans-serif;
  font-weight:400;
	position:relative;
  /*-webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;*/
  letter-spacing:.05em;
}


.en-font {
  font-family:"Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight:400;
  font-style:normal;
}



img {
  width:100%;
  height:auto;
}
.sp-on { display:none; }
a { transition:0.3s ease all; }


.flex-box {
  display:-webkit-box;
  display:flex;
  -webkit-box-pack:justify;
  justify-content:space-between;
  align-items:center;
}

.in-w63 {
	width:63rem;
	margin:0 auto;
	position:relative;
}
.in-w61 {
	width:61rem;
	margin:0 auto;
	position:relative;
}
.in-w55 {
	width:55rem;
	margin:0 auto;
	position:relative;
}

.fadein {
	opacity:0;
	transform:translate(0, 15%);
	transition:1s;
}
.fadein.is-show {
	transform:translate(0, 0);
	opacity:1;
}
.blur {
	filter:blur(10px);
	transition:1.5s;
}
.blur.is-show {
	filter:blur(0);
	opacity:1;
}
.center-fade {
	transform:scale(1.2);
	opacity:0;
	transition:.8s;
}
.center-fade.is-show {
	opacity:1;
	transform:scale(1);
}

.grecaptcha-badge { visibility:hidden; }





/* =================== */
/*       #header       */
/* =================== */
#header {
	width:100%;
	height:4.5rem;
	background:#fff;
	padding:0 1rem;
	position:fixed;
	top:0;
	left:0;
	z-index:100;
}
#header .head-main-box { height:100%; }
#header #site-logo { width:13.1rem; }
#header ul.main-nav li {
	font-size:.75rem;
	margin-right:1.5rem;
}
#header .btn a {
	width:9.2rem;
	line-height:2.3rem;
	border-radius:100vmax;
	display:block;
	font-size:.75rem;
	font-weight:bold;
	color:#fff;
	text-align:center;
	margin-right:.5rem;
}
#header .btn.download-btn a { background:#32b16c; }
#header .btn.contact-btn a { background:#009ed6; }
#header .tel-box {
	align-items:flex-start;
	display:flex;
	margin-left:.8rem;
}
#header .tel-box .icon {
	width:.8rem;
	margin-top:.1rem;
	margin-right:.3rem;
}
#header .tel-box .num {
	font-size:1.3rem;
	font-weight:bold;
}
#header .tel-box .time {
	font-size:.65rem;
	margin-top:.2rem;
	text-align:center;
}
#header a:hover { opacity:.5; }






/* =================== */
/*       #footer       */
/* =================== */
#footer { padding:4rem 0 8.5rem; }
#footer .cont-box { align-items:flex-start; }
#footer .foot-logo { width:13.1rem; }
#footer small {
	font-size:.6rem;
	margin-top:-.4rem;
	display:block;
}
#footer .foot-nav-box { align-items:flex-start; }
#footer .foot-nav-box ul { margin-left:3rem; }
#footer .foot-nav-box li {
	font-size:.8rem;
	margin-bottom:1rem;
}
#footer .foot-nav-box li a:hover { opacity:.5; }
#footer .foot-nav-box li:last-child { margin-bottom:0; }






/* =================== */
/*        main         */
/* =================== */
main { margin-top:4.5rem; }
body.index #kv-box {
	background:url(../img/kv_bk.jpg) no-repeat;
	background-size:cover;
	height:30.5rem;
}
body.index #kv-box > .flex-box {
	height:100%;
}
body.index #kv-box .pic { width:37.45rem; order:2; }
body.index #kv-box .txt-box { width:26.5rem; order:1; }
body.index #kv-box .copy { width:100%; }
body.index #kv-box .txt {
	font-size:1.4rem;
	font-weight:bold;
	line-height:1.4;
	color:#fff;
	margin:1.5rem 0;
}
body.index #kv-box ul { width:23.5rem; }
body.index #kv-box ul li { width:calc((100% - 2rem) / 3); }

#fixed-bnr {
	width:17.7rem;
	position:fixed;
	right:1rem;
	bottom:.5rem;
	z-index:1;
}
#fixed-bnr a:hover { opacity:.5; }

.dflt-green-btn a {
	width:20.5rem;
	line-height:3.5rem;
	display:block;
	background:#32b16c;
	text-align:center;
	color:#fff;
	border-radius:100vmax;
	position:relative;
	box-shadow:.2rem .2rem 0px 0px #013e39;
	margin:0 auto;
}
.dflt-green-btn.mini a { box-shadow:.2rem .2rem 0px 0px #15934f; }
.dflt-green-btn a:hover {
	box-shadow:0px 0px 0px 0px #013e39;
	transform:translate(.2rem, .2rem);
}
.dflt-green-btn a:hover .arrow {
	right:1.8rem;
	top:0;
  bottom:0;
  margin:auto 0;
  transform:translateX(-20%) rotate(45deg);
}
.dflt-green-btn a .arrow {
	display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width:.75em;
  height:.75em;
  border:0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing:border-box;
  transform:translateX(-20%) rotate(45deg);
  position:absolute;
  right:2rem;
  top:0;
  bottom:0;
  margin:auto 0;
  transition:0.3s ease all;
}
.dflt-green-btn a .btn-txt {
	font-size:1.1rem;
	font-weight:bold;
	vertical-align: middle;
}
.dflt-green-btn.mini a { width:13.9rem; line-height:3rem; }
.dflt-green-btn.mini a .btn-txt { font-size:1rem; }

.blue-btn a {
	width:2.2rem;
	height:2.2rem;
	background:#009ed6;
	border-radius:.3rem;
	display:block;
	position:relative;
}
.blue-btn .arrow {
	display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width:.75em;
  height:.75em;
  border:0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing:border-box;
  transform:translateX(-20%) rotate(45deg);
  position:absolute;
  right:0;
  left:0;
  top:0;
  bottom:0;
  margin:auto;
  transition:0.3s ease all;
}
.blue-btn a:hover { opacity:.5; }

body.index #top-box {
	padding:6rem 0;
	position:relative;
	background:linear-gradient(180deg, #fff 0%, #fff 50%, #f4c326 50%, #f4c326 100%);
}
body.index #top-box .copy {
	width:52.5rem;
	margin:0 auto 2.5rem;
}
body.index #top-box ol li {
	width:calc((100% - 3rem) / 3);
	position:relative;
	align-items:initial;
}
body.index #top-box ol li::before {
	content:"";
	width:100%;
	height:80%;
	background:#fff;
	border-radius:1rem;
	position:absolute;
	left:0;
	bottom:0;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
}
body.index #top-box ol li.point1 .pic {
	width:11rem;
	margin:0 auto;
}
body.index #top-box ol li.point2 .pic {
	width:12.05rem;
	margin:0 auto;
	padding-right:1.5rem;
	box-sizing:content-box;
}
body.index #top-box ol li.point3 .pic {
	width:10.6rem;
	margin:0 auto;
}
body.index #top-box ol li .in-box {
	position:relative;
	z-index:1;
	padding-bottom:2.5rem;
}
body.index #top-box ol li .list-txt {
	font-size:1.3rem;
	line-height:1.38;
	text-align:center;
	font-weight:bold;
	margin:.5rem auto 1.5rem;
}
body.index #top-box ol li .list-txt span { color:#009ed6; font-weight:bold; }
body.index #top-box .last-txt {
	font-size:1.2rem;
	line-height:1.5;
	font-weight:bold;
	text-align:center;
	margin:2.5rem 0;
}

body.index #strengths-box {
	background:url(../img/strengths_bk.jpg) no-repeat;
	background-size:cover;
	padding:5.5rem 0;
}
body.index #strengths-box ol { margin-bottom:3rem; }
body.index #strengths-box li {
	background:#fff;
	border-radius:1rem;
	padding:1.5rem 2rem;
	display:flex;
	align-items:center;
	margin-bottom:1rem;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
}
body.index #strengths-box li .num {
	font-size:1.2rem;
	font-weight:bold;
	border-radius:100vmax;
	background:#f4c326;
	color:#fff;
	width:8.5rem;
	text-align:center;
	line-height:2.6rem;
	margin-right:1rem;
}
body.index #strengths-box li .txt {
	font-size:1.5rem;
	font-weight:bold;
}
body.index #strengths-box li .txt span {
	font-size:1.7rem;
	font-weight:bold;
	color:#009ed6;
}

body.index main section { padding:5rem 0 5.5rem; }
body.index main h3::after {
	content:"";
	width:37.7rem;
	height:.4rem;
	background-image:linear-gradient(90deg, rgba(0, 158, 223, 1), rgba(2, 97, 183, 1));
	display:block;
	margin:1rem auto 2rem;
}
body.index main h3.white::after { background:#fff; }
body.index main h3 .en-font {
	display:block;
	font-size:1.2rem;
	font-weight:bold;
	color:#f4c326;
	text-align:center;
	margin-bottom:.5rem;
}
body.index main h3 .jp {
	font-size:2.2rem;
	font-weight:bold;
	display:block;
	text-align:center;
}
body.index main h3.white .jp { color:#fff; }

body.index main .sec-top-txt {
	font-size:1.1rem;
	line-height:1.54;
	text-align:center;
	font-weight:bold;
}
body.index main .sec-top-txt.white { color:#fff; }

body.index #function-sec {
	background:linear-gradient(180deg, #fff 0%, #fff 60%, #f4c326 60%, #f4c326 100%);
	position:relative;
}
body.index #function-sec .illust {
	width:13.65rem;
	position:absolute;
	top:4rem;
	left:5rem;
}
body.index #function-sec ul {
	background:#fff;
	border-radius:1rem;
	padding:.5rem 2.5rem;
	margin-top:2.5rem;
	margin-bottom:3rem;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
}
body.index #function-sec ul li {
	display:flex;
	align-items:center;
	padding:1.5rem 0;
	border-bottom:1px solid #bfbfbf;
	position:relative;
}
body.index #function-sec ul li:last-child { border-bottom:0; }
body.index #function-sec ul li .copy {
	font-size:1.1rem;
	font-weight:bold;
	color:#fff;
	background:#009ed6;
	line-height:2.6rem;
	width:13rem;
	border-radius:100vmax;
	text-align:center;
	margin-right:1rem;
}
body.index #function-sec ul li .txt {
	font-size:1.5rem;
	font-weight:bold;
}
body.index #function-sec ul li .txt span { color:#009ed6; font-weight:bold; }
body.index #function-sec ul li .blue-btn {
	position:absolute;
	right:0;
	top:0;
	bottom:0;
	margin:auto 0;
	height:2.2rem;
}

body.index #support-sec {
	background:url(../img/support_bk.jpg) no-repeat;
	background-size:cover;
	position:relative;
}
body.index #support-sec ul {
	align-items:initial;
	margin:3rem auto;
}
body.index #support-sec ul li {
	width:calc((100% - 3rem) / 3);
	background:#fff;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
	border-radius:1rem;
	padding:2rem 1.5rem 1.5rem;
}
body.index #support-sec ul li .copy {
	font-size:1rem;
	font-weight:bold;
	color:#fff;
	border-radius:.3rem;
	background:#f4c326;
	line-height:2.1rem;
	width:11rem;
	text-align:center;
	margin:-3rem auto .5rem;
}
body.index #support-sec ul li .txt {
	font-size:1.4rem;
	font-weight:bold;
	text-align:center;
	color:#009ed6;
	margin-top:1rem;
}

body.index #business-sec { position:relative; }
body.index #business-sec ul {
	flex-wrap:wrap;
	align-items:initial;
	margin-top:2.5rem;
}
body.index #business-sec ul li {
	width:calc((100% - 1.5rem) / 2);
	background:#fff;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
	border-radius:1rem;
	margin-bottom:1.5rem;
	display:flex;
	align-items:center;
	padding:1rem 1.5rem;
	position:relative;
}
body.index #business-sec ul li .icon { width:4.5rem; }
body.index #business-sec ul li .txt {
	font-size:1.35rem;
	font-weight:bold;
	margin-left:1rem;
	line-height:1.55;
}
body.index #business-sec ul li .blue-btn {
	position:absolute;
	right:2rem;
	top:0;
	bottom:0;
	margin:auto 0;
	height:2.2rem;
}
body.index #business-sec .illust {
	width:9.65rem;
	position:absolute;
	top:3.5rem;
	right:6rem;
}

body.index #case-sec {
	background:url(../img/support_bk.jpg) no-repeat;
	background-size:cover;
	position:relative;
}
body.index #case-sec ul.case-slider {
	align-items:initial;
	margin:3rem auto;
}
body.index #case-sec ul.case-slider .slick-slide {
	width:calc((100% - 3rem) / 3);
	background:#fff;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
	border-radius:1rem;
	padding:2rem 1.5rem 1.5rem;
	margin:0 .75rem;
}
body.index #case-sec ul.case-slider .slick-dots {
  display:flex;
  justify-content:center;
  position:relative;
  margin-top:2rem;
}
body.index #case-sec ul.case-slider .slick-dots li {
  width:.8rem !important;
  height:.8rem !important;
  margin:0 .5rem !important;
  padding:0 !important;
  border-radius:100vmax;
  background:#fff;
}
body.index #case-sec ul.case-slider .slick-dots li.slick-active { background:#f4c326; border:0; }
body.index #case-sec ul.case-slider .slick-dots li button { display:none; }
body.index #case-sec ul.case-slider .num {
	font-size:.9rem;
	color:#f4c326;
	font-weight:bold;
	margin-bottom:.5rem;
}
body.index #case-sec ul.case-slider .txt {
	font-size:1.6rem;
	font-weight:bold;
	color:#009ed6;
	line-height:1.43;
}
body.index #case-sec ul.case-slider .name {
	font-size:.9rem;
	margin:.8rem 0 1.5rem;
}
body.index #case-sec .btn a {
	width:100%;
	line-height:2.6rem;
	display:block;
	background:#32b16c;
	text-align:center;
	color:#fff;
	border-radius:100vmax;
	position:relative;
	margin:0 auto;
}
body.index #case-sec .btn a .arrow {
	display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width:.5em;
  height:.5em;
  border:0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing:border-box;
  transform:translateX(-20%) rotate(45deg);
  position:absolute;
  right:2rem;
  top:.2rem;
  bottom:0;
  margin:auto 0;
  transition:0.3s ease all;
}
body.index #case-sec .btn a .btn-txt {
	font-size:.8rem;
	font-weight:bold;
	vertical-align: middle;
}
body.index #case-sec .btn a:hover { opacity:.5; }

body.index .two-box { align-items:initial; }
body.index .two-box .box {
	width:calc((100% - 3rem) / 2);
}
body.index .two-box .box h4 {
	padding-bottom:1rem;
	border-bottom:2px solid #000;
}
body.index .two-box .box h4 .en-font {
	display:block;
	font-size:1rem;
	font-weight:bold;
	color:#f4c326;
	margin-bottom:.5rem;
}
body.index .two-box .box h4 .jp {
	font-size:1.6rem;
	font-weight:bold;
	display:block;
}
body.index .two-box .box li {
	padding:1.2rem .5rem;
	border-bottom:1px solid #bfbfbf;
}
body.index .two-box .box li time { font-size:.8rem; display:block; }
body.index .two-box .box li .ttl {
	font-size:.9rem;
	overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:1;
  margin-top:.5rem;
}
body.index .two-box .box li .ttl a:hover { opacity:.5; }

body.index #talk-box {
	padding:5rem 0 5.5rem;
	background:url(../img/talk_bk.jpg) no-repeat;
	background-size:cover;
}
body.index #talk-box .ttl {
	width:36.35rem;
	margin:0 auto 2rem;
}
body.index #talk-box ul {
	margin-top:3rem;
	align-items:initial;
	margin-bottom:4rem;
}
body.index #talk-box li {
	width:calc((100% - 9rem) / 4);
	background:#fff;
	border-radius:1rem;
	padding:2rem 0;
	text-align:center;
	position:relative;
}
body.index #talk-box li::after {
	content:"";
	width:0;
  height:0;
  border-style:solid;
  border-right:.6rem solid transparent;
  border-left:.6rem solid transparent;
  border-top:.75rem solid #fff;
  border-bottom:0;
  position:absolute;
  bottom:-.5rem;
  left:0;
  right:0;
  margin:0 auto;
}
body.index #talk-box li .icon {
	width:2.3rem;
	margin:-3.15rem auto 1rem;
}
body.index #talk-box li .txt {
	font-size:1rem;
	line-height:1.6;
	color:#282728;
	font-weight:bold;
}
body.index #talk-box li:nth-child(3) .txt { margin-top:1.8rem; }

body.index .bk-clr-link-box {
	background:#f4c326;
	padding:4rem 0;
}
body.index .bk-clr-link-box li {
	width:calc((100% - 1.5rem) / 2);
	margin-bottom:2rem;
	border-radius:1rem;
	box-shadow:0px 1.5px 14px 0px rgba(179, 179, 179, .4);
	overflow:hidden;
}
body.index .bk-clr-link-box li a:hover { opacity:.5; }
body.index .bk-clr-link-box .bnr {
	border-radius:1rem;
	overflow:hidden;
}
body.index .bk-clr-link-box .bnr a:hover { opacity:.5; }

body.index #company-sec {
	background:url(../img/company_bk.jpg) no-repeat;
	background-size:cover;
}
body.index #company-sec h3::after { display:none; }
body.index #company-sec .copy {
	font-size:1.7rem;
	font-weight:bold;
	text-align:center;
	color:#fff;
	margin:2rem auto 1rem;
}
body.index #company-sec .txt {
	font-size:1rem;
	line-height:1.6;
	font-weight:bold;
	text-align:center;
	color:#fff;
}
body.index #company-sec .btn {
	width:20.5rem;
	margin:3rem auto 0;
}
body.index #company-sec .btn a:hover { opacity:.5; }






@media screen and (max-width: 960px) {
	.in-w63 { width:95%; max-width:800px; }
	.in-w61 { width:95%; max-width:750px; }

	body.open { height:100svh; overflow:hidden; }

	main { margin-top:55px; }
	#header { height:55px; padding:0 20px; }
	#header #site-logo { width:184px; }
	#header #hamburger {
		display:block;
		width:60px;
		height:55px;
		cursor:pointer;
		z-index:10000;
		position:fixed;
		right:0;
		top:0;
	}
	#header #hamburger .inner_line {
		display:block;
		margin:0 auto;
		width:30px;
		height:2px;
		transition:1s;
		background:#000;
		position:absolute;
		left:15px;
	}
	#header #hamburger .inner_line span { transition:all .4s; }
	#header #hamburger #line1 { top:20px; }
	#header #hamburger #line2 { top:27px; }
	#header #hamburger #line3 { top:35px; }
	#header #hamburger.open #line1 { transform:translateY(9px) rotate(-45deg); }
	#header #hamburger.open #line2 { transform:translateY(2px) rotate(45deg); }
	#header #hamburger.open #line3 { display:none; }
	#header .head-main-box nav.sp-on { display:none; }
	#header.open .head-main-box {
		background:#fff;
		width:100%;
		height:100vh;
		padding-bottom:60px;
		position:fixed;
		top:0;
		left:0;
		display:block;
		overflow-y:auto;
	}
	#header .head-main-box ul.main-nav { display:none; }
	#header .head-main-box .btn { display:none; }
	#header .tel-box { display:none; }
	#header.open .head-main-box .btn { display:block; }
	#header.open .tel-box {
		display: flex;
    width: 100%;
    text-align: center;
    justify-content: center;
    margin-left:0;
	}
	#header .tel-box .num { font-size:25px; letter-spacing:.05em; }
	#header .tel-box .time { font-size:14.5px; margin-top:8px; }
	#header .tel-box .icon { width:14.5px; margin-top:3px; margin-right:8px; }
	#header.open .nav-box nav {
		width:325px;
    margin:50px auto 20px;
	}
	#header.open .btn a { line-height:36.5px; font-size:13px; width:156px; margin-right:0; }
	#header.open #site-logo { display:none; }
	#header.open .nav-box { display:block; }
	#header.open .head-main-box nav.sp-on { display:block; margin:20px auto 0; }
	#header.open .head-main-box nav.sp-on ul { border-top:1px solid #bfbfbf; }
	#header.open .head-main-box nav.sp-on li { border-bottom:1px solid #bfbfbf; }
	#header.open .head-main-box nav.sp-on li a { font-size:15px; padding:20px; display:block; }
}

@media screen and (max-width: 750px) {
	html { scroll-padding-top:80px !important; }
	.pc-on { display:none; }
	.sp-on { display:initial; }

	html, body { overflow-x:hidden; }

	.in-w63 { width:86.6%; }
	.in-w61 { width:86.6%; }
	.in-w55 { width:86.6%; }

	.dflt-green-btn a { width:287px; line-height:49px; box-shadow:0 3px 0px 0px #14700c; }
	.dflt-green-btn a .arrow { top:4px; }
	.dflt-green-btn.mini a .btn-txt { font-size:14px; }
	.dflt-green-btn a .btn-txt { font-size:15px; }
	.dflt-green-btn.mini a { width:194px; line-height:42px; box-shadow:0 3px 0px 0px #15934f; }
	.dflt-green-btn a:hover { box-shadow:0px 0px 0px 0px #013e39; transform:translate(0, .2rem); }

	body.index #kv-box { height:auto; background:url(../img/kv_bk_sp.jpg) no-repeat; background-size:cover; padding:30px 0; }
	body.index #kv-box > .flex-box { display:block; }
	body.index #kv-box .pic { width:100%; }
	body.index #kv-box .copy { width:297px; margin:30px auto 10px; }
	body.index #kv-box .txt { font-size:15.5px; text-align:center; }
	body.index #kv-box ul { width:100%; padding:0 5px; }
	body.index #kv-box .txt-box { width:100%; }
	body.index #top-box { padding:40px 0 50px; background:linear-gradient(180deg, #fff 0%, #fff 72%, #f4c326 72%, #f4c326 100%); }
	body.index #top-box .copy { width:83%; }
	body.index #top-box ol { display:block; width:71%; }
	body.index #top-box ol li { width:100%; margin-bottom:30px; }
	body.index #top-box ol li .list-txt { font-size:18px; }
	body.index #top-box ol li.point1 .pic { width:154px; }
	body.index #top-box ol li.point2 .pic { width:168.5px; }
	body.index #top-box ol li.point3 .pic { width:150px; }
	body.index #top-box .last-txt { font-size:14px; }
	body.index #strengths-box { padding:50px 0; background:url(../img/strengths_bk_sp.jpg) no-repeat; background-size:cover; }
	body.index #strengths-box li { display:block; }
	body.index #strengths-box li .num { font-size:13px; margin:0 auto 10px; }
	body.index #strengths-box li .txt { font-size:16px; text-align:center; line-height:1.4; }
	body.index #strengths-box li .txt span { font-size:19px; display:block; }
	body.index #function-sec .illust { width:101px; top:-25px; left:initial; right:5px; }
	body.index #function-sec ul li { display:block; }
	body.index #function-sec ul li .copy { font-size:12px; margin-bottom:10px; }
	body.index #function-sec ul li .txt { font-size:17px; line-height:1.4; }
	body.index #support-sec {
    background:url(../img/support_bk_sp.jpg) no-repeat;
    background-size:cover;
  }
  body.index #support-sec ul { display:block; width:71%; }
  body.index #support-sec ul li { width:100%; margin-bottom:40px; padding:20px 20px 25px; }
  body.index #support-sec ul li .copy { font-size:14px; width:155px; line-height:29px; }
  body.index #support-sec ul li .txt { font-size:19.5px; }
  body.index #business-sec .illust { width:76.5px; top:-30px; right:20px; }
  body.index #business-sec ul { display:block; }
  body.index #business-sec ul li { width:100%; }
  body.index #business-sec ul li .txt { font-size:15px; }
  body.index #case-sec ul.case-slider .num { font-size:12.5px; }
  body.index #case-sec ul.case-slider .txt { font-size:22px; }
  body.index #case-sec ul.case-slider .name { font-size:12.5px; }
  body.index #case-sec ul.case-slider .slick-slide { padding:30px 25px 25px; margin:0 15px; }
  body.index #case-sec .btn a { line-height:36.5px; }
  body.index #case-sec .btn a .btn-txt { font-size:12px; }
  body.index .two-box { display:block; padding:50px 0; }
  body.index .two-box #news-sec { margin-bottom:30px; }
  body.index .two-box .box { width:100%; padding:0; }
  body.index .two-box .box h4 .en-font { font-size:14px; margin-bottom:8px; }
  body.index .two-box .box h4 .jp { font-size:22px; }
  body.index .two-box .box li time { font-size:12px; }
  body.index .two-box .box li .ttl { font-size:14px; }
  body.index .two-box .box li { padding:20px 0; }
  body.index #talk-box { padding:50px 0; background:url(../img/talk_bk.jpg) no-repeat; background-size:cover; }
  body.index #talk-box .ttl { width:282px; }
  body.index #talk-box ul { flex-wrap:wrap; padding:0 10px; margin-bottom:20px; }
  body.index #talk-box li { width:calc((100% - 10px) / 2); margin-bottom:30px; }
  body.index #talk-box li .txt { font-size:13px; }
  body.index .bk-clr-link-box ul { display:block; }
  body.index .bk-clr-link-box li { width:100%; margin-bottom:10px; }
  body.index .bk-clr-link-box .bnr { margin-top:20px; }
  body.index #company-sec {
    background:url(../img/company_bk_sp.jpg) no-repeat;
    background-size:cover;
  }
  body.index #company-sec .copy { font-size:24px; margin:30px auto 15px; }
  body.index #company-sec .txt { font-size:14px; }
  body.index #company-sec .btn { width:287px; }

  body.index main section { padding:50px 0; }
	body.index main h3 .en-font { font-size:15px; margin-bottom:10px; }
	body.index main h3 .jp { font-size:24px; line-height:1.25; }
	body.index main h3::after { width:300px; height:5.5px; }
	body.index main .sec-top-txt { font-size:15px; }

	#footer { padding-top:30px; }
	#footer .foot-nav-box { display:none; }
	#footer .foot-logo { width:184px; margin:0 auto; }
	#footer small { font-size:8px; margin:30px auto 0; text-align:center; }
}
















