@charset "utf-8";

/*============================
#common
============================*/
.under .ttl_block .page_ttl:after {
  width: 92.9rem;
  height: 50rem;
  background-image: url(../image/img_mv.png);
  background-position: center left;
  top: 0;
  transform: translateY(0);
  right: -34.2rem;
}

.img_box img {
  max-width: 100%;
  height: auto;
}

.price_sheet tr {
  border-top: solid 1px #e0f0f6;
  border-bottom: solid 1px #e0f0f6;
}

.price_sheet td {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1;
  padding: 1em;
}

.price_sheet td:first-child {
  width: 35%;
}

.price_sheet td:last-child {
  width: 65%;
}

.price_sheet02 tr:not(.detail) {
  border-top: solid 1px #ebdcb9;
}

.price_sheet02 tr:not(.detail) td {
  text-align: center;
  line-height: 1;
  padding: 1.4em 2.7em;
  text-align: left;
}

.price_sheet02 tr:not(.detail) td:nth-child(1) {
  width: 60%;
  font-size: 2.4rem;
  line-height: 1.4;
  color: #5f4409;
}

.price_sheet02 tr:not(.detail) td:nth-child(2) {
  width: 15%;
  text-align: center;
}

.price_sheet02 tr:not(.detail) td:nth-child(3) {
  width: 25%;
  text-align: right;
}

.price_sheet02 tr.detail {
  border-bottom: solid 1px #ebdcb9;
}

.price_sheet02 tr.detail td {
  padding: 0 2.7em;
}

