@charset "UTF-8";

html,body{height:100%;}

body{
	-webkit-text-size-adjust: 100%;
	padding:0;
	margin: 0;
	font-family: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
	font-feature-settings: "palt" 1;
	-webkit-font-feature-settings: "palt" 1;
}

/* default */

div,dl,dt,dd,ul,ol,
li,h1,h2,h3,h4,h5,
h6,pre,code,form,fieldset,legend,
input,textarea,p,blockquote,
th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;word-break: break-all;font-size:inherit;width:100%;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q::before,q::after{content:'';}
abbr{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif;}
pre,code,kbd,samp{font-family:monospace;*font-size:108%;line-height:100%;}
.aligncenter{text-align:center;}
figure{padding:0;margin:0;}
img{
	vertical-align: bottom;
	line-height: 1;
	max-width:100%;
	height:auto;
}

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

a{text-decoration: none;color:#000;transition: all .25s ease;}
a:hover{}

*{box-sizing:border-box;}


/* common item ---------------------------------------*/

/* .clearfix::after,
.inner::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
} */

.sp{display: none;}
.spbr{display: none;}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .foo { color: red } /* IE11 */
}

@media all and (-ms-high-contrast:none){
  .foo { color: green } /* IE10〜Edge */
}


/* layout ---------------------------------------*/

.inner{
	max-width:1100px;
	margin:0 auto;
}

.section{text-align: center;}


/* header ---------------------------------------*/

header{
	position:relative;
	height: 90px;
}

.header-inner{
	max-width:1360px;
	width: 97%;
	height:90px;
	margin:0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.header-logo{
	display: block;
	width: 235px;
	margin-left: 35px;
	transition: 0.3s;
}

.header-logo:hover{opacity: 0.7;}

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

.header-btn-wrapper{
	display: flex;
	margin-right: 25px;
}

.btn-header{
	display: block;
	border-radius: 5px;
	text-align: center;
}

.btn-header a{
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	transition: 0.3s;
}

.btn-header a:hover{opacity: 0.7;}

.btn-header-subscription{
	background: #D7000E;
	margin-right: 10px;
}

.btn-header-subscription a{
	color:#fff;
	padding:13px 15px;
}

.btn-header-white{
	margin-right: 10px;
	border: 1px solid #000;
}

.btn-header-white:last-of-type{margin-right: 0;}

.btn-header-white a{
	padding: 13px 0;
	width: 140px;
}


/* menu ---------------------------------------*/

.openmenu {
	position: relative;
	cursor: pointer;
	width: 50px;
	height:50px;
	border-radius: 5px;
}

.openmenu span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 50%;
	height: 2px;
	border-radius: 2px;
	background: #000;
	width: 60%;
	transform: translate(-50%,0);
}

.openmenu span:nth-of-type(1) {top:14px;}
.openmenu span:nth-of-type(2) {top:24px;}
.openmenu span:nth-of-type(3) {top:34px;}

