@charset "UTF-8";
@media screen and (min-width: 768px) { 		/* gl-navi 疑似カレント -------------------------------------*/
  #gl-navi #li02 { position: relative; }
  #gl-navi #li02::after { content: ""; border-bottom: 1px solid #000; position: absolute; bottom: 0px; left: 0; right: 0; margin-left: auto; margin-right: auto; text-align: center; height: 1px; }
  	/* ttl -------------------------------------*/
  #read .ttl, #comp .ttl { font-size: 23px; line-height: 1.5; letter-spacing: 0.2em; color: #010000; position: relative; }
  #read .ttl::before, #comp .ttl::before { content: ""; border-bottom: 2px solid #b39047; width: 40px; position: absolute; top: -15px; left: 0; right: 0; margin-left: auto; margin-right: auto; }
  /* PC用 共通して使える -------------------------------------*/
  #read { margin-bottom: 155px; }
  #read .Box { width: 910px; margin: 0 auto; }
  #read .Box .ttl { margin-bottom: 50px; }
  #read .Box .txt { text-align: center; margin-bottom: 30px; }
  #read .Box .txt span { display: block; }
  #read .Box .txt .sub { font-size: 24px; line-height: 1.5; letter-spacing: 0.2em; color: #010000; margin-bottom: 10px; }
  #read .Box .txt .main { font-size: 34px; line-height: 1.5; letter-spacing: 0.2em; color: #010000; }
  	/* style -------------------------------------*/
  #style { margin-bottom: 230px; }
  #style .Box { width: 1100px; margin: 0 auto; 			/* flexbox 共通
-------------------------------------*/ }
  #style .Box .ttl { margin-bottom: 60px; }
  #style .Box .flexbox, #style .Box .flexbox02, #style .Box .flexbox03 { margin-bottom: 125px; }
  #style .Box .flexbox .ttl, #style .Box .flexbox02 .ttl, #style .Box .flexbox03 .ttl, #style .Box .flexbox04 .ttl { font-size: 26px; line-height: 2; letter-spacing: 0.2em; color: #000; font-weight: 400; margin-bottom: 30px; }
  #style .Box .flexbox p, #style .Box .flexbox02 p, #style .Box .flexbox03 p, #style .Box .flexbox04 p { font-size: 14px; line-height: 1.5; letter-spacing: 0.1em; color: #000; }
  #style .Box .flexbox .mb01, #style .Box .flexbox02 .mb01, #style .Box .flexbox03 .mb01, #style .Box .flexbox04 .mb01 { margin-bottom: 20px; }
  #style .Box .flexbox .box-l { width: 445px; margin-left: 38px; }
  #style .Box .flexbox02 .box-r { width: 460px; margin-right: 30px; }
  #style .Box .flexbox03 .box-l { width: 500px; margin-left: 40px; padding-top: 50px; }
  #style .Box .flexbox03 .box-l p { width: 475px; }
  #style .Box .flexbox04 .box-r { width: 563px; padding-top: 40px; }
  #style .Box .flexbox04 .box-r p { width: 480px; }
  	/* comp -------------------------------------*/
  #comp { margin-bottom: 175px; }
  #comp .Box { width: 1100px; margin: 0 auto; }
  #comp .Box .ttl { margin-bottom: 70px; }
  #comp .Box .ttl02 { padding-bottom: 10px; margin-bottom: 25px; border-bottom: 1px solid #000; }
  #comp .Box .ttl02 .num { vertical-align: super; display: inline-block; margin-right: 10px; }
  #comp .Box .ttl02 .main { font-size: 26px; line-height: 1.5; letter-spacing: 0.4em; color: #000; text-indent: -2em; padding-left: 2em; }
  #comp .Box ol li { margin-bottom: 105px; }
  #comp .Box ol li:last-child { margin-bottom: 0px; }
  #comp .Box ol li .box-r { width: 550px; padding: 40px 50px; }
  #comp .Box ol li .box-r .mb01 { margin-bottom: 20px; }
  	/* afterword -------------------------------------*/
  .afterword .Box { width: 1100px; margin: 0 auto; }
  .afterword .Box .ttl { font-size: 23px; line-height: 2; letter-spacing: 0.2em; color: #000; margin-bottom: 30px; }
  .afterword .Box ul li { margin-bottom: 10px; } }
