@charset "utf-8";
/*===============================================
 *	ブラウザリセット
===============================================*/
@font-face {font-family: 'Noto Sans JP';font-style: bold;font-weight: 700;src: url('../fonts/NotoSansJP-Bold.woff2') format('woff2'),url('../fonts/NotoSansJP-Bold.woff') format('woff');font-display: swap;
}
@font-face {font-family: "Noto Sans JP";font-style: normal;font-weight: 500;src: url("../fonts/NotoSansJP-Medium.woff2") format("woff2"), url("../fonts/NotoSansJP-Medium.woff") format("woff");font-display: swap;
}
@font-face {font-family: 'Noto Sans JP';font-style: normal;font-weight: 400;src: url('../fonts/NotoSansJP-Regular.woff2') format('woff2'),url('../fonts/NotoSansJP-Regular.woff') format('woff');font-display: swap;
}
@font-face {font-family: 'Noto Serif JP';font-style: bold;font-weight: 700;src: url('../fonts/NotoSerifJP-Bold.woff2') format('woff2'),url('../fonts/NotoSerifJP-Bold.woff') format('woff');font-display: swap;
}
@font-face {font-family: 'Rounded Mplus 1c';font-style: bold;font-weight: 700;src: url("../fonts/MPLUSRounded1c-Bold.woff2") format("woff2"),url('../fonts/MPLUSRounded1c-Bold.woff') format('woff');font-display: swap;
}

