@charset "UTF-8";

/* 共通部分
------------------------------- */
* {
  margin: 0;
  padding: 0;
}
html {
    font-size: 100%;
    /*font-size: 62.5%;*/
    font-family: 'Noto Sans JP', sans-serif;
    -webkit-font-smoothing: antialiased;
    margin: 0;
}
body{
    font-family: 'Noto Sans JP', sans-serif;
    margin: 0;
    background: #FFFDF6;
}
a {
    text-decoration: none;
}
p {
    margin: 0 auto;
}
img {
    max-width: 680px;
    width: 100%;
    justify-content: center;
    margin: 1rem auto;
}
video {
    max-width: 100%;
    margin: .5rem auto 1rem;
}
/*本文-------------------------------------*/

#wrapper {
    max-width: 680px;
    width: 100%;
    background: #fff;
    margin: 0 auto;
    line-height: 1.7;
}
.pr {
    font-size: 0.8rem;
    margin: 0rem auto .5rem;
    text-align: right;
    padding-right: 1rem;
}

.ttl img {
 margin: 0 auto;
}
.ttl video {
 margin: -.5rem auto 0;
}
.container {
  margin: 0 auto;
  text-align: center;
  max-width: 680px;
  width: 90%;
}
h1 {
  padding: 1em;
  background: #003C19;
  color: white;
  text-align: left;
  margin: 0 auto;
  font-size: 2rem;
}
h2 {
  position: relative;
  padding: 0.5em;
  background: #8CAFA4;
  color: #fff;
  text-align: left;
  margin: 2rem auto;
}

h2::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(149, 158, 155);
}
h3 {
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #004620;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #017540;/*左線*/
  text-align: left;
  margin: 2rem auto 1rem;
  font-size: 1.6rem
}
h4 {
  color: #000;/*文字色*/
  
  padding: 0.5em;/*文字周りの余白*/
  border-radius: 0.5em;/*角丸*/
  font-size: 1.4rem;
  text-align: left;
  background:#FFF9DE;
}
p.txt {
  max-width: 680px;
  color: #000;
  margin: 1rem auto;
  text-align: left;
  font-size: 1.25rem;
  line-height: 1.7;
}
p.txt_3 {
  color: #484848;
  margin-top: -1.25rem;
  font-size: 1rem;
}
p.c_txt{
  font-size: 1.4rem;
  margin: 1rem auto -0.5rem;
}

strong {
  font-weight: 700;
}
.marker_line0 {
   background:linear-gradient(transparent 30%, #FFFE66 0%);
  }
p.r_txt,.uv_box p.uv_r_txt{
  text-align: right;
  line-height: 1.4;
  margin-bottom: 1rem;
  font-size: 0.725rem;
  color: #000;
}
/*ふきだし---------------------------------------*/
.comment,.comment_2 {
  width: 100%;
  padding: 2rem 0;
}

.faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}
.faceicon_2 {
  float: right;
  margin-left: -90px;
  width: 80px;
}

.faceicon img{
  height: auto;
  border: solid 3px #ffefef;
  border-radius: 50%;
  margin-top: 0;
}
.faceicon_2 img {
  height: auto;
  border: solid 3px #fff7ef;
  border-radius: 50%;
  margin-top: 0;

}
.faceicon img ,.faceicon_2 img {
  max-width: 70px;
}
.chatting, .chatting_2 {
  width: 100%;
}
.faceicon p, .faceicon_2 p{
  font-size: 0.825rem;
  margin-top: -1rem;
}
.says {
  width: 75%;
  display: inline-block;
  position: relative;
  margin: 0 0 0 105px;
  padding: 1rem;
  border-radius: 12px;
  background: #ffefef;
}
.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -24px;
  border: 12px solid transparent;
  border-right: 24px solid #ffefef;
}
.says_2 {
  width: 75%;
  display: inline-block;
  position: relative;
  margin: 0 105px 0 0;
  padding: 1rem;
  border-radius: 12px;
  background: #fff7ef;
}
.says_2:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  right: -24px;
  border: 12px solid transparent;
  border-left: 24px solid #fff7ef;
}
.says p {
      color: #000;
      margin: 0 auto;
      text-align: left;
      font-size: 1.25rem;
}
.says p.r_txt {
  text-align: right;
  line-height: 1;
  font-size: 0.725rem;
  margin: 1rem auto 0;
}

