@charset "UTF-8";
/* CSS Document */

@media screen and (min-width:751px) {
/* ---------------------------------------------------------
#main
----------------------------------------------------------*/
#main {
	position: relative;
	width: 100%;
	height: 400px;
	background: url(../img/main.jpg) no-repeat center;
	background-size: cover;
}
#main .arrow-box {
  position: absolute;
  top: 77px;
  right: 0;
  width: 1012px;
  height: 245px;
  background: url(../img/bg_arrow.png) no-repeat;
  background-size: 1013px auto;
  padding: 55px 0 0 102px;
  box-sizing: border-box;
}
#main .arrow-head {
  display: flex;
  align-items: center;
  height: 38px;
}
#main .arrow-head .logo img {
  width: 224px;
  height: auto;
}
#main p {
  display: flex;
  align-items: center;
	font-size: 20px;
  font-weight: bold;
  color: #e6132d;
	letter-spacing: 1px;
  margin-left: 15px;
}
#main p .txt-ja {
  font-size: 12px;
  font-weight: normal;
  margin-left: 9px;
}
h1 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 30px;
  font-weight: 500;
  line-height: 1.5;
	letter-spacing: 1px;
  color: #014099;
  padding: 18px 0 0;
}
#main .pic {
  position: absolute;
  top: 17px;
  left: 764px;
}
#main .pic img {
  width: 113px;
  height: auto;
}
#story02 #main,
#story03 #main {
  height: 280px;
}
#story02 #main .arrow-box,
#story03 #main .arrow-box {
  position: absolute;
  top: 35px;
  width: 986px;
  height: 211px;
  background: url(../img/bg_arrow_02.png) no-repeat;
  background-size: contain;
  padding: 43px 0 0 90px;
}
#story02 h1,
#story03 h1 {
  font-size: 26px;
}
#story02 #main .arrow-head .logo img,
#story03 #main .arrow-head .logo img {
  width: 202px;
  height: auto;
}
#story02 #main p,
#story03 #main p {
	font-size: 18px;
}
#story02 #main p .txt-ja,
#story03 #main p .txt-ja {
  font-size: 11px;
}
#story02 #main .pic,
#story03 #main .pic {
  position: absolute;
  top: 18px;
  left: 675px;
}
#story02 #main .pic img,
#story03 #main .pic img {
  width: 86px;
  height: auto;
}

/* ---------------------------------------------------------
.about-box
----------------------------------------------------------*/
.about-box {
  width: 100%;
  background-color: #e5ecf5;
}
.about-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 980px;
  padding: 30px 73px 30px 70px;
  margin: 0 auto;
  box-sizing: border-box;
}
.about-box .txt-block {
  width: 440px;
}
.about-box .pic-block img {
  width: 361px;
  height: auto;
}
.about-box .about-ttl {
  font-size: 18px;
  font-weight: bold;
  color: #014099;
}
.about-box .about-ttl::before {
  content: '';
  display: inline-block;
  width: 52px;
  height: 46px;
  vertical-align: middle;
  background: url(../img/icon_kurutoga.png) no-repeat;
  background-size: 52px auto;
  margin-right: 14px;
}
.about-box p {
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 1.8;
  padding: 12px 0 13px;
}
.about-box .about-link {
  font-size: 16px;
  background: url(../../../img/recruit_icon_arrow.png) no-repeat left 2px;
  background-size: 9px auto;
  padding-left: 19px;
  margin-left: 3px;
}

/* ---------------------------------------------------------
.step-box
----------------------------------------------------------*/
.step-box {
  padding: 60px 0;
}
.btn-continue + .step-box {
  padding: 100px 0 120px;
}
.step-box ul {
  display: flex;
  width: 910px;
  list-style: none;
  margin: 0 auto;
}
.step-box li.cr,
.step-box li a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  width: 300px;
  height: 64px;
  font-size: 18px;
  font-weight: bold;
  color: #014099;
  line-height: 1;
  vertical-align: text-bottom;
  background: url(../img/bg_step.png) no-repeat;
  background-size: 300px auto;
  padding: 0 0 19px 32px;
  box-sizing: border-box;
}
.step-box li.cr,
.step-box li a:hover {
  color: #fff;
  text-decoration: none;
  background: url(../img/bg_step_cr.png) no-repeat;
  background-size: 300px auto;
}
.step-box li .num {
  font-size: 30px;
  margin-bottom: -2px;
}
.step-box li .txt-ja {
  font-size: 20px;
  font-weight: 500;
  margin-left: 13px;
}
.step-box li:nth-child(2) {
  margin: 0 5px;
}