.price_sheet02 tr.detail td p {
  border-top: dashed 1px #ebdcb9;
  padding: 1em 0 1.5em;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .under .ttl_block .page_ttl:after {
    width: 65.03rem;
    height: 35rem;
    right: -23.94rem;
  }

  .price_sheet02 tr:not(.detail) td {
    padding: 1.2em 1em;
  }

  .price_sheet02 tr:not(.detail) td:nth-child(1) {
    font-size: 2rem;
    width: 50%;
  }

  .price_sheet02 tr:not(.detail) td:nth-child(3) {
    width: 35%;
  }

  .price_sheet02 tr.detail td {
    padding: 0 1em;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .under .ttl_block .page_ttl:after {
    width: 55.74rem;
    height: 30rem;
    right: -26.52rem;
  }

  .price_sheet td {
    font-size: 1.6rem;
    padding: 1em .5em;
  }

  .price_sheet02 tr:not(.detail) td:nth-child(1) {
    font-size: 1.8rem;
  }

  .price_sheet02 tr.detail td {
    padding: 0 .5em;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .under .ttl_block .page_ttl:after {
    width: 46.45rem;
    height: 25rem;
  }

  .price_sheet td {
    font-size: 1.8rem;
  }
  .price_sheet02 tr:not(.detail) {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    padding: 1.25em 0;
    border-top: double 3px #ebdcb9;
  }

  .price_sheet02 tr:not(.detail) td {
    padding: 0;
    font-size: 1.4rem;
  }

  .price_sheet02 tr:not(.detail) td:nth-child(1) {
    width: 100%;
    text-align: center;
    margin-bottom: 1em;
  }

  .price_sheet02 tr:not(.detail) td:nth-child(2) {
    width: 35%;
    text-align: center;
  }

  .price_sheet02 tr:not(.detail) td:nth-child(3) {
    width: 65%;
  }
  .price_sheet02 tr:not(.detail) td.hidden_ss:nth-child(2) + td:nth-child(3){
    width: 100%;
    text-align: center;
  }

  .price_sheet02 tr.detail {
    display: block;
    border-bottom: none;
    font-size:  1.4rem;
  }

  .price_sheet02 tr.detail td {
    padding: 0 .75em 1.25em;
  }

  .price_sheet02 tr.detail td p {
    padding: .75em .75em 0;
  }

  .price_sheet02 tr:not(.detail) td.hidden_sp+td:nth-child(3) {
    width: 100%;
    text-align: center;
  }

  .price_sheet02 tr:last-child {
    border-bottom: double 3px #ebdcb9;
  }
}

/*============================
#banner
============================*/
.sec_link .container{
  flex-wrap: wrap;
}
.sec_link p{
  width: 100%;
  text-align: center;
  margin-bottom: 2em;
}
.sec_link figure{
  width: 48%;
  text-align: center;
}
.sec_link figure a{
  display: block;
}
.sec_link figure a img{
  max-width: 100%;
}
/*@ = HOVER = @*/
@media (min-width : 992px) {
  .sec_link figure a:hover{
    opacity: .5;
  }
}
/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_link .container{
    display: block;
  }
  .sec_link figure{
    width: 100%;
  }
  .sec_link figure:nth-child(n+2){
    margin-top: 3rem;
  }
}
/*============================
#page_navi
============================*/
.page_navi{
  padding-top: 6rem;
}
.page_navi .a_link {
  justify-content: center;
}

.page_navi .a_link li:nth-child(n+2){
  margin-left: 4rem;
}

.page_navi .a_link li a.current{
  pointer-events: none;
}
/*@ = tablet = @*/
@media (max-width : 991px) {
  .page_navi .a_link li a{
    padding: 1.65em 2.5em;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .page_navi {
    padding: 3rem 0;
    background:#5989b9;
  }
  .page_navi .a_link {
    counter-reset: count01 0;
    display: block;
  }
  .page_navi .a_link li{
    counter-increment: count01 1;
  }

  .page_navi .a_link li:nth-child(n+2){
    margin-left: 0;
    margin-top: .75em;
  }
  .page_navi .a_link li a{
    padding: 0;
    font-size: 1.4rem;
  }

  .page_navi .a_link li a:before,
  .page_navi .a_link li a:after{
    display: none;
  }

  .page_navi .a_link li span{
    position: relative;
    padding-left: 2em;
    line-height: 1;
    color:#fff;
    display: block;
  }
  .page_navi .a_link li span:before{
    position:absolute;
    content:counter(count01,decimal-leading-zero)'.';
    width: 2em;
    left: 0;
    top:0;
    text-align: right;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
}
/*============================
#sec_intro01
============================*/
.sec_intro01 {
  position: relative;
}

.sec_intro01:before {
  position: absolute;
  content: "";
  right: 0;
  bottom: 0;
  width: calc(50% - 10rem);
  padding-top: 42%;
  background: url(../image/bg_intro01.jpg) no-repeat center center /cover;
  z-index: 1;
  transform: rotate(-180deg);
}

.sec_intro01 .container {
  position: relative;
  z-index: 2;
}

.sec_intro01 .flex_box{
  flex-direction:row-reverse;
  align-items: flex-start;
}
.sec_intro01 .img_box {
  width: 45%;
}
.sec_intro01 .txt_box {
  width: 50%;
  padding: 5rem 0 5rem;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
}

.sec_intro01 h2 {
  font-size: 2.4rem;
  line-height: 1.6;
  color: #164878;
  margin-bottom: 1.5em;
}

.sec_intro01 .d_list01 {
  line-height: 1.3;
}
/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_intro01:before {
    display: none;
  }

  .sec_intro01 .flex_box {
    flex-wrap: wrap;
  }

  .sec_intro01 .img_box {
    position: relative;
    width: 40%;
  }
  .sec_intro01 .img_box img{
    position:relative;
    z-index:2;
  }
  
  .sec_intro01 .img_box:before{
    position:absolute;
    content:"";
    width:100%;
    height:100%;
    background: url(../image/bg_intro01.jpg) no-repeat center center /cover;
    left:2rem;
    top:2rem;
  }
  .sec_intro01 .txt_box {
    width: 55%;
    padding: 0;
    display: block;
  }

  .sec_intro01 h2 {
    text-align: center;
    width: 100%;
  }


  .sec_intro01 .d_list01 li{
    line-height:1.6;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_intro01:before {
    visibility: hidden;
  }

  .sec_intro01 .flex_box {
    display: block;
  }

  .sec_intro01 .img_box {
    position: relative;
    width: 70%;
    padding:2rem;
    margin: 0 auto 3rem;
  }

  .sec_intro01 .img_box:before {
    left:0;
    top:0;
  }

  .sec_intro01 .img_box img {
    position: relative;
  }

  .sec_intro01 .txt_box {
    padding: 0;
    width: 100%;
    text-align: center;
  }

  .sec_intro01 .d_list01 {
    display: inline-block;
    text-align: left;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_intro01 .img_box {
    width: 100%;
  }
}


/*============================
#sec_intro02
============================*/
.sec_intro02 {
  position: relative;
}

.sec_intro02 .container {
  position: relative;
  z-index: 2;
}

.sec_intro02 .img_box {
  position: relative;
  width: 50%;
}

.sec_intro02 .img_box img {
  position: relative;
  z-index: 2;
}

.sec_intro02 .img_box:before {
  position: absolute;
  content: "";
  right: 31%;
  bottom: 0;
  width: 135%;
  padding-top: 100%;
  background: url(../image/bg_intro02.jpg) no-repeat center center /cover;
  transform:rotateY(-180deg);
  z-index: 1;
}

.sec_intro02 .txt_box {
  width: 41.5%;
  padding: 8.3% 0;
}

.sec_intro02 .deco_box {
  position: relative;
  padding: 30% 0;
}

.sec_intro02 .deco_box:before,
.sec_intro02 .deco_box:after {
  position: absolute;
  content: "";
  width: 100%;
  padding-top: 20%;
  left: 0;
  background: url(../../common/image/decoration/title_deco_g01.png) no-repeat center center /contain;
}

.sec_intro02 .deco_box:before {
  top: 0;
}

.sec_intro02 .deco_box:after {
  bottom: 0;
  transform: rotateX(180deg);
}

.sec_intro02 h2 {
  font-size: 2.4rem;
  line-height: 1.6;
  color: #5f4400;
  text-align: center;
  margin-bottom: 1.5em;
}

.sec_intro02 p {
  line-height: 1.875;
}

.sec_intro02 p:not(:last-child) {
  margin-bottom: 1em;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_intro02 .flex_box {
    align-items:flex-start;
    flex-wrap: wrap;
  }

  .sec_intro02 .img_box {
    width: 40%;
    order: 2;
  }

  .sec_intro02 .img_box:before{
    top:2rem;
    bottom:initial;
    right:2rem;
    left:initial;
    width:100%;
    height:100%;
  }

  .sec_intro02 .txt_box {
    width: 55%;
    padding: 0;
    order: 3;
  }

  .sec_intro02 .deco_box {
    padding: 0;
  }

  .sec_intro02 .deco_box:before,
  .sec_intro02 .deco_box:after {
    display: none;
  }

  .sec_intro02 h2 {
    order: 1;
    width: 100%;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_intro02 {
    background: -moz-linear-gradient(top, #ffffff 0%, #fffaed 25%, #fffaed 75%, #ffffff 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%, #fffaed 25%, #fffaed 75%, #ffffff 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #fffaed 25%, #fffaed 75%, #ffffff 100%);
  }

  .sec_intro02 .flex_box {
    display: block;
  }

  .sec_intro02 .img_box {
    width: 60%;
    margin: 0 auto 3rem;
  }


  .sec_intro02 .img_box:before {
    display:none;
  }

  .sec_intro02 .txt_box {
    width: 100%;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_intro02 {
    background: #fffaed;
  }

  .sec_intro02 .img_box {
    width: 100%;
  }
}

/*============================
#sec_detail
============================*/
/* @ === common === @ */
.sec_detail {
  padding: 0;
}

.sec_detail .sec_box:not(:last-child) {
  padding-bottom: 10rem;
}

.sec_detail .deco_box {
  position: relative;
  padding: 10rem 0 8.5rem;
}

.sec_detail .deco_box:before {
  position: absolute;
  content: "";
  width: calc(100% - 10rem);
  top: 0;
  height: 100%;
  border: solid 1px #badeeb;
  background-image: url(../../common/image/decoration/border_deco_b01_lt.png), url(../../common/image/decoration/border_deco_b01_rt.png), url(../../common/image/decoration/border_deco_b01_rb.png), url(../../common/image/decoration/border_deco_b01_lb.png);
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 6.8rem auto;
  z-index: 1;
}

.sec_detail .deco_box .flex_box {
  position: relative;
  z-index: 2;
  align-items: center;
}

.sec_detail .deco_box .flex_box>div {
  width: 50%;
}

.sec_detail .deco_box .txt_box {
  padding: 0 8rem;
}

.sec_detail .deco_box p {
  line-height: 1.875;
}

.sec_detail .deco_box p:not(:last-child) {
  margin-bottom: 1em;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_detail .sec_box:not(:last-child) {
    padding-bottom: 6rem;
  }

  .sec_detail .deco_box {
    padding: 4.5rem;
  }

  .sec_detail .deco_box:before {
    width: 100%;
  }

  .sec_detail .deco_box .flex_box {
    align-items: flex-start;
  }

  .sec_detail .deco_box .flex_box>div {
    width: 50%;
  }

  .sec_detail .deco_box .txt_box {
    padding: 0;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_detail .deco_box .flex_box {
    display: block;
  }

  .sec_detail .deco_box .flex_box>div {
    width: 100%;
  }

  .sec_detail .deco_box .img_box {
    text-align: center;
    margin-bottom: 2rem;
  }
}

/* @ === s03_1 === @ */
.sec_detail #s03_1 {
  position: relative;
  padding-top: 10rem;
}

.sec_detail #s03_1:before {
  position: absolute;
  content: "";
  left: 0;
  top: 5rem;
  width: 37.5%;
  padding-top: 28.25%;
  background: url(../../common/image/bg_deco02.png) no-repeat center center /contain;
  z-index: 1;
}

.sec_detail #s03_1 .container {
  position: relative;
  z-index: 2;
}

.sec_detail #s03_1 .deco_box:before {
  right: 0;
}

.sec_detail #s03_1 h2 {
  color: #164878;
  font-size: 3.6rem;
  line-height: 1;
  margin-bottom: 1.4em;
  text-align: center;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_detail #s03_1 {
    padding-top: 6rem;
  }

  .sec_detail #s03_1:before {
    display: none;
  }

  .sec_detail #s03_1 .img_box {
    padding-right: 3rem;
  }

  .sec_detail #s03_1 h2 {
    font-size: 3rem;
  }

}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_detail #s03_1 .img_box {
    padding: 0;
  }
}

