@charset "utf-8";

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

img {
  max-width: 100%;
  height: auto;
}
.img-orig-size {
  width: auto;
}
.img-fixed-400px {
  width: 400px;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: transparent;
  opacity: 0.8;
}
a:hover img {
  opacity: 0.8;
}
.pc_area {
  display: block !important;
}
.sp_area {
  display: none !important;
}
@media only screen and (max-width: 750px) {
  .pc_area {
    display: none !important;
  }
  .sp_area {
    display: block !important;
  }
}

@media only screen and (max-width: 750px) {
  .pc_area02 {
    display: none !important;
  }
}

@media screen and (max-width: 640px) {
  .spbr_none_box br {
    display: none;
  }
}

.link_img01 a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  transition-duration: 0.2s;
}

.link_img02 a:hover img {
  filter: contrast(200%);
  transition-duration: 0.2s;
}

.row {
  margin: 0;
  padding: 0;
  width: auto;
  overflow: hidden;
}
.grid-3 {
  width: 100%;
}
.grid-3 img{
  width: 100%;
}

@media (min-width: 650px) {
  .row {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
  }
  .grid-12,
  .grid-9,
  .grid-6,
  .grid-4,
  .grid-3,
  .menu_grid-4 {
    float: left;
    padding: 0 0;
  }
  .grid-12 {
    width: 100%;
  }
  .grid-9 {
    width: 75%;
  }
  .grid-6 {
    width: 50%;
  }
  .grid-4 {
    width: 33.3333%;
  }
  .grid-3 {
    width: 25%;
  }
  .menu_grid-4 {
    width: 33.3333%;
  }
  .grid-center {
    margin-left: auto;
    margin-right: auto;
  }
}

.row_box2 {
  margin: 0;
  padding: 0;
  width: auto;
  overflow: hidden;
}

@media (min-width: 750px) {
  .row_box2 {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0;
    display: flex;
  }
  .grid-9_box2,
  .grid-3_box2 {
    padding: 0 0;
  }
  .grid-9_box2 {
    width: 75%;
  }
  .grid-3_box2 {
    width: 25%;
  }
  .grid-center_box2 {
    margin-left: auto;
    margin-right: auto;
  }
}

.block-grid {
  width: auto;
  overflow: hidden;
  list-style: none;
  margin: 0 -1% 20px;
  padding: 0;
}
.block-grid li {
  float: left;
  margin: 0 1% 20px;
  padding: 0;
}
.block-grid a {
  text-decoration: none;
  font-size: 1.6em;
}
@media (min-width: 300px) {
  .block-grid-1-2-3 li {
    width: 98%;
  }
}
@media (min-width: 760px) {
  .block-grid-1-2-3 li {
    width: 31.3333%;
  }
  .block-grid-1-2-3 li:nth-child(2n + 1) {
    clear: none;
  }
  .block-grid-1-2-3 li:nth-child(3n + 1) {
    clear: both;
  }
}

.movie-wrap {
  position: relative;
  padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
  height: 0;
  overflow: hidden;
}

.movie-wrap video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

video {
  width: 100%;
}

.video__video {
  border: none;
  outline: none;
  height: 720px;
  width: 100%;
  object-fit: cover;
}

/* ----------------------------------------
	Anime
---------------------------------------- */

.fadein {
  opacity: 0;
  transform: translateY(20px);
  transition: all 1s;
}

/* ----------------------------------------
	t-link
---------------------------------------- */

.link-t-a {
  position: relative;
  top: -80px;
  display: block;
}

@media screen and (max-width: 640px) {
  .link-t-a {
    top: -40px;
  }
}

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

/* pc */
.inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

/* ----------------------------------------
	section1
---------------------------------------- */

.section1 {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}

.section1_box01 {
  max-width: 1386px;
  margin: 0 auto;
  padding: 0px 0 115px;
}
.section1_box02 {
  margin: 0 0 0 0;
  padding: 100px 0 0 0;
}

@media screen and (max-width: 660px) {
  .section1 {
    margin: 0 0 0 0;
  }

  .section1_box01 {
    max-width: 1386px;
    margin: 0 auto;
    padding: 0;
  }
  .section1_box02 {
    margin: 0 0 0 0;
    padding: 30px 0 0 0;
  }
}

