@charset "utf-8";
/* 
Theme Name: genova_tpl
File: style.css
Author: Genova Design
Author URL: https://genova.co.jp/
Description: Genova 2021 Wordpress template
Version: 1.0
*/


/*-----------------------------------------------------------
■ 1 Html
-----------------------------------------------------------*/

/*--------------------------------------
	general
--------------------------------------*/

/*reset*/
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,figure,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:center}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}

html {
	font-size: 62.5%;
}

body {
	position: relative;
	font-family: 'Meiryo', 'メイリオ', Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
	font-size: 1.6em;
	letter-spacing: .1em;
	line-height: 2em;
	color: #626262;
  background: #F9F4EF;
	-webkit-text-size-adjust: 100%;
}

body {
  color: #626262;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
}

*, *::before, *::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

a {
	vertical-align: middle;
	text-decoration: none;
	color: #333;
	-moz-transition-duration: 0.7s;
	-o-transition-duration: 0.7s;
	-webkit-transition-duration: 0.7s;
	transition-duration: 0.7s;
}

a[href^="tel:"] {
	pointer-events: none;
	cursor: text;
}

a:focus, *:focus {
	outline: none;
}

a:hover img {
	opacity: 0.8;
}

img {
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

p {
	margin-bottom: 20px;
}

p:last-child {
	margin-bottom: 0;
}

table {
	width: 100%;
}

strong {
	font-weight: bold;
}


@media screen and (max-width: 767px) {
    body {
      font-size: 14px;
    }
	a[href^="tel:"] {
		pointer-events: auto;
		cursor: pointer;
	}

	.auto_height {
		height: auto!important;
	}

}


/*--------------------------------------
	icons
--------------------------------------*/

@font-face {
	font-family: 'icomoon';
	src:  url('./libs/icomoon/icomoon.eot');
	src:  url('../libs/icomoon/icomoon.eot#iefix') format('embedded-opentype'),
		url('./libs/icomoon/icomoon.ttf') format('truetype'),
		url('./libs/icomoon/icomoon.woff') format('woff'),
		url('./libs/icomoon/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

[class*='icon-']:not([class*='eicon-']):not([class*='elementor-icon-'])::before {
	display: inline-block;
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	vertical-align: baseline;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-home::before {content: "\e90b";}
.icon-blog::before {content: "\e900";}
.icon-category::before {content: "\e901";}
.icon-check::before {content: "\e902";}
.icon-checked::before {content: "\e903";}
.icon-down::before {content: "\e904";}
.icon-facebook::before {content: "\e905";}
.icon-google::before {content: "\e906";}
.icon-line::before {content: "\e907";}
.icon-twitter::before {content: "\e908";}
.icon-arrow02::before {content: "\e909";}
.icon-arrow01::before {content: "\e910";}
.icon-search::before {content: "\e911";}
.icon-tag::before {content: "\e912";}
.icon-checkbox-unchecked::before {content: "\ea53";}
.icon-checkbox-checked::before {content: "\ea52";}
.radio-unchecked::before {content: "\ea56";}
.radio-checked::before {content: "\ea54";}
.radio-checked2::before {content: "\ea55";}


/*--------------------------------------
	shortcuts
--------------------------------------*/

/*margin */
.mb0 { margin-bottom: 0px!important; }
.mb5 { margin-bottom: 5px!important; }
.mb10 { margin-bottom: 10px!important; }
.mb15 { margin-bottom: 15px!important; }
.mb20 { margin-bottom: 20px!important; }
.mb25 { margin-bottom: 25px!important; }
.mb30 { margin-bottom: 30px!important; }
.mb35 { margin-bottom: 35px!important; }
.mb40 { margin-bottom: 40px!important; }
.mb45 { margin-bottom: 45px!important; }
.mb50 { margin-bottom: 50px!important; }
.mb55 { margin-bottom: 55px!important; }
.mb60 { margin-bottom: 60px!important; }
.mb65 { margin-bottom: 65px!important; }
.mb70 { margin-bottom: 70px!important; }
.mb75 { margin-bottom: 75px!important; }
.mb80 { margin-bottom: 80px!important; }
.mb85 { margin-bottom: 85px!important; }
.mb90 { margin-bottom: 90px!important; }
.mb95 { margin-bottom: 95px!important; }
.mb100 { margin-bottom: 100px!important; }

/* float */
.fr {
	float: right!important;
}

.fl {
	float: left!important;
}

/* clear */
.clearfix {
	*zoom: 1;
}

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

.cl {
	clear: both!important;
}

/* text indent */
.textHide {
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

/* text-align */
.tac {
	text-align: center!important;
}

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

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

/* font-weight */
.fb {
	font-weight: bold!important;
}

.half {
	display: inline-block;
}

/*Pc/sp change*/
.sp {
	display: none !important;
}

.mb {
	display: none;
}

@media screen and (max-width: 767px) {

	.pc {
		display: none!important;
	}

	.sp {
		display: block!important;
	}
}

@media screen and (max-width: 480px) {

	.mb {
		display: block;
	}

	.pcm {
		display: none;
	}

}

.btn-style-1 .elementor-button {
  min-width: 280px;
  padding: 15px 75px 16px 25px;
  background: #908A84;
  border-radius: 999px;
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: left;
  position: relative;
}
.btn-style-1 .elementor-button:hover::after {
  right: 18px;
}
.btn-style-1 .elementor-button::after {
  content: "";
  width: 20px;
  height: 100%;
  display: block;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Ccircle cx='10' cy='10' r='10' fill='white'/%3E%3Cpath d='M15 10L7.5 14.3301L7.5 5.66987L15 10Z' fill='%23908A84'/%3E%3C/svg%3E") center/contain no-repeat;
  position: absolute;
  top: 0;
  right: 22px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.btn-style-1 .elementor-button-content-wrapper {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

@media screen and (max-width: 767px) {
  .btn-style-1 .elementor-button {
    width: 100%;
    padding: 16px 25px;
    font-size: 16px;
  }
}

/*--------------------------------------
	container / wrapper
--------------------------------------*/

.container {
	width: 100%;
	max-width: 1140px;
	padding: 0 30px;
	margin: 0 auto;
}

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

#wrapper {
	height: 100%;
  padding-top: 100px;
  overflow: hidden;
}

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

@media (max-width: 767px) {

  #wrapper {
    padding-top: 80px;
  }

	.container {
		padding: 0 20px;
	}

}


/*--------------------------------------
	text color
--------------------------------------*/

.txt_color {
	color: #94C789;
}

.txt_link {
	vertical-align: top;
	text-decoration: underline!important;
	font-weight: bold;
	color: #94C789!important;
}

.txt_link:hover {
	text-decoration: none!important;
}

.catch_title {
	text-align: center;
	font-size: 22px;
	line-height: 1.6;
	letter-spacing: 0.15em;
	color: #FFAEA2;
}


/*-----------------------------------------------------------
■ 2 Header
-----------------------------------------------------------*/

/*--------------------------------------
	general
--------------------------------------*/

#header {
	z-index: 1000;
	position: fixed;
	top: 0;
	left: 10px;
  right: 10px;
	background: #fff;
  box-shadow: 0px 4px 14px 0px rgba(135, 135, 135, 0.15);
  border-radius: 0px 0px 20px 20px;
	-moz-transition-duration: 0.7s;
	-o-transition-duration: 0.7s;
	-webkit-transition-duration: 0.7s;
	transition-duration: 0.7s;
}

/* container */
.header__main-container, 
.header__sub-container {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}

.header__main-container {
	padding: 0px 30px;
}

.header__sub-container {
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: 465px;
}

@media screen and (max-width: 1279px) {
  .header__main-container {
    padding: 0px 20px;
  }
  .header__sub-container {
    flex-basis: 200px;
  }
}

@media screen and (max-width: 767px) {
  #header {
    border-radius: 0;
    left: 0;
    right: 0;
  }
}

/* menu */
.menu-text {
	color: #626262;
}

/* sub menu */
header .g-nav > li > .up-menu sub {
	color: #94C789;
}


@media screen and (max-width: 767px) {
  #header {
    height: 66px;
    border-radius: 0;
    position: absolute;
  }
	/* container */
	.header__main-container {
    height: 66px;
		padding: 0px;
    
	}

	.header__sub-container {
		width: 100%;
	    flex-grow: initial;
		flex-shrink: initial;
		flex-basis: initial;
	}

}


/*--------------------------------------
	logo
--------------------------------------*/

header .header__logo {
	
}
header .header__logo a {
  line-height: 1;
}

header .header__logo a.pc {
  display: none !important;
}

header .header__logo img {
	width: 100%;
	max-width: 465px;
}

@media screen and (max-width: 1279px) {
  header .header__logo a.sp {
    display: block !important;
  }
}

@media screen and (max-width: 767px) {
  header .header__logo {
    padding: 0 20px;
  }
  header .header__logo img {
    max-width: 217px;
  }
}

@media screen and (min-width: 768px) {
  header .header__logo a {
    display: block;
    line-height: 1;
  }
}

@media screen and (min-width: 1280px) {
  header .header__logo a.pc {
    display: block !important;
  }
}


/*--------------------------------------
	nav
--------------------------------------*/

header .header__nav nav ol {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: flex-start;
	align-items: flex-start;
  column-gap: 20px;
}

header .header__nav nav ol > li .up-menu {
	position: relative;
	width: auto;
	vertical-align: middle;
	text-align: center;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.2;
	white-space: pre;
	cursor: pointer;
	-moz-transition-duration: 0.7s;
	-o-transition-duration: 0.7s;
	-webkit-transition-duration: 0.7s;
	transition-duration: 0.7s;
}

header .header__nav nav ol > li > .up-menu a,
header .header__nav nav ol > li > .up-menu span {
	display: block;
	padding: 25px 15px 28px;
	margin: 0 auto;
}

header .header__nav nav ol > li > .up-menu sub {
	display: block;
	padding-top: 10px;
  color: #F4B6C9;
  font-weight: 900;
	font-size: 9px;
  line-height: 1;
	letter-spacing: 0.1em;
  text-transform: uppercase;
}

.sub-menu {
  display: grid;
  grid-template-columns: auto auto;
  column-gap: 20px;
	position: absolute;
	top: calc(100% + 10px);
	left: 50%;
	width: 360px;
	height: auto;
	padding: 20px;
	border-radius: 0.5em;
	visibility: hidden;
	opacity: 0;
	background: #fff;
  border-radius: 10px;
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-moz-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
}

.sub-menu a {
  display: block;
  padding: 10px 0 10px 15px;
  border-bottom: 1px solid transparent;
  font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0;
  position: relative;
}
.sub-menu a::before {
  content: '';
  border: 4px solid transparent;
  border-left: 8px solid #908A84;
  border-right: 0;
  position: absolute;
  left: 0;
  top: 15px;
  transition: .3s;
}
.sub-menu a:hover {
  color: #ECA0A8 !important;
  border-bottom-color: #ECA0A8;
}
.sub-menu a:hover::before {
  border-left-color: #ECA0A8;
}

.menu-item-has-children {
	position: relative;
}

.menu-item-has-children:hover .sub-menu {
	visibility: visible;
	opacity: 1;
}

.menu-item-has-children .up-menu::after {
  content: "";
  position: absolute;
  top: 43px;
  right: 0;
  width: 7px;
  height: 7px;
  border-bottom: 2px solid #F4B6C9;
  border-left: 2px solid #F4B6C9;
  margin-top: -14px;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}

.menu-item-has-children.hover .up-menu::after {
  margin-top: -3px;
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}


@media screen and (max-width: 767px) {
  #g_nav {
    width: 100%;
    height: 100vh;
    display: none;
    box-sizing: border-box;
    background: #F9F4EF;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 97;
    overflow: auto;
  }

  #g_nav .logo {
    height: 66px;
    display: flex !important;
    align-items: center;
    margin-bottom: 0;
    padding: 0 20px;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 0px 4px 14px 0px rgba(135, 135, 135, 0.1);
  }

  #g_nav .logo img {
    width: 217px;
  }

	header .header__nav {
		width: 100%;
    padding: 30px 30px 60px;
    box-sizing: border-box;
	}

	header .header__nav nav ol {
		-webkit-flex-direction: column;
		flex-direction: column; 
	}

	header .header__nav nav ol > li {
		position: relative;
		width: 100%;
		border-left: none;
		border-bottom: 1px solid #EBE4D7;
	}

	header .header__nav nav ol > li > .up-menu {
		display: block;
		width: 100%;
		height: auto;
		padding: 20px 0;
		text-align: left;
		font-size: 16px;
	}

	header .header__nav nav ol > li > .up-menu:hover {
		
	}

	header .header__nav nav ol > li > .up-menu a,
	header .header__nav nav ol > li > .up-menu span {
		padding: 0px;
	}

	header .header__nav nav ol > li > .up-menu span {
		margin: 0;
	}

	header .header__nav nav ol > li > span {
		position: relative;
	}

	header .header__nav nav ol > li > .up-menu sub {
		display: none;
	}

	header .header__nav nav ol > li + li {
		margin-left: 0px;
	}

	header .header__nav nav ol > li ul li {
		
	}

	.sub-menu {
		width: 100%;
	}

	header .header__nav nav ol > li .sub-menu a {
		padding: 10px 0px 10px 10px;
		text-align: left;
	}

	header .header__nav nav ol > li .sub-menu a::before {
    border-width: 3px;
    border-left-width: 6px;
  }

	header .header__nav nav ol > li .sub-menu a:hover {
		text-decoration: none;
	}

	header .header__nav nav ol > li dl {
		position: relative;
		top: 0;
		padding: 0;
		background: none;
	}

	header .header__nav nav ol > li dl li {
		padding-left: 0;
	}

	header .header__nav nav ol > li dl li::before {
		display: none;
	}

	header .header__nav nav ol > li dt {
		display: none;
	}

	header .header__nav nav ol > li .sub-menu {
		position: inherit;
		display: none;
		top: 0;
	}

	header .header__nav nav ol > li.hover .sub-menu {
		display: grid;
		visibility: initial;
		opacity: 1;
	}

	header .header__nav nav ol > li .sub-menu li {
		display: block;
	}

	header .header__nav nav ol > li .sub-menu li:first-child {
		border-top: 0px;
	}

	header .header__nav nav ol > li .sub-menu a {
		display: block;
	}

	header .header__nav nav ol > li.hover > span + dl,  
	header .header_menu .header__nav nav ol > li > span:hover + dl {
		opacity: 1;
		pointer-events: auto;
	}
  .menu-item-has-children .up-menu::after {
    top: 38px;
    right: 5px;
    border-color: #A39081;
  }
  .menu-item-has-children.hover .up-menu::after {
    top: 31px;
  }
}


