@charset "UTF-8";


/*
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 100;
  src: url("../fonts/NotoSansCJKjp-Thin.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Thin.woff") format("woff"), url("../fonts/NotoSansCJKjp-Thin.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Thin.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/NotoSansCJKjp-Light.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Light.woff") format("woff"), url("../fonts/NotoSansCJKjp-Light.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Light.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/NotoSansCJKjp-DemiLight.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-DemiLight.woff") format("woff"), url("../fonts/NotoSansCJKjp-DemiLight.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-DemiLight.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSansCJKjp-Regular.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Regular.woff") format("woff"), url("../fonts/NotoSansCJKjp-Regular.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Regular.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSansCJKjp-Medium.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Medium.woff") format("woff"), url("../fonts/NotoSansCJKjp-Medium.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Medium.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSansCJKjp-Bold.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Bold.woff") format("woff"), url("../fonts/NotoSansCJKjp-Bold.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Bold.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/NotoSansCJKjp-Black.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Black.woff") format("woff"), url("../fonts/NotoSansCJKjp-Black.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Black.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'Noto Sans JP Black';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/NotoSansCJKjp-Black.woff2") format("woff2"), url("../fonts/NotoSansCJKjp-Black.woff") format("woff"), url("../fonts/NotoSansCJKjp-Black.ttf") format("truetype"), url("../fonts/NotoSansCJKjp-Black.eot") format("embedded-opentype");
}

@font-face {
  font-family: 'DIN Alternate Bold';
  font-style: normal;
  font-weight: 900;
	src: url("../fonts/DINAlternate-Bold.woff") format("woff")
	, url("../fonts/DINAlternate-Bold.ttf") format("truetype");
}
*/



article, aside, details, figcaption, figure, footer, header, hgroup, hr, menu, nav, section {
  display: block;
}

.clearfix:after, hr {
  height: 0;
  width: 100%;
}

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
  word-wrap: break-word;
}

hr {
  opacity: 0;
}

.fontStyle01 {
  font-family: 'Josefin Sans',sans-serif !important;
}

* {
  font-size: 12px;
  font-family: "Noto Sans JP",sans-serif;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.8;
}

a {
  color: #333;
  text-decoration: none;
}

.pc {
  display: block !important;
}

@media screen and (max-width: 480px) {
  .pc {
    display: none !important;
  }
}

.pcl {
  display: inline-block !important;
}

.sp {
  display: none !important;
}

@media screen and (max-width: 480px) {
  .pcl {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
}

.spl {
  display: none !important;
}

@media screen and (max-width: 480px) {
  .spl {
    display: inline-block !important;
  }
}

.mdl {
  display: none !important;
}

.mdla {
  display: block !important;
}

@media screen and (max-width: 768px) {
  .mdl {
    display: block !important;
  }
  .mdla {
    display: none !important;
  }
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.imgC {
  display: block;
  margin: auto;
}

.maxW {
  max-width: 100%;
  height: auto;
}

.maxWH {
  max-width: 50%;
  height: auto;
}

.mb00 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.txtC {
  text-align: center !important;
}

.txtL {
  text-align: left !important;
}

.txtR {
  text-align: right !important;
}

.btnLarge a,
.supplement,
.titleStyle01,
.titleStyle02,
.titleStyle03 {
  text-align: center;
}

.titleStyle01 {
  display: block;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.87);
  letter-spacing: .78px;
}

.titleStyle01 span {
  display: block;
  margin-bottom: 12px;
  color: #74AF28;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
}

@media screen and (max-width: 1000px) {
  .titleStyle01 {
    font-size: 28px;
    letter-spacing: .7px;
  }
  .titleStyle01 span {
    margin-bottom: 12px;
    font-size: 24px;
  }
}

@media screen and (max-width: 768px) {
  .titleStyle01 {
    font-size: 24px;
    letter-spacing: .6px;
  }
  .titleStyle01 span {
    margin-bottom: 12px;
    font-size: 18px;
  }
}

@media screen and (max-width: 480px) {
  .titleStyle01 {
    font-size: 20px;
    letter-spacing: .5px;
  }
  .titleStyle01 span {
    margin-bottom: 12px;
    font-size: 14px;
  }
}

.titleStyle02 {
  display: block;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.87);
  letter-spacing: .78px;
}

.btn01 a,
.titleStyle02 span,
.titleStyle03 small,
.titleStyle03 span {
  font-weight: 700;
  line-height: 1;
}

.titleStyle02 span {
  display: block;
  margin-bottom: 12px;
  font-size: 24px;
}

@media screen and (max-width: 1000px) {
  .titleStyle02 {
    font-size: 28px;
    letter-spacing: .7px;
  }
  .titleStyle02 span {
    margin-bottom: 12px;
    font-size: 24px;
  }
}

@media screen and (max-width: 768px) {
  .titleStyle02 {
    font-size: 24px;
    letter-spacing: .6px;
  }
  .titleStyle02 span {
    margin-bottom: 12px;
    font-size: 18px;
  }
}

@media screen and (max-width: 480px) {
  .titleStyle02 {
    font-size: 20px;
    letter-spacing: .5px;
  }
  .titleStyle02 span {
    margin-bottom: 12px;
    font-size: 14px;
  }
}

.titleStyle03 {
  display: block;
  background: #333;
  padding: 40px 0;
  position: relative;
  color: #fff;
  overflow: hidden;
}

.btn01,
.btn01:after {
  background-color: #fff;
}

.titleStyle03 small {
  display: block;
  width: 100%;
  height: 100px;
  margin: auto;
  font-size: 100px;
  opacity: .1;
  white-space: nowrap;
  position: absolute;
  top: .2em;
  bottom: 0;
  z-index: 1;
}

.titleStyle03 span {
  display: block;
  width: 100%;
  height: 30px;
  margin: auto;
  font-size: 30px;
}

.arrow:after,
.btn01 {
  display: inline-block;
}

@media screen and (max-width: 1000px) {
  .titleStyle03 {
    padding: 35px 0;
  }
  .titleStyle03 small {
    height: 80px;
    font-size: 80px;
    top: .2em;
  }
  .titleStyle03 span {
    height: 26px;
    font-size: 26px;
  }
}

@media screen and (max-width: 768px) {
  .titleStyle03 {
    padding: 30px 0;
  }
  .titleStyle03 small {
    height: 60px;
    font-size: 60px;
    top: .2em;
  }
  .titleStyle03 span {
    height: 22px;
    font-size: 22px;
  }
}

@media screen and (max-width: 480px) {
  .titleStyle03 {
    padding: 25px 0;
  }
  .titleStyle03 small {
    height: 40px;
    font-size: 40px;
    top: .2em;
  }
  .titleStyle03 span {
    height: 18px;
    font-size: 18px;
  }
}

.arrow:after,
.btn01:after,
.btnLarge:after,
.btnLarge:before {
  content: "";
  top: 0;
}

.imgLtextR .imgArea,
.imgLtextR .txtArea {
  float: left;
}

.imgRtextL .imgArea,
.imgRtextL .txtArea {
  float: right;
}

.arrow {
  position: relative;
  padding-right: 160px;
}

.arrow:after {
  height: 15px;
  width: 100px;
  margin: auto;
  border: 2px solid #000;
  border-width: 0 9px 5px 0;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: skewX(60deg);
  transform: skewX(60deg);
  position: absolute;
  bottom: 5px;
  right: 20px;
}

.btn01.bg_gra01:hover:after, .btn01:hover:after {
  -webkit-transform: translate(10px, 10px);
  opacity: 1;
}

.btn01 {
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
  border: 4px solid #74AF28;
}

.btn01 a,
.btn01:after {
  -webkit-transition: .3s;
  display: block;
}

.btn01:hover,
.btn01:hover a:after {
  border-color: #fff;
}

.btn01:after {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  z-index: 0;
  opacity: 0;
  transition: .3s;
}

.btn01 a {
  padding: 33px 80px 33px 42px;
  color: rgba(0, 0, 0, 0.87);
  font-size: 16px;
  letter-spacing: .65px;
  transition: .3s;
  -webkit-transition-delay: .3s;
  transition-delay: .3s;
  position: relative;
  z-index: 1;
}

.btn01 a:after,
.btnLarge a {
  -webkit-transition-delay: .3s;
}

.btn01 a:after {
  width: 26px;
  height: 5px;
  border-width: 0 5px 3px 0;
  right: 35px;
  -webkit-transition: .3s;
  transition: .3s;
  transition-delay: .3s;
}

.btn01:hover:after {
  transform: translate(10px, 10px);
}

.btn01:hover a {
  background-color: #74AF28;
  color: #fff;
}

.btn01.bg_gra01 {
  background: #74AF28;
  border: none;
}

.btn01.bg_gra01:after {
  background-color: #74AF28;
}

.btn01.bg_gra01 a {
  color: #fff;
  padding: 16px 80px 16px 45px;
}

.btn01.bg_gra01 a:after,
.btn01.bg_gra01:hover {
  border-color: #fff;
}

.btn01.bg_gra01:hover:after {
  transform: translate(10px, 10px);
}

.btn01.bg_gra01:hover a {
  background-color: #fff;
  color: #74AF28;
}

.btn01.bg_gra01:hover a:after {
  border-color: #74AF28;
}

.btn01.bg_clr01,
.btn01.bg_clr02,
.btn01.bg_clr03,
.btn01.bg_clr04,
.btn01.bg_clr05,
.btn01.bg_clr06,
.btn01.bg_clr07 {
  display: block;
  border: none;
}

.btn01.bg_clr01 a,
.btn01.bg_clr02 a,
.btn01.bg_clr03 a,
.btn01.bg_clr04 a,
.btn01.bg_clr05 a,
.btn01.bg_clr06 a,
.btn01.bg_clr07 a {
  color: #fff;
  padding: 16px 40px 16px 20px;
  font-weight: 400;
  font-size: 15px;
  text-align: center;
}

.btn01.bg_clr01 a.arrow:after,
.btn01.bg_clr02 a.arrow:after,
.btn01.bg_clr03 a.arrow:after,
.btn01.bg_clr04 a.arrow:after,
.btn01.bg_clr05 a.arrow:after,
.btn01.bg_clr06 a.arrow:after,
.btn01.bg_clr07 a.arrow:after {
  width: 20px;
  height: 4px;
  border-color: #fff;
  border-width: 0 4px 2px 0;
  right: 15px;
  bottom: 3px;
}

.btn01.bg_clr01:hover,
.btn01.bg_clr02:hover,
.btn01.bg_clr03:hover,
.btn01.bg_clr04:hover,
.btn01.bg_clr05:hover,
.btn01.bg_clr06:hover,
.btn01.bg_clr07:hover {
  border-color: #fff;
}

.btn01.bg_clr01:hover:after,
.btn01.bg_clr02:hover:after,
.btn01.bg_clr03:hover:after,
.btn01.bg_clr04:hover:after,
.btn01.bg_clr05:hover:after,
.btn01.bg_clr06:hover:after,
.btn01.bg_clr07:hover:after {
  opacity: 1;
  -webkit-transform: translate(10px, 10px);
  transform: translate(10px, 10px);
}

.btn01.bg_clr01:hover a,
.btn01.bg_clr02:hover a,
.btn01.bg_clr03:hover a,
.btn01.bg_clr04:hover a,
.btn01.bg_clr05:hover a,
.btn01.bg_clr06:hover a,
.btn01.bg_clr07:hover a {
  background-color: #fff;
}

.btn01.bg_clr01 {
  background: #74AF28;
}

.btn01.bg_clr01:after {
  background-color: #74AF28;
}

.btn01.bg_clr01:hover a {
  color: #74AF28;
}

.btn01.bg_clr01:hover a.arrow:after {
  border-color: #74AF28;
}

.btn01.bg_clr02 {
  background: #f18931;
}

.btn01.bg_clr02:after {
  background-color: #f18931;
}

.btn01.bg_clr02:hover a {
  color: #f18931;
}

.btn01.bg_clr02:hover a.arrow:after {
  border-color: #f18931;
}

.btn01.bg_clr03 {
  background: #31c4f1;
}

.btn01.bg_clr03:after {
  background-color: #31c4f1;
}

.btn01.bg_clr03:hover a {
  color: #31c4f1;
}

.btn01.bg_clr03:hover a.arrow:after {
  border-color: #31c4f1;
}

.btn01.bg_clr04 {
  background: #1b75cd;
}

.btn01.bg_clr04:after {
  background-color: #1b75cd;
}

.btn01.bg_clr04:hover a {
  color: #1b75cd;
}

.btn01.bg_clr04:hover a.arrow:after {
  border-color: #1b75cd;
}

.btn01.bg_clr05 {
  background: #2052dc;
}

.btn01.bg_clr05:after {
  background-color: #2052dc;
}

.btn01.bg_clr05:hover a {
  color: #2052dc;
}

.btn01.bg_clr05:hover a.arrow:after {
  border-color: #2052dc;
}

.btn01.bg_clr06 {
  background: #FF3001;
}

.btn01.bg_clr06:after {
  background-color: #FF3001;
}

.btn01.bg_clr06:hover a {
  color: #FF3001;
}

.btn01.bg_clr06:hover a.arrow:after {
  border-color: #FF3001;
}

.btn01.bg_clr07 {
  background: #FF6901;
}

.btn01.bg_clr07:after {
  background-color: #FF6901;
}

.btn01.bg_clr07:hover a {
  color: #FF6901;
}

.btn01.bg_clr07:hover a.arrow:after {
  border-color: #FF6901;
}

@media screen and (max-width: 1000px) {
  .btn01 {
    -webkit-transition: .3s;
    transition: .3s;
    border: 3px solid #74AF28;
  }
  .btn01 a,
  .btn01:after {
    -webkit-transition: .3s;
  }
  .btn01.bg_gra01:hover,
  .btn01:hover,
  .btn01:hover a:after {
    border-color: #fff;
  }
  .btn01:after {
    transition: .3s;
  }
  .btn01 a {
    padding: 30px 70px 30px 40px;
    font-size: 15px;
    transition: .3s;
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
  }
  .btn01 a:after {
    width: 22px;
    height: 4px;
    border-width: 0 5px 3px 0;
    right: 30px;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
  }
  .btn01:hover:after {
    opacity: 1;
    -webkit-transform: translate(10px, 10px);
    transform: translate(10px, 10px);
  }
  .btn01:hover a {
    background-color: #74AF28;
    color: #fff;
  }
  .btn01.bg_gra01 a {
    padding: 16px 80px 16px 45px;
  }
  .btn01.bg_gra01:hover:after {
    opacity: 1;
    -webkit-transform: translate(10px, 10px);
    transform: translate(10px, 10px);
  }
  .btn01.bg_gra01:hover a {
    background-color: #fff;
    color: #74AF28;
  }
  .btn01.bg_gra01:hover a:after {
    border-color: #74AF28;
  }
}

@media screen and (max-width: 768px) {
  .btn01 {
    -webkit-transition: 0s;
    transition: 0s;
    border: 3px solid #74AF28;
  }
  .btn01 a,
  .btn01:after {
    -webkit-transition: 0s;
  }
  .btn01:after {
    display: none;
    transition: 0s;
  }
  .btn01 a {
    padding: 20px 60px 20px 30px;
    font-size: 15px;
    transition: 0s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .btn01 a:after {
    width: 20px;
    height: 4px;
    border-width: 0 4px 2px 0;
    right: 20px;
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .btn01:hover {
    border-color: #74AF28;
  }
  .btn01:hover a {
    background-color: #fff;
    color: #000;
  }
  .btn01:hover a:after {
    border-color: #000;
  }
  .btn01.bg_gra01 a {
    padding: 16px 60px 16px 30px;
  }
  .btn01.bg_gra01:hover {
    background: #74AF28;
  }
  .btn01.bg_gra01:hover a {
    background-color: #74AF28;
    color: #fff;
  }
  .btn01.bg_gra01:hover a:after {
    border-color: #fff;
  }
}

@media screen and (max-width: 480px) {
  .btn01 a,
  .btn01.bg_gra01 a {
    padding: 16px 50px 16px 20px;
  }
  .btn01 {
    border: 0;
  }
  .btn01 a {
    font-size: 15px;
  }
  .btn01 a:after {
    width: 20px;
    height: 4px;
    border-width: 0 4px 2px 0;
    right: 20px;
  }
}

.btnLarge a, .btnLarge:after, .btnLarge:before {
  display: block;
  width: 100%;
  -webkit-transition: .3s;
}

.btnLarge {
  display: block;
  max-width: 522px;
  margin: 70px auto;
  background: #74AF28;
  box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.32);
  letter-spacing: 1px;
  position: relative;
}

.btnLarge:after,
.btnLarge:before {
  height: 100%;
  background-color: #74AF28;
  transition: .3s;
  opacity: 0;
  position: absolute;
  z-index: 0;
  left: 0;
}

/*
.btnLarge:hover:after,
.btnLarge:hover:before,
header nav ul li:not(:nth-last-of-type(1)) a:hover span.topic .hukidashiHeader {
  opacity: 1;
}
*/



.btnLarge a,
.underLine {
  position: relative;
}

.btnLarge a {
  padding: 40px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  transition: .3s;
  transition-delay: .3s;
  z-index: 1;
}

.btnLarge a .arrow {
  padding-right: 50px;
}

.btnLarge a .arrow:after {
  width: 26px;
  height: 5px;
  border-width: 0 5px 3px 0;
  border-color: #fff;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s;
  -webkit-transition-delay: .3s;
  transition-delay: .3s;
}

.btnLarge:hover:after {
  top: 10px;
  left: 10px;
}

.btnLarge:hover:before {
  top: -10px;
  left: -10px;
}

.btnLarge:hover a {
  color: #74AF28;
  background-color: #fff;
}

.btnLarge:hover a .arrow:after {
  border-color: #74AF28;
}

@media screen and (max-width: 1000px) {
  .btnLarge {
    max-width: 500px;
    margin: 60px auto;
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.32);
  }
  .btnLarge:after,
  .btnLarge:before {
    -webkit-transition: .3s;
    transition: .3s;
  }
  .btnLarge a {
    padding: 35px;
    font-size: 16px;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
  }
  .btnLarge a .arrow {
    padding-right: 50px;
  }
  .btnLarge a .arrow:after {
    width: 26px;
    height: 5px;
    border-width: 0 5px 3px 0;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
  }
  .btnLarge:hover:after,
  .btnLarge:hover:before {
    opacity: 1;
  }
  .btnLarge:hover:after {
    top: 10px;
    left: 10px;
  }
  .btnLarge:hover:before {
    top: -10px;
    left: -10px;
  }
  .btnLarge:hover a {
    color: #74AF28;
    background-color: #fff;
  }
  .btnLarge:hover a .arrow:after {
    border-color: #74AF28;
  }
}

@media screen and (max-width: 768px) {
  .btnLarge {
    margin: 50px auto;
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.32);
  }
  .btnLarge:after,
  .btnLarge:before {
    display: none;
    -webkit-transition: 0s;
    transition: 0s;
  }
  .btnLarge a {
    padding: 30px;
    font-size: 16px;
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .btnLarge a .arrow {
    padding-right: 50px;
  }
  .btnLarge a .arrow:after {
    width: 26px;
    height: 5px;
    border-width: 0 5px 3px 0;
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .btnLarge:hover a {
    color: #fff;
    background-color: transparent;
  }
  .btnLarge:hover a .arrow:after {
    border-color: #fff;
  }
}

.supplement, .supplement span {
  display: block;
}

@media screen and (max-width: 480px) {
  .btnLarge {
    margin: 40px auto;
    box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.32);
  }
  .btnLarge a {
    padding: 20px 10px;
    font-size: 14px;
  }
  .btnLarge a .arrow {
    padding-right: 50px;
  }
  .btnLarge a .arrow:after {
    width: 26px;
    height: 5px;
    border-width: 0 5px 3px 0;
  }
}

.fontGradient01 {
  background: linear-gradient(137.99deg, #BDDD10 0, #74AF28 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.plus:after {
  content: "＋";
  font-size: 18px;
  color: #000;
  vertical-align: top;
}

.underLine:after {
  content: "";
  display: block;
  width: 33%;
  height: 4px;
  background-color: #74AF28;
  position: absolute;
  bottom: -8px;
  left: 0;
}

.supplement {
  font-size: 13px;
  color: #fff;
  letter-spacing: .34px;
  line-height: 1.24;
}

.supplement span + span {
  margin-top: 10px;
}

@media screen and (max-width: 1000px) {
  .supplement {
    font-size: 12px;
    text-align: center;
  }
  .supplement span + span {
    margin-top: 10px;
  }
}

@media screen and (max-width: 768px) {
  .supplement {
    font-size: 11px;
    text-align: left;
    line-height: 1.5;
  }
  .supplement span + span {
    margin-top: 10px;
  }
}

@media screen and (max-width: 480px) {
  .supplement {
    font-size: 10px;
  }
  .supplement span + span {
    margin-top: 5px;
  }
}

.tableCellMiddle {
  display: table-cell;
  height: 100%;
  vertical-align: middle;
}

body {
  width: 100%;
  padding-top: 40px !important;
}

/*
@media screen and (max-width: 1300px) {
  body {
    padding-top: 60px !important;
  }
}

@media screen and (max-width: 1100px) {
  body {
    padding-top: 54px !important;
  }
}
@media screen and (max-width: 1000px) {
  body {
    padding-top: 54px !important;
  }
}
*/

header {
  width: 100%;
  /*height: 72px;*/
    height: 50px;
  background: #fff;
  /*-webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);*/
  /*box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);*/
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
}

header .contentArea {
  width: 100%;
  height: 100%;
}

header h2,
header h2 img {
  width: auto;
  display: block;
}

header h2 {
  height: 24px;
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 42px;
}

header h2 img {
  height: 100%;
}

header input,
header label {
  display: none;
}

header nav {
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
}

/*
header nav ul {
  display: block;
  height: 100%;
  font-size: 0;
}

header nav ul li {
  display: inline-block;
  height: 100%;
}

header nav ul li:nth-last-of-type(1) {
  background: #f1b007;
  margin-left: 0;
}

header nav ul li:nth-last-of-type(1) a {
  padding: 0 72px 0 48px;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

header nav ul li:nth-last-of-type(1) a:after {
  content: "";
  display: block;
  height: 6px;
  width: 25px;
  margin: auto 0;
  border: 2px solid #000;
  border-width: 0 4px 2px 0;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: skewX(60deg);
  transform: skewX(60deg);
  position: absolute;
  top: 0;
  bottom: 2px;
  right: 32px;
}

header nav ul li:nth-last-of-type(1) a > span {
  font-weight: bold;
}

header nav ul li:not(:nth-last-of-type(-n + 2)) {
  padding: 0 20px;
}

header nav ul li:not(:nth-last-of-type(1)) a > span {
  position: relative;
}

header nav ul li:not(:nth-last-of-type(-n + 2)) a > span:after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  margin: auto;
  background-color: #74AF28;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: .3s;
  transition: .3s;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
}

header nav ul li:not(:nth-last-of-type(-n + 2)) a:hover span:after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

header nav ul li a {
  display: table;
  height: 100%;
}

header nav ul li a > span {
  display: table-cell;
  vertical-align: middle;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: .34px;
}

header nav ul li a > span.topic {
  position: relative;
}

header nav ul li a > span.topic .topicMark {
  display: inline;
  width: 0;
  height: 100%;
  position: relative;
}

header nav ul li a > span.topic .topicMark:before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #74AF28;
  position: absolute;
  top: 0;
  left: 0;
}

header nav ul li a > span.topic .hukidashiHeader {
  display: block;
  width: 180px;
  margin: auto;
  padding: 20px;
  text-align: center;
  background-color: #74AF28;
  position: absolute;
  top: 100%;
  left: -75px;
  -webkit-transition: .3s;
  transition: .3s;
  opacity: 0;
  cursor: default;
  pointer-events: none;
}

header nav ul li a > span.topic .hukidashiHeader:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin: auto;
  background-color: #74AF28;
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

header nav ul li a > span.topic .hukidashiHeader em {
  display: block;
  font-size: 16px;
  color: #fff;
  font-style: normal;
}

header nav ul li a > span.topic .hukidashiHeader em + em {
  margin-top: 5px;
}

header nav ul li a > span.topic .hukidashiHeader:hover {
  opacity: 0 !important;
}

header nav ul li a.biz > span.gtm_toContact_headerMenu {
  padding-right: 15px;
}

header nav ul li a.biz > span.gtm_toContact_headerMenu:before {
  content: "→";
  display: block;
  width: 20px;
  height: 20px;
  margin: auto 0;
  border: 0;
  font-size: 20px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: -5px;
}

@media screen and (min-width: 1101px) {
  header nav ul li.toBiz {
    padding: 0;
    background: rgba(131, 203, 21, 0.15);
  }
  header nav ul li.toBiz a {
    padding: 0 40px;
    color: #74AF28;
    transition: all .3s;
  }
  header nav ul li.toBiz a:hover {
    background: #fff;
  }
}

@media screen and (min-width: 1101px) and (max-width: 1300px) {
  header nav ul li.toBiz a {
    padding: 0 30px;
  }
}
*/

@media screen and (max-width: 1300px) {
  header {
    height: 60px;
  }
  header .contentArea {
    width: 100%;
  }
  header h2 {
    height: 28px;
    left: 30px;
  }
/*
    header nav ul li:nth-last-of-type(1) a {
    padding: 0 60px 0 20px;
  }
  header nav ul li:nth-last-of-type(1) a:after {
    height: 6px;
    width: 25px;
    border: 2px solid #000;
    border-width: 0 4px 2px 0;
    bottom: 2px;
    right: 22px;
    -webkit-transition: .3s;
    transition: .3s;
  }
  header nav ul li:not(:nth-last-of-type(-n + 2)) {
    padding: 0 10px;
  }
  header nav ul li:not(:nth-last-of-type(1)) a > span:after {
    height: 2px;
    bottom: 20px;
  }
  header nav ul li a > span {
    font-size: 13px;
  }
*/
}

@media screen and (max-width: 1100px) {
    header label,
  header label div span {
    margin: auto;
    position: absolute;
    display: block;
  }
  header {
    height: 54px;
  }
  header h2 {
    height: 24px;
    left: 20px;
  }
  header input {
    width: 0;
    height: 0;
    opacity: 0;
    position: absolute;
    z-index: -1;
  }
  header input:checked ~ label.topic:before {
    opacity: 0;
    right: 0;
  }
  header input:checked ~ label p {
    opacity: 0;
  }
  header input:checked ~ label div span.on {
    -webkit-transform: translateX(150%);
    transform: translateX(150%);
  }
  header input:checked ~ label div span.off:nth-of-type(4) {
    -webkit-transform: rotate(45deg) translateX(0);
    transform: rotate(45deg) translateX(0);
  }
  header input:checked ~ label div span.off:nth-of-type(5) {
    -webkit-transform: rotate(-45deg) translateX(0);
    transform: rotate(-45deg) translateX(0);
  }
  header input:checked ~ nav,
  header input:checked ~ nav ul li {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  header label {
    width: auto;
    height: 22px;
    top: 0;
    bottom: 0;
    right: 20px;
    z-index: 1001;
    cursor: pointer;
  }
  header label.topic:before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 4px solid #fff;
    background-color: #74AF28;
    position: absolute;
    top: -5px;
    right: -5px;
    z-index: 2;
    -webkit-transition: .3s;
    transition: .3s;
  }
  header label div, header label p {
    display: inline-block;
    vertical-align: middle;
  }
  header label p {
    margin-top: 5px;
    font-size: 10px;
    font-weight: 500;
    -webkit-transition: .3s;
    transition: .3s;
    line-height: 1;
  }
  header label div {
    width: 32px;
    height: 16px;
    margin-left: 10px;
    position: relative;
    overflow: hidden;
  }
  header label div span {
    width: 100%;
    height: 2px;
    z-index: 1;
    -webkit-transition: .3s;
    transition: .3s;
  }
  header label div span.on {
    background: linear-gradient(137.99deg, #BDDD10 0, #74AF28 100%);
  }
  header label div span.on:nth-of-type(1) {
    top: 0;
    left: 0;
  }
  header label div span.on:nth-of-type(2) {
    top: 0;
    bottom: 0;
    left: -25%;
  }
  header label div span.on:nth-of-type(3) {
    bottom: 0;
    left: -50%;
  }
  header label div span.off {
    width: 60%;
    height: 3;
    top: 0;
    bottom: 0;
    background-color: #ccc;
  }
  header label div span.off:nth-of-type(4) {
    -webkit-transform: rotate(45deg) translateX(-150%);
    transform: rotate(45deg) translateX(-150%);
  }
  header label div span.off:nth-of-type(5) {
    -webkit-transform: rotate(-45deg) translateX(-150%);
    transform: rotate(-45deg) translateX(-150%);
  }
/*
  header nav {
    display: block;
    width: 100vw;
    height: 100vh;
    padding: 76px 20px 20px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background-color: #fff;
    -webkit-transform: translateX(100vw);
    transform: translateX(100vw);
    opacity: 0;
    -webkit-transition: .5s;
    transition: .5s;
  }
*/



/*
    header nav ul {
    display: block;
  }
  header nav ul li {
    height: auto;
    -webkit-transition: .8s;
    transition: .8s;
    -webkit-transform: translateX(100px);
    transform: translateX(100px);
    opacity: 0;
    display: block;
    padding: 0 15px;
  }
  header nav ul li a > span span, header nav ul li:hover a > span:after {
    display: none;
  }
  header nav ul li a {
    display: block;
    padding: 16px 0;
  }
  header nav ul li a > span {
    display: block;
    color: rgba(0, 0, 0, 0.87);
    font-size: 16px;
    font-weight: 700;
  }
  header nav ul li a > span.gtm_toContact_headerMenu:before {
    content: "→";
    display: block;
    width: 20px;
    height: 20px;
    margin: auto 0;
    border: 0;
    font-size: 20px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: -5px;
  }
  header nav ul li a > span:after {
    display: none;
  }
  header nav ul li a > span:before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    margin: auto 0;
    border: 2px solid rgba(0, 0, 0, 0.87);
    border-width: 2px 2px 0 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
  }
  header nav ul li a > span.topic {
    position: relative;
  }
  header nav ul li a > span.topic .hukidashiHeader {
    display: block;
    width: auto;
    height: 13px;
    margin: auto;
    padding: 0;
    text-align: center;
    background-color: #fff;
    top: 0;
    bottom: 0;
    left: auto;
    right: 20px;
    opacity: 1;
  }
  header nav ul li a > span.topic .hukidashiHeader:before {
    display: none;
  }
  header nav ul li a > span.topic .hukidashiHeader em {
    display: none;
    font-size: 15px;
    color: #74AF28;
    font-style: bold;
  }
  header nav ul li a > span.topic .hukidashiHeader em + em {
    margin-top: 0;
    display: block;
  }
  header nav ul li:nth-of-type(1) {
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
  }
  header nav ul li:nth-of-type(2) {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
  }
  header nav ul li:nth-of-type(3) {
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
  }
  header nav ul li:nth-of-type(4) {
    -webkit-transition-delay: .4s;
    transition-delay: .4s;
  }
  header nav ul li:nth-of-type(5) {
    -webkit-transition-delay: .5s;
    transition-delay: .5s;
  }
  header nav ul li:nth-of-type(6) {
    -webkit-transition-delay: .6s;
    transition-delay: .6s;
  }
  header nav ul li:nth-of-type(7) {
    -webkit-transition-delay: .7s;
    transition-delay: .7s;
  }
  header nav ul li:nth-of-type(8) {
    -webkit-transition-delay: .8s;
    transition-delay: .8s;
  }
  header nav ul li:nth-of-type(9) {
    -webkit-transition-delay: .9s;
    transition-delay: .9s;
  }
  header nav ul li:nth-of-type(10) {
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
  }
  header nav ul li:nth-last-of-type(1) {
    display: none;
    background: 0 0;
    margin: 0;
    padding: 0 10px;
  }
  header nav ul li:nth-last-of-type(1) a {
    display: block;
    padding: 16px 0;
    background-color: #fff;
    border: 0;
  }
  header nav ul li:nth-last-of-type(1) a > span {
    display: block;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    background-color: none;
  }
  header nav ul li:nth-last-of-type(1) a:after {
    display: none;
  }
  header nav ul li:nth-last-of-type(1) a:before {
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  header nav ul li:nth-last-of-type(1):hover a span {
    color: #000;
  }
  header nav ul li:nth-last-of-type(1):hover a:after {
    border-color: #000;
  }
*/
}

#headerCampaign {
  width: 100%;
  height: 35px;
  padding: 0 46px;
  background: #74AF28;
  position: fixed;
  top: 72px;
  left: 0;
  z-index: 999;
  -webkit-transition: .3s;
  transition: .3s;
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  opacity: 0;
}

#headerCampaign.on {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  opacity: 1;
}

