@charset "UTF-8";

/*common.cssに移動？　下層共通かも*/
/* MESSAGEの見だし*/
.title_nextsub {
	width: 100%;
}
.title_nextsub_inner {
	display: inline-block;
}
main > section:first-of-type > div:nth-of-type(2) h2.nextsub{
	font-size: 1.6rem;
	font-family: 'Corbel', Arial, sans-serif;
	font-style: italic;
}
					@media only screen and (max-width: 768px) {
						main > section:first-of-type > div:nth-of-type(2) h2.nextsub{
							font-size: 22px;
						}
						main > section:first-of-type > div:nth-of-type(2) h2 {
							margin-bottom: 2vw;
						}
					}
main > section:first-of-type p.title_nextsub-lead {
	font-size: 41px;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.5;
	margin-top: -4px;
	color: #fff;
}

/*　ADVANCEBOXの見だし*/
main > section.fourthbox > article.nextpage_ac .second_wrapper4{
  .title_nextsub {
    width: 100%;
    .title_nextsub-lead__sub-title{
      font-size: 32px;
      font-weight: 700;
      color: #fff;
    }
  }
  .text>p{
    color: #fff;
  }
  .photo{
    padding-top: 100px;
  }
}
main > section:nth-of-type(2) div:first-of-type .title_nextsub {
  width: 47%;
  margin: 0 0 0 auto;
}
main > section:nth-of-type(2) div:first-of-type .title_nextsub_inner {
	width: auto;
	display: inline-block;
}
main > section:nth-of-type(2) div.advantagebox h2.nextsub {
	margin-bottom: 2vw;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
	font-size: 1.2rem;
	font-family: 'Corbel', Arial, sans-serif;
	font-style: italic;
	color: #00A7FF;
	font-weight: 700;
	letter-spacing: -.01em;
}
main > section:nth-of-type(2) div:first-of-type p.title_nextsub-lead {
	font-size: 32px;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.5;
	margin-top: -4px;
	color: #00A7FF;
}
						@media only screen and (max-width: 768px) {
							main > section:nth-of-type(2) div.advantagebox h2.nextsub{
								font-size: 22px;
							}
							main > section:nth-of-type(2) div:first-of-type .title_nextsub {
								width: 100%;
								display: flex;
								justify-content: flex-start;
							}
							main > section:nth-of-type(2) div:first-of-type p.title_nextsub-lead {
                margin-bottom: 20px;
								font-size: 36px;
                line-height: 1.4;
							}
              main > section.fourthbox > article.nextpage_ac .second_wrapper4{
                .photo{
                  padding-top: 0;
                }
              }
						}
/*　TOP MESSAGEの見だし*/
main > section:nth-of-type(3) div:first-of-type .title_nextsub {
    width: 72vw;
	margin: 0 auto 40px;
}
main > section:nth-of-type(3) h2,
main > section:nth-of-type(3) div.topmessage:first-of-type {
	font-size: 1.6rem;
	font-family: 'Corbel', Arial, sans-serif;
	font-style: italic;
	color: #00A7FF;
	font-weight: 700;
	letter-spacing: -.01em;
}
main > section:nth-of-type(3) div:first-of-type p.title_nextsub-lead {
	font-size: 41px;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.5;
	margin-top: -4px;
	color: #00A7FF;
  font-style: normal;
}
main > section:nth-of-type(3) div:first-of-type p.title_nextsub-lead .sp-only{
  display: none;
}

					@media only screen and (max-width: 768px) {
            main > section:nth-of-type(3) div:first-of-type .title_nextsub{
              margin-bottom: 0;
            }
						main > section:first-of-type > div:nth-of-type(2) h2.title_nextsub {
							font-size: 1.8rem;
						}
						main > section:first-of-type p.title_nextsub-lead {
							font-size: 36px;
							line-height: 1.4;
						}
						main > section:nth-of-type(3) h2,
						main > section:nth-of-type(3) div.topmessage:first-of-type {
							font-size: 22px;
						}
						main > section:nth-of-type(3) div:first-of-type p.title_nextsub-lead {
							font-size: 36px;
						}
						main > section:nth-of-type(3) div:first-of-type p.title_nextsub-lead .sp-only{
              display: block;
            }
            main > section.fourthbox > article.nextpage_ac .second_wrapper4 {
                .title_nextsub {
                    margin-bottom: 30px;
                }
            }
					}