@media screen and (min-width: 768px) {

  header .header__nav nav ol > li {
    position: relative;
  }

  header .header__nav nav ol > li::before {
    content: '';
    width: 100%;
    height: 5px;
    background: #F4B6C9;
    border-radius: 3px 3px 0px 0px;
    bottom: 0;
    position: absolute;
    left: 0;
    opacity: 0;
    visibility: visible;
    transition: .3s;
  }

  header .header__nav nav ol > li:hover::before {
    opacity: 1;
    visibility: visible;
  }

	header .header__nav nav ol > li dl {
		pointer-events: none;
	}

	header .header__nav nav ol .sub-menu a:hover {
		color: #94C789;
		-moz-transition-duration: 0.3s;
		-o-transition-duration: 0.3s;
		-webkit-transition-duration: 0.3s;
		transition-duration: 0.3s;
	}
}


@media screen and (max-width: 1024px) and (min-width: 768px) {
  header .header__nav nav ol {
    column-gap: 0;
  }
  header .header__nav nav ol > li .up-menu {
    font-size: 14px;
  }
	/* header .header__nav nav ol > li .up-menu {
		font-size: 12px;
	} */
}


/*--------------------------------------
	toggle menu
--------------------------------------*/

header .toggle-menu {
	display: none;
}

@media screen and (max-width: 767px) {
	header .toggle-menu {
    width: 66px;
    height: 66px;
		display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #A7DAB5;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99;
	}

  .toggle-menu__trigger,
  .toggle-menu__trigger span {
    display: inline-block;
    -moz-transition: all .4s;
    -o-transition: all .4s;
    -webkit-transition: all .4s;
    transition: all .4s;
  }

  .toggle-menu__trigger {
    position: relative;
    display: block;
    width: 24px;
    height: 19px;
    padding: 0;
    border: 0px;
    margin: 0;
    text-align: center;
    background: none;
  }

  .toggle-menu__trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #fff;
  }

  .toggle-menu__trigger span:nth-of-type(1) {
    top: 0;
  }

  .toggle-menu__trigger span:nth-of-type(2) {
    top: 8px;
  }

  .toggle-menu__trigger span:nth-of-type(3) {
    width: 60%;
    bottom: 0;
  }

  .toggle-menu.active .toggle-menu__trigger {
    height: 23px;
  }

  .toggle-menu.active .toggle-menu__trigger span:nth-of-type(1) {
    -moz-transform: translateY(10px) rotate(-35deg);
    -ms-transform: translateY(10px) rotate(-35deg);
    -webkit-transform: translateY(10px) rotate(-35deg);
    transform: translateY(10px) rotate(-35deg);
  }

  .toggle-menu.active .toggle-menu__trigger span:nth-of-type(2) {
    opacity: 0;
  }

  .toggle-menu.active .toggle-menu__trigger span:nth-of-type(3) {
    width: 100%;
    -moz-transform: translateY(-10px) rotate(35deg);
    -ms-transform: translateY(-10px) rotate(35deg);
    -webkit-transform: translateY(-10px) rotate(35deg);
    transform: translateY(-10px) rotate(35deg);
  }
}