/* ---------------------------------------------------------
#sec1
----------------------------------------------------------*/
#sec1,
#sec2,
#sec3,
#sec4 {
  display: flex;
  justify-content: space-between;
  width: 980px;
  margin: 0 auto;
}
#sec1,
#sec4 {
  flex-direction: row-reverse;
}
#sec2 {
  display: block;
  margin-bottom: 120px;
}
#sec3 {
  margin-bottom: 120px;
}
#sec4 {
  margin-bottom: 30px;
}
section .txt-block {
  width: 540px;
}
section .pic-block {
  width: 380px;
}
section .pic-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 380px;
}
section img {
  width: 100%;
  height: auto;
}
section:not(#entry):not(#recommend) h2 {
  width: 100%;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 26px;
  font-weight: 500;
  color: #014099;
  background: url(../img/line_h2.png) no-repeat left bottom;
  background-size: auto 1px;
  padding: 10px 0 20px;
  margin-bottom: 34px;
}
section:not(#entry):not(#recommend) p {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 30px;
}
section figure {
  position: relative;
  margin: 0;
  padding: 0;
}
section .fig1 {
  width: 380px;
  margin-bottom: 10px;
}
section .fig2,
section .fig3 {
  width: 185px;
}
section .fig1 figcaption {
  position: absolute;
  top: 214px;
  left: 145px;
  width: 288px;
  height: 83px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
  color: #333;
  font-style: italic;
  background-color: #fff;
  padding: 13px 20px 0 20px;
  box-sizing: border-box;
  z-index: 2;
}
#sec3 .fig1 figcaption {
  width: 280px;
  height: 113px;
  top: 196px;
}
#sec4 .fig1 figcaption {
  top: inherit;
  bottom: 40px;
}
section .fig2 figcaption,
section .fig3 figcaption {
  font-size: 12px;
  line-height: 1.6;
  color: #333;
  padding-top: 6px;
}

#story02 #sec1 .fig1 figcaption {
  height: 113px;
  top: 196px;
}
#story02 #sec3 .fig1 figcaption {
  top: 214px;
  height: 83px;
}
#story02 #sec4 .fig1 figcaption {
  width: 260px;
  height: 113px;
}
#story03 #sec1 {
  margin-bottom: 120px;
}
#story03 .fig1 figcaption {
  width: 270px;
  height: 113px;
  top: 196px;
}
#story03 #sec3 .fig1 figcaption {
  top: 214px;
  height: 83px;
}
#story03 #sec4 {
  display: block;
}
#story03 #sec4 .txt-block,
#story03 #sec4 .pic-block {
  width: 100%;
}
#story03 #sec4 .fig1 {
  width: 100%;
}
#story03 #sec4 .fig1 img {
  width: 100%;
  height: auto;
}
.pic-middle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 980px;
  height: 320px;
  font-size: 26px;
  font-weight: 500;
  font-style: italic;
  letter-spacing: 1px;
  color: #fff;
  background: url(../img/01/pic_04.jpg) no-repeat;
  background-size: cover;
  margin: 90px auto 120px;
}
#story02 .pic-middle {
  background: url(../img/02/pic_04_sp.jpg) no-repeat;
  background-size: cover;
}
  
.btn-continue a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 163px;
  height: 48px;
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  border-radius: 4px;
  border: 2px solid #e6132d;
  margin: 0 auto;
  box-sizing: border-box;
}
.btn-continue a:hover {
  color: #e6132d;
  text-decoration: none;
}

}


