@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : corporate_vision.css
 author     : Ability Consultant
 style info : 経営ビジョン
=================================================================== */
.con_intro, .con_concept, .con_roots, .con_challenge, .con_roots section, .con_challenge section, .con_flag {
	width: 100%;
	max-width: 1280px;
	margin: auto;
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .con_intro, .con_concept, .con_roots, .con_challenge, .con_roots section, .con_challenge section, .con_flag {
		width: 95%;
  }
}
@media print {
  .con_intro, .con_concept, .con_roots, .con_challenge, .con_roots section, .con_challenge section, .con_flag {
		width: 95%;
  }
}
.ie8 .con_intro, .ie8 .con_concept, .ie8 .con_roots, .ie8 .con_challenge, .ie8 .con_roots section, .con_roots .ie8 section, .ie8 .con_challenge section, .con_challenge .ie8 section, .ie8 .con_flag {
	width: 95%;
}
@media only screen and (max-width: 1024px) {
  .con_intro, .con_concept, .con_roots, .con_challenge, .con_roots section, .con_challenge section, .con_flag {
		width: 95%;
  }
}

.con_roots .box_list, .con_challenge .box_list, .con_roots .box_caption, .con_challenge .box_caption {
	width: 100%;
	max-width: 960px;
	margin: auto;
}
@media only screen and (min-width: 1025px) and (max-width: 1279px) {
  .con_roots .box_list, .con_challenge .box_list, .con_roots .box_caption, .con_challenge .box_caption {
		width: 95%;
  }
}
@media print {
  .con_roots .box_list, .con_challenge .box_list, .con_roots .box_caption, .con_challenge .box_caption {
		width: 95%;
  }
}
.ie8 .con_roots .box_list, .con_roots .ie8 .box_list, .ie8 .con_challenge .box_list, .con_challenge .ie8 .box_list, .ie8 .con_roots .box_caption, .con_roots .ie8 .box_caption, .ie8 .con_challenge .box_caption, .con_challenge .ie8 .box_caption {
	width: 95%;
}
@media only screen and (max-width: 1024px) {
  .con_roots .box_list, .con_challenge .box_list, .con_roots .box_caption, .con_challenge .box_caption {
		width: 95%;
  }
}

.blue {
	color: #007ec1;
}

/* -----------------------------------------------------------
	con_main
----------------------------------------------------------- */
.con_main {
	min-height: 420px;
	background: url(../images/corporate/vision/img_main.jpg) no-repeat center center;
	background-size: cover;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_main {
		min-height: 252px;
  }
}
@media only screen and (max-width: 767px) {
  .con_main {
		min-height: 240px;
  }
}
@media only screen and (max-width: 767px) {
  .con_main {
		background-position-x: -740px;
  }
}
.con_main .title {
	color: #fff;
}