/*-----------------------------------------------------------
■ 3 Footer
-----------------------------------------------------------*/
#footer {
  padding: 75px 0 123px;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 1.5;
  position: relative;
  z-index: 5;
}
#footer .logo {
  margin-top: 80px;
}
#footer .logo img {
  width: 283px;
}
#footer .sitemap a:hover {
  text-decoration: underline;
}
#footer .bnrbox {
  display: flex;
  column-gap: 14px;
}
#footer .bnrbox p {
  margin-bottom: 0;
}
#footer .set {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 34px;
}
#footer .set p {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  #footer {
    padding: 30px 0 120px;
  }
  #footer .logo {
    margin-top: 50px;
    text-align: center;
  }
  #footer .logo img {
    width: 242px;
  }
  #footer .sitemap {
    margin-top: 15px;
  }
  #footer .bnrbox {
    flex-wrap: wrap;
    column-gap: 8px;
    row-gap: 8px;
  }
  #footer .bnrbox .bnr {
    width: calc(50% - 4px);
    &:first-child {
      width: 100%;
    }
  }
  #footer .set {
    display: block;
    margin-top: 20px;
    text-align: center;
  }
  #footer .set .gr2 {
    margin-top: 10px;
  }
}

/*--------------------------------------
	fixed box
--------------------------------------*/