.openmenu.open span{background: #fff;}

.openmenu.open span:nth-of-type(1) {
	transform: rotate(45deg) translate(-50%,0); 
	top: 35px;
}
.openmenu.open span:nth-of-type(2) {opacity: 0;}
.openmenu.open span:nth-of-type(3) {
	transform: rotate(-45deg) translate(-50%,0); 
	top:14px;
}

.nav{
	position: fixed;
	top: 0;
	right: -50%;
	z-index: 10000;
	width: 50%;
	height: 100vh;
	background-color: rgba(9,31,92,0.95);
	transition: 0.3s;
}

.nav.open{right: 0;}

.nav-inner{
	position: relative;
	padding: 220px 100px 0;
}

.nav-inner .openmenu{
	position: absolute;
	top: 19px;
	right: 24px;
}

.overlay {
	cursor: pointer;
	height: 100vh;
	left: 0;
	opacity: 0;
	position: fixed;
	top: 0;
	transition: all 0.6s;
	visibility: hidden;
	width: 100vw;
	z-index: 100;
}

.open.overlay {visibility: visible;}

.menu-list-wrapper {
	margin-left: auto;
	display: flex;
	color: #fff;
	transition: .3s;
	padding-bottom: 30px;
	border-bottom: 1px solid #fff;
	margin-bottom: 40px;
	z-index: 200;
}

.menu-list{width: 50%;}

.menu-list-item{margin-bottom: 22px;}

.menu-list-item a{
	font-size: 17px;
	color: #fff;
	transition: 0.3s;
}

.menu-list-item a:hover{opacity: 0.7;}

.menu-sub-list{display: flex;}

.menu-sub-list-item{margin-right: 30px;}

.menu-sub-list-item::before {
	display: inline-block;
	content: '';
	vertical-align: middle;
	margin-right: 6px;
	background: url('../img/icon_arrow_right.png') no-repeat center center; 
	background-size: 100%;
	width: 6px;
	height: 11px;
}

.menu-sub-list-item a{
	font-size: 14px;
	color: #fff;
	transition: 0.3s;
}

.menu-sub-list-item a:hover{opacity: 0.7;}


/* kv ---------------------------------------*/

.kv{
	text-align: center;
	background: url('../img/kv_bg.jpg') no-repeat center top;
	background-size: 100%;
}

.kv-inner{position: relative;}

.kv-text{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	width: 100%;
}

.kv-top{padding-top: 25px;}

.kv-movie{
	position: absolute;
	bottom: 85px;
	left: calc(50% - 500px);
	width: 420px;
}

.btn-kv-wrapper{
	display: flex;
	position: absolute;
	left: 50%;
	bottom: -35px;
	transform: translate(-50%,0);
}

.btn-kv{
	display: block;
	border-radius: 5px;
	text-align: center;
	padding:20px 0;
	width: 280px;
}

.btn-kv a{
	font-size: 18px;
	font-weight: bold;
}

.btn-kv-red{
	background: #D7000E;
	margin-right: 20px;
}

.btn-kv-red a{color:#fff;}

.btn-kv-white{
	border: 1px solid #091F5C;
	background: #fff;
}

.btn-kv-white a{color: #091F5C;}


/* top ---------------------------------------*/

.sectiontop{
	background: #E2F2FE;
	padding: 80px 0 40px;
}

.sectiontop-inner{
	display: flex;
	justify-content: space-between;
	width: 66%;
	margin: 0 auto;
}

.sectiontop-image{
	width: 32%;
	margin-left: 20px;
}

.sectiontop-content{
	width: 64%;
	margin-top: 26px;
	text-align: left;
}

.sectiontop-title{
	font-size: 30px;
	letter-spacing: -5px;
	font-weight: bold;
	margin-bottom: 20px;
	margin-bottom: 5px;
	color: #091F5C;
	font-family: 'Noto Serif JP', serif;
}

.sectiontop-text{
	padding-left: 10px;
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.5px;
}


/* solution ---------------------------------------*/

.sectionsolution{
	padding-top:65px;
	text-align: center;
}

.sectionsolution-title-wrapper{margin-bottom: 70px;}

.sectionsolution-task-wrapper{
	background: linear-gradient(to bottom, #fff 10%, #F2F2F2 10% 100%);
	padding-bottom: 55px;
	position: relative;
}

.sectionsolution-task-wrapper::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -45px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #F2F2F2 transparent transparent transparent;
	border-width: 45px 130px 0 130px;
}

.sectionsolution-title{
	color: #091F5C;
	font-weight: bold;
	font-size: 38px;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -1px;
	margin-bottom: 5px;
}

.sectionsolution-sub-title{
	font-size: 22px;
	color: #091F5C;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -1px;
}

.sectionsolution-task-inner{
	display: flex;
	max-width: 1100px;
	justify-content: space-between;
	margin-bottom: 45px;
}

.sectionsolution-task{
	width: 49%;
	background: #fff;
	padding: 30px;
	box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.6);
}

.sectionsolution-task-title{
	background: #091F5C;
	font-family: 'Noto Serif JP', serif;
	text-align: left;
	color: #fff;
	font-weight: bold;
	font-size: 22px;
	padding: 25px 30px;
	margin-bottom: 5px;
	position: relative;
}

.sectionsolution-task-title::after{
	display: block;
	content: '';
	position: absolute;
}

.sectionsolution-task-learning .sectionsolution-task-title::after {
	background: url('../img/icon_woman.png') no-repeat center center; 
	background-size: 100%;
	width: 90px;
	height: 140px;
	right: 16px;
	bottom: 0;
}

.sectionsolution-task-leader .sectionsolution-task-title::after {
	background: url('../img/icon_man.png') no-repeat center center; 
	background-size: 100%;
	width: 90px;
	height: 140px;
	right: 16px;
	bottom: 0;
}

.sectionsolution-task-list{}

.sectionsolution-task-list-item{
	padding: 15px 0 19px 30px;
	border-bottom: 1px dashed #999999;
	letter-spacing: -0.5px;
	position: relative;
	text-align: left;
}

.sectionsolution-task-leader .sectionsolution-task-list-item{
	padding: 10px 0 18px 30px;
	line-height: 1.6;
}

.sectionsolution-task-list-item::before {
	display: block;
	position: absolute;
	content: '';
	margin-right: 10px;
	background: url('../img/icon_check.png') no-repeat center center; 
	background-size: 100%;
	width: 20px;
	height: 20px;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	font-weight: 700;
}

.sectionsolution-task-list-item span{
	color: #d7000d;
	font-weight: 900;
}

.sectionsolution-task-text{
	font-size: 30px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	display: inline-block;
	border-bottom: 3px solid #D7000E;
	color: #091F5C;
	letter-spacing: -2px;
	padding-bottom: 5px;
}


/* feature ---------------------------------------*/

.sectionfeature{
	padding: 80px 0 60px;
	text-align: center;
}

.sectionfeature-title{
	font-size: 45px;
	margin-bottom: 55px;
	font-family: 'Noto Serif JP', serif;
	color: #091f5c;
	font-weight: bold;
	letter-spacing: -2px;
}

.sectionfeature-links-wrapper{
	display: flex;
	justify-content: space-between;
}

.sectionfeature-links{width: 49%;}


/* feature detail ---------------------------------------*/

.sectionfeaturedetail-title-wrapper{
	color: #fff;
	margin-bottom: 53px;
}

.sectionfeaturedetail-number{
	width: 90px;
	text-align: center;
	margin: 0 auto 20px;
}

.sectionfeaturedetail-title{
	font-size: 44px;
	margin-bottom: 20px;
	font-family: 'Noto Serif JP', serif;
}

.sectionfeaturedetail-title-lead{
	font-size: 19px;
	font-family: 'Noto Serif JP', serif;
}

.sectionfeaturedetail-content{
	background: #fff;
	border-radius: 5px;
	padding: 55px 0 70px;
	margin-bottom: 60px;
	box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.6);
}

.sectionfeaturedetail-content.sectionfeaturedetail-content-2{padding: 60px 0 60px;}

.sectionfeaturedetail-content-inner{
	width: 75%;
	margin: 0 auto;
}

.sectionfeaturedetail-content-title{
	font-size: 38px;
	margin-bottom: 60px;
	color: #091F5C;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	letter-spacing: -2px;
}

.sectionfeaturedetail-content-2 .sectionfeaturedetail-content-title{margin-bottom: 40px;}


/* design ---------------------------------------*/

.sectiondesign{
	padding: 45px 0 50px;
	background: linear-gradient(to bottom, #091F5C 15.5%, #F8F8F8 15.5% 100%);
}

.sectiondesign-1-image{
	width: 97%;
	margin: 0 auto 60px;
}

.sectiondesign-list{}

.sectiondesign-list-item{margin-bottom: 10px;}

.sectiondesign-list-item-inner{
	display: flex;
	justify-content: space-between;
}

.sectiondesign-list-item-step{
	width: 15%;
	text-align: center;
}

.sectiondesign-list-item-step-image{width: 80%;}

.sectiondesign-list-item-content-wrapper{
	width: 84%;
	display: flex;
	justify-content: space-between;
}

.sectiondesign-list-item-content{
	width: 75%;
	text-align: left;
	padding-top: 10px;
}

.sectiondesign-list-item-content-title{
	font-size: 24px;
	font-weight: bold;
	color: #091F5C;
	margin-bottom: 10px;
}

.sectiondesign-list-item-content-text{
	font-size: 14px;
	line-height: 1.7;
}

.sectiondesign-list-item-image{
	width: 25%;
	margin-right: 10px;
}

.sectiondesign-2-text{
	font-size: 18px;
	margin-bottom: 50px;
	color: #091F5C;
	line-height: 1.7;
}

.sectiondesign-2-image{
	width: 97%;
	margin: 0 auto;
}


/* plan ---------------------------------------*/

.sectionplan{padding: 60px 0 105px;}

.sectionplan-text{
	font-size: 25px;
	margin-bottom: 55px;
	font-weight: bold;
	color: #091F5C;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -2px;
	line-height: 1.6;
}

.sectionplan-image{
	width: 78%;
	margin: 0 auto;
}


/* approach ---------------------------------------*/

.sectionapproach{
	padding: 50px 0 60px;
	background: linear-gradient(to bottom, #091F5C 25%, #F2F2F2 25% 100%);
}

.sectionapproach .sectionfeaturedetail-title{
	font-size: 45px;
	letter-spacing: -3px;
	margin-bottom: 15px;
}

.sectionapproach .sectionfeaturedetail-title-lead{
	font-size: 20px;
	letter-spacing: -2px;
}

.sectionapproach .sectionfeaturedetail-content{padding: 10px;}

.sectionapproach-content-wrapper{display: flex;}

.sectionapproach-content{
	padding: 40px 0 30px;
	width: 50%;
}

.sectionapproach-content-inner{
	width: 91%;
	text-align: left;
}

.sectionapproach-content-management{padding-left: 9%;}

.sectionapproach-content-general{
	background: #F1F9FE;
	padding-right: 5%;
	padding-left: 4%;
}

.sectionapproach-content-image{margin-bottom: 35px;}

.sectionapproach-content-list{padding-left: 20px;}

.sectionapproach-content-list-item{margin-bottom: 23px;}

.sectionapproach-content-list-item-title{
	font-size: 20px;
	color: #091F5C;
	font-weight: bold;
	margin-bottom: 5px;
}

.sectionapproach-content-list-item-text{
	font-size: 13px;
	position: relative;
}

.sectionapproach-content-list-item-text::before {
	display: inline-block;
	content: '';
	vertical-align: middle;
	margin-right: 3px;
	background: #091F5C; 
	background-size: 10px;
	width: 10px;
	height: 10px;
}


/* compare ---------------------------------------*/

.sectioncompare{padding: 70px 0 120px;}

.sectioncompare-title{
	font-size: 35px;
	font-weight: bold;
	margin-bottom: 35px;
	color: #091F5C;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -2px;
}

.sectioncompare-lead{
	font-size: 18px;
	margin-bottom: 50px;
	color: #091F5C;
	font-weight: bold;
	line-height: 1.8;
}

.sectioncompare-image{width: 100%;}


/* case ---------------------------------------*/

.sectioncase{
	background: #E2F2FE;
	padding: 75px 0 120px;
}

.sectioncase-title{
	font-size:34px;
	color: #091F5C;
	font-weight: bold;
	margin-bottom: 45px;
	font-family: 'Noto Serif JP', serif;
}

.sectioncase-accordion{
	box-shadow: 0px 0px 16px -6px rgba(0,0,0,0.6);
	margin-bottom: 40px;
}

.sectioncase-accordion-title-wrapper{
	background-color: #091F5C;
	padding: 25px 20px 25px 40px;
	display: flex;
	position: relative;
	justify-content: space-between;
	cursor: pointer;
}

.sectioncase-accordion-title-wrapper.open::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -24px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #091F5C transparent transparent transparent;
	border-width: 25px 32px 0 32px;
}

.sectioncase-accordion-title{
	color: #fff;
	font-size: 20px;
	text-align: left;
}

.sectioncase-accordion-btn{
	width: 30px;
	height: 30px;
	background: #fff;
	position: relative;
}

.sectioncase-accordion-btn::before{
	display: block;
	content: '';
	background: #091F5C; 
	background-size: 100%;
	width: 1px;
	height: 17px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}

.sectioncase-accordion-title-wrapper.open .sectioncase-accordion-btn::before{display: none;}

.sectioncase-accordion-btn::after {
	display: block;
	content: '';
	background: #091F5C; 
	background-size: 100%;
	width: 17px;
	height: 1px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}

.sectioncase-accordion-content{
	background: #fff;
	padding: 45px 0 60px;
	display: none;
}

.sectioncase-accordion-content-inner{
	width: 73%;
	margin: 0 auto;
}

.sectioncase-accordion-content-title{
	font-size: 30px;
	color: #091F5C;
	margin-bottom: 30px;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -1px;
}

.sectioncase-accordion-content-image{margin-bottom: 55px;}

.sectioncase-accordion-input .sectioncase-accordion-content-image{margin-bottom: 30px;}

.sectioncase-accordion-content-training .sectioncase-accordion-content-image,
.sectioncase-accordion-content-sandwich .sectioncase-accordion-content-image{margin-bottom: 30px;}

.sectioncase-accordion-ojt .sectioncase-accordion-content-image{margin-bottom: 28px;}

.sectioncase-accordion-content-annotation{
	border: 1px solid #D7000E;
	width: 100%;
	margin: 0 auto;
	padding: 20px 0;
	border-radius: 5px;
}

.sectioncase-accordion-content-annotation p{
	color: #D7000E;
	font-size: 20px;
	font-weight: 900;
}

.sectioncase-accordion-content-sandwich .sectioncase-accordion-content-annotation,
.sectioncase-accordion-content-training .sectioncase-accordion-content-annotation{padding: 20px 0;}

.sectioncase-accordion-ojt .sectioncase-accordion-content-annotation{padding: 25px 0;}

.sectioncase-accordion-ojt a{line-height: 1.7;}

.sectioncase-accordion-content-training{
	padding-bottom: 60px;
	border-bottom: 1px dashed #999999;
	margin-bottom: 60px;
}

.sectioncase-merit{margin-top: 55px;}

.sectioncase-merit-image{}


/* flow ---------------------------------------*/

.sectionflow{
	background: #091F5C;
	padding: 75px 0 120px;
}

.sectionflow-title{
	color: #fff;
	font-size: 34px;
	font-weight: bold;
	margin-bottom: 70px;
	font-family: 'Noto Serif JP', serif;
}

.sectionflow-inner{
	background: #fff;
	width: 91%;
	margin: 0 auto;
	border-radius: 5px;
}

.sectionflow-list{padding: 40px 0 0px;}

.sectionflow-list-item{
	padding: 40px 0;
	border-bottom: 3px solid #e6e6e6;
}

.sectionflow-list-item:first-of-type{padding: 0 0 40px 0;}

.sectionflow-list-item:last-of-type{border-bottom: none}

.sectionflow-list-item-inner{
	display: flex;
	margin: 0 auto;
	width: 90%;
	justify-content: space-between;
}

.sectionflow-list-item-step{width: 11%;}

.sectionflow-list-item-content{
	text-align: left;
	width: 86%;
}

.sectionflow-list-item-title{
	color: #091F5C;
	font-size: 25px;
	font-weight: bold;
	padding-top: 10px;
	margin-bottom: 5px;
}

.sectionflow-list-item-text{font-size: 16px;}


/* price ---------------------------------------*/

.sectionprice{
	background: #F2F2F2;
	padding: 75px 0 120px;
}

.sectionprice-inner{
	width: 64.5%;
	margin: 0 auto;
}

.sectionprice-title{
	font-size: 35px;
	color: #091F5C;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin-bottom: 40px;
}

.sectionprice-lead{
	font-size: 18px;
	color: #091F5C;
	line-height: 1.6;
	margin-bottom: 55px;
}

.sectionprice-lead span{color: #d7000e;}

.sectionprice-image{margin-bottom: 8px;}

.sectionprice-attention{
	font-size: 13px;
	text-align: right;
	margin-bottom: 35px;
}

.sectionprice-annotation{
	border: 1px solid #D7000E;
	width: 100%;
	margin: 0 auto;
	padding: 10px 0;
	border-radius: 5px;
}

.sectionprice-annotation p{
	color: #D7000E;
	font-size: 20px;
	font-weight: 900;
}


/* overview ---------------------------------------*/

.sectionoverview{padding: 75px 0 130px;}

.sectionoverview-title{
	font-size: 35px;
	font-weight: bold;
	margin-bottom: 45px;
	color: #091F5C;
	font-family: 'Noto Serif JP', serif;
}

.sectionoverview-logo{
	width: 180px;
	margin: 0 auto 25px;
}

.sectionoverview-lead{
	font-size:18px;
	font-weight: bold;
	margin-bottom: 50px;
	color: #091F5C;
}

.sectionoverview-content{
	display: flex;
	justify-content: space-between;
	width: 73%;
	margin: 0 auto;
	text-align: left;
}

.sectionoverview-table-wrapper{width: 65%;}

.sectionoverview-table{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	border-top: 2px solid #F2F2F2;
}

.sectionoverview-table dt,
.sectionoverview-table dd{
	border-bottom: 2px solid #F2F2F2;
	padding: 25px 0 27px;
	vertical-align: top;
}

.sectionoverview-table dt{
	width: 25%;
	font-weight: bold;
}

.sectionoverview-table dd{width: 75%;}

.sectionoverview-image-wrapper{width: 30%;}

.sectionoverview-image:first-of-type{margin-bottom: 5px;}


/* contact ---------------------------------------*/

.sectioncontact{background: #F2F2F2;}

.sectioncontact-inner{
	display: flex;
	width: 83%;
	max-width: 1200px;
	margin: 0 auto;
	align-items: center;
	justify-content: space-between;
	height: 90px;
}

.sectioncontact-title-wrapper{width: calc(100% - 565px);}

.sectioncontact-title{
	font-size: 24px;
	color: #091F5C;
	font-weight: bold;
	text-align: right;
	font-family: 'Noto Serif JP', serif;
	letter-spacing: -1px;
}

.sectioncontact-btn-wrapper{
	display: flex;
	width: 540px;
	justify-content: space-between;
}

.sectioncontact-btn{
	display: block;
	border-radius: 5px;
	text-align: center;
}

.sectioncontact-btn a{font-size: 14px;}

.sectioncontact-btn-red{
	background: #D7000E;
	margin-right: 10px;
	padding:13px 0px;
	width: 200px;
}

.sectioncontact-btn-red a{color:#fff;}

.sectioncontact-btn-white{
	margin-right: 10px;
	border: 1px solid #091F5C;
	padding:13px 0;
	width: 160px;
	background: #fff;
}

.sectioncontact-btn-white:last-of-type{margin-right: 0;}

.sectioncontact-btn-white a{color: #091F5C;}


/* footer ---------------------------------------*/

footer{background: #091F5C;}

.footer-inner{
	max-width:1320px;
	margin:0 auto;
	position:relative;
	padding: 60px 20px 35px;
}

.footer-logo{
	width: 230px;
	margin-bottom: 30px;
}

.footer-list-wrapper{margin-bottom: 80px;}

.footer-list{
	display: flex;
	flex-wrap: wrap;
}

.footer-list-item{
	margin-right: 20px;
	margin-bottom: 5px;
}

.footer-list-item-home{
	width: 100%;
	margin-right: 0;
}

.footer-list-item a{
	color: #fff;
	font-size: 13px;
}

.footer-list-item a::before {
	display: inline-block;
	content: '';
	background: url('../img/icon_arrow_right.png') no-repeat center center;
	vertical-align: middle;
	margin-right: 5px;
	background-size: 100%;
	width: 5px;
	height: 19px;
}

.copyright{
	display: block;
	font-size: 11px;
	color: #fff;
	letter-spacing: 0.25px;
}


/* go top ---------------------------------------*/

.gotop{
	width:60px;
	position:fixed;
	right:40px;
	bottom:40px;
	z-index:100;
}

.gotop a img{width:100%;}


/* form area ---------------------------------------*/



.form-area .submit{
	text-align: center;
}

.form-select{
	width: 100%;
	padding: 8px 10px;
	font-size: 13px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #999;
	background: url('../img/icon_select.png') 97% 50% no-repeat, -webkit-linear-gradient(top, #fff 0%, #fff 50% ,#eee 100%);
	background: url('../img/icon_select.png') 97% 50% no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50% ,#eee 100%);
	background-size: 8px 36px;
	border-radius:0;
	outline: none;
}

select::-ms-expand {
	display: none;
}

.form-text[type="text"]{
	padding:13px 5px;
	border:1px solid #999;
	width:100%;
	box-sizing:border-box;
	-webkit-appearance: none; 
	outline: none;
	border-radius:0;
}

.form-radio {
	display: inline-block;
	line-height: 1;
	margin-right: 5px;
	font-size: 12px;
}

.form-radio label {
	background: url('../img/radio.png') left 1px no-repeat;
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	line-height: 1.4;
	min-height: 23px;
	margin: 0px 0;
	padding: 3px 0 0 28px;
	position: relative;
	vertical-align: top;
}

.form-radio input[type="radio"]{position: absolute;left:0px;top:0px;width:1px;height:1px;overflow: hidden;opacity:0;}
.form-radio input:checked + label {background-image: url('../img/radio_on.png');}
.form-radio input:disabled + label {opacity: 0.7;}

.form-checkbox {
  display: inline-block;
  line-height: 1;
  margin-right: 5px;
  font-size: 12px;
}

.form-checkbox label {
	background: url('../img/check.png') left 1px no-repeat;
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	line-height: 1.4;
	min-height: 23px;
	margin: 0px 0;
	padding: 3px 0 0 28px;
	position: relative;
	vertical-align: top;
}

.form-checkbox input[type="checkbox"]{position: absolute;left:0px;top:0px;width:1px;height:1px;overflow: hidden;opacity:0;}
.form-checkbox input:checked + label {background-image: url('../img/check_on.png');}
.form-checkbox input:disabled + label {opacity: 0.7;}

.form-textarea{
	padding:13px 5px;
	border:1px solid #999;
	width:100%;
	box-sizing:border-box;
	height:80px;
	-webkit-appearance: none; 
	outline: none;
	border-radius:0;
}

::placeholder {color:#eee;}


/* error ---------------------------------------*/

select.error,
input.error{border:1px solid #c80000;}
p.error{
	color:#c80000;
	padding-top: 8px;
	line-height: 1.1;
}


/* pc */
@media screen and (min-width: 769px){
	.sp{display: none !important;}
	.spbr{display: none;}
}


/* small pc */
@media screen and (min-width: 769px) and (max-width: 1100px){


	.btn-header-white{display: none;}

}


@media screen and (max-width: 768px){


	/* default */
	img{max-width:100%;}
	a img{opacity:1;}
	*{box-sizing:border-box;}

	/* common item */
	.pc{display: none !important;}
	.pcbr{display: none;}

	.sp{display: block !important;}
	.spbr{display: block;}

	.headerInner,
	.footerInner,
	.inner{
		min-width:0;
		width:100%;
	}

	/* header ---------------------------------------*/

	header{
		width:100%;
		background-color:#fff;
		position:fixed;
		height: 60px;
		left:0px;
		top:0px;
		z-index: 1000;
		padding:0px 0 0 0;
	}

	.header-inner{
		width: 96%;
		height:60px;
		justify-content: space-between;
	}
	
	.header-logo{
		width: 155px;
		margin-left: 5px;
	}

	.header-btn-wrapper{
		display: flex;
		margin-right: 3px;
	}

	.btn-header a{
		font-size: 11px;
		padding:7px 8px;
	}

	.btn-header-subscription{
		margin-right: 0px;
	}

	/* menu ---------------------------------------*/

	.openmenu span{
		height: 1px;
		width: 40%;
	}

	.openmenu span:nth-of-type(1) {top:18px;}
	.openmenu span:nth-of-type(2) {top:25px;}
	.openmenu span:nth-of-type(3) {top:32px;}

	.openmenu.open span:nth-of-type(1) {top: 19px;}
	.openmenu.open span:nth-of-type(3) {top:5px;}

	.nav{
		right: -100%;
		z-index: 10000;
		width: 100%;
	}

	.nav-inner{padding: 85px 50px 0;}

	.nav-inner .openmenu{right: 8px;}

	.menu-list-wrapper {
		display: block;
		padding-bottom: 13px;
		margin-bottom: 24px;
	}

	.menu-list{width: 100%;}

	.menu-list-item{margin-bottom: 23px;}

	.menu-list-item a:hover{opacity: 0.7;}

	.menu-sub-list{display: block;}

	.menu-sub-list-item{
		margin-right: 0px;
		width: 100%;
		margin-bottom: 17px;
	}


	/* kv ---------------------------------------*/

	.kv{
		background: url('../img/kv_bg_sp.jpg') no-repeat center top;
		background-color: #E2F2FE;
		background-size: 100%;
		padding-top: 85px;
	}
	
	.kv-inner{position: relative;}
	
	.kv-text{
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
		width: 100%;
	}
	
	.kv-top{
		padding-top: 40px;
		margin-bottom: 30px;
	}
	
	.kv-movie{
		position: static;
		width: 80%;
		margin: 0 auto 20px;
	}
	
	.btn-kv-wrapper{
		display: block;
		margin: 0 auto;
		position: static;
		transform: translate(0,0);
	}
	
	.btn-kv{
		padding:20px 0;
		width: 280px;
		margin: 0 auto;
	}
	
	.btn-kv a{font-size: 16px;}
	
	.btn-kv-red{margin: 0 auto 10px;}


	/* top ---------------------------------------*/

	.sectiontop{padding: 40px 0 20px;}

	.sectiontop-inner{
		display: block;
		width: 90%;
		margin: 0 auto;
	}

	.sectiontop-image{
		width: 100%;
		margin-left: 0px;
	}

	.sectiontop-content{
		width: 100%;
		margin-top: 30px;
	}

	.sectiontop-title{
		font-size: 27px;
		font-weight: bold;
		margin-bottom: 20px;
		margin-bottom: 5px;
	}

	.sectiontop-text{
		font-size: 14px;
		line-height: 2;
	}

	/* solution ---------------------------------------*/

	.sectionsolution{padding-top:35px;}

	.sectionsolution-title-wrapper{margin-bottom: 35px;}

	.sectionsolution-task-wrapper{
		background: linear-gradient(to bottom, #fff 15%, #F2F2F2 15% 100%);
		padding-bottom: 55px;
	}

	.sectionsolution-title{font-size: 25px;}

	.sectionsolution-sub-title{
		font-size: 13px;
		margin-bottom: 130px;
	}

	.sectionsolution-task-inner{
		display: block;
		width: 90%;
		margin-bottom: 45px;
	}

	.sectionsolution-task{
		width: 100%;
		padding: 15px 15px 10px 15px;
		margin-bottom: 50px;
	}

	.sectionsolution-task-learning.sectionsolution-task{margin-bottom: 150px;}

	.sectionsolution-task-title{
		font-size: 18px;
		padding: 20px 16px;
	}

	.sectionsolution-task-learning .sectionsolution-task-title::after {
		background: url('../img/icon_woman.png') no-repeat center center; 
		background-size: 100%;
		width: 90px;
		height: 140px;
		right: auto;
		left: 50%;
		bottom: auto;
		top: -135px;
		transform: translate(-50%,0);
	}

	.sectionsolution-task-leader .sectionsolution-task-title::after {
		background: url('../img/icon_man.png') no-repeat center center; 
		background-size: 100%;
		width: 90px;
		height: 140px;
		right: auto;
		left: 50%;
		bottom: auto;
		top: -135px;
		transform: translate(-50%,0);
	}

	.sectionsolution-task-list{}

	.sectionsolution-task-list-item{
		padding: 15px 0 19px 30px;
		border-bottom: 1px solid #F2F2F2;
		letter-spacing: -0.5px;
		position: relative;
		text-align: left;
	}

	.sectionsolution-task-list-item::before {
		display: block;
		position: absolute;
		content: '';
		margin-right: 10px;
		background: url('../img/icon_check.png') no-repeat center center; 
		background-size: 100%;
		width: 20px;
		height: 20px;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}

	.sectionsolution-task-list-item span{color: #D7000E;}

	.sectionsolution-task-text{
		font-size: 25px;
		display: inline;
		border-bottom: 2px solid #D7000E;
	}

	/* feature ---------------------------------------*/

	.sectionfeature{padding: 40px 0 30px;}

	.sectionfeature-title{
		font-size: 30px;
		margin-bottom: 25px;
	}

	.sectionfeature-links-wrapper{display: block;}

	.sectionfeature-links{
		width: 85%;
		margin: 0 auto 20px;
	}


	/* feature detail ---------------------------------------*/

	.sectionfeaturedetail-title-wrapper{margin-bottom: 25px;}

	.sectionfeaturedetail-title{
		font-size: 30px;
		margin-bottom: 25px;
	}

	.sectionfeaturedetail-title-lead{font-size: 19px;}

	.sectionfeaturedetail-content{
		padding: 25px 0 35px;
		width: 90%;
		margin: 0 auto 30px;
	}

	.sectionfeaturedetail-content-inner{
		width: 80%;
		margin: 0 auto;
	}

	.sectionfeaturedetail-content-title{
		font-size: 21px;
		margin-bottom: 50px;
	}


	/* design ---------------------------------------*/

	.sectiondesign{
		padding: 25px 0 50px;
		background: linear-gradient(to bottom, #091F5C 10%, #F8F8F8 10% 100%);
	}

	.sectiondesign-1-image{
		width: 97%;
		margin: 0 auto 65px;
	}

	.sectiondesign-list{}

	.sectiondesign-list-item{margin-bottom: 20px;}

	.sectiondesign-list-item-step{
		width: 20%;
		text-align: center;
	}

	.sectiondesign-list-item-step-image{width: 80%;}

	.sectiondesign-list-item-content-wrapper{
		width: 74%;
		display: block;
	}

	.sectiondesign-list-item-content{
		width: 100%;
		padding-top: 15px;
	}

	.sectiondesign-list-item-content-title{
		font-size: 20px;
		margin-bottom: 15px;
	}

	.sectiondesign-list-item-content-text{
		font-size: 14px;
		margin-bottom: 15px;
	}

	.sectiondesign-list-item-image{width: 100%;}

	.sectiondesign-2-text{
		font-size: 15px;
		margin-bottom: 30px;
	}

	.sectiondesign-2-image{
		width: 97%;
		margin: 0 auto 20px;
	}

	.sectiondesign-annotation{text-align: left;}


	/* plan ---------------------------------------*/

	.sectiondesign-plan-text{
		font-size: 20px;
		margin-bottom: 50px;
	}

	.sectiondesign-plan-image{
		width: 90%;
		margin: 0 auto;
	}


	/* approach ---------------------------------------*/

	.sectionapproach{
		padding: 50px 0 60px;
		background: linear-gradient(to bottom, #091F5C 20%, #F2F2F2 20% 100%);
	}

	.sectionapproach .sectionfeaturedetail-content{padding: 10px 10px 40px 10px;}

	.sectionapproach-content-wrapper{display: block;}

	.sectionapproach-content{
		padding: 20px 0 30px;
		width: 100%;
		margin-bottom: 40px;
	}

	.sectionapproach-content-inner{
		width: 91%;
		text-align: left;
		margin: 0 auto;
	}

	.sectionapproach-content-management{padding-left: 0%;}

	.sectionapproach-content-general{
		background: #F1F9FE;
		padding-right: 6%;
		padding-left: 4%;
	}

	.sectionapproach-content-image{margin-bottom: 40px;}

	.sectionapproach-content-list{padding-left: 0px;}

	.sectionapproach-content-list-item{margin-bottom: 20px;}

	.sectionapproach-content-list-item-title{
		font-size: 20px;
		margin-bottom: 10px;
	}

	.sectionapproach-content-list-item-text{
		font-size: 13px;
		position: relative;
	}

	.sectionapproach-content-list-item-text::before {
		display: inline-block;
		content: '';
		vertical-align: middle;
		margin-right: 3px;
		background: #091F5C; 
		background-size: 10px;
		width: 10px;
		height: 10px;
	}
	

	/* compare ---------------------------------------*/

	.sectioncompare{padding: 40px 0 60px;}

	.sectioncompare-title{
		font-size: 25px;
		margin-bottom: 20px;
	}

	.sectioncompare-lead{
		font-size: 15px;
		margin-bottom: 30px;
	}

	.sectioncompare-image{margin-bottom: 20px;}

	.sectioncompare-annotation{text-align: left;}

	/* case ---------------------------------------*/

	.sectioncase{padding: 45px 0 40px;}

	.sectioncase-title{
		font-size:25px;
		margin-bottom: 40px;
	}

	.sectioncase-accordion{
		width: 90%;
		margin: 0 auto;
	}

	.sectioncase-accordion-title-wrapper{
		padding: 15px 10px 15px 20px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.sectioncase-accordion-title{
		font-size: 15px;
		text-align: left;
		width: 80%;
	}

	.sectioncase-accordion-btn{
		width: 30px;
		height: 30px;
		background: #fff;
	}

	.sectioncase-accordion-content{
		padding: 25px 0 30px;
		margin-bottom: 40px;
	}

	.sectioncase-accordion-content-inner{width: 90%;}

	.sectioncase-accordion-content-title{
		font-size: 20px;
		margin-bottom: 25px;
	}

	.sectioncase-accordion-content-image{margin-bottom: 55px;}

	.sectioncase-accordion-content-annotation{
		padding: 10px 0;
		border-radius: 5px;
	}

	.sectioncase-accordion-content-annotation p{font-size: 14px;}


	/* flow ---------------------------------------*/

	.sectionflow{padding: 45px 0 60px;}

	.sectionflow-title{
		font-size: 28px;
		margin-bottom: 45px;
	}

	.sectionflow-inner{
		width: 100%;
		border-radius: 0px;
	}

	.sectionflow-list{padding: 40px 0 0px;}

	.sectionflow-list-item{
		padding: 40px 0;
		border-bottom: 1px solid #000;
	}

	.sectionflow-list-item:first-of-type{padding: 0 0 40px 0;}

	.sectionflow-list-item:last-of-type{border-bottom: none}

	.sectionflow-list-item-inner{
		display: flex;
		margin: 0 auto;
		width: 90%;
		justify-content: space-between;
	}

	.sectionflow-list-item-step{width: 18%;}

	.sectionflow-list-item-content{width: 76%;}

	.sectionflow-list-item-title{
		font-size: 23px;
		padding-top: 10px;
		margin-bottom: 10px;
	}

	.sectionflow-list-item-text{font-size: 16px;}


	/* overview ---------------------------------------*/

	.sectionoverview{padding: 40px 0 60px;}

	.sectionoverview-title{
		font-size: 26px;
		margin-bottom: 25px;
	}

	.sectionoverview-logo{
		width: 150px;
		margin: 0 auto 30px;
	}

	.sectionoverview-lead{
		font-size:14px;
		margin-bottom: 30px;
	}

	.sectionoverview-content{
		display: block;
		width: 90%;
		margin: 0 auto;
	}

	.sectionoverview-table-wrapper{
		width: 100%;
		margin-bottom: 50px;
	}

	.sectionoverview-table{display: block;}

	.sectionoverview-table dt{
		width: 100%;
		font-weight: bold;
		border-bottom: none;
		padding: 25px 0 10px;
	}

	.sectionoverview-table dd{
		width: 100%;
		padding: 10px 0 25px;
	}

	.sectionoverview-image-wrapper{
		width: 80%;
		margin:0 auto;
	}

	.sectionoverview-image:first-of-type{margin-bottom: 10px;}


	/* contact ---------------------------------------*/
	
	.sectioncontact-inner{
		display: block;
		width: 90%;
		height: auto;
		padding: 40px 0;
	}

	.sectioncontact-title-wrapper{width: 100%;}

	.sectioncontact-title{
		font-size: 20px;
		text-align: center;
		margin-bottom: 40px;
	}

	.sectioncontact-btn-wrapper{
		display: block;
		width: 100%;
	}

	.sectioncontact-btn{
		display: block;
		border-radius: 5px;
		text-align: center;
	}

	.sectioncontact-btn a{font-size: 18px;}

	.sectioncontact-btn-red{
		background: #D7000E;
		margin-right: 0px;
		padding:20px 30px;
		margin-bottom: 10px;
	}

	.sectioncontact-btn-red a{color:#fff;}

	.sectioncontact-btn-white{
		margin-right: 0px;
		padding:20px 0;
		width: 100%;
		background: #fff;
		margin-bottom: 10px;
	}

	.sectioncontact-btn-white:last-of-type{margin-bottom: 0;}


	/* footer ---------------------------------------*/

	.footer-inner{
		max-width:84%;
		padding: 50px 0px 40px;
	}

	.footer-logo{width: 200px;}

	.footer-list-wrapper{
		display: flex;
		margin-bottom: 35px;
		justify-content: space-between;
	}

	.footer-list{
		width: 50%;
		margin-bottom: 0px;
		display: block;
	}

	.footer-list:last-of-type{width: 47%;}

	.footer-list-item{
		margin-right: 0px;
		margin-bottom: 6px;
	}

	.footer-list-item a{font-size: 13px;}

	.footer-list-item a::before {
		margin-right: 5px;
		width: 5px;
		height: 10px;
	}

	.copyright{
		font-size: 11px;
		color: #fff;
	}


	/* go top ---------------------------------------*/

	.gotop{
	}

	.gotop a{
	}





}