/* @ === s03_2 === @ */
.sec_detail #s03_2 {
  position: relative;
}

.sec_detail #s03_2:before {
  position: absolute;
  content: "";
  right: 0;
  top: 0;
  width: 37.5%;
  padding-top: 28.25%;
  transform: rotateY(180deg) translateY(-52.5%);
  background: url(../../common/image/bg_deco02.png) no-repeat center center /contain;
  z-index: 1;

}

.sec_detail #s03_2 .container {
  position: relative;
  z-index: 2;
}

.sec_detail #s03_2 .deco_box:before {
  left: 0;
}

.sec_detail #s03_2 .flex_box {
  flex-direction: row-reverse;
}

.sec_detail #s03_2 .sub_box img {
  max-width: 100%;
  height: auto;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_detail #s03_2:before {
    display: none;
  }

  .sec_detail #s03_2 .img_box {
    padding-left: 3rem;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_detail #s03_2 .img_box {
    padding: 0;
  }
}

/* @ === s03_3 === @ */
.sec_detail #s03_3 {
  position: relative;
}

.sec_detail #s03_3:before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: calc(100% - 10rem);
  background: -moz-linear-gradient(top, #ffffff 0%, #eef7ff 25%, #eef7ff 75%, #ffffff 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #eef7ff 25%, #eef7ff 75%, #ffffff 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #eef7ff 25%, #eef7ff 75%, #ffffff 100%);
  z-index: 1;
}

.sec_detail #s03_3 .container {
  position: relative;
  z-index: 2;
}

.sec_detail #s03_3 .txt_box {
  margin-bottom: 4.5em;
}

.sec_detail #s03_3 p {
  text-align: center;
  line-height: 1.875;
  letter-spacing: 0.03em;
}

.sec_detail #s03_3 p:not(:last-child) {
  margin-bottom: 1em;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_detail #s03_3 .txt_box {
    margin-bottom: 3em;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_detail #s03_3 p {
    text-align: left;
  }

  .sec_detail #s03_3 p br {
    display: none;
  }
}


/*============================
#sec_effect
============================*/
.sec_effect {
  background: url(../image/bg_effect.jpg) no-repeat center center / cover;
}

.sec_effect .ttl_box {
  text-align: center;
  line-height: 1;
  font-size: 3.6rem;
  margin-bottom: 2.25em;
}

.sec_effect .ttl_box h2 {
  color: #444;
  margin-bottom: .8em;
}

.sec_effect .ttl_box p {
  font-size: .5em;
}

.sec_effect .effect_list {
  counter-reset: count01;
  padding-bottom: 10rem;
  margin-bottom: 10rem;
}

.sec_effect .effect_list ul {
  flex-wrap: wrap;
  justify-content: flex-start;
}