/* ----------------------------------------
	section2
---------------------------------------- */

.section2 {
  margin: 0 0 0 0;
  padding: 120px 0 0 0;
}
.section2_box01 {
  max-width: 100%;
  width: 788px;
  margin: auto;
}

.section2_ttl{
  font-size: 74px;
  font-family: Impact;
  line-height: 74px;
  color: #C17148;
  text-align: center;
  letter-spacing: 0.3rem;
}
.section2_ttl img{
  height: 101px;
  margin: 0 auto;
}
.section2_subttl{
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #505F6D;
  margin: 15px 0 60px;
  letter-spacing: 0.2rem;
}
.section2_box01_txt{
  font-size: 16px;
  line-height: 50px;
  letter-spacing: 0.15rem;
}
.section2_box02{
  margin: 100px auto 50px;
  max-width: 770px;
  width: 100%;
}
.section2_box02 img{
  width: 100%;
  margin: 0 0 0 auto;
}
.section2_box03{
  display: flex;
  width: 1080px;
  max-width: 100%;
  margin: 0 auto;
}
.section2_box03 img{
  width: 42%;
  height: 100%;
  margin: 120px auto 0 auto;
}
.section2_box03 img:nth-child(2){
  width: 58%;
  height: 100%;
  margin: 0 auto 0 auto;
}
.section2_box04{
  margin: 160px auto 0;
  width: 100%;
  max-width: 1225px;
}
.section2_box04 img{
  width: 83%;
    margin: 0 auto 0 0;
}
.section2_box05{
  margin: 200px auto 0;
  width: 100%;
  max-width: 897px;
}
.section2_box05 img{
  width: 100%;
    margin: 0 auto;
}

@media screen and (max-width: 660px) {
  .section2 {
    padding: 95px 0 0;
  }
  .section2_ttl{
    font-size: 47px;
    line-height: 1.2;
    letter-spacing: 0.1rem;
  }
  .section2_ttl img{
    height: 48px;
    margin: 0 auto;
  }
  .section2_subttl{
    margin: 5px 0 40px;
    line-height: 30px;
    font-size: 18px;
  }
  .section2_box01_txt{
    padding: 0 10px;
    line-height: 40px;
  }
  .section2_box02{
    margin: 80px auto 0;
    padding:0 10px;
  }
  .section2_box02 img{
    width: 100%;
  }
  .section2_box03{
    margin: 0 auto;
    padding: 10px;
    display: block;
  }
  .section2_box03 img{
    width: 100%;
    margin: 60px 0 0;
  }
  .section2_box03 img:nth-child(2){
    width: 100%;
    margin: 0;
  }
  .section2_box04{
    margin: 50px auto 0;
    padding-right: 10px;
  }
  .section2_box04 img{
    width: 100%;
  }
  .section2_box05{
    margin: 130px auto 0;
  }
  .section2_box05 img{
    width: 100%;
  }
}

/* ----------------------------------------
	section3
---------------------------------------- */

.section3 {
  margin: 330px 0 0 0;
  padding: 0 0 0 0;
  position: relative;
  overflow: hidden;
  padding-bottom: 77px;
}

.section3_flex{
  display: flex;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: end;
}
.section3:after{
  background-color: #DED5CC;
  width: calc(100vw);
  height: 66%;
  right: calc(50% - 620px);
  content:"";
  position: absolute;
  bottom:0;
  z-index: -1;
}
.section3_ttl{
  font-size: 16px;
  color: #C17148;
  letter-spacing: 0.15rem;
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 30px;
}
.section3_ttl:after{
  background: #fff;
  position: absolute;
  bottom:0;
  left: 0;
  width: 70px;
  height: 8px;
  content:"";
}
.section3_ttl img{
  height: 64px;
  padding-bottom: 5px;
}
.section3_txtimg{
  width: 57px;
  margin: 0 0 55px 80px;
}
.section3_flexbox{
  width: calc(37% - 130px);
  margin-bottom: 100px;
}
.section3_img{
  width: 52%;
}
.section3_subttl {
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 25px;
}
.section3_txt {
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1200px) {
  .section3:after{
    width: 100%;
  }
}
@media screen and (max-width: 660px) {  
  .section3 {
    margin: 180px 0 0 0;
    padding: 0 0 0 0;
    position: relative;
    overflow: hidden;
    padding-bottom: 77px;
  }
  .section3_flex{
    width: 100%;
    flex-direction: column-reverse;
  }  
  .section3_flexbox{
    width: 100%;
    margin-bottom: 0;
    padding: 160px 10px 80px;
    background: #DED5CC;
  }
  .section3:after{
    content:none;
  }
  .section3_txtimg{
    width: 11%;
    margin: 0;
    position: absolute;
    left:0;
    top:50px;
  }
  .section3_img{
    width: 84%;
    padding-top: 0;
  }
  .section3_img img{
    margin-bottom: -19%;
  }
  .section3_txt{
    padding-right: 20px;
  }
}