#headerCampaign.off {
  opacity: 0 !important;
  -webkit-transform: scaleY(0) !important;
  transform: scaleY(0) !important;
}

#headerCampaign .contentArea {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  vertical-align: middle;
  position: relative;
}

#headerCampaign .contentArea a,
#headerCampaign .contentArea p {
  height: 16px;
  margin: auto;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
}

.contentArea p {
  font-size: 16px;
  line-height: 1.6;
}

#headerCampaign .contentArea a br.mdl,
#headerCampaign .contentArea p br.mdl {
  line-height: 0;
}

#headerCampaign .contentArea a {
  right: 30px;
  border-bottom: solid 1px #fff;
}

#headerCampaign .contentArea #headerCampaignClose {
  display: block;
  width: 20px;
  height: 20px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  overflow: hidden;
  cursor: pointer;
}

#headerCampaign .contentArea #headerCampaignClose:after,
#headerCampaign .contentArea #headerCampaignClose:before {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  margin: auto;
  background-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-transform-origin: center;
  transform-origin: center;
}

#headerCampaign .contentArea #headerCampaignClose:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#headerCampaign .contentArea #headerCampaignClose:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

@media screen and (max-width: 1300px) {
  #headerCampaign {
    top: 60px;
  }
}

@media screen and (max-width: 1100px) {
  #headerCampaign {
    top: 54px;
  }
  #headerCampaign .contentArea p {
    height: 14px;
    font-size: 14px;
  }
  #headerCampaign .contentArea a {
    height: 16px;
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  #headerCampaign {
    height: 40px;
    padding: 0 10px;
  }
  #headerCampaign .contentArea p {
    font-size: 12px;
    height: 30px;
    line-height: 1.2;
  }
  #headerCampaign .contentArea a {
    height: 15px;
    font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  #headerCampaign {
    padding: 0 20px;
    height: 35px;
  }
  #headerCampaign .contentArea p {
    height: 35px;
    padding-top: 5px;
    font-size: 10px;
  }
  #headerCampaign .contentArea a {
    height: 13px;
    font-weight: 400;
    font-size: 10px;
  }
}

@media screen and (max-width: 374px) {
  #headerCampaign {
    height: 45px;
  }
  #headerCampaign .contentArea p {
    height: 45px;
  }
}

@media screen and (min-width: 375px) {
  #headerCampaign .contentArea p .sml {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  #relieveTrouble {
    padding-top: 20px;
  }
}


.relieveTrouble {
  background: #74AF28;
  position: relative;
  z-index: 1;
}

.relieveTrouble::after {
  opacity: 0.2;
  content: '';
  z-index: -1;
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../img/plans/bg_plan.jpg) bottom/cover no-repeat;
}

.relieveTrouble1::after {
  opacity: 0.2;
  content: '';
  z-index: -1;
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../img/plans/bottom_image01.JPG) center/cover no-repeat;
}

.relieveTrouble2::after {
  opacity: 0.2;
  content: '';
  z-index: -1;
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../img/plans/bottom_image02.JPG) center/cover no-repeat;
}

.relieveTrouble .txtArea {
  width: 60%;
  margin-left: auto;
  padding: 100px 0 140px;
}

.relieveTrouble .txtArea h2 {
  display: block;
  margin-bottom: 40px;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
}

.relieveTrouble .txtArea p {
  display: block;
  margin-bottom: 62px;
  font-size: 16px;
  line-height: 2;
  color: #fff;
}

.relieveTrouble .txtArea .btn01 {
  border: 0;
  -webkit-box-shadow: 4px 4px 28px rgba(116, 175, 40, 0.5);
  box-shadow: 4px 4px 28px rgba(116, 175, 40, 0.5);
}

.relieveTrouble .txtArea .btn01 a {
  color: #74AF28;
}

.relieveTrouble .txtArea .btn01 a:after {
  border-color: #74AF28;
}

.relieveTrouble .txtArea .btn01:hover a {
  color: #fff;
}

.relieveTrouble .txtArea .btn01:hover a:after {
  border-color: #fff;
}

@media screen and (max-width: 1000px) {
  .relieveTrouble .txtArea {
    width: 65%;
    padding: 90px 0 120px;
  }
  .relieveTrouble .txtArea h2 {
    margin-bottom: 35px;
    font-size: 28px;
  }
  .relieveTrouble .txtArea p {
    margin-bottom: 50px;
    font-size: 15px;
  }
  .relieveTrouble .txtArea .btn01 {
    -webkit-box-shadow: 4px 4px 24px rgba(116, 175, 40, 0.5);
    box-shadow: 4px 4px 24px rgba(116, 175, 40, 0.5);
  }
}

@media screen and (max-width: 768px) {
  .relieveTrouble .txtArea {
    width: 70%;
    padding: 80px 0 100px;
  }
  .relieveTrouble .txtArea h2 {
    margin-bottom: 30px;
    font-size: 24px;
  }
  .relieveTrouble .txtArea p {
    margin-bottom: 40px;
    font-size: 14px;
  }
  .relieveTrouble .txtArea .btn01 {
    -webkit-box-shadow: 4px 4px 20px rgba(116, 175, 40, 0.5);
    box-shadow: 4px 4px 20px rgba(116, 175, 40, 0.5);
  }
}

@media screen and (max-width: 480px) {
  .relieveTrouble {
    background: #74AF28;
    text-align: center;
  }
  .relieveTrouble .imgArea {
    position: relative;
  }
  .relieveTrouble .imgArea:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(253, 60, 47, 0)), color-stop(48%, rgba(253, 60, 47, 0)), to(#74AF28));
    background: linear-gradient(to bottom, rgba(253, 60, 47, 0) 0, rgba(253, 60, 47, 0) 48%, #74AF28 100%);
  }
  .relieveTrouble .imgArea img {
    display: block;
    width: 100%;
    height: auto;
  }
  .relieveTrouble .txtArea {
    width: 100%;
    padding: 0 0 60px;
  }
  .relieveTrouble .txtArea h2 {
    margin-bottom: 20px;
    font-size: 22px;
  }
  .relieveTrouble .txtArea p {
    margin-bottom: 30px;
    font-size: 14px;
  }
  .relieveTrouble .txtArea .btn01 {
    -webkit-box-shadow: 4px 4px 20px rgba(116, 175, 40, 0.5);
    box-shadow: 4px 4px 20px rgba(116, 175, 40, 0.5);
  }
}

/*
footer h2,
footer nav {
  margin: auto 0;
  position: absolute;
  bottom: 0;
  display: block;
  top: 0;
}

footer {
  width: 100%;
  height: 140px;
  background: #fff;
}

footer .contentArea {
  height: 100%;
}

footer h2 {
  width: auto;
  height: 50px;
  left: 42px;
}

footer h2 a {
  display: block;
  -webkit-transition: .3s;
  transition: .3s;
}

footer h2 a:hover, footer nav ul li a:hover {
  opacity: .7;
}

footer h2 a img {
  width: auto;
  height: 26px;
  margin-bottom: 12px;
}

footer small {
  display: block;
  font-size: 12px;
  letter-spacing: .13px;
  line-height: 1;
  color: rgba(0, 0, 0, 0.37);
}

footer nav {
  height: 13px;
  right: 42px;
}

footer nav ul {
  display: block;
  height: 100%;
}

footer nav ul li {
  display: inline-block;
}

footer nav ul li + li {
  margin-left: 40px;
}

footer nav ul li a {
  font-size: 13px;
  color: rgba(0, 0, 0, 0.87);
  -webkit-transition: .3s;
  transition: .3s;
}

@media screen and (max-width: 1000px) {
  footer h2 {
    left: 30px;
  }
  footer h2 a img {
    margin-bottom: 10px;
  }
  footer small {
    font-size: 11px;
  }
  footer nav {
    height: 13px;
    right: 30px;
  }
  footer nav ul li + li {
    margin-left: 30px;
  }
  footer nav ul li a {
    font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  footer {
    height: auto;
    padding-bottom: 51px;
  }
  footer .contentArea {
    padding-top: 36px;
    padding-bottom: 36px;
  }
  footer h2,
  footer nav {
    height: auto;
    position: static;
  }
  footer h2 a img {
    height: 26px;
    margin-bottom: 30px;
  }
  footer small {
    margin-top: 32px;
    letter-spacing: .12px;
  }
  footer nav ul li {
    display: block;
  }
  footer nav ul li + li {
    margin-left: 0;
    margin-top: 26px;
  }
  footer nav ul li a {
    font-size: 16px;
  }
}
*/

section {
  width: 100%;
  position: relative;
  z-index: 0;
}

.contentArea {
  width: 1000px;
  margin: 0 auto;
  padding-left: 30px;
  padding-right: 30px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1000px) {
  .contentArea {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}

#toTopScroll {
  display: block;
  width: 60px;
  height: 60px;
  position: fixed;
  bottom: 20px;
  right: 100px;
  z-index: 999;
  background-color: #74AF28;
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: .3s;
  transition: .3s;
  border-radius: 50%;
}

#toTopScroll:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin: auto;
  border: 1px solid #fff;
  border-width: 0 15px 20px;
  border-color: transparent transparent #fff;
  position: absolute;
  top: 0;
  bottom: 5px;
  left: 0;
  right: 0;
}

#toTopScroll.on {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: .8;
}

#toTopScroll.on:hover {
  opacity: 1;
}

@media screen and (max-width: 1000px) {
  #toTopScroll {
    width: 40px;
    height: 40px;
    bottom: 30px;
    right: 90px;
  }
  #toTopScroll:after {
    border-width: 0 12px 16px;
  }
}

@media screen and (max-width: 768px) {
  .contentArea {
    padding-left: 20px;
    padding-right: 20px;
  }
  #toTopScroll {
    width: 40px;
    height: 40px;
    bottom: 75px;
  }
  #toTopScroll:after {
    border-width: 0 12px 16px;
  }
}

@media screen and (max-width: 480px) {
  #toTopScroll {
    width: 40px;
    height: 40px;
    bottom: 130px;
    right: 30px;
  }
  #toTopScroll:after {
    border-width: 0 12px 16px;
  }
}

.fixFooterBtn {
  display: none;
  width: 100%;
  padding: 15px 10px;
  text-align: center;
  color: #fff;
  background-color: #74AF28;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 1000;
}

.fixFooterBtn:after,
.fixFooterBtn:before {
  content: "";
  display: block;
  margin: auto 0;
  border: 2px solid #fff;
  position: absolute;
  top: 0;
  bottom: 0;
}

.fixFooterBtn:before {
  width: 20px;
  height: 20px;
  right: 20px;
  border-radius: 50%;
}

.fixFooterBtn:after {
  width: 5px;
  height: 5px;
  border-width: 2px 2px 0 0;
  right: 30px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.fixFooterBtn em {
  display: block;
  margin-bottom: 5px;
  font-style: normal;
  font-weight: 700;
}

.fixFooterBtn small {
  display: block;
  font-size: 10px;
}

@media screen and (max-width: 768px) {
  .fixFooterBtn {
    display: block;
  }
  .intercom-launcher-frame {
    bottom: 65px !important;
  }
}

.schoolComparison .contentArea {
  padding: 57px 52px 200px;
}

.schoolComparison .contentArea h3 {
  display: block;
  margin-bottom: 52px;
  font-size: 32px;
  font-weight: 900;
  text-align: center;
}

.schoolComparison .contentArea .priceComparison {
  position: relative;
  text-align: center;
  font-size: 0;
}

.schoolComparison .contentArea .priceComparison:after {
  content: "";
  display: block;
  width: 70%;
  height: 100%;
  background-color: #74AF28;
  position: absolute;
  bottom: -30px;
  right: -30px;
  z-index: 0;
}

.schoolComparison .contentArea .priceComparison .line01,
.schoolComparison .contentArea .priceComparison .line02,
.schoolComparison .contentArea .priceComparison .line03 {
  display: inline-block;
  background-color: #fff;
  padding-bottom: 40px;
  position: relative;
  z-index: 1;
  border: 5px solid;
  vertical-align: top;
}

.schoolComparison .contentArea .priceComparison .line01 > div,
.schoolComparison .contentArea .priceComparison .line02 > div,
.schoolComparison .contentArea .priceComparison .line03 > div {
  display: table;
  width: 100%;
  height: 80px;
  padding: 20px 10px;
  vertical-align: middle;
}

.schoolComparison .contentArea .priceComparison .line01 > div span,
.schoolComparison .contentArea .priceComparison .line02 > div span,
.schoolComparison .contentArea .priceComparison .line03 > div span {
  display: table-cell;
  width: 100%;
  height: 100%;
  vertical-align: middle;
  line-height: 1.2;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle2,
.schoolComparison .contentArea .priceComparison .line01 > div span .cross,
.schoolComparison .contentArea .priceComparison .line01 > div span .triangle,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin: auto;
  position: relative;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
  content: "";
  display: block;
  width: 80%;
  height: 80%;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after {
  z-index: 1;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
  z-index: 2;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle:before {
  border: 2px solid rgba(0, 0, 0, 0.87);
  border-radius: 50%;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle.color:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle.color:before,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle2.color:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .circle2.color:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle.color:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle.color:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2.color:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2.color:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle.color:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle.color:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2.color:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2.color:before {
  border-color: #74AF28;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before {
  width: 50%;
  height: 50%;
}

.schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:before {
  height: 2px;
  background-color: rgba(0, 0, 0, 0.87);
}

.schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .cross:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
  width: 0;
  height: 0;
  border: 40px solid rgba(0, 0, 0, 0.87);
}

.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after {
  border-width: 0 20px 38px;
  border-color: transparent transparent rgba(0, 0, 0, 0.87);
}

.schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
.schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
  top: 3px;
  border-width: 0 16px 30px;
  border-color: transparent transparent #fff;
}

.schoolComparison .contentArea .priceComparison .line01 {
  width: 15%;
  border-color: transparent;
}

.schoolComparison .contentArea .priceComparison .line01 > div {
  font-size: 14px;
  color: rgba(0, 0, 0, 0.87);
}

.schoolComparison .contentArea .priceComparison .line02 {
  width: 25%;
  border-color: #74AF28;
  -webkit-box-shadow: 0 2px 28px 0 rgba(116, 175, 40, 0.3);
  box-shadow: 0 2px 28px 0 rgba(116, 175, 40, 0.3);
  z-index: 2;
  overflow: hidden;
}

.schoolComparison .contentArea .priceComparison .line02:after {
  content: "";
  display: block;
  width: 200%;
  height: 500px;
  background-color: #74AF28;
  position: absolute;
  top: -430px;
  left: -50%;
  z-index: -10;
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
  -webkit-transform: rotate(-10deg);
  transform: rotate(-10deg);
}

.schoolComparison .contentArea .priceComparison .line02 > div {
  font-size: 14px;
  font-weight: 700;
}

.schoolComparison .contentArea .priceComparison .line02 .row00 span {
  color: #fff;
  font-weight: 900;
  font-size: 18px;
  position: relative;
  z-index: 1;
}

.schoolComparison .contentArea .priceComparison .line02 .row01 span,
.schoolComparison .contentArea .priceComparison .line02 .row02 span {
  color: #74AF28;
}

.schoolComparison .contentArea .priceComparison .line03 {
  width: 19.5%;
  border-color: transparent transparent #74AF28;
  border-width: 5px 0;
}

.schoolComparison .contentArea .priceComparison .line03 + .line03 {
  margin-left: .5%;
}

.schoolComparison .contentArea .priceComparison .line03 > div {
  font-size: 13px;
  color: rgba(0, 0, 0, 0.6);
}

.schoolComparison .contentArea .priceComparison .line03 .row00 {
  background-color: #f3f3f3;
}

.schoolComparison .contentArea .priceComparison .line03 .row00 span {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: .36px;
  color: rgba(0, 0, 0, 0.87);
}

@media screen and (max-width: 1000px) {
  .schoolComparison .contentArea {
    padding: 50px 30px 150px 20px;
  }
  .schoolComparison .contentArea h3 {
    margin-bottom: 50px;
    font-size: 28px;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div,
  .schoolComparison .contentArea .priceComparison .line02 > div {
    font-size: 13px;
  }
  .schoolComparison .contentArea .priceComparison:after {
    width: 80%;
    bottom: -20px;
    right: -20px;
  }
  .schoolComparison .contentArea .priceComparison .line01,
  .schoolComparison .contentArea .priceComparison .line02,
  .schoolComparison .contentArea .priceComparison .line03 {
    padding-bottom: 30px;
    border: 4px solid;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div,
  .schoolComparison .contentArea .priceComparison .line02 > div,
  .schoolComparison .contentArea .priceComparison .line03 > div {
    height: 60px;
    padding: 10px;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2,
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross,
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle {
    width: 40px;
    height: 40px;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle:before,
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
    width: 80%;
    height: 80%;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle:before {
    border: 2px solid rgba(0, 0, 0, 0.87);
    border-radius: 50%;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle.color:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle.color:before,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2.color:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2.color:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle.color:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle.color:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2.color:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2.color:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle.color:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle.color:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2.color:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2.color:before {
    border-color: #74AF28;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .circle2:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .circle2:before {
    width: 50%;
    height: 50%;
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross:before {
    height: 2px;
    background-color: rgba(0, 0, 0, 0.87);
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .cross:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .cross:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
    width: 0;
    height: 0;
    border: 40px solid rgba(0, 0, 0, 0.87);
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle:after,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle:after {
    border-width: 0 20px 38px;
    border-color: transparent transparent rgba(0, 0, 0, 0.87);
  }
  .schoolComparison .contentArea .priceComparison .line01 > div span .triangle:before,
  .schoolComparison .contentArea .priceComparison .line02 > div span .triangle:before,
  .schoolComparison .contentArea .priceComparison .line03 > div span .triangle:before {
    top: 3px;
    border-width: 0 16px 30px;
    border-color: transparent transparent #fff;
  }
  .schoolComparison .contentArea .priceComparison .line01 {
    width: 15%;
    border-color: transparent;
  }
  .schoolComparison .contentArea .priceComparison .line02 {
    width: 25%;
    border-color: #74AF28;
    box-shadow: 0 2px 28px 0 rgba(116, 175, 40, 0.3);
  }
  .schoolComparison .contentArea .priceComparison .line02:after {
    width: 200%;
    height: 500px;
    top: -440px;
    left: -50%;
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  .schoolComparison .contentArea .priceComparison .line02 .row00 span {
    font-size: 16px;
  }
  .schoolComparison .contentArea .priceComparison .line03 {
    width: 19.5%;
    border-width: 5px 0;
    border-color: transparent transparent #74AF28;
  }
  .schoolComparison .contentArea .priceComparison .line03 + .line03 {
    margin-left: .5%;
  }
  .schoolComparison .contentArea .priceComparison .line03 > div {
    font-size: 12px;
  }
  .schoolComparison .contentArea .priceComparison .line03 .row00 span {
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .schoolComparison .contentArea {
    padding: 30px 30px 100px 20px;
  }
  .schoolComparison .contentArea h3 {
    margin-bottom: 40px;
    font-size: 24px;
  }
  .schoolComparison .contentArea .priceComparison {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  .schoolComparison .contentArea {
    padding: 40px 0 60px 10px !important;
  }
}

.priceComparisonSP {
  display: block;
  width: 100%;
  font-size: 0;
  overflow-y: hidden;
}

.priceComparisonSP .line01,
.priceComparisonSP .line02 {
  display: inline-block;
  overflow-x: scroll;
  overflow-y: hidden;
  padding-bottom: 20px;
  vertical-align: top;
}

.priceComparisonSP .line01 {
  width: 10%;
  -webkit-box-shadow: 3px 0 10px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 0 10px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 2;
}

.priceComparisonSP .line01 .row00s {
  background-color: #fff;
}

.priceComparisonSP .line01 .row01s {
  background-color: #74AF28;
  border: 2px solid #74AF28;
}

.priceComparisonSP .line01 .row01s span {
  font-size: 14px;
  color: #fff;
}

.priceComparisonSP .line01 .row02s,
.priceComparisonSP .line01 .row03s,
.priceComparisonSP .line01 .row04s {
  background-color: #efefef;
  border-top: 2px solid #fff;
}

.priceComparisonSP .line01 .row02s span,
.priceComparisonSP .line01 .row03s span,
.priceComparisonSP .line01 .row04s span {
  font-size: 14px;
}

.priceComparisonSP .line02 {
  width: 90%;
  position: relative;
}

.priceComparisonSP .line02:after {
  content: "";
  display: block;
  width: 1200px;
  height: 100%;
  background-color: #74AF28;
  position: absolute;
  top: 20px;
  left: 0;
  z-index: 0;
}

.priceComparisonSP .line02 .row01s {
  border: 2px solid #74AF28;
  border-width: 2px 0;
}

.priceComparisonSP .line02 .row01s span {
  font-weight: 700;
  color: #74AF28;
}

.priceComparisonSP .line02 .row00s,
.priceComparisonSP .line02 .row01s,
.priceComparisonSP .line02 .row02s,
.priceComparisonSP .line02 .row03s,
.priceComparisonSP .line02 .row04s {
  width: 1200px;
  position: relative;
  z-index: 1;
  background-color: #fff;
}

.priceComparisonSP .line02 .row00s .col00,
.priceComparisonSP .line02 .row00s .col01,
.priceComparisonSP .line02 .row00s .col02,
.priceComparisonSP .line02 .row00s .col03,
.priceComparisonSP .line02 .row00s .col04,
.priceComparisonSP .line02 .row00s .col05,
.priceComparisonSP .line02 .row00s .col06,
.priceComparisonSP .line02 .row01s .col00,
.priceComparisonSP .line02 .row01s .col01,
.priceComparisonSP .line02 .row01s .col02,
.priceComparisonSP .line02 .row01s .col03,
.priceComparisonSP .line02 .row01s .col04,
.priceComparisonSP .line02 .row01s .col05,
.priceComparisonSP .line02 .row01s .col06,
.priceComparisonSP .line02 .row02s .col00,
.priceComparisonSP .line02 .row02s .col01,
.priceComparisonSP .line02 .row02s .col02,
.priceComparisonSP .line02 .row02s .col03,
.priceComparisonSP .line02 .row02s .col04,
.priceComparisonSP .line02 .row02s .col05,
.priceComparisonSP .line02 .row02s .col06,
.priceComparisonSP .line02 .row03s .col00,
.priceComparisonSP .line02 .row03s .col01,
.priceComparisonSP .line02 .row03s .col02,
.priceComparisonSP .line02 .row03s .col03,
.priceComparisonSP .line02 .row03s .col04,
.priceComparisonSP .line02 .row03s .col05,
.priceComparisonSP .line02 .row03s .col06,
.priceComparisonSP .line02 .row04s .col00,
.priceComparisonSP .line02 .row04s .col01,
.priceComparisonSP .line02 .row04s .col02,
.priceComparisonSP .line02 .row04s .col03,
.priceComparisonSP .line02 .row04s .col04,
.priceComparisonSP .line02 .row04s .col05,
.priceComparisonSP .line02 .row04s .col06 {
  width: calc(16.66667% - 10px);
}

.priceComparisonSP .line02 .row00s .col00 span,
.priceComparisonSP .line02 .row00s .col01 span,
.priceComparisonSP .line02 .row00s .col02 span,
.priceComparisonSP .line02 .row00s .col03 span,
.priceComparisonSP .line02 .row00s .col04 span,
.priceComparisonSP .line02 .row00s .col05 span,
.priceComparisonSP .line02 .row00s .col06 span,
.priceComparisonSP .line02 .row01s .col00 span,
.priceComparisonSP .line02 .row01s .col01 span,
.priceComparisonSP .line02 .row01s .col02 span,
.priceComparisonSP .line02 .row01s .col03 span,
.priceComparisonSP .line02 .row01s .col04 span,
.priceComparisonSP .line02 .row01s .col05 span,
.priceComparisonSP .line02 .row01s .col06 span,
.priceComparisonSP .line02 .row02s .col00 span,
.priceComparisonSP .line02 .row02s .col01 span,
.priceComparisonSP .line02 .row02s .col02 span,
.priceComparisonSP .line02 .row02s .col03 span,
.priceComparisonSP .line02 .row02s .col04 span,
.priceComparisonSP .line02 .row02s .col05 span,
.priceComparisonSP .line02 .row02s .col06 span,
.priceComparisonSP .line02 .row03s .col00 span,
.priceComparisonSP .line02 .row03s .col01 span,
.priceComparisonSP .line02 .row03s .col02 span,
.priceComparisonSP .line02 .row03s .col03 span,
.priceComparisonSP .line02 .row03s .col04 span,
.priceComparisonSP .line02 .row03s .col05 span,
.priceComparisonSP .line02 .row03s .col06 span,
.priceComparisonSP .line02 .row04s .col00 span,
.priceComparisonSP .line02 .row04s .col01 span,
.priceComparisonSP .line02 .row04s .col02 span,
.priceComparisonSP .line02 .row04s .col03 span,
.priceComparisonSP .line02 .row04s .col04 span,
.priceComparisonSP .line02 .row04s .col05 span,
.priceComparisonSP .line02 .row04s .col06 span {
  font-size: 12px;
}

.priceComparisonSP .line02 .row00s .col00 span,
.priceComparisonSP .line02 .row00s .col01 span,
.priceComparisonSP .line02 .row00s .col02 span,
.priceComparisonSP .line02 .row00s .col03 span,
.priceComparisonSP .line02 .row00s .col04 span,
.priceComparisonSP .line02 .row00s .col05 span,
.priceComparisonSP .line02 .row00s .col06 span {
  font-size: 14px;
}

.priceComparisonSP .row00s,
.priceComparisonSP .row01s,
.priceComparisonSP .row02s,
.priceComparisonSP .row03s,
.priceComparisonSP .row04s {
  display: block;
}

.priceComparisonSP .row01s,
.priceComparisonSP .row02s,
.priceComparisonSP .row03s,
.priceComparisonSP .row04s {
  margin-top: 4px;
}

.priceComparisonSP .col00,
.priceComparisonSP .col01,
.priceComparisonSP .col02,
.priceComparisonSP .col03,
.priceComparisonSP .col04,
.priceComparisonSP .col05,
.priceComparisonSP .col06 {
  display: table;
  width: 100%;
  min-height: 100px;
  float: left;
}

.priceComparisonSP span {
  display: table-cell;
  height: 100%;
  width: 100%;
  vertical-align: middle;
  text-align: center;
  line-height: 1.8;
}

.priceComparisonSP .row00s .col00,
.priceComparisonSP .row00s .col01,
.priceComparisonSP .row00s .col02,
.priceComparisonSP .row00s .col03,
.priceComparisonSP .row00s .col04,
.priceComparisonSP .row00s .col05,
.priceComparisonSP .row00s .col06 {
  min-height: 70px;
}

.priceComparisonSP .row01s {
  margin-top: 0 !important;
}

@media screen and (max-width: 480px) {
  .priceComparisonSP .line01 {
    width: 15%;
  }
  .priceComparisonSP .line02 {
    width: 85%;
  }
  .priceComparisonSP .col00,
  .priceComparisonSP .col01,
  .priceComparisonSP .col02,
  .priceComparisonSP .col03,
  .priceComparisonSP .col04,
  .priceComparisonSP .col05,
  .priceComparisonSP .col06 {
    min-height: 80px;
  }
}

.listStyleCheck {
  display: block;
}

.listStyleCheck li {
  display: block;
  padding-left: 20px;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(0, 0, 0, 0.87);
  position: relative;
}

.listStyleCheck li:before {
  content: "";
  display: block;
  width: 15px;
  height: 7px;
  margin: auto;
  -webkit-transform-origin: left bottom;
  transform-origin: left bottom;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border: 1px solid rgba(0, 0, 0, 0.4);
  border-width: 0 0 2px 2px;
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 0;
}

.listStyleCheck li + li {
  margin-top: 14px;
}

.listStyleCheck li em {
  font-weight: 700;
  font-style: normal;
}

@media screen and (max-width: 1000px) {
  .listStyleCheck li {
    padding-left: 20px;
    font-size: 13px;
  }
  .listStyleCheck li:before {
    width: 13px;
    height: 6px;
    margin: auto;
    border-width: 0 0 2px 2px;
    top: 0;
    bottom: 0;
    left: 0;
  }
  .listStyleCheck li + li {
    margin-top: 10px;
  }
}

@media screen and (max-width: 768px) {
  .listStyleCheck {
    height: auto !important;
  }
  .listStyleCheck li {
    padding-left: 20px;
  }
  .listStyleCheck li:before {
    width: 11px;
    height: 5px;
    border-width: 0 0 2px 2px;
  }
  .listStyleCheck li + li {
    margin-top: 10px;
  }
}

@media screen and (max-width: 480px) {
  .listStyleCheck li {
    padding-left: 20px;
  }
  .listStyleCheck li:before {
    width: 11px;
    height: 5px;
    border-width: 0 0 2px 2px;
  }
  .listStyleCheck li + li {
    margin-top: 8px;
  }
}

/* CTA */
#cta {
  padding: 58px 0 60px;
  background: #74AF28 url(../img/cta_bg_pc.png) right center/contain no-repeat;
}

#cta > img {
  display: none;
}

#cta .contentArea {
  width: 100%;
  max-width: 1152px;
  padding: 0 48px;
}

#cta h2 {
  margin-bottom: 28px;
  color: #fff;
  font-size: 26px;
  font-weight: 600;
  letter-spacing: .62px;
  line-height: 1.3;
}

#cta p {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1.49px;
  line-height: 1.88;
}

#cta p + p {
  margin-top: 6px;
}

#cta .btnArea {
  width: 100%;
  max-width: 340px;
  margin: 40px auto 0 0;
}

#cta .btnArea a {
  display: block;
  padding: 17px 0 18px;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 1.44px;
  text-align: center;
  background: #f1b007;
  box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.32);
}

@media screen and (max-width: 768px) {
  #cta {
    padding: 0 0 38px;
    background-image: none;
  }
  #cta > img {
    display: block;
    max-width: 100%;
  }
  #cta .contentArea {
    padding: 0 16px;
  }
  #cta h2 {
    margin: 32px auto 20px;
    font-size: 20px;
    line-height: 1.4;
  }
  #cta p {
    letter-spacing: .8px;
  }
  #cta p + p {
    margin-top: 8px;
  }
  #cta .btnArea {
    margin: 32px auto 0;
  }
  #cta .btnArea a {
    padding: 17px 0 16px;
    font-size: 16px;
    line-height: 1.69;
  }
}