.sec_effect .effect_list li {
  position: relative;
  width: 25%;
  padding: 1rem;
  counter-increment: count01 1;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.sec_effect .effect_list li:nth-child(even) {
  transform: translateY(10rem);
}

.sec_effect .effect_list li:before {
  position: absolute;
  content: '0'counter(count01, decimal-leading-zero);
  top: 50%;
  left: 50%;
  font-size: 15rem;
  line-height: 1;
  opacity: .15;
  letter-spacing: 0;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.sec_effect .effect_list .inner {
  position: relative;
  padding: 15rem 2rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
  z-index: 2;
}

.sec_effect .effect_list .inner:before,
.sec_effect .effect_list .inner:after {
  position: absolute;
  content: "";
  width: 26.5%;
  padding-top: 26.5%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}

.sec_effect .effect_list .inner:before {
  left: 0;
  top: 0;
}

.sec_effect .effect_list .inner:after {
  right: 0;
  bottom: 0;
  transform: rotate(180deg);
}

.sec_effect .effect_list p {
  text-align: center;
  color: #5f4400;
  font-size: 2.4rem;
  line-height: 1.6;
}

/* odd */
.sec_effect .effect_list ul:nth-child(odd) li:nth-child(odd),
.sec_effect .effect_list ul:nth-child(even) li:nth-child(even) {
  background-image: url(../image/bg_effect_b.png);
}

.sec_effect .effect_list ul:nth-child(odd) li:nth-child(odd) .inner:before,
.sec_effect .effect_list ul:nth-child(odd) li:nth-child(odd) .inner:after,
.sec_effect .effect_list ul:nth-child(even) li:nth-child(even) .inner:before,
.sec_effect .effect_list ul:nth-child(even) li:nth-child(even) .inner:after {
  background-image: url(../image/deco_effect_b.png);
}

.sec_effect .effect_list ul:nth-child(odd) li:nth-child(odd):before,
.sec_effect .effect_list ul:nth-child(even) li:nth-child(even):before {
  color: #598ab9;
}

/* even */
.sec_effect .effect_list ul:nth-child(odd) li:nth-child(even),
.sec_effect .effect_list ul:nth-child(even) li:nth-child(odd) {
  background-image: url(../image/bg_effect_g.png);
}

.sec_effect .effect_list ul:nth-child(odd) li:nth-child(even) .inner:before,
.sec_effect .effect_list ul:nth-child(odd) li:nth-child(even) .inner:after,
.sec_effect .effect_list ul:nth-child(even) li:nth-child(odd) .inner:before,
.sec_effect .effect_list ul:nth-child(even) li:nth-child(odd) .inner:after {
  background-image: url(../image/deco_effect_g.png);
}

.sec_effect .effect_list ul:nth-child(odd) li:nth-child(even):before,
.sec_effect .effect_list ul:nth-child(even) li:nth-child(odd):before {
  color: #ccb682;
}

.sec_effect .wrap_box {
  background: #fff;
  align-items: center;
}

.sec_effect .img_box {
  max-width: 45%;
}

.sec_effect .txt_box {
  width: 50%;
  padding: 5rem 10rem 5rem 0;
}

.sec_effect h3 {
  font-size: 2.4rem;
  line-height: 1.6;
  margin-bottom: 1.5em;
}

.sec_effect p {
  line-height: 1.875;
}

.sec_effect p:not(:last-child) {
  margin-bottom: 1em;
}


/*@ = PC ONLY = @*/
@media screen and (min-width: 992px) {

  /*@ Animate @*/
  .sec_effect .effect_list[animate-scroll] li {
    opacity: 0;
    transition: .6s;
    transition-timing-function: ease-in;
  }

  .sec_effect .effect_list[animate-scroll] li:nth-child(even) {
    transform: translateY(20rem);
  }

  .sec_effect .effect_list[animate-scroll] li:nth-child(odd) {
    transform: translateY(-10rem);
  }

  .sec_effect .effect_list[animate-scroll="true"] li {
    opacity: 1;
  }

  .sec_effect .effect_list[animate-scroll="true"] li:nth-child(even) {
    transform: translateY(10rem);
  }

  .sec_effect .effect_list[animate-scroll="true"] li:nth-child(odd) {
    transform: translateY(0rem);
  }
}


/*@ = laptop = @*/
@media (max-width : 1199px) {
  .sec_effect .effect_list li:before {
    font-size: 12rem;
  }

  .sec_effect .effect_list p {
    font-size: 2rem;
  }
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_effect .ttl_box {
    margin-bottom: 1.75em;
  }

  .sec_effect .ttl_box h2 {
    font-size: 3rem;
  }

  .sec_effect .ttl_box p {
    font-size: .45em;
  }

  .sec_effect .effect_list {
    padding-bottom: 5rem;
  }

  .sec_effect .effect_list li:nth-child(even) {
    transform: translateY(5rem);
  }

  .sec_effect .effect_list li:before {
    font-size: 9rem;
  }

  .sec_effect .effect_list .inner {
    padding: 8rem 1rem;
  }

  .sec_effect .effect_list p {
    font-size: 1.6rem;
  }

  .sec_effect .txt_box {
    padding: 0 4rem 0 0;
  }

  .sec_effect h3 {
    font-size: 2rem;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_effect .effect_list {
    padding: 0;
    margin-bottom: 6rem;
  }

  .sec_effect .effect_list li {
    width: 33%;
  }

  .sec_effect .effect_list li:nth-child(even) {
    transform: translateY(0);
  }

  .sec_effect .effect_list .inner {
    padding: 6rem 0;
  }

  .sec_effect .effect_list p {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: 4em;
  }

  .sec_effect .wrap_box {
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }

  .sec_effect .img_box {
    max-width: 40%;
  }

  .sec_effect .txt_box {
    width: 100%;
    padding-right: 0;
    padding: 3rem;
  }

  .sec_effect h3 {
    width: 60%;
    padding-left: 1em;
    font-size: 1.8rem;
    margin-bottom: 0;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_effect .ttl_box {
    font-size: 3rem;
  }

  .sec_effect .effect_list li {
    width: 100%;
  }

  .sec_effect .effect_list .inner {
    padding: 3rem 0;
  }

  .sec_effect .effect_list .inner:before,
  .sec_effect .effect_list .inner:after {
    width: 12%;
    padding-top: 12%;
  }

  .sec_effect .wrap_box {
    background: none;
  }

  .sec_effect .txt_box {
    padding: 1.5rem 3rem 3re, ;
  }

  .sec_effect .img_box {
    max-width: 75%;
    margin: 0 auto 3rem;
  }

  .sec_effect h3 {
    width: 100%;
    text-align: center;
    font-size: 2rem;
    padding: 0;
  }
}

/*============================
#sec_body
============================*/
/* @ === common === @ */
.sec_body {
  position: relative;
}

.sec_body:before {
  position: absolute;
  content: "";
  left: 0;
  top: 8rem;
  width: 100%;
  height: calc(100% - 30rem);
  background: url(../image/bg_body.jpg) no-repeat center center / cover;
}

.sec_body>* {
  position: relative;
  z-index: 2;
}

.sec_body .ttl_box p {
  font-size: 1.8rem;
  text-align: center;
  line-height: 2.125;
}

.sec_body .ttl_box p + .link_btn{
  text-align: center;
  margin-top: 3rem;
}
.sec_body .sec_box:nth-child(n+2) {
  margin-top: 8rem;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_body .sec_box:nth-child(n+2) {
    margin-top: 6rem;
  }
  .sec_body .ttl_box p {
    font-size: 1.6rem;
    line-height: 2;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_body .ttl_box p {
    font-size: 1.4rem;
    line-height: 2;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_body {
    padding: 0;
  }

  .sec_body .sec_box:nth-child(n+2) {
    margin-top: 4rem;
  }

  .sec_body .ttl_box p {
    text-align: left;
  }

  .sec_body .ttl_box .lead p br {
    display: none;
  }
}

/* @ sec_box01 @ */
.sec_body .sec_box01:nth-of-type(even) .flex_box {
  flex-direction: row-reverse;
}

.sec_body .sec_box01 .img_box {
  width: 58.3%;
}

.sec_body .sec_box01 .txt_box {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
  width: 41.7%;
}

.sec_body .sec_box01 .txt_box:after {
  position: absolute;
  content: "";
  bottom: 0;
  width: 27.6%;
  padding-top: 20.8%;
  background: url(../../common/image/logo_b.png) no-repeat center center /contain;
}

.sec_body .sec_box01 .deco_box {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
  padding: 7rem 8rem;
  min-height: 50rem;
  background: #fff;
}

.sec_body .sec_box01 .deco_box:before,
.sec_body .sec_box01 .deco_box:after {
  position: absolute;
  content: "";
  width: 14.4%;
  padding-top: 14.4%;
  background: url(../image/deco_body_b.png) no-repeat center center /contain;
}

.sec_body .sec_box01 .deco_box:before {
  top: 1rem;
}

.sec_body .sec_box01 .deco_box:after {
  bottom: 1rem;
}

.sec_body .sec_box01 .deco_box h3 {
  position: relative;
  text-align: center;
  font-size: 2.4rem;
  padding-bottom: 1em;
  color: #164878;
  margin-bottom: 1em;
  line-height: 1.4;
}

.sec_body .sec_box01 .deco_box h3:after {
  position: absolute;
  content: "";
  width: 40%;
  height: 1px;
  left: 50%;
  bottom: 0;
  background: #164878;
  transform: translateX(-50%);
}

.sec_body .sec_box01 .deco_box p {
  line-height: 1.875;
}

.sec_body .sec_box01 .deco_box p:not(:last-child) {
  margin-bottom: 1em;
}

.sec_body .sec_box01:nth-of-type(odd) .txt_box:after {
  right: 0;
}

.sec_body .sec_box01:nth-of-type(odd) .deco_box:before {
  right: 1rem;
  transform: rotate(0);
}

.sec_body .sec_box01:nth-of-type(odd) .deco_box:after {
  left: 1rem;
  transform: rotate(180deg);
}

.sec_body .sec_box01:nth-of-type(even) .txt_box:after {
  left: 0;
}

.sec_body .sec_box01:nth-of-type(even) .deco_box:before {
  left: 1rem;
  transform: rotate(-90deg);
}

.sec_body .sec_box01:nth-of-type(even) .deco_box:after {
  right: 1rem;
  transform: rotate(90deg);
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_body .sec_box01 .img_box {
    width: 40%;
  }

  .sec_body .sec_box01 .txt_box {
    width: 55%;
  }

  .sec_body .sec_box01 .txt_box:after {
    display: none;
  }

  .sec_body .sec_box01 .deco_box {
    min-height: 1px;
    padding: 7rem 5rem;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_body .sec_box01 .container {
    position: relative;
    background: #fff;
  }

  .sec_body .sec_box01 .flex_box {
    position: relative;
    display: block;
    padding: 7rem;
  }

  .sec_body .sec_box01 .container:before,
  .sec_body .sec_box01 .container:after,
  .sec_body .sec_box01 .flex_box:before,
  .sec_body .sec_box01 .flex_box:after {
    position: absolute;
    content: "";
    width: 7rem;
    padding-top: 7rem;
    background: url(../image/deco_body_b.png) no-repeat center center /contain;
  }

  .sec_body .sec_box01 .container:before,
  .sec_body .sec_box01 .flex_box:before {
    top: 2rem;
  }

  .sec_body .sec_box01 .container:after,
  .sec_body .sec_box01 .flex_box:after {
    bottom: 2rem;
  }

  .sec_body .sec_box01 .container:before,
  .sec_body .sec_box01 .container:after {
    left: 2rem;
  }

  .sec_body .sec_box01 .flex_box:before,
  .sec_body .sec_box01 .flex_box:after {
    right: 2rem;
  }

  .sec_body .sec_box01 .container:before {
    transform: rotate(-90deg);
  }

  .sec_body .sec_box01 .container:after {
    transform: rotate(180deg);
  }

  .sec_body .sec_box01 .flex_box:after {
    transform: rotate(90deg);
  }

  .sec_body .sec_box01 .img_box {
    width: 100%;
    text-align: center;
    margin: 0 auto 3rem;
  }

  .sec_body .sec_box01 .txt_box {
    width: 100%;
  }

  .sec_body .sec_box01 .deco_box {
    padding: 0;
    background: none;
  }

  .sec_body .sec_box01 .deco_box:before,
  .sec_body .sec_box01 .deco_box:after {
    display: none;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_body .sec_box01 .flex_box {
    padding: 5rem;
  }

  .sec_body .sec_box01 .container:before,
  .sec_body .sec_box01 .flex_box:before {
    top: 1rem;
  }

  .sec_body .sec_box01 .container:after,
  .sec_body .sec_box01 .flex_box:after {
    bottom: 1rem;
  }

  .sec_body .sec_box01 .container:before,
  .sec_body .sec_box01 .container:after {
    left: 1rem;
  }

  .sec_body .sec_box01 .flex_box:before,
  .sec_body .sec_box01 .flex_box:after {
    right: 1rem;
  }

  .sec_body .sec_box01 .deco_box h3 {
    font-size: 2.2rem;
  }
}



/* @ === s05_2 === @ */
.sec_body #s05_2 .d_list01 {
  line-height: 1.3;
  margin-top: 2em;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_body #s05_2 .d_list01 {
    margin-top: 1em;
  }
}

/* @ === s05_6 === @ */
.sec_body #s05_6 section {
  width: 46%;
}

.sec_body #s05_6 section .deco_box {
  padding: 5rem;
  border: solid 1px #e0f0f6;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 5.7rem auto, 5.7rem auto, 5.7rem auto, 5.7rem auto;
  background-image: url(../../common/image/decoration/border_deco_db01_lt.png), url(../../common/image/decoration/border_deco_db01_rt.png), url(../../common/image/decoration/border_deco_db01_rb.png), url(../../common/image/decoration/border_deco_db01_lb.png);
}

.sec_body #s05_6 section h3 {
  font-size: 2.4rem;
  color: #164878;
  text-align: center;
  margin-bottom: 1.25em;
}


.sec_body #s05_6 section p {
  margin-top: 1.5em;
  line-height: 1.875;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_body #s05_6 .flex_box {
    display: block;
  }

  .sec_body #s05_6 section {
    width: 100%;
  }

  .sec_body #s05_6 section:nth-child(n+2) {
    margin-top: 4rem;
  }

  .sec_body #s05_6 section p {
    margin-top: 1em;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_body #s05_6 section .deco_box {
    padding: 4rem;
  }

  .sec_body #s05_6 section h3 {
    font-size: 2.2rem;
  }
}