.says_2 p {
      color: #000;
      margin: 0 auto;
      text-align: left;
      font-size: 1.25rem;
}
.says_2 p.r_txt {
  text-align: right;
  line-height: 1;
  font-size: 0.725rem;
  margin: 1rem auto 0;
}
/*uv*/
.uv {
  max-width: 800px;
  text-align: center;
  border-radius:20px;
  padding: .5rem 4%;
  margin: 0rem auto;
}
.uv_box {
  max-width: 640px;
  text-align: center;
  margin: 2rem auto;
  background-color: #f4fff9;
  border-radius:20px;
  padding: 1.5rem 4% 1rem;
}
.icon_txt {
  margin-bottom: 0;
}
.uv_box img {
  max-width: 560px;
  text-align: center;
  margin: 0 auto 1rem;
}
.uv_box p {
  max-width: 560px;
  color: #000;
  margin: 1rem auto;
  text-align: left;
  font-size: 1.25rem;
  line-height: 1.7;
}
p.uv_name {
  font-size: .875rem;
}
/*フッタ---------------------------------------*/
footer {
    max-width: 680px;
    margin: 1rem auto 0;
    padding: 2rem;
}
.footer a {
    display: block;
    text-align:center;
    margin: .5rem auto 0;
    padding: 0 auto 2rem;
}
.footer p  {
   display: block;
    text-align:center;
    margin: 0 auto;
    padding: 0 auto 2rem;
    font-size: .8rem;
}
/*モバイル版-----------------------------------*/
@media (max-width: 640px) {
#wrapper {
    margin: 0 auto;
    font-size: 1rem;
    line-height: 1.4;
}
video {
 margin: 0rem auto 1rem;
}
.pr {
    font-size: 0.675rem;
    margin: 0rem auto .5rem;
}
.ttl video {
 margin: -.5rem auto 0;
}
img {
    width: 100%;
    justify-content: center;
    margin: 0 auto;
}
p.txt  {
    font-size: 1rem;
    margin: 1rem auto;
}

p.txt_3 {
  margin-top: .25rem;
  font-size: 1rem;
}
p.r_txt{
  padding-right: .25rem;
  font-size: .575rem;
}
h1 {
 font-size: 1.8rem;
}
h2 {
 font-size: 1.6rem;
}
h3 {
    font-size: 1.5rem;
    padding: .5rem auto;
}
.comment,.comment_2 {
  width: 100%;
  padding: 2rem 0;
}

.faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}
.faceicon_2 {
  float: right;
  margin-left: -90px;
  width: 80px;
}
.faceicon img ,.faceicon_2 img {
  max-width: 70px;
}
.chatting, .chatting_2 {
  width: 100%;
}
.faceicon p, .faceicon_2 p{
  font-size: 0.825rem;
  margin-top: -.25rem;
}
.says {
  max-width: 70%;
  display: inline-block;
  position: relative;
  margin: 0 0 0 20%;
  padding: 1rem;
  border-radius: 12px;
}
.says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -24px;
  border: 12px solid transparent;
  border-right: 24px solid #ffefef;
}
.says_2 {
  max-width: 70%;
  display: inline-block;
  position: relative;
  margin: 0 20% 0 0;
  padding: 1rem;
  border-radius: 12px;
}
.says_2:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  right: -24px;
  border: 12px solid transparent;
  border-left: 24px solid #fff7ef;
}
.says p {
      color: #000;
      margin: 0 auto;
      text-align: left;
      font-size: 1rem;
}
.says p.r_txt {
  text-align: right;
  line-height: 1.4;
  font-size: 0.675rem;
  margin: 1rem auto 0;
}