.fixed-box {
	position: fixed;
	right: 0px;
	bottom: 0;
	display: block;
	width: 100%;
	height: auto;
	z-index: 1;
	-moz-transition: all 0.5s ease 0s;
	-o-transition: all 0.5s ease 0s;
	-webkit-transition: all 0.5s ease 0s;
	transition: all 0.5s ease 0s;
}

.fixed-box .fixed-banner__pc ul, 
.fixed-box .fixed-banner__sp ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.fixed-banner__sp {
	display: none;
}

.fixed-box img {
  width: auto;
  height: auto;
	max-width: 100%;
  max-height: 56px;
	vertical-align: middle;
}
 
@media screen and (max-width: 767px) {

	.fixed-banner__sp {
		display: block;
	}

	.fixed-banner__pc {
		display: none;
	}

  .fixed-box img {
    max-height: 73px;
  }

  .fixed-banner__sp ul li {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1;
  }

  .fixed-banner__sp ul li:nth-child(1) {
    background: #F4B6C9;
  }

  .fixed-banner__sp ul li:nth-child(2) {
    background: #3D8DCC;
  }

  .fixed-banner__sp ul li:nth-child(3) {
    flex: 0 0 max-content;
  }

	#footer{
		padding-bottom: 20%;
	}

}

@media screen and (min-width: 768px) {
  .fixed-box .open-ai:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}