/* @ === s05_7 === @ */
.sec_body #s05_7 .deco_box {
  padding: 5rem;
  border: solid 1px #e0f0f6;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 5.7rem auto, 5.7rem auto, 5.7rem auto, 5.7rem auto;
  background-image: url(../../common/image/decoration/border_deco_db01_lt.png), url(../../common/image/decoration/border_deco_db01_rt.png), url(../../common/image/decoration/border_deco_db01_rb.png), url(../../common/image/decoration/border_deco_db01_lb.png);
}

.sec_body #s05_7 h3 {
  font-size: 2.4rem;
  color: #164878;
  text-align: center;
  margin-bottom: 1.25em;
}

.sec_body #s05_7 p {
  text-align: center;
  line-height: 1.875;
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_body #s05_7 .deco_box {
    padding: 4rem;
  }

  .sec_body #s05_7 h3 {
    font-size: 2.2rem;
  }

  .sec_body #s05_7 p {
    text-align: left;
  }
}

/* @ === s05_8 === @ */
.sec_body #s05_8 h3 {
  text-align: center;
  font-size: 3.6rem;
  margin-bottom: 1em;
  color: #b50568;
}

.sec_body #s05_8 .deco_box {
  position: relative;
  padding: 10rem 0 8.5rem;
}

.sec_body #s05_8 .deco_box:before {
  position: absolute;
  content: "";
  width: calc(100% - 10rem);
  right: 0;
  top: 0;
  height: 100%;
  border: solid 1px #badeeb;
  background-image: url(../../common/image/decoration/border_deco_b01_lt.png), url(../../common/image/decoration/border_deco_b01_rt.png), url(../../common/image/decoration/border_deco_b01_rb.png), url(../../common/image/decoration/border_deco_b01_lb.png);
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 6.8rem auto;
  z-index: 1;
}