/* a:hover img {filter: alpha(opacity=85);-moz-opacity: 0.85;opacity: 0.85;} */
/* html {overflow-x: hidden;overflow-y: scroll;} */
/*
body {font-size: 100%;font-family:'Noto Sans JP', "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;letter-spacing: 0;height: 100%;}
*/
body {font-size: 100%;font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', Meiryo, sans-serif;letter-spacing: 0;height: 100%; position: relative;overflow-x: hidden;}
table {font-size: inherit;}
select, input, textarea {font: 99% arial, helvetica, clean, sans-serif;}
pre, code {font: 115% monospace; *font-size: 100%;}
br {letter-spacing: normal;}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, input, textarea, p, blockquote, th, td {margin: 0;padding: 0;font-style: normal;font-weight: normal;}
address, em {font-style: normal;}
strong, th {font-weight: normal;}
table {border-collapse: collapse;border-spacing: 0;border: none;}
th, td {text-align: left;border: none;font-weight: normal;}
hr {display: none;}
h1, h2, h3, h4, h5, h6 {font-size: 100%;}
img, fieldset {border: 0;vertical-align: bottom;}
li {list-style-type: none;}
ul, ol, dl {margin: 0;list-style-position: outside;list-style-type: none;}
li, dt, dd {font-size: 100%;}
dt {font-weight: normal;}
a {text-decoration: underline;outline: none;}
a:hover {text-decoration: none; }
form, input {padding: 0;margin: 0;}
iframe{border:none;}
figure{margin: 0;}
img{height:auto;width:100%;}
p {line-height: 1.75;}
* {box-sizing: border-box;}
/* --------------このサイトオリジナル設定--------------- */
a {color: #333;outline: none;text-decoration:none;}
:root {
  --site-primary: #e77e84;
  --site-secondary: #77ca7a;
  --site-keycolor: #a799ce;
}
/*====================== clearFix ======================*/
.clearfix:before, .clearfix:after {content: "";display: block;overflow: hidden;}
.clearfix:after {clear: both;}
.clearfix {zoom: 1;}
/*=============================================== *
	パターン
===============================================*/
.column {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
.row {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;}
.row-rev {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}
.wrap {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-direction: row;flex-direction: row;-ms-flex-wrap: wrap;flex-wrap: wrap;}
.space-btw {-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
.space-around {-ms-flex-pack: distribute;justify-content: space-around;}
.js-center {-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
.al-center {-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.al-start {-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
.al-end {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end;}
.al-base {-webkit-box-align: baseline;-ms-flex-align: baseline;align-items: baseline;}

/*===============================================

 *	common

===============================================*/
html body {background: #fff;color: #2b2b2b;font-size: 16px;line-height: 1.5;-webkit-text-size-adjust: 100%;letter-spacing: 0.05em;}
em {font-weight: bold;}
sub{vertical-align: baseline;}
section{position: relative;}
.sp {display: none;}
.inner {max-width: 1120px;margin:0 auto;width: 100%;position: relative;}
.inner_sm {max-width: 1020px;margin:0 auto;width: 100%;position: relative;}
.txt-small{font-size: 14px;}
.center {text-align: center;}
.right {text-align: right;}
.txt-caution{font-size:12px;}
.magb{margin-bottom: 4%;}
.m_round {font-family: 'Rounded Mplus 1c'; font-weight: 700;}
.txt_primarycolor {color: var(--site-primary);}
.txt_secondarycolor {color: var(--site-secondary);}
.txt_keycolor {color: var(--site-keycolor);}
.txt_white {color: #fff;}
.txt_black {color: #0d0d0d;}
.bg_black{background:#0d0d0d; color:#fff;}
.bg_white {background-color: #fff; color: #0d0d0d;}
.bg_yellow{background: #f8f5e3;}
.bg_yellow::before{background:url(../img/common/bg_yellow_top.png)no-repeat center top;content: '';margin-top: -90px;width: 100%;height: 90px;display: inline-block;position: relative;z-index: -1;}
.bg_yellow::after{background:url(../img/common/bg_yellow_bottom.png)no-repeat center bottom;content: '';margin-bottom: -85px;width: 100%;height: 85px;display: inline-block;position: relative;z-index: -1;}
.bg_green{background: #e8f1d3;}
.bg_green::before{background:url(../img/common/bg_green_top.png)no-repeat center top;content: '';margin-top: -90px;width: 100%;height: 90px;display: inline-block;position: relative;z-index: -1;}
.bg_green::after{background:url(../img/common/bg_green_bottom.png)no-repeat center bottom;content: '';margin-bottom: -85px;width: 100%;height: 85px;display: inline-block;position: relative;z-index: -1;}
.lg_inner_space {padding: 100px 0;}
.md_inner_space {padding: 40px 50px 50px;}
.nobg_mb{padding-bottom: 100px;}
.bg_mb{padding-bottom: 100px;margin-bottom: 50px;}
.bg_mb .inner{margin:60px auto 0;}
.bg_mb .inner_sm{margin: 60px auto 0;}

.md_radius {
  border-radius: 30px;
  overflow: hidden;
}
.table_radius {
  border-radius: 15px;
  overflow: hidden;
}
.sm_radius {
  border-radius: 5px;
  overflow: hidden;
}
.md_under_radius {
  border-radius: 0 0 10px 10px;
}
.annotation_txt {
  color: #999;
  font-size: 14px;
}
.hover_white {
  display: inline-block;
  position: relative;
}
.hover_white::after {
  content: '';
  display: block;
  background: #fff;
  width: 100%;
  height: 100%;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.2s;
}
.hover_white:hover::after {
  opacity: 0.15;
}
.caution_content {
  margin: 30px 0 40px;
}
.caution_content div {
  background: #fbeff1;
  padding: 20px;
  margin-top: 20px;
}
.border_box{
  border:5px solid var(--site-primary);
  border-radius:10px;
  padding: 30px;
  margin-bottom: 50px;
}

.left_stamp::after{
  content: '';
  background: url(../img/common/foot_stamp_left.svg)no-repeat left bottom;
  width: 402px;
  height: 264px;
  position: absolute;
  right:80%;
  bottom: 0px;
}
.right_stamp::after{
  content: '';
  background: url(../img/common/foot_stamp_right.svg)no-repeat right bottom;
  width: 402px;
  height: 264px;
  position: absolute;
  left: 80%;
  bottom: 0px;
}

@media screen and (min-width: 1025px) {
  a[href^="tel:"] {pointer-events: none;}
}
@media only screen and (max-width: 1024px) {
  html body {font-size: 16px;}
  .inner {margin: 0 auto;max-width: initial;width: 94%;}
  .inner_sm {margin: 0 auto;max-width: initial;width: 94%;}
}
@media only screen and (max-width: 960px) {
  html body {font-size: 14px;}
  .lg_inner_space {padding: 5vw 0;}
  .md_inner_space {padding: 4vw 4vw;}
  .annotation_txt {font-size: 14px;}
  .left_stamp::after{content: none;}
  .right_stamp::after{content: none;}
}
@media only screen and (max-width: 768px) {
}
@media only screen and (max-width: 568px) {
  html {scroll-padding-top: 65px;}
  html body {font-size: 16px;}
  .inner {margin: 0 auto;width: 89.34vw;}
  .inner_sm {margin: 0 auto;width: 89.34vw;}
  .magb{margin-bottom: 8%;}
  .pc {display: none;}
  .sp {display: block;}
  .lg_inner_space {padding: 50px 0;}
  .md_inner_space {padding: 30px 5.3vw;}
  .sp_side_margin {margin: 0 -5.3vw;}
  .md_under_radius {border-radius: 0;}
  .caution_content div {padding: 10px;margin-top: 10px;}
  p {line-height: 1.8;}

  .bg_yellow::before{background-size: contain;margin-top:-15px;height: 60px;}
  .bg_yellow::after{background-size: cover;height: 16px;margin-bottom: -20px;}
  .bg_green::before{background-size: contain;margin-top:-15px;height: 60px;}
  .bg_green::after{background-size: cover;height: 16px;margin-bottom: -20px;}
  .nobg_mb{margin-bottom: 0;padding-bottom: 50px;}
  .bg_mb{margin-bottom: 0;padding-bottom: 50px;}
  .border_box{padding: 20px;margin-bottom: 30px;border: 3px solid var(--site-primary);}
  .bg_mb .inner{margin: 20px auto;}
  .bg_mb .inner_sm{margin: 20px auto;}
}

/*===============================================
 *	br
===============================================*/
@media screen and (min-width:1021px){
.br-pc{display:block;}
.br-tb{display:none;}
.br-sp{display:none;}
}
@media screen and (min-width:481px) and (max-width: 1020px) {
.br-pc{display:none;}
.br-tb{display:block;}
.br-sp{display:none;}
}
@media screen and (max-width: 480px) {
.br-pc{display:none;}
.br-tb{display:none;}
.br-sp{display:block;}
}
/*===============================================
 *	パンくず
===============================================*/
/*.breadcrumbs{
  font-size: 15px;
  color: #fff;
  font-weight: bold;
  padding:32px 0 25px ;
  background: #0d0d0d;
}
.breadcrumbs a {
  color: #fff;
}
.breadcrumbs i{
  margin: 0 6px;
}
.breadcrumbs .current-item{
  color: #999;
}
.breadcrumbs span{
  font-weight: bold;
}
@media only screen and (max-width: 960px) {

  .breadcrumbs{
    padding: 22px 0 15px;
  }
}
@media only screen and (max-width: 568px) {
  .breadcrumbs {
    display: none;
  }
}
/*===============================================
 *	ボタン
===============================================*/
.btn_wrapper {
  position: relative;
}
.btn a{
  border-radius: 100px;
  background: var(--site-primary);
  overflow: hidden;
  position: relative;
  display: block;
  text-align: center;
  box-shadow: 0px 6px 0px 0px #d77575;
}

.btn a::after{
  content: '';
  background: url(../img/top/arrow-right-white.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  width: 13px;
  height: 11px;
  top: 50%;
  right: 30px;
  -webkit-transform: translate(0px, -50%);
  transform: translate(0px, -50%);
}

.btn a{
  width: 100%;
  padding: 20px 0;
  font-size: 26px;
  color: #fff;
  font-weight: bold;
}
.btn a span{
  font-size: 20px;
  display: block;
  padding: 15px;
  position: relative;
  background-size: 20px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.05em;
  width: 100%;
  display: block;
  z-index: 2;
}

.btn a span::after {
  content: '';
  background: url(../img/common/arrow02.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  width: 34px;
  height: 34px;
  top: 50%;
  right: 19px;
  transform: translate(0px, -50%);
}
.btn:hover a {
  color: #fff;
  opacity: .7;
  transition: .5s ;
}


@media only screen and (max-width: 960px) {
  .btn_wrapper {
    margin-top: 4vw;
  }
  .btn a {
    font-size: 18px;
  }
  .btn_border a {
    font-size: 16px;
    padding: 1.2vw 0 1.4vw;
  }
}
@media only screen and (max-width: 568px) {
  .btn_wrapper {
    margin-top: 25px;
    z-index: 0;
  }
  .btn a{
    max-width: 100%;
    margin: 0 auto;
  }
  .btn a span{
    font-size: 16px;
    padding: 8px 5% 10px;
  }
  .btn a span::after {
    width: 30px;
    height: 30px;
    right: 15px;
    top: 52%;
  }
  .btn_border a span{
    padding: 8px 0 10px;
  }
  .btn_border a span::after {
    width: 8px;
    height: 16px;
  }
}
/*==================================
fade_up
===================================*/
/*
.box{
  opacity: 0;
}

.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(50px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}

/*===============================================
 *	見出し
===============================================*/

h2{
  font-size: 36px;
  text-align: center;
  margin-bottom: -40px;
}
h2 span{
  font-size: 22px;
}
.content-title span{
  font-size: 34px;
  line-height: 0.882;
  font-family: 'Noto Sans JP' ;

}
.content-title::first-letter{
  color: var(--site-primary);
}

.sub_title{
  font-size: clamp(36px, 2.9vw, 50px);
  font-style: italic;
  font-weight: bold;
  margin-bottom: 36px;
  margin-left: -7px;
}

@media only screen and (max-width: 1024px) {
  .sub_title{
    font-size: 30px;
  }
}
@media only screen and (max-width: 960px) {
  .content-title{
    font-size: 90px;
  }
  .sub_title{
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 568px) {
  h2{
    line-height: 1;
    margin-bottom: -30px;
    font-size: 24px;
  }
  h2 span{
    font-size: 18px;
  }
.content-title{
  font-size: 45px;
  line-height: 0.722;
  padding-top: 0px;
}
.content-title span{
  font-size: 17px;
  margin-left: -10px;
}
.sub_title{
  font-size: 26px;
  margin-left: -4px;
}
}


/*===============================================
 *	header
 ===============================================*/
 header{
  background: rgba(255, 255, 255, .8);
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
 }
 .header_wrap{
    max-width: 1120px;
    padding: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding:10px 0;
}
 .header_logo{
    width: 330px;
    height: 62px;
 }
 @media only screen and (max-width: 1024px) {
  .header_wrap{
    max-width: 94%;
  }
  .header_logo{
    max-width:25%;
    width: 100%;
    display:flex;
    align-items: center;
  }
 }
 @media only screen and (max-width: 960px) {
  .header_logo{
  }
 }
 @media only screen and (max-width: 568px) {
  .header_logo{
    height: auto;
    max-width: 65%;
  }
 }


     
 /*===============================================
 *	g-nav
 ===============================================*/
 nav{
  max-width: 690px;
}
nav ul{
  gap:20px;
  font-size: 16px;
}
nav ul li{
  font-weight: bold;
}
nav ul li a:hover{
  color: var(--site-secondary);
  transition: .3s;
}
nav ul li:last-child a{
  background-color: var(--site-secondary);
  color: #fff;
  padding: 18px 16px 18px 0;
  border-radius: 10px;
}
nav ul li:last-child a:hover{
  transition: .3s;
  opacity: .8;
}
nav ul li:last-child a span::before{
  content: '';
  background:url(../img/common/icon_mail.svg)no-repeat center center;
  background-size: contain;
  width: 23px;
  height: 18px;
  display: inline-block;
  padding:0 10px 0 15px;
  vertical-align: middle;
}

 .openbtn1,.nav-wrap-sp{
    display: none;
 }
 @media only screen and (max-width: 1024px) {

  nav ul{
    font-size: clamp(12px, 1.4vw, 16px);
    gap: 10px;
  }
 }
 @media only screen and (max-width: 960px) {
  nav ul{
    font-size: clamp(10px, 1.4vw, 14px);
  }

 }
 @media only screen and (max-width: 568px) {
  nav{
    display: none;
}
  /*========= ナビゲーションのためのCSS ===============*/
.sp_nav_logo{
  width: 55%;
  margin: 10px 0 20px 0;
}
.sp-nav-list{
  max-width: 94%;
  margin: 0 auto;
}
.sp-nav-list ul li{
  font-size: 16px;
  border-top: 1px solid var(--site-primary);
  
}
.sp-nav-list ul li:last-child a{
  background: var(--site-primary);
  border-radius: 10px;
  padding: 10px;
  margin: 10px 0 20px;
}
.sp-nav-list ul li:last-child a::after{
  background: url(../img/common/right_arrow_white.svg)no-repeat center top;
  
}
.sp-nav-list ul li:last-child img{
  width: 86%;
}

.sp-nav-list ul li a{
  color: #2b2b2b;
  position: relative;
  padding-left: 20px;
}
.sp-nav-list ul li a::after{
  background: url(../img/common/right_arrow.svg)no-repeat center top;
  content: '';
  width: 12px;
  height: 11px;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.nav-wrap-sp{
  position:fixed;
  z-index: 999;
  top:0;
  right: -120%;
  width:100%;
  height:100%;
  background:#f5f5f5;
  transition: all 0.6s;
  display: block;
}

.nav-wrap-sp.panelactive{
  right: 0;
  overflow-y: scroll;
}

.nav-wrap-sp.panelactive .sp-nav-list{
  z-index: 9999; 
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.nav-wrap-sp ul {
  z-index: 999;
}

.nav-wrap-sp li{
list-style: none;
font-size: 20px;
}

.nav-wrap-sp li a{
color: var(--site-primary);
padding:20px 0 20px;
display: block;
text-transform: uppercase;
font-weight: bold;
line-height: 1.25;
}

.sp-nav-logo{
  width: 13%;
  padding-left: 10px;
 }
 .sp_nav_contact .tel{
  width: 53%;
 }
 .sp_nav_contact .mail{
  margin-left: 10px;
  background: var(--site-secondary);
  padding:5px 10px;
  width: 25%;
  box-sizing: border-box;
 }
.sp_nav_contact{
  border: 3px solid var(--site-secondary);
  box-sizing: border-box;
}
.nav_tel{
  color: var(--site-secondary);
  font-size: 23px;
  font-weight: bold;
}

.nav_tel span{
  position: relative;
  display: inline-block;
  padding-left: 30px;
}
.nav_tel span::before{
  position: absolute;
  width: 26px;
  height: 26px;
  top: 5px;
  left: 0;
  content: '';
  background: url(../img/common/icon-tel-green.svg) no-repeat center center;

}
.nav_tel span em{
  font-size: 12px;
  background: var(--site-secondary);
  border-radius: 10px;
  color: #fff;
  display: block;
  text-align: center;
  margin-left: -30px;
  }



/*========= ボタンのためのCSS ===============*/
.openbtn1{
  display: block;
  position:fixed;
  z-index: 9999;/*ボタンを最前面に*/
  top:10px;
  right: 15px;
  cursor: pointer;
  width: 45px;
  height:45px;
  box-sizing: border-box;
}

/*×に変化*/  
.openbtn1 span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 49%;
  transform: translateX(-50%);
  height: 3px;
  border-radius: 3px;
  background-color: var(--site-primary);
  width: 30px;
}

.openbtn1 span:nth-of-type(1) {
  top:10px; 
}

.openbtn1 span:nth-of-type(2) {
top:20px;
}
.openbtn1 span:nth-of-type(3) {
  top:30px;
  }

.openbtn1.active{
  border-color: var(--site-primary);
}
.openbtn1.active span:nth-of-type(1) {
  top: 14px;
  left: 28.5%;
  transform: translateY(6px) rotate(-45deg);
  background:var(--site-primary);
  width: 18px;
}

.openbtn1.active span:nth-of-type(2){
  display: none;
}
.openbtn1.active span:nth-of-type(3){
  top: 26px;
  left: 28.5%;
  transform: translateY(-6px) rotate(45deg);
  background:var(--site-primary);
  width: 18px;
}
 
}
    
 /*===============================================
 *	MV
 ===============================================*/
.mv{
  background: url(../img/common/mv_bg.png) no-repeat top center;
  background-size: cover;
  width: 100%;
  position: relative;
}
.mv_point{
  max-width: 636px;
  margin: 0 auto;
  padding-top: 18.5%;
}
.mv_point ul{
  color: #fff;
  font-weight: bold;
  position: relative;
  display: flex;
}
.mv_point ul li:nth-child(odd){
  background: url(../img/common/point_bg_green.png) no-repeat top center;
  background-size: 100% auto;
  max-width: 122px;
}
.mv_point ul li:nth-child(even){
  background: url(../img/common/point_bg_pink.png) no-repeat top center;
  background-size: 100% auto;
  max-width: 120px;
}
.mv_point ul li{
  position: absolute;
  font-weight: bold;
  text-align: center;
  width: 100%;
}
.mv_point ul li img{
  margin-bottom: 5px;
}
.mv_point ul li:first-child{
  padding:20px 0 26px;
  font-size:12px;
  left: -76px;
  top:76px;
}
.mv_point ul li:first-child img{
  width: 34px;
  height: 43px;
}
.mv_point ul li:nth-child(2){
  padding:15px 0 20px;
  font-size:12px;
  left: 48px;
  top:-26px;
}
.mv_point ul li:nth-child(2) img{
  width: 43px;
  height: 49px;
}
.mv_point ul li:nth-child(3){
  padding:30px 0 29px;
  font-size: 19px;
  left: 190px;
  top:-50px;
}
.mv_point ul li:nth-child(3) img{
  width: 41px;
  height: 34px;
}
.mv_point ul li:nth-child(4){
  padding:24px 0 21px;
  font-size: 13px;
  right:188px;
  top:-50px;
}
.mv_point ul li:nth-child(4) img{
  width: 57px;
  height: 40px;
}
.mv_point ul li:nth-child(5){
  padding:13px 0 23px;
  font-size: 14px; 
  right: 45px;
  top:-22px; 
}
.mv_point ul li:nth-child(5) img{
  width: 50px;
  height: 46px;
}
.mv_point ul li:nth-child(6){
  padding:20px 0 16px;
  font-size: 14px;
  right: -79px ;
  top:78px; 
}
.mv_point ul li:nth-child(6) img{
  width: 45px;
  height: 45px;
}
.mv_point ul li p{
  line-height: 1.3;
  font-weight: bold;
}
.mv-txt{
  background: url(../img/common/mv_txt_bg.png) no-repeat center top;
  background-size: 100% auto;
  max-width: 635px;
  padding-bottom: 50px;
}
h1{
  font-size: 40px;
  text-align: center;
  font-family: 'm_round';
  color: var(--site-primary);
  padding-top: 75px;
  line-height: 1.2;
}

.mv-txt img{
  max-width: 456px;
  height: auto;
  margin: 10px auto;
  display: block;
}
.mv-txt .txt_bg{
  text-align: center;
  color: #fff;
  background-color: var(--site-primary);
  font-weight: bold;
  border-radius: 50px;
  font-size: 22px;
  padding: 5px 0;
  max-width: 458px;
  margin: 0 auto;
  font-weight: bold;
}
.mv-txt .txt_bg p{
  font-weight: bold;
}
.mv-bottom{
  width: 100%;
  margin-top: 37px;
}
.mv_fam{
  max-width: 761px;
  width: 68%;
}
.mv_bnr{
  margin:-2% 0 0;
  max-width: 340px;
  width: 30%;
}
.mv_bnr::before{
  content: '';
  background:url(../img/common/mv_bnr_com.png)no-repeat;
  background-size: contain;
  max-width: 250px;
  width: 100%;
  height: 64px;
  display:block;
  margin: 0 auto -5px;
  position: relative;
}
.mv_bnr a:hover{
  transition: .5s ;
  opacity: .8;
}

 @media only screen and (max-width: 1024px) {
  
 }
 
 @media only screen and (max-width: 960px) {
  .mv_point{
    padding-top: 27.5%;
  }
  .mv-txt{
    max-width: 90%;
    margin: 0 auto;
  }
  .mv_point ul li:first-child{
    left: -1%;
  }
  .mv_point ul li:nth-child(2){
    padding: 20px 0 20px;
    left: 12%;
  }
  .mv_point ul li:nth-child(3){
    left: 32%;
  }
  .mv_point ul li:nth-child(4){
    right: 28.5%;
  }
  .mv_point ul li:nth-child(5){
    right: 10%;
  }
  
  .mv_point ul li:nth-child(6){
    right: -1%;
  }

  h1{
    font-size: clamp(28px, 4vw, 36px);
  }
  .mv-txt img{
    max-width:70% ;
  }
  .mv-txt .txt_bg{
    max-width: 73%;
  }
  .txt_bg p{
    font-size: clamp(14px, 3vw, 20px);
    padding: 0px 10px;}


}
 @media only screen and (max-width: 568px) {
  .mv{
    background: url(../img/common/mv_bg_sp.png)no-repeat center top;
    background-size: cover;
  }
  .mv_point{
    padding-top: 50%;
    margin-bottom: 30%;
  }
  .mv-txt{
    max-width: 100%;
    background: url(../img/common/mv_txt_bg_sp.png)no-repeat center;
    background-size: contain;
  }
  .mv_point ul li:nth-child(odd){
    max-width: 104px;
  }
  .mv_point ul li:nth-child(even){
    max-width: 102px;
  }
.mv_point ul li:first-child{
  left: -1%;
  top:-60px;
  padding: 20px 0 ;
}
.mv_point ul li:nth-child(2){
  left: 35%;
  top: -60px;
  padding: 20px 0;
}
.mv_point ul li:nth-child(3){
  left: 70%;
  top: -60px;
  font-size: 16px;
  padding: 30px 0;
}
.mv_point ul li:nth-child(4){
  right: 70%;
  top: 240px;
  padding: 18px 0 26px;
  font-size: 12px;
}
.mv_point ul li:nth-child(5){
  right:35%;
  top: 240px;
  font-size: 12px;
  padding: 18px 0 26px;
}

.mv_point ul li:nth-child(6){
  right:-1%;
  top: 240px;
  font-size: 12px;
  padding: 18px 0 26px;
}
.mv_point ul li:first-child img{
  width: 25px;
  height: 31px;
}
.mv_point ul li:nth-child(2) img{
  width: 28px;
  height: 33px;
}
.mv_point ul li:nth-child(3) img{
  width: 26px;
  height: 23px;
}
.mv_point ul li:nth-child(4) img{
  width: 32px;
  height: 30px;
}
.mv_point ul li:nth-child(5) img{
  width: 32px;
  height: 30px;
}

.mv_point ul li:nth-child(6) img{
  width: 32px;
  height: 32px;
}


h1{
  font-size: clamp(28px, 3vw, 32px);
  padding-top:15%;
}
.mv-txt img{
  max-width: 80%;
  margin-top: 5px;
}
.mv-txt .txt_bg{
  max-width: 82%;
  padding: 2px 0;
}
.txt_bg p{
  font-size: 13px;
}

.mv_fam{
  margin-left: -4%;
  margin-top: 20px
}
.mv_bnr{
  margin-right: -4%;
  width: 40%;
  max-width: 134px;
  position: relative;
}

.mv_bnr::before{
  content: '';
  background:url(../img/common/mv_bnr_com_sp.png)no-repeat;
  background-size: contain;
  width: 100%;
  height: 31px;
  position: absolute;
  left: -136px;
  top: 0;
}


}

 /*===============================================
 *	footer
 ===============================================*/
.fix-footer{
  background-color: var(--site-secondary);
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 5;
  display: none;
}
.fix-footer_inner{
  max-width: 1120px;
  margin: 0 auto;
  padding: 10px 0;
}
.tel{
  margin-left: auto;
}
.mail{
  margin-left: 25px;
}
.fix-footer .mail:hover{
  opacity: .8;
}
 footer{
  background: var(--site-primary);
  margin-bottom: 114px;
 }
 .footer_inner{
  max-width: 1120px;
  margin: 0px auto;
  padding: 30px 0;
 }
 footer p, footer a{
  color: #fff;
 }
footer ul li{
  margin-left: 30px;
}
 .copy{
  font-size: 16px;
 }
 .copy a{
  color: #fff;
 }

 .fix_tel{
  font-size: 42px;
  letter-spacing: 0;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  position: relative;
  padding-left: 60px;
 }
 .fix_tel::before{
  content: '';
  background: url(../img/common/icon-tel.svg)no-repeat center center;
  background-size: contain;
  width: 50px;
  height: 49px;
  position: absolute;
  left: 0px;
  top: 50%;
  transform: translateY(-50%);
}
  .fix_tel span{
    font-size: 18px;
    display: block;
  }

 @media only screen and (max-width: 1024px) {
  footer{
    margin-bottom: 10%;
  }
  .footer_inner,.fix-footer_inner{
    max-width: 94%;
  }
 }
 @media only screen and (max-width: 960px) {
  .footer_nav{
    display: block;
    margin: 40px 0 50px;
   }
   .footer_nav .sub_nav{
    margin-top:30px ;
   }

  .fix-logo{
    width: 35%;
  }
  .fix-footer_inner{
    max-width: 94%;
  }
  .tel{
    margin-left: auto;
    width: 30%;
  }
  .fix-footer .fix_tel{
    font-size: 23px;
  }
   .fix-footer .fix_tel span{
    font-size: 12px;
   }
  .mail{
    width: 20%;
  }
  footer ul li{
    font-size: clamp(14px, 1.6vw, 16px);
  }
  .copy{
    font-size: clamp(12px, 1.6vw, 16px);
  }
 }
 @media only screen and (max-width: 568px) {
  footer{
    margin-bottom: 66px;
  }
  .footer_inner{
    display: block;
    padding: 20px 0 10px;
  }
  .footer_inner ul{
    margin-bottom: 40px;
    justify-content: center;
  }
  footer ul li:first-child{
    margin-left: 0;
  }
  .copy{
    font-size: 11.5px;
    text-align: center;
    padding-bottom: 0px;
   }
   .fix-footer{
    background: #fff;
    z-index: auto;
   }
   .fix-logo{
    width: 13%;
   }
   .fix-logo a{
    padding-left: 10px;
   }
   .fix-footer .tel{
    width: 54%;
   }
   .fix_tel{
    font-size: 24px;
    padding-left: 40px;
    color: var(--site-secondary);
    display: flex;
    flex-direction: column-reverse;
   }
   .fix_tel span{
    font-size: 12px;
    background: var(--site-secondary);
    color: #fff;
    border-radius: 6px;
    margin-left: -30px;
    text-align: center;
    padding: 2px 0 3px;
   }
   .fix_tel::before{
    width: 26px;
    height: 26px;
    top: 13px;
    left: 10px;
    background: url(../img/common/icon-tel-green.svg) no-repeat center center;
  }
   .fix-footer .mail{
    margin-left: 10px;
    background: var(--site-secondary);
    padding:5px 10px;
    width: 25%;
    box-sizing: border-box;
   }
   .fix-footer_inner{
    max-width: 100%;
    padding: 0;
    border: 3px solid var(--site-secondary);
    box-sizing: border-box;
   }

}