/* ---------------------------------------------------------
.jet-box
----------------------------------------------------------*/
.jet-box {
	padding: 0 0 10px;
}
.jet-box h2 {
	font-family: 'Open Sans',sans-serif;
	font-weight: bold;
	font-size: 48px;
	color: #e6132d;
	text-align: center;
	margin-bottom: 30px;
}
.jet-box h2 .txt-ja {
	display: block;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	padding-top: 5px;
}
.jet-box .wrapper {
	display: -webkit-flex; /* Safari */
	display: flex;	
}
.jet-box .pic {
	width: 53.3%;
	height: 400px;
	background: url(../../../img/story_pic_01.jpg) no-repeat center;
	background-size: cover;
}
.jet-box .wrapper:last-of-type {
	position: relative;
	padding-right: 53.3%;
}
.jet-box .wrapper:last-of-type .pic {
	position: absolute;
	right: 0;
}
.jet-box .wrapper:last-of-type .pic {
	background: url(../../../img/story_pic_02.jpg) no-repeat center;
	background-size: cover;
}
.jet-box .txt {
	position: relative;
	width: 46.7%;
	height: 400px;
	letter-spacing: 1px;
	text-align: center;
	background-color: #f5f5f5;
	overflow: hidden;
}
.jet-box .wrapper:last-of-type .txt {
	width: 100%;
}
.jet-box .txt .logo {
	padding: 112px 0 0;
}
.jet-box .wrapper:last-of-type .logo {
	padding: 93px 0 0;
}
.jet-box .txt .logo img {
	width: 155px;
	height: auto;
}
.jet-box .wrapper:last-of-type .logo img {
	width: 195px;
}
.jet-box .txt h3 {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.5;
	padding: 13px 0 24px;
}
.jet-box .btn a {
	position: relative;
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: center; /* Safari */
	justify-content: center;
	-webkit-align-items: center; /* Safari */
	align-items: center;
	width: 199px;
	height: 48px;
	color: #fff;
	font-size: 16px;
	background-color: #fff;
	letter-spacing: 1px;
	border: 2px solid #e6132d;
	border-radius: 5px;
	margin: 0 auto;
	z-index: 2;
	overflow: hidden;
}
.jet-box .wrapper:last-of-type .btn a {
	width: 280px;
}
.jet-box .btn a:hover {
	color: #e6132d;
	text-decoration: none;
}
.jet-box .pen {
	position: absolute;
	top: 49px;
	left: 71.4%;
	margin-left: 0;
	transition: margin .5s 1s cubic-bezier(0.170, 0.935, 0.305, 1.000);
}
.jet-box .wrapper:last-of-type .pen {
	top: 40px;
}
.jet-box .pen img {
	width: 155px;
	height: auto;
}
.jet-box .wrapper:last-of-type .pen img {
	width: 157px;
}
.jet-box .line {
	position: absolute;
	top: 335px;
	left: 0;
	width: 71.6%;
	height: 1px;
	background-color: #0d4ea6;
	margin-left: 0;
	transition: margin .5s 1s cubic-bezier(0.170, 0.935, 0.305, 1.000);
}
.jet-box .wrapper:last-of-type .line {
	top: 336px;
	background-color: #181818;
}


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

/* ---------------------------------------------------------
#main sp
----------------------------------------------------------*/
#main {
  position: relative;
  width: 100%;
	height: 45vw;
	background: url(../img/main_sp.jpg) no-repeat center;
	background-size: cover;
  margin-bottom: 37vw;
}  
#main .arrow-box {
  position: absolute;
  top: 30.6vw;
  width: 100%;
  background: url(../img/bg_arrow_sp.png) no-repeat;
  background-size: contain;
  padding: 6.6vw 0 0 10.6vw;
  box-sizing: border-box;
}
#main .arrow-head {
  display: flex;
  align-items: center;
  height: 6.7vw;
}
#main .arrow-head .logo img {
  width: 39.8vw;
  height: auto;
}
#main p {
	font-family: 'Open Sans',sans-serif;
	font-size: 12px;
  font-weight: bold;
  color: #e6132d;
	letter-spacing: 1px;
  margin-left: 15px;
}
#main p .txt-ja {
  display: block;
  width: 130%;
  font-size: 10px;
  font-weight: normal;
  transform: scale(0.6);
  transform-origin: left center;
  padding-top: 2px;
}
h1 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 21px;
  font-weight: 500;
  line-height: 1.4;
	letter-spacing: 1px;
  color: #014099;
  padding: 3.6vw 0 0;
}
#main .pic {
  position: absolute;
  top: 6.1vw;
  left: 74.4vw;
}
#main .pic img {
  width: 21.2vw;
  height: auto;
}

#story02 #main,
#story03 #main {
  background: none;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  margin-bottom: 0;
}
#story02 #main .arrow-box,
#story03 #main .arrow-box {
  position: relative;
  top: 0;
  background: none;
  padding: 9.3vw 0 9.3vw 10.6vw;
  box-sizing: border-box;
}
#story02 h1,
#story03 h1 {
  line-height: 1.3;
}
#story02 #main .pic,
#story03 #main .pic {
  display: none;
}