.sec_body #s05_8 .deco_box>div {
  position: relative;
  z-index: 2;
}

.sec_body #s05_8 .upper {
  align-items: center;
}

.sec_body #s05_8 .upper .img_box {
  width: 50%;
}

.sec_body #s05_8 .upper .txt_box {
  padding: 0 8rem;
  width: 50%;
}

.sec_body #s05_8 .upper h4 {
  font-size: 3rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 1.75em;
  color: #164878;
}

.sec_body #s05_8 .upper .txt_s {
  font-size: .6em;
  margin-left: .5em;
}

.sec_body #s05_8 .upper .txt_s:before {
  content: " (";
}

.sec_body #s05_8 .upper .txt_s:after {
  content: ") ";
}

.sec_body #s05_8 .upper p {
  line-height: 1.875;
  margin-bottom: 1em;
}

.sec_body #s05_8 .bottom {
  padding: 0 8rem 0 18rem;
  margin-top: 10rem;
}

.sec_body #s05_8 .bottom li {
  width: 26%;
}

.sec_body #s05_8 .bottom .img_box {
  margin-bottom: 1em;
}

.sec_body #s05_8 .bottom h4 {
  color: #164878;
  margin-bottom: .45em;
  font-size: 1.6rem;
}

.sec_body #s05_8 .bottom p {
  line-height: 1.875;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_body #s05_8 h3 {
    font-size: 3rem;
  }

  .sec_body #s05_8 .deco_box {
    padding: 5.5rem;
  }

  .sec_body #s05_8 .deco_box:before {
    width: 100%;
  }

  .sec_body #s05_8 .upper {
    flex-wrap: wrap;
  }

  .sec_body #s05_8 .upper .img_box {
    width: 40%;
  }

  .sec_body #s05_8 .upper .txt_box {
    padding: 0;
    width: 100%;
    margin-top: 2rem;
  }

  .sec_body #s05_8 .upper h4 {
    margin-bottom: 0;
    width: 55%;
    flex-direction: column;
    align-items: stretch;
  }


  .sec_body #s05_8 .upper .txt_s {
    margin-top: .75em;
  }

  .sec_body #s05_8 .upper p {
    margin-bottom: 1.5em;
  }

  .sec_body #s05_8 .bottom {
    padding: 0;
    margin-top: 5rem;
  }

  .sec_body #s05_8 .bottom li {
    width: 30%;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_body #s05_8 .upper {
    display: block;
  }

  .sec_body #s05_8 .upper .img_box {
    width: 100%;
  }

  .sec_body #s05_8 .upper h4 {
    width: 100%;
    margin-top: 3rem;
    text-align: center;
  }

  .sec_body #s05_8 .bottom p {
    font-size: 1.3rem;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_body #s05_8 .deco_box {
    padding: 4.5rem;
  }

  .sec_body #s05_8 .upper h4 {
    font-size: 2.4rem;
  }

  .sec_body #s05_8 .bottom {
    margin-top: 3rem;
  }

  .sec_body #s05_8 .bottom ul {
    display: block;
  }

  .sec_body #s05_8 .bottom li {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }

  .sec_body #s05_8 .bottom li:nth-child(n+2) {
    margin-top: 2.5rem
  }

  .sec_body #s05_8 .bottom .img_box {
    width: 35%;
    margin-bottom: 0;
  }

  .sec_body #s05_8 .bottom .txt_box {
    width: 60%;
  }
}

/*============================
#sec_facial
============================*/
.sec_facial .ttl_box {
  margin-bottom: 7.5rem;
}

.sec_facial .ttl_box p {
  font-size: 1.8rem;
  text-align: center;
  line-height: 2.125;
}

.sec_facial .ttl_box p:not(:last-child) {
  margin-bottom: .5em;
}

.sec_facial .ttl_box .lead + .link_btn{
  text-align: center;
  margin-top: 3rem;
}
.sec_facial .sec_box {
  position: relative;
}

.sec_facial .sec_box:before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: calc(100% - 10rem);
  background: -moz-linear-gradient(top, #ffffff 0%, #fffaed 25%, #fffaed 75%, #ffffff 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #fffaed 25%, #fffaed 75%, #ffffff 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #fffaed 25%, #fffaed 75%, #ffffff 100%);
  z-index: 1;
}