/*historyのページ*/
main > section:first-of-type > div.nextpage_div .second_wrapper,
main > section.secondbox > article.nextpage_ac .second_wrapper2 {
  position: relative;
}
main > section:first-of-type > div.nextpage_div .second_wrapper:before,
main > section.secondbox > article.nextpage_ac .second_wrapper2:before,
main > section.thirdbox > article.nextpage_ac .second_wrapper3:before,
main > section.fourthbox > article.nextpage_ac .second_wrapper4:before {
  content: "";
  position: absolute;
  width: 168px;
  height: 515px;
  z-index: 0;
}
main > section:first-of-type > div.nextpage_div .second_wrapper:before {
  top: 80px;
  left: 0;
  background: transparent url(../images/aboutus/history/part1.svg) no-repeat center center;
}
main > section.secondbox > article.nextpage_ac .second_wrapper2:before {
  top: 280px;
  right: 0;
  background: transparent url(../images/aboutus/history/part2.svg) no-repeat center center;
}
main > section.thirdbox > article.nextpage_ac .second_wrapper3:before {
  top: 0;
  left: 0;
  background: transparent url(../images/aboutus/history/part3.svg) no-repeat center center;
}
main > section.fourthbox > article.nextpage_ac .second_wrapper4:before {
  top: 220px;
  right: 0;
  background: transparent url(../images/aboutus/history/part4.svg) no-repeat center center;
}
main > section:first-of-type > div.nextpage_div .second_wrapper:after,
main > section.secondbox > article.nextpage_ac .second_wrapper2:after,
main > section.thirdbox > article.nextpage_ac .second_wrapper3:after,
main > section.fourthbox > article.nextpage_ac .second_wrapper4:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}
main > section:first-of-type > div.nextpage_div .second_wrapper {
  background:
    url('../images/aboutus/history/scale_white.png') no-repeat right 100%,
    linear-gradient(45deg,
      #0ADFD5 0%,
      #14BDEE 40%,
      #14BDEE 80%,
      #0ADFD5 100%
    );
}
main > section:first-of-type > div:nth-of-type(2){
  background: #EEF2F4 url(../images/aboutus/history/scale_blue.png) repeat-y right bottom;
}
main > section.secondbox > article.nextpage_ac .second_wrapper2:after {
  background: transparent url(../images/aboutus/history/scale_blue.png) repeat-y right bottom;
}
main > section.thirdbox > article.nextpage_ac .second_wrapper3:after {
  background: transparent url(../images/aboutus/history/scale_white.png) repeat-y right bottom;
}
main > section.fourthbox > article.nextpage_ac .second_wrapper4:after {
  background: transparent url(../images/aboutus/history/scale_white.png) repeat-y right bottom;
}
main > section.secondbox > article.nextpage_ac > article,
main > section.secondbox > article.nextpage_ac > article .second_wrapper2{
  position: static;
}
main > section.secondbox > article.nextpage_ac > article .second_wrapper2{
  padding: 12vh 10vw;
}
main > section.thirdbox > article.nextpage_ac > article {
  padding-top: 0;
  background-color: #14BDEE;
}
main > section.thirdbox > article.nextpage_ac .second_wrapper3 {
  padding: 16vh 10vw;
  border-bottom-right-radius: 40vw;
  background: #fff url(../images/aboutus/history/scale_blue.png) repeat-y right bottom;
}
main > section.fourthbox > article.nextpage_ac .second_wrapper4 {
  background:linear-gradient(45deg,
      #0ADFD5 0%,
      #14BDEE 60%
    );
    padding: 16vh 10vw 10vh;
    border-bottom-left-radius: 40vw;
}
main > section:nth-of-type(2) .parallax{
  padding: 0;
}
main > section:nth-of-type(2) .parallax article{
  max-width: inherit;
  padding-top: 180px;
}