/*-----------------------------------------------------------
■ 3 Other Common Elements
-----------------------------------------------------------*/

/*--------------------------------------
	conversion section
--------------------------------------*/

.conversion {
	padding: 85px 0 85px;
	background: #F4B6C9;
  border-radius: 100px 100px 0px 0px;
  color: #fff;
  position: relative;
  z-index: 2;
}
.conversion::before {
  content: '';
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #F5C3D3, #F5C3D3 125px, transparent 125px, transparent) 0 0 / 250px;
  border-radius: 100px 100px 0px 0px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.conversion h2.ttl {
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.conversion .tel {
  display: flex;
  justify-content: center;
  padding: 30px;
  box-sizing: border-box;
  background: #fff;
  border-radius: 10px;
}
.conversion .tel dl {
  padding-left: 60px;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: 700;
  position: relative;
}
.conversion .tel dl::before {
  content: '';
  width: 44px;
  height: 50px;
  display: block;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 50' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.96547 34.8062C13.6948 42.115 19.2331 46.2379 25.9173 48.112C32.6015 49.986 36.803 49.2364 39.2857 48.2994C41.7684 47.1749 43.2962 43.4268 43.4872 41.5528C43.6782 39.6787 44.2511 37.4299 40.6226 35.3684C36.994 33.3069 33.7474 31.4329 31.6466 32.1825C29.5459 33.1195 28.209 34.4314 27.4451 35.3684C26.6812 36.118 25.1534 36.3054 23.4346 35.181C21.7158 34.0566 14.6497 28.247 13.3128 24.3115C11.976 20.376 12.7399 20.0012 13.8858 17.7523C15.0316 15.6908 17.5143 14.9412 17.8963 12.5049C18.2782 10.0687 17.8963 8.56944 16.1775 5.19614C14.4587 1.82285 11.2121 -0.613424 9.11133 0.136197C6.62863 0.698413 2.23616 4.25911 1.28127 6.32057C0.135408 8.38203 -0.628506 14.9412 0.708334 19.6264C1.47224 24.4989 3.95495 29.9336 7.96547 34.8062Z' fill='%23F4B6C9'/%3E%3C/svg%3E") center / contain no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.conversion .tel dl .cl-pink {
  color: #F4B6C9;
}
.conversion .tel dl dt {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0.08em;
}
.conversion .tel dl dd {
  margin-top: 5px;
  font-weight: 500;
  font-size: 43px;
  line-height: 1;
  letter-spacing: 0.05em;
}
.conversion .set {
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: 30px;
}
.conversion .set .gr1 {
  width: calc(100% - 490px);
  display: flex;
  align-items: center;
  column-gap: 35px;  
}
.conversion .set .gr1 .img {
  width: 162px;
  margin-bottom: 0;
}
.conversion .set .gr1 .txt {
  margin: 20px 0 0;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 0.1em;
}
.conversion .set .gr2 {
  width: 460px;
}

@media screen and (max-width: 1280px) { 
  .conversion .set {
    display: block;
  }
  .conversion .set .gr1 {
    width: 100%;
    .img {
      width: 162px;
    }
    .txt {
      margin: 20px 0 0;
    }
  }
  .conversion .set .gr2 {
    width: 100%;
    margin-top: 30px;
  }
}

@media screen and (max-width: 767px) {
  .conversion {
    padding: 1px 0 30px;
    border-radius: 40px 40px 0px 0px;
  }
  .conversion::before {
    background: linear-gradient(to right, #F5C3D3, #F5C3D3 35px, transparent 35px, transparent) 0 0 / 70px;
    border-radius: 40px 40px 0px 0px;
  }
  .conversion h2.ttl {
    font-size: 28px;
  }
  .conversion .tel {
    padding: 20px;
  }
  .conversion .tel dl {
    padding-left: 50px;
  }
  .conversion .tel dl::before {
    content: '';
    width: 34px;
    height: 39px;
  }
  .conversion .tel dl dt {
    font-size: 14.2px;
    line-height: 20px;
  }
  .conversion .tel dl dd {
    margin-top: 5px;
    font-size: 36px;
  }
  .conversion .set .gr1 {
    display: block;
    text-align: center;
  }
  .conversion .set .gr1 .img {
    width: 110px;
    margin: -21px auto 23px;
  }
  .conversion .set .gr1 .txt {
    margin-top: 10px;
    font-size: 16px;
  }
  .conversion .set .gr2 {
    margin-top: 20px;
  }
}

/*-----------------------------------------------------------
■ 4 Elementor overwrite
-----------------------------------------------------------*/

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
	padding: 0!important;
}

.elementor img {
	width: auto!important;
}

.elementor-image-box-wrapper {
	display: block!important;
}

.elementor-widget-image-box .elementor-image-box-content {
	text-align: left!important;
}

.elementor-image-box-title {
	padding: 10px 20px;
	margin-bottom: 20px;
	overflow: hidden;
	font-size: 18px;
	line-height: 1.4;
	color: #fff;
	background: #3dc2b7;
}

.elementor-image-box-img {
	float: right;
	display: block!important;
	width: 30%!important;
	margin: 0 0 10px 20px!important;
	text-align: center;
	text-align: right;
}

.img_l .elementor-image-box-img {
	float: left;
	margin: 0 20px 10px 0!important;
}

.auto_width .elementor-image-box-img {
	width: auto!important;
}

.elementor-widget-image .elementor-image > a,
.elementor-widget-image .elementor-image figure > a {
	display: inline-block!important;
}

.elementor-widget-image .elementor-image > a:hover img,
.elementor-widget-image .elementor-image figure > a:hover img {
	opacity: 0.8!important;
}

.elementor-slideshow__header {
	width: calc(100% - 50px)!important;
	padding-left: 0em!important;
	padding-right: 0em!important;
}

.elementor-text-editor ul {
 	list-style: inside;
}

@media screen and (max-width: 767px) {

	.elementor-image-box-img,
	.img_l .elementor-image-box-img {
		float: none;
		width: 100%!important;
		margin: 0 auto 20px!important;
		text-align: center;
	}

}