/* ヘッダー カレンダー */
/*
#headerCalendar p a {
    display: block;
    position: fixed;
    top: 112px;
    right: 5px;
    z-index: 9999;
    padding: 2px 5px;
    color: $color-dark-green;
    font-size: 12px;
    line-height: 1.2;
    background: #fff;
    border: 2px solid $color-dark-green;
    border-radius: 3px;
    transition: all .3s;
}
.off + #headerCalendar p a {
    top: 77px;
}
@media screen and (max-width: 1300px) {
    #headerCalendar p a {
        top: 100px;
    }
    .off + #headerCalendar p a {
        top: 65px;
    }
}
@media screen and (max-width: 1100px) {
    #headerCalendar p a {
        top: 94px;
    }
    .off + #headerCalendar p a {
        top: 59px;
    }
}
@media screen and (max-width: 768px) {
    #headerCalendar p a {
        top: 99px;
    }
}
@media screen and (max-width: 480px) {
    #headerCalendar p a {
        top: 94px;
    }
}
@media screen and (max-width: 374px) {
    #headerCalendar p a {
        top: 104px;
    }
}
*/
img {
  max-width: 100%;
  height: auto;
}

.lower {
  margin-top: 20px;
}

.lower.pt {
  padding-top: 50px;
}

.lower .about {
  margin-bottom: 0;
  padding-bottom: 0;
}

.ttlArea {
  margin: 0 auto 40px;
  text-align: center;
}

.ttlArea p {
  position: relative;
  margin-bottom: 18px;
  padding-bottom: 14px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.44;
  letter-spacing: 0.8px;
}

.ttlArea p:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  width: 89px;
  height: 2px;
  margin: auto;
  background: #74AF28;
}

.ttlArea h2 {
  font-size: 26px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.5px;
}

@media screen and (max-width: 768px) {
  .line01 .row01s {
    border-right: none !important;
  }
  .line01 .row01s .col00 {
    margin-top: 2px;
    min-height: 100px;
    background: #74AF28;
  }
  .line01 .row04s .col00,
  .line01 .row03s .col00,
  .line01 .row02s .col00 {
    margin-top: 5px;
    background-color: #efefef;
  }
}

.supportList {
  display: flex;
  flex-wrap: wrap;
  padding: 40px 47px;
  border: 4px solid #74AF28;
}

@media screen and (max-width: 1000px) {
  .supportList {
    padding: 35px 40px;
    border: 3px solid #74AF28;
  }
}

@media screen and (max-width: 768px) {
  .supportList {
    padding: 30px 35px;
    border: 2px solid #74AF28;
    display: block;
  }
}

.supportList li {
  display: block;
  width: 47%;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .supportList li {
    width: 100%;
  }
}

.supportList li:nth-of-type(even) {
  margin-left: 6%;
}

@media screen and (max-width: 768px) {
  .supportList li:nth-of-type(even) {
    margin-left: 0;
  }
}

.supportList .no {
  margin-right: 10px;
  font-size: 50px;
  font-style: italic;
  color: #74AF28;
  line-height: 1;
}

@media screen and (max-width: 1000px) {
  .supportList .no {
    margin-right: 10px;
    font-size: 40px;
  }
}

@media screen and (max-width: 768px) {
  .supportList .no {
    width: 40px;
    font-size: 50px;
  }
}

@media screen and (max-width: 480px) {
  .supportList .no {
    width: 60px;
    margin-top: 0;
    font-size: 50px;
    float: left;
    margin-left: -30px;
    text-align: right;
    margin-right: 20px;
  }
}

.supportList h3 {
  display: block;
  color: #74AF28;
}

.supportList h3 .title {
  color: #74AF28;
  font-size: 20px;
  font-weight: 700;
  display: inline;
}

@media screen and (max-width: 1000px) {
  .supportList h3 .title {
    font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .supportList h3 .title {
    vertical-align: 5px;
  }
}

@media screen and (max-width: 480px) {
  .supportList h3 .title {
    font-size: 16px;
    min-height: 50px;
    line-height: 1.2;
    display: inline;
  }
}

.supportList p {
  display: block;
  font-size: 13px;
  line-height: 1.8;
  color: rgba(0, 0, 0, 0.87);
}

@media screen and (max-width: 480px) {
  .supportList p {
    padding-left: 50px;
  }
}

.cnt-box {
  padding-top: 30px;
  margin-bottom: 50px;
  font-size: 15px;
  line-height: 1.8;
  color: rgba(0, 0, 0, 0.87);
}

.cnt-box > * {
  margin-bottom: 10px;
}

.point-list {
  font-weight: 700;
  margin-bottom: 20px;
  margin-top: 50px;
  counter-reset: num;
  margin-left: 50px;
}

@media screen and (max-width: 768px) {
  .point-list {
    margin-left: 0;
    margin-top: 30px;
  }
}

.point-list li {
  min-height: 70px;
  font-size: 18px;
  margin-bottom: 10px;
  z-index: 1;
  position: relative;
  counter-increment: num;
  padding-left: 60px;
}

@media screen and (max-width: 768px) {
  .point-list li {
    font-size: 17px;
    min-height: 50px;
  }
}

.point-list li::after {
  left: 0;
  width: 40px;
  text-align: right;
  top: -40px;
  position: absolute;
  display: block;
  content: counter(num);
  font-family: 'Josefin Sans',sans-serif;
  font-style: italic;
  font-size: 50px;
  font-weight: 200;
}

@media screen and (max-width: 768px) {
  .point-list li::after {
    top: -30px;
    font-size: 40px;
    width: 40px;
    left: -5px;
  }
}

.point-list li::before {
  left: 0;
  top: 0;
  position: absolute;
  display: block;
  height: 50px;
  width: 50px;
  background: #74AF28;
  z-index: -1;
  content: '';
}

@media screen and (max-width: 768px) {
  .point-list li::before {
    width: 40px;
    height: 40px;
  }
}

.review {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.05);
  text-align: center;
  position: relative;
  z-index: 1;
  padding-bottom: 2px;
  margin-bottom: 61px;
}

.pickupArea .contentArea {
  display: flex;
  flex-wrap: wrap;
}

.pickupArea .slideItem {
  display: block;
  width: calc(33.333% - 16px * 2 / 3);
  margin-left: 16px;
  margin-bottom: 16px;
}

.pickupArea .slideItem:nth-child(3n + 1) {
  margin-left: 0;
}

@media screen and (max-width: 768px) {
  .pickupArea .slideItem {
    width: calc(50% - 8px);
    display: block;
  }
  .pickupArea .slideItem:nth-child(3n + 1) {
    margin-left: 16px;
  }
  .pickupArea .slideItem:nth-child(2n + 1) {
    margin-left: 0;
  }
}

@media screen and (max-width: 480px) {
  .pickupArea .slideItem {
    width: 100%;
    margin-left: 0 !important;
  }
}

.pickupArea .slideItem a {
  display: flex;
  height: 100%;
  align-items: flex-start;
  flex-wrap: wrap;
  background: #fff;
  box-shadow: 5px 10px 15px rgba(0, 0, 0, 0.1);
  transition: .3s;
}

.slideItem .imgArea {
  width: 100%;
}

.slideItem .imgArea img {
  width: 100%;
}

.slideItem .txtArea {
  padding: 20px 15px 30px;
}

.slideItem .txtArea h3 {
  display: block;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  font-size: 14px;
}

@media screen and (max-width: 480px) {
  .slideItem .txtArea h3 {
    font-size: 17px;
  }
}

.slideItem .txtArea p {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  color: rgba(0, 0, 0, 0.6);
}

@media screen and (max-width: 768px) {
  .slideItem .txtArea p {
    font-size: 12px;
  }
}

.slideItem .txtArea p.record {
  margin: 0 auto 10px;
  color: #74AF28;
}

.pagination {
  width: 70%;
  margin: 50px 15% 50px 15%;
  position: relative;
}

.pagination_next, .pagination_prev {
  padding: 15px 30px;
  color: #ffffff;
  background: #333;
  border: 2px solid #333;
  position: absolute;
}

.pagination_next:hover, .pagination_prev:hover {
  color: #333;
  background: #ffffff;
}

.pagination_next[aria-disabled=true], .pagination_prev[aria-disabled=true] {
  pointer-events: none;
  opacity: 0.5;
}

.pagination_prev {
  left: 0;
}

.pagination_next {
  right: 0;
}

@media screen and (max-width: 480px) {
  .priceComparisonSP .line02 .row01s .col01 {
    min-height: 100px;
  }
}

.fontStyle01 {
  font-family: 'Josefin Sans',sans-serif !important;
}

.plus:after {
  content: "＋";
  font-size: 18px;
  color: #000;
  vertical-align: top;
  font-style: normal;
}

.container {
  display: flex;
  margin: 0 auto;
  max-width: 1140px;
  padding: 15px 0 30px;
}

@media screen and (max-width: 1140px) {
  .container {
    padding: 0 30px;
  }
}

@media screen and (max-width: 960px) {
  .container {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .container {
    padding: 0 15px;
  }
}

.container-main {
  width: 840px;
}

@media screen and (max-width: 1140px) {
  .container-main {
    width: 640px;
  }
}

@media screen and (max-width: 960px) {
  .container-main {
    width: 100%;
    margin-bottom: 50px;
  }
}

.container-sub {
  position: relative;
  width: calc(100% - 840px);
  margin-left: 24px;
}

@media screen and (max-width: 1140px) {
  .container-sub {
    width: calc(100% - 640px);
  }
}

@media screen and (max-width: 960px) {
  .container-sub {
    width: 100%;
    margin-left: 0;
  }
}

.container-sub_title {
  text-align: center;
  box-shadow: none;
  font-size: 18px;
  border-bottom: 3px solid #74AF28;
  text-align: left;
  font-weight: 600;
  padding-bottom: 5px;
  margin: 0 0 15px 0;
}

.entry {
  font-size: 16px;
  line-height: 26px;
  margin: 0 0 10px;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
  padding-bottom: 50px;
}

.entry-title {
  font-size: 32px;
  padding: 20px 30px;
  text-align: left;
  line-height: 1.5em;
  margin: 0 auto 10px;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .entry-title {
    font-size: 24px;
    padding: 10px 30px;
  }
}

@media screen and (max-width: 768px) {
  .entry-title {
    font-size: 21px;
    padding: 10px 15px;
  }
}

.entry-img.is-product img {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
  display: block;
  min-width: 250px;
}

.entry-img img {
  width: 100%;
}

.entry-content {
  margin: 30px auto 30px;
  padding: 0 73px;
  color: #444444;
}

@media screen and (max-width: 960px) {
  .entry-content {
    padding: 0 30px;
  }
}

@media screen and (max-width: 768px) {
  .entry-content {
    padding: 0 15px;
    font-size: 0.9em;
  }
}

.entry-content p {
  line-height: 1.6;
  margin-bottom: 30px;
  word-wrap: break-word;
}

@media screen and (max-width: 960px) {
  .entry-content p {
    margin-bottom: 15px;
  }
}

.entry-content h2 {
  font-size: 18px;
  color: #444444;
  font-weight: bold !important;
  margin: 60px 0 24px;
  border-bottom: 2px solid #74AF28;
  line-height: 1.5;
  padding-bottom: 1rem;
}

@media screen and (max-width: 960px) {
  .entry-content h2 {
    font-size: 22px;
  }
}

.entry-content h3 {
  color: #444444;
  margin: 40px 0 20px;
  padding-left: 8px;
  border-left: 2px solid #74AF28;
  font-size: 20px;
}

@media screen and (max-width: 960px) {
  .entry-content h3 {
    font-size: 18px;
  }
}

.entry-content b, .entry-content strong {
  font-weight: bold;
}

.entry-content .green_strong {
  font-weight: bold;
  color: #74AF28;
}

.entry-content > ol {
  counter-reset: num;
  padding-bottom: 5px;
  margin-bottom: 30px;
}

.entry-content > ol > li > ol {
  margin-top: 5px;
  counter-reset: num;
}

.entry-content > ol > li > ol li {
  padding-left: 2em;
}

.entry-content > ol li {
  padding-left: 1.5em;
  position: relative;
}

.entry-content > ol li::before {
  color: #74AF28;
  font-weight: bold;
  font-size: 0.9em;
  position: absolute;
  left: 0;
  content: counters(num, "-") ". ";
  counter-increment: num;
}

.entry-content > ul {
  margin-bottom: 30px;
}

.entry-content > ul ul {
  margin-top: 5px;
}

.entry-content > ul li {
  position: relative;
  padding-left: 1.3em;
  padding-bottom: 5px;
}

.entry-content > ul li::before {
  content: '';
  width: 1em;
  height: 1em;
  position: absolute;
  left: 0;
  top: 5px;
  border-radius: 50%;
  transform: scale(0.5);
  background: #74AF28;
  display: block;
}

.entry-content .box_voice {
  position: relative;
  padding: 3rem 4rem;
  text-align: center;
  margin-bottom: 30px;
}

.entry-content .box_voice::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 3rem;
  height: 3rem;
  border-top: 2px solid #74AF28;
  border-left: 2px solid #74AF28;
  margin: 0;
}

.entry-content .box_voice::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  width: 3rem;
  height: 3rem;
  border-bottom: 2px solid #74AF28;
  border-right: 2px solid #74AF28;
  margin: 0;
}

.entry-content table {
  margin-bottom: 30px;
  border-top: 2px solid #aaa;
  border-bottom: 2px solid #aaa;
}

.entry-content table th, .entry-content table td {
  padding: .5em .8em;
}

.entry-content table th {
  font-weight: bold;
}

.entry-content table tbody {
  border-top: 2px solid #aaa;
}

.entry-content table tbody tr {
  border-top: 1px solid #ddd;
}

.meta-date {
  display: flex;
  margin-right: 15px;
  margin-bottom: 10px;
  font-size: 13px;
  justify-content: flex-end;
  color: #6c6c6c;
}

@media screen and (max-width: 768px) {
  .meta-date {
    justify-content: flex-start;
  }
}

.meta-date p {
  padding: 0 15px;
}

.meta-date p i {
  margin-right: 5px;
}

.meta-date-modified-date i {
  transform: rotateZ(90deg);
}

.breadcrumb {
  display: flex;
  margin: 0 auto;
  max-width: 1140px;
  padding: 15px 0;
}

@media screen and (max-width: 1140px) {
  .breadcrumb {
    padding: 15px 30px;
  }
}

.breadcrumb li {
  display: inline-block;
  font-size: 13px;
}

.breadcrumb li a {
  color: #333;
}

.breadcrumb li a:hover {
  text-decoration: underline;
}

.breadcrumb li::after {
  vertical-align: 2px;
  margin-left: 5px;
  margin-right: 5px;
  content: '';
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  transform: rotate(45deg);
  border-top: 1px solid #000;
  border-right: 1px solid #000;
}

.subnav {
  margin-bottom: 50px;
}

@media screen and (max-width: 960px) {
  .subnav {
    display: flex;
    flex-wrap: wrap;
  }
}

@media screen and (max-width: 960px) {
  .subnav li {
    width: calc(50% - 15px / 2);
  }
  .subnav li:nth-child(2n) {
    margin-left: 15px;
  }
}

@media screen and (max-width: 768px) {
  .subnav li {
    width: 100%;
  }
  .subnav li:nth-child(2n) {
    margin-left: 0;
  }
}

@media screen and (max-width: 960px) {
  .subnav-sns {
    display: flex;
    flex-wrap: wrap;
  }
}

@media screen and (max-width: 960px) {
  .subnav-sns li {
    width: calc(50% - 15px / 2);
  }
  .subnav-sns li:nth-child(2n) {
    margin-left: 15px;
  }
}

@media screen and (max-width: 768px) {
  .subnav-sns li {
    width: 100%;
  }
  .subnav-sns li:nth-child(2n) {
    margin-left: 0;
  }
}

.subnav-sns_instagram {
  border: 2px solid #D93177;
  background: #fff;
  color: #D93177;
}

.subnav-sns_instagram:hover {
  background: #D93177;
  color: #ffffff;
}

.subnav-sns_youtube {
  border: 2px solid #cd201f;
  color: #cd201f;
}

.subnav-sns_youtube:hover {
  background: #cd201f;
  color: #ffffff;
}

.subnav-sns_facebook {
  border: 2px solid #1877f2;
  color: #1877f2;
}

.subnav-sns_facebook:hover {
  background: #1877f2;
  color: #ffffff;
}

.subnav-sns a {
  font-size: 18px;
  text-align: center;
  display: block;
  padding: 10px 20px;
  display: block;
  margin-bottom: 15px;
  transition: .3s;
}

.subnav-sns a i {
  vertical-align: middle;
  font-size: 28px;
  margin-right: 10px;
}

.subnav_item {
  margin-bottom: 15px;
}

.subnav_item a {
  color: #444444;
  display: flex;
  transition: .3s;
}

.subnav_item a:hover {
  color: #74AF28;
}

.subnav_item_img {
  width: 100px;
}

.subnav_item_title {
  font-size: 14px;
  font-weight: 700;
  padding-left: 10px;
  width: calc(100% - 100px);
}

.subnav-cate {
  margin-bottom: 30px;
}

.subnav-cate li {
  font-weight: bold;
  font-size: 15px;
  margin-bottom: 10px;
}

.subnav-cate li a {
  color: #333;
}

.subnav-cate li a:hover {
  text-decoration: underline;
}

.about {
  padding-top: 30px;
  padding-bottom: 75px;
}

.about .title {
  display: block;
  text-align: center;
  margin-bottom: 50px;
  background-image: linear-gradient(50deg, #C2D84C, #58851f);
  font-size: 48px;
  font-weight: 700;
  line-height: 1.17;
  letter-spacing: 3.7px;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.about .subtitle {
  display: block;
  margin-bottom: 48px;
  text-align: center;
  line-height: 2;
  font-size: 16px;
}

.about .featureStatus {
  width: 100%;
  max-width: 750px;
  margin: 0 auto 20px;
  display: block;
  text-align: center;
}

.about .featureStatus li {
  display: inline-block;
  width: 33.33%;
}

@media screen and (max-width: 768px) {
  .about .featureStatus li {
    padding: 0 10px;
    width: 40%;
  }
}

@media screen and (max-width: 480px) {
  .about .featureStatus li {
    display: block;
    width: 100%;
  }
}

.about .featureStatus dt {
  margin: 0 auto 15px;
  font-size: 16px;
  letter-spacing: .39px;
  color: #000;
  font-weight: 700;
  display: block;
}

.about .featureStatus dd {
  font-size: 38px;
  letter-spacing: 2px;
  color: #74AF28;
  display: block;
  white-space: nowrap;
}

.about .featureStatus dd span {
  font-style: italic;
}

.about .featureStatus dd small {
  font-size: 20px;
  color: rgba(0, 0, 0, 0.87);
}

.vision {
  width: 100%;
  padding-top: 7%;
  text-align: center;
}

.vision.bg-green {
  background: linear-gradient(#83cb15 60%, #74AF28);
}

.vision.bg-green .text {
  color: #fff;
}

.vision.bg-green .h2 {
  color: #fff;
}

.vision .subTitle {
  font-family: 'Josefin Sans',sans-serif;
  font-weight: 900;
  font-size: 30px;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  letter-spacing: 2px;
}

@media screen and (max-width: 768px) {
  .vision .subTitle {
    font-size: 20px;
  }
}

.vision .subTitle span {
  font-family: "Noto Sans JP",sans-serif;
  font-size: 14px;
  display: block;
  font-weight: 400;
}

.vision .h2 {
  color: #74AF28;
  font-weight: 900;
  font-size: 4em;
  padding-top: .6em;
}

@media screen and (max-width: 768px) {
  .vision .h2 {
    font-size: 2em;
  }
}

.vision .h2.letter-spacing {
  letter-spacing: .1em;
}

.vision .text {
  font-size: 16px;
  width: 60%;
  line-height: 2.2em;
  margin: 0 auto;
  padding: 3.5% 0 5%;
}

@media screen and (max-width: 768px) {
  .vision .text {
    padding: 20px 30px 30px;
    font-size: 15px;
    width: 100%;
  }
}

.v-value-content {
  font-size: 16px;
  margin-top: 50px;
  text-align: left;
  padding: 0 100px;
}

@media screen and (max-width: 768px) {
  .v-value-content {
    padding: 0 20px;
  }
}

.v-value-content:nth-child(2n) {
  text-align: right;
}

.v-value-content:nth-child(2n) .v-value-text,
.v-value-content:nth-child(2n) .v-value-sub-title {
  text-align: left;
  padding-left: 0;
}

.v-value-title {
  margin-bottom: 50px;
  background-image: linear-gradient(50deg, #83cb15, #74AF28);
  font-size: 100px;
  letter-spacing: 0.2em;
  font-weight: 700;
  line-height: 1.17;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .v-value-title {
    font-size: 50px;
    margin-bottom: 20px;
  }
}

.v-value-title span {
  letter-spacing: 3.7px;
  -webkit-text-fill-color: #000000;
  -webkit-background-clip: none;
  background-clip: none;
  font-size: 26px;
  background: none;
  color: #000000;
  font-family: 'Rock Salt', cursive;
  position: absolute;
  right: -20px;
  bottom: 0;
  font-style: italic;
  transform: rotate(-15deg);
}

@media screen and (max-width: 768px) {
  .v-value-title span {
    font-size: 16px;
  }
}

.v-value-sub-title {
  padding-left: 50px;
  font-weight: 700;
  font-size: 1.8em;
  color: rgba(0, 0, 0, 0.8);
  letter-spacing: 3px;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .v-value-sub-title {
    font-size: 1.3em;
    padding-left: 20px;
  }
}

.v-value-text {
  padding-left: 50px;
}

@media screen and (max-width: 768px) {
  .v-value-text {
    padding-left: 20px;
  }
}

.member {
  width: 25%;
  padding: 10px;
  z-index: -1;
  position: relative;
}

.member.is-open {
  z-index: 100;
}

.member.is-open .member-content {
  height: 100%;
  animation: fadeIn 1s forwards;
}

@media screen and (max-width: 768px) {
  .member {
    padding: 5px;
    width: 50%;
  }
}

.member-list {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  /*margin-top: 100px;*/
}

@media screen and (max-width: 768px) {
  .member-list {
    margin-top: 30px;
  }
}

.member-img {
  display: block;
  overflow: hidden;
  border-radius: 50%;
  position: relative;
  padding: 4px;
  background-image: linear-gradient(50deg, #c8f386, #74AF28);
}

.member-img:hover {
  cursor: pointer;
}

.member-img img {
  border-radius: 50%;
  width: 100%;
  display: block !important;
}

.member-img figcaption {
  text-align: center;
  left: 15px;
  top: 50%;
  position: absolute;
  font-size: 12px;
  line-height: 1.2;
}

.member-img figcaption span {
  padding-top: 3px;
  font-size: 15px;
  font-weight: bold;
  display: block;
  color: #74AF28;
}

.member-content {
  height: 0;
  transition: 1s;
  position: fixed;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  opacity: 0;
  font-size: 16px;
}

.member-content-inner {
  max-width: 800px;
  overflow: auto;
  position: relative;
  text-align: left;
  margin: 10% auto;
  background: #ffffff;
  width: 80%;
  max-height: 90%;
}

@media screen and (max-width: 768px) {
  .member-content-inner {
    padding-top: 14px;
    top: 16px;
    width: 100%;
    padding-bottom: 50px;
  }
}

.member-content-inner img {
  margin-top: 30px;
  margin-left: 0;
  width: 320px;
  float: left;
  padding-right: 20px;
}

@media screen and (max-width: 768px) {
  .member-content-inner img {
    float: none;
    width: 100%;
    padding-right: 0;
  }
}

.member-catchphrase {
  z-index: 1;
  position: absolute;
  width: 250px;
  left: 0;
  top: 15px;
  padding: 7px 7px 7px 28px;
  color: #ffffff;
  font-weight: bold;
  font-size: 18px;
  letter-spacing: 0.1em;
}

.member-catchphrase::after {
  top: 0;
  left: -10px;
  z-index: -1;
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  transform: skew(-20deg);
  display: block;
  background: linear-gradient(-50deg, #c8f386, #74AF28);
}

.member-position {
  margin-top: 30px;
  color: #74AF28;
}

@media screen and (max-width: 768px) {
  .member-position {
    margin: 0 15px 15px;
  }
}

.member-name {
  margin-bottom: 15px;
  font-size: 22px !important;
}

@media screen and (max-width: 768px) {
  .member-name {
    margin: 0 15px 15px;
  }
}

.member-name span {
  padding-left: 10px;
  font-size: .8em;
}

@media screen and (max-width: 768px) {
  .member-name + p {
    margin: 0 15px 15px;
  }
}

.member-close {
  top: 10px;
  position: absolute;
  right: 10px;
  font-size: 30px;
  color: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .member-close {
    top: 0;
  }
}

.member-detail {
  padding-top: 15px;
  clear: both;
  margin-left: 30px;
  font-size: 15px;
  padding-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .member-detail {
    margin: 15px;
    padding-bottom: 0;
  }
}

.member-detail dt {
  font-size: 20px;
  line-height: 1.2;
  color: #74AF28;
  font-weight: 900;
  padding-left: 5px;
  margin-bottom: 5px;
  border-left: 2px solid #74AF28;
}

.member-detail dd {
  margin-bottom: 15px;
}

@keyframes fadeIn {
  0% {
    z-index: 100;
  }
  100% {
    z-index: 100;
    opacity: 1;
  }
}

#plan-modal {
  opacity: 0;
  transition: opacity 1s;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: scale(0, 0);
}

#plan-modal .plan-modal-bg {
  z-index: -1;
  display: block;
  background: rgba(0, 0, 0, 0.2);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 1s .5s;
}

#plan-modal .plan-modal-bg::before {
  content: '×';
  position: fixed;
  right: 15px;
  top: 100px;
  font-size: 30px;
}

#plan-modal.is-open {
  transform: scale(1, 1);
  opacity: 1;
}

#plan-modal.is-open .plan-modal {
  background: #ffffff;
  padding: 30px;
}

#plan-modal .plan-detail-itemtitle {
  text-align: center;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 700;
}

#plan-modal .plan-detail-btn {
  margin-top: 20px;
  color: #ffffff;
  display: block;
  padding: 12px 10px;
  background: #74AF28;
  border: 2px solid #74AF28;
  font-weight: bold;
  text-align: center;
  transition: .3s;
}

#plan-modal .plan-detail-btn:hover {
  color: #74AF28;
  background: #ffffff;
}

#plan-modal .plan-detail-btn:hover::after {
  border-left: 8px solid #74AF28;
}

#plan-modal .plan-detail-btn::after {
  content: '';
  width: 0;
  height: 0;
  margin-left: 10px;
  display: inline-block;
  border-bottom: 6px solid transparent;
  border-top: 6px solid transparent;
  border-left: 8px solid #fff;
}

.company dl, .company-blanch dl {
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #aaa;
}

.company dl dt, .company-blanch dl dt {
  width: 35%;
  text-align: right;
  border-bottom: 1px solid #aaa;
  font-weight: bold;
  padding: 20px 30px 20px 0;
}

@media screen and (max-width: 768px) {
  .company dl dt, .company-blanch dl dt {
    border-bottom: 1px solid #ccc;
    text-align: left;
    width: 100%;
  }
}

.company dl dd, .company-blanch dl dd {
  padding: 20px 0 20px 0;
  width: 65%;
  border-bottom: 1px solid #aaa;
}

@media screen and (max-width: 768px) {
  .company dl dd, .company-blanch dl dd {
    width: 100%;
  }
}

.company {
  width: 80%;
  margin: 0 auto 50px;
}

@media screen and (max-width: 768px) {
  .company {
    width: 100%;
  }
}

.company h2 {
  font-weight: 900;
  font-size: 18px;
  text-align: center;
  margin-bottom: 30px;
}

.company-blanch {
  flex-wrap: wrap;
  display: flex;
  margin-bottom: 100px;
}

.company-blanch h2 {
  width: 100%;
  font-weight: 900;
  font-size: 20px;
  margin-bottom: 30px;
  text-align: center;
}

/*.company-blanch dl {
  width: 50%;
}*/

.company-blanch dl {
  width: 100%;
}

.company-blanch img {
  width: 50%;
}


@media screen and (max-width: 768px) {
  .company-blanch dl {
    width: 100%;
    margin-bottom: 30px;
  }
}

.company-blanch .company-map {
  width: 50%;
  padding-left: 30px;
}

@media screen and (max-width: 768px) {
  .company-blanch .company-map {
    width: 100%;
    padding-left: 0;
  }
}

.company-blanch .company-map-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}


.company-blanch .company-map-wrapper iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.company-blanch .company-map-wrapper img {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.shop-info {
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .shop-info {
    margin-bottom: 0px;
  }
}

.cate-list {
  text-align: center;
  max-width: 1000px;
  margin: 0 auto 30px;
  padding-left: 30px;
  padding-right: 30px;
  margin-top: 50px;
}

@media screen and (max-width: 768px) {
  .cate-list {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 15px;
  }
}

.cate-list .title {
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  margin-bottom: 15px;
}

.cate-list li {
  display: inline-block;
  padding: 5px 5px;
}

.cate-list li a {
  font-size: 13px;
  display: block;
  padding: 7px 10px;
  border: 2px solid #333;
  color: #333;
  font-weight: 700;
  transition: .3s;
}

.cate-list li a:hover {
  color: #fff;
  background: #333;
}

main {
  position: relative;
  z-index: 2;
}

.faq p {
  font-size: 16px;
  line-height: 1.9;
}

.floating-menu {
  display: none;
  position: fixed;
  z-index: 10;
  height: 53px;
  bottom: 0;
  left: 0;
  width: 100%;
}

.floating-menu-totopbtn {
  position: absolute;
  width: 60px;
  right: 0;
  height: 53px;
  background: #fff;
  display: block;
  top: 0;
}

.floating-menu-totopbtn::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin: auto 0;
  border: 2px solid rgba(0, 0, 0, 0.87);
  border-width: 2px 0 0 2px;
  transform: rotate(45deg);
  position: absolute;
  top: 10px;
  bottom: 0;
  right: 20px;
}

