@charset "UTF-8";
/*@charset Shift_JIS;*/
/*******************************************************************************/
/*font-family: 'M PLUS 1p', sans-serif;
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Serif JP', serif;
font-family: 'Zen Maru Gothic', sans-serif;*/
/*******************************************************************************/
#Wrap2_Top_body {
  width: 649px; }

#Wrap2_body {
  width: 649px;
  background-image: url(../img_common/main_bk.gif);
  background-repeat: repeat-y;
  background-position: center top; }

@media (max-width: 480px) {
  #Wrap2_Top_body {
    width: 100%; } }
/*max-width:480px*/
.top_txt {
  background: url("../img_top/bg.png") right top -20px no-repeat #FFF8C7;
  padding: 50px 45px;
  border-radius: 0 0 25px 25px;
  overflow: hidden;
  position: relative;
  margin: 0 0 80px; }
  .top_txt:before {
    display: block;
    position: absolute;
    content: "";
    background: url("../img_top/smile-pc.png") right center no-repeat;
    background-size: contain;
    width: 268px;
    height: 354px;
    right: 0;
    bottom: 0; }
  .top_txt p {
    position: relative;
    font: 16px/2.0em 'M PLUS 1p', sans-serif;
    font-weight: 400;
    margin: 0 0 20px;
    color: #654720; }
    .top_txt p:last-of-type {
      margin: 0; }
    .top_txt p strong {
      font: 22px/1.6em 'M PLUS 1p', sans-serif;
      font-weight: 700;
      color: #EE781F; }
    .top_txt p.ttl {
      overflow: hidden;
      text-indent: 100%;
      white-space: nowrap;
      display: block;
      background: url("../img_top/text.svg") center center no-repeat;
      background-size: contain;
      width: 470px;
      height: 38px;
      margin: 0 0 30px; }

@media (max-width: 480px) {
  .top_txt {
    background: url("../img_top/sp-bg.png") right 15px bottom 30px no-repeat #FFF8C7;
    background-size: auto 370px;
    padding: 30px 20px;
    border-radius: 0;
    margin: 0 0 50px; }
    .top_txt:before {
      background: url("../img_top/smile-pc.png") right bottom no-repeat;
      background-size: contain;
      width: 268px;
      height: 240px; }
    .top_txt p strong {
      font: 20px/1.6em 'M PLUS 1p', sans-serif;
      font-weight: 700;
      display: block; }
    .top_txt p br {
      display: none; }
    .top_txt p span {
      display: block; }
    .top_txt p.ttl {
      width: 100%;
      height: 0;
      padding: 10% 0 0 0;
      margin: 0 0 30px; } }
/*max-width:480px*/
/*******************************************************************************/
.top_image {
  position: relative; }
  .top_image:before {
    position: absolute;
    content: "";
    display: block;
    background: url("../img_top/top_txt_pc.png") center center no-repeat;
    width: 334px;
    height: 140px;
    top: 50%;
    left: 71%;
    -webkit-transform: translate(-50%, -50%);
    /* Safari用 */
    transform: translate(-50%, -50%); }
  .top_image img {
    width: 100%;
    line-height: 0; }

@media (max-width: 480px) {
  .top_image {
    position: relative; }
    .top_image:before {
      position: absolute;
      content: "";
      display: block;
      background: url("../img_top/sp-top_txt_pc.png") center center no-repeat;
      background-size: contain;
      width: 160px;
      height: 166px;
      top: 50%;
      left: auto;
      right: 3%;
      -webkit-transform: translate(0%, -50%);
      /* Safari用 */
      transform: translate(0%, -50%); }
    .top_image img {
      width: 100%;
      line-height: 0; } }
/*max-width:480px*/
/*******************************************************************************/
main h2 {
  padding: 0 0 13px 40px !important;
  border-bottom: 3px solid #F8BF8D;
  color: #EE781F;
  font: 22px/1.0em 'M PLUS 1p', sans-serif;
  font-weight: bold;
  position: relative;
  margin: 0 auto 20px !important; }
  main h2:before {
    position: absolute;
    content: "";
    display: block;
    background: url("../img_top/flower.svg") center center no-repeat;
    background-size: contain;
    width: 32px;
    height: 32px;
    left: 5px;
    top: -7px; }

@media (max-width: 480px) {
  main h2 {
    width: calc(100% - 30px);
    box-sizing: border-box;
    padding: 0 0 10px 37px !important;
    font: 18px/1.5em 'M PLUS 1p', sans-serif;
    font-weight: bold; }
    main h2:before {
      width: 30px;
      height: 30px;
      left: 0px;
      top: -5px; }
    main h2 span {
      display: block;
      padding: 0 0 0 10px; } }
/*max-width:480px*/
/*******************************************************************************/
.sns_box {
  margin: 0 0 50px; }
  .sns_box p {
    font: 16px/2.0em 'M PLUS 1p', sans-serif;
    font-weight: 400;
    color: #654720;
    text-align: justify;
    text-justify: inter-ideograph;
    margin: 0 0 20px; }
  .sns_box ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: flex-start; }
  .sns_box li {
    width: calc((100% - 30px)/2);
    max-width: 310px; }
    .sns_box li.sp {
      display: none; }
  .sns_box a {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 80px;
    text-align: center;
    padding: 0 0 0 50px;
    border-radius: 10px;
    font: 18px/80px 'M PLUS 1p', sans-serif;
    font-weight: 700;
    position: relative; }
    .sns_box a br {
      display: none; }
    .sns_box a span {
      font: 22px/1.0em 'M PLUS 1p', sans-serif;
      font-weight: 700; }
    .sns_box a:before {
      display: block;
      position: absolute;
      content: "";
      -webkit-transform: translate(-50%, -50%);
      /* Safari用 */
      transform: translate(-50%, -50%); }
    .sns_box a.facebook {
      color: #1877F2;
      border: 1px solid #5EA0F6;
      background: linear-gradient(#fff, #fff, #D1E4FC); }
      .sns_box a.facebook:before {
        background: url("../img_top/icon-facebook.svg") center center no-repeat;
        width: 41px;
        height: 41px;
        background-size: contain;
        top: 50%;
        left: 18%; }
    .sns_box a.line {
      border: 1px solid #51D888;
      color: #06C755;
      background: linear-gradient(#fff, #fff, #CDF4DD); }
      .sns_box a.line:before {
        background: url("../img_top/icon-line.svg") center center no-repeat;
        width: 41px;
        height: 41px;
        background-size: contain;
        top: 50%;
        left: 25%; }

ul.pict {
  margin: 0 0 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start; }
  ul.pict li {
    width: calc((100% - 20px)/3);
    margin: 0 0 10px;
    line-height: 0; }
    ul.pict li img {
      width: 100%; }

@media (max-width: 480px) {
  .sns_box {
    margin: 0 auto 35px; }
    .sns_box p {
      width: calc(100% - 30px);
      font: 15px/2.0em 'M PLUS 1p', sans-serif;
      font-weight: 400;
      color: #654720;
      text-align: justify;
      text-justify: inter-ideograph;
      margin: 0 auto 20px; }
    .sns_box ul {
      max-width: 345px;
      width: calc(100% - 30px);
      margin: 0 auto; }
    .sns_box li {
      width: calc((100% - 10px)/2);
      max-width: 310px; }
      .sns_box li.sp {
        display: block; }
      .sns_box li.pc {
        display: none; }
    .sns_box a {
      box-sizing: border-box;
      width: 100%;
      height: 65px;
      text-align: left;
      border-radius: 10px;
      font: 15px/1.3em 'M PLUS 1p', sans-serif;
      font-weight: 700;
      position: relative; }
      .sns_box a span {
        font: 18px/1.0em 'M PLUS 1p', sans-serif;
        font-weight: 700; }
      .sns_box a br {
        display: block; }
      .sns_box a.facebook {
        padding: 12px 0 0 50px; }
        .sns_box a.facebook:before {
          width: 35px;
          height: 35px;
          top: 50%;
          left: 15%; }
      .sns_box a.line {
        padding: 12px 0 0 75px; }
        .sns_box a.line:before {
          width: 35px;
          height: 35px;
          top: 50%;
          left: 28%; }

  ul.pict {
    margin: 0 0 60px; }
    ul.pict li {
      width: calc((100% - 10px)/2); } }
/*******************************************************************************/
.news {
  width: 100%;
  margin: 0 auto 90px;
  height: 260px;
  overflow-y: scroll; }
  .news dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  .news dt {
    font: 15px/1.8em 'M PLUS 1p', sans-serif;
    font-weight: 500;
    width: 100px;
    text-align: center;
    margin: 0 20px 0 0;
    padding: 10px 0;
    border-bottom: 1px solid #AC9675;
    color: #654720; }
  .news dd {
    text-align: justify;
    text-justify: inter-ideograph;
    margin: 0;
    padding: 10px 0;
    width: calc(100% - 125px);
    font: 15px/1.8em 'M PLUS 1p', sans-serif;
    font-weight: 400;
    border-bottom: 1px solid #CCBEA9; }
    .news dd a {
      color: #654720; }

@media (max-width: 480px) {
  .news {
    margin: 0 auto 60px;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    width: calc(100% - 30px);
    height: 300px; }
    .news dl {
      width: calc(100% - 30px);
      display: block;
      margin: 0 auto; }
    .news dt {
      font: 15px/1.0em 'M PLUS 1p', sans-serif;
      font-weight: 500;
      width: 100px;
      text-align: left;
      margin: 0 0 8px;
      padding: 15px 0 0;
      border-bottom: none;
      color: #654720; }
      .news dt:first-of-type {
        padding: 0; }
    .news dd {
      font: 15px/1.5em 'M PLUS 1p', sans-serif;
      text-align: left;
      text-justify: inherit;
      margin: 0;
      padding: 0 0 15px;
      width: 100%;
      border-bottom: 1px solid #CCBEA9; } }
/*max-width:480px*/
/*******************************************************************************/