/* -----------------------------------------------------------
	con_intro
----------------------------------------------------------- */
.con_intro .box_title .tl_basic {
	font-size: 295%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .box_title .tl_basic {
		font-size: 236%;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_title .tl_basic {
		font-size: 142%;
  }
}
.con_intro .box_subtitle {
	margin-top: 70px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .box_subtitle {
		margin-top: 42px;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .box_subtitle {
		margin-top: 1em;
  }
}
.con_intro .wrp {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .con_intro .wrp {
		align-items: center;
  }
}
@media print {
  .con_intro .wrp {
		align-items: center;
  }
}
.ie8 .con_intro .wrp {
	align-items: center;
}
.con_intro .wrp .box_txt {
	width: 48%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .wrp .box_txt {
		width: 48%;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .wrp .box_txt {
		width: 100%;
  }
}
.con_intro .wrp .box_txt .txt {
	margin-top: 67px;
	text-align: left;
	font-feature-settings: "palt";
	line-height: 2.4;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .wrp .box_txt .txt {
		margin-top: 40.2px;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .wrp .box_txt .txt {
		margin-top: 1em;
  }
}
@media only screen and (max-width: 1024px) {
  .con_intro .wrp .box_txt .txt {
		text-align: left;
		line-height: 1.8;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .wrp .box_txt {
		margin-bottom: 1em;
		order: 2;
  }
}
.con_intro .wrp > .box_img {
	width: 48%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro .wrp > .box_img {
		width: 48%;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .wrp > .box_img {
		width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro .wrp > .box_img {
		margin-top: 1em;
		order: 1;
  }
}
.con_intro > .box_img {
	text-align: right;
	margin-top: 90px;
	position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro > .box_img {
		margin-top: 54px;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro > .box_img {
		margin-top: 1.5em;
  }
}
.con_intro > .box_img img {
	width: 65.85938%;
	position: relative;
	z-index: 1;
}
@media only screen and (max-width: 767px) {
  .con_intro > .box_img img {
		width: 100%;
  }
}
.con_intro > .box_img:before {
	z-index: 0;
	position: absolute;
	top: 100px;
	left: 0;
	content: "";
  /* style */
	width: 75%;
	height: 300px;
	background: linear-gradient(127deg, #0065a5 0%, #0078a5 49%);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro > .box_img:before {
		top: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro > .box_img:before {
		top: 5em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_intro > .box_img:before {
		height: 180px;
  }
}
@media only screen and (max-width: 767px) {
  .con_intro > .box_img:before {
		height: 50px;
  }
}

/* -----------------------------------------------------------
	con_concept
----------------------------------------------------------- */
.con_concept {
	margin-top: 230px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_concept {
		margin-top: 138px;
  }
}
@media only screen and (max-width: 767px) {
  .con_concept {
		margin-top: 4em;
  }
}
.con_concept .box_sp .box_title {
	font-size: 142%;
}
.con_concept .box_sp .box_list {
	margin-top: 1em;
}
.con_concept .box_sp .box_list ul li {
	width: 100%;
	margin-top: 1em;
}
.con_concept .box_sp .box_list ul li:first-child {
  /* style */
	margin-top: 0;
}
.con_concept .box_sp .box_list ul li h5 {
	font-size: 118%;
	color: #007ec1;
}
.con_concept .box_pc-tab {
	text-align: center;
}

/* -----------------------------------------------------------
	con_roots,con_challenge
----------------------------------------------------------- */
.con_roots, .con_challenge {
	margin-top: 150px;
	background: #f6f5f3;
	padding: 80px 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots, .con_challenge {
		margin-top: 90px;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots, .con_challenge {
		margin-top: 2em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots, .con_challenge {
		padding: 48px 0;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots, .con_challenge {
		padding: 2em 0;
  }
}
.con_roots section .st_basic, .con_challenge section .st_basic {
	font-size: 236%;
	line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots section .st_basic, .con_challenge section .st_basic {
		font-size: 177%;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots section .st_basic, .con_challenge section .st_basic {
		font-size: 118%;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots section .st_basic .jp img, .con_challenge section .st_basic .jp img {
		width: 25%;
  }
}
.con_roots section p, .con_challenge section p {
	text-align: center;
	margin-top: 60px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots section p, .con_challenge section p {
		margin-top: 36px;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots section p, .con_challenge section p {
		margin-top: 1em;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots section p, .con_challenge section p {
		text-align: left;
  }
}
.con_roots .box_list, .con_challenge .box_list {
	margin-top: 86px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list, .con_challenge .box_list {
		margin-top: 51.6px;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_list, .con_challenge .box_list {
		margin-top: 1em;
  }
}
.con_roots .box_list ul li, .con_challenge .box_list ul li {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-feature-settings: "palt";
	margin-top: 65px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list ul li, .con_challenge .box_list ul li {
		margin-top: 39px;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_list ul li, .con_challenge .box_list ul li {
		margin-top: 1em;
  }
}
.con_roots .box_list ul li:first-child, .con_challenge .box_list ul li:first-child {
  /* style */
	margin-top: 0;
}
.con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
	width: 21.875%;
	font-size: 153%;
	font-weight: 200;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		width: 31.25%;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		font-size: 142%;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		font-size: 142%;
  }
}
.con_roots .box_list ul li h4.en, .con_challenge .box_list ul li h4.en {
	font-size: 206%;
	font-family: "Oswald", sans-serif;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list ul li h4.en, .con_challenge .box_list ul li h4.en {
		font-size: 177%;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_list ul li h4.en, .con_challenge .box_list ul li h4.en {
		font-size: 159%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		margin-left: 9.375%;
  }
}
@media print {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		margin-left: 9.375%;
  }
}
.ie8 .con_roots .box_list ul li h4, .ie8 .con_challenge .box_list ul li h4 {
	margin-left: 9.375%;
}
@media only screen and (min-width: 1025px) and (max-width: 1299px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		width: 25%;
		margin-left: 6.25%;
  }
}
@media print {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		width: 25%;
		margin-left: 6.25%;
  }
}
.ie8 .con_roots .box_list ul li h4, .ie8 .con_challenge .box_list ul li h4 {
	width: 25%;
	margin-left: 6.25%;
}
@media only screen and (min-width: 768px) {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		line-height: 1;
  }
}
@media print {
  .con_roots .box_list ul li h4, .con_challenge .box_list ul li h4 {
		line-height: 1;
  }
}
.ie8 .con_roots .box_list ul li h4, .ie8 .con_challenge .box_list ul li h4 {
	line-height: 1;
}
.con_roots .box_list ul li p, .con_challenge .box_list ul li p {
	width: 64.58333%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list ul li p, .con_challenge .box_list ul li p {
		width: 66.66667%;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_list ul li p, .con_challenge .box_list ul li p {
		width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_roots .box_list ul li p, .con_challenge .box_list ul li p {
		margin-left: 4.16667%;
  }
}
@media print {
  .con_roots .box_list ul li p, .con_challenge .box_list ul li p {
		margin-left: 4.16667%;
  }
}
.ie8 .con_roots .box_list ul li p, .ie8 .con_challenge .box_list ul li p {
	margin-left: 4.16667%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_list ul li p, .con_challenge .box_list ul li p {
		font-size: 89%;
		margin-left: 2.08333%;
  }
}
.con_roots .box_caption, .con_challenge .box_caption {
	margin-top: 43px;
	border-top: 1px dashed #a8a8a7;
	border-bottom: 1px dashed #a8a8a7;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_roots .box_caption, .con_challenge .box_caption {
		margin-top: 25.8px;
  }
}
@media only screen and (max-width: 767px) {
  .con_roots .box_caption, .con_challenge .box_caption {
		margin-top: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .con_roots .box_caption, .con_challenge .box_caption {
		text-align: center;
		padding: .5em;
  }
}
@media print {
  .con_roots .box_caption, .con_challenge .box_caption {
		text-align: center;
		padding: .5em;
  }
}
.ie8 .con_roots .box_caption, .ie8 .con_challenge .box_caption {
	text-align: center;
	padding: .5em;
}
@media only screen and (max-width: 767px) {
  .con_roots .box_caption, .con_challenge .box_caption {
		padding: .5em 0;
  }
}
.con_roots .box_caption p, .con_challenge .box_caption p {
	font-size: 90%;
}

/* -----------------------------------------------------------
	con_flag
----------------------------------------------------------- */
.con_flag {
	margin-top: 128px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_flag {
		margin-top: 76.8px;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag {
		margin-top: 2em;
  }
}
.con_flag .wrap_flag {
	margin-top: 66px;
	display: flex;
	flex-wrap: wrap;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_flag .wrap_flag {
		margin-top: 39.6px;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag {
		margin-top: 1em;
  }
}
.con_flag .wrap_flag .box_img {
	width: 23.82813%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_flag .wrap_flag .box_img {
		width: 36.32813%;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_img {
		width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_flag .wrap_flag .box_img {
		margin-left: 12.5%;
		margin-right: 4.6875%;
  }
}
@media print {
  .con_flag .wrap_flag .box_img {
		margin-left: 12.5%;
		margin-right: 4.6875%;
  }
}
.ie8 .con_flag .wrap_flag .box_img {
	margin-left: 12.5%;
	margin-right: 4.6875%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_flag .wrap_flag .box_img {
		margin-right: 4.6875%;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_img img {
		width: 100%;
  }
}
.con_flag .wrap_flag .box_txt {
	width: 58.98438%;
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt {
		width: 100%;
		margin-top: 1em;
  }
}
.con_flag .wrap_flag .box_txt ul li {
	margin-top: 55px;
	font-feature-settings: "palt";
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_flag .wrap_flag .box_txt ul li {
		margin-top: 33px;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt ul li {
		margin-top: 1.5em;
  }
}
.con_flag .wrap_flag .box_txt ul li:first-child {
  /* style */
	margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt ul li {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
  }
}
@media only screen and (min-width: 768px) {
  .con_flag .wrap_flag .box_txt ul li .img {
		display: none;
  }
}
@media print {
  .con_flag .wrap_flag .box_txt ul li .img {
		display: none;
  }
}
.ie8 .con_flag .wrap_flag .box_txt ul li .img {
	display: none;
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt ul li .img {
		width: 20%;
		margin-right: 5%;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt ul li .txt {
		width: 75%;
  }
}
.con_flag .wrap_flag .box_txt ul li .txt h4 {
	font-size: 165%;
	font-weight: normal;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_flag .wrap_flag .box_txt ul li .txt h4 {
		font-size: 142%;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt ul li .txt h4 {
		font-size: 106%;
  }
}
@media only screen and (max-width: 767px) {
  .con_flag .wrap_flag .box_txt ul li .txt p {
		font-size: 89%;
  }
}