.sec_facial .sec_box .container {
  position: relative;
  z-index: 2;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_facial .ttl_box {
    margin-bottom: 5rem;
  }

  .sec_facial .ttl_box p {
    font-size: 1.6rem;
    line-height: 2;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_facial .ttl_box p {
    font-size: 1.4rem;
    line-height: 2;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_facial .ttl_box p {
    text-align: left;
  }
  .sec_facial .ttl_box .lead p br {
    display: none;
  }
}

/* @ === sec_flow === @ */
.sec_flow {
  margin-bottom: 10rem;
}

.sec_flow .flow_box {
  position: relative;
  padding-top: 8rem;
}

.sec_flow .flow_box:before {
  position: absolute;
  content: "";
  left: 50%;
  top: 0;
  width: 2px;
  height: 100%;
  transform: translateX(-50%);
  background: url(../image/v_line.png) repeat-y center center;
}

.sec_flow .inner {
  width: 50%;
}

.sec_flow .txt_box h4 {
  position: relative;
  font-size: 2.4rem;
  color: #5f4400;
  margin-bottom: .9em;
}

.sec_flow .txt_box h4:after {
  position: absolute;
  content: "";
  bottom: 0px;
  width: 10rem;
  height: 2px;
  background: url(../image/h_line.png) repeat-x;
}

.sec_flow .txt_box p {
  line-height: 1.875;
  margin-bottom: 1.5em;
}


.sec_flow section:nth-child(odd) .inner {
  margin-right: auto;
  padding-right: 12rem;
}

.sec_flow section:nth-child(even) .inner {
  margin-left: auto;
  padding-left: 12rem;
}

.sec_flow section:nth-child(odd) .txt_box {
  text-align: right;
}

.sec_flow section:nth-child(even) .txt_box {
  text-align: left;
}

.sec_flow section:nth-child(odd) .txt_box h4:after {
  right: -12rem;
  background-position: right center;
}

.sec_flow section:nth-child(even) .txt_box h4:after {
  left: -12rem;
  background-position: left center;

}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_flow {
    margin-bottom: 8rem;
  }

  .sec_flow .flow_box {
    padding-top: 6rem;
  }

  .sec_flow .txt_box h4:after {
    width: 4rem;
  }

  .sec_flow section:nth-child(odd) .inner {
    padding-right: 6rem;
  }

  .sec_flow section:nth-child(even) .inner {
    padding-left: 6rem;
  }

  .sec_flow section:nth-child(odd) .txt_box h4:after {
    right: -6rem;
  }

  .sec_flow section:nth-child(even) .txt_box h4:after {
    left: -6rem;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_flow .inner {
    position: relative;
    width: 100%;
    padding: 5rem;
    border: solid 1px #eadab6;
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: left top, right top, right bottom, left bottom;
    background-size: 5.7rem auto, 5.7rem auto, 5.7rem auto, 5.7rem auto;
    background-image: url(../../common/image/decoration/border_deco_g01_lt.png), url(../../common/image/decoration/border_deco_g01_rt.png), url(../../common/image/decoration/border_deco_g01_rb.png), url(../../common/image/decoration/border_deco_g01_lb.png);
    background-color: #fff;
    z-index: 3;
  }

  .sec_flow .flow_box {
    padding: 4rem 0;
  }

  .sec_flow .txt_box h4:after {
    display: none;
  }

  .sec_flow section:nth-child(n+2) {
    margin-top: 4rem;
  }

  .sec_flow section:nth-child(odd) .inner,
  .sec_flow section:nth-child(even) .inner {
    padding: 5rem;
  }

  .sec_flow section:nth-child(odd) .txt_box,
  .sec_flow section:nth-child(even) .txt_box {
    text-align: center;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_flow {
    margin-bottom: 4rem;
  }

  .sec_flow section:nth-child(odd) .inner,
  .sec_flow section:nth-child(even) .inner {
    padding: 3.5rem;
  }
}

/* @ === sec_price === @ */
.sec_price>*:nth-child(n+2) {
  margin-top: 8rem;
}

.sec_price .deco_box_g01 {
  position: relative;
  padding: 10rem 0 8rem;
}

.sec_price .deco_box_g01:before {
  position: absolute;
  content: "";
  width: calc(100% - 10rem);
  top: 0;
  height: 100%;
  border: solid 1px #eadab6;
  background-image: url(../../common/image/decoration/border_deco_g03_lt.png), url(../../common/image/decoration/border_deco_g03_rt.png), url(../../common/image/decoration/border_deco_g03_rb.png), url(../../common/image/decoration/border_deco_g03_lb.png);
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 6.8rem auto;
  z-index: 1;
}

.sec_price .deco_box_g01 .flex_box {
  position: relative;
  z-index: 2;
  align-items: stretch;
}

.sec_price .deco_box_g01 .flex_box>div {
  width: 50%;
}

.sec_price .deco_box_g01 .txt_box {
  padding: 5rem 8rem 5rem 7.5rem;
}

.sec_price .deco_box_g01 .price_sheet tr {
  border-top: solid 1px #eadab6;
  border-bottom: solid 1px #eadab6;
}

.sec_price .deco_box_g01 h3 {
  font-size: 3rem;
  margin-bottom: 0.8em;
  color: #b50568;
  line-height: 1.5;
}

.sec_price .deco_box_g01 .txt_box p {
  margin-bottom: 1.5em;
}

.sec_price .deco_box_g01 .sub_flow {
  position: relative;
  display: inline-block;
}

.sec_price .deco_box_g01 .sub_flow:not(:last-of-type) {
  padding-right: 3em;
}

.sec_price .deco_box_g01 .sub_flow:not(:last-of-type):after {
  position: absolute;
  right: 1em;
  top: 0;
  content: "\02192";
}

.sec_price .deco_box_g01 .price_sheet .notes {
  display: inline-block;
  position: relative;
}

.sec_price .deco_box_g01 .price_sheet .notes:after {
  position: absolute;
  content: "※1";
  font-size: .66em;
  left: 100%;
  top: -.15em;
}

.sec_price .deco_box_g01 .notes_list {
  margin-top: 1em;
}

.sec_price .deco_box_g01 .notes_list li {
  position: relative;
  padding-left: 2.5em;
}

.sec_price .deco_box_g01 .notes_list li:before {
  position: absolute;
  content: "※";
  left: 0;
  top: 0;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_price>*:nth-child(n+2) {
    margin-top: 6rem;
  }

  .sec_price .deco_box_g01 {
    padding: 5.5rem;
  }

  .sec_price .deco_box_g01:before {
    width: 100%;
  }

  .sec_price .deco_box_g01 .flex_box>.img_box {
    width: 45%;
  }

  .sec_price .deco_box_g01 .txt_box {
    padding: 0;
  }

  .sec_price .deco_box_g01 h3 {
    font-size: 2.6rem;
  }

  .sec_price .deco_box_g01 .sub_flow:not(:last-of-type) {
    padding-right: 2em;
  }

  .sec_price .deco_box_g01 .sub_flow:not(:last-of-type):after {
    right: .5em;
  }

  .sec_price .deco_box_g01 .notes_list {
    margin-top: 1.5em;
  }

  .sec_price .deco_box_g01 .notes_list li {
    line-height: 1.4;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_price .deco_box_g01 .flex_box {
    display: block;
  }

  .sec_price .deco_box_g01 .flex_box>.img_box {
    width: 100%;
  }

  .sec_price .deco_box_g01 .flex_box>div {
    width: 100%;
  }

  .sec_price .deco_box_g01 .txt_box {
    margin-top: 2rem;
  }

  .sec_price .deco_box_g01 h3 {
    text-align: center;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_price .deco_box_g01 {
    padding: 4.5rem;
  }

  .sec_price .deco_box_g01 h3 {
    font-size: 2.4rem;
  }
}

/* @ === s06_2a === @ */
.sec_price #s06_2a .deco_box_g01:before {
  right: 0;
}

/* @ === s06_2b === @ */
.sec_price #s06_2b .deco_box_g01:before {
  left: 0;
}

.sec_price #s06_2b .deco_box_g01 .flex_box {
  flex-direction: row-reverse;
}

.sec_price #s06_2b .deco_box_g01 .notes_list li:nth-child(1):before {
  content: "※1";
}

/* @ === s06_2c === @ */
.sec_price #s06_2c h3 {
  font-size: 3rem;
  text-align: center;
  color: #5f4400;
  margin-bottom: .85em;
}