.floating-menu-btn {
  position: relative;
  display: none;
  font-size: 16px;
}

.floating-menu-btn::after {
  content: "";
  width: 20px;
  height: 5px;
  border: 2px solid #000;
  border-width: 0 5px 3px 0;
  margin: auto;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-transform: skewX(60deg);
  transform: skewX(60deg);
  position: absolute;
  top: 22px;
  right: 20px;
}

@media screen and (max-width: 768px) {
  .floating-menu-btn {
    display: block;
    width: calc(100% - 60px);
  }
}

.floating-menu-btn span {
  background: #ffffff;
  padding: 5px 10px;
  color: #74AF28;
  border-radius: 13px;
  display: inline-block;
  margin-right: 8px;
  font-size: 0.9em;
}

@media screen and (max-width: 768px) {
  .floating-menu-btn {
    padding: 15px 30px 15px 10px;
    text-align: center;
    background: #f1b007;
    font-weight: 700;
  }
}

header nav ul li.toBiz a {
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  header nav ul li.toBiz a {
    pointer-events: auto;
  }
}

.is-sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .is-sp {
    display: block;
  }
}

.v-business-content {
  font-size: 16px;
  margin-top: 50px;
  text-align: left;
  padding: 0 100px;
}

@media screen and (max-width: 768px) {
  .v-business-content {
    padding: 0 20px;
  }
}

.v-business-content:nth-child(2n) {
  text-align: right;
}

.v-business-content:nth-child(2n) .v-business-text,
.v-business-content:nth-child(2n) .v-business-sub-title {
  text-align: left;
  padding-left: 0;
}

.v-business-title {
  margin-bottom: 50px;
  background-image: linear-gradient(50deg, #83cb15, #74AF28);
  font-size: 100px;
  letter-spacing: 0.2em;
  font-weight: 700;
  line-height: 1.17;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .v-business-title {
    font-size: 50px;
    margin-bottom: 20px;
  }
}

.v-business-title span {
  letter-spacing: 3.7px;
  -webkit-text-fill-color: #000000;
  -webkit-background-clip: none;
  background-clip: none;
  font-size: 26px;
  background: none;
  color: #000000;
  font-family: 'Rock Salt', cursive;
  position: absolute;
  right: -20px;
  bottom: 0;
  font-style: italic;
  transform: rotate(-15deg);
}

@media screen and (max-width: 768px) {
  .v-business-title span {
    font-size: 16px;
  }
}

.v-business-sub-title {
  padding-left: 50px;
  font-weight: 700;
  font-size: 1.8em;
  color: rgba(0, 0, 0, 0.8);
  letter-spacing: 3px;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .v-business-sub-title {
    font-size: 1.3em;
    padding-left: 20px;
  }
}

.v-business-text {
  padding-left: 50px;
}

@media screen and (max-width: 768px) {
  .v-business-text {
    padding-left: 20px;
  }
}

/*追加分 */

.bannercontents h3 {
  font-size: 18px;
}
.areafoot-tel {
  font-size: 18px;
	color: #83cb15;
}

.areatoptitle {
  color: #74AF28;
  font-weight: 900;
  font-size: 3em;
  padding-bottom: .6em;
}


.foot {
	text-align: center;
	margin-top: 30px;
	margin-bottom: 30px;
}
.foottitle	{
	color: #111;
	font-size: 16px;
}
.foottext {
	color: #333;
	font-size: 14px;
}


/* 問合せ */
.areacontactbtn a {
    width: 300px;
    height: 80px;
	margin: 30px auto 40px;
    background: url("https://sotorie.com/wp-content/themes/sotorie2/assets/img/fukuoka/contact_on.png") no-repeat;
    display: block;
    text-indent: -9999px;
}

.areacontactbtn a:hover {
    background-image: url("https://sotorie.com/wp-content/themes/sotorie2/assets/img/fukuoka/contact_off.png");
}

/* エリアトップ画像 */
.areatop_img {
	width: 100%;
}

/* エリア冒頭 */
.areatop h2 {
  color: #74AF28;
  font-weight: 900;
	font-size: 1.6rem;
}
.areatop h3	{
	display: block;
  font-size: 1.2rem;
	width: 90%;
	margin: auto;
  font-weight: 900;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.59;
  letter-spacing: .68px;
	padding-top: 3rem;
	padding-bottom: 2rem;
}
.areatop p {
  font-size: 1rem;
  width: 80%;
	margin: auto;
  line-height: 2.2em;
	padding-bottom: 1rem;
}

/* 相談リスト */
.consult h2	{
	color: #111;
  font-weight: 900;
  font-size: 1.6rem;
}
.consult h3	{
	color: #111;
  font-weight: 900;
  font-size: 1.4rem;
	padding: 3rem 0 2rem;
}
.consult ul	{
	color: #fff;
	font-size: 1rem;
	width: 60%;
	line-height: 2.2em;
	margin: 0 auto 40px;
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.consult li	{
	list-style: disc;
	text-align: left;
	padding: 0.5rem 0 0.5rem;
}

/* バナー2 */
.conbtn {
  width: 100%;
	max-width: 900px;
	margin: auto;
	padding-top: 1rem;
	padding-bottom: 3rem;
 }
 .conbtn img {
     width: 100%;
 }

 .conbox {
     display: flex;
 }
 .con1 {
	 width: 33%;
   margin: auto;
 }
 .con2 {
	 width: 33%;
   margin: auto .5rem;
 }
 .con3 {
	 width: 33%;
   margin: auto .5rem;
 }

 @media screen and (max-width: 767px) {
     .conbox {
         display: block;
     }
     .conbox .con1 {
         width: 80%;
         margin: 0 auto 1rem;
     }
     .conbox .con2 {
         width: 80%;
         margin: 0 auto 1rem;
     }

     .conbox .con3 {
         width: 80%;
         margin: 0 auto 1rem;
     }

 }

/* エリア外構タイプ */
.extype h2 {
  color: #74AF28;
  font-weight: 900;
  font-size: 1.6rem;
  padding-bottom: 1.5rem;
}
.extype h3 {
	border-top: 0.5px solid #666;
	color: #111;
  font-weight: 900;
  font-size: 1.5rem;
	padding: 1rem 0 1rem;
}
.extype h4 {
	color: #74AF28;
  font-weight: 600;
  font-size: 1.2rem;
	padding: 2rem 0 1rem;
}
.extype p {
  font-size: 1rem;
	width: 80%;
  line-height: 2.2em;
  margin: auto;
	padding-bottom: 2rem;
}
.extype img {
	max-width: 80%;
}

/* エリア施工実績 */
.construction_example h2 {
	color: #111;
  font-weight: 900;
  font-size: 1.6rem;
	padding-bottom: 3rem;
}
.construction_example h3 {
  display: flex;
  align-items: center;
 	color: #111;
  font-size: 1.2rem;
	font-weight: 600;
	padding-bottom: 3rem;
}
.construction_example h3:before,
.construction_example h3:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}

.construction_example h3:before {
  margin-right: 1rem;
}

.construction_example h3:after {
  margin-left: 1rem;
}
.construction_example h4 {
	color: #111;
	font-size: 1.3rem;
	font-weight: 600;
	padding-bottom: 1.5rem;
}
.construction_example p {
	color: #fff;
	font-size: 1rem;
	width: 80%;
	line-height: 2.2em;
	margin: auto;
	padding-bottom: 4rem;
}

.head-border {
  display: flex;
  align-items: center;
 	color: #111;
  font-size: 15px;
	font-weight: 500;
	padding-top: 40px;
	padding-bottom: 40px;
}

.head-border:before,
.head-border:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}

.head-border:before {
  margin-right: 1rem;
}

.head-border:after {
  margin-left: 1rem;
}

/* 対応工事 */
.construction {
	width: 80%;
	margin: auto;
}
.construction h2 {
  color: #74AF28;
  font-weight: 900;
  font-size: 1.6rem;
  padding-bottom: 3rem;
}
.construction h3 {
	color: #111;
	font-weight: 600;
  margin: 0 0 1rem;
  font-size: 1.4rem;
	border-bottom: 1px solid #111;
}
.construction h3::first-letter {
  font-size: 150%;
  color: #eb6100;
}

.construction h4 {
	color: #111;
	padding-top: 1.2rem;
  font-size: 1rem;
	font-weight: 600;

}

.construction ul {
	margin: auto;
	padding-top: 1rem;
	padding-bottom: 2rem;
}

.construction li {
	display: inline-block;
	color: #74AF28;
	font-size: 0.9rem;
	padding: 0 0.5rem 0;
}

.areatop_btn {
	margin : 1rem auto;
}

/* メーカー */
.manufacturer h2 {
	color: #111;
  font-weight: 900;
  font-size: 1.6rem;
	padding-bottom: 2rem;
}
.manufacturer h3 {
	color: #111;
	font-size: 1.1rem;
	font-weight: 600;
	width: 80%;
	line-height: 2.2em;
	margin: 0 auto 1rem;
}

.manufacturer p {
	color: #fff;
	font-size: 1rem;
	width: 80%;
	line-height: 2.2em;
	margin: 0 auto 3rem;
}

.manufacturer ul {
	margin: auto;
	padding-bottom: 3rem;
}

.manufacturer li {
	display: inline-block;
	color: #fff;
	font-size: 0.9rem;
	padding: 0 0.5rem 0;
}
/* エリアマップ これどこ？*/
.area_gmap {
	color: #111;
  font-weight: 900;
	font-size: 28px;
	padding-top:10px;
	padding-bottom:10px;
}

/* グーグルマップ */
.gmap {
    position : relative;
    height : 0;
    padding-bottom : 56.25%; /* 縦横比の指定 */
    overflow : hidden;
}

.gmap iframe,
.gmap object,
.gmap embed{
  position : absolute;
  top : 0;
  left : 0;
  width : 100%;
  height : 100%;
}
.gmap_h {
  color: #74AF28;
  font-weight: 900;
  font-size: 1.6rem;
  padding-bottom: 1.5rem;
}

/* エリアwiki */

.wiki {
	width: 80%;
	margin: auto;
}

.wiki h2 {
  color: #74AF28;
  font-weight: 900;
  font-size: 1.6rem;
  padding-bottom: 1.5rem;
}

.wiki h3 {
	color: #74AF28;
	font-size: 1.2rem;
 	font-weight: 600;
	padding-bottom: 1rem;
}

.wiki h4 {
	color: #111;
 	font-size: 1rem;
	font-weight: 500;
	line-height: 1.8em;
	margin: auto;
}

.wiki h5 {
	color: #111;
	font-size: 1rem;
	line-height: 1.8em;
	margin: auto;

}

.wiki p {
	color: #111;
	font-size: 1rem;
	line-height: 1.8em;
	margin: auto;
	padding-bottom: 3rem;
}

.wiki ul {
	margin: auto;
	font-size: 0.9rem;
	padding-bottom: 2rem;
}

.wiki li {
	display: inline-block;
	color: #111;
	padding: 0.21rem 0.5rem;
}

/* エリアフッター */
.area_foot_blanch {
	color: #111;
	font-size: 1.6rem;
	font-weight: 900;
	text-align: center;
	padding-bottom: 2rem;
}
.area_foot {
	text-align: center;
	margin: 2rem 0 ;
}
.area_foot h3	{
	color: #111;
	font-size: 1rem;
}
.area_foot p {
	color: #333;
	font-size: 0.9rem;
}
@media (min-width: 751px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}
.area_foot a {
	font-size: 1.1rem;
	font-weight: 600;
}

/* エリアトップクリック画像 */
.areatop_click {
	text-align: center;
	padding-top: 50px;
	padding-bottom: 30px;
}



/* 外構スタイルページ */

.exstyle {
	width: 80%;
	margin: 0 auto;
}
.exstyle img {
	max-width: 100%;
	display: block;
	margin: 0 auto;
}
.exstyle h2 {
	font-size: 1.3rem;
  color: #111;
  font-weight: bold !important;
  margin: 3rem 0 2rem;
  border-bottom: 2px solid #74AF28;
  line-height: 1.5;
  padding-bottom: 1rem;
}

.exstyle h3 {
	color: #111;
	font-weight: 500;
	margin: 2rem 0 2rem;
  padding-left: 8px;
  border-left: 2px solid #74AF28;
  font-size: 1.1rem;
}

.exstyle h4 {
	color: #111;
	margin: 1rem 0 1rem;;
  font-size: 1rem;
	font-weight: 500;
}

.exstyle h4:before {
  content: '\02022';
  color: #74AF28;
  margin-right: 8px;
}

.exstyle p {
	color: #111;
  font-size: 16px;
  line-height: 1.9;
	padding-bottom: 30px;
}

.exstyle ul {
	list-style: disc;
 	font-size: 16px;
	color: #111;
	padding-bottom: 30px;
}

.exstyle ol {
	list-style-type: decimal;
	font-size: 14px;
	margin: 10px 30px 10px;
}

/* 県トップ用 取り組み*/
.workon h2 {
	color: #111;
  font-weight: 900;
	font-size: 1.6rem;
}
.workon h3 {
	color: #111;
  font-weight: 900;
  font-size: 1.4rem;
	margin: 2rem 0 1rem;
}
.workon p {
	color: #fff;
	font-size: 1rem;
	width: 80%;
	line-height: 2.2em;
	margin: 0 auto;
	padding-bottom: 3rem;
}

/* 県トップ用 魅力*/
.charm h2 {
	font-size: 1.6rem;
	font-weight: 900;
	padding-bottom: 2rem;
}
.charm p {
	color: #333;
	font-size: 1rem;
	width: 80%;
	margin: 0 auto;
	padding-bottom: 3rem;
}
.bannercontents {
  width: 100%;
	max-width: 1200px;
	margin: auto;
 }
 .bannercontents img {
	 width: 100%;
 }
 .text-center {
	 text-align: center;
 }
 .flexbox {
	 display: flex;
 }
 .box1 {
	 width: 100%;
	 margin: auto .5rem;
 }
 .box2 {
	 width: 100%;
	 margin: auto .5rem;
 }
 .box3 {
	 width: 100%;
   margin: auto .5rem;
 }
 @media screen and (max-width: 767px) {
     .flexbox {
         display: block;
     }
     .flexbox .box1 {
         width: 100%;
         margin: 0 auto;
     }
     .flexbox .box2 {
         width: 100%;
         margin: 0 auto;
     }

     .flexbox .box3 {
         width: 100%;
         margin: 0 auto;
     }
 }

/* 県トップ用　外構について*/
.about_ex h2 {
	color: #111;
  font-weight: 900;
  font-size: 1.6rem;
	padding-bottom: 2rem;
}
.about_ex h3 {
	color: #111;
  font-weight: 900;
  font-size: 1.4rem;
	padding:1rem 0 1.5rem;
}
.about_ex p {
	color: #fff;
	font-size: 1rem;
	width: 80%;
	margin: 0 auto;
	padding-bottom: 3rem;
}

/* 県トップ用　店舗紹介*/
.store_intro h2 {
	color: #74AF28;
  font-weight: 900;
  font-size: 1.6rem;
	padding-bottom: 3rem;
}
.store_intro h3 {
	color: #74AF28;
  font-weight: 700;
  font-size: 1.4rem;
	padding: 1.5rem 0 1rem;
}
.store_intro h4 {
	color: #111;
	font-weight: 600;
  font-size: 0.9rem;
	padding-bottom: 0.5rem;
}
.store_intro h5 {
	width: 60%;
  display: flex;
  align-items: center;
	color: #111;
	font-weight: 600;
  font-size: 0.9rem;
	margin: 0 auto;
	padding-bottom: 0.5rem;
}

.store_intro h5:before,
.store_intro h5:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}

.store_intro h5:before {
  margin-right: 1rem;
}

.store_intro h5:after {
  margin-left: 1rem;
}
.store_intro p {
	color: #111;
	font-size: 1rem;
	width: 80%;
	margin: 0 auto;
	padding-bottom: 3rem;
}

/* エリア店舗紹介用 */

.area_store {
	width: 80%;
	margin: auto;
}

.area_store h2 {
  color: #74AF28;
  font-weight: 900;
  font-size: 1.6rem;
  padding-bottom: 1.5rem;
}

.area_store h3 {
	color: #111;
	font-size: 1.2rem;
 	font-weight: 600;
}

.area_store h4 {
  color: #74AF28;
 	font-size: 1rem;
	font-weight: 500;
	padding-bottom: 1.5rem;
	margin: auto;
}

.area_store p {
	color: #111;
	font-size: 1rem;
	line-height: 1.8em;
	margin: auto;
	padding-bottom: 3rem;
}

/* アクセスページ　エリア*/
.access_area h3 {
	width: 100%;
  display: flex;
  align-items: center;
	color: #111;
	font-weight: 800;
  font-size: 1.1rem;
	margin: 0 auto;
	padding-top: 3rem;
}

.access_area h3:before,
.access_area h3:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #666;
}

.access_area h3:before {
  margin-right: 1rem;
}

.access_area h3:after {
  margin-left: 1rem;
}
.access_area h4 {
	font-size: 0.9rem;
	font-weight: 700;
	padding: 1rem 0 0.5rem;
}
.access_area h5 {
	font-size: 0.82rem;
	font-weight: 700;
	padding: 0.2rem 0.3rem 0.1rem;
}
.access_area ul {
	list-style: disc;
}
.access_area li {
	display: inline-block;
	list-style: disc;
	color: #74AF28;
	padding: 0.2rem 0.4rem;
}
.access_area a {
	color: #74AF28;
}
.access_area h4 a {
	color: #111;
}
.access_area h5 a {
	color: #111;
}
/* 加盟店募集ページ*/
.recruiting_partners {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	line-height: 1.4;
}

.passion {
  background-color: #d2bc99;
  text-align: center;
  font-weight: 900;
  margin-top: 5vw;
  border-top: 2px solid #d2bc99;
  border-bottom: 2px solid #d2bc99;
}

.partner h2 {
  font-size: 4vw;
  margin-top: 1vw;
  margin-bottom: 0;
  padding-top: 3vw;
  border-top: 1px solid #333;
}

.partner p {
  font-size: 3.5vw;
  margin-top: 0;
  margin-bottom: 1vw;
  padding-bottom: 3vw;
  border-bottom: 1px solid #333;
}

.passion2 {
  background-color: #d2bc99;
  text-align: center;
  font-weight: 900;
  margin-top: 5vw;
  border-top: 2px solid #d2bc99;
  border-bottom: 2px solid #d2bc99;
}

.partner2 h2 {
  font-size: 3.9vw;
  margin-top: 1vw;
  margin-bottom: 0;
  padding-top: 3vw;
  border-top: 1px solid #333;
}

.partner2 p {
  font-size: 4vw;
  margin-top: 0;
  margin-bottom: 1vw;
  padding-bottom: 3vw;
  border-bottom: 1px solid #333;
}

.passion3 {
  background-color: #d2bc99;
  text-align: center;
  font-weight: 900;
  margin-top: 5vw;
  border-top: 2px solid #d2bc99;
  border-bottom: 2px solid #d2bc99;
}

.partner3 h2 {
  font-size: 3.6vw;
  margin-top: 1vw;
  margin-bottom: 0;
  padding-top: 3vw;
  border-top: 1px solid #333;
}

.partner3 p {
  font-size: 4vw;
  margin-top: 0;
  margin-bottom: 1vw;
  padding-bottom: 3vw;
  border-bottom: 1px solid #333;
}

.grow1 {
  width: 90%;
  margin: 0 auto;
  position: relative;
}

.grow1 p {
  position: absolute;
  top: 34%;
	 left: 25%;
  font-size: 3.5vw;
  font-weight: 600;
}

.grow2 {
  width: 90%;
  margin: 0 auto;
  position: relative;
}

.grow2 p {
  position: absolute;
  top: 34%;
  left: 25%;
  font-size: 3.5vw;
  font-weight: 600;
}

.conditions {
  width: 90%;
  margin: 0 auto;
  margin-top: 2vw;
  position: relative;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
}
.conditions ul {
  position: absolute;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  list-style: none;
  font-size: 2.8vw;
}

.mark {
  background-image: linear-gradient(transparent 70%, #b8ce71 0%);
}

.conditions p {
  position: absolute;
  top: 5%;
  left: 0;
  list-style: none;
  font-size: 3vw;
	line-height: 1.8;
}

.sotorie_start {
  width: 90%;
  margin: 0 auto;
}

.sotorie_start1 {
  position: relative;
}

.sotorie_start1 p {
  position: absolute;
  top: 34%;
  left: 25%;
  font-size: 3.5vw;
  font-weight: 600;
}

.sotorie_start2 p {
  font-size: 2.7vw;
	 text-align: center;
	 margin-top: 1vw;
  margin-bottom: 1.5vw;
}

.sotorie_start3 {
  margin-top: 2.5vw;
  margin-bottom: 2.5vw;
}

.start_form {
  position: relative;
  margin-bottom: 2.5vw;
}

.start_form p {
  position: absolute;
  top: 17%;
  left: 2%;
  font-size: 2.5vw;
	line-height: 1.5;
}

.partner_form {
  display: flex;
}

.form_btn1 {
  margin-right: 1vw;
}

/* 加盟店メールフォーム */
.mailform_partner {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  width: 70%;
  margin: 0 auto;
}

.mailform_partner h2 {
  font-size: 2vw;
  font-weight: 700;
  text-align: center;
  margin-bottom: 3vw;
  color: #74AF28;
}

.mailform_partner p {
  font-size: 1.2vw;
  margin-bottom: 2vw;
}

.mailform_partner table {
	margin: 0 auto;
}

/* flow */

.flow_main {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  margin: 0 auto ;
  font-size: calc(14px + 6 * (100vw - 700px)/1280);
  color: #333;
  background: url(../img/flow/background_l.jpg);
}

.flow {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.flow h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(21px + 10 * (100vw - 700px)/1280);
  font-weight: bold;
  text-align: center;
  margin-top: 2vw;
}

.flow p {
  margin-top: 3vw;
}

.flow_link a {
  color: #333;
  text-decoration: none;
}

.btn_design {
  font-size: calc(12px + 8 * (100vw - 700px)/1280);
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 1vw 1vw;
  border: 1px solid #555;
  transition: all .1s;
}

.btn_design:hover {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  cursor: pointer;
}

.flow_btn {
  width: 80%;
  margin: 4vw auto 0;
}

.flow_covid {
  border: 2px solid #333;
  margin-top: 6vw;
}

.flow_covid h2 {
  font-size: calc(15px + 8 * (100vw - 700px)/1280);
  text-align: center;
  padding-top: 1vw;
}

.flow_covid p {
  width: 95%;
  padding: 0.5vw 0 2vw;
  margin: 0 auto;
}

.doubleline {
  border-bottom: 4px double #333;
}

.flow_hback{
  width: 100%;
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  color: #fff;
  font-size: calc(21px + 8 * (100vw - 700px)/1280);
  font-weight: normal;
  text-align: center;
  padding: 3.5vw 0;
  margin: 5vw auto 0;
}

.flow_rela {
  position: relative;
}

.flow_rela a {
	color: #1a0dab;
}

.flow_pic {
  max-width: 1080px;
  width: 90%;
  margin: 4vw auto 0;
}

.flow_firsttext {
  max-width: 1080px;
  width: 90%;
  margin: 3vw auto 0;
}

.flow_ast {
  display: block;
  font-size: calc(12px + 6 * (100vw - 700px)/1280);
  margin-top: 0.5vw;
}

.flow_next {
  max-width: 1080px;
  width: 90%;
  margin: 3vw auto;
}

.flow_list {
  max-width: 1080px;
  width: 90%;
  font-size: calc(12px + 8 * (100vw - 700px)/1280);
  text-align: left;
  margin: 3vw auto;
}

.flow_list ul {
  list-style-position: inside;
  padding-left: 1vw;
}

.flow_list ul li {
  float: left;
  list-style-type: disc;
  padding-right: 2vw;
  padding-bottom: 0.5vw;

}

.flow_blackback {
  max-width: 1080px;
  width: 90%;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 1vw 0;
  margin: 5vw auto 0;
}

.flow_last {
  max-width: 1080px;
  width: 90%;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 1vw 1vw;
  margin: 5vw auto 0;
}

.contact_btn {
  width: 35%;
  margin: 6vw auto;
}

.btn_design2 {
  font-size: calc(12px + 8 * (100vw - 700px)/1280);
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 0.5vw 0;
  border: 1px solid #555;
  transition: all .1s;
}

.btn_design2:hover {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  cursor: pointer;
}

.flow_lastspace {
  padding-top: 4vw;
}

.flow_mb {
  display: none;
}

@media screen and (max-width: 768px) {
	.flow_pc{
		display: none;
	}

	.flow_mb {
		display: block;
	}
}

/* flowここまで */

/* constここから */
.const_main {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  margin: 0 auto ;
  font-size: calc(14px + 6 * (100vw - 700px)/1280);
  color: #333;
  background: url(../img/const/background_l.jpg);
}

.top_pc {

}

.top_mb {
  display: none;
}

@media screen and (max-width: 768px) {
	.top_pc{
		display: none;
	}

	.top_mb {
		display: block;
	}
}

.top_pic {
  width: 100%;
  margin: 0 auto;
}

.const {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.const h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(18px + 13 * (100vw - 700px)/1280);
  font-weight: bold;
  text-align: center;
  margin-top: 2vw;
}

.const p {
  margin-top: 3vw;
}

.const_hback {
  width: 100%;
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  color: #fff;
  font-size: calc(21px + 8 * (100vw - 700px)/1280);
  font-weight: normal;
  text-align: center;
  padding: 3.5vw 0;
  margin: 5vw auto 0;
}

.const_pic {
  max-width: 1080px;
  width: 90%;
  margin: 4vw auto 0;
}

.const_pic2 {
  max-width: 1080px;
  width: 90%;
  margin: 8vw auto 0;
}

.const_content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.const_content p {
  margin-bottom: 0;
}

.const_content h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(21px + 8 * (100vw - 700px)/1280);
  color: #444;
  border-bottom: 2px solid #333;
}

.const_table {
  max-width: 1080px;
  display: flex;
  justify-content: space-between;
  margin: 3vw auto 0;
}

.exterior_table {
  max-width: 1080px;
  display: flex;
  justify-content: space-between;
  margin: 8vw auto 0;
}

.const_table_h  {
  font-size: calc(14px + 10 * (100vw - 700px)/1280);
  color: #fff;
  background: #333;
  padding: 0.5vw 1vw;
  margin: 0 auto 0;
}

.table_block {
  width: calc(50% - 2vw);
}

.const_table2 {
  background: #fffef6;
  border: 1px solid #333;
  margin: 3vw auto 0;
}

.gaiko_pic {
  background: #fffef6;
  border: 1px solid #333;
  margin-top: 0;
}

.const_square_list {
  list-style: none;
}

.const_square_list ul {
  list-style: none;
  padding-top: 2vw;
  padding-left: 2vw;
  margin-top: 0;
}

.const_square_list ul li {
  padding: 0.5vw 0;
}

.const_square_list li::before {
  margin-right: 1vw;
  content: "";
  display: inline-block;
  background: #333;
  width: 1.2vw;
  height: 1.2vw;
}

.const_ast {
  display: block;
  font-size: calc(12px + 6 * (100vw - 700px)/1280);
  margin-top: 0.5vw;
}

.const_last {
  max-width: 1080px;
  width: 90%;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  padding: 1vw 1vw;
  margin: 5vw auto 0;
}

.const_carport_list {
  padding: 0;
}

.const_carport_list li {
  display: inline-block;
}

.const_carport_list li::before {
  content: "・";
  padding-right: 0.1vw;
  padding-left: 1.5vw;

}

/* constここまで */

/* paidここから */

.paid_main {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  margin: 0 auto ;
  font-size: calc(14px + 6 * (100vw - 700px)/1280);
  color: #333;
  background: url(../img/common/background.jpg);
}

.paid_top {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.paid_top h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(21px + 10 * (100vw - 700px)/1280);
  font-weight: 900;
  text-align: center;
  margin-top: 5vw;
}

.paid_content {
  margin: 0 auto;
}

.paid_content h2 {
  width: 100%;
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(19px + 10 * (100vw - 700px)/1280);
  color: #fff;
  font-weight: normal;
  text-align: center;
  padding: 3.5vw 0;
  margin: 5vw auto 0;
}


.paid_content_txt {
  max-width: 1080px;
  width: 90%;
  margin: 3vw auto 0;
}

.paid_img {
  max-width: 1080px;
  width: 90%;
  margin: 3vw auto;
}

.paid_flow {
  max-width: 1080px;
  width: 90%;
  margin: 5vw auto 0;
}

.paid_flow h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(21px + 10 * (100vw - 700px)/1280);
  font-weight: 900;
  position: relative;
  padding-left: 24px;
}

.paid_flow h3::before {
  content: "■";
  position: absolute;
  top: 0;
  left: -0.2vw;
}

.paid_flow_content {
  border: 1px solid #333;
  padding: 1vw 2vw;
  margin: 5vw auto 0;
}

.paid_flow_list {
  font-size: calc(12px + 6 * (100vw - 700px)/1280);
}

.paid_flow_list ul{
  list-style: none;
  padding-left: 18px;
  padding-right: 0;
  margin-top: 0.2vw;
}

.paid_flow_list li{
  position: relative;
  padding-left: 0;
}

.paid_flow_list li::before {
  content: "※";
  position: absolute;
  top: 0px;
  left: -18px;
}

.paid_precautions {
  font-size: calc(12px + 6 * (100vw - 700px)/1280);
  background: #333;
  color: #fff;
  padding: 1vw 2vw;
  margin-top: 5vw;
}

.paid_precautions ul{
  list-style: none;
  padding-left: 2vw;
  margin: 0;
}

.paid_precautions li{
  position: relative;
}

.paid_precautions li::before {
  content: "※";
  position: absolute;
  top: 0px;
  left: -2vw;
}

.common_contact {
  font-family: YuMincho, 'Yu Mincho';
  width: 45%;
  border: 1px solid #333;
  padding: 0;
  margin: 5vw auto;
}

.common_link a {
  color: #333;
  text-decoration: none;
}

.common_contact_btn {
  text-align: center;
  padding: 2vw 1vw;
  margin: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  padding: 1vw 0;
  transition: all .1s;
}