/* ----------------------------------------
	section4
---------------------------------------- */

.section4 {
  margin: 100px 0 0 0;
  padding: 0 0 0 0;
}

.section4_box01{
  margin: 0 auto 0;
  max-width: 100%;
  width: 770px;
}
.section4_box01 img{
  width: 100%;
}
.section4_box02{
  display: flex;
  width: 1080px;
  max-width: 100%;
  margin: 50px auto;
}
.section4_box02 img{
  width: 42%;
  height: 100%;
  margin: 120px auto 0 auto;
}
.section4_box02 img:nth-child(2){
  width: 58%;
  height: 100%;
  margin: 0 auto 0 auto;
}

@media screen and (max-width: 660px) {
  .section4 {
    margin-top: 10px;
  }
  .section4_box01{
    padding: 0 10px;
  }
  .section4_box02 {
    margin: 50px auto ;
    padding: 10px;
    display: block;
  }
  .section4_box02 img {
      width: 100%;
      margin: 0;
  }
  .section4_box02 img:nth-child(2) {
      width: 100%;
      margin: 0;
  }
}

/* ----------------------------------------
	section5
---------------------------------------- */

.section5 {
  margin: 300px 0 0 0;
  padding: 0 0 0 0;
  position: relative;
  overflow: hidden;
  padding-bottom: 77px;
}

.section5_flex{
  display: flex;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: end;
}
.section5:after{
  background-color: #DED5CC;
  width: calc(100vw);
  height: 66%;
  left: calc(50% - 620px);
  content:"";
  position: absolute;
  bottom:0;
  z-index: -1;
}
.section5_ttl{
  font-size: 16px;
  color: #C17148;
  letter-spacing: 0.15rem;
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 30px;
}
.section5_ttl img {
    height: 64px;
    padding-bottom: 5px;
}
.section5_ttl:after {
    background: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 70px;
    height: 8px;
    content: "";
}
.section5_txtimg{
  width: 57px;
  margin: 0 0 55px 80px;
}
.section5_flexbox{
  width: calc(37% - 130px);
  margin-bottom: 100px;
}
.section5_img{
  width: 52%;
}
.section5_subttl {
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 25px;
}
.section5_txt {
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1200px) {
  .section5:after{
    width: 100%;
  }
}
@media screen and (max-width: 660px) {  
  .section5 {
    margin: 180px 0 0 0;
    padding: 0 0 0 0;
    position: relative;
    overflow: hidden;
    padding-bottom: 77px;
  }
  .section5_flex{
    width: 100%;
    flex-direction: column-reverse;
  }  
  .section5_flexbox{
    width: 100%;
    margin-bottom: 0;
    padding: 160px 10px 80px;
    background: #DED5CC;
  }
  .section5:after{
    content:none;
  }
  .section5_txtimg{
    width: 11%;
    margin: 0;
    position: absolute;
    left:0;
    top:50px;
  }
  .section5_img{
    width: 84%;
    padding-top: 0;
  }
  .section5_img img{
    margin-bottom: -19%;
  }
  .section5_txt{
    padding-right: 20px;
  }
}
/* ----------------------------------------
	section6
---------------------------------------- */
.section6 {
  margin: 265px 0 0 0;
  padding: 0 0 0 0;
}