/* ---------------------------------------------------------
.about-box
----------------------------------------------------------*/
.about-box {
  width: 100%;
  background-color: #e5ecf5;
  padding: 4vw;
  box-sizing: border-box;
}
.about-inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  margin: 0 auto;
}
.about-box .txt-block {
  width: 50%;
}
.about-box .pic-block {
  width: 45%;
}  
.about-box .pic-block img {
  width: 100%;
  height: auto;
}
.about-box .about-ttl {
  font-size: 14px;
  font-weight: bold;
  color: #014099;
}
.about-box .about-ttl::before {
  content: '';
  display: inline-block;
  width: 9.3vw;
  height: 8.1vw;
  vertical-align: middle;
  background: url(../img/icon_kurutoga.png) no-repeat;
  background-size: contain;
  margin-right: 2.4vw;
}
.about-box p {
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding: 1.8vw 0 2.4vw;
}
.about-box .about-link {
  font-size: 12px;
  background: url(../../../img/recruit_icon_arrow.png) no-repeat left 2px;
  background-size: 6px auto;
  padding-left: 16px;
}


/* ---------------------------------------------------------
.step-box
----------------------------------------------------------*/
.step-box {
  padding: 25px 0 58px;
}
.btn-continue + .step-box {
  padding: 60px 0 80px;
}
.step-box ul {
  display: flex;
  justify-content: center;
  width: 100%;
  list-style: none;
  margin: 0 auto;
}
.step-box li.cr,
.step-box li a {
  display: block;
  width: 30.6vw;
  height: 12vw;
  font-size: 10px;
  font-weight: bold;
  color: #014099;
  line-height: 1;
  vertical-align: text-bottom;
  background: url(../img/bg_step_sp.png) no-repeat;
  background-size: contain;
  padding: 1.3vw 0 0 1.7vw;
  box-sizing: border-box;
}
.step-box li.cr,
.step-box li a:hover {
  color: #fff;
  text-decoration: none;
  background: url(../img/bg_step_cr_sp.png) no-repeat;
  background-size: contain;
}
.step-box li .num {
  font-size: 16px;
  margin-bottom: -2px;
}
.step-box li .txt-ja {
  display: block;
  font-size: 13px;
  font-weight: 500;
  padding-top: 1vw;
}


/* ---------------------------------------------------------
#sec1
----------------------------------------------------------*/
#sec1,
#sec2,
#sec3,
#sec4 {
  width: 100%;
  padding: 0 4vw;
  box-sizing: border-box;
  margin-bottom: 73px;
}
#sec2 {
  margin-bottom: 80px;
}
#sec3 {
  margin-bottom: 78px;
}
#sec4 {
  margin-bottom: 40px;
}
section .txt-block {
  width: 100%;
}
section .pic-block {
  width: 100%;
}
section .pic-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
section img {
  width: 100%;
  height: auto;
}
section:not(#entry):not(#recommend) h2 {
  width: 100%;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 21px;
  font-weight: 500;
  color: #014099;
  background: url(../img/line_h2.png) no-repeat left bottom;
  background-size: auto 1px;
  padding-bottom: 16px;
  margin-bottom: 17px;
}
section:not(#entry):not(#recommend) p {
  font-size: 15px;
  line-height: 1.8;
  text-align: justify;
  margin-bottom: 28px;
}
section figure {
  position: relative;
  margin: 0;
  padding: 0;
}
section .fig1 {
  width: 100%;
  margin-bottom: 2.4vw;
}
section .fig2,
section .fig3 {
  width: 44.8vw;
}
section .fig1 figcaption {
  position: absolute;
  top: 51.7vw;
  right: 0;
  width: 58.7vw;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.8;
  color: #333;
  font-style: italic;
  background-color: #fff;
  padding: 3.2vw 0 3.2vw 4.2vw;
  box-sizing: border-box;
  z-index: 2;
}
#sec3 .fig1 figcaption {
  top: 47.2vw;
  width: 64.8vw;
  text-align: justify;
}
#sec4 .fig1 {
  width: 66.7vw;
  margin: 0 auto;
}
#sec4 .fig1 figcaption {
  top: inherit;
  right: -16.6vw;
  bottom: 40px;
  width: 64.2vw;
  letter-spacing: 0.05em;
}
section .fig2 figcaption,
section .fig3 figcaption {
  font-size: 12px;
  line-height: 1.5;
  color: #333;
  padding-top: 6px;
}
#story02 #sec1 .fig1 figcaption {
  top: 47.2vw;
  width: 56.8vw;
  letter-spacing: 0.08em;
}
#story02 #sec3 .fig1 figcaption {
  top: 51.7vw;
  width: 64.7vw;
  letter-spacing: 0.03em;
}
#story02 #sec4 .fig1 figcaption {
  right: -8vw;
  width: 54.8vw;
  letter-spacing: 0.15em;
}
#story03 .fig1 figcaption {
  top: 47.2vw;
  width: 56.8vw;
  letter-spacing: 0.08em;
}
#story03 #sec3 .fig1 figcaption {
  top: 51.7vw;
  width: 64.7vw;
  letter-spacing: 0.08em;
}
#story03 #sec4 .fig1 {
  width: 100vw;
  margin-left: -4vw;
}
.pic-middle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 42.7vw;
  font-size: 17px;
  font-weight: 500;
  font-style: italic;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 1px;
  color: #fff;
  background: url(../img/01/pic_04.jpg) no-repeat;
  background-size: cover;
  margin: 0 auto 77px;
}
#story02 .pic-middle {
  background: url(../img/02/pic_04_sp.jpg) no-repeat;
  background-size: cover;
}