.common_contact_btn:hover {
  background: rgb(240, 240, 240);
  color: #777;
  cursor: pointer;
}

.paid_red {
  color: #CE1330;
  font-weight: 900;
  font-size: calc(21px + 10 * (100vw - 700px)/1280);
}

.paid_red_b {
  color: #CE1330;
  font-weight: 900;
  font-size: calc(24px + 10 * (100vw - 700px)/1280);
}

.paid_title {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(18px + 10 * (100vw - 700px)/1280);
}

.paid_border_line {
  border-bottom: 1px solid #333;
  margin: 2vw 0;
}

.paid_arrow_line {
  margin: 5vw 0;
}

.paid_bold {
  font-weight: bold;
}

.common_lastspace {
  padding-top: 4vw;
}

/* paidここまで */

/* contactここから */

.contact_main {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  margin: 0 auto ;
  font-size: 16px;
  color: #333;
  background: url(../img/common/background.jpg);
}

.contact_content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.contact_content p {
  margin-top: 1em;
}

.contact_top h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 30px;
  font-weight: 900;
  line-height: 1.3;
  text-align: center;
  margin-top: 2em;
}

@media screen and (max-width: 768px) {
  .contact_top h1 {
	font-size: 26px;
  }

}

.contact_limit h2 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  border-top: 1px solid #333;
  margin-top: 2em;
  padding-top: 1em;
}

.common_square_red {
  position: relative;
  color: #CE1330;
  padding-left: 1em;
}

.common_square_red::before {
  position: absolute;
  content: "■";
  top: 0;
  left: 0;
}

.common_ast {
  position: relative;
  padding-left: .8em;
}

.common_ast::before {
  position: absolute;
  content: "※";
  top: 0;
  left: -.2em;
}

.contact_red {
  color: #CE1330;
}

.common_small {
  font-size: 14px;
  line-height: 1.4em;
}

.common_exsmall {
  font-size: 12px;
  line-height: 1.2em;
}

.common_exexsmall {
  font-size: 10px;
  line-height: 1em;
}

.common_normal_m {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 16px;
  line-height: 1.4em;
}

.common_exsmall_m {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 12px;
  line-height: 1.2em;
}

.contact_limit_last {
  border-top: 1px solid #333;
  padding-top: 1em;
}

.contact_limit_area_title p {
  border: 1px solid #333;
  font-family: YuMincho, 'Yu Mincho';
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  padding: .5em;
  margin: 2em 0 0;
}

@media screen and (max-width: 768px) {
  .contact_limit_area_title p {
	font-size: 22px;
  }

}

.contact_limit_area p {
  background: #333;
  color: #fff;
  font-size: 18px;
  text-align: center;
  border: 1px solid #333;
  margin: 1em 0 0;
  padding: .5em 0;
}

.hback_title_contact {
  width: 100%;
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  color: #fff;
  font-size: 24px;
  font-weight: normal;
  text-align: center;
  padding: 2em 0;
  margin: 2em auto 0;
}

@media screen and (max-width: 768px) {
  .hback_title_contact {
	font-size: 16px;
  }

}

.contact_method {
  max-width: 1080px;
  width: 90%;
  margin: 2em auto;
}

.border_title_contact {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  margin-top: 2em;
  padding-top: 1em;
}

@media screen and (max-width: 768px) {
  .border_title_contact {
	font-size: 5.5vw;
  }

}

.contact_telborder {
  border: 1px solid #333;
  text-align: center;
  margin-top: 2em;
}

.contact_telborder a {
  color: #CE1330;
  text-decoration: none;
}

.c_tel {
  text-align: center;
  padding-top: 12px;
}

.c_tel_num {
  font-size: 30px;
  font-weight: 700;
  color: #CE1330;
}

.c_tel_2 {
  font-size: 14px;
  line-height: 1.4em;
  text-align: center;
  padding-bottom: 1em;
}

.contact_line_block {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 2em;
}

.contact_line_l {
  width: calc(50% - 1em);
}

.contact_line_r {
  width: calc(50% - 1em);
}

@media screen and (max-width: 768px) {
  .contact_line_block {
    display: block;
  }

  .contact_line_l {
    width: 100%;
    margin: 0 auto 1.5em;
  }

  .contact_line_r {
    width: 100%;
    margin: 3em auto 0;
  }

}

.contact_img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.common_astlist {
  width: 80%;
  font-size: 12px;
  margin: 1em auto;
}

.common_astlist ul{
  list-style: none;
  padding-left: 1em;
  padding-right: 0;
  margin-top: 2em;
}

.common_astlist li{
  position: relative;
  padding-left: 0;
}

.common_astlist li::before {
  content: "※";
  position: absolute;
  top: 0px;
  left: -1em;
}

.contact_mailform_block {
  font-size: 14px;
  margin: 2em auto;
}

.contact_mailform_block table {
  margin: 0 auto;
}

.contact_mailform_block th {
  text-align: left;
  vertical-align: top;
  padding-right: 2em;
  padding-bottom: 1em
}

.contact_mailform_block td {
  padding-bottom: 1em;
}

.contact_mf_sub {
  text-align: center;
  margin: 0 auto 2em;
}

.contact_mf_sub input {
  width: 20%;
  background: transparent;
  font-size: 14px;
  text-align: center;
  margin: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  padding: 1em 0;
  transition: all .1s;
}

.contact_mf_sub input:hover {
  background: rgb( 240, 240, 240);
  color: #777;
  cursor: pointer;
}
/* contactここまで */

.cform th {
	font-size: 14px;
	width: 20%; /*変なところで改行される場合はここの数字を変更します。*/
	border-bottom: solid 1px #d6d6d6;
	padding: 1em 0 0 1em;
	font-weight: normal;
	text-align: left;
	vertical-align: middle;
	line-height: 1.3em;
}

.cform td {
	font-size: 14px;
	line-height: 150%;
	border-bottom: solid 1px #d6d6d6;
	padding: 10px 5px;
}

.cform {
	width: 100%;
	margin: 1.5em auto 0;
}

.cform [type=submit] {
	display: inline-block;
	font-size: 20px;
	padding: 10px 30px;
	text-decoration: none;
	background: #333;
	color: #FFF;
	border-bottom: solid 4px #B17C00;
	border-radius: 3px;
}

.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
	width: 100%;
}

@media only screen and (max-width:767px) {
	.cform th,
	.cform td {
		width: 100%;
		display: block;
		border-top: none;
	}
}

.submit-btn input {
	background: #333;
	width: 60%;
	max-width: 550px;
	min-width: 220px;
	margin: 30px auto;
	display: block;
	border: 1px #00142c solid;
	text-align: center;
	padding: 5px;
	color: #fff;
	transition: all 0.4s ease;
}

.submit-btn input:hover {
	background: #777;
	color: #00142c;
}

/* contact 送信後ここから */
.contact_send {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  font-size: 16px;
  color: #333;
  max-width: 1080px;
  width: 90%;
  margin: 5vw auto;
}

.contact_send_error p {
  font-size: clamp(14px, 3vw, 20px);
  line-height: 1.4em;
  text-align: center;
  padding: 0 1em 1em;
  margin: 1 3vw 3vw;
}

.contact_send_pic {
  max-width: 400px;
  margin: 0 auto;
}

.contact_send_thanks p {
  color: #fff;
  background: #333;
  font-size: clamp(14px, 3vw, 20px);
  line-height: 1.4em;
  text-align: center;
  padding: 1em;
  margin: 3vw;
}

/* contact 送信後ここまで */
/* branchここから */
.branch_main {
  margin: 0 auto ;
  font-size: 16px;
  color: #333;
  background: url(../img/common/background.jpg);
}

.branch_top h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 30px;
  font-weight: 900;
  line-height: 1.3;
  text-align: center;
  margin-top: 2em;
}

@media screen and (max-width: 768px) {
  .branch_top h1 {
	font-size: 6vw;
  }
}

.branch_content {
  max-width: 1080px;
  width: 90%;
  margin: 1em auto 0;
}

.branch_content p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  line-height: 1.5em;
  margin: 0 auto;
}

.branch_content_contact {
  max-width: 1080px;
  width: 90%;
  fonto-weight: 700;
  margin: 1em auto 0;
}

.common_b {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 700;
}

.common_bs {
  font-size:12px;
  margin-right: 1em;
}

.branch_contact_btn {
  width: 80%;
  font-size: clamp(10px, 2vw, 20px);
  text-align: center;
  border: 1px solid #333;
  padding: .5em 1em;
  margin: 1em auto;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  transition: all .1s;
}

.branch_contact_btn:hover {
  background: rgba(240, 240, 240, .5);
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .branch_contact_btn {
    font-family: YuMincho, 'Yu Mincho';
    width: 70%;
    font-size: 14px;
    text-align: center;
    border: 1px solid #333;
    padding: .5em 1em;
    margin: 2em auto;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
    transition: all .1s;
  }

  .branch_contact_btn:hover {
    background: rgba(240, 240, 240, .5);
    border: 1px solid #777;
    color: #777;
    cursor: pointer;
  }
}

.branch_contact {
  font-weight: 700;
  border-bottom: double;
}

.branch_content_space p {
  width: 100%;
  margin-top: 3em;
  font-weight: 700;
  text-align: left;
  font-size: clamp(12px, 2vw, 18px);
}


.branch_area_bback {
  background: #333;
  margin: 3em auto 1em;
}

.branch_area_bback h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 24px;
  font-weight: 500;
  color: #fff;
  text-align: center;
  padding: .5em;
  margin: 3em auto 1em;
}

.branch_directly_title {
  width: 100%;
  background-color: #333;
  color: #fff;
  font-size: clamp(18px, 5vw, 30px);
  font-weight: normal;
  text-align: center;
  padding: 2em 0;
  margin: 3em auto 0;
}

.branch_directly_title h2 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 30px;
}

.branch_directly_title h5 {
  font-size: 18px;
}

.branch_directly_title p {
  font-size: 14px;
}

.branch_border_line {
  max-width: 1080px;
  width: 90%;
  border-bottom: 1px solid #333;
  margin: 3em auto;
}

.marchant_border_line {
  width: 100%;
  border-bottom: 1px solid #333;
  margin: 3vw auto 0;
}

.branch_area_search {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.branch_area_search p {
  margin: 0 1em;
}

.branch_area_search h3 {
  font-family: YuMincho, 'Yu Mincho';
  text-align: center;
  font-size: 28px;
  margin-top: 1em;
}

.branch_area_search_table {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: space-between;
  width: 80%;
  max-width: 1080px;
  margin: 1em auto 0;
 }

 @media screen and (max-width: 768px) {
  .branch_area_search_table {
  flex-direction: column;
  align-content: space-around;
  }
}

.branch_search_btn {
  width: clamp(170px,22vw,280px);
  text-align: center;
  border: 1px solid #333;
  padding: .5em 1vw;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  transition: all .1s;
  margin: .5em 0;
}

.branch_search_btn:hover {
  background: rgba(240, 240, 240, .5);
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .branch_search_btn {
    width: 61vw;
    text-align: center;
    border: 1px solid #333;
    padding: .5em 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
    transition: all .1s;
    margin: .5em 0;
  }

  .branch_search_btn:hover {
    background: rgba(240, 240, 240, .5);
    border: 1px solid #777;
    color: #777;
    cursor: pointer;
  }
}

.branch_search_chara p {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 18px;
  text-align: center;
  margin: 0;
}

.branch_content_space p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  margin: 2em 0;
}

.branch_flow_covid {
  border: 1px solid #333;
  margin-top: 2em;
}

.branch_flow_covid h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: clamp(18px,2vw,20px);
  text-align: center;
  padding-top: 1vw;
  font-weight: 500;
}

.branch_underline {
  border-bottom: double;
  padding: .2em;
}

.branch_flow_covid p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  line-height: 1.5em;
  font-size: 16px;
  padding: 1.5em 1em 1em;
  margin: 0 auto;
}

.branch_store_name {
  max-width: 1080px;
  width: 90%;
  margin: 2em auto;
}

.branch_store_name h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 30px;
  margin: 1em 0 .5em;
}

@media screen and (max-width: 768px) {
  .branch_store_name h3 {
    font-family: YuMincho, 'Yu Mincho';
    font-size: 25px;
    margin: 1em 0 .5em;
  }
}

.branch_store_name_marchant {
}

.branch_store_name_marchant h4 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 30px;
  margin: 1em 0 0;
}

@media screen and (max-width: 768px) {
  .branch_store_name_marchant h4 {
    font-family: YuMincho, 'Yu Mincho';
    font-size: 25px;
    margin: 1em 0 0;
  }
}

.branch_s1 {
  display: flex;
  align-items: center;
  width: 80%;
  max-width: 1080px;
  margin: 1em auto;
}

.branch_s1 h4 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 28px;
}

@media screen and (max-width: 768px) {
  .branch_s1 h4 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 24px;
  margin: .8em 0 0;
  }
}

.branch_s1::before,
.branch_s1::after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background: #333;
}

.branch_s1::before {
  margin-right: .4em;
}

.branch_s1::after {
  margin-left: .4em;
}

.branch_square_list {
  list-style: none;
}

.branch_square_list ul {
  list-style: none;
  font-size: 18px;
  padding-top: 1em;
  padding-left: 0;
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .branch_square_list ul {
    list-style: none;
    font-size: 16px;
    padding-top: 1em;
    padding-left: 0;
    margin-top: 0;
  }

  .branch_square_list li {
    margin: 1em 0;
  }
}

.branch_store_visit {
  margin: 1em 0;
}

.branch_store_visit h5 {
  margin: 1.5em 0 0;
}

.branch_store_visit h5::before {
  content: "【"
}

.branch_store_visit h5::after {
  content: "】"
}

.branch_store_visit p {
  margin-top: .5em;
}

.branch_square_list li::before {
  margin-right: .2em;
  margin-left: 0;
  content: "";
  display: inline-block;
  background: #333;
  width: .8em;
  height: .8em;
}

.common_ls {
  margin-left: 1em;
}

.branch_store_list h4 {
  font-size: 16px;
  margin-top:1em;
}

.branch_store_list h4::before {
  content: '○';
  margin: 0 .1em;
}

.branch_store_list h5 {
  font-size: 15px;
  font-weight: 500;
  margin: 1em 1em 0;
}

.branch_store_list ul {
  list-style-type: none;
  line-height: 1.5em;
  margin: .5em 0;
}

.branch_store_list li {
  display: inline-block;
  font-size: 15px;
}

.branch_store_list li::before {
    content: '';
    display: inline-block;
    height: 0.2em;
    width: 0.2em;
    margin-bottom: 13px;
    margin-right: 5px;
    margin-left:.5em;
    vertical-align: -9px;
    background: #333;
}

.branch_table table {
  margin: 1em 0;
}

.branch_table table th {
  text-align: left
}

.branch_table table th p {
  font-size: 16px;
  padding: .5em 0 0;
}

.branch_table table td p {
  font-size: 16px;
  padding: .5em 1em 1em;
}

/* branchここまで */



/* mstore加盟店ここから */

.mstore_img img {
  width: 100%;
}



.mstore_top_overview {
  width: 100%;
  position: relative;
}

.mstore_top_ovback {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 1080px;
  height: 95%;
  padding: 3vw;
  background: rgba(255, 255, 255, 0.7);
}

.mstore_top_ovback h2 {
  margin:0;
  padding:0;
  font-size: 30px;
  text-align: center;
  color: #333;
}

.mstore_top_ovback h3 {
  margin:0;
  padding:0;
  font-size: 20px;
  text-align: center;
  color: #333;
}

.mstore_top_ovback p {
  font-size: 12px;
  color: #333;
  padding: 1em 0;
}

.mstore_top_box {
  display: flex;
  justify-content: space-around;
  align-content: space-around;
}

@media screen and (max-width: 768px) {
  .mstore_top_box {
  flex-direction: column;
  align-items: center;
  }
}


.mstore_planner {
  background: rgba(0, 124, 53, 0.6);
  padding: 1em;
  margin: 3em 1em;
  flex: 1;
}

.mstore_content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.mstore_const {
  font-size: 16px;
  margin: 1em auto 1.5em;
}

.mstore_const img {
  width: 100%;
}

.mstore_construction_ex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 1080px;
}

@media screen and (max-width: 768px) {
  .mstore_construction_ex {
  flex-direction: column;
  align-items: center;
  }
}

.mstore_construction_ex img{
  margin: 1em;
}

@media screen and (max-width: 768px) {
  .mstore_construction_ex img {
    width: 100%;
    height: 100%;
    margin: 1em auto;
    text-align: center;
  }
}

.mstore_title {
  width: 100%;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 3em 0;
  margin: 1em auto 0;
}

.mstore_title img {
  display: block;
  width: 50%;
  max-width: 786px;
  margin: 0 auto;
}

.mstore_title h2 {
  display: inline-block;
  font-size: clamp(18px, 3vw, 24px);
  text-align: center;
  border: 3px solid #fff;
  padding: 0 .5em;
  margin: 1vw;
}

@media screen and (max-width: 768px) {
  .mstore_title h2 {
    display: inline-block;
    font-size: 14px;
    text-align: center;
    border: 1px solid #fff;
    padding: 0 .5em;
    margin-top: 1em;
  }
}

.mstore_info {
width: 100%;
background-color: #333;
font-family: YuMincho, 'Yu Mincho';
color: #fff;
font-weight: normal;
text-align: center;
padding: 1em 0;
margin: 0 auto 0;
}

.mstore_info h2 {
  font-size: clamp(20px, 3vw, 24px);
  color: #fff;
  margin-top: 1em;
}

.mstore_info p {
  font-size: clamp(18px, 3vw, 22px);
  color: #fff;
  margin-bottom: .5em;
}

.mstore_info a {
  color: #fff;
  margin-right: 1em;
}

@media screen and (max-width: 768px) {
  .mstore_info p {
    font-size: 16px;
    color: #fff;
    margin-bottom: .5em;
  }
}

.mstore_exp_img {
  background: url(../img/branch/hiroshima_west/web_pc/hiroshima_image.jpg);
  background-position: center;
  margin: 0 auto;
}

.mstore_exp {
  width: 90%;
  max-width: 1080px;
  margin: 0 auto;
}

.mstore_exp h3 {
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 700;
  text-align: center;
  padding-top: 3em;
}

.mstore_exp p {
  font-size: 16px;
  text-align: center;
  padding-top: 1em;
}

@media screen and (max-width: 768px) {
  .mstore_exp p {
    font-size: 14px;
    padding-top: 1em;
  }
}

.mstore_contact_btn {
  font-family: YuMincho, 'Yu Mincho';
  width: 30vw;
  font-size: clamp(10px, 2vw, 20px);
  text-align: center;
  border: 1px solid #333;
  padding: .5em 1em;
  margin: 5em auto;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  transition: all .1s;
}

.mstore_contact_btn:hover {
  background: rgba(240, 240, 240, .5);
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .mstore_contact_btn {
    font-family: YuMincho, 'Yu Mincho';
    width: 70%;
    font-size: 14px;
    text-align: center;
    border: 1px solid #333;
    padding: .5em 1em;
    margin: 5em auto;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
    transition: all .1s;
  }

  .mstore_contact_btn:hover {
    background: rgba(240, 240, 240, .5);
    border: 1px solid #777;
    color: #777;
    cursor: pointer;
  }
}

.mstore_area {
  max-width: 1080px;
  width: 90%;
  margin: 3em auto 0;
}

.mstore_area h4 {
  font-size: clamp(20px, 4vw, 26px);
  text-align: center;
  margin: 3em auto 1em;
}

.mstore_area p {
  font-size: clamp(14px, 3vw, 20px);
  margin: 1em auto;
  text-align: center;
}

.mstore_areabox h5 {
  font-size: 18px;
  text-align: center;
  margin-top: 1em;
}

.mstore_areabox ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  align-content: space-around;
  list-style-type: none;
  padding: 0 3em;
  margin-top: .5em;
}

.mstore_areabox li {
  font-size: 16px;
  margin-left: 1em;
  margin-right: 1em;
}

.mstore_areabox li::before {
  content: "■";
}

.mstore_areabox p {
  font-size: 16px;
  text-align: left;
}

.mstore_areabox_ext {
  padding-bottom: 3em;
}

.mstore_areabox_ext p {
  font-size: 16px;
  text-align: center;
  margin: 3em auto;
}

@media screen and (max-width: 768px) {
  .mstore_areabox ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    align-content: space-around;
    list-style-type: none;
    padding-left: 0;
    padding-right: 0;
    margin-top: .5em;
  }

  .mstore_areabox li {
    font-size: 14px;
    margin-left: .5em;
    margin-right: .5em;
  }
}


.partner_line {
  width: 100%;
  position: relative;
  margin: 3em auto;

}

.line_mb {
  display: none;
}

@media screen and (max-width: 768px) {
	.line_pc{
		display: none;
	}

	.line_mb {
		display: block;
	}
}

.friend_btn {
 position: absolute;
 left: 12vw;
 top: 34.5vw;
}
.friend_btn img {
 width: 15vw;
}

@media screen and (max-width: 768px) {
 .friend_btn {
	position: absolute;
	left: 13vw;
	top: 35vw;
}
.friend_btn img {
 width: 13vw;
}
}

/* mstore加盟店ここまで */

/* 店舗ランディングここから */

.hiroshima_w_main {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  margin: 0 auto ;
  font-size: 16px;
  color: #333;
}

.mstore_top {
  max-width: 1080px;
  width: 90%;
  margin: 3em auto;
}

.mstore_top h1 {
  font-size: clamp(14px, 5vw, 24px);
  font-weight: 700;
  text-align: center;
  margin-top: 3em;
}

.mstore_top h2 {
  font-size: clamp(14px, 3vw, 20px);
  text-align: center;
  margin-top: 3em;
}

.mstore_top p {
  margin: 2em 0 5em;
}

.mstore_back {
  background: url(../img/branch/hiroshima_west/web_pc/hiroshima_w_back.jpg);
  background-position: center;
  background-size: cover;
}


@media screen and (max-width: 768px) {
  .mstore_back {
    background: url(../img/branch/hiroshima_west/web_mb/hiroshima_w_top_mb_2_new.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}

.mstore_back_on {
  max-width: 1080px;
  width: 90%;
  background-color: rgba(255, 255, 255, 0.7);
  margin: 0 auto;
}

.mstore_back_on h2 {
  font-size: 42px;
  font-weight: 900;
  text-align: center;
  padding-top: 1em;
}

.mstore_back_on h3 {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  margin-top: 1em;
}

.mstore_back_on p {
  font-size: 16px;
  margin-top: 2em;
}

.mstore_back_text {
  width: 90%;
  margin: 0 auto;
  font-size: clamp(12px, 3vw, 18px);
}

.mstore_stuff {
  font-weight: 700;
  margin-top: 5em;
}

.mstore_planner {
  color: #fff;
  text-align: center;
  margin: 2em 1em 3em;
}

.mstore_planner h4 {
  font-size: clamp(16px, 3vw, 20px);
  color: #fff;
  font-weight: 500;
}

.mstore_planner p {
  text-align: left;
  font-size: clamp(12px, 3vw, 16px);
  font-weight: normal;
}

@media screen and (max-width: 768px) {
  .mstore_stuff h3 {
    font-weight: 700;
    margin-top: 5em;
    margin-bottom: 2em;
  }
  .mstore_planner {
    font-weight: normal;
    margin-top: 1em;
  }
  .mstore_planner h4 {
    font-size: 18px;
    color: #fff;
    font-weight: 500;
  }
  .mstore_planner p {
    font-size: 16px;
  }
}

.planner_small {
  font-size: 14px;
  margin: 0 .5em;
}

.dobc::before {
  content: '"';
  margin: 0 .1em;
}

.dobc::after {
  content: '"';
  margin: 0 .1em;
}

.common_hh::before {
  content: '-';
  margin: 0 .1em;
}

.common_hh::after {
  content: '-';
  margin: 0 .1em;
}

.common_sq::before {
  content: '■';
  margin: 0 .1em;
}

/* 店舗ランディングここまで */

/* 地域ページ */

.area_main p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
}

.area_top {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.area_top h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(20px,4vw,35px);
  font-weight: bold;
  text-align: center;
  margin-top: 2em;
}

.area_top_content h2 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(20px,4vw,28px);
  color:#333;
  font-weight: bold;
  border-bottom: 1px solid #444;;
  padding-bottom: 0;
  margin: 2em 0 0;
}

.area_top_content p {
  font-size: 16px;
  line-height: 1.5em;
  margin: 1em auto 0;
}

@media screen and (max-width: 768px) {
  .area_top_content p {
    width: 90%;
  }
}

.covid {
  border: 2px solid #333;
  margin-top: 6vw;
}

.covid h2 {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  padding-top: 1em;
}

.covid p {
  width: 95%;
  font-size: 16px;
  line-height: 1.5em;
  margin: 1em auto 1.5em;
}

.doubuleline {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 700;
  border-bottom: 4px double #333;
}

.hback_title {
  width: 100%;
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  color: #fff;
  font-weight: normal;
  text-align: center;
  padding: 3.5vw 0;
  margin: 5em auto 0;
}

.hback_title_nospace {
  width: 100%;
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  color: #fff;
  font-weight: normal;
  text-align: center;
  padding: 3.5vw 0;
  margin: 0 auto;
}

.area_point {
  background: url(../img/osaka/initiatives_back.jpg) center center/cover;
}

.area_point h2 {
  font-size: clamp(18px,4vw,32px);
}

@media screen and (max-width: 768px) {
  .area_point h2 {
    font-size: 21px;
  }
}

.area_initiatives {
  max-width: 1080px;
  width: 90%;
  padding: 5em 0;
  margin: 0 auto;
}

.initiatives_contents {
  display: flex;
  justify-content: center;
  align-items: center;
}

.initiatives_left img {
  max-width: 160px;
}

@media screen and (max-width: 768px) {
  .initiatives_left img {
    max-width: 80px;
  }
}

.area_initiatives h3 {
  font-size: clamp(21px,3vw,25px);
  font-weight: 700;
  margin: .5em .5em 0;
}

@media screen and (max-width: 768px) {
  .area_initiatives h3 {
    font-size: 18px;
    margin: .5em .8em 0;
  }
}

.area_initiatives p {
  font-size: 16px;
  line-height: 1.5em;
  margin: 0 1em 1.5em;
}

.initiatives_border_line {
  border-bottom: 1px solid #333;
  margin: 1vw auto;
}

.area_charm h2 {
  font-size: clamp(18px,4vw,32px)
}

@media screen and (max-width: 768px) {
  .area_charm h2 {
    font-size: 21px;
  }
}

.area_charm_pic {
  width: 100%;
  margin: 0 auto 4em;
}

.area_charm_main {
  max-width: 1080px;
  width: 90%;
  margin: 1em auto 3em;
}

.area_charm_main p {
  font-size: 18px;
  line-height: 2em;
  margin: .5em auto 0;
}

@media screen and (max-width: 768px) {
  .area_charm_main p {
    width: 90%;
    font-size: 16px;
  }
}

.area_whats {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.area_whats h2 {
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(21px,4vw,32px);
  margin: 2em auto 0;
}

.area_whats h2::before,.area_whats h2::after {
  border-top: 1px solid #333;
  content: "";
  flex-grow: 1;
}

.area_whats h2::before {
  margin-right: 1em;
}

.area_whats h2::after {
  margin-left: 1em;
}

.area_whats_main p {
  font-size: 16px;
  margin: 1em auto 5em;
}

@media screen and (max-width: 768px) {
  .area_whats_main p {
    width: 90%;
  }
}

.whats_contents h3 {
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(21px,4vw,32px);
  margin: 1em auto 0;
}

.whats_contents h3::before,.whats_contents h3::after {
  border-top: 1px solid #333;
  content: "";
  flex-grow: 1;
}

.whats_contents h3::before {
  margin-right: 1em;
}

.whats_contents h3::after {
  margin-left: 1em;
}

.whats_contents p {
  font-size: 16px;
  margin: 1em auto;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .whats_contents p {
    width: 90%;
  }
}

.area_exterior_type {
  font-size: clamp(21px,4vw,32px)
}

.area_type_open {
  max-width: calc(calc(100% - 1080px) / 2 + 1080px);
  width: 95%;
  margin-top: 0;
}

.area_type_closed {
  max-width: calc(calc(100% - 1080px) / 2 + 1080px);
  width: 95%;
  margin-top: 6em;
  margin-left: auto;
}

.area_type_semiopen {
  max-width: calc(calc(100% - 1080px) / 2 + 1080px);
  width: 95%;
  margin-top: 6em;
}

.area_type_main {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;

}

.area_type_main h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(17px,4vw,28px);
  margin: 2em 0 0;
}

.area_type_main h3::before {
  content: "■";
}

  .area_type_main_title h4 {
    font-family: YuMincho, 'Yu Mincho';
    font-size: clamp(23px,4vw,28px);
    margin: 0 0 1em;
  }

  @media screen and (max-width: 768px) {
    .area_type_main_title h4 {
      font-size: 17px;
    }
  }

.area_type_left {
  border-right: 1px solid #333;
  padding: 0 1.5vw 5vw 0;
}

@media screen and (max-width: 768px) {
  .area_type_left {
    padding: 0 1.5vw 18vw 0;
  }
}

.area_type_left p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  line-height: 2em;
  margin-top: 1em;
}

@media screen and (max-width: 768px) {
  .area_type_left p {
    width: 90%;
    margin: 0 auto;
  }
}

.area_type_right {
  border-left: 1px solid #333;
  padding: 0 0 5vw 1.5vw;
}

@media screen and (max-width: 768px) {
  .area_type_right {
    padding: 0 1.5vw 18vw 0;
  }
}

.area_type_right p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  line-height: 2em;
  margin-top: 1em;
}

@media screen and (max-width: 768px) {
  .area_type_right p {
    width: 90%;
    margin: 0 auto;
  }
}

.area_link_line {
  position: relative;
  border-top : 1px solid #333;
}

.area_link a {
  color: #fff;
  text-decoration: none;
}

.type_btn {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

.closed_btn {
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}

.area_btn {
  font-family: YuMincho, 'Yu Mincho';
  font-size: calc(14px + 12 * (100vw - 700px)/1280);
  width: 100%;
  background-color: #333;
  margin: 0 auto;
  text-align: center;
  padding: .5em 1em;
  transition: all .1s;
}

.area_btn:hover {
  background-color: #777;
  color: #fff;
  cursor: pointer;
}

.area_btn::before {
  content: ">> "
}

.area_contact_link {
  margin: 10em;
}

.area_contact_link a {
  color: #333;
  text-decoration: none;
}

.contact_btn p {
  margin: 1rem auto;
  font-size: clamp(10px, 2vw, 20px);
}


.area_schedule {
  background: url(../img/osaka/trouble_back.jpg) center center/cover;
}

.area_schedule h2 {
  font-size: clamp(20px,4vw,32px)
}

.area_trouble_question {
  max-width: 1080px;
  width: 90%;
  margin:0 auto;
}

.area_trouble_question h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(20px,4vw,32px);
  max-width: 1080px;
  text-align: center;
  border: 2px solid #333;
  padding: 1vw;
  margin: 3vw auto 0;
}