@media screen and (max-width: 767px) { /* SP用 共通して使える -------------------------------------*/
  #main-ttl { margin-bottom: 15%; }
  		/* ttl -------------------------------------*/
  #read .ttl, #comp .ttl { font-size: 2rem; line-height: 1.5; letter-spacing: 0.2em; color: #010000; position: relative; margin-bottom: 5%; }
  #read .ttl::before, #comp .ttl::before { content: ""; border-bottom: 2px solid #b39047; width: 40px; position: absolute; top: -15px; left: 0; right: 0; margin-left: auto; margin-right: auto; }
  /* PC用 共通して使える -------------------------------------*/
  #read { margin-bottom: 15%; }
  #read .Box .txt { text-align: center; margin-bottom: 30px; }
  #read .Box .txt span { display: block; }
  #read .Box .txt .sub { font-size: 1.8rem; line-height: 1.5; letter-spacing: 0.2em; color: #010000; margin-bottom: 10px; }
  #read .Box .txt .main { font-size: 2.5rem; line-height: 1.5; letter-spacing: 0.2em; color: #010000; }
  	/* style -------------------------------------*/
  #style { margin-bottom: 20%; }
  #style .Box { padding: 0 3%; 			/* flexbox 共通
-------------------------------------*/ }
  #style .Box .ttl { margin-bottom: 60px; }
  #style .Box .flexbox, #style .Box .flexbox02, #style .Box .flexbox03 { margin-bottom: 15%; }
  #style .Box .flexbox .ttl, #style .Box .flexbox02 .ttl, #style .Box .flexbox03 .ttl, #style .Box .flexbox04 .ttl { font-size: 2.1rem; line-height: 2; letter-spacing: 0.2em; color: #000; font-weight: 400; margin-bottom: 5%; }
  #style .Box .flexbox .photo01, #style .Box .flexbox02 .photo01, #style .Box .flexbox03 .photo01, #style .Box .flexbox04 .photo01 { margin-bottom: 5%; }
  #style .Box .flexbox p, #style .Box .flexbox02 p, #style .Box .flexbox03 p, #style .Box .flexbox04 p { font-size: 1.6rem; line-height: 1.8; letter-spacing: 0.1em; color: #000; }
  #style .Box .flexbox .mb01, #style .Box .flexbox02 .mb01, #style .Box .flexbox03 .mb01, #style .Box .flexbox04 .mb01 { margin-bottom: 5%; }
  	/* comp -------------------------------------*/
  #comp { margin-bottom: 15%; }
  #comp .Box { padding: 0 3%; }
  #comp .Box .ttl { margin-bottom: 15%; }
  #comp .Box .ttl02 { padding-bottom: 10px; margin-bottom: 25px; border-bottom: 1px solid #000; text-align: center; }
  #comp .Box .ttl02 span { display: block; }
  #comp .Box .ttl02 .num { margin-bottom: 3%; }
  #comp .Box .ttl02 .main { font-size: 2rem; line-height: 1.5; letter-spacing: 0.4em; color: #000; }
  #comp .Box ol li { margin-bottom: 20%; }
  #comp .Box ol li:last-child { margin-bottom: 0px; }
  #comp .Box ol li .photo { margin-bottom: 5%; }
  #comp .Box ol li .box-r p { line-height: 1.8; letter-spacing: 0.1em; }
  #comp .Box ol li .box-r .mb01 { margin-bottom: 5%; }
  	/* afterword -------------------------------------*/
  .afterword .Box .ttl { font-size: 1.8rem; line-height: 2; letter-spacing: 0.2em; color: #000; margin-bottom: 30px; text-align: left; padding: 0 3%; }
  .afterword .Box ul li { margin-bottom: 10px; } }

 	/* natural,outdoor -------------------------------------*/
  #natural, #faction { margin-bottom: 110px; }
  #natural .Box, #faction .Box { width: 1060px; margin: 0 auto; background: url(../images/stress/bg-ptn01.jpg) repeat-y center top 10px; padding-bottom: 30px; }
  #natural .Box .ttl, #faction .Box .ttl { font-size: 24px; font-weight: bold; line-height: 1.5; letter-spacing: 0.2em; color: #000; margin-bottom: 30px; }
  #natural .Box ul, #faction .Box ul { margin-bottom: 25px; }
  #natural .Box .wh-box, #faction .Box .wh-box { background-color: #fff; padding: 25px 35px 25px 40px; width: 596px; margin: 0 auto; }
  #natural .Box .wh-box .mb01, #faction .Box .wh-box .mb01 { margin-bottom: 20px; }
  #natural .Box .wh-box p, #faction .Box .wh-box p { font-size: 14px; line-height: 1.5; letter-spacing: 0.1em; }
  	/* afterword -------------------------------------*/
  .afterword .Box { width: 1100px; margin: 0 auto; }
  .afterword .Box .flexbox { margin-bottom: 50px; }
  .afterword .Box .box-l { width: 530px; padding-top: 40px; margin-left: 20px; }
  .afterword .Box .box-l p { font-size: 20px; font-weight: bold; line-height: 2.2; letter-spacing: 0.1em; color: #000; }
  .afterword .Box .txt { font-size: 24px; font-weight: bold; line-height: 1.5; letter-spacing: 0.1em; color: #000; margin-bottom: 45px; margin-left: 20px; } }

@media screen and (max-width: 767px) { /* SP用 共通して使える -------------------------------------*/
  #main-ttl { margin-bottom: 15%; }
  #read { padding: 0 3%; margin-bottom: 15%; }
  #read .ttl { font-size: 2rem; line-height: 1.5; letter-spacing: 0.2em; position: relative; margin-bottom: 20px; }
  #read .ttl::before { content: ""; border-bottom: 2px solid #b39047; width: 40px; position: absolute; top: -10px; left: 0; right: 0; margin-left: auto; margin-right: auto; text-align: center; }
  	/* natural,outdoor -------------------------------------*/
  #natural, #faction { margin-bottom: 15%; }
  #natural .Box, #faction .Box { background: url(../images/stress/bg-ptn01.jpg) repeat-y center top 10px; padding: 5% 3%; }
  #natural .Box .ttl, #faction .Box .ttl { font-size: 2.1rem; font-weight: bold; line-height: 1.5; letter-spacing: 0.2em; color: #000; margin-bottom: 5%; text-align: left; }
  #natural .Box ul, #faction .Box ul { margin-bottom: 5%; }
  #natural .Box .wh-box, #faction .Box .wh-box { background-color: #fff; padding: 5% 3%; }
  #natural .Box .wh-box .mb01, #faction .Box .wh-box .mb01 { margin-bottom: 8%; }
  #natural .Box .wh-box p, #faction .Box .wh-box p { font-size: 1.6rem; line-height: 2; letter-spacing: 0.1em; }
  	/* afterword -------------------------------------*/
  .afterword .Box .flexbox { margin-bottom: 5%; }
  .afterword .Box .box-l { padding: 0 3%; margin-bottom: 5%; }
  .afterword .Box .box-l p { font-size: 2rem; font-weight: bold; line-height: 2.2; letter-spacing: 0.1em; color: #000; }
  .afterword .Box .txt { font-size: 1.8rem; font-weight: bold; line-height: 1.5; letter-spacing: 0.1em; color: #000; margin-bottom: 10%; padding: 0 3%; }
  .afterword .Box ul { padding: 0 3%; }
  .afterword .Box ul li { width: 48%; margin-right: 4%; margin-bottom: 3%; }
  .afterword .Box ul li:nth-child(2n) { margin-right: 0px; } }