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

/*--------------------------------------
　Main Index
---------------------------------------*/

#index {
  margin: 0;
  padding: 25px;
}

#index .headArea {
  margin: 0 0 25px;
}

#index .headArea h2 {
  font-size: 26px;
  font-weight: bold;
  margin: 0 0 10px;
}

#index .sec01 h2,
#index .sec02 h2 {
  font-size: 28px;
  font-weight: bold;
  margin: 0 0 10px;
}

#index .sec01 h3,
#index .sec02 h3 {
  font-size: 22px;
  font-weight: bold;
  margin: 0 0 10px;
}

#index .sec01 h4,
#index .sec02 h4 {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 10px;
}

#index .sec01 h5,
#index .sec02 h5 {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
}

#index .sec01 h6,
#index .sec02 h6 {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 10px;
}

#index .sec01 p.lead,
#index .sec02 p.lead {
  margin: 0 0 30px;
}

#index .sec01 {
  margin: 0 0 50px;
  padding: 25px;
  border: 1px solid #D5D5D5;
}

#index .sec02 {
  margin: 0 0 50px;
  padding: 25px;
  border: 1px solid #D5D5D5;
}

#index .sec01 p,
#index .sec02 p {
  margin: 0 0 20px;
}

#index .sec01 p:last-child,
#index .sec02 p:last-child {
  margin: 0;
}

/*----------------------------------------------------
  PCサイトcss
----------------------------------------------------*/
@media screen and (min-width: 600px) {
#index {
  padding: 0;
}
/*--------------------------------------
　Main visual
---------------------------------------*/

#main_visual {
  width: 100%;
  margin-bottom: 60px;
  border-bottom: 1px solid #ccc;
  position: relative;
}
#main_visual .visual_cover {
  width: 100%;
  max-width: none;
  height: auto;
  background: url(img/main_visual_bg.png);
  background-size: auto 360px;
}
#main_visual .inner {
  width: 100%;
  max-width: 1000px;
  padding: 20px;
  background: url(img/main_visual_leaf.png), url(img/main_visual_balloon.png), url(img/main_visual_woman.png), url(img/main_visual_top.png), url(img/main_visual_middle.png), url(img/main_visual_bottom.png);
  background-position: top left 10px, bottom 10px left 10px, bottom right, top 20px left 80px, center left 80px, bottom 20px left 80px;
  background-repeat: no-repeat;
  background-size: 120px auto, 120px auto, auto 350px, 700px 20px, 700px calc(100% - 80px), 700px 20px;
}
#main_visual .text_area {
  width: 640px;
  margin-left: 90px;
  padding: 6% 40px 6% 50px;
  background: url(img/main_visual_line.png), url(img/main_visual_line.png);
  background-position: top 30px left, bottom 30px left;
  background-repeat: repeat-x;
}

.text_area .title {
  width: 100%;
  margin-bottom: 20px;
  color: #69643f;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.3;
}
.text_area .text {
  width: 100%;
}
}
/*----------------------------------------------------
  SPサイトcss
----------------------------------------------------*/
@media screen and (max-width: 599px) {
#index {
  padding: 0;
}
/*--------------------------------------
　Main visual
---------------------------------------*/
#main_visual {
  padding-bottom: 5%;
  background: url(img/main_visual_bg.png);
  background-size: auto 200px;
  position: relative;
  z-index: 0;
}
#main_visual .visual_cover {
  width: 100%;
}
#main_visual .inner {
  width: 100%;
  padding: 0;
  position: relative;
}
#main_visual .text_area.sp {
  display: table;
  min-height: 130px;
}
#main_visual .text_area.sp .title {
  display: table-cell;
  width: 100%;
  padding: 10px 100px 10px 5%;
  color: #69643f;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.4;
  vertical-align: middle;
}
#main_visual .text {
  width: 100%;
  margin-top: -5px;
padding: 45px 50px;
  background: url(img/sp/main_visual_line.png), url(img/sp/main_visual_line.png), url(img/sp/main_visual_balloon.png), url(img/sp/main_visual_leaf.png), url(img/sp/main_visual_bg_top.png), url(img/sp/main_visual_bg_middle.png), url(img/sp/main_visual_bg_bottom.png);
  background-position: top 22px center, bottom 22px center, bottom 10px left, top 5px right 10px, top left 15px, center left 15px, bottom left 15px;
  background-repeat: no-repeat;
  background-size: calc(100% - 70px) 5px, calc(100% - 70px) 5px, 70px auto, 60px auto, calc(100% - 30px) 15px, calc(100% - 30px) calc(100% - 30px), calc(100% - 30px) 15px;
  position: relative;
  z-index: auto;
      text-align: justify;
}
#main_visual .text::before {
  position: absolute;
  top: -100px;
  right: 0;
  content: '';
  display: block;
  width: 100%;
  height: 110px;
  background: url(img/sp/main_visual_woman.png) no-repeat bottom right 20px;
  background-size: auto 100%;
  z-index: -1;
}
}