@media only screen and (max-width: 768px) {

  main > section:first-of-type > div.nextpage_div .second_wrapper,
  main > section:first-of-type > div:nth-of-type(2),
  main > section.secondbox > article.nextpage_ac .second_wrapper2:after,
  main > section.thirdbox > article.nextpage_ac .second_wrapper3:after,
  main > section.fourthbox > article.nextpage_ac .second_wrapper4:after,
  main > section.thirdbox > article.nextpage_ac .second_wrapper3 {
    background-size: 6px;
  }

  main > section:first-of-type > div.nextpage_div .second_wrapper:before,
  main > section.secondbox > article.nextpage_ac .second_wrapper2:before,
  main > section.thirdbox > article.nextpage_ac .second_wrapper3:before,
  main > section.fourthbox > article.nextpage_ac .second_wrapper4:before {
    width: 141px;
  }

  main > section:first-of-type > div.nextpage_div .second_wrapper:before{
    top: 350px;
  }

  main > section.thirdbox > article.nextpage_ac .second_wrapper3:before{
    top: 230px
  }

  main > section.fourthbox > article.nextpage_ac .second_wrapper4:before{
    top: 120px;
  }

  main > section.thirdbox > article.nextpage_ac .second_wrapper3{
    padding-top: 22vh;
  }

}


.history .title_nextsub-lead__sub-title {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.3;
}