.area_trouble_questionlist {
  background-color: rgba(255, 255, 255, 0.7);
  max-width: 1080px;
  width: 90%;
  padding: 1em 0 2em;
  margin: 3em auto 0;

}

.questionlist_txt {
  display: flex;
  justify-content: left;
  align-items: center;
  margin-top: 1em;
}

.question_pic {
  max-width: 50px;
  margin: 0 1em;
}

@media screen and (max-width: 768px) {
  .question_pic {
    max-width: 35px;
    margin: 0 1em;
  }
}

.questionlist_txt p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 18px;
  margin: 1em 1em 1em .5em;
}

@media screen and (max-width: 768px) {
  .questionlist_txt p {
    font-size: 16px;
  }
}

.area_schedule_link p {
  font-family: YuMincho, 'Yu Mincho';
  padding: 1em;
}

.area_schedule_table {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: space-between;
  width: 80%;
  max-width: 1080px;
  padding: 8em 0;
  margin: 0 auto;
 }

 @media screen and (max-width: 768px) {
  .area_schedule_table {
  flex-direction: column;
  align-content: space-around;
  padding: 4em;
  }
}

.area_schedule_table p {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 18px;
}

.area_schedule_btn {
  width: clamp(170px,22vw,280px);
  background: #333;
  color: #fff;
  text-align: center;
  border: 1px solid #333;
  padding: .5em 1vw;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  transition: all .1s;
  margin: .5em 0;
}

.area_schedule_btn:hover {
  background: rgba(240, 240, 240, .5);
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .area_schedule_btn {
    width: 61vw;
    text-align: center;
    border: 1px solid #333;
    padding: .5em 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
    transition: all .1s;
    margin: .5em 0;
  }

  .area_schedule_btn:hover {
    background: rgba(240, 240, 240, .5);
    border: 1px solid #777;
    color: #777;
    cursor: pointer;
  }
}

.area_schedule_link a {
  color: #fff;
  text-decoration: none;
}

.area_correspondence h2 {
  font-size: clamp(17px,4vw,32px)
}

.area_correspondence_details {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.area_correspondence_details h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(21px,4vw,28px);
  font-weight: normal;
  margin-top: 2em;
  margin-bottom: 0;
}

.area_correspondence_details h3:first-letter {
  font-size: 150%;
}

.area_correspondence_details_main h4 {
  background-color: #333;
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(17px,3vw,25px);
  font-weight: normal;
  color: #fff;
  padding: .5em 1em;
  margin: 0 auto;
}

.area_correspondence_details_main ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  background-color: #dcdcdc;
  padding: 1.5em 2em 3em;
  margin: 0;
}

.area_correspondence_details_main li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  padding-right: .5em;
}

.area_correspondence_details_main li:not(:last-child)::after {
  content: " /";
}

.area_correspondence_details_maker {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.area_correspondence_details_maker h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(15px, 3vw, 25px);
  margin: 5em auto 1.5em;
}

.area_correspondence_details_maker h3::before,.area_correspondence_details_maker h3::after {
  border-top: 1px solid #333;
  content: "";
  flex-grow: 1;
}

.area_correspondence_details_maker h3::before {
  margin-right: 1em;
}

.area_correspondence_details_maker h3::after {
  margin-left: 1em;
}

.area_correspondence_details_maker p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 2em;
}

@media screen and (max-width: 768px) {
  .area_correspondence_details_maker p {
    width: 90%;
    margin: 0 auto 2em;
  }
}

.area_correspondence_details_maker ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  background-color: #dcdcdc;
  padding: 1em 1em 1.5em;
  margin-top: 3em;
}

.area_correspondence_details_maker li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5em;
  padding-right: .5em;
}

.area_correspondence_details_maker li:not(:last-child)::after {
  content: " /";
}

.font_size_120 {
  font-size: 120%;
}

.mstore_contact_btn {
  font-family: YuMincho, 'Yu Mincho';
  width: 30vw;
  font-size: clamp(10px, 2vw, 20px);
  text-align: center;
  border: 1px solid #333;
  padding: 0.5em 1em;
  margin: 5em auto;
  box-shadow: 0 2px 4px rgb(0 0 0 / 20%);
  transition: all .1s;
}

@media screen and (max-width: 768px) {
  .mstore_contact_btn {
    width: 70%;
    font-size: 14px;
  }
}

.area_location h2 {
  font-size: clamp(18px,4vw,32px)
}

.area_gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}

.area_gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.location_topic {
  background: url(../img/osaka/osaka_topic_back.jpg) center center/cover;
}

.location_topic_content h2 {
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(20px, 3vw, 35px);
  padding: 3em 0 1em;
  margin: 0 auto;
}

.location_topic_content h2::before,.location_topic_content h2::after {
  border-top: 1px solid #333;
  content: "";
  flex-grow: 1;
}

.location_topic_content h2::before {
  margin-right: 1em;
}

.location_topic_content h2::after {
  margin-left: 1em;
}

.location_topic_content p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 2em;
}

@media screen and (max-width: 768px) {
  .location_topic_content p {
    width: 90%;
    margin: 0 auto 2em;
  }
}

.location_topic_content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.location_topic_content_list {
  display: flex;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list {
    width: 90%;
    margin: 0 auto;
  }
}

.location_topic_content_list2 {
  display: flex;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list2 {
    display:block;
    margin: 0;
  }
}

.location_topic_content_list h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin: .2em 0 .5em;
}

.location_topic_content_list h3::before {
  content: "■"
}

.location_topic_content_list h3::after {
  content: "："
}

.location_topic_content_list ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: .5em 0 0;
}

.location_topic_content_list li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  padding-right: .5em;
}


.location_topic_content_list li:not(:last-child)::after {
  content: " /";
}

.location_topic_content_list2 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.location_topic_content_list2 h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list2 h3 {
    width: 90%;
    margin: .5em auto 0;
  }
}

.location_topic_content_list2 h3::before {
  content: "■"
}

.location_topic_content_list2 h3::after {
  content: "："
}

.location_topic_content_list2 h4 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 500;
  padding-right: .5em;
  margin: 0;
}

.location_topic_content_list2 ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list2 ul {
    width: 90%;
    margin: 0 auto;
  }
}

.location_topic_content_list2 li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  padding-right: .5em;
}

.location_topic_content_list3 {

}

.location_topic_content_list3 h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin: .5em 0 0;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list3 h3 {
    width: 90%;
    margin: .5em auto 0;
  }
}

.location_topic_content_list3 h3::before {
  content: "■"
}

.location_topic_content_list3 h4 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin: .5em 0 0;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list3 h4 {
    width: 90%;
    margin: .5em auto 0;
  }
}

.location_topic_content_list3 h4::before {
  content: "【";
}

.location_topic_content_list3 h4::after {
  content: "】";
}

.location_topic_content_list3 h5 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  margin: .5em 0 0;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list3 h5 {
    width: 90%;
    margin: .5em auto 0;
  }
}

.location_topic_content_list3 ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: .5em 0 1em;
}

@media screen and (max-width: 768px) {
  .location_topic_content_list3 ul {
    width: 90%;
    margin: 0 auto;
  }
}

.location_topic_content_list3 li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  padding-right: .5em;
}

.location_topic_content_list3 li:not(:last-child)::after {
  content: " /";
}

.location_topic_content_area h2 {
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(20px, 3vw, 35px);
  padding: 2em 0 .5em;
  margin: 0 auto;
}

.location_topic_content_area h2::before,.location_topic_content_area h2::after {
  border-top: 1px solid #333;
  content: "";
  flex-grow: 1;
}

.location_topic_content_area h2::before {
  margin-right: 1em;
}

.location_topic_content_area h2::after {
  margin-left: 1em;
}

.location_topic_content_area_place {
  background: rgba(255, 255, 255, 0.5);
}

.location_topic_content_area_place_list {
  padding: 1em;

}

.location_topic_content_area_place_list h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 20px;
  font-weight: 700;
  margin: 0 1em;
}

.location_topic_content_area_place_list h3::before {
  content: "■"
}

.location_topic_content_area_place_list h4 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size:  18px;
  font-weight: 700;
  margin: 0 1em;
}

.location_topic_content_area_place_list h4::before {
  content: "■"
}

.location_topic_content_area_place_list ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: .5em 1em 1em;
}

.location_topic_content_area_place_list li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  padding-right: .5em;
}

.location_topic_content_area_place_list li:not(:last-child)::after {
  content: " /";
}

.location_topic_content_area_place_list a {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
}

.areafoot_info {
width: 100%;
background-color: #333;
font-family: YuMincho, 'Yu Mincho';
color: #fff;
font-weight: normal;
text-align: center;
padding: 1em 0;
margin: 0 auto 0;
}

.areafoot_info h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: clamp(20px, 3vw, 24px);
  color: #fff;
  margin: 1em auto 0;
}

.areafoot_info h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: clamp(18px, 3vw, 20px);
  color: #fff;
  margin: 1em auto 0;
}

.areafoot_info p {
  display: inline;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: clamp(18px, 3vw, 22px);
  color: #fff;
  margin: .5em 0;
}

@media screen and (max-width: 768px) {
  .areafoot_info p {
    display: block;
  }
}

.areafoot_info a {
  color: #fff;
  margin-right: 1em;
}

.areafoot_info ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin-top: 1em;
}

.areafoot_info li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  padding-right: 1em;
}

@media screen and (max-width: 768px) {
  .areafoot_info p {
    font-size: 16px;
    color: #fff;
    margin-bottom: .5em;
  }
}

.area_contact_btn {
  font-family: YuMincho, 'Yu Mincho';
  width: 30vw;
  font-size: 16px;
  text-align: center;
  border: 1px solid #333;
  padding: .5em 1em;
  margin: 5em auto;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  transition: all .1s;
}

.area_contact_btn:hover {
  background: rgba(240, 240, 240, .5);
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .area_contact_btn {
    width: 61vw;
    margin: 10em auto;
  }
}

.area_con_results {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.area_con_results h3 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: 26px;
  text-align: center;
  margin: 3em auto 0;
}

.area_con_results h4 {
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin: 2em auto 0;
}

.area_con_results h4::before,.area_con_results h4::after {
  border-top: 1px solid #333;
  content: "";
  flex-grow: 1;
}

.area_con_results h4::before {
  margin-right: 1em;
}

.area_con_results h4::after {
  margin-left: 1em;
}

.area_con_results p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  text-align: left;
  margin: 2em auto 5em;
}

@media screen and (max-width: 768px) {
  .area_con_results p {
    width: 90%;
  }
}