.sec_price #s06_2c p {
  text-align: center;
  line-height: 1.875;
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_price #s06_2c h3 {
    font-size: 2.4rem;
  }
}

/* @ === s06_2d === @ */
.sec_price #s06_2d .deco_box_g02 {
  padding: 5rem;
  border: solid 1px #eadab6;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 5.7rem auto, 5.7rem auto, 5.7rem auto, 5.7rem auto;
  background-image: url(../../common/image/decoration/border_deco_g01_lt.png), url(../../common/image/decoration/border_deco_g01_rt.png), url(../../common/image/decoration/border_deco_g01_rb.png), url(../../common/image/decoration/border_deco_g01_lb.png);

}

.sec_price #s06_2d .deco_box_g02 h3 {
  font-size: 3.6rem;
  margin-bottom: 1em;
  text-align: center;
  color: #b50568;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_price #s06_2d .deco_box_g02 h3 {
    font-size: 3rem;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_price #s06_2d .deco_box_g02 h3 {
    font-size: 2.4rem;
  }
}

/* @ === s06_2e === @ */
.sec_price #s06_2e .deco_box_g01:before {
  right: 0;
}

/*============================
#sec_faq
============================*/
.sec_faq .container {
  max-width: 1000px;
}

.sec_faq .deco_box {
  border: solid 1px #e0f0f6;
  padding: 9rem 8rem;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: left top, right top, right bottom, left bottom;
  background-size: 11.1rem auto, 11.1rem auto, 11.1rem auto, 11.1rem auto;
  background-image: url(../../common/image/decoration/border_deco_b03_lt.png), url(../../common/image/decoration/border_deco_b03_rt.png), url(../../common/image/decoration/border_deco_b03_rb.png), url(../../common/image/decoration/border_deco_b03_lb.png);

}

.sec_faq dl {
  counter-reset: count02 0;
}

.sec_faq dt,
.sec_faq dd {
  padding-left: 5rem;
}

.sec_faq dt {
  position: relative;
  font-size: 1.8rem;
  counter-increment: count02 1;
  line-height: 2.125;
}

.sec_faq dt:before {
  position: absolute;
  content: counter(count02, decimal-leading-zero)'.';
  left: 0;
  top: 0;
  color: #164878;
}

.sec_faq h3 {
  line-height: inherit;
}

.sec_faq dd:not(:last-child) {
  margin-bottom: 2.5em;
}

.sec_faq p {
  line-height: 1.875;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_faq {
    padding-top: 2rem;
  }

  .sec_faq .deco_box {
    padding: 7rem 5rem;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_faq .deco_box {
    padding: 5rem 3rem;
    background-size: 8rem auto;
  }

  .sec_faq .ttl_deco_02 {

    margin-bottom: 1em;
  }

  .sec_faq .ttl_deco_02 span {
    padding: 0;
  }

  .sec_faq .ttl_deco_02 span:before,
  .sec_faq .ttl_deco_02 span:after {
    display: none
  }

  .sec_faq dd {
    font-size: 1.4rem;
    padding-left: 0;
  }

  .sec_faq dt {
    line-height: 1.6;
    font-size: 1.6rem;
    border-bottom: solid 1px #e0f0f6;
    padding-bottom: .75em;
    margin-bottom: 1em;
    padding-left: 2em
  }

  .sec_faq dd {
    font-size: 1.4rem;
    padding-left: 0;
  }
}

/*============================
#sec_taboo
============================*/
.sec_taboo {
  background: url(../image/bg_taboo.jpg) no-repeat center bottom /cover;
}

.sec_taboo .flex_box {
  background: #fff;
  align-items: stretch;
}

.sec_taboo .img_box {
  width: 41.5%;
}

.sec_taboo .img_box img {
  width: 100%;
  height: 100%;
}

.sec_taboo .txt_box {
  width: 58.5%;
  padding: 4rem 8rem 4rem 10rem;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-direction: column;
}

.sec_taboo h2 {
  font-size: 3rem;
  margin-bottom: 1em;
  color: #b50568;
}

.sec_taboo p {
  margin-bottom: 1em;
  line-height: 1.875;
}

.sec_taboo .d_list01 {
  margin-top: 2em;
}

/*@ = tablet = @*/
@media (max-width : 991px) {
  .sec_taboo .flex_box {
    display: block;
  }

  .sec_taboo .img_box {
    width: 100%;
    height: 45vw;
  }

  .sec_taboo .txt_box {
    width: 100%;
    padding: 4rem 5rem;
  }

  .sec_taboo h2 {
    font-size: 2.6rem;
  }

  .sec_taboo .d_list01 {
    margin-top: 1.5em;
  }
}

/*@ = Mobile L = @*/
@media (max-width : 767px) {
  .sec_taboo .txt_box {
    padding: 4rem;
  }
}

/*@ = Mobile S = @*/
@media (max-width : 575px) {
  .sec_taboo .txt_box {
    padding: 3rem;
  }

  .sec_taboo h2 {
    font-size: 2.2rem;
  }

  .sec_taboo p {
    line-height: 1.6;
  }

  .sec_taboo .d_list01 {
    margin-top: .5em;
  }
}