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

	Reset

-------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*-------------------------------

	Foundation

-------------------------------*/
html {
  font-size: 62.5%;
}

body {
  background-color: #F6F6F6;
  color: #35341E;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none;
}

*:focus {
  outline: none;
}

p,
ul li {
  text-align: justify;
  text-justify: inter-ideograph;
}

img {
  width: 100%;
}

/*-------------------------------

	Layout

-------------------------------*/
/*
* wrapper
*/
.l-base {
  padding-right: 5%;
  padding-left: 5%;
}

/*-------------------------------

	Object

-------------------------------*/
/*---------- Component ----------*/
/*
 * ボタン
 */
.c-btn {
  display: inline-block;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  background-color: #eee;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}

/*
 * テキスト
 */
.c-text {
  margin: 4rem 0;
  line-height: 1.67;
  font-family: "Zen Maru Gothic", sans-serif;
}

/*---------- Project ----------*/
/*
 * header
 */
/*
 * article
 */
.p-mainview {
  padding-bottom: 2rem;
  background-color: #fff;
}

.p-art01__h1 {
  position: relative;
  background-color: #fff;
}
.p-art01__h1:before {
  display: block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  border-top: 15px solid #fff;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  content: "";
}

.p-art02 {
  background-color: #fff;
}
.p-art02__h1 {
  padding-top: 6rem;
}
.p-art02__list-img {
  margin-bottom: 3rem;
}

.p-art03 {
  background-color: #fff;
}

.p-art04 {
  padding: 6rem 0 0.1rem;
  overflow: hidden;
  background-color: #fff;
}
.p-art04__list {
  position: relative;
  padding: 3.5rem 1.7rem 7rem;
  border: 5px solid #c3c1b6;
  border-radius: 1.8rem;
}
.p-art04__fig {
  position: absolute;
  right: -6.5%;
  bottom: 0;
  width: 47%;
}
.p-art04__item {
  position: relative;
  padding-left: 3rem;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.56;
  font-family: "Zen Maru Gothic", sans-serif;
  letter-spacing: 0.05em;
}
.p-art04__item:before {
  display: block;
  position: absolute;
  top: 0.5rem;
  left: 0;
  width: 2rem;
  height: 1.6rem;
  background-image: url("../images/icon_check.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  content: "";
}
.p-art04__item + .p-art04__item {
  margin-top: 4rem;
}

.p-art05__txt4:after, .p-art05__txt4:before {
  display: block;
  position: absolute;
  top: 1rem;
  width: 3px;
  height: 100%;
  background-color: rgba(53, 52, 30, 0.5);
  content: "";
}

.p-art05 {
  text-align: center;
}
.p-art05__h1 {
  height: 10rem;
  background-color: #3faa3f;
  color: #fff;
  font-weight: bold;
  font-size: 2.7rem;
  line-height: 10rem;
  font-family: "Zen Maru Gothic", sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-art05__bg {
  background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.3) 7px, transparent 0, transparent 14px);
  background-color: #ffff97;
}
.p-art05__txt1 {
  margin-bottom: 2.3rem;
  padding-top: 3rem;
  font-weight: bold;
  font-size: 3.2rem;
  text-align: center;
}
.p-art05__txt1 em {
  font-size: 4rem;
}
.p-art05__txt1 span {
  display: inline-block;
  position: relative;
}
.p-art05__txt1 span:before {
  display: block;
  position: absolute;
  top: 50%;
  right: -1.5rem;
  left: 0;
  height: 3px;
  transform: translateY(-50%);
  border-radius: 2px;
  background-color: #35341E;
  content: "";
}
.p-art05__arrow {
  margin-bottom: 2rem;
  text-align: center;
}
.p-art05__arrow span {
  display: inline-block;
  border-top: 15px solid rgba(53, 52, 30, 0.5);
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
}
.p-art05__txt2 {
  margin-bottom: 2rem;
  color: #e9501b;
  font-weight: bold;
  font-size: 11rem;
  font-family: "Zen Maru Gothic", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  text-shadow: 4px 4px 0 #fff, -4px -4px 0 #fff, -4px 4px 0 #fff, 4px -4px 0 #fff, 0px 4px 0 #fff, 0 -4px 0 #fff, -4px 0 0 #fff, 4px 0 0 #fff;
}
.p-art05__txtbox {
  margin-bottom: 5rem;
}
.p-art05__txt3 {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  height: 4rem;
  margin: 0 0.9rem;
  padding: 0 1.5rem;
  background-color: #fff;
  font-weight: bold;
  font-size: 2rem;
  letter-spacing: 0.05em;
  vertical-align: bottom;
}
.p-art05__txt3 em {
  font-size: 2.75rem;
}
.p-art05__txt4 {
  display: inline-block;
  position: relative;
  margin-bottom: 3.5rem;
  font-weight: 500;
  font-size: 2rem;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-art05__txt4 span {
  font-size: 2.55rem;
}
.p-art05__txt4:before {
  right: -3rem;
  transform: rotate(30deg);
}
.p-art05__txt4:after {
  left: -3rem;
  transform: rotate(-30deg);
}
.p-art05__btn {
  display: block;
  width: 91%;
  margin: 0 auto;
  padding-bottom: 1.5rem;
  transition: transform 0.3s;
}
.p-art05__btn:hover {
  transform: translateY(2%);
}
.p-art05__note {
  padding: 0 5% 4.5rem;
  font-size: 1.3rem;
  line-height: 1.5;
  text-align: center;
}

/*
* section
*/
.p-sec01 {
  margin: 4rem 0;
  padding: 2.4rem 0 0;
  border: 6px solid #7cb498;
  border-radius: 2rem;
  background-color: #fff;
}
.p-sec01__h1 {
  width: 82%;
  margin: 0 auto 2rem;
}
.p-sec01__txt {
  width: 89%;
  margin-right: auto;
  margin-left: auto;
}

.p-sec02 {
  padding-bottom: 0.1rem;
  background-color: #fff;
}
.p-sec02__txt {
  margin-top: 0;
}
.p-sec02__h {
  width: 79%;
  margin-top: 8rem;
}

.p-sec03 {
  margin-top: 8rem;
  padding: 6rem 0;
  background-image: url("../images/bg_sp.jpg");
  background-size: 100% auto;
}
.p-sec03__h1 {
  width: 55%;
  margin: 0 auto;
}

/*
 * aside
 */
.p-aside {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}
.p-aside__link {
  display: block;
  transition: filter 0.5s;
}
.p-aside__link:hover {
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1.2" /><feFuncG type="linear" slope="1.2" /><feFuncB type="linear" slope="1.2" /></feComponentTransfer></filter></svg>#filter');
  filter: brightness(1.2);
}

/*
 * footer
 */
.p-ftr {
  padding: 2.5rem 0 15rem;
  background-color: #35341E;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center;
}
.p-ftr__link {
  display: inline-block;
  margin-bottom: 2rem;
  color: inherit;
  transition: opacity 0.3s;
}
.p-ftr__link:hover {
  opacity: 0.7;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}
.p-ftr__txt {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  text-align: center;
}
.p-ftr__txt + .p-ftr__txt {
  margin-top: 2.5rem;
}

/*---------- Utility ----------*/
/*
 * block
 */
.u-sp {
  display: block;
}

.u-pc {
  display: none;
}

/*
 * font-weight
 */
.u-bold {
  font-weight: bold;
}

/*
 * background
 */
.u-bg-pattern {
  background-image: url("../images/bg_pattern_01_sp.jpg");
  background-size: 100% auto;
}

/*
 * color
 */
.u-c-ex {
  color: #31b431;
}
@media only screen and (min-width: 420px){
  /* x-small-size */
}
@media only screen and (min-width: 768px){
  /* small-size */
  body{
    font-size: 3rem;
  }
  .p-mainview{
    padding-bottom: 4rem;
  }
  .p-art04__list{
    padding: 3.5rem 3.5rem 7rem;
  }
  .p-art04__item{
    font-size: 3.2rem;
  }
  .p-art04__item{
    padding-left: 6rem;
  }
  .p-art04__item:before{
    top: 0.7rem;
    width: 4.1rem;
    height: 3.7rem;
  }
  .p-art05__h1{
    font-size: 5.4rem;
  }
  .p-art05__txt3{
    font-size: 4rem;
  }
  .p-art05__txt3{
    height: 5.7rem;
    margin: 0 1.8rem;
    padding: 0 3rem;
  }
  .p-art05__txt3 em{
    font-size: 5.5rem;
  }
  .p-art05__txt4{
    font-size: 4rem;
  }
  .p-art05__txt4 span{
    font-size: 5.1rem;
  }
  .p-art05__txt4:before{
    right: -6rem;
  }
  .p-art05__txt4:after{
    left: -6rem;
  }
  .p-art05__note{
    font-size: 2.6rem;
  }
  .p-sec01{
    margin: 8rem 0;
    padding-bottom: 2rem;
  }
  .p-sec01__h1{
    margin-bottom: 4rem;
  }
  .p-sec03{
    padding-bottom: 14rem;
    background-image: url("../images/bg_pc.jpg");
  }
  .p-ftr{
    padding: 2.5rem 0 25rem;
  }
  .u-sp{
    display: none;
  }
  .u-pc{
    display: block;
  }
  .u-bg-pattern{
    background-image: url("../images/bg_pattern_01_pc.jpg");
  }
}
@media only screen and (min-width: 800px){
  /* middle-size */
  .l-full{
    margin-right: calc((100% - 800px) / 2);
    margin-left: calc((100% - 800px) / 2);
  }
  .p-art01__h1:before{
    bottom: -20px;
    border-width: 20px;
  }
}
@media only screen and (min-width: 1024px){
  /* large-size */
}
/*# sourceMappingURL=style.css.map */