.says_2 p {
      color: #000;
      margin: 0 auto;
      text-align: left;
      font-size: 1rem;
}
.says_2 p.r_txt {
  text-align: right;
  line-height: 1;
  font-size: 0.725rem;
  margin: 1rem auto 0;
}
.uv {
  max-width: 640px;
  padding: 0 2%;
}
.uv_box {
  margin: 2rem auto;
  padding: 1rem 4%;
}
.icon_txt {
  margin: 0 auto;
}
.uv_box img {
  max-width: 560px;
  margin: 0 auto;
}
.uv_box p {
  max-width: 560px;
  color: #000;
  margin: .5rem auto;
  text-align: left;
  font-size: .875rem;
  line-height: 1.7;
}
p.uv_name {
  font-size: .725rem;
}
.uv_box p.uv_r_txt{
  margin-bottom: 0rem;
  font-size: 0.625rem;
}

/*フッタ---------------------------------------*/
.btn {
  max-width: 100%;
  margin: 40px auto 1rem;
}
.footer p {
    font-size: .75rem;
}
.footer a{
    display: block;
    text-align:center;
    margin: .5rem auto;
    font-size: .75rem;
}
}
/*モバイル版-----------------------------------*/
@media (max-width: 375px) {
#wrapper {
    margin: 0 auto;
    font-size: 1rem;
    line-height: 1.47;
}
.pr {
    font-size: 0.675rem;
    margin: 0rem 1% 0rem;
}
.ttl video {
 margin: -.4rem auto 0;
}
h1 {
  font-size: 1.6rem;
  padding: .8em;
}
h2 {
  font-size: 1.25rem;
}
h3 {
  font-size: 1.25rem;
  }
h4 {
  font-size: 1.25rem;
  }
p.txt {
  font-size: 1rem;
}
p.txt_3 {
  margin-top: .0rem;
  font-size: .875rem;
}

/*フッタ---------------------------------------*/

footer{
    margin: 0 auto;
    padding: 0 auto 2rem;
}
}
@media (max-width: 485px) {
 .comment,.comment_2 {
    max-width: 100%;
    padding: 1rem 0;
  }
.ttl video {
 margin: -.4rem auto 0;
}
  .faceicon {
    float: left;
    margin-right: -4rem;
    width: 3rem;
  }
  .faceicon_2 {
    float: right;
    margin-left: -4rem;
    width: 3rem;
  }
  .faceicon img ,.faceicon_2 img {
    max-width: 2.5rem;
  }
  .chatting, .chatting_2 {
    max-width: 100%;
  }
  .faceicon p, .faceicon_2 p{
    font-size: 0.825rem;
    margin-top: -.25rem;
  }
  .says {
    max-width: 65%;
    display: inline-block;
    position: relative;
    margin: 0 0 0 20%;
    padding: 1rem;
    border-radius: 12px;
  }
  .says:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px;
    left: -24px;
    border: 12px solid transparent;
    border-right: 24px solid #ffefef;
  }
  .says_2 {
    max-width: 65%;
    display: inline-block;
    position: relative;
    margin: 0 20% 0 0;
    padding: 1rem;
    border-radius: 12px;
  }
  .says_2:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 18px;
    right: -24px;
    border: 12px solid transparent;
    border-left: 24px solid #fff7ef;
  }
  .says p {
        color: #000;
        margin: 0 auto;
        text-align: left;
        font-size: 1rem;
  }
  .says p.r_txt {
    text-align: right;
    line-height: 1.4;
    font-size: 0.675rem;
    margin: 1rem auto 0;
  }

  .says_2 p {
        color: #000;
        margin: 0 auto;
        text-align: left;
        font-size: 1rem;
  }
  .says_2 p.r_txt {
    text-align: right;
    line-height: 1;
    font-size: 0.725rem;
    margin: 1rem auto 0;
  }
.uv {

  max-width: 375px;
  padding: .5rem 2%;
}
.uv_box {
  margin: 1rem auto 2rem;
  padding-bottom: 0 2% 1rem;
}

.icon_txt p {
  margin-top: 1.25rem;
}
.uv_box img {
  max-width: 100%;
  padding: 0;
}
p.txt_3 {
  margin-top: 0rem;
  font-size: .875rem;
}
}
@media (max-width: 300px) {
#wrapper {
    margin: 0 auto;
    font-size: 1rem;
    line-height: 1.47;
}
h4 {
  font-size: 1rem;
  }
  p.txt {
  font-size: .875rem;
}
p.c_txt{
  font-size: .875rem;
}
}