@charset "utf-8";
/* CSS Document */

/*common*/
.fv_back {
	background-image: url("../img/header_back.jpg");
	background-repeat: repeat-x;
	background-attachment: inherit;
}
.flex ul {
	display: flex;
	justify-content: space-between;
}
.flex li,.flex2 li {
	list-style: none;
}
.flex_fv {
	display: flex;
	justify-content: space-between;
	padding-left: 0px;
}
.flex2 ul {
	display: flex;
	justify-content: space-between;
	padding-left: 0px;
}
.flex3 ul {
	display: flex;
	justify-content: space-between;
	padding-left: 0px;
	padding-bottom: 30px;
}
.flex3 li {
	width: 31%;
	list-style: none;
}
.flex4 ul {
	display: flex;
	justify-content: space-between;
	padding-left: 0px;
}
.flex4 li {
	width: 23%;
	list-style: none;
}
.t_right p {
	text-align: right;
}
.t_right {
	text-align: right;
}
.fl_center {
	align-items: center;
}
.d_line1 {
	border-bottom: dotted 4px #B8B8B8;
	padding-bottom: 0.3em;
}
.mt30 {
	margin-top: 30px;
}
.g_back {
	background-color: #F1F1F1;
}
.b_red {
	font-weight: bold;
	color: #C71528;
}
.title_e {
	font-size: 27px;
	color: #283C6A;
	text-align: center;
	border-bottom: solid 1px #283C6A;
	padding-bottom: 0.2em;
	margin-top: 80px;
}
.read {
	font-size: 32px;
	line-height: 45px;
	text-align: center;
	margin-bottom: 40px;
}
.shakes_bt a {
    animation: shakes 2s infinite;
}
@keyframes shakes {
    0% {
        transform: translate(2px, 0px);
    }
    5% {
        transform: translate(-2px, 0px);
    }
    10% {
        transform: translate(2px, 0px);
    }
    15% {
        transform: translate(-2px, 0px);
    }
    20% {
        transform: translate(2px, 0px);
    }
    25% {
        transform: translate(-2px, 0px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}

/*ヘッダー*/

.header_box {
	padding-top: 15px;
margin-bottom: -9px;
}
.header_box .header01 {
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	text-align: left;
	max-width: 45%;
width: 100%;
}
.header_box .header02 {
	width: 220px;
}
.header_box .header03 {
	width: 250px;
margin-top: 7px;
}
.header_box .header03 a {
	font-size: 20px;
background-image: url("../img/bt_arrow.png");
background-position: 10% center;
background-repeat: no-repeat;
background-color: #56A235;
padding: 10px;
border: solid 0px;
border-radius: 6px;
color: #fff;
transition: background 0.5s;
font-weight: bold;
padding-top: 8px;
padding-bottom: 8px;
padding-left: 50px;
padding-right: 35px;
}
.header_box .header03 a:hover {
	background-color: #27630E;
	box-shadow: 0 0 10px 3px #fff;
	text-decoration: none;
}
.header_box .header04 {
	width: 40px;
	text-align: right;
}

/*footer*/
.cf_footer {
	background-color: #F1F1F1;
	color: #1F1F1F;
	padding-top: 20px;
	padding-bottom: 20px;
}
.cf_footer p {
	margin-top: 15px;
}

/*fv*/

.fv_l {
	width: 55%;
text-align: center;
}
.fv_l .fv_ill img {
	width: 100%;
	margin-top: 15px;
}
.fv_r {
}
.fv_box {
	margin-top: 30px;
	background-image: url("../img/fv_back.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	padding-bottom: 25px;
}
.fv_box .fv_copy1 {
	font-size: 38px;
	font-weight: bold;
	color: #000;
}
.fv_box .fv_copy2 {
	font-size: 64px;
	font-weight: bold;
	color: #C71528;
}
.fv_box h2 {
	margin-top: 0.5em;
}
.fv_r .entry {
  padding-top: 20px;
  padding-bottom: 0px;
	padding-left: 20px;
	padding-right: 20px;
	border: solid 1px #D9B079;
	border-radius: 15px;
}
.fv_r .entry .hbspt-form .hs-input {
  padding: 8px;
  margin-bottom: 9px;
  font-size: 0.93em;
}
.fv_r .entry .hs-button {
  margin-top: 20px;
	margin-bottom: 25px;
}
.logo_banner_box .cap1 {
  text-align: right;
  padding-right: 1em;
  margin-top: -40px;
  margin-bottom: 40px;
}

/*issue*/

.issue ul {
	margin-top: 25px;
}
.issue01,.issue02,.issue03,.issue04 {
	border-radius: 18px;
	padding: 20px;
}
.issue .flex4 img {
	margin-bottom: 15px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.issue .flex4 p {
	font-size: 16px;
	line-height: 24px;
}
.issue01 {
	border: solid 1px #37539B;
	display: flex;
	flex-direction:column;
}
.issue02 {
	border: solid 1px #FF6600;
	display: flex;
	flex-direction:column;
}
.issue03 {
	border: solid 1px #C2561A;
	display: flex;
	flex-direction:column;
}
.issue04 {
	border: solid 1px #308AA0;
	display: flex;
	flex-direction:column;
}
.issue h4 {
	font-size: 26px;
	line-height: 36px;
	text-align: center;
}
.issue01 h4 {
	color: #37539B;
}
.issue02 h4 {
	color: #FF6600;
}
.issue03 h4 {
	color: #C2561A;
}
.issue04 h4 {
	color: #308AA0;
}
.issme_cont {
width: 100%;
}
.bt1,.bt2,.bt3,.bt4 {
	margin-top: auto;
width: 100%;
}
.bt_f a {
	background-color: #4A932B;
}
.bt1 a,.bt2 a,.bt3 a,.bt4 a,.bt_f a {
	font-size: 20px;
	line-height: 27px;
	font-weight: bold;
	color: #fff;
	padding-left: 0.5em;
	padding-right: 0.5em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border: solid 0px;
	border-radius: 13px;
	transition: background 0.5s;
	text-align: center;
	width: 100%;
margin-top: auto;
	display: block;
}
.bt1 a {
	background-color: #37539B;
}
.bt1 a:hover {
	background-color: #04184D;
	color: #fff;
	box-shadow: 2px 2px 5px 2px #B6B6B6;
	text-decoration: none;
}
.bt2 a {
	background-color: #FF6600;
}
.bt2 a:hover {
	background-color: #9B3E00;
	color: #fff;
	box-shadow: 2px 2px 5px 2px #B6B6B6;
	text-decoration: none;
}
.bt3 a {
	background-color: #C2561A;
}
.bt3 a:hover {
	background-color: #431800;
	color: #fff;
	box-shadow: 2px 2px 5px 2px #B6B6B6;
	text-decoration: none;
}
.bt4 a {
	background-color: #308AA0;
}
.bt4 a:hover {
	background-color: #005A70;
	color: #fff;
	box-shadow: 2px 2px 5px 2px #B6B6B6;
	text-decoration: none;
}

.issue_back02 .issue04,.issue_back02 .issue05,.issue_back02 .issue06 {
	border: solid 1px #707070;
	border-radius: 18px;
	padding: 20px;
	 background: linear-gradient(to bottom, #C71528 0%, #C71528 32%, #FFF 32%,  #FFF 100%);
	padding-bottom: 10px;
}
.issue  h2 {
	font-size: 40px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	margin-top: 1.5em;
margin-bottom: 1em;
}
.issue  h3 {
	font-size: 32px;
	line-height: 42px;
	font-weight: bold;
	text-align: center;
	margin-top: 1em;
margin-bottom: 0.3em;
}
.issue  p {
	font-size: 18px;
	line-height: 28px;
	padding-top: 1.8em;
}
.issue .issue-img,
.issue .issue_img2 {
	text-align: center;
}
.issue .arrow {
	text-align: center;
	margin-top: 15px;
}
.issue_back01 {
	background-image: url("../img/issue_back1.jpg");
	background-repeat: no-repeat;
	background-position: top center;
}
.issue_back02 {
	background-image: url("../img/issue_back2.jpg");
	background-repeat: no-repeat;
	background-position: bottom center;
	padding-bottom: -100px;
	background-size: contain;
}
.issue .flex3 h3 {
	font-size: 24px;
	line-height: 27px;
	color: #fff;
	margin-top: -7px;
}
.issue .flex3 p {
  padding-top: 0.8em;
}

/*実績*/

.achievements h2 {
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}
.achievements {
	background-image: url("../img/back02.jpg");
	background-repeat: repeat-x;
	background-position: bottom;
	padding-bottom: 40px;
}

/*CV*/

.issue_cv h4 {
	margin-bottom: 0.7em;
}
.issue_cv {
	margin-bottom: 40px;
}
.cv_sec a {
	font-size: 32px;
	background-image: url("../img/bt_arrow2.png");
background-position: 10% center;
background-repeat: no-repeat;
background-color: #56A235;
	padding-left: 3em;
	padding-right: 3em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border: solid 0px;
	border-radius: 60px;
	color: #fff;
	transition: background 0.5s;
	text-align: center;
	width: 50%;
	display: inline-block;
	margin-bottom: 2em;
margin-top: 2em;
}
.cv_sec {
	text-align: center;
	color: #fff;
	font-weight: bold;
	line-height: 2.7em;
}
.cv_sec a:hover {
	background-color: #27630E;
	box-shadow: 0 0 10px 3px #F3E090;
	text-decoration: none;
}
.cv_illust img {
	width: 80%;
}
#theme img {
	max-width: 786px;
	max-height: 342px;
}
.sp_item {
		display: none;
	}
.cap1 {
	font-size: 0.7em;
	text-align: left;
}
.top_cap {
	text-align: right;
}

/*reason*/

.reason {
	background-color: #FFECEC;
	padding-top: 1px;
}
.reason h2, .realize h2, .support h2, .flow h2 {
	font-size: 40px;
	line-height: 52px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 40px;
}
.reason .dg {
	text-align: center;
}
.reason .dg img {
	margin-bottom: 40px;
}

/*realize*/

.realize {
	background-color: #F2EFE3;
	padding-top: 1px;
	padding-bottom: 40px;
	margin-bottom: 80px;
}

/*サポート*/

.slick_cont .sup {
	width: 200px;
	margin-left: 15px;
}
.position1 {
	font-size: 14px;
	line-height: 24px;
}
.name {
	font-size: 22px;
	margin-bottom: -15px;
	display: block;
}
/*cv_box*/
.cv_box {
	background-color: #FFFAE4;
	padding-top: 40px;
	margin-bottom: 2em;
margin-top: 4em;
	border-top: solid 17px #FF8354;
	padding-bottom: 0.8em;
}
.cv_box h3 {
  font-size: 35px;
  color: #000;
  text-align: center;
  margin-bottom: 1em;
}
.cv_box .line_fb {
	display: flex;
}
.cv_box .ws_70 {
	width: 70%;
}
.cv_box .ws_50 {
	width: 50%;
}
.cv_box .ws_30 {
	width: 30%;
}
.cv_box .cv_bt {
	margin-top: 1em;
}
.entry_tx {
	padding-right: 1em;
}
.cv_box img {
		width: 100%;
		max-width: 510px;
	}

/*入力フォーム関連*/

/*entry*/
.entry {
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: #fff;
}
.entry h3 {
	text-align: center;
}
.entry .hbspt-form {
	max-width: 500px;
	margin-left: auto;
	margin-right: auto;
}
.privacy_policy {
    overflow: scroll;
    width: 80%;
    height: 250px;
    background-color: #ffffff;
    border-radius: 3px 3px 3px 3px;
    border: solid 1px #dddddd;
    margin-bottom: 5em;
    padding: 15px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 1em;
}
.privacy_policy h2 {
	font-size: 0.5em;
}
.privacy_policy h3, .privacy_policy h4 {
	font-size: 1.2em;
	text-align: left;
	padding-top: 1em;
	padding-bottom: 1em;
}
.privacy_policy p {
	font-size: 1em;
	line-height: 1.6em;
}
.entry .hbspt-form .hs-input {
  background-color: #F2F1E9;
  border: solid 1px #ababab;
  border-radius: 5px;
  padding: 8px;
  margin-bottom: 20px;
}
.entry .hbspt-form .inputs-list {
	list-style: none;
	margin-left: 0px;
}
.entry .hs-field-desc {
	font-size: 1em;
}
.hs-button {
	font-size: 21px;
	background-color: #3A871B;
	padding: 10px;
	border: solid 0px;
	border-radius: 6px;
	color: #fff;
	transition: background 0.5s;
	text-align: center;
	width: 400px;
	display: inline-block;
	margin-bottom: 40px;
}
.entry .hs-button {
	text-align: center;
	margin-top: 50px;
}
.entry .hs-button:hover {
	background-color: #195600;
	box-shadow: 0 0 10px 3px #fff;
	text-decoration: none;
}
.contact_lf .contact-cap {
	font-size: 86%;
	text-align: center;
}
.entry h2 {
	font-size: 1.5em;
	padding: 0.5em;
	text-align: center;
}
.entry_tx2 {
	padding-top: 0.5em;
	padding-bottom: 1em;
	text-align: center;
}
.entry h3 {
	font-size: 1.5em;
padding: 0.4em;
text-align: center;
margin-bottom: 1.7em;
	color: #fff;
}
.inq01 {
	background-color: #37539B;
}
.inq02 {
	background-color: #FF6600;
}
.inq03 {
	background-color: #C2561A;
}
.inq04 {
	background-color: #308AA0;
}

/*　logoスライド1枚版　*/
.loop_wrap {
  display: flex;
    width: 270vw;
    height: 135px;
    overflow: hidden;
    margin-top: 30px;
    margin-bottom: 50px;
}
.logo_banner_box {
	margin: 0 calc(50% - 50vw);
    width: 99vw;
    position: relative;
	overflow: hidden;
}

.loop_wrap img {
  width: auto;
  height: 100%;
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
.loop_wrap img:first-child {
  animation: loop 100s -50s linear infinite;
}

.loop_wrap img:last-child {
  animation: loop2 100s linear infinite;
}
@media only screen and (max-width: 1200px) {
.header_box .header01 {
	width: 35%;
	}
	.fv_box h2 {
  margin-top: 1em;
}
	.fv_r {
		margin-left: 20px;
	}
	.header_copy img,.fv_r img {
		width: 100%;
		height: auto;
	}
	.fv_box .fv_copy2 {
  font-size: 55px;
	}
	.issue_dg img {
		width: 100%;
	}
	.achievements img {
		width: 100%;
	}
	.reason img {
		width: 100%;
	}
	.flow img {
		width: 100%;
	}
	.cv_sec a {
		width: 65%;
	}
}
@media only screen and (max-width: 992px) {
.fv_box .fv_copy1 {
  font-size: 33px;
	}
	.fv_box .fv_copy2 {
  font-size: 41px;
}
	.flex ul {
  padding-left: 0px;
}
	.header_box .header01 {
  width: 25%;
}
	.header_box .header03 a {
		padding-left: 40px;
padding-right: 24px;
	}
	.fv_back {
		  background-position: 0px -25px;
	}
	.issue_back01 .issue01, .issue_back01 .issue02, .issue_back01 .issue03 {
		background: linear-gradient(to bottom, #283C6A 0%, #283C6A 25%, #FFF 25%, #FFF 100%);
	}
	.issue_back02 .issue04, .issue_back02 .issue05, .issue_back02 .issue06 {
		background: linear-gradient(to bottom, #C71528 0%, #C71528 38%, #FFF 38%, #FFF 100%);
	}
	.cv_sec a {
		width: 85%;
	}
}
@media only screen and (max-width: 768px) {
	.pc_item {
		display: none;
	}
	.sp_item {
		display: inherit;
	}
	.read {
  font-size: 20px;
  line-height: 30px;
  text-align: left;
		font-weight: bold;
}
	.title_e {
  font-size: 20px;
  margin-top: 40px;
		margin-bottom: 10px;
}
	.cv_sec a {
  font-size: 20px;
  padding-left: 2em;
  padding-right: 1em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  width: 95%;
  margin-bottom: 2em;
  margin-top: 2em;
  background-size: 4%;
}
	.header_box .header01 {
  max-width: 90%;
    width: 100%;
}
	.flex ul {
  padding-left: 0px;
}
	.fv_l ,.fv_l img {
		width: 100%;
	}
.header_box .header03 {
  width: 100%;
	text-align: center;
	margin-top: -8px;
	}
	.fv_box .fv_copy1 {
  font-size: 21px;
	}
	.fv_box .fv_copy2 {
  font-size: 34px;
	}
	.issue h2 {
  font-size: 24px;
line-height: 32px;
}
	.flex3 ul {
  display: block;
	}
	.flex3 li {
  width: 100%;
  margin-bottom: 25px;
}
	.issue p {
  font-size: 16px;
  line-height: 26px;
  padding-top: 1em;
}
	.issue h3 {
  font-size: 20px;
	}
.issue_back01 .issue01,.issue_back01 .issue02,.issue_back01 .issue03,.issue_back02 .issue04,.issue_back02 .issue05,.issue_back02 .issue06 {
  padding: 15px;
    padding-bottom: 5px;
}
	.issue_back01 .issue01,.issue_back01 .issue02 {
  background: linear-gradient(to bottom, #283C6A 0%, #283C6A 43%, #FFF 43%, #FFF 100%);
}
	.issue_back01 .issue03 {
  background: linear-gradient(to bottom, #283C6A 0%, #283C6A 50%, #FFF 50%, #FFF 100%);
}
	.issue_back02 .issue04, .issue_back02 .issue05 {
  background: linear-gradient(to bottom, #C71528 0%, #C71528 47%, #FFF 47%, #FFF 100%);
}
	.issue_back02 .issue06 {
  background: linear-gradient(to bottom, #C71528 0%, #C71528 47%, #FFF 47%, #FFF 100%);
  padding-bottom: 10px;
}
	.issue h4 {
  font-size: 24px;
  line-height: 34px;
	}
	.issue_img img,.issue_img2 img,.arrow img {
		width: 70%;
	}
	.achievements h2,.reason h2,.realize h2,.support h2,.flow h2 {
  font-size: 24px;
  margin-bottom: 25px;
		line-height: 34px;
}
	.flex2 ul {
  display: block;
	}
	.flex2 ul img {
  width: 100%;
	}
	.reason .dg img,.flow_dg img {
  width: 100%;
}
	.entry h3 {
  font-size: 18px;
}
	.privacy_policy {
  width: 100%;
  height: 250px;
	}
	.entry .hs-button {
  width: 100%;
  margin-bottom: 10px;
}
	.copy_r {
		font-size: 14px;
	}
	.fv_back {
  background-position: 0px 0px;
		  background-size: 43px;
}
	.issue-img img {
		width: 70%;
	}
	.flex4 ul {
	display: inherit;
}
	.flex4 li {
  width: 100%;
		margin-bottom: 20px;
}
}
@media only screen and (max-width: 483px) {
	.fv_back {
   background-size: 37px;
}
	.issue_back01 .issue01,.issue_back01 .issue02 {
  background: linear-gradient(to bottom, #283C6A 0%, #283C6A 33%, #FFF 33%, #FFF 100%);
}
	.issue_back01 .issue03 {
  background: linear-gradient(to bottom, #283C6A 0%, #283C6A 42%, #FFF 42%, #FFF 100%);
}
	.issue_back02 .issue04, .issue_back02 .issue05 {
  background: linear-gradient(to bottom, #C71528 0%, #C71528 40%, #FFF 40%, #FFF 100%);
}
	.issue_back02 .issue06 {
  background: linear-gradient(to bottom, #C71528 0%, #C71528 36%, #FFF 36%, #FFF 100%);
  padding-bottom: 10px;
}
}
