@charset "utf-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote::before, blockquote::after, q::before, q::after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/**/
/*==========================================
Common CSS
==========================================*/
*, *::before, *::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 62.5%; /*1rem = 10px*/
}
body {
  min-height: 100vh;
  position: relative;
  font-size: 1.6rem; /*16px*/
  line-height: 1.6;
  letter-spacing: 0.1rem;
  color: #000;
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
  font-weight: 400;
}
@media screen and (max-width:768px) {
  body {
    font-size: 1.4rem; /*14px*/
  }
}
img {
  width: 100%;
  vertical-align: middle;
}
body {
  animation: fadein 1s forwards;
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*-------------
font-size
---------------*/ 
:root {
  --fs40: 4rem;
  --fs33: 3.3rem;
  --fs30: 3rem;
  --fs24: 2.4rem;
  --fs20: 2rem;
  --fs18: 1.8rem;
  --fs16: 1.6rem;
}
@media screen and (max-width:768px) {
  :root {
    --fs40: 2.5rem;
    --fs33: 1.8rem;
    --fs30: 1.8rem;
    --fs24: 1.8rem;
    --fs20: 1.6rem;
    --fs18: 1.6rem;
    --fs16: 1.4rem;
  }
}

/*------------
font-family
-------------*/
:root{
	--serif: "Noto Serif JP", serif;
}

/*-------------
見出し
---------------*/
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}


/*-------------
column
---------------*/
.wrap1200 {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
.wrap1000 {
  max-width: 1000px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 768px) {
  .wrap1200, .wrap1000 {
    padding-left: 15px;
    padding-right: 15px;
  }
}
/*-------------
表示・非表示
---------------*/
@media screen and (min-width:769px) { /*PC*のみで表示*/
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
}
@media screen and (max-width:768px) { /*スマホのみで表示*/
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
}
/*-------------
link
---------------*/
a {
  text-decoration: none;
}
a:link {

  text-decoration: none;
}
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
  transition: .3s;
  opacity: .8;
}
a:active {
  text-decoration: none;
}
/*-------------
電話番号
---------------*/
@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
    white-space: nowrap;
  }
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    cursor: pointer;
    text-decoration: none;
    white-space: nowrap;
  }
  a[href^="tel:"]:hover {
    text-decoration: underline;
  }
}



/*==========================================
header
==========================================*/
header {
  display: flex;
  background: #fff;
  padding: 0 0 15px 12px;
}
header .higo {
  max-width: 190px;
}
header .code {
  font-size: 10px;
  margin: 12px 0 0 25px;
  text-align: center;
}
header .flex {
  width: 509px;
  display: flex;
  flex-direction: column;
  margin: 12px 0 0 25px;
}
header .flex .flex_top {
  display: flex;
}
header .kfg {
  max-width: 182.72px;
}
header .kagoshima {
  max-width: 127.5px;
}
header .flex .flex_bottom {
  display: flex;
  margin-top: 5px;
}
header .kfgs {
  max-width: 105px;
}
header .kyu_ds {
  max-width: 190.91px;
}
header .creation {
  max-width: 154px;
}
header .flex .flex_top div, header .flex .flex_bottom div {
  margin-right: 30px;
}
@media screen and (max-width:768px) {
  header {
    padding: 0 0 5px 5px;
  }
  header .higo {
    width: 98px;
  }
  header .flex {
    margin-left: 5px;
  }
  header .kfg {
    max-width: 27px;
    margin-left: 0px;
  }
}
/*----------------------------------------------------
アニメーション初期設定
------------------------------------------------------*/
.fadeIn {
  opacity: 0;
	transform: translateY(20px);
}

.fadeS {
  opacity: 0;
	transform: translateY(20px);
}


/*----------------------------------------------------
fv-anima
------------------------------------------------------*/
.fv-anima{
	background: #fff;
	position: fixed;
	z-index: 9999;
	inset:0;
	display: grid;
	place-items:center;
}

.loaded{
	opacity: 0;
	transition: 1s;
    visibility: hidden;
}

/*----------------------------------------------------
fv-sec
------------------------------------------------------*/
.fv-sec{
	background: #FCFFF5;
	position: relative;
}

.fv-sec__wrap{
	position: relative;
	padding-top: calc( 120 / 1920 * 100vw);
	padding-right: 2rem;
	padding-bottom: calc( 180 / 1920 * 100vw);
	padding-left: 2rem;
}

.fv-sec__headline{
	font-size: clamp(1.8rem, -0.333rem + 4.44vw, 3rem);
	margin: 0 auto;
	text-align: center;
	font-weight: 700;
}

.fv-sec__headline span{
	font-size: clamp(1.8rem, -0.333rem + 4.44vw, 3rem);
}


.fv-sec__question{
	aspect-ratio: 1 / 1;
	width: 100%;
	max-width: calc( 715 / 1920 * 100vw);
	max-height: calc( 715 / 1920 * 100vw);
	background: #E5F2C0;
	border-radius: 999px;
	display: grid;
	place-content:center;
	margin: calc( 100 / 1920 * 100vw) auto;
}