.btn-continue a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 37.3vw;
  height: 10.6vw;
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  border: 2px solid #e6132d;
  border-radius: 4px;
  margin: 0 auto;
}
  
/* ---------------------------------------------------------
.jet-box sp
----------------------------------------------------------*/
.jet-box {
	padding: 0;
  margin-bottom: 10px;
}
.jet-box h2 {
	font-size: 33px;
	margin-bottom: 20px;
}
.jet-box h2 .txt-ja {
	font-size: 13px;
	padding-top: 9px;
}
.jet-box .wrapper {
	display: block;
}
.jet-box .pic {
	width: 100%;
	height: 200px;
	background: url(../../../img/story_pic_01.jpg) no-repeat center;
	background-size: cover;
}
.jet-box .wrapper:last-of-type {
	padding-right: 0;
}
.jet-box .wrapper:last-of-type .pic {
	position: relative;
	width: 100%;
	background: url(../../../img/story_pic_02.jpg) no-repeat center;
	background-size: cover;
}
.jet-box .txt {
	width: 100%;
	height: 200px;
}
.jet-box .txt .logo {
	padding: 31px 0 0;
}
.jet-box .wrapper:last-of-type .logo {
	padding: 24px 0 0;
}
.jet-box .txt .logo img {
	width: 128px;
	height: auto;
}
.jet-box .wrapper:last-of-type .logo img {
	width: 179px;
}
.jet-box .txt h3 {
	position: relative;
	font-size: 17px;
	line-height: 1.5;
	padding: 10px 0 15px;
	z-index: 3;
}
.jet-box .btn a {
	width: 166px;
	height: 40px;
	font-size: 15px;
  background-color: #e6132d;
	letter-spacing: 0;
	border-radius: 5px;
}
.jet-box .wrapper:last-of-type .btn a {
	width: 245px;
}
.jet-box .btn a:hover {
	color: #e6132d;
	text-decoration: none;
}
.jet-box .pen {
	position: absolute;
	top: inherit;
	bottom: 2.2vw;
	left: 71%;
	pointer-events: none;
	z-index: 2;
}
.jet-box .wrapper:last-of-type .pen {
	top: inherit;
	bottom: 2.1vw;
	left: 72%;
}
.jet-box .pen img {
	width: 93px;
	height: auto;
}
.jet-box .wrapper:last-of-type .pen img {
	width: 91px;
}
.jet-box .line {
	position: absolute;
	top: inherit;
	bottom: 2.2vw;
	left: 0;
	width: 71%;
	height: 1px;
	background-color: #0d4ea6;
}
.jet-box .wrapper:last-of-type .line {
	top: inherit;
	bottom: 2.2vw;
	width: 72.3%;
	background-color: #181818;
}

}


@media screen and (max-width:640px) {
h1 {
  font-size: 19px;
}
#main p br {
	display: none;
}

}