.section6_box01{
  margin: 0 auto 50px auto;
  max-width: 100%;
  width: 770px;
}
.section6_box01 img{
  width: 100%;
}
.section6_box02{
  display: flex;
  width: 1080px;
  max-width: 100%;
  margin: 0 auto;
}
.section6_box02 img{
  width: 42%;
  height: 100%;
  margin: 120px auto 0 auto;
}
.section6_box02 .section6_box02-2{
  width: 58%;
  height: 100%;
  margin: 0 auto 0 auto;
}
.section6_box02 .section6_box02-2 img{
  width: 100%;
  height: 100%;
  margin: 0 auto 0 auto;
}
.section6_box02 .section6_box02-2 img:nth-child(2){
  width: 60%;
  margin: 0 auto 0 0;
}

@media screen and (max-width: 660px) {
  .section6 {
    margin-top: 10px;
  }
  .section6_box01 {
    padding: 10px;
  }
  .section6_box02 {
    margin: 50px 0 0;
    display: block;
    padding: 10px;
  }
  .section6_box02 img{
    max-width: 100%;
    width: 100%;
    margin: 0 auto 0 auto;
  }
  .section6_box02 .section6_box02-2{
    width: 100%;
  }
  .section6_box02 .section6_box02-2 img{
    width: 100%;
  }
  .section6_box02 .section6_box02-2 img:nth-child(2){
    width: 100%;
    margin: 0 auto 0 0;
  }
}

/* ----------------------------------------
	section7
---------------------------------------- */

.section7 {
  margin: 535px 0 0 0;
  padding: 0 0 0 0;
  position: relative;
  overflow: hidden;
  padding-bottom: 77px;
}

.section7_flex{
  display: flex;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: end;
}
.section7:after{
  background-color: #DED5CC;
  width: calc(100vw);
  height: 66%;
  right: calc(50% - 475px);
  content:"";
  position: absolute;
  bottom:0;
  z-index: -1;
}
.section7_ttl{
  font-size: 50px;
  font-family: Impact;
  line-height: 74px;
  color: #C17148;
  letter-spacing: 0.15rem;
  margin-bottom: 15px;
}
.section7_txtimg{
  width: 57px;
  margin: 0 0 55px 80px;
}
.section7_flexbox{
  width: calc(37% - 130px);
  margin-bottom: 100px;
}
.section7_img{
  width: 52%;
}
.section7_subttl {
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 0.1rem;
  margin-bottom: 25px;
}
.section7_txt {
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 660px) {  
  .section7 {
    margin: 120px 0 0 0;
    padding: 0 0 0 0;
    position: relative;
    overflow: hidden;
    padding-bottom: 77px;
  }
  .section7_flex{
    width: 100%;
    flex-direction: column-reverse;
  }  
  .section7_flexbox{
    width: 100%;
    margin-bottom: 0;
    padding: 160px 10px 50px;
    background: #DED5CC;
  }
  .section7:after{
    content:none;
  }
  .section7_txtimg{
    width: 11%;
    margin: 0;
    position: absolute;
    left:0;
    top:0;
  }
  .section7_img{
    width: 84%;
    padding-top: 10vw;
  }
  .section7_txt{
    padding-right: 20px;
  }
}

/* ----------------------------------------
	section8
---------------------------------------- */
.section8 {
  margin: 265px 0 200px 0;
  padding: 0 0 0 0;
}

.section8_box01{
  margin: 0 auto 0;
  width: 100%;
  max-width: 770px;
}
.section8_box01 img{
  width: 100%;
}
.section8_box02{
  margin: 160px auto 0;
  width: 100%;
  max-width: 1080px;
}
.section8_box02 img{
  width: 100%;
}

@media screen and (max-width: 660px) {
  .section8 {
    margin-top: 10px;
  }
  .section8_box02 {
    margin: 50px 0 0;
  }
}

/* ----------------------------------------
	newline-archive
---------------------------------------- */

.newline-archive {
  margin: 0;
  padding: 150px 0 0 0;
}

.newline-archive_box01 {
  max-width: 1000px;
  margin: 0 auto;
}

.newline-archive_box02 {
  margin: 0;
  padding: 0 20px 0 20px;
  color: #000000;
  line-height: 1.5;
}
.newline-archive_box02-text {
  padding: 20px 0;
}

@media screen and (max-width: 660px) {
  .newline-archive {
    margin: 0;
    padding: 150px 0 0 0;
  }
  .newline-archive_box02 {
    margin: 0;
    padding: 10px 20px 50px 20px;
    color: #000000;
    line-height: 1.5;
  }
}