.area_top_pic_osaka {
  background-image: url(../img/osaka/osaka_top_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_osaka {
    background-image: url(../img/osaka/osaka_top_mb.jpg);
    background-size: cover;
    background-repeat: no-repeat;
  }
}

.area_top_pic_osaka h1 {
  max-width: 30vw;
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8vw;
  font-weight: 700;
  text-align: center;
  padding: 24vw 0 4vw;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_osaka h1 {
    max-width: 65vw;
    font-family: YuMincho, 'Yu Mincho';
    font-size: 4vw;
    font-weight: 700;
    text-align: center;
    padding: 49vw 0 17vw;
  }
}

.area_top_pic_osaka h1::before,.area_top_pic_osaka h1::after {
  border-top: 2px solid #333;
  content: "";
  flex-grow: 1;
}

.area_top_pic_osaka h1::before {
  margin-right: 1vw;
}

.area_top_pic_osaka h1::after {
  margin-left: 1vw;
}

.location_topic_fukuoka {
  background: url(../img/area/fukuoka/fukuoka_back.jpg) center center/cover;
}

.area_top_pic_fukuoka {
  background-image: url(../img/area/fukuoka/fukuoka_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_fukuoka {
    background-image: url(../img/area/fukuoka/fukuoka_header_mb.jpg);
  }
}

.area_top_h h1 {
  max-width: 30vw;
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8vw;
  font-weight: 700;
  color: #fff;
  text-align: center;
  padding: 36vw 0 7vw;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_h h1 {
    max-width: 58vw;
    font-size: 4vw;
    text-align: center;
    padding: 59vw 0 11vw;
  }
}

.area_top_h h1::before,.area_top_h h1::after {
  border-top: 2px solid #fff;
  content: "";
  flex-grow: 1;
}

.area_top_h h1::before {
  margin-right: 1vw;
}

.area_top_h h1::after {
  margin-left: 1vw;
}

.location_topic_gunma {
  background: url(../img/area/gunma/gunma_back.jpg) center center/cover;
}

.area_top_pic_gunma {
  background-image: url(../img/area/gunma/gunma_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_gunma {
    background-image: url(../img/area/gunma/gunma_header_mb.jpg);
  }
}

.location_topic_fukushima {
  background: url(../img/area/fukushima/fukushima_back.jpg) center center/cover;
}

.area_top_pic_fukushima {
  background-image: url(../img/area/fukushima/fukushima_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_fukushima {
    background-image: url(../img/area/fukushima/fukushima_header_mb.jpg);
  }
}

.location_topic_chiba {
  background: url(../img/area/chiba/chiba_back.jpg) center center/cover;
}

.area_top_pic_chiba {
  background-image: url(../img/area/chiba/chiba_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_chiba {
    background-image: url(../img/area/chiba/chiba_header_mb.jpg);
  }
}

.location_topic_miyazaki {
  background: url(../img/area/miyazaki/miyazaki_back.jpg) center center/cover;
}

.area_top_pic_miyazaki {
  background-image: url(../img/area/miyazaki/miyazaki_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_miyazaki {
    background-image: url(../img/area/miyazaki/miyazaki_header_mb.jpg);
  }
}

.location_topic_yamanashi {
  background: url(../img/area/yamanashi/yamanashi_back.jpg) center center/cover;
}

.area_top_pic_yamanashi {
  background-image: url(../img/area/yamanashi/yamanashi_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_yamanashi {
    background-image: url(../img/area/yamanashi/yamanashi_header_mb.jpg);
  }
}

.location_topic_hiroshima {
  background: url(../img/area/hiroshima/hiroshima_back.jpg) center center/cover;
}

.area_top_pic_hiroshima {
  background-image: url(../img/area/hiroshima/hiroshima_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_hiroshima {
    background-image: url(../img/area/hiroshima/hiroshima_header_mb.jpg);
  }
}

.location_topic_kagawa {
  background: url(../img/area/kagawa/kagawa_back.jpg) center center/cover;
}

.area_top_pic_kagawa {
  background-image: url(../img/area/kagawa/kagawa_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_kagawa {
    background-image: url(../img/area/kagawa/kagawa_header_mb.jpg);
  }
}

.location_topic_kanagawa {
  background: url(../img/area/kanagawa/kanagawa_back.jpg) center center/cover;
}

.area_top_pic_kanagawa {
  background-image: url(../img/area/kanagawa/kanagawa_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_kanagawa {
    background-image: url(../img/area/kanagawa/kanagawa_header_mb.jpg);
  }
}

.kantosirase {
	max-width: 1080px;
	width: 90%;
	margin: 3em auto;
}

.kantosirase h2 {
	color: #CE1330;
	font-size: 2em;
	font-weight: 700;
	text-align: center;
}

.kantosirase p {
	margin: .5em;
}

/* 地域ページここまで */

/*faqここから*/

.faq-content {
  max-width: 1080px;
  width: 90%;
  margin: 0 auto;
}

.faqcontent h1 {
  font-family: YuMincho, 'Yu Mincho';
  font-size: clamp(21px,2.5vw,32px);
  text-align: center;
  color: #fff;
  background: #333;
  padding: 1em;
  margin: 0 auto 3em;
}

.faq-content h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  color: #fff;
  padding: .7em;
  display: inline-block;
  line-height: 1.3;
  background: #333;
  vertical-align: middle;
  border-radius: 25px 0px 0px 25px;
  font-size: 18px;
  margin: 3em 0 1em;
}

.faq-content h2::before {
  content: "Q. "
}

.faq-content_main p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
  margin: 0 0 .5em 1em;
}

.faq-content_main h3 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 17px;
  margin: 1em;
  font-weight: 700;
}

.faq-content_main h3::before {
  content: "A. ";
}

.faq-content_main ol {
  list-style: decimal;
  margin: 1em 0 1em 3em;
}

.faq-content_main li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
	font-size: 16px;
  line-height: 1.5em;
  margin: 1em 0;
}

.faq_answer::before {
  content: "※";
}

.faq_link {
  border-bottom: solid 2px #696969;
}

.faq_mokuji {
  text-align: center;
}

.faq_mokuji a {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;	
}

.faq_mokuji a:hover {
  text-decoration: underline;
}

.faq_mokuji ul {
  display: inline-block;
  list-style: square;
  border : 1px solid #333;
  padding: 3em 2em 3em 5em;

}

.faq_mokuji li {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  text-align: left;
  margin: .5em;
}

.faq_back{
  background: url(../img/flow/background_l.jpg);
}
/*faqここまで*/

/*プライバシーポリシーここから*/
#privacy_img {
  background-image: url(../img/const/background_l.jpg);
}

.privacy-content h2 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 700;
  position: relative;
  margin: 3em auto 1em;
  padding:0.75em 1em 0.75em 1.5em;
  border: 2px solid #808080;
  font-size: 20px;
}

.privacy-content h2:first-child {
  margin: 5em auto 1em;
}

.privacy-content h2::after {
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  content: '';
  width: 7px;
  height: calc(100% - 1em);
  background-color: #333;
  border-radius: 4px;
}

@media screen and (max-width: 768px) {
  .privacy-content h2 {
    font-size: 17px
  }
}

.privacy-content p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  padding-left: 1em;
}

/*プライバシーポリシーここまで*/

/*大阪LPここから*/
.osaka_ibaraki_main {
  font-family: -apple-system, BlinkMacSystemFont, Roboto, 'Segoe UI', 'Helvetica Neue', HelveticaNeue, YuGothic, 'Yu Gothic Medium', 'Yu Gothic', Verdana, Meiryo, sans-serif;
  margin: 0 auto ;
  font-size: 16px;
  color: #333;
}

.mstore_ib_back {
  background-image: url(../img/branch/osaka/const_8.jpg) ;
  background-position: center;
  background-size: cover;
}


@media screen and (max-width: 768px) {
  .mstore_ib_back {
    background-image: url(../img/branch/osaka/const_8.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}

.osaka_construction_ex {
  max-width: 1080px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

@media screen and (max-width: 768px) {
  .osaka_construction_ex {
  flex-direction: column;
  align-items: center;
  }
}

.oconstex_item {
  margin-top: 1em;
  width: calc(50% - 2vw);
}

@media screen and (max-width: 768px) {
  .oconstex_item {
    margin-top: 1em;
    width: 90%;
    height: auto;
  }
}

.oconstex_item img {
  width: 100%;
  height: auto;
}

.mstore_ib_exp_img {
  background-image: url(../img/branch/osaka/web_pc/osaka_topic_back.jpg);
  background-position: center;
  margin: 0 auto;
}

.mstore_exp h4 {
  font-size: clamp(14px, 1.3vw, 22px);
  font-weight: 700;
  text-align: center;
  padding: .5em;
}

.mstore_info h2 span {
  font-size: clamp(12px, 1.3vw, 16px)
}

.insta {
  background-image: url(../img/top/insta_icon.png);
  padding: 30px 40px;
  background-repeat: no-repeat;
  background-position: right bottom 0%;
}

.insta:hover {
  color: #fff;  
}

/*大阪LPここまで*/

/*加盟店募集ここから*/

.partners_top {
  position: relative;
  z-index: -1;
  line-height: .5em;
}


.top_man {
  position: absolute;
  top: 2.05%;
  left: 60%;
  z-index: 100;
}

.top_logo {
  position: absolute;
  top: 25%;
  left: 5%;
  z-index: 999;
}

.toppic_title {
  position: absolute;
  top: .5%;
  left: 10%;
  color: #fff;
  font-family: Noto Sans JP;
  font-weight: 800;
}

.toppic_title h2 {
  font-size: 4vw;
}

.toppic_title h3 {
  font-size: 9vw;
}

.toppic_title h3 span {
  font-size: 7vw;
}


.toppic_title p {
  font-size: 2.5vw;
}

.partner_line {
  line-height: .5em;
}

.soto_system {
  background-color: #4a4a32;
  text-align: center;
  color: #FFF;
  font-weight: 700;
  margin-top: 0;
  padding-bottom: 5vw;
  z-index: -999;
}

.partner_border_line {
  width: 60vw;
  border-bottom: 1px solid #fff;
  margin: 0 auto 1em;
}

.soto_system h2 {
  font-size: 3.5vw;
  margin: 0 auto;
  padding-top: 3vw;
  border-top: 1px solid #333;
}

.soto_system p {
  width: 80%;
  text-align: center;
  font-weight: normal;
  font-size: 2.5vw;
  margin: 0 auto;
}

.simplesystem {
  display: flex;
  justify-content: space-around;
}

.system_image {
  position: relative;
  background-color: #d8d8d8;
  margin: 1vw;
  padding: 1vw;
  width: 30%;
  height: 30vw;
  font-size: 2.5vw;
  z-index: 0;
}

.system_image img {
  position: absolute;
  top: 3%;
  left: 2%;
  margin: 1em;
  opacity: .5;
  z-index: 100;
}

.system_exp {
  position: absolute;
  top: 7%;
  left: 5%;
  z-index: 200;
}

.system_exp ul {
  color: #3f424e;
  line-height: 130%;
}

.system_exp span {
  font-size: 4.5vw;
  color: #4a4a32;
  line-height: 140%;
  font-weight: 800;
}

.system_exp2 {
  position: absolute;
  top: 7%;
  left: 10%;
  z-index: 200;
}

.system_exp2 ul {
  color: #3f424e;
  line-height: 130%;
}

.system_exp2 span {
  font-size: 4.5vw;
  color: #4a4a32;
  line-height: 140%;
  font-weight: 800;
}

.system_footnote {
  font-size: 1.3vw;
  font-style: yugothic;
  font-weight: 100;
  text-align: left;
  margin: 2vw;
}

.partner_contact {
  border:1px solid #fff;
  width: 65vw;
  margin: 5vw auto;
  padding: 1vw;
  top: 80%;
}

.partner_contact p {
  font-size: 3vw;
  font-weight: normal;
  margin: 0 auto;
  padding: 0;
  border: none;
}

/*1.業界への悩みや不満の解消*/
.worries {
  position: relative;
  height: 90vw;
  background-color: #333;
  color: #fff;
  text-align: center;
  font-style: "Noto Sans JP";
  font-weight: 700;
  font-size: 3vw;
  z-index: -999;
  padding: 2vw 5vw;
}

.worries_man {
  position: absolute;
  width: 31%;
  height: 31%;
  top: 10%;
  left: 63%;
  z-index: 999;
}

.worries h2 {
  text-align: center;
  font-size: 4vw;
  padding-top: 1vw;
}

.worries ul {
  position: absolute;
  top: 15%;
  left: 5%;
  width: 90%;
  border: 1px solid #fff;
  font-size: 2.5vw;
  text-align: left;
  font-weight: normal;
  padding: 2.5vw;
  margin: 3vw auto;
  z-index: 111;
}

.worries li {
  margin-top: 1.1vw;
}

.worries_underline {
  position: absolute;
  top: 25%;
  left: 7%;
  width: 55%;
}

.down_arrow {
  position: absolute;
  top: 55%;
  left: 40%;
  z-index: 9999;
}

.down_arrow img {
  width: 50%;
}

@media screen and (max-width: 768px) {
  .down_arrow {
    left: 18%;
  } 
  .down_arrow img {
    width: 25%;
  }
}
.solve {
  padding-top: 50%;
}

.solve span {
  font-size: 5vw;
}



/*2.ソトリエへの共感と協調*/
.worries2 {
  position: relative;
  height: 130vw;
  background-color: #4a4a32;
  color: #fff;
  text-align: center;
  font-style: "Noto Sans JP";
  font-weight: 700;
  font-size: 3vw;
  z-index: -999;
  padding: 2vw 5vw;
}

@media screen and (max-width: 768px) {
  .worries2 {
    height: 140vw;
  }
}

.worries_man2 {
  position: absolute;
  width: 31%;
  height: 31%;
  top: 30%;
  left: 63%;
  z-index: 999;
}

.worries2 h2 {
  text-align: center;
  font-size: 4vw;
  padding-top: 1vw;
}

.history {
  position: absolute;
  top: 10%;
  left: 5%;
  width: 90%;
  border: 1px solid #fff;
  font-size: 2.5vw;
  text-align: left;
  font-weight: normal;
  padding: 2.5vw;
  margin: 3vw auto;
  z-index: 1111;
}

.history h3 {
  text-align: center;
  font-size: 6vw;
  font-family: "Noto Sans JP";
}

.history h4 {
  text-align: center;
  font-weight: 700;
  margin: 2vw;
}

.history p {
  font-weight: 200;
  font-size: 2vw;
  line-height: 200%;
  text-align: left;
  width: 60vw;
}

.worries_underline2 {
  position: absolute;
  top: 25%;
  left: 18%;
  width: 65%;
}

.down_arrow2 {
  position: absolute;
  top: 63%;
  left: 40%;
  z-index: 9999;
}

.down_arrow2 img {
  width: 50%;
}

@media screen and (max-width: 768px) {
  .down_arrow2 {
    top: 73%;
    left: 18%;
  }
  .down_arrow2 img {
    width: 25%;
  }
  .worries_underline2 {
    top: 24%;
  }
}

.solve2 {
  padding-top: 90%;
}

.solve2 span {
  font-size: 5vw;
}

@media screen and (max-width: 768px) {
  .solve2 {
    margin-top: 22%;
  }
}

/*3.ソトリエ加盟で全て解決*/
.worries3 {
  position: relative;
  height: 133vw;
  background-color: #333;
  color: #fff;
  text-align: center;
  font-style: "Noto Sans JP";
  font-weight: 700;
  font-size: 3vw;
  z-index: -999;
  padding: 2vw 5vw;
}

.worries_man3 {
  position: absolute;
  width: 31%;
  height: 31%;
  top: 12%;
  left: 66%;
  z-index: 999;
}

.worries3 h2 {
  text-align: center;
  font-size: 4vw;
  padding-top: 1vw;
}

.worries3 ul {
  position: absolute;
  top: 8%;
  left: 5%;
  width: 90%;
  border: 1px solid #fff;
  font-size: 2.5vw;
  text-align: left;
  font-weight: normal;
  padding: 2.5vw;
  margin: 3vw auto;
  z-index: 111;
}

.worries3 li {
  margin-top: 1.5vw;
}

.worries_underline3 {
  position: absolute;
  top: 14%;
  left: 7%;
  width: 65%;
}

.down_arrow3 {
  position: absolute;
  top: 48%;
  left: 40%;
  z-index: 9999;
}

.down_arrow3 img {
  width: 50%;
}

@media screen and (max-width: 768px) {
  .down_arrow3 {
    top: 48%;
    left: 18%;
  }
  .down_arrow3 img {
    width: 25%;
  }
  .worries_underline3 {
    top: 14%;
  }
}

.solve3 {
  padding-top: 65%;
}

@media screen and (max-width: 768px) {
  .solve3 {
    margin-top: 4%;
  }
}
.solve3 span {
  font-size: 5vw;
}

/*加盟の流れ*/
.partner_step {
  position: relative;
  height: 185vw;
  background-color: #333;
  font-family: "Noto Sans JP";
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .partner_step {
    height: 210vw;
  }
}

.partner_step h2 {
  font-size: 4vw;
  font-weight: 700;
  padding-top: 1vw;
}

.partner_step h3 {
  font-size: 3vw;
  font-weight: 500;
  text-align: center;
  margin: 3vw auto;
  width: 80%;
}

.partner_step img {
  position: absolute;
  width: 80%;
  top: 12%;
  left: 10%;
}

.icon_step {
  display: flex;
  justify-content: space-between;
  margin: 0 7.5vw;
}

.icon_step p {
  font-size: 2.5vw;
  width: 25vw;
  margin-top: 20vw;
}

@media screen and (max-width: 768px) {
  .icon_step p {
    margin-top: 23vw;
  }
}

.icon_step2 {
  display: flex;
  justify-content: space-between;
  margin: 0 22vw;
}

.icon_step2 p {
  font-size: 2.5vw;
  width: 25vw;
  margin-top: 28vw;
}

@media screen and (max-width: 768px) {
  .icon_step2 p {
    margin-top: 31vw;
  }
}


/*加盟手続きについて*/
.procedure {
  border: 1px solid #fff;
  width: 80%;
  margin: 3vw auto;
  padding: 2vw;

}

.procedure h4 {
  position: relative;
  font-size: 3vw;
  font-style: "Noto Sans JP";
  font-weight: 500;
}

.procedure_underline {
  position: absolute;
  top: 49%;
  left: 31%;
  width: 37%;
  opacity: .6;
}

@media screen and (max-width: 768px) {
  .procedure_underline {
    top: 46%;
  }
}


.procedure p {
  font-size: 2vw;
  font-weight: 100;
}

@media screen and (max-width: 768px) {
  .procedure p {
    font-size: 1vw;
    font-weight: 100;
  }
}

/*上限設定について*/
.upper_limit {
  border: 1px solid #fff;
  width: 80%;
  margin: 3vw auto;
  padding: 2vw;

}

.upper_limit h4 {
  position: relative;
  font-size: 3vw;
  font-style: "Noto Sans JP";
  font-weight: 500;
}

.upper_limit_underline {
  position: absolute;
  top: 65.5%;
  left: 23%;
  width: 54%;
  opacity: .6;
}

@media screen and (max-width: 768px) {
  .upper_limit_underline {
    position: absolute;
    top: 65.5%;
    left: 23%;
    width: 54%;
    opacity: .6;
  } 
}

.upper_limit p {
  font-size: 2vw;
  font-weight: 100;
}

.campaign_logo img {
  top: 85%;
}

@media screen and (max-width: 768px) {
  .campaign_logo img {
    top: 87%;
  }
}


/*加盟手続きとフォーム*/
#form_choice {
  height: 63vw;
  background-color: #4a4a32;
  color: #fff;
  text-align: center;
  font-style: "Noto Sans JP";
  font-weight: 700;
  font-size: 4vw;
  padding: 2vw 5vw;
}

#form_choice h3 {
  font-size: 3vw;
}


.request_choice {
  display: flex;
  justify-content: space-around;
  width: 80%;
  margin: 3vw auto;
}

.choice {
  border: 2px solid #fff;
  margin: 2vw;
  padding: 10vw 2vw;
  width: 35vw;
}

@media screen and (max-width: 768px) {
  .choice {
    width: 37vw;
  }
}


.request_choice h4 {
  font-size: 3vw;
  font-weight: 500;
}

.request_choice p {
  font-size: 2vw;
  font-weight: 300;
}

.line_link {
  color: inherit;
}

/*加盟店募集ここまで*/

/*LP県・市を左端へ*/
.mstore_areabox h5 {
    font-size: 18px;
	text-align: left;
    margin-top: 1em;
  }

/*加盟店LP共通ここから*/

.branch_construction_ex {
  max-width: 1080px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

@media screen and (max-width: 768px) {
  .branch_construction_ex {
  flex-direction: column;
  align-items: center;
  }
}

.bconst_ex_item {
  margin-top: 1em;
  width: calc(50% - 2vw);
}

.bconst_ex_item img {
  min-width: 100%;
  height: auto;
}

/*加盟店LP共通ここまで*/

/*加盟店LPのTOP店名ここから*/
.area_top_lp h1 {
  max-width: 15vw;
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.8vw;
  font-weight: 800;
  color: #333;
  text-align: center;
  padding: 20vw 0 12vw;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp h1 {
    max-width: 30vw;
    font-size: 6vw;
    text-align: center;
    padding: 40vw 0 28vw;
  }
}

.area_top_lp h1::before,.area_top_lp h1::after {
  border-top: 2px solid #333;
  content: "";
  flex-grow: 1;
}

.area_top_lp h1::before {
  margin-right: 1vw;
}

.area_top_lp h1::after {
  margin-left: 1vw;
}

/*ここまで*/

/*広島LPここからコピー*/
.area_top_lp_hiroshima {
  background-image: url(../img/branch/top_pic/PC/c_top_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_hiroshima {
    background-image: url(../img/branch/top_pic/mb/c_top_header_mb.jpg);
  }
}

.mstore_h_exp_img {
  background: url(../img/branch/hiroshima/web_pc/hiroshima_back.jpg);
  background-position: center;
  margin: 0 auto;
}
/*ここまで*/

/*山梨甲斐LPここから*/
.mstore_yk_exp_img {
  background: url(../img/branch/yamanashi_kai/yamanashi_back.jpg);
  background-position: center;
  margin: 0 auto;
}

.area_top_lp_yamanashikai,
.area_top_lp_ichikawa,
.area_top_lp_ychuo {
  background-image: url(../img/branch/top_pic/PC/b_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_yamanashikai,
  .area_top_lp_ichikawa,
  .area_top_lp_ychuo {
    background-image: url(../img/branch/top_pic/mb/b_top_header_mb.jpg);
  }
}
/*ここまで*/

/*香川丸亀LPここから*/
.mstore_km_exp_img {
  background: url(../img/branch/kagawa_marugame/kagawa_back.jpg);
  background-position: center;
  margin: 0 auto;
}

.area_top_lp_marugame,
.area_top_lp_iwaki,
.area_top_lp_isesaki{
  background-image: url(../img/branch/top_pic/PC/d_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_marugame,
  .area_top_lp_iwaki,
  .area_top_lp_isesaki {
    background-image: url(../img/branch/top_pic/mb/d_top_header_mb.jpg);
  }
}
/*ここまで*/

/*福島須賀川LPここから*/
.area_top_lp_sukagawa,
.area_top_lp_funabashi,
.area_top_lp_kairyuoshinmachi,
.area_top_lp_hiroshimanaka,
.area_top_lp_ibarakiisuzu {
  background-image: url(../img/branch/top_pic/PC/e_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_sukagawa,
  .area_top_lp_funabashi,
  .area_top_lp_kairyuoshinmachi,
  .area_top_lp_hiroshimanaka,
  .area_top_lp_ibarakiisuzu {
    background-image: url(../img/branch/top_pic/mb/e_top_header_mb.jpg);
  }
}

.area_top_lp_5 h1 {
  max-width: 15vw;
  font-family: YuMincho, 'Yu Mincho';
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.8vw;
  font-weight: 800;
  color: #333;
  text-align: center;
  padding: 20vw 0 12vw;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_5 h1 {
    max-width: 30vw;
    font-size: 6vw;
    text-align: center;
    padding: 42vw 0 27vw;
  }
}


.mstore_fs_exp_img {
  background: url(../img/branch/fukushima_sukagawa/fukushima_back.jpg);
  background-position: center;
  margin: 0 auto;
}

#planner_sukagawa {
  text-align: center;
}
/*ここまで*/

/*甲斐大垈LPここから*/
.area_top_lp_kaionuta,
.area_top_lp_onga,
.area_top_lp_nobeoka,
.area_top_lp_katsushika {
  background-image: url(../img/branch/top_pic/PC/a_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_kaionuta,
  .area_top_lp_onga,
  .area_top_lp_nobeoka,
  .area_top_lp_katsushika {
    background-image: url(../img/branch/top_pic/mb/a_top_header_mb.jpg);
  }
}
/*ここまで*/

/*千葉柏LPここから*/
.area_top_lp_kashiwa,
.area_top_lp_koga,
.area_top_lp_osakaminami {
  background-image: url(../img/branch/top_pic/PC/f_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_kashiwa,
  .area_top_lp_koga,
  .area_top_lp_osakaminami {
    background-image: url(../img/branch/top_pic/mb/f_top_header_mb.jpg);
  }
}

.mstore_ck_exp_img {
  background: url(../img/branch/chiba_kashiwa/chiba_back.jpg);
  background-position: center;
  margin: 0 auto;
}
/*ここまで*/

/*福岡遠賀LPここから*/
.mstore_fo_exp_img {
  background: url(../img/branch/fukuoka_onga/fukuoka_back.jpg);
  background-position: center;
  margin: 0 auto;
}

/*ここまで*/

/*千葉市川LPここから*/
.mstore_ci_exp_img {
  background: url(../img/branch/chiba_ichikawa/chiba_back.jpg);
  background-position: center;
  margin: 0 auto;
}

#planner_ichikawa {
  text-align: center;
}
/*ここまで*/

/*大阪藤井寺LPここから*/
.area_top_lp_fujiidera,
.area_top_lp_wakaba {
  background-image: url(../img/branch/top_pic/PC/c_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_fujiidera,
  .area_top_lp_wakaba {
    background-image: url(../img/branch/top_pic/mb/c_top_header_mb.jpg);
  }
}

.mstore_of_exp_img {
  background: url(../img/branch/osaka_fujidera/osaka_back.jpg);
  background-position: center;
  margin: 0 auto;
}

/*ここまで*/

/*群馬伊勢崎LPここから*/
.mstore_gi_exp_img {
  background: url(../img/branch/gunma_isesaki/gunma_back.jpg);
  background-position: center;
  margin: 0 auto;
}

/*#planner_isesaki {
  text-align: center;
}*/

/*ここまで*/

/*施工事例写真*/
@media screen and (max-width: 768px) {
  .bconst_ex_item {
    margin-top: 1em;
    width: 100%
  }
}
/*ここまで*/

/*千葉船橋LPここから*/
.mstore_cf_exp_img {
  background: url(../img/branch/chiba_ichikawa/chiba_back.jpg);
  background-position: center;
  margin: 0 auto;
}

/*ここまで*/

/*福岡古賀LPここから*/
.mstore_fk_exp_img {
  background: url(../img/branch/fukuoka_koga/fukuoka_back.jpg);
  background-position: center;
  margin: 0 auto;
}

#planner_koga{
  text-align: center;
}

/*ここまで*/

/*宮崎延岡LPここから*/
.mstore_mn_exp_img {
  background: url(../img/branch/miyazaki_nobeoka/miyazaki_back.jpg);
  background-position: center;
  margin: 0 auto;
}

#planner_nobeoka{
  text-align: center;
}

/*ここまで*/

/*山梨中央LPここから*/
.mstore_yc_exp_img {
  background: url(../img/branch/yamanashi_chuo/yamanashi_back.jpg);
  background-position: center;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .mstore_planner {
    font-weight: normal;
    margin-top: 1em;
    width: 80%;
  }
}
/*ここまで*/

/*千葉若葉LPここから*/
.mstore_cw_back {
  background-image: url(../img/branch/chiba_wakaba/work_scenery_02.jpeg) ;
  background-position: center;
  background-size: cover;
}

.mstore_cw_exp_img {
  background: url(../img/branch/chiba_wakaba/chiba_back.jpg);
  background-position: center;
  background-size: cover;
  margin: 0 auto;
}

/*ここまで*/

/*福島いわきLPここから*/
.mstore_fi_back {
  background-image: url(../img/branch/fukushima_iwaki/store_appearance.jpg) ;
  background-position: center;
  background-size: cover;
}

.mstore_fi_exp_img {
  background: url(../img/branch/fukushima_iwaki/fukushima_back.jpg);
  background-position: center;
  background-size: cover;
  margin: 0 auto;
}

/*ここまで*/

/*広島top店名位置修正*/
@media screen and (max-width: 768px) {
  .area_top_lp_hiroshima .area_top_lp h1 {
    max-width: 23vw;
    font-size: 6vw;
    text-align: center;
    padding: 40vw 0 25vw;
  }
}

/*福島須賀川プロフィール写真*/
.fs_planner_pic {
  width: 50%;
}

@media screen and (max-width: 768px) {
  .fs_planner_pic {
    width: 75%;
  }
}

/*東京葛飾LPここから*/
.mstore_tk_exp_img {
  background: url(../img/branch/tokyo_katsushika/tokyo_back.jpg);
  background-position: center;
  margin: 0 auto;
}



/*加盟店キャンペーンバナー*/
.partner_campaign {
  margin: 1em auto;
}

.campaign_mb {
  display: none;
}

@media screen and (max-width: 768px) {
	.campaign_pc{
		display: none;
	}

	.campaign_mb {
		display: block;
	}
}
/*加盟店キャンペーンバナーここまで*/

/*福島さん紹介ページ*/

#fukuoka_chuo_fk {
  margin: 0 auto;
  background-color:#000;
  color: #fff;
  font-family: "RyuminPro-Regular";
  font-size: 16px;
  line-height: 2;
  text-align: center;
}

.confidence {
  background-image: url(../img/planner/pc/images/fukuoka_fukusima_top.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
  height: 35vw;
}



.fk_back_pic_button {
  width: 250px;
  display: flex;
  padding: 27vw 0 2vw;
  margin: 0 2vw 0 auto;

}

.fk_back_line_00 {
  background-image: url(../img/planner/pc/images/fukuoka_fukusima_s2_line.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  height: 500px;
  margin: 2vw auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fk_pic_00_mb {display: none;}
.fk_pic_01_mb {display: none;}
.fk_pic_02_mb {display: none;}
.fk_pic_03_mb {display: none;}

.fk_pic_01_pc {vertical-align: bottom;}
.fk_pic_02_pc {vertical-align: bottom;}
.fk_pic_03_pc {vertical-align: bottom;}

.fk_backline_00_pc {
  width: 90%;

}

.fk_top_pic {
  position: absolute;
  width: 70%;
  margin: 0 auto;
}

.fk_top_pic h1 {
  margin: 2em 0 ;
  font-size: 18px;
}

.fk_top_pic p {
  margin: 0 auto 2em;
  line-height: 2;
  text-align: left;
}

.store_pic_h {
  background-image: url(../img/planner/pc/images/fukuoka_fukusima_s3_back.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.list_posi {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5vw;
}

.fk_backpic_02_pc {max-width: 70%;}
.fk_backpic_02_mb {display: none;}

.profile_list {
  width: 350px;
  margin-top: 2em;
  font-family: "UDShinGoPro-Medium";
  line-height:3;
  text-align: left;
}

.profile_list li {
  padding: 0 2vw;
}

.profile_detail {
  background-color: #000;
  padding: 0 2vw;
}

.planner_title {
  background-color: #333;
  padding: 5vh;
}

#fukuoka_chuo_fk h2 {
  margin: 2vw auto 1vw;
  width: 355px;
  font-family: "UDShinGoPro-Regular";
  font-size: 40px;
  border-bottom: #fff solid 1px;
}

#fukuoka_chuo_fk h3 {
  margin: 1vw auto;
  font-family: "NotoSansCJKjp-DemiLight";
  font-size: 30px;
}

.picAndDetail {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-around;
}

.picAndDetail_2 {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-around;
}

.fk_back_pic {
  width: 50%;
}

.fk_back_line_01 {
  width: 50%;
  height: 27vw;
  background-image: url(../img/planner/pc/images/fukuoka_fukusima_s4_01_line.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  align-items: center;
}

.personality_detail {
  width: 95%;
  margin: 0 auto;
}

.personality_detail h4 {
  margin: 1em;
  text-align: left;
  font-family: "UDShinGoPro-Medium";
}

.personality_detail p {
  margin: 1em;
  text-align: left;
  line-height: 2.5;
  font-family: "YuGo-Medium";
  font-size: 14px;
}

.fk_back_line_02 {
  width: 50%; 
  height: 27vw;
  background-image: url(../img/planner/pc/images/fukuoka_fukusima_s4_02_line.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  align-items: center;
}

.fk_back_line_03 {
  width: 50%; 
  height: 27vw;
  background-image: url(../img/planner/pc/images/fukuoka_fukusima_s4_03_line.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  align-items: center;
}

.personality_talk {
  margin: 1em auto;
  width: 80%;
}

.personality_talk h4 {
  margin: 2em 0;
  font-size: 18px;
  text-align: left;
}

.personality_talk p {
  font-size: 14px;
  text-align: left;
}

/* 画面外にいる状態 */
.fadein {
 opacity : 0;
 transform : translate(0, 50px);
 transition : all 800ms;
}

/* 画面内に入った状態 */
.fadein.scrollin {
  opacity : 1;
  transform : translate(0, 0);
}

.storetop_link {
  margin: 3vw auto;
  width: 30%;
}

.storetop_link p {
  border: #fff solid .5px;
  color: #fff;
  font-size: 16px;
  text-align: center;
  padding: 1vw;
}

.fk_talkScene {
  max-width: 500px;
  margin: 0 auto;
}

.fk_video {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}
  
.fk_video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*.l-pagetop{
  display: block;
  position: fixed;
  right: 30px;
  bottom: 50px;
  z-index: 999;
}*/

@media screen and (max-width: 1024px) {
  .picAndDetail,
  .picAndDetail_2 {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
  }
  .fk_pic_01_mb {
    display: block;
    margin: 0 auto;
  }
  .fk_pic_01_pc {display: none;}
  .fk_pic_02_mb {
    display: block;
    margin: 0 auto;
  }
  .fk_pic_02_pc {display: none;}
  .fk_pic_03_mb {
    display: block;
    margin: 0 auto;
  }
  .fk_pic_03_pc {display: none;}

  .fk_back_pic {
    width:100%;
    height: auto;
    margin: 0 auto;
  }

  .personality_detail {
    width: 100%;
    padding: 6vw;
  }

  .personality_detail h4 {
    text-align: left;
    font-family: "UDShinGoPro-Medium";
  }

  .personality_detail p {
    margin: 1em;
    text-align: left;
    line-height: 2.5;
    font-family: "YuGo-Medium";
    font-size: 14px;
  }

  .fk_back_line_01 {
    width: 90%; 
    height: auto;
    background-image: url(../img/planner/mb/images/fukuoka_fukusima_s4_01_line_mb_15.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 2vw 0;
  }

  .fk_back_line_02 {
    width: 90%;
    height: auto;
    background-image: url(../img/planner/mb/images/fukuoka_fukusima_s4_02_line_mb_21.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 2vw 0;
  }

  .fk_back_line_03 {
    width: 90%;
    height: auto;
    background-image: url(../img/planner/mb/images/fukuoka_fukusima_s4_03_line_mb_27.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin: 2vw 0;
  }
}

/*福島さん紹介ページsp用*/
@media screen and (max-width: 768px) {
  #fukuoka_chuo_fk {
    background-color:#000;
    color: #fff;
    font-family: "RyuminPro-Regular";
    font-size: 16px;
    line-height: 2;
    text-align: center;
  }

  .confidence {
    background-image: url(../img/planner/mb/images/fukuoka_fukusima_mb_01.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0 auto;
    height: 70vw;
  }

  .fk_back_line_00 {
    background-image: url(../img/planner/mb/images/fukuoka_fukusima_s2_line_mb_03.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 90%;
    height: 650px;
    margin: 2vw auto;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .fk_top_pic {
    width: 100%;
    margin: 0 auto;
  }

  .sp-only {
    display: block;
    line-height: 2;
  }

  .fk_top_pic h1 {
    margin: 2em;
    font-size: 16px;
  }

  .fk_top_pic p {
    margin: 2em auto;
    padding: 0 2em;
    line-height: 2;
    font-size: 14px;
    text-align: left;
  }

  .store_pic_h {
    background-image: url(../img/planner/mb/images/fukuoka_fukusima_s3_back_mb_06.jpg);
  }
	
  .personality_detail {
    padding: 1vw;
  }

  .fk_backpic_02_mb {
    display: block;
    top: 0%;
    max-width: 70%;
    margin: 0 auto;
  }

  .fk_backpic_02_pc {display: none;}

  .fk_back_pic_button {
    width: 200px;
    display: flex;
    padding: 61vw 0 2vw;
    margin: 0 2vw 0 auto;
  
  }

  .list_posi {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 15vw 5vw;
  }

  .profile_list {
    width: 300px;
    line-height: 2.5em;
  }

  .profile_list li {
    padding: 0 2vw;
  }

  .profile_detail {
    background-color: #000;
    padding: 0 2vw;
  }

  .planner_title {
    background-color: #333;
    padding: 5vw;
  }

  #fukuoka_chuo_fk h2 {
    margin: 1em auto 0;
    width: 250px;
    font-family: "UDShinGoPro-Regular";
    font-size: 28px;
    border-bottom: #fff solid 1px;
  }

  #fukuoka_chuo_fk h3 {
    margin: 4px auto 1em;
    font-family: "NotoSansCJKjp-DemiLight";
    font-size: 24px;
  }

  .personality_talk {
    margin: 1em auto;
    width: 80%;
  }

  .personality_talk h4 {
    margin-top: 2em 0;
    font-size: 16px;
  }

  .personality_talk p {
    font-size: 12px;
    text-align: left;
  }

  .storetop_link {
    margin: 3vw auto;
    width: 70%;
    }
    
  .storetop_link p {
    text-align: center;
    padding: 3vw;
  }
  /*.l-pagetop{
    display: block;
    position: absolute;
    right: 15px;
    bottom: 200px;
    z-index: 999;
  }*/
}  
/*福島さん紹介ページsp用ここまで*/
/*福島さん紹介ページここまで*/

/*東京都LP*/
.area_main_bk {
  background-color:#333;
  color: #fff;
}

.area_main_bk p {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5em;
}

/*市区ページtop画像*/
.area_top_pic_tokyo {
  background-image: url(../img/area/tokyo/tokyo_topheader_pc_black.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_pic_tokyo {
    background-image: url(../img/area/tokyo/mb/tokyo_topheader_mb_black.jpg);
  }
}

/*エリア共通背景*/
.location_topic_tokyo {
  background: url(../img/area/tokyo/tokyo_back_night.jpg) center center/cover;
}

.area_main_bk .area_top h1 {
  color: rgba(255,215,0,.5);
}

.area_main_bk .area_top_content h2 {
  color:#fff;
  border-bottom: 1px solid #fff;
}

.area_main_bk .area_contact_btn {
  color: #fff;
  border: 1px solid #fff;
}

.area_main_bk .hback_title {
  background-color: #000;
}

.area_main_bk .hback_title_nospace {
  background-color: #000;
}

.area_main_bk .area_point {
  background: url(../img/area/tokyo/initiatives_back_dark.jpg) center center/cover;
}


.area_main_bk .area_whats h2 {
  color: rgba(255,215,0,.5);
}

.area_main_bk .area_whats h2::before,
.area_main_bk .area_whats h2::after {
  border-top: 1px solid #fff;
}


.area_main_bk .whats_contents h3 {
  color: rgba(255,215,0,.5);
}

.area_main_bk .whats_contents h3::before,
.area_main_bk .whats_contents h3::after {
  border-top: 1px solid #fff;
}

.area_main_bk .area_type_main h3 {
  color: rgba(255,215,0,.5);
}

.area_main_bk .area_type_left {
  border-right: 1px solid #fff;
}

.area_main_bk .area_type_right {
  border-left: 1px solid #fff;
}

.area_main_bk .area_link_line {
  border-top : 1px solid #fff;
}

.area_main_bk .area_btn {
  background-color: #C1ab05;
}

@media screen and (max-width: 768px) {
  .area_main_bk .area_btn {
    font-size: 16px;
  }
}

.area_main_bk .area_schedule {
  background: url(../img/area/tokyo/trouble_back_tokyo.jpg) center center/cover;
}

.area_main_bk .area_trouble_questionlist_bk {
  max-width: 1080px;
  width: 90%;
  padding: 1em 0 2em;
  margin: 3em auto 0;

}

.area_main_bk .area_trouble_question h3 {
  border: 2px solid #fff;
}

.area_main_bk .area_schedule_btn_bk {
  width: clamp(170px,22vw,280px);
  color: #fff;
  text-align: center;
  border: 1px solid #fff;
  padding: .5em 1vw;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
  transition: all .1s;
  margin: .5em 0;
}

.area_main_bk .area_schedule_btn_bk:hover {
  background: rgba(240, 240, 240, .5);
  border: 1px solid #777;
  color: #777;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .area_main_bk .area_schedule_btn_bk {
    width: 61vw;
    text-align: center;
    border: 1px solid #fff;
    padding: .5em 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .2);
    transition: all .1s;
    margin: .5em 0;
  }

  .area_main_bk .area_schedule_btn_bk:hover {
    background: rgba(240, 240, 240, .2);
    border: 1px solid #777;
    color: #000;
    cursor: pointer;
  }
}

.area_main_bk .area_correspondence_details h3 {
  color: rgba(255,215,0,.5);
}


.area_main_bk .area_correspondence_details_main h4 {
  background-color: #000;
}

.area_main_bk .area_correspondence_details_main ul {
  background-color: rgba(255,215,0,.5);
}


.area_main_bk .area_initiatives .initiatives_txt h3 {
  font-size: clamp(21px,3vw,25px);
  font-weight: 700;
  color: rgba(255,215,0,.5);
  margin: .5em .5em 0;
}

@media screen and (max-width: 768px) {
  .area_main_bk .area_initiatives .initiatives_txt h3 {
    font-size: 18px;
    margin: .5em .8em 0;
  }
}

.area_main_bk .initiatives_border_line {
  border-bottom: 1px solid #fff;
}


.area_main_bk .area_correspondence_details_maker h3::before,
.area_main_bk .area_correspondence_details_maker h3::after {
  border-top: 1px solid #fff;
}

.area_main_bk .area_correspondence_details_maker ul {
  background-color: rgba(255,215,0,.5);
}


.location_topic_tokyo .location_topic_content h2::before,
.location_topic_tokyo .location_topic_content h2::after {
  border-top: 1px solid #fff;
  content: "";
  flex-grow: 1;
}

.area_main_bk .location_topic_content_area_tokyo{background-color: rgb(255, 215, 0, .5);}

.area_main_bk .location_topic_content_area_place_list h3,
.area_main_bk .location_topic_content_area_place_list h4,
.area_main_bk .location_topic_content_area_place_list ul,
.area_main_bk .location_topic_content_area_place_list a {color: #fff;}
/*東京都LPここまで*/

/*外構工事とは_マージン調整*/
.area_whats_main p {
  margin: 2em auto 0;
}

.whats_contents h3 {
  margin: 2em auto 0;
}

.whats_contents p {
  margin: 2em auto 0;
}

/*都庁所在地*/
@media screen and (max-width: 768px) {
  .location_topic_content_list2 {
    display:block;
    margin: 0;
  }
  .location_topic_content_list2 h4 {
    width: 90%;
    margin: .5em auto 0;
  }
}

/*フォント調整*/
.area_correspondence_details_maker h3 {
  font-size: 16px;
}

/*東京市区LPここから*/
.area_main_bk .area_top_h h1 {
  padding: 33vw 0 9vw;
}

@media screen and (max-width: 768px) {
  .area_main_bk .area_top_h h1 {
    padding: 54vw 0 16vw;
  }
}

.area_main_bk .area_con_results h4::before,
.area_main_bk .area_con_results h4::after {
  border-top: 1px solid #fff;
}

/*山梨_雫石さん*/
#yamanashi_kai {
  margin: 0 auto;
  background-color:#000;
  color: #fff;
  font-family: "RyuminPro-Regular";
  font-size: 16px;
  line-height: 2;
  text-align: center;
}

#yamanashi_kai .confidence {
  background-image: url(../img/planner/yamanashi_s/PC/yamanashi_shizukuishi_top.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
  height: 35vw;
}

#yamanashi_kai .store_pic_h {
  background-image: url(../img/planner/yamanashi_s/PC/yamanashi_shizukuishi_s3_back.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

#yamanashi_kai h2 {
  margin: 2vw auto 1vw;
  width: 355px;
  font-family: "UDShinGoPro-Regular";
  font-size: 40px;
  border-bottom: #fff solid 1px;
}

#yamanashi_kai h3 {
  margin: 1vw auto;
  font-family: "NotoSansCJKjp-DemiLight";
  font-size: 30px;
}


/*ここまで*/

/*雫石さんsp用*/
@media screen and (max-width: 768px) {
  #yamanashi_kai {
    background-color:#000;
    color: #fff;
    font-family: "RyuminPro-Regular";
    font-size: 16px;
    line-height: 2;
    text-align: center;
  }

  #yamanashi_kai .confidence {
    background-image: url(../img/planner/yamanashi_s/MB/yamanashi_shizukuishi_mb_top.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0 auto;
    height: 70vw;
  }

  .store_pic_h {
    background-image: url(../img/planner/yamanashi_s/MB/yamanashi_shizukuishi_s3_back_mb.jpg);
  }

  #yamanashi_kai h2 {
    margin: 1em auto 0;
    width: 250px;
    font-family: "UDShinGoPro-Regular";
    font-size: 28px;
    border-bottom: #fff solid 1px;
  }

  #yamanashi_kai h3 {
    margin: 4px auto 1em;
    font-family: "NotoSansCJKjp-DemiLight";
    font-size: 24px;
  }

}

/*埼玉LP*/
.location_topic_saitama {
  background: url(../img/area/saitama/saitama_back.jpg) center center/cover;
}

.area_top_pic_saitama {
  background-image: url(../img/area/saitama/saitama_header_pc.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}

.area_top_pic_saitama .area_top_h h1 {
  padding: 36vw 0 7vw;
}

@media screen and (max-width: 768px) {
  .area_top_pic_saitama {
    background-image: url(../img/area/saitama/saitama_header_mb.jpg);
  }
  .area_top_pic_saitama .area_top_h h1 {
    padding: 59vw 0 11vw;
  }
}

/*プランナー紹介ページ_220810*/
.planners_intro {
  background-image: url(../img/planner/background_l.jpg);
  /*background-color: #333;*/
  color: #fff;
}

.planners_intro_main {
  max-width: 1080px;
  margin: 0 auto;
}

.intro_top {
  position: relative;
  background: url(../img/planner/planner_intro_top-01.jpg) no-repeat center/cover;
  padding-bottom: 40%;
  height: 0;
  overflow: hidden;
}

.intro_title {
  position: absolute;
  bottom: 0;
  width: 55%;
  height: 60px;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
}

.planners_intro h1 {
  font-size: 1.3rem;
  margin: .5em 0 0 .5em;
}

.planners_intro h2 {
  font-size: 1.2rem;
}

.acd-content h3 {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

.planners_intro p {
  font-size: 1rem;
  margin-left: .5em;
}

.planners_intro .intro_discription {
  color: #333;
  width: 1080px;
  margin: 3rem auto;
}

.planners_intro .intro_discription p {
  font-size: 1rem;
  margin-bottom: 2rem;
}

.planners_intro a {
  color: #fff;
  font-size: .8rem;
}

.planner_contents {
  background-color: #333;
  margin: 5em 1em 0;
  padding: 3em 0;
}



.planners_btn {
	position: relative;
	width: 500px;
	max-width: 100%;
	height: 400px;
  margin: 0 auto;
}

.planners_btn img {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.planners_btn .btn_img {
	position: absolute;
	width: 100%;
	opacity: 0;
	animation: change-img-anim 10s infinite;
}

.planners_btn .btn_img:nth-of-type(1) {
	animation-delay: 0s;
}
.planners_btn .btn_img:nth-of-type(2) {
	animation-delay: 5s;
}
/*.btn_img:nth-of-type(3) {
	animation-delay: 20s;
}*/

@keyframes change-img-anim {
	0%{ opacity: 0;}
	50%{ opacity: 1;}
	/*90%{ opacity: 1;}*/
	100%{ opacity: 0;}
}

/*.planners_btn_01,
.planners_btn_02 {
  position: relative;
  width: 500px;
  height: 0;
  padding-top: 380px;
  margin: 0 auto;
  display: block;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
}

.planners_btn_01 img,
.planners_btn_02 img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 320px;
  display: block;
  -webkit-transition: .4s ease-in-out;
  transition: .4s ease-in-out;
}

.planners_btn_01:hover img:nth-of-type(2) {
  opacity: 0;
}

.planners_btn_02:hover img:nth-of-type(2) {
  opacity: 0;
}*/

.planners_btn h3 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 35%;
  color: #fff;
  font-size: 5rem;
  background: rgba(0, 0, 0, 0.5);
  text-align: center;
}

.planners_contents {
  margin: 0 1em;
}

.planners_contents p {
  margin: 0 1.5em;
  line-height: 3.5;
}

.planners_intro_last {
  padding-top: 5vw;
}

.intro_last_btn {
  width: 35%;
  margin: 6vw auto;
  padding: .5em 5em;
  border: #333 solid 1px;
}

.intro_last_btn p {
  margin: 1em auto;
  text-align: center;
  color: #333;
}

.material-icons::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
  line-height: 1em;
  vertical-align: -0.1667em;
  background-image: url(../img/planner/baseline_open_in_new_white_48dp.png);
  background-size: contain
}

/*アコーディオン*/

.acd-check {
  display: none;
}

.acd-label {
  background: #333;
  color: #fff;
  display: block;
  width: 500px;
  margin: 0 auto;
  margin-bottom: 1px;
  padding-bottom: 1rem;
  font-size: 1.3rem;
}

.acd-content {
  border: 1px solid #333;
  margin: 0 auto;
  width: 500px;
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: .5s;
  visibility: hidden;
}

.acd-check:checked+.acd-label+.acd-content {
  background: #333;
  height: 220px;
  opacity: 1;
  padding: 10px;
  visibility: visible;
}

/*アンダーライン*/
.store_underline {
  display: inline-block;
  padding-bottom: 1px;
  position: relative;
}

.store_underline::before {
  content: '▼';
  display: inline-block;
  margin-right: 8px;
}

.store_underline::after {
  background-color: rgb(228, 157, 33);
  bottom: 0;
  content: '';
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  transition: .5s all;
  width: 0;
}

.store_underline:hover::after {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .intro_top {
    padding-bottom: 66%;
  }

  .intro_title {
    width: 100%;
    height: 50px;
  }

  .planners_intro h1 {
    font-size: 18px;
    margin: .5em 0 0 .5em;
  }

  .planners_intro h2 {
    font-size: 16px;
  }
	
  .acd-content h3 {
    font-size: 16px;
    margin: 1em;
  }

  .planners_intro p {
    font-size: 14px;
    margin-left: .7em;
  }

  .planners_intro a {
    color: #fff;
    font-size: 14px;
  }

  .planners_intro .intro_discription {
    color: #333;
    width: 100%;
    margin: 1rem auto;
  }
  
  .planners_intro .intro_discription p {
    font-size: 14px;
    margin-bottom: 2rem;
  }
	
  .planner_contents {
    display: block;
    margin: 5em 1em 0;
  }

  .planners_img {
    width: 100%;
  }

  .planners_btn {
    width: 85%;
    height: 0;
    padding-top: 75%;
    margin: 0 auto;
  }

  .planners_btn .btn_img {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
  }

  .planners_btn h3 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 80px;
    font-size: 3rem;
  }

  .intro_last_btn {
    width: 55%;
    margin: 6vw auto;
    padding: .5em 2em;
  }

  .intro_last_btn p {
    margin: 1em auto;
    text-align: center;
    color: #333;
  }

  .acd-label {
    width: 90%;
    margin: 0 auto;
    padding-bottom: 20px;
  }

  .acd-content {
    width: 90%;
    margin: 0 auto;
    height: 0;
  }
  .acd-check:checked+.acd-label+.acd-content {
    height: 250px;
    padding: 0;
  }
}

/*@media (hover: none) {
 .btn:active {
   background-image: linear-gradient(#f95d41 0%, #f89e87 100%);
   box-shadow: 2px 8px 4px rgba(0, 0, 0, .3);
   transform: translateY(-8px);
 }
}*/

/*大阪南LP*/
.mstore_osakasouth_back {
  background-image: url(../img/branch/osaka_minami/store_pic-2.jpg) ;
  background-position: bottom;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .mstore_osakasouth_back {
    background-image: url(../img/branch/osaka_minami/store_pic-2.jpg) ;
    background-position: bottom;
  }
}

.mstore_osakasouth_back .mstore_back_on {
  max-width: 1080px;
  width: 90%;
  background-color: rgba(255, 255, 255, 0.9);
  margin: 0 auto;
}

.mstore_om_exp_img {
  background-image: url(../img/branch/osaka_minami/store_pic-6.jpg);
  background-position: center;
  margin: 0 auto;
}

/*甲斐竜王新町タイトル*/
.area_top_lp_kairyuoshinmachi .area_top_lp h1 {
  max-width: 19vw;
}

@media screen and (max-width: 768px) {
  .area_top_lp_kairyuoshinmachi .area_top_lp h1 {
    max-width: 40vw;
  }
}

@media screen and (max-width: 768px) {
.reception_mail p {font-size: 18px!important;}
}

.reception_line p {
  font-size: 14px;
  width: 90%;
  margin: 0 auto;
}

.mstore_cf_back {
  background-image: url(../img/branch/chiba_funabashi/chiba_txt_back.jpg) ;
  background-position: right;
  background-size: cover;
}

.mstore_cf_exp_img {
  background-image: url(../img/branch/chiba_funabashi/chiba_back_new-2.jpg);
  background-size: cover;
  margin: 0 auto;
}

.top_banner_piece {margin: 2em auto;}

/*aboutSOTORIEここから*/
.about_st {
  background-image: url(../img/about/pc/sotorie_about_header.png);
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
  padding: 13em;
}
.about_logo {
  width: 60%;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
.about_st {
  background-image: url(../img/about/mb/sotorie_about_header_mb.png);
  padding: 12em 3em;
}
.about_logo {
  width: 100%;
}
}


.bk_org {
  background-color: #c1ab05;
  color: #333;
  font-weight: 800;
  margin: 0 auto 1em;
  padding: 1.5em 0;
}

.bk_org h1 {
  text-align: center;
  font-size: 2em;
}

.bk_org h2 {
  text-align: center;
  font-size: 2em;
}
@media screen and (max-width: 768px) {
  .bk_org h1,.bk_org h2 {
  font-size: 1.4em;
}
}

.intro_contents_mg {margin: 5em auto;}

.area_top.about_txt p{
  margin: 3em auto;
  font-size: 1.4em;
}

.border_line_wt {
  border-bottom: 1px solid #fff;
  margin: 3em auto;
}

.mind_lg {
  text-align: center;
  margin-top: 8em;
}

/*.mind_lg_first {
  text-align: center;
  margin-top: 3em;
}*/

.soto_mind p{
  text-align: center;
  margin: 1em 1em 0;
}

@media screen and (max-width: 768px) {
  .area_top.about_txt p{
    font-size: 1.2em;
  }
  .soto_mind p{
    text-align: left;
  }
}
.mind_txt {font-size: 1.3em}

.acv_top {
  background-image: url(../img/about/pc/sotorie_service.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .acv_top {
  background-image: url(../img/about/mb/sotorie_service_mb.png);
  padding: 3em 0;
  }
  .acv_top img{
    width: 80%;
  }
}

.txt_org {
  color: #c1ab05;
  font-size: 1.4em;
  font-weight: 800;
  text-align: center;
  margin: 2em 1em;
}

.exc_top {
  background-image: url(../img/about/pc/sotorie_planner.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .exc_top {
  background-image: url(../img/about/mb/sotorie_planner_mb.png);
  padding: 3em 0;
  }
  .exc_top img{
    width: 80%;
  }
}

.prt_top {
  background-image: url(../img/about/pc/sotorie_kamei.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .prt_top {
  background-image: url(../img/about/mb/sotorie_kamei_mb.png);
  padding: 3em 0;
  }
  .prt_top img{
    width: 80%;
  }
}

.about_st_last {
  background-image: url(../img/about/pc/sotorie_about_footer.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center;
}

.about_st_last img{
  width: 60%;
}

@media screen and (max-width: 768px) {
  .about_st_last {
  background-image: url(../img/about/mb/sotorie_about_footer_mb.png);
  padding: 3em 0;
  }
  .about_st_last img{
    margin: 0 auto;
  }
  .about_st_last p {
    width: 80%;
    margin: 1em auto;
  }
}

.about_btn_spc{margin: 5em auto;}


/*フェードイン*/
.soto_fade{
  /*margin-top: 80vh;
  text-align: center;*/
  opacity : 0;
  transition: opacity 2s;
}
 
.soto_fade.view{
  opacity: 1;
}
/*ロゴanimation*/
.soto_scroll_fadein{
  opacity: 0;
}
.soto_fadein_animation_start{
  animation-name: fadein_animation;
  animation-delay: 0.3s;
  animation-duration: 1s;
  animation-fill-mode: both;
}
@keyframes fadein_animation{
  0% {
    opacity: 0;
  }
  100%{
    opacity: 1;
    transform: translate(0);
  }
}
.soto_slideleft{
  transform: translateX(-50px);
}
.soto_slideright{
  transform: translateX(50px);
}


.sp-only {display: none;}
@media screen and (max-width: 768px) {
  .sp-only {
  display: block;
  }
}


@media screen and (max-width: 768px) {
  .pc-only {display: none;}
}

/*aboutSOTORIEここまで*/

/*planner_renew*/
.pl_st {
  background-image: url(../img/planner/pc/sotorie_planner_header_new.png);
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
  padding: 13em;
}

@media screen and (max-width: 768px) {
.pl_st {
  background-image: url(../img/planner/mb/sotorie_planner_header_mb_new.png);
}}

.head-border.pl-wt:before,
.head-border.pl-wt:after {
  /*content: "";
  height: 1px;
  flex-grow: 1;*/
  background-color: #fff;
}

.head-border.pl-wt {
  color: #fff;
  font-size: 1.4em;
  margin-bottom: 2em;
}

.pl_osaka_ib_top {
  background-image: url(../img/planner/pc/planner_osaka.png);
  background-position: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center
}

.pl_pic_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .pl_osaka_ib_top {
    background-image: url(../img/planner/mb/sotorie_planner_osaka_mb.png);
  }
  .pl_pic_flex {
    display: block;
  }
}

.pl_pic {
  width: 25%;
  margin: 0 0 0 auto;
}

.pl_txt p {
  margin: 1em auto;
}
@media screen and (max-width: 768px) {
  .pl_txt p {margin: 1em 0!important;}
  .pl_pic {
    width: 50%;
    margin: 0 auto;
  }
}
.pl_txt_sns {
  display: flex;
  justify-content: left;
  align-items: center;
}

.pl_txt_org {
  color: #c1ab05;
  font-weight: 800!important;
  font-size: 1.4em!important;
}

.pl_txt_sns .pl_txt_org {
  margin: 0 1em 0 0;
}

.pl_msg_plan .bk_org {
  text-align: center;
  font-size: 1.4em;
  line-height: .5;
}

.pl_msg_plan .bk_org span {
  font-size: .7em;
  font-weight: normal;
}

.pl_introtxt p {
  margin: 0 auto 3em;
}
@media screen and (max-width: 768px) {
  .pl_introtxt p {
    margin: 3em auto;
  }
}
.pl_ast {
  font-size: 1em!important;
  margin-bottom: 5em!important;
}

.pl_sns li {vertical-align: middle;}

.pl_introtxt .bk_org {
  padding: .7em;
  margin-bottom: 3em;
}
.intro_contents .pl_introtxt {margin : 5em auto;}
.pl_txt p {margin: 0 auto 1em;}

.pl_vision {padding-top: 0;}
.pl_smp_pd {padding: 0 ;}
.pl_smp_flex {
  display: flex;
  justify-content: space-around;
}

@media screen and (max-width: 768px) {
  .pl_smp_flex {
    display: block;
  }
  .pl_introtxt .bk_org {
    margin-bottom: 0;
  }
}

.pl_smp_pic p {text-align: center;}


/*プランナー一覧*/
.pl_bg_bk {
  background-color: #000000;
  padding: 3em .5em;
}
.pl_table {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  justify-content: space-evenly;
}
.pl_txt {margin: 1em auto 1em 3em;}
.pl_btn_spc {
  margin: 2em 1em;
  width: 250px;
}

@media screen and (max-width: 768px) {
.pl_table {
  display: block;
}
.pl_btn_spc {margin: 0 auto 4em;}
.pl_txt {margin: 0 auto;}
}

.pl_list {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content:flex-start;
  gap: 4vw 0 ;
}
@media screen and (max-width: 768px) {
.pl_list {gap: 3vw;}
}
.pl_planner_pic {
  display: block;
  overflow: hidden;
  position: relative;
  padding: 90px 0;
  cursor: pointer;
}

.pl_planner_pic img {
  border-radius: 50%;
  position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}

.pl_planner_pic:hover img:nth-of-type(2) {
	opacity: 0;
}
.pl_planner {
  width: 24%;
  margin: 2em 0;
}
.pl_planner p {
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .pl_planner {
    /*width: 24%;*/
    margin: 1em;
  }
  .pl_planner p {font-size: 1em;}
  .pl_planner_pic {padding: 86px 0;}
}
@media screen and (max-width: 414px) {
  .pl_planner_pic {padding: 50px 0;}
}
/*プランナー一覧*/

/*ポップアップ修正*/
.pl_content_inner img{
  margin: 0 auto;
  width: fit-content;
  /*margin-left: 0;*/
  float: right;
  padding: unset;
}
@media screen and (max-width: 768px) {
  .pl_content_inner{
    padding-top: 69px;
  }
}

.pl_close {
  color: #000000;
  font-weight: 800;
}

.plan_catchphrase::after{
  background: linear-gradient(-50deg, #B17C00, #c1ab05);
}
@media screen and (max-width: 768px) {
  .pl_smp_flex {
    display: block;
    padding: 0 ;
  }
  .pl_small_pic {
    width: 100%;
    margin-top: 5em;
    padding: 0;
  }
  .plan_catchphrase{margin: 1em auto!important;}
}

.pl_smp_img {
  display: block;
  overflow: hidden;
  /*border-radius: 50%;*/
  position: relative;
  /*padding: 4px;
  background-image: linear-gradient(50deg, #c8f386, #74AF28);*/
}

.pl_smp_img:hover {
  cursor: pointer;
}

.pl_smp_img img {
  /*border-radius: 50%;*/
  width: 100%;
  display: block !important;
}

.pl_smp_img figcaption {
  text-align: center;
  /*left: 15px;
  top: 50%;
  position: absolute;*/
  font-size: 12px;
  /*line-height: 1.2;*/
}

.pl_smp_img figcaption span {
  padding-top: 3px;
  font-size: 15px;
  /*font-weight: bold;*/
  display: block;
  /*color: #74AF28;*/
}

/*ポップアップ修正*/


/*pl_千葉船橋店*/
.pl_chiba_fb_top {
  background-image: url(../img/planner/pc/planner_chibafunabashi.png);
  background-position: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
.pl_chiba_fb_top {
  background-image: url(../img/planner/mb/sotorie_planner_chiba_mb.png);
}}

/*pl_山梨甲斐店*/
.pl_yamanashi_yk_top {
  background-image: url(../img/planner/pc/planner_yamanashikai.png);
  background-position: cover;
  background-repeat: no-repeat;
  padding: 7em 0;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .pl_yamanashi_yk_top {
    background-image: url(../img/planner/mb/sotorie_planner_yamanashi_mb.png);
  }}

/*planner_renewここまで*/

/*トップバナー*/
.top_banner_piece {margin: .5em;}
/*トップバナーここまで*/

/*ビギナーズガイドbottom背景写真*/
.renew_bgcl {
  background: #000000;
}
.relieveTrouble2::after {
  opacity: 0.5;
  background: url(../img/plans/beginners_back.jpg) center/cover no-repeat;
}
/*ここまで*/

/*CTA表示ウィンドウ幅変更*/
@media screen and (max-width: 1100px){
  .floating-menu-btn {
      padding: 15px 30px 15px 10px;
      text-align: center;
      background: #f1b007;
      font-weight: 700;
  }
  @media screen and (max-width: 1100px){
  .floating-menu-btn {
      display: block;
      width: calc(100% - 60px);
  }
}
}
/*ここまで*/

/*プランナーサンプル写真_max3*/
.pl_smp_flex {
  display: flex;
  justify-content: center;
}

.member .pl_small_pic {
  width: 33%;
  z-index: 999;
}
/*ここまで*/

/*voiceクチコミ*/
.voice-review {text-align: center;}
/*ここまで*/

/*プランナーページ修正*/
.pl_st {padding: 9vw;}
@media screen and (max-width: 768px) {
.pl_st {padding: 35vw 13vw;}}
/*ここまで*/

/*地域LPトップ*/
.area_top_pic_saitama,.area_top_pic_ibaraki,.area_top_pic_nara,.area_top_pic_kyoto,.area_top_pic_hyogo {
  background: url(../img/area/sotorie_top_1.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 auto;
}
.area_top_pic_saitama .area_top_h h1,
.area_top_pic_ibaraki .area_top_h h1,
.area_top_pic_nara .area_top_h h1,
.area_top_pic_kyoto .area_top_h h1,
.area_top_pic_hyogo .area_top_h h1 {
  color: #333;
  padding: 50vw 0 2vw;
}
.area_top_pic_saitama .area_top_h h1::before,
.area_top_pic_ibaraki .area_top_h h1::before,
.area_top_pic_nara .area_top_h h1::before,
.area_top_pic_kyoto .area_top_h h1::before,
.area_top_pic_hyogo .area_top_h h1::before,
.area_top_pic_saitama .area_top_h h1::after,
.area_top_pic_ibaraki .area_top_h h1::after,
.area_top_pic_nara .area_top_h h1::after,
.area_top_pic_kyoto .area_top_h h1::after,
.area_top_pic_hyogo .area_top_h h1::after {
  border-top: 2px solid #333;
}

@media screen and (max-width: 768px) {
  .area_top_pic_saitama,.area_top_pic_ibaraki,.area_top_pic_nara,.area_top_pic_kyoto,.area_top_pic_hyogo {
    background: url(../img/area/sotorie_mb_2.jpg);
    background-size: cover;
    background-position: center;
  }
  .area_top_pic_saitama .area_top_h h1,
  .area_top_pic_ibaraki .area_top_h h1,
  .area_top_pic_nara .area_top_h h1,
  .area_top_pic_kyoto .area_top_h h1,
  .area_top_pic_hyogo .area_top_h h1  {
    padding: 78vw 0 1vw;
  }
}

/*地域LP対応エリア背景*/
.location_topic_ibaraki {
  background: url(../img/area/ibaraki/areaback_ibaraki.jpg);
  background-size: cover;
}
.location_topic_saitama {
  background: url(../img/area/saitama/areaback_saitama.jpg);
  background-size: cover;
  background-position: right;
}
.location_topic_nara {
  background: url(../img/area/nara/areaback_nara.jpg);
  background-size: cover;
  background-position: right;
}
.location_topic_kyoto {
  background: url(../img/area/kyoto/areaback_kyoto.jpg);
  background-size: cover;
  background-position: right;
}
.location_topic_hyogo {
  background: url(../img/area/hyogo/areaback_hyogo.jpg);
  background-size: cover;
  background-position: right;
}

/*kowaseruバナー*/
.dismantling-bn {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
.dismantling-bn li {margin: .5em;}
.dismantling-bn img {
  width: 400px;
  height: auto;
  vertical-align: bottom;
}
@media screen and (max-width: 768px) {
  .dismantling-bn {display: block;}
  .dismantling-bn li {margin: 0;}
  .dismantling-bn img {
    margin: 0 auto;
    width: 100%;
  }
}

/*加盟店様アンケート*/
/*.partners_voice_ttl {background-color: #e8d3ca;}*/
.partners_voice {position: relative;}
.partners_voice ul li {
  width: 90%;
  margin: 1em auto;
  /*line-height: 1.5em;*/
  font-size: 2vw;
  margin-bottom: 3em;
  background-color: #fcfcfc;
  border: solid .5px #bcbcbc;
  border-radius: 15px;
  padding: 15px;
}
.partners_voice ul li dl {
background: url(../img/partner/double_left2.svg) left top no-repeat,url(../img/partner/double_right2.svg) right bottom no-repeat;
background-size: 30px;
}
.partners_voice ul li dt {padding: 1em;}
.mark_voice {background-image: linear-gradient(transparent 70%,#f39800 0%)}
@media screen and (max-width: 768px) {
  .partners_voice ul li {
    width: 95%;
    font-size: 3vw;
    margin-bottom: 1.5em;
    padding: 12px;
  }
  .partners_voice ul li dl {background-size: 10px;}
}
.sotorie_voice{
  width: 90%;
  margin: 0 auto;
  padding: 2em;
  position: relative;
  border: double 3px #333;
}
.sotorie_voice p {
  position: absolute;
  top: 20%;
  left: 40%;
  font-size: 2.7vw;
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .sotorie_voice{
    width: 95%;
    padding: 1em;
  }
  .sotorie_voice p {
    top: 18%;
    font-size: 3vw;
  }
}

/*プランナー_renew*/
.pl_txt{width: 35%;}/*旧ページ*/
.pl_profile {
  max-width: 1080px;
  margin: 0 auto;
 }
 
 .staffList a {
  border-bottom: solid 1px #333;
  color: #333;
 }
 .staffList .txt_org {
  font-size: 1.2rem;
  font-weight: 800;
 }
 .pl_ast2{
  text-align: center;
  margin: 2em
 }
 .pl_prfBottom{color: #fff;}
 .pl_prf{font-size: 1.8em;}
 /*profile_table*/
 .staff_list {
  /*background-color: #333;*/
  border-collapse:  collapse;
  margin: 0 auto;
 }
 
 .staff_list th,.staff_list td {
  border: solid 1px #bbb;
  padding: 1.5em 8em;
  font-size: 1.3em;
  text-align: center;
 }
 
 .staff_list th,.staff_list tr:nth-child(odd) td {
  background-color: #f9f9f9;
 }
 
 .staff_list a {
  color: #333;
  border-bottom: solid 1px #bbb;
 }
 
 .stafflist {
  width: 1080px;
 }
 .pl_ast2{
  font-size: 1em!important;
  text-align: center;
  margin: 1em 0;
 }
 
 @media screen and (max-width: 768px) {
  .pl_txt{width: 100%;}/*旧ページ*/
  .staff_list {width: 98%;}
  .staff_list th,td {
   font-size: 1em;
   padding: .8em 5px ;
   font-size: 1.3em;
  }
 }
/*プランナー_renew*/

/*千葉大網白里LP*/
.area_top_lp_shirasato {
  background-image: url(../img/branch/top_pic/PC/d_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

.area_top_lp_shirasato .area_top_lp_5 h1 {max-width: 45vw;}

@media screen and (max-width: 768px) {
  .area_top_lp_shirasato {
    background-image: url(../img/branch/top_pic/mb/d_top_header_mb.jpg);
  }
}
/*千葉大網白里LP*/

/*プランナープロフィール_2308*/
.plintro_pic_mb,
.pl_branchPic_mb {
 display: none;
}
.intro_contents_wt {
 max-width: 1080px;
 width: 90%;
 margin: 0 auto;
}
.intro_contents_wt h1,
.intro_contents_wt h3 {
 margin-top: 5rem;
 font-size: 1.8rem;
 font-weight: 800;
 text-align: center;
}
.plintro_main .plintro_header .introtxt {
 margin: 2rem auto;
}
.plintro_main .plintro_header .introtxt dl dt {
 font-size: 1.2rem;
 font-weight: 800;
 margin-top: 3rem;
}
.plintro_main .plintro_header .introtxt dl dd {
 font-size: 1rem;
 margin-top: 1rem;
}
.intro_ast {
 font-size: .8rem!important;
 margin-top: 1rem;
}
.intro_container{
 position: relative;
 margin-top: 8rem;
}
.intro_container img{
 display: block;
 width: 500px;
 height: auto;
 margin: 0 auto;
 border-radius: 10%;
}
.intro_container h4 {
 position: absolute;
 top: 3%;
 left: 50%;
 transform: translateX(-50%);
 -webkit-transform: translateX(-50%);
 -ms-transform: translateX(-50%);
 text-align: center;
 font-size: 15px;
 font-weight: 800;
 line-height: 2rem;
}
.intro_container p {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
 width: 400px;
 font-size: 14px;
 line-height: 2rem;
 color: #333;
}
.plintro_main .plintro_header .pl_planner p {
 color: #333;
 font-weight: 800;
}
.list_mg {margin-top: 1rem;}
.plstore_list ul li {
 font-size: 1.2rem;
 text-align: center;
 margin: 2em auto;
}
.pl_introtxt p {
 margin-top: 1rem;
 font-size: 1rem;
}
.plstore_mg {margin-top: 5rem;}
.pl_prof {
 width: 700px;
 margin: 3rem auto;
}
.pl_pic_flex_s {
 display: flex;
 justify-content: flex-start;
 align-items: flex-start;
 margin: 1rem 0;
}
.pl_pic_s{
 width: 150px;
 height: auto;
}
.pl_name {
 margin-left: 1rem;
 width: 550px;
}
.pl_name dt,
.pl_txt dt{
 border-bottom: #9A9274 solid 1px;
 color: #9A9274;
 font-size: 1rem;
 font-weight: 800;
 margin: 1rem 0 1rem;
}
.pl_name dd,
.pl_txt dd{
 font-size: 1rem;
}
.pl_prof .pl_txt{
 margin: 0 auto;
 width: 100%;
}
.pl_snsIcon {
 text-align: left!important;
 padding: 0;
}
.prof_section {
 border-bottom: #333 solid .2px;
 margin: 3rem auto;
}
.about_st_last .pl_footer {
 color: #fff;
 font-size: 1rem;
 line-height: 1.5em;
}

@media screen and (max-width: 768px) {
 .plintro_pic_pc,
 .pl_branchPic_pc {
  display: none;
 }
 .plintro_pic_mb,
 .pl_branchPic_mb {
  display: block;
 }
 .intro_contents_wt h1,
 .intro_contents_wt h3 {
  margin-top: 2rem;
  font-size: 1.3rem;
  font-weight: 800;
  text-align: center;
 }
 .plintro_main .plintro_header .introtxt {
  margin: 2rem auto;
 }
 .plintro_main .plintro_header .introtxt dl dt {
  margin-top: 2rem;
  font-size: 1rem;
 }
 .plintro_main .plintro_header .introtxt dl dd,
 .pl_introtxt p {
  font-size: .9rem;
  margin-top: 1rem;
 }
 .intro_ast {
  font-size: .5rem;
  margin-top: 1rem;
 }
 .intro_container{
  margin-top: 3rem;
 }
 .intro_container img{
  width: 340px;
 }
 .intro_container h4 {
  width: 340px;
  font-size: .8rem;
  line-height: 2rem;
 }
 .intro_container p {
  width: 330px;
  font-size: .8rem;
  line-height: 1.5rem;
  margin: 1rem 0 1rem .2rem;
 }
 .plstore_list ul li {
  margin: 1.5em auto;
 }
 .pl_prof {
  width: 100%;
  margin: 0 auto;
 }
 .pl_pic_flex_s {align-items: center;}
 .pl_name {
  width: 50%;
 }
 .pl_pic_s {width: 50%;}
 .pl_name dt,
 .pl_name dd {font-size: 1.3rem;}
 .pl_name dt,
 .pl_txt dt
  {margin:1rem 0 0;}
 .smp_mgt{
  margin-top: 0;
  font-size: 1rem;
 }
}

/*プランナープロフィール_2308ここまで*/

/*20240627加盟店LP*/
/*福岡久留米、伊丹、岡山北、東灘、堺北野田LP*/
.area_top_lp_kurume,
.area_top_lp_itami,
.area_top_lp_okayamakita,
.area_top_lp_higashinada,
.area_top_lp_sakaikitanoda {
  background-image: url(../img/branch/top_pic/PC/b_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_kurume,
  .area_top_lp_itami,
  .area_top_lp_okayamakita,
  .area_top_lp_higashinada,
  .area_top_lp_sakaikitanoda {
    background-image: url(../img/branch/top_pic/mb/b_top_header_mb.jpg);
  }
}
/*福岡久留米、伊丹、岡山北、東灘、堺北野田LP*/

/*上信長野、仙台、大阪狭山、大阪八尾LP*/
.area_top_lp_joshin,
.area_top_lp_sendai,
.area_top_lp_osakasayama,
.area_top_lp_osakayao {
  background-image: url(../img/branch/top_pic/PC/d_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}
.mstore_nj_exp_img {
  background: url(../img/branch/nagano_joshin/nagano_back.webp);
  background-position: center;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .area_top_lp_joshin,
  .area_top_lp_sendai,
  .area_top_lp_osakasayama,
  .area_top_lp_osakayao {
    background-image: url(../img/branch/top_pic/mb/d_top_header_mb.jpg);
  }
}
/*上信長野、仙台、大阪狭山、大阪八尾LP*/

/*兵庫伊丹LP*/
.mstore_hi_exp_img {
  background: url(../img/branch/hyogo_itami/hyogo_back.webp);
  background-position: center;
  margin: 0 auto;
}
/*兵庫伊丹LP*/

/*広島中央、南河内、堺深阪LP*/
.area_top_lp_hiroshimachuo,
.area_top_lp_minamikawachi,
.area_top_lp_sakaifukasaka {
  background-image: url(../img/branch/top_pic/PC/f_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .area_top_lp_hiroshimachuo,
  .area_top_lp_minamikawachi,
  .area_top_lp_sakaifukasaka {
    background-image: url(../img/branch/top_pic/mb/f_top_header_mb.jpg);
  }
}
/*広島中央、南河内、堺深阪LP*/

/*宮城仙台LP*/
.mstore_ms_exp_img {
  background: url(../img/branch/miyagi_sendai/sendai.webp);
  background-position: center;
  margin: 0 auto;
}
/*宮城仙台LP*/

/*プランナー写真*/
.mstore_planner img {
  display: block;
  margin: 0 auto;
  max-width: 160px;
  width: 40%;
}
/*プランナー写真*/
/*香川丸亀LP背景*/
.mstore_mg_back {
  background-image: url(../img/branch/kagawa_marugame/cover_IMG_1323.webp) ;
  background-position: center;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .mstore_mg_back {
    background-image: url(../img/branch/kagawa_marugame/cover_IMG_1323.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}
/*香川丸亀LP背景*/
/*岡山北LP*/
.mstore_ok_exp_img {
  background: url(../img/branch/okayama_kita/areaback_okayama.webp);
  background-position: center;
  margin: 0 auto;
}
/*岡山北LP*/

/*大阪狭山LP*/
.mstore_osk_exp_img {
  background: url(../img/branch/osaka/osaka_topic_back.jpg);
  background-position: center;
  margin: 0 auto;
}
/*大阪狭山LP*/

/*福岡鳥飼、大阪松原、大阪岸和田、堺美原LP*/
.area_top_lp_fukuokatorikai,
.area_top_lp_matsubara,
.area_top_lp_kishiwada,
.area_top_lp_sakaimihara {
  background-image: url(../img/branch/top_pic/PC/e_top_header_pc.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .area_top_lp_fukuokatorikai,
  .area_top_lp_matsubara,
  .area_top_lp_kishiwada,
  .area_top_lp_sakaimihara {
    background-image: url(../img/branch/top_pic/mb/e_top_header_mb.jpg);
  }
}
/*福岡鳥飼、大阪松原、大阪岸和田、堺美原LP*/

/*神戸東灘LP*/
.mstore_khn_back {
  background-image: url(../img/branch/kobe_higashinada/kobehigashinada-meetingspace.webp) ;
  background-position: center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .mstore_khn_back {
    background-image: url(../img/branch/kobe_higashinada/kobehigashinada-meetingspace.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}
/*神戸東灘LP*/

/*大阪岸和田LP*/
.mstore_okw_back {
  background-image: url(../img/branch/osaka_kishiwada/IMG_0597.webp) ;
  background-position: center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .mstore_okw_back {
    background-image: url(../img/branch/osaka_kishiwada/const-004.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
  }
}

.mstore_okw_exp_img {
  background: url(../img/branch/osaka_kishiwada/areaback_osakakishiwada.webp);
  background-position: center;
  margin: 0 auto;
}
/*大阪岸和田LP*/
/*大阪八尾LP*/
.mstore_oy_back {
  background-image: url(../img/branch/osaka_yao/meeting-space.webp) ;
  background-position: center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .mstore_oy_back {
    background-image: url(../img/branch/osaka_yao/meeting-space.webp);
    background-repeat: no-repeat;
    background-position: left;
    background-size: cover;
  }
}

.mstore_oy_exp_img {
  background: url(../img/branch/osaka_yao/areaback_osakayao.webp);
  background-position: center;
  margin: 0 auto;
}
/*大阪八尾LP*/