.img-fv-question{
	width: 100%;
	max-width: calc( 468 / 1920 * 100vw);
}

.dokidoki{   
animation-name:dokidoki;	/* アニメーション名の指定 */
animation-delay:0s;		/* アニメーションの開始時間指定 */
animation-duration: 3s;	/* アニメーション動作時間の指定 */
animation-timing-function: ease-in-out;
/* アニメーションの動き（徐々に早く徐々に遅く）*/
animation-iteration-count: infinite; /* アニメーションをループさせる */
}
@keyframes dokidoki {
0% {
transform: scale(1);
}
40% {
transform: scale(1);
}
50% {
transform: scale(1.05);
}
60% {
transform: scale(1);
}
100% {
transform: scale(1);
}
}


.fv-sec__comingsoon{
 max-width: calc( 348 / 1920 * 100vw);
 margin: 0 auto;
}


/*イラスト*/
.fv-sec__img-left-1{
	position: absolute;
	max-width: calc( 142 / 1920 * 100vw);
    top:calc( 458 / 1920 * 100vw);
	left:calc( 180 / 1920 * 100vw);
}

.fv-sec__img-left-2{
	position: absolute;
	max-width: calc( 155 / 1920 * 100vw);
	top:calc( 920 / 1920 * 100vw);
	left:calc( 245 / 1920 * 100vw);
}

.fv-sec__img-right-1{
	position: absolute;
	max-width: calc( 143 / 1920 * 100vw);
	top:calc( 447 / 1920 * 100vw);
	right:calc( 164 / 1920 * 100vw);
}

.fv-sec__img-right-2{
	position: absolute;
	max-width: calc( 149 / 1920 * 100vw);
	top:calc( 904 / 1920 * 100vw);
	right: calc( 282 / 1920 * 100vw);
}

@media screen and (max-width:768px) {
	
	
	
	.fv-sec__wrap{
	padding: 4rem 2rem;
		
			padding-top: calc( 40 / 375 * 100vw);
	padding-bottom: calc( 60 / 375 * 100vw);
}
.fv-sec__headline{
	width: calc( 274 / 375 * 100vw) ;
}
	.fv-sec__question{
	max-width: calc( 180 / 375 * 100vw);
	max-height: calc( 180 / 375 * 100vw);
	margin: calc( 30 / 375 * 100vw) auto;
}

.img-fv-question{
	max-width: calc( 130 / 375 * 100vw);
}


.fv-sec__comingsoon{
 max-width: calc( 142 / 375 * 100vw);
}


/*イラスト*/
.fv-sec__img-left-1{
	position: absolute;
	max-width: calc( 53 / 375 * 100vw);
    top:calc( 171 / 375 * 100vw);
	left:calc( 24 / 375 * 100vw);
}

.fv-sec__img-left-2{
	position: absolute;
	max-width: calc( 56 / 375 * 100vw);
	top:calc( 289 / 375 * 100vw);
	left:calc( 25 / 375 * 100vw);
}

.fv-sec__img-right-1{
	position: absolute;
	max-width: calc( 57 / 375 * 100vw);
	top:calc( 166 / 375 * 100vw);
	right:calc( 32 / 375 * 100vw);
}

.fv-sec__img-right-2{
	position: absolute;
	max-width: calc( 52 / 375 * 100vw);
	top:calc( 297 / 375 * 100vw);
	right: calc( 28 / 375 * 100vw);
}
}


/*----------------------------------------------------
access-sec
------------------------------------------------------*/
.access-sec{
	background: #E5F2C0;
	position: relative;
}

.access-sec__wrap{
	padding: calc( 100 / 1920 * 100vw) 2rem;
	max-width: 1200px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}

.access-sec__headline{
	max-width:  calc( 334 / 1920 * 100vw);
	position: absolute;
	top: calc( -30 / 1920 * 100vw);
	left: 2rem;
}

.access-sec__address{
	font-size: 1.8rem;
}

.access-sec__googlemap{
	aspect-ratio: 2 / 1;
	width: 100%;
	max-width: 1200px;
	margin-top: 2rem;
}

@media screen and (max-width:768px) {
.access-sec__wrap{
	padding: 4rem 2rem;
	}
	.access-sec__headline{
	max-width:  10rem;
	top: -1rem;
	left: 2rem;
}

.access-sec__address{
	font-size: 1.4rem;
}

}

/*----------------------------------------------------
footer
------------------------------------------------------*/
footer .txt-area {
  background: #3c4950;
  color: #fff;
  padding-top: 40px;
  padding-bottom: 40px;
}
footer .txt-area img.logo-higobank {
  max-width: 364px;
}
footer .txt-area p.privacy {
  text-decoration: underline;
  font-size: 1.4rem;
  margin-top: 30px;
}
footer .txt-area p.privacy a {
  color: #fff;
}
footer .txt-area p.bankcode {
  font-size: 1.4rem;
  margin-top: 10px;
}
footer .txt-area p.copyright {
  font-size: 1.2rem;
  margin-top: 20px;
}
@media screen and (max-width:768px) {
  footer .txt-area img.logo-higobank {
    width: 90%;
  }
}