.history .messagebox {
	width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
.history .messagebox .inner {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 6%;
	margin-top: 4%;
}
.history .messagebox .inner .text {
	width: 47%;
}
.history .messagebox .inner .text p {
	font-size: 15px;
  font-weight: 300;
	margin-bottom: 1em;
	line-height: 2.1;
}
.history .messagebox .title_nextsub-lead__sub-title {
  margin-top: 15%;
  line-height: 1.5;
}
.history .messagebox .inner .photo {
	width: 47%;
	position: relative;
	z-index: 1;
}
.history .inner .photo .photo-caption {
  display: block;
  margin-top: 10px;
  font-size: 13px;
  color: #3d454b;
}
.history .year {
  position: absolute;
  top: 50px;
  right: 50px;
  z-index: 0;
}
.history .year img {
  width: 26px;
}
@media only screen and (max-width: 768px) {

  .history .secondbox .nextpage_ac>article{
    padding: 0;
  }
  .history .secondbox .nextpage_ac>article .second_wrapper2{
    padding: 12vh 10vw;
  }
  .history .advantagebox .title_nextsub-lead__sub-title{
    margin-bottom: 20px;
  }
  .history .title_nextsub-lead__sub-title {
    font-size: 24px !important;
    line-height: 1.5;
  }
	.history .messagebox .inner {
		width: 100%;
		display: flex;
		flex-direction: column;
		gap: 10%;
		margin-top: 4%;
	}
	.history .messagebox .inner .text {
		width: 100%;
		padding-top: 5vh;
	}
	.history .messagebox .inner .text p {
		margin-bottom: 1em;
    font-size: 16px;
		line-height: 1.9;
	}
  .history .firstbox .messagebox .inner .text p:nth-of-type(2){
    margin-bottom: 0;
  }
  .history .firstbox .messagebox .inner .text p:nth-of-type(3){
    margin-top: 0;
  }
  .history .firstbox .messagebox .inner .text p:nth-of-type(4){
    margin-bottom: 0;
  }
  .history .firstbox .messagebox .inner .text p:nth-of-type(5){
    margin-top: 0;
    margin-bottom: 0;
  }
  .history .firstbox .messagebox .inner .text p:nth-of-type(6){
    margin-top: 0;
  }
  .history .secondbox .advantagebox .inner .text p:nth-of-type(5){
    margin-top: 0;
  }
	.history .messagebox .inner .photo {
		width: 100%;
		position: relative;
		z-index: 1;
		margin-top: 6%;
	}
	.history .messagebox .inner .photo img {
		max-width: 100%;
		height: auto;
	}
  .history .year {
    right: 10px;
  }
  .history .year img{
    width: 17px;
  }
  .history .firstbox .year {
    top: 240px;
  }
  .history .secondbox .year {
    top: 80px;
  }
  .history .thirdbox .year {
    top: 140px;
  }
}
/*OUR ADVANTAGE*/
.history .advantagebox {
	width: 100%;
	color: #00A7FF;
}
.history .advantagebox .title_nextsub-lead__sub-title{
	color: #00A7FF;
}
.history .advantagebox .inner {
  max-width: 1100px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 3%;
  margin: 3% auto 0;
}
.history .advantagebox .inner .text {
	width: 45%;
	order: 2;
}
@media only screen and (max-width: 768px) {
  .history .advantagebox .inner .text {
    order: 1;
    display: flex;
    flex-direction: column;
  }
}
.history .advantagebox .inner .text p {
	font-size: 15px;
  font-weight: normal;
	margin-bottom: 1.5em;
	color: #00A7FF;
}
.history .advantagebox .inner .text>p {
	color: #000;
  line-height: 2.1;
}
.history .advantagebox .inner .photo {
	width: 47%;
	order: 1;
}
@media only screen and (max-width: 768px) {
  .history .advantagebox .inner .photo {
    order: 2;
  }
}
.history .advantagebox .inner .photo img {
	max-width: 100%;
	height: auto;
}
@media only screen and (max-width: 768px) {
	.history .advantagebox {
		width: 100%;
		color: #00A7FF;
	}
	.history .advantagebox .inner {
		width: 100%;
		display: flex;
		flex-direction: column;
		gap: 10%;
		margin-top: 4%;
	}
	.history .advantagebox .inner .text {
		width: 100%;
	}
	.history .advantagebox .inner .text p {
		font-size: 16px;
		margin-bottom: 0;
	}
	.history .advantagebox .inner .text p span {
    font-size: 13px;
	}
	.history .advantagebox .inner .text_photo {
		width: 100%;
		position: relative;
		z-index: 1;
		margin: 20px auto 48px;
	}
	.history .advantagebox .inner .text_photo::before {
		content: "";
		position: absolute;
		bottom: -30px;
		right: -30px;
		width: 100%;
		height: 100%;
		background-image: none;
		background: linear-gradient(135deg, #E3FFCD 0, #E3FFCD 40%, #8CFFE8 80%, #8CFFE8 100%);
		background-position: 0 0, 3px 3px;
		z-index: -1;
		border-radius: 16px;
	}
	.history .advantagebox .inner .text_photo img {
		max-width: 100%;
		height: auto;
		border-radius: 16px;
		border: 1px solid #ddd;
	}
	.history .advantagebox .sakaisoken {
    order: 1;
		width: 100%;
		border: 1px solid #00A7FF;
		background: rgba(255, 255, 255, 0.6);
		border-radius: 16px;
		padding: 20px;
		box-sizing: border-box;
	}
	.history .advantagebox .sakaisoken .title {
		text-align: center;
		margin-bottom: .5em;
	}
	.history .advantagebox .sakaisoken .title img {
		max-width: 240px;
    width: 100%;
		height: auto;
	}
	.history .advantagebox .sakaisoken ul {
		width: 100%;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.history .advantagebox .sakaisoken ul li {
		width: 100%;
		text-align: center;
		box-sizing: border-box;
		padding-top: 8px;
	}
	.history .advantagebox .sakaisoken ul li:first-child,
	.history .advantagebox .sakaisoken ul li:nth-child(2),
	.history .advantagebox .sakaisoken ul li:nth-child(3) {
		border-bottom: 1px dashed #A1EBFD;
		padding-bottom: 8px;
	}
	.history .advantagebox .sakaisoken ul li:nth-child(2n) {
		border-left: none;
	}
	.history .advantagebox .sakaisoken ul li .category {
		position: relative;
		padding-bottom: .5em;
    line-height: 1;
	}
	.history .advantagebox .sakaisoken ul li .category::before {
		position: absolute;
		border-bottom: 2px solid #00A7FF;;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		width: 10px;
		content: '';
	}
	.history .advantagebox .sakaisoken ul li .name {
		font-size: 18px;
		font-weight: bold;
		margin-bottom: 0;
		margin-top: .1em;
	}
	.history .advantagebox .sakaisoken ul li .name span {
		display: block;
		font-size: 10px;
		margin-top: -.25em;
	}
	.history .advantagebox .inner .photo {
		width: 100%;
		margin-top: 10%;
	}
	.history .advantagebox .inner .photo img {
		max-width: 100%;
		height: auto;
	}
}

.history .second_wrapper3 .inner {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  flex-direction: row-reverse;
}

main > section:nth-of-type(3) div:first-of-type .title_nextsub{
  width: 92%;
  max-width: 1100px;
}

.history .second_wrapper4 .inner {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
}

.history .fifthbox .timeline{
  width: 90%;
  max-width: 610px;
  margin: 0 auto;
}
.history .fifthbox .timeline dl{
  display: flex;
  font-size: 16px;
}
.history .fifthbox .timeline dl dt,
.history .fifthbox .timeline dl dd{
  padding: 7px;
}
.history .fifthbox .timeline dl dt{
  width: 110px;
  background-color: #00a7ff;
  border-bottom: 2px dotted #fff;
  font-weight: normal;
  color: #fff;
  text-align: center;
}
.history .fifthbox .timeline dl dd{
  width: calc(100% - 110px);
  padding-left: 20px;
  border-bottom: 2px dotted #00a7ff;
}
.history .fifthbox .timeline dl:last-of-type dt,
.history .fifthbox .timeline dl:last-of-type dd{
  border: none;
}

@media only screen and (max-width: 768px) {
  .history .fifthbox .timeline dl dt{
    width: 80px;
    padding: 15px 0;
  }
  .history .fifthbox .timeline dl dd{
    width: calc(100% - 80px);
    padding: 15px 0 15px 10px;
  }
}

/* ===== セクションタイトル ===== */
div.section__title {
  padding-top: 180px;
  margin-bottom: 60px;
  color: #00a7ff;
  text-align: center;
}

div.section__title h2.section__title-text {
  margin-bottom: 0;
  letter-spacing: 15px;
}

div.section__title h2.section__title-text span {
  display: block;
  padding: .4rem .5rem .5rem;
  font-weight: bold;
  line-height: 1.3;
}

div.section__title h2.section__title-text span.section__title-main {
  margin: 0 auto;
  font-size: 33px;
  font-style: normal;
  background-color: transparent;
}

div.section__title p.section__title-copy {
    font-size: 13px;
    font-family: Corbel;
    font-weight: 600;
    letter-spacing: 2px;
    line-height: 1.2;
}

@media only screen and (max-width: 768px) {

  div.section__title {
    padding-top: 120px;
  }

  main > section:nth-of-type(3) div:first-of-type .title_nextsub{
    width: 100%;
  }

  div.section__title h2.section__title-text span.section__title-main{
    font-size: 24px;
    letter-spacing: 7px;
  }

}

h1.maintitle b {
font-weight: bold;
}
h1.maintitle b b {
opacity: 0;
display: inline-block;
}
h1.maintitle.aos-init.aos-animate b b {
animation: h1_anim 2s cubic-bezier(0,1.13,.52,.91) forwards;
}

@keyframes h1_anim {
0%{
opacity: 0;
}
100%{
opacity: 1;
transform: none;
}
}
h1.maintitle b b:nth-of-type(1) {
animation-delay: .1s !important;
transform: translateX(-1rem);
}
h1.maintitle b b:nth-of-type(2) {
animation-delay: .15s !important;
transform: translateX(-1.5rem);
}
h1.maintitle b b:nth-of-type(3) {
animation-delay: .2s !important;
transform: translateX(-2rem);
}
h1.maintitle b b:nth-of-type(4) {
animation-delay: .25s !important;
transform: translateX(-2.5rem);
}
h1.maintitle b b:nth-of-type(5) {
animation-delay: .3s !important;
transform: translateX(-3rem);
}
h1.maintitle b b:nth-of-type(6) {
animation-delay: .35s !important;
transform: translateX(-3.5rem);
}
h1.maintitle b b:nth-of-type(7) {
animation-delay: .4s !important;
transform: translateX(-4rem);
}
h1.maintitle b b:nth-of-type(8) {
animation-delay: .45s !important;
transform: translateX(-4.5rem);
}
h1.maintitle span {
opacity: 0;
transition: all .4s ease-in-out;
transition-delay: 1s;
}
h1.maintitle.aos-init.aos-animate span {
opacity: 1;
}

/* Parallax Animation */
[data-parallax] {
  transition: transform 0.2s cubic-bezier(0.2, 0, 0.3, 1);
}
