@charset "UTF-8";
/*@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@700&display=swap');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');

/* commmon */
html {  }
body { position:relative; color:#333; line-height:1.5; font-family:'Roboto', Arial, sans-serif; font-size:15px; font-weight:400; font-feature-settings:'palt'; -webkit-text-size-adjust:100%; letter-spacing:0.08125rem; overflow-wrap:break-word; word-wrap:break-word; }
body { text-align:justify; }
body.modal::before { content:''; display:block; position:fixed; top:0; left:0; z-index:100; width:100%; height:100%; background:rgba(0,0,0,0.65); }

* { margin:0; padding:0; border:0; position:relative; box-sizing:border-box; }

::selection { color:#fff; background:#2A4EA1; }
::-moz-selection { color:#fff; background:#2A4EA1; }
::placeholder { color:rgba(16,16,16,0.35); font-family:'Roboto', Arial, '游ゴシック体', '游ゴシック', 'Yu Gothic', YuGothic, sans-serif; font-size:16px; }

body { background:#FFF; }
a { color:#2B8EE5; text-decoration:underline; transition:1.0s; }
a:visited { color:#707070; }
a:hover { transition:1.0s; }
a img { border:0; }
img { width:100%; height:100%; object-fit:cover; vertical-align:top; }
div { word-break:break-all; }
.material-icons { position:relative; top:0.175em; margin-right:0.25rem; font-size:1.2em; }



/* .Wrap */
.Wrap { position:relative; overflow:hidden; }

@media screen and (min-width:740px) {
	.Wrap { position:relative; max-width:100%; padding:0; overflow:hidden; }
}


/* .Main */
.Head { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; position:relative; top:0; left:0; z-index:120; width:100%; margin:0; padding:15px 20px; background:rgba(255,255,255,0.9); }
.Head h1 { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; width:100%; }
.Head h1 img { width:auto; max-height:30px; }
.Head ul { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; position:fixed; left:0; bottom:0; width:calc(100% - 50px); margin:0; padding:0; list-style:none; background:rgba(42,78,161,0.9);/* 20250716 add background */ }
.Head li { display:block; width:50%; height:auto; margin:0; line-height:50px; /* 20250716 rm background:rgba(42,78,161,0.9); */ }
.Head li:first-child { position:relative; top:auto; width:calc(100% - 200px); margin-right:30px;/* 20250716 adj margin-right */ }
/* 20250716 rm .Head li:nth-last-child(2) { width:100px; margin-left:0; } */
.Head li:last-child { width:100px; margin-left:0; }
.Head li img { width:auto; height:15px; }
.Head li img.PC { display:none; }
.Head li img.SP { display:block; }
.Head li span { display:none; position:relative; top:0.0em; font-size:1.1em; }
.Head a { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; height:50px; color:#fff; line-height:50px; font-size:13px; font-weight:bold; text-decoration:none; }
.Head li:nth-last-child(2) a { padding:5px 0 0; line-height:45px; }
.Head li:last-child a { padding:5px 0 0; line-height:45px; }

@media screen and (min-width:740px) {
	.Head { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; position:relative; top:0; left:0; z-index:120; width:100%; margin:0; padding:20px 30px; background:rgba(255,255,255,0.9); }
	.Head h1 { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; width:auto; }
	.Head h1 img { width:auto; max-height:30px; }
	.Head ul { display:flex; flex-flow:row wrap; justify-content:flex-end; align-items:center; position:relative; left:inherit; bottom:inherit; width:inherit; margin:0; padding:0; list-style:none; background: rgba(255, 255, 255, 0.9);/* 20250716 add background */ }
	.Head li { display:block; width:auto; height:auto; margin:0; line-height:1; background:transparent; }
	.Head li:first-child { position:relative; top:3px; width:auto; margin-right:32px; }
	.Head li:nth-last-child { width:auto; }
	.Head li:last-child { width:auto; margin-left:20px; padding:0; }
	.Head li img { width:auto; height:15px; }
	.Head li img.PC { display:block; }
	.Head li img.SP { display:none; }
	.Head li span { display:inline-block; position:relative; top:0.2em; font-size:1.4em; }
	.Head a { display:inline; height:auto; color:#2A4EA1; line-height:1; font-size:16px; font-weight:bold; text-decoration:none; }
	.Head li:nth-last-child(2) a { padding:0; line-height:1; }
	.Head li:last-child a { padding:0; line-height:1; }
}


/* .Hero */
.Hero { margin:0 0 60px; padding:0; }
.HeroInner { display:flex; flex-flow:column wrap; justify-content:center; align-items:center; position:relative; }
.HeroText { display:flex; position:absolute; top:inherit; bottom:0; left:0; z-index:2; width:100%; height:auto; color:#fff; transform:translate(0,0); }
.HeroTextInner { display:flex; flex-flow:column wrap; justify-content:center; align-items:flex-start; align-self:stretch; width:860px; padding:0 5% 30px; background:rgba(42,78,161,0.9); }
.Hero h2 { margin:0 0 20px; line-height:1.3; font-size:4.65vw; font-weight:bold; text-align:center; }
.Hero h2 > br { display:none; }
.Hero h2 span { display:block; margin:0; font-size:40px; letter-spacing:0.035em; }
.Hero h2 span img { position:relative; z-index:2; top:-10px; width:65%; height:auto; margin:0 0 0 18%; }
.Hero h2 small { display:flex; flex-flow:column wrap; justify-content:center; align-items:center; position:absolute; z-index:1; top:-40px; width:100px; height:100px; border-radius:100px; border:#fff 2px solid; line-height:1.2; font-size:14px; text-align:center; background:rgba(42,78,161,1.0); box-shadow:inset 0 0 0 3px rgba(42,78,161,1.0),inset 0 0 0 4px rgba(255,255,255,1.0); transform:rotate(-12deg); }
.Hero p { width:100%; line-height:1.8; font-size:14px; }
.Hero ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:80%; margin:0 auto; list-style:none; }
.Hero li { width:30.0%; }

.Hero .BtnWrap { display:flex; flex-flow:column nowrap; justify-content:flex-start; align-items:center; width:100%; padding:20px 0 0; }
.Hero .BtnWrap a.forContact { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; width:100%; max-width:86%; margin:0 auto; border:#fff 1px solid; color:#2A4EA1; line-height:56px; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.3); transition:1.0s; }
.Hero .BtnWrap a.forContact:hover {  }
.Hero .BtnWrap a.forApplication { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; width:100%; max-width:86%; margin:0 auto 20px; border:#fff 1px solid; color: #fff; line-height:56px; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:rgba(255,255,255,0); backdrop-filter:blur(20px); box-shadow:0 5px 0 0 rgba(0,0,0,0.3); transition:1.0s; }
.Hero .BtnWrap a.forApplication:hover {  }
.Hero .BtnWrap a b { display:block; width:auto; padding:0 5%; }
.Hero .BtnWrap a strong { display:block; width:auto; padding:0 60px; background:#333; }
.Hero .BtnWrap span { display:block; font-size:18px; font-weight:bold; text-align:center; }

.HeroPhoto { order:2; position:relative; z-index:1; width:100%; height:auto; margin:0; }
.HeroPhoto img.sp { display:block; width:100%; height:auto; min-height:auto; object-fit:cover; }
.HeroPhoto img.pc { display:none; }

.HeroTextRe { position:absolute; bottom:-90px; left:50%; z-index:2; transform:translate(-50%,0); }
.HeroTextRe .BtnWrap { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; max-width:100%; margin:0 auto; padding:40px 0 0; }
.HeroTextRe .BtnWrap a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:8px 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #fff; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
.HeroTextRe .BtnWrap a:hover { background:#11295f; }
.HeroTextRe .BtnWrap a.forContact { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:4px 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #2A4EA1; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
.HeroTextRe .BtnWrap a.forContact:hover { color:#fff; background:#2A4EA1; }
.HeroTextRe .BtnWrap a.forApplication { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:4px 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #2A4EA1; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
.HeroTextRe .BtnWrap a.forApplication:hover { color:#fff; background:#2A4EA1; }
.HeroTextRe .BtnWrap a small { display:block; font-size:0.76em; }
.HeroTextRe .BtnWrap a span { position:absolute; right:15px; }

@media screen and (min-width:740px) {
	.Hero { margin:0; padding:0; }
	.HeroInner { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; position:relative; }
	.HeroText { display:flex; position:absolute; top:50%; bottom:inherit; left:20px; z-index:2; width:48%; height:100%; color:#fff; transform:translate(0,-50%); }
	.HeroTextInner { display:flex; flex-flow:column wrap; justify-content:center; align-items:flex-start; align-self:stretch; width:860px; padding:30px 50px; background:rgba(42,78,161,0.9); }
	.Hero h2 { margin:0 0 20px; line-height:1.3; font-size:3.85vw; font-weight:bold; text-align:left; }
	.Hero h2 > br { display:inline; }
	.Hero h2 span { display:block; margin:0; font-size:40px; letter-spacing:0.035em; }
	.Hero h2 span img { position:relative; z-index:2; top:inherit; width:65%; height:auto; margin:0 0 0 18%; }
	.Hero h2 small { display:flex; flex-flow:column wrap; justify-content:center; align-items:center; position:absolute; z-index:1; top:-40px; width:140px; height:140px; border-radius:140px; border:#fff 2px solid; line-height:1.2; font-size:21px; text-align:center; background:rgba(42,78,161,1.0); box-shadow:inset 0 0 0 3px rgba(42,78,161,1.0),inset 0 0 0 4px rgba(255,255,255,1.0); transform:rotate(-12deg); }
	.Hero p { width:100%; line-height:1.8; font-size:18px; }
	.Hero ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:80%; margin:0 auto; list-style:none; }
	.Hero li { width:30.0%; }

	.Hero .BtnWrap { display:flex; flex-flow:row nowrap; justify-content:flex-start; align-items:center; width:100%; padding:40px 0 0; }
	.Hero .BtnWrap a.forContact { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; width:100%; max-width:300px; margin:0 10px; border:#fff 1px solid; color:#2A4EA1; line-height:56px; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.3); transition:1.0s; }
	.Hero .BtnWrap a.forContact:hover {  }
	.Hero .BtnWrap a.forApplication { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; width:100%; max-width:300px; margin:0 10px; border:#fff 1px solid; color: #fff; line-height:56px; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:rgba(255,255,255,0); backdrop-filter:blur(20px); box-shadow:0 5px 0 0 rgba(0,0,0,0.3); transition:1.0s; }
	.Hero .BtnWrap a.forApplication:hover {  }
	.Hero .BtnWrap a { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; width:auto; max-width:360px; margin:0; color: #2A4EA1; line-height:56px; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.3); transition:1.0s; }
	.Hero .BtnWrap a:hover {  }
	.Hero .BtnWrap a b { display:block; width:auto; padding:0 5%; }
	.Hero .BtnWrap a strong { display:block; width:auto; padding:0 60px; background:#333; }
	.Hero .BtnWrap span { display:block; font-size:18px; font-weight:bold; text-align:center; }

	.HeroPhoto { order:2; position:relative; z-index:1; width:100%; height:auto; margin:0; }
	.HeroPhoto img.sp { display:none; }
	.HeroPhoto img.pc { display:block; width:100%; height:100%; min-height:640px; object-fit:cover; }

	.HeroTextRe { position:absolute; bottom:40px; left:50%; z-index:2; transform:translate(-50%,0); }
	.HeroTextRe .BtnWrap { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; max-width:100%; margin:0 auto; padding:40px 0 0; }
	.HeroTextRe .BtnWrap a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:0 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #fff; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
	.HeroTextRe .BtnWrap a:hover { background:#11295f; }
	.HeroTextRe .BtnWrap a.forContact { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:0 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #2A4EA1; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
	.HeroTextRe .BtnWrap a.forContact:hover { color:#fff; background:#2A4EA1; }
	.HeroTextRe .BtnWrap a.forApplication { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:0 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #2A4EA1; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
	.HeroTextRe .BtnWrap a.forApplication:hover { color:#fff; background:#2A4EA1; }
	.HeroTextRe .BtnWrap a small { display:block; font-size:0.76em; }
	.HeroTextRe .BtnWrap a span { position:absolute; right:15px; }
}



/* .Intro */
.Intro { position:relative; z-index:3; width:90%; margin:0 auto; padding:0 0 40px; }
.Intro::after { content:none; position:absolute; left:calc(50% - 80px); bottom:-100px; border:transparent 80px solid; border-top:#748BC2 20px solid; }
.IntroInner { display:flex; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; position:relative; width:100%; margin:0 auto; }
.IntroInner::before { content:'Reason'; position:absolute; bottom:-10px; right:-15px; color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:100px; font-weight:bold; text-transform:uppercase; }
.IntroPhoto { display:flex; align-self:stretch; width:100%; }
.IntroPhoto img { width:100%; height:100%; object-fit:cover; }
.IntroText { width:100%; padding:30px 0 0 0; }
.IntroText h2 { margin:0 0 18px; color:#2A4EA1; line-height:1.3; font-size:6.5vw; font-weight:bold; text-align:center; }
.IntroText h2 br { display:none; }
.IntroText h2 small { display:block; padding:0 0 10px; }
.IntroText h2 img { width:auto; height:50px; margin:0; }
.IntroText h2 .catch { display:block; margin:0 0 16px; color:#202020; line-height:1.5; font-size:18px; font-weight:bold; text-align:center; }
.IntroText h2 .catch br { display:inline; }
.IntroText p { margin:0 0 18px; font-size:3.5vw; font-weight:bold; text-align:center; }
.IntroText ul { padding:0; list-style:none; font-size:2.9vw; text-align:center; }
.IntroText li {  }
.IntroText li b { color:#FF6060; text-decoration:underline; }
.IntroText li span { position:relative; top:0.2em; margin:0 4px 0 0; color:#2A4EA1; line-height:1; font-size:1.4em; }
.IntroTips { width:100%; max-width:1200px; margin:30px auto 40px; padding:24px; border:#2A4EA1 1px solid; border-radius:6px; background:#fdfdfd; }
.IntroTips ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; padding:0; list-style:none; }
.IntroTips li { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; width:100.0%; margin:5px 0; font-size:13px; text-align:center; }
.IntroTips figure { width:40%; margin:0 15px 0 0; padding:0; border-radius:6px; box-shadow:0 2px 12px 0 rgba(0,0,0,0.1); }
.IntroTips img { width:100%; height:100%; border-radius:6px; object-fit:cover; }
.IntroTips b { display:block; width:calc(60% - 20px); text-align:left; }

@media screen and (min-width:740px) {
	.Intro { position:relative; z-index:3; width:100%; margin:inherit; padding:40px 0 80px; }
	.Intro::after { content:none; position:absolute; left:calc(50% - 120px); bottom:-135px; border:transparent 120px solid; border-top:#748BC2 30px solid; }
	.IntroInner { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; position:relative; width:100%; margin:0 auto; }
	.IntroInner::before { content:'Reason'; position:absolute; bottom:-10px; right:-15px; color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:180px; font-weight:bold; text-transform:uppercase; }
	.IntroPhoto { display:flex; align-self:stretch; width:49%; }
	.IntroPhoto img { width:100%; height:100%; object-fit:cover; }
	.IntroText { width:51%; padding:0 20px 0 60px; }
	.IntroText h2 { margin:0 0 18px; color:#2A4EA1; line-height:1.3; font-size:3.85vw; font-weight:bold; text-align:left; }
	.IntroText h2 br { display:inline; }
	.IntroText h2 small { display:block; padding:0 0 10px; }
	.IntroText h2 img { width:40.5%; height:auto; margin:0; }
	.IntroText h2 .catch { display:block; margin:0 0 16px; color:#202020; line-height:1.5; font-size:24px; font-weight:bold; text-align:left; }
	.IntroText h2 .catch br { display:inline; }
	.IntroText p { margin:0 0 18px; font-size:1.6vw; font-weight:bold; text-align:left; }
	.IntroText ul { padding:0; list-style:none; font-size:1.1vw; text-align:left; }
	.IntroText li {  }
	.IntroText li b { color:#FF6060; text-decoration:underline; }
	.IntroText li span { position:relative; top:0.2em; margin:0 4px 0 0; color:#2A4EA1; line-height:1; font-size:1.4em; }
	.IntroTips { width:94%; max-width:1200px; margin:80px auto 0; padding:24px; border:#2A4EA1 1px solid; border-radius:6px; background:#fdfdfd; }
	.IntroTips ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; padding:0; list-style:none; }
	.IntroTips li { display:block; width:32.0%; marign:0; font-size:18px; text-align:center; }
	.IntroTips figure { width:100%; margin:0 0 15px; padding:0; border-radius:6px; box-shadow:0 2px 12px 0 rgba(0,0,0,0.1); }
	.IntroTips img { width:100%; height:100%; border-radius:6px; object-fit:cover; }
	.IntroTips b { display:block; width:auto; text-align:center; }
}

/* .About */
.About { position:relative; z-index:2; width:100%; margin:0 auto; padding:30px 5%; background:#FDFDFD; }
.AboutInner { display:flex; flex-flow:row wrap; justify-content:flex-end; align-items:center; position:relative; width:100%; margin:0 auto; }
.AboutInner::before { content:'Solution'; position:absolute; bottom:-10px; left:-30px; color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:110px; font-weight:bold; text-transform:uppercase; }
.AboutPhoto { order:1; display:flex; align-self:stretch; width:100%; margin:0 0 20px; }
.AboutPhoto img { width:100%; height:100%; object-fit:cover; }
.AboutText { order:2; width:100%; max-width:648px; padding:0; }
.AboutText h2 { margin:0 0 18px; color:#2A4EA1; line-height:1.3; font-size:6.5vw; font-weight:bold; text-align:center; }
.AboutText h2 br { display:none; }
.AboutText h2 small { display:block; padding:0 0 10px; }
.AboutText h2 img { width:100%; height:auto; margin:0; }
.AboutText h2 .catch { display:block; margin:0 0 16px; color:#202020; line-height:1.5; font-size:18px; font-weight:bold; text-align:center; }
.AboutText h2 .catch br { display:inline; }
.AboutText p { margin:0 0 18px; font-size:3.5vw; font-weight:bold; text-align:center; }
.AboutText ul { padding:0; list-style:none; font-size:2.9vw; text-align:center; }
.AboutText li {  }
.AboutText li b { color:#FF6060; text-decoration:underline; }
.AboutText li span { position:relative; top:0.2em; margin:0 4px 0 0; color:#2A4EA1; line-height:1; font-size:1.4em; }
.AboutTips { width:100%; max-width:1200px; margin:30px auto 0; padding:24px; border:#2A4EA1 1px solid; border-radius:6px; background:#fdfdfd; }
.AboutTips ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; padding:0; list-style:none; }
.AboutTips li { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; width:100.0%; margin:5px 0; font-size:13px; text-align:left; }
.AboutTips figure { width:40%; margin:0 15px 0 0; padding:0; border-radius:6px; box-shadow:0 2px 12px 0 rgba(0,0,0,0.1); }
.AboutTips img { width:100%; height:100%; border-radius:6px; object-fit:cover; }
.AboutTips b { display:block; width:calc(60% - 20px); text-align:left; }
.AboutTips b br { display:none; }
.AboutCV .BtnWrap { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; max-width:800px; margin:0 auto; padding:30px 0 0; }
.AboutCV .BtnWrap a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:100%; min-width:auto; max-width:86%; margin:0 auto 0; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #fff; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
.AboutCV .BtnWrap a:hover { background:#11295f; }
.AboutCV .BtnWrap a.forApplication { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:100%; min-width:auto; max-width:86%; padding:12px 1.5em; margin:0 auto 20px; border:#2A4EA1 2px solid; color: #2A4EA1; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
.AboutCV .BtnWrap a.forApplication:hover { color:#fff; background:#2A4EA1; }
.AboutCV .BtnWrap a span { position:absolute; right:15px; }

@media screen and (min-width:740px) {
	.About { position:relative; z-index:2; width:100%; margin:inherit; padding:80px 0; background:#FDFDFD; }
	.AboutInner { display:flex; flex-flow:row wrap; justify-content:flex-end; align-items:center; position:relative; width:100%; margin:0 auto; }
	.AboutInner::before { content:'Solution'; position:absolute; bottom:-10px; left:-15px; color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:180px; font-weight:bold; text-transform:uppercase; }
	.AboutPhoto { order:2; display:flex; align-self:stretch; width:49%; margin:0; }
	.AboutPhoto img { width:100%; height:100%; object-fit:cover; }
	.AboutText { order:1; width:51%; max-width:648px; padding:0 20px; }
	.AboutText h2 { margin:0 0 18px; color:#2A4EA1; line-height:1.3; font-size:3.85vw; font-weight:bold; text-align:left; }
	.AboutText h2 br { display:inline; }
	.AboutText h2 small { display:block; padding:0 0 10px; }
	.AboutText h2 img { width:80%; height:auto; margin:0; }
	.AboutText h2 .catch { display:block; margin:0 0 16px; color:#202020; line-height:1.5; font-size:24px; font-weight:bold; text-align:left; }
	.AboutText h2 .catch br { display:inline; }
	.AboutText p { margin:0 0 18px; font-size:1.6vw; font-weight:bold; text-align:left; }
	.AboutText ul { padding:0; list-style:none; font-size:1.1vw; text-align:left; }
	.AboutText li {  }
	.AboutText li b { color:#FF6060; text-decoration:underline; }
	.AboutText li span { position:relative; top:0.2em; margin:0 4px 0 0; color:#2A4EA1; line-height:1; font-size:1.4em; }
	.AboutTips { width:94%; max-width:1200px; margin:80px auto 0; padding:24px; border:#2A4EA1 1px solid; border-radius:6px; background:#fdfdfd; }
	.AboutTips ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; padding:0; list-style:none; }
	.AboutTips li { display:block; width:32.0%; font-size:1.1vw; text-align:center; }
	.AboutTips figure { width:100%; margin:0 0 15px; padding:0; border-radius:6px; box-shadow:0 2px 12px 0 rgba(0,0,0,0.1); }
	.AboutTips img { width:100%; height:100%; border-radius:6px; object-fit:cover; }
	.AboutTips b { display:block; width:auto; text-align:center; }
	.AboutTips b br { display:inline; }
	.AboutCV .BtnWrap { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; max-width:100%; margin:0 auto; padding:40px 0 0; }
	.AboutCV .BtnWrap a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:0 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #fff; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
	.AboutCV .BtnWrap a:hover { background:#11295f; }
	.AboutCV .BtnWrap a.forApplication { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:auto; min-width:360px; max-width:100%; margin:0 10px; padding:12px 1.5em; border:#2A4EA1 2px solid; color: #2A4EA1; line-height:1.6; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#fff; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
	.AboutCV .BtnWrap a.forApplication:hover { color:#fff; background:#2A4EA1; }
	.AboutCV .BtnWrap a small { display:block; font-size:0.76em; }
	.AboutCV .BtnWrap a span { position:absolute; right:15px; }
/*
	.AboutCV .BtnWrap a { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; width:auto; max-width:420px; margin:0 auto; color: #fff; line-height:70px; font-size:18px; font-weight:bolder; text-align:center; text-decoration:none; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.1); transition:1.0s; }
	.AboutCV .BtnWrap a:hover {  }
*/
}

/* .CaseStudy */
.CaseStudy { position:relative; z-index:1; padding:30px 0; }
.CaseStudy::before { content:'CaseStudy'; position:absolute; top:-15px; left:calc(50% - 2.35em); color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:90px; font-weight:bold; text-transform:uppercase; }
.CaseStudy h2 { margin:0 0 24px; color:#2A4EA1; line-height:1.3; font-size:6.5vw; font-weight:bold; text-align:center; }
.CaseStudy h2 small { display:block; }
.CaseStudy h2 img { width:auto; height:50px; margin:0; }
.CaseStudyInner {  }
.CaseStudyEx { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; width:100%; max-width:1380px; margin:0 auto 40px; padding:5%; border-radius:0; box-shadow:inset 4px 4px 12px rgba(0,0,0,0.1); background:#fcfcfc; }
.CaseStudyExPhoto { display:flex; align-self:stretch; width:100%; margin:0 0 20px; padding:0; }
.CaseStudyExPhoto img { width:100%; margin:0; padding:0; }
.CaseStudyExText { width:100%; }
.CaseStudyExText h3 { margin:0 0 8px; color:#2A4EA1; font-size:20px; }
.CaseStudyExText h3 small { display:block; font-size:14px; font-weight:normal; }
.CaseStudyExText p { margin:0 0 10px; font-size:14px; }
.CaseStudyExText p span { display:inline-block; position:relative; top:-2px; min-width:6em; margin:0 10px 0 0; padding:0 10px; border:#2A4EA1 1px solid; color:#2A4EA1; line-height:18px; font-size:12px; text-align:center; background:#fff; }
.CaseStudyExText dl { margin:0 0 10px 0; font-size:12px; }
.CaseStudyExText dt { margin:0 0 5px 0; color:#2A4EA1; font-weight:bold; }
.CaseStudyExText dd {  }
.CaseStudyExText ul { padding:0 0 0 24px; font-size:14px; }
.CaseStudyExMessage { margin:0; padding:16px 24px; border-radius:6px; border:#2A4EA1 1px solid; background:#fff; }
.CaseStudyExMessage h4 { margin:0 0 10px; padding:0; }
.CaseStudyExMessage ul { margin:0; padding:0; list-style:none; }
.CaseStudyExMessage ul li { position:relative; margin:0 0 4px; padding:0 0 0 18px; }
.CaseStudyExMessage ul li:last-child { margin-bottom:0; }
.CaseStudyExMessage ul li::before { content:''; display:block; position:absolute; top:0.35em; left:0; width:10px; height:5px; border-left:#2A4EA1 2px solid; border-bottom:#2A4EA1 2px solid; transform:rotate(-45deg); }

.CaseStudyVoiceWrap {}
.CaseStudyVoiceWrap > h3 { margin:0 0 10px; color:#2A4EA1; font-size:18px; text-align:center; }
.CaseStudyVoiceArea { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; position:relative; width:100%; margin:0 auto; padding:0; list-style:none; }
.CaseStudyVoiceArea .slick-track { display:flex; }
.CaseStudyVoiceArea .slick-list { padding:15px !important; }
.CaseStudyVoiceArea li { display:flex !important; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; height:auto !important; margin:0 12px; padding:24px; border-radius:6px; background:#fff; box-shadow:0 2px 12px 0 rgba(0,0,0,0.1); }
.CaseStudyVoice { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:100%; margin:0 0 15px; }
	.CaseStudyVoice.logo-it { background:url('../images/logo-it.png') no-repeat right top; background-size:auto 16px; }
	.CaseStudyVoice.logo-hotel { background:url('../images/logo-hotel.png') no-repeat right top; background-size:auto 10px; }
	.CaseStudyVoice.logo-food { background:url('../images/logo-food.png') no-repeat right top; background-size:auto 20px; }
.CaseStudyVoicePhoto { width:90px; height:90px; margin:0 10px 0 0; }
.CaseStudyVoicePhoto img { width:100%; height:100%; object-fit:cover; }
.CaseStudyVoiceText { width:calc(100% - 110px); }
.CaseStudyVoiceText h3 { font-size:16px; }
.CaseStudyVoiceText h3 small { display:block; padding:0; font-size:10px; font-weight:normal; }
.CaseStudyVoiceText p { padding:5px 0 0; font-size:11px; }
.CaseStudyVoiceArea p.comment { font-size:14px; }
.CaseStudyVoiceArea .slick-dots { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; bottom:-10px; }
.CaseStudyVoiceArea .slick-dots li { display:inline-block; width:6px; height:6px; margin:0 8px; padding:0; border-radius:6px; background:#ddd; box-shadow:0 0 0 0 rgba(0,0,0,0.0); }
.CaseStudyVoiceArea .slick-dots li.slick-active { background:#2A4EA1; }
.CaseStudyVoiceArea .slick-dots li button { display:inline-block; width:6px; height:6px; margin:0; padding:0; border-radius:6px; background:transparent; }
.CaseStudyVoiceArea .slick-arrow { position:absolute; top:calc(50% - 0px); width:50px; height:50px; background:rgba(42,78,161,0.85); transition:0.25s; }
.CaseStudyVoiceArea .slick-arrow:hover { background:rgba(42,78,161,1.0); transition:0.25s; }
.slick-prev { z-index:2; left:0px; }
.slick-prev::before { content:''; position:absolute; top:calc(50% - 6px); left:calc(50% - 6px); width:12px; height:12px; border-top:#fff 2px solid; border-left:#fff 2px solid; transform:rotate(-45deg); }
.slick-next { z-index:2; right:0px; }
.slick-next::before { content:''; position:absolute; top:calc(50% - 6px); left:calc(50% - 6px); width:12px; height:12px; border-top:#fff 2px solid; border-right:#fff 2px solid; transform:rotate(45deg); }
.CaseStudyTips { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:center; width:90%; max-width:1200px; margin:45px auto 0; padding:24px; border:#2A4EA1 1px solid; border-radius:6px; background:#fff; }
.CaseStudyTipsPhoto { align-self:stretch; width:100.0%; margin:0 0 20px; }
.CaseStudyTipsPhoto img { width:100%; height:100%; object-fit:cover; }
.CaseStudyTipsText { width:100.0%; }
.CaseStudyTipsText h4 { margin:0 0 5px; color:#2A4EA1; font-size:20px; }
.CaseStudyTipsText p.catch { margin:0 0 20px; font-size:16px; }
.CaseStudyTipsText p { font-size:12px; }
.CaseStudyTipsText p span { font-weight:bold; }

.CaseStudyType { margin:40px 0; color:#fff; background:#2A4EA1; }
.CaseStudyTypeInner { width:90%; max-width:90%; margin:0 auto; padding:40px 0; }
.CaseStudyType h2 { color:#fff; font-size:24px; }
.CaseStudyType ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; padding:0; list-style:none; }
.CaseStudyType li { display:flex; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; width:48%; margin:0 0 24px; padding:0 24px 24px 0; border-bottom:#fff 1px solid; border-right:#fff 1px solid; }
.CaseStudyType figure { width:70%; height:auto; margin:0 auto; padding:16px; border-radius:180px; background:#fff; }
.CaseStudyType figure img { width:100%; height:100%; object-fit:cover; }
.CaseStudyType .CaseStudyTypeText { width:100%; padding:24px 0 0; }
.CaseStudyType h3 { margin:0 0 16px; color:#fff; font-size:17px; }
.CaseStudyType p { line-height:1.7; font-size:14px; }

@media screen and (min-width:740px) {
	.CaseStudy { position:relative; z-index:1; padding:60px 0 0; }
	.CaseStudy::before { content:'CaseStudy'; position:absolute; top:-25px; left:calc(50% - 2.35em); color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:180px; font-weight:bold; text-transform:uppercase; }
	.CaseStudy h2 { margin:0 0 48px; color:#2A4EA1; line-height:1.3; font-size:56px; font-weight:bold; text-align:center; }
	.CaseStudy h2 small { display:block; }
	.CaseStudy h2 img { width:auto; height:50px; margin:0; }
	.CaseStudyInner {  }
	.CaseStudyEx { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:100%; max-width:1380px; margin:0 auto 40px; padding:36px; border-radius:10px; box-shadow:inset 4px 4px 12px rgba(0,0,0,0.1); background:#fcfcfc; }
	.CaseStudyExPhoto { width:45%; margin:0; padding:0; }
	.CaseStudyExPhoto img { width:100%; margin:0; padding:0; }
	.CaseStudyExText { width:51.5%; }
	.CaseStudyExText h3 { margin:0 0 15px; color:#2A4EA1; font-size:18px; }
	.CaseStudyExText h3 br { display:inline; }
	.CaseStudyExText p { font-size:; }
	.CaseStudyExMessage { margin:0; padding:16px 24px; border-radius:6px; border:#2A4EA1 1px solid; background:#fff; }
	.CaseStudyExMessage h4 { margin:0 0 10px; padding:0; }
	.CaseStudyExMessage ul { margin:0; padding:0; list-style:none; }
	.CaseStudyExMessage ul li { position:relative; margin:0 0 4px; padding:0 0 0 18px; }
	.CaseStudyExMessage ul li:last-child { margin-bottom:0; }
	.CaseStudyExMessage ul li::before { content:''; display:block; position:absolute; top:0.35em; left:0; width:10px; height:5px; border-left:#2A4EA1 2px solid; border-bottom:#2A4EA1 2px solid; transform:rotate(-45deg); }
	.CaseStudyVoiceWrap {}
	.CaseStudyVoiceWrap > h3 { margin:0 0 10px; color:#2A4EA1; font-size:24px; text-align:center; }
	.CaseStudyVoiceArea { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; position:relative; width:100%; margin:0 auto; padding:0; list-style:none; }
	.CaseStudyVoiceArea .slick-track { display:flex; }
	.CaseStudyVoiceArea .slick-list { padding:15px !important; }
	.CaseStudyVoiceArea li { display:flex !important; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; height:auto !important; margin:0 12px; padding:24px; border-radius:6px; background:#fff; box-shadow:0 2px 12px 0 rgba(0,0,0,0.1); }
	.CaseStudyVoice { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:100%; margin:0 0 15px; }
		.CaseStudyVoice.logo-it { background:url('../images/logo-it.png') no-repeat right top; background-size:auto 24px; }
		.CaseStudyVoice.logo-hotel { background:url('../images/logo-hotel.png') no-repeat right top; background-size:auto 20px; }
		.CaseStudyVoice.logo-food { background:url('../images/logo-food.png') no-repeat right top; background-size:auto 32px; }
	.CaseStudyVoicePhoto { width:120px; height:120px; margin:0 10px 0 0; }
	.CaseStudyVoicePhoto img { width:100%; height:100%; object-fit:cover; }
	.CaseStudyVoiceText { width:calc(100% - 140px); }
	.CaseStudyVoiceText h3 { font-size:18px; }
	.CaseStudyVoiceText h3 small { padding:0; font-size:11px; font-weight:normal; }
	.CaseStudyVoiceText p { padding:10px 0 0; font-size:13px; }
	.CaseStudyVoiceArea p.comment { font-size:12px; }
	.CaseStudyVoiceArea .slick-dots { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; bottom:-10px; }
	.CaseStudyVoiceArea .slick-dots li { display:inline-block; width:6px; height:6px; margin:0 8px; padding:0; border-radius:6px; background:#ddd; box-shadow:0 0 0 0 rgba(0,0,0,0.0); }
	.CaseStudyVoiceArea .slick-dots li.slick-active { background:#2A4EA1; }
	.CaseStudyVoiceArea .slick-dots li button { display:inline-block; width:6px; height:6px; margin:0; padding:0; border-radius:6px; background:transparent; }
	.CaseStudyVoiceArea .slick-arrow { position:absolute; top:calc(50% - 0px); width:50px; height:50px; background:rgba(42,78,161,0.85); transition:0.25s; }
	.CaseStudyVoiceArea .slick-arrow:hover { background:rgba(42,78,161,1.0); transition:0.25s; }
	.slick-prev { z-index:2; left:0px; }
	.slick-prev::before { content:''; position:absolute; top:calc(50% - 6px); left:calc(50% - 6px); width:12px; height:12px; border-top:#fff 2px solid; border-left:#fff 2px solid; transform:rotate(-45deg); }
	.slick-next { z-index:2; right:0px; }
	.slick-next::before { content:''; position:absolute; top:calc(50% - 6px); left:calc(50% - 6px); width:12px; height:12px; border-top:#fff 2px solid; border-right:#fff 2px solid; transform:rotate(45deg); }
/*
	.CaseStudyText { width:calc(100% - 110px); }
	.CaseStudyText h3 { margin:0 0 15px; padding:0 0 0 14px; line-height:1; font-size:18px; font-weight:bold; }
	.CaseStudyText p { display:block; padding:0 0 0 2.0em; list-style:disc; }
	.CaseStudyText p.catch { line-height:1.8; }
*/
	.CaseStudyTips { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:96%; max-width:1200px; margin:55px auto 80px; padding:30px; border:#2A4EA1 1px solid; border-radius:6px; background:#fff; }
	.CaseStudyTipsPhoto { align-self:stretch; width:36.5%; margin:0; }
	.CaseStudyTipsPhoto img { width:100%; height:100%; object-fit:cover; }
	.CaseStudyTipsText { width:61.0%; }
	.CaseStudyTipsText h4 { margin:0 0 5px; color:#2A4EA1; font-size:20px; }
	.CaseStudyTipsText p.catch { margin:0 0 20px; font-size:15px; }
	.CaseStudyTipsText p { font-size:12px; }
	.CaseStudyTipsText p span { font-weight:bold; }

	.CaseStudyType { margin:80px 0; color:#fff; background:#2A4EA1; }
	.CaseStudyTypeInner { width:90%; max-width:1380px; margin:0 auto; padding:80px 0; }
	.CaseStudyType h2 { color:#fff; font-size:32px; }
	.CaseStudyType ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; padding:0; list-style:none; }
	.CaseStudyType li { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; align-self:stretch; width:32%; margin:0 0 32px; padding:0 32px 32px 0; border-bottom:#fff 1px solid; border-right:#fff 1px solid; }
	.CaseStudyType figure { width:90px; height:90px; margin:0; padding:16px; border-radius:90px; background:#fff; }
	.CaseStudyType figure img { width:100%; height:100%; object-fit:cover; }
	.CaseStudyType .CaseStudyTypeText { width:calc(100% - 114px); padding:0; }
	.CaseStudyType h3 { margin:0 0 16px; color:#fff; font-size:17px; }
	.CaseStudyType p { line-height:1.7; font-size:15px; }
}

/* .Data */
.Data { position:relative; z-index:2; padding:30px 5%; background:#FDFDFD; }
.Data::before { content:'Data'; position:absolute; top:calc(50% - 0.5em); right:-10px; color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:100px; font-weight:bold; text-transform:uppercase; }
.DataInner {  }
.DataInner h2 { margin:0 0 8px; color:#2A4EA1; line-height:1.3; font-size:20px; font-weight:bold; text-align:center; }
.DataInner h2 small { display:block; margin:0 0 10px; }
.DataInner h2 small img { width:auto; height:50px; }
.DataInner p { margin:0 0 24px; line-height:1.3; font-size:14px; font-weight:bold; text-align:center; }
.DataInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; position:relative; width:100%; max-width:1380px; margin:0 auto; padding:40px 0 0; list-style:none; }
.DataInner > ul li { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; padding:0 0 20px 0; border-right:0; border-bottom:#2A4EA1 1px solid; }
.DataInner > ul li:nth-child(1) { width:100%; margin:0 0 20px; }
.DataInner > ul li:nth-child(2),
.DataInner > ul li:nth-child(3),
.DataInner > ul li:nth-child(4) { width:31%; }
.DataInner > ul li:nth-child(5),
.DataInner > ul li:nth-child(6) { width:100%; margin-top:24px; }
.DataInner > ul li:nth-child(1) .DataPhoto { width:100%; height:auto; object-fit:cover; }
.DataInner > ul li:nth-child(1) .DataPhoto img { width:100%; height:auto; object-fit:cover; }
.DataInner > ul li:nth-child(2) .DataPhoto,
.DataInner > ul li:nth-child(3) .DataPhoto,
.DataInner > ul li:nth-child(4) .DataPhoto { width:70%; height:auto; margin:0 auto; object-fit:cover; }
.DataInner > ul li:nth-child(5) .DataPhoto,
.DataInner > ul li:nth-child(6) .DataPhoto { width:auto; height:200px; margin:0 auto; object-fit:cover; }
.DataInner > ul li:nth-child(2) .DataPhoto img,
.DataInner > ul li:nth-child(3) .DataPhoto img,
.DataInner > ul li:nth-child(4) .DataPhoto img { width:100%; height:auto; object-fit:cover; }
.DataInner .DataPhoto.dummy { filter:grayscale(100%); opacity:0.65; }
.DataText { width:100%; padding:15px 0 0; }
.DataInner > ul li:nth-child(2) .DataText,
.DataInner > ul li:nth-child(3) .DataText,
.DataInner > ul li:nth-child(4) .DataText { width:calc(100% - 0px); }
.DataText dl { display:flex; flex-flow:row wrap; justify-content:center; align-items:flex-end; }
.DataText dt { display:inline-block; margin:0; padding:0; line-height:1; font-size:14px; font-weight:normal; }
.DataText dd { display:inline-block; position:relative; top:0.3em; padding:0 0 0 0.5em; line-height:1.0; font-size:16px; }
.DataText dd b { position:relative; top:0.05em; font-size:1.8em; }
.DataInner > ul li:nth-child(2),
.DataInner > ul li:nth-child(3),
.DataInner > ul li:nth-child(4) { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; align-self:stretch; padding:0 20px 10px 0; border-right:#2A4EA1 1px solid; border-bottom:#2A4EA1 1px solid; }
.DataInner > ul li:nth-child(2) .DataText dl,
.DataInner > ul li:nth-child(3) .DataText dl,
.DataInner > ul li:nth-child(4) .DataText dl { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:center; }
.DataInner > ul li:nth-child(2) .DataText dt,
.DataInner > ul li:nth-child(3) .DataText dt,
.DataInner > ul li:nth-child(4) .DataText dt { order:2; width:100%; padding:12px 0 0; line-height:1.4; font-size:12px; }
.DataInner > ul li:nth-child(2) .DataText dd,
.DataInner > ul li:nth-child(3) .DataText dd,
.DataInner > ul li:nth-child(4) .DataText dd { order:1; width:100%; padding:0; }
.DataInner > ul li:nth-child(5) .DataText dt,
.DataInner > ul li:nth-child(6) .DataText dt { order:1; width:100%; padding:0 0 8px; color:#2A4EA1; line-height:1.4; font-size:18px; font-weight:bold; }
.DataInner > ul li:nth-child(5) .DataText dd,
.DataInner > ul li:nth-child(6) .DataText dd { order:2; width:100%; padding:0; font-size:15px; }
.DataInner p.notice { width:100%; max-width:1380px; margin:0 auto; padding:10px 0 0; color:#999; font-size:0.8em; text-align:right; }
.DataTips { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:center; width:100%; max-width:1200px; margin:30px auto 0; padding:24px; border:#2A4EA1 1px solid; border-radius:6px; background:#fff; }
.DataTipsPhoto { order:1; align-self:stretch; width:100.0%; margin:0 0 20px; }
.DataTipsPhoto img { width:49%; height:auto; object-fit:cover; }
.DataTipsText { order:2; width:100.0%; }
.DataTipsText h4 { margin:0 0 10px; color:#2A4EA1; font-size:18px; }
.DataTipsText h4 br { display:none; }
.DataTipsText p.catch { margin:0 0 20px; font-size:15px; }
.DataTipsText p { font-size:14px; }
.DataTipsText p span { font-weight:bold; }

@media screen and (min-width:740px) {
	.Data { position:relative; z-index:2; padding:80px 0; background:#FDFDFD; }
	.Data::before { content:'Data'; position:absolute; top:calc(50% - 0.5em); right:-10px; color:#F0F0F0; line-height:1; font-family:'Oswald'; font-size:180px; font-weight:bold; text-transform:uppercase; }
	.DataInner { width:90%; max-width:1200px; margin:0 auto; }
	.DataInner h2 { margin:0 0 16px; color:#2A4EA1; line-height:1.3; font-size:56px; font-weight:bold; text-align:center; }
	.DataInner h2 small { display:block; margin:0 0 10px; }
	.DataInner h2 small img { width:auto; height:69px; }
	.DataInner p { margin:0 0 40px; line-height:1.3; font-size:27px; font-weight:bold; text-align:center; }
	.DataInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; position:relative; width:100%; max-width:1380px; margin:0 auto; padding:40px 0 0; list-style:none; }
	.DataInner > ul li { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-start; align-self:stretch; padding:0 25px 25px 0; border-right:#2A4EA1 1px solid; border-bottom:#2A4EA1 1px solid; }
	.DataInner > ul li:nth-child(1) { width:100.0%; margin:0 0 40px; padding-right:0; border-right:0; }
	.DataInner > ul li:nth-child(2),
	.DataInner > ul li:nth-child(3),
	.DataInner > ul li:nth-child(4) { width:32%; margin:0 0 40px; border-bottom:0; }
	.DataInner > ul li:nth-child(5),
	.DataInner > ul li:nth-child(6) { width:48%; margin:0 0 16px; border-bottom:0; }
	.DataInner > ul li:nth-child(6) { border-right:0; }
	.DataInner > ul li:nth-child(1) .DataPhoto { width:100%; height:auto; object-fit:cover; }
	.DataInner > ul li:nth-child(1) .DataPhoto img { width:100%; height:auto; margin:auto; object-fit:cover; }
	.DataInner > ul li:nth-child(2) .DataPhoto,
	.DataInner > ul li:nth-child(3) .DataPhoto,
	.DataInner > ul li:nth-child(4) .DataPhoto { width:90px; height:auto; margin:0; object-fit:cover; }
	.DataInner > ul li:nth-child(2) .DataPhoto img,
	.DataInner > ul li:nth-child(3) .DataPhoto img,
	.DataInner > ul li:nth-child(4) .DataPhoto img { width:100%; height:auto; object-fit:cover; }
	.DataInner > ul li:nth-child(5) .DataPhoto,
	.DataInner > ul li:nth-child(6) .DataPhoto { width:100%; height:auto; margin:0 0 8px; }
	.DataInner > ul li:nth-child(5) .DataPhoto img,
	.DataInner > ul li:nth-child(6) .DataPhoto img { width:100%; height:100%; margin:auto; object-fit:cover; }
	.DataInner .DataPhoto.dummy { filter:grayscale(100%); opacity:0.65; }
	.DataText { width:100%; padding:15px 0 0; }
	.DataInner > ul li:nth-child(2) .DataText,
	.DataInner > ul li:nth-child(3) .DataText,
	.DataInner > ul li:nth-child(4) .DataText { width:calc(100% - 110px); }
	.DataText dl { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:flex-end; }
	.DataText dt { display:block; margin:0; padding:0; line-height:1; font-size:16px; font-weight:normal; }
	.DataText dd { display:block; position:relative; top:inherit; padding:0 0 0 1.0em; line-height:1.0; font-size:16px; }
	.DataText dd b { position:relative; top:0.05em; color:#2A4EA1; font-size:3.6em; }
	.DataInner > ul li:nth-child(2),
	.DataInner > ul li:nth-child(3),
	.DataInner > ul li:nth-child(4) { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; align-self:stretch; padding:0 25px 25px 0; border-right:#2A4EA1 1px solid; border-bottom:#2A4EA1 1px solid; }
	.DataInner > ul li:nth-child(2) .DataText dl,
	.DataInner > ul li:nth-child(3) .DataText dl,
	.DataInner > ul li:nth-child(4) .DataText dl { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; }
	.DataInner > ul li:nth-child(2) .DataText dt,
	.DataInner > ul li:nth-child(3) .DataText dt,
	.DataInner > ul li:nth-child(4) .DataText dt { order:2; width:100%; padding:8px 0 0; line-height:1.0; font-size:14px; }
	.DataInner > ul li:nth-child(2) .DataText dd,
	.DataInner > ul li:nth-child(3) .DataText dd,
	.DataInner > ul li:nth-child(4) .DataText dd { order:1; width:100%; padding:0; }
	.DataInner > ul li:nth-child(5) .DataText dt,
	.DataInner > ul li:nth-child(6) .DataText dt { order:1; width:100%; padding:0 0 16px 0; color:#2A4EA1; line-height:1.0; font-size:27px; font-weight:bold; }
	.DataInner > ul li:nth-child(5) .DataText dd,
	.DataInner > ul li:nth-child(6) .DataText dd { order:2; width:100%; padding:0; }
	.DataInner p.notice { width:100%; max-width:1380px; margin:0 auto; padding:10px 0 0; color:#999; font-size:0.8em; text-align:right; }
	.DataTips { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:96%; max-width:1200px; margin:55px auto 80px; padding:30px; border:#2A4EA1 1px solid; border-radius:6px; background:#fff; }
	.DataTipsPhoto { order:2; align-self:stretch; width:47.5%; margin:0; }
	.DataTipsPhoto img { width:49%; height:auto; object-fit:cover; }
	.DataTipsText { order:1; width:47.5%; }
	.DataTipsText h4 { margin:0 0 10px; color:#2A4EA1; font-size:21px; }
	.DataTipsText h4 br { display:inline; }
	.DataTipsText p.catch { margin:0 0 20px; font-size:15px; }
	.DataTipsText p { font-size:16px; }
	.DataTipsText p span { font-weight:bold; }
}


/* .FAQ */
.FAQ { padding:30px 0; }
.FAQ h2 { margin:0 0 24px; color:#2A4EA1; line-height:1.3; font-size:20px; font-weight:bold; text-align:center; }
.FAQInner { width:100%; margin:0 auto; }
.FAQ ul { width:100%; margin:0; padding:0; border-bottom:#94A6D0 1px solid; list-style:none; text-align:left; }
.FAQ li { margin:0; }
.FAQ li dl { font-weight:bolder; }
.FAQ li dt { position:relative; padding:20px 80px 20px 5%; border-top:#94A6D0 1px solid; font-size:16px; cursor:pointer; }
.FAQ li dt::before { content:''; position:absolute; top:50%; right:40px; width:16px; height:2px; background:#2A4EA1; }
.FAQ li dt::after { content:''; position:absolute; top:calc(50% - 7px); right:47px; width:2px; height:16px; background:#2A4EA1; }
.FAQ li dt.active::before { content:''; position:absolute; top:50%; right:40px; width:16px; height:2px; background:#2A4EA1; }
.FAQ li dt.active::after { content:''; position:absolute; top:calc(50% - 7px); right:47px; width:2px; height:16px; background:transparent; }
.FAQ li dd { display:block; position:relative; overflow:hidden; width:100%; padding:0; height:0; text-align:left; transition:0.2s; }
.FAQ li dd.active { width:100%; max-width:960px; height:auto; margin:-10px auto 0; padding:0 5% 20px 5%; font-size:14px; font-weight:normal; transition:0.4s; }

.FAQcatch { padding:32px 0 0; }
.FAQcatchInner { width:90%; margin:0 auto; }
.FAQcatch ul { margin:0; padding:0; border:0; list-style:none; }
.FAQcatch li { margin:0 0 8px !important; font-size:18px !important; margin:0 4px 0 0; color:#ff2d2d; font-size:1.2em; font-weight:bold; }
.FAQcatch li span { position:relative; top:0.2em; margin:0 4px 0 0; font-size:1.2em; }

@media screen and (min-width:740px) {
	.FAQ { padding:120px 0 0; }
	.FAQ h2 { margin:0 0 48px; color:#2A4EA1; line-height:1.3; font-size:42px; font-weight:bold; text-align:center; }
	.FAQInner { width:100%; margin:0 auto; }
	.FAQ ul { width:100%; margin:0; padding:0; border-bottom:#94A6D0 1px solid; list-style:none; text-align:center; }
	.FAQ li { margin:0; }
	.FAQ li dl { font-weight:bolder; }
	.FAQ li dt { position:relative; padding:20px 40px 20px calc(1.75em + 30px); border-top:#94A6D0 1px solid; font-size:18px; cursor:pointer; }
	.FAQ li dt::before { content:''; position:absolute; top:50%; right:40px; width:16px; height:2px; background:#2A4EA1; }
	.FAQ li dt::after { content:''; position:absolute; top:calc(50% - 7px); right:47px; width:2px; height:16px; background:#2A4EA1; }
	.FAQ li dd { display:block; position:relative; overflow:hidden; width:100%; padding:0 60px 0 40px; height:0; text-align:left; transition:0.2s; }
	.FAQ li dd.active { width:100%; max-width:960px; height:auto; margin:0 auto; padding:0 40px 40px 40px; font-size:18px; font-weight:normal; transition:0.4s; }

	.FAQcatch { padding:64px 0 0; }
	.FAQcatchInner { width:90%; margin:0 auto; }
	.FAQcatch ul { margin:0; padding:0; border:0; list-style:none; }
	.FAQcatch li { margin:0 0 16px !important; font-size:24px !important; margin:0 4px 0 0; color:#ff2d2d; font-size:1.2em; font-weight:bold; }
	.FAQcatch li span { position:relative; top:0.2em; margin:0 4px 0 0; font-size:1.2em; }
}


/* .Form */
.Form { padding:30px 0 20px; }
.Form h2 { margin:0 0 24px; color:#2A4EA1; line-height:1.3; font-size:20px; font-weight:bold; text-align:center; }
.FormInner { width:90%; max-width:1080px; margin:0 auto; }
.FormInnerTab { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; width:90%; margin:0 auto 20px; padding:0; list-style:none; }
.FormInnerTab li { width:48%; margin:0 1% 0; }
.FormInnerTab a { display:block; padding:0 10px; border-radius:40px; border:#2A4EA1 1px solid; color:#2A4EA1; line-height:40px; font-weight:bold; text-align:center; text-decoration:none; }
.FormInnerTab a.active { border:#2A4EA1 1px solid; color:#fff; background:#2A4EA1; }
.Form dl { display:flex; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; width:100%; }
.Form dt { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; align-self:stretch; width:100%; padding:5px 0 0; font-size:16px; font-weight:bold; }
.Form dt span { display:block; width:1em; margin:0 0 0 20px; color:#FF4848; font-size:12px; }
.Form dd { width:100%; padding:5px 0 15px 0; }
	.Form dd.privacyCheck { width:100%; margin:-10px 0 0; padding:0 0 10px 0; text-align:center; }
	.Form dd.btnWrap { width:100%; margin:0; padding:20px 0 20px 20%; text-align:center; }
.Form dd input { position:relative; top:0.15em; width:100%; margin:0; padding:15px 20px; border:#B9B9B9 1px solid; border-radius:4px; line-height:1; font-size:16px; background:#fff; -webkit-appearance:none; appearance:none; }
.Form dd input[type='checkbox'] { position:relative; top:0.15em; width:1.0em; height:1.0em; margin:0 4px 0 0; padding:0; border:#B9B9B9 1px solid; border-radius:4px; line-height:1; font-size:16px; background:#fff; -webkit-appearance:none; appearance:none; }
.Form dd textarea { position:relative; top:0.15em; width:100%; min-height:180px; margin:0 4px 0 0; padding:20px; border:#B9B9B9 1px solid; border-radius:4px; color:#666; line-height:1.75; font-size:14px; background:#fff; -webkit-appearance:none; appearance:none; }
.Form .BtnWrap { padding:32px 0 0; text-align:center; }
.Form .BtnWrap button { display:inline-block; width:90%; max-width:420px; border:#2A4EA1 1px solid; color:#fff; line-height:60px; font-size:18px; font-weight:bold; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.2); cursor:pointer; transition:0.25s; }
.Form .BtnWrap button:hover { color:#2A4EA1; background:#fff; transition:0.25s; }

.FormPrivacy { width:90%; max-width:700px; margin:0 auto; padding:0; }
.FormPrivacy p { text-align:center; }
.FormPrivacy label {  }
.FormPrivacy label input[type='checkbox'] { position:relative; top:0.1em; width:1.5em; height:1.5em; margin:0 8px 0 0; padding:0; border:#999 1px solid; background:transparent; appearance:none; }
.FormPrivacy label input[type='checkbox']:checked { position:relative; top:0.1em; width:1.5em; height:1.5em; margin:0 8px 0 0; padding:0; border:#2A4EA1 1px solid; background:transparent; appearance:none; }
.FormPrivacy label input[type='checkbox']:checked::before { content:''; position:absolute; top:0; left:0; width:13px; height:4px; margin:0; padding:0; border-top:#2A4EA1 3px solid; border-right:#2A4EA1 3px solid; background:transparent; transform:rotate(135deg); }
.FormPrivacy textarea { width:100%; height:200px; margin:20px 0 0; padding:15px; border:#94A6D0 1px solid; line-height:1.8; font-size:13px; background:#fafafa; }

@media screen and (min-width:740px) {
	.Form { padding:120px 0; }
	.Form h2 { margin:0 0 48px; color:#2A4EA1; line-height:1.3; font-size:42px; font-weight:bold; text-align:center; }
	.FormInner { width:100%; max-width:1080px; margin:0 auto; }
	.FormInnerTab { display:flex; flex-flow:row wrap; justify-content:center; align-items:center; width:800px; margin:0 auto 40px; padding:0; list-style:none; }
	.FormInnerTab li { width:36%; margin:0 2% 0; }
	.FormInnerTab a { display:block; padding:0 20px; border-radius:40px; border:#2A4EA1 1px solid; color:#2A4EA1; line-height:50px; font-weight:bold; text-align:center; text-decoration:none; }
	.FormInnerTab a.active { border:#2A4EA1 1px solid; color:#fff; background:#2A4EA1; }
	.Form dl { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; width:100%; }
	.Form dt { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; align-self:stretch; width:20%; padding:20px 0; font-size:18px; font-weight:bold; }
	.Form dt span { display:block; width:1em; margin:0 0 0 20px; color:#FF4848; font-size:13px; }
	.Form dd { width:80%; padding:20px 0 20px 20px; }
		.Form dd.privacyCheck { width:100%; margin:-10px 0 0; padding:0 0 20px 20%; text-align:center; }
		.Form dd.btnWrap { width:100%; margin:0; padding:20px 0 20px 20%; text-align:center; }
	.Form dd input { position:relative; top:0.15em; width:100%; margin:0; padding:15px 20px; border:#B9B9B9 1px solid; border-radius:4px; line-height:1; font-size:16px; background:#fff; -webkit-appearance:none; appearance:none; }
	.Form dd input[type='checkbox'] { position:relative; top:0.15em; width:1.0em; height:1.0em; margin:0 4px 0 0; padding:0; border:#B9B9B9 1px solid; border-radius:4px; line-height:1; font-size:16px; background:#fff; -webkit-appearance:none; appearance:none; }
	.Form dd textarea { position:relative; top:0.15em; width:100%; min-height:240px; margin:0 4px 0 0; padding:20px; border:#B9B9B9 1px solid; border-radius:4px; color:#666; line-height:1.75; font-size:14px; background:#fff; -webkit-appearance:none; appearance:none; }
	.Form .BtnWrap { padding:32px 0 0; text-align:center; }
	.Form .BtnWrap button { display:inline-block; width:100%; max-width:420px; border:#2A4EA1 1px solid; color:#fff; line-height:68px; font-size:21px; font-weight:bold; background:#2A4EA1; box-shadow:0 5px 0 0 rgba(0,0,0,0.2); cursor:pointer; transition:0.25s; }
	.Form .BtnWrap button:hover { color:#2A4EA1; background:#fff; transition:0.25s; }

	.FormPrivacy { width:100%; max-width:700px; margin:0 auto; padding:0; }
	.FormPrivacy p { text-align:center; }
	.FormPrivacy label {  }
	.FormPrivacy label input[type='checkbox'] { position:relative; top:0.1em; width:1.5em; height:1.5em; margin:0 8px 0 0; padding:0; border:#999 1px solid; background:transparent; appearance:none; }
	.FormPrivacy label input[type='checkbox']:checked { position:relative; top:0.1em; width:1.5em; height:1.5em; margin:0 8px 0 0; padding:0; border:#2A4EA1 1px solid; background:transparent; appearance:none; }
	.FormPrivacy label input[type='checkbox']:checked::before { content:''; position:absolute; top:0; left:0; width:13px; height:4px; margin:0; padding:0; border-top:#2A4EA1 3px solid; border-right:#2A4EA1 3px solid; background:transparent; transform:rotate(135deg); }
	.FormPrivacy textarea { width:100%; height:200px; margin:20px 0 0; padding:15px; border:#94A6D0 1px solid; line-height:1.8; font-size:13px; background:#fafafa; }
}




/* .Foot */
.Foot { margin:0; padding:30px 0 70px; }
.Foot .pageTop { display:flex; justify-content:center; align-items:center; position:fixed; right:0; bottom:0; z-index:199; width:50px; height:50px; padding:0 0.75rem; color:rgba(255,255,255,1); line-height:30px; font-size:0.75rem; font-weight:bolder; text-align:center; text-decoration:none; background:rgba(42,78,161,0.9); cursor:pointer; }
.Foot .pageTop .material-icons { position:relative; top:0.02em; left:0.1em; font-size:1.75rem; transform:rotate(90deg); } 
.Foot .Copyright { width:100%; padding:0; font-size:11px; text-align:center; }

@media screen and (min-width:740px) {
	.Foot { margin:0; padding:40px 0; }
	.Foot .pageTop { display:flex; justify-content:center; align-items:center; position:fixed; right:0; bottom:0; z-index:199; width:50px; height:50px; padding:0 0.75rem; color:rgba(255,255,255,1); line-height:30px; font-size:0.75rem; font-weight:bolder; text-align:center; text-decoration:none; background:rgba(42,78,161,0.9); cursor:pointer; }
	.Foot .pageTop .material-icons { position:relative; top:0.02em; left:0.1em; font-size:1.75rem; transform:rotate(90deg); } 
	.Foot .Copyright { width:100%; padding:0; font-size:11px; text-align:center; }
}




/* KVAfter */
.KVAfter { margin:20px 0; padding:80px 0 40px; background:#FDFDFD; }
.KVAfterInner { width:90%; max-width:1080px; margin:0 auto; }
.KVAfterInner h2 { margin:0 0 24px; color:#2A4EA1; line-height:1.3; font-size:24px; font-weight:bold; text-align:center; }
.KVAfterInner ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-item:flex-start; margin:0; padding:0; list-style:none; }
.KVAfterInner li { width:100%; margin:0 0 16px; padding:24px; border-radius:4px; background:#fff; box-shadow:0 4px 12px 0 rgba(0,0,0,0.1); }
.KVAfterInner h3 { margin:0 0 8px; color:#2A4EA1; font-size:18px; text-align:center; }
.KVAfterInnerText { display:flex; flex-flow:row wrap; justify-content:space-between; align-item:center; width:100%; }
.KVAfterInner p { align-self:center; width:calc(100% - 114px); margin:0; }
.KVAfterInner figure { width:90px; }
.KVAfterInner figure img { width:100%; height:100%; object-fit:cover; }

@media screen and (min-width:740px) {
	.KVAfter { margin:40px 0; padding:80px 0; background:#FDFDFD; }
	.KVAfterInner { width:90%; max-width:1080px; margin:0 auto; }
	.KVAfterInner h2 { margin:0 0 24px; color:#2A4EA1; line-height:1.3; font-size:40px; font-weight:bold; text-align:center; }
	.KVAfterInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-item:flex-start; margin:0; padding:0; list-style:none; }
	.KVAfterInner li { width:32%; margin:0; padding:32px; border-radius:4px; background:#fff; box-shadow:0 4px 12px 0 rgba(0,0,0,0.1); }
	.KVAfterInner h3 { margin:0 0 16px; color:#2A4EA1; font-size:21px; text-align:center; }
	.KVAfterInnerText { display:flex; flex-flow:row wrap; justify-content:space-between; align-item:center; width:100%; }
	.KVAfterInner p { align-self:center; width:calc(100% - 114px); margin:0; }
	.KVAfterInner figure { width:90px; }
	.KVAfterInner figure img { width:100%; height:100%; object-fit:cover; }
}
