@charset "UTF-8";
.animation{
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;

}

.keyframe6 {
  animation-name: poyopoyo;
}

@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}


/*
		テキストの太字
 ----------------------------------------------------------------------*/
.bold{ font-weight: bold; }
.normal{ font-weight: normal; }
.italic{ font-weight: italic; }

/*
		テキストのサイズ
 ----------------------------------------------------------------------*/
.fs05{ font-size: 0.5em; }
.fs06{ font-size: 0.6em; }
.fs07{ font-size: 0.7em; }
.fs08{ font-size: 0.8em; }
.fs085{ font-size: 0.85em; }
.fs09{ font-size: 0.9em; }
.fs10{ font-size: 1.0em; }
.fs11{ font-size: 1.1em; }
.fs12{ font-size: 1.2em; }
.fs13{ font-size: 1.3em; }
.fs14{ font-size: 1.4em; }
.fs15{ font-size: 1.5em; }
.fs16{ font-size: 1.6em; }
.fs17{ font-size: 1.7em; }
.fs18{ font-size: 1.8em; }
.fs19{ font-size: 1.9em; }
.fs20{ font-size: 2em; }
.fs21{ font-size: 2.1em; }
.fs22{ font-size: 2.2em; }
.fs23{ font-size: 2.3em; }
.fs24{ font-size: 2.4em; }
.fs25{ font-size: 2.5em; }


/*
		マージンの位置配置
 ----------------------------------------------------------------------*/



.m0{ margin: 0px!important; }				/*全margin無し*/
.mt-0{ margin-top: 0px!important; }			/*上marginが0px*/
.mr-0{ margin-right: 0px!important; }		/*右marginが0px*/
.mb-0{ margin-bottom: 0px!important; }		/*下marginが0px*/
.ml-0{ margin-left: 0px!important; }		/*左marginが0px*/

.m1{ margin: 1px!important; }
.mt-1{ margin-top: 1px!important; }	
.mr-1{ margin-right: 1px!important; }
.mb-1{ margin-bottom: 1px!important; }
.ml-1{ margin-left: 1px!important; }

.m2{ margin: 2px!important; }
.mt-2{ margin-top: 2px!important; }	
.mr-2{ margin-right: 2px!important; }
.mb-2{ margin-bottom: 2px!important; }
.ml-2{ margin-left: 2px!important; }

.m3{ margin: 3px!important; }
.mt-3{ margin-top: 3px!important; }	
.mr-3{ margin-right: 3px!important; }
.mb-3{ margin-bottom: 3px!important; }
.ml-3{ margin-left: 3px!important; }

.m4{ margin: 4px!important; }
.mt-4{ margin-top: 4px!important; }	
.mr-4{ margin-right: 4px!important; }
.mb-4{ margin-bottom: 4px!important; }
.ml-4{ margin-left: 4px!important; }

.m5{ margin: 5px!important; }
.mt-5{ margin-top: 5px!important; }	
.mr-5{ margin-right: 5px!important; }
.mb-5{ margin-bottom: 5px!important; }
.ml-5{ margin-left: 5px!important; }

.m6{ margin: 6px!important; }
.mt-6{ margin-top: 6px!important; }	
.mr-6{ margin-right: 6px!important; }
.mb-6{ margin-bottom: 6px!important; }
.ml-6{ margin-left: 6px!important; }

.m7{ margin: 7px!important; }
.mt-7{ margin-top: 7px!important; }	
.mr-7{ margin-right: 7px!important; }
.mb-7{ margin-bottom: 7px!important; }
.ml-7{ margin-left: 7px!important; }

.m8{ margin: 8px!important; }
.mt-8{ margin-top: 8px!important; }	
.mr-8{ margin-right: 8px!important; }
.mb-8{ margin-bottom: 8px!important; }
.ml-8{ margin-left: 8px!important; }

.m9{ margin: 9px!important; }
.mt-9{ margin-top: 9px!important; }	
.mr-9{ margin-right: 9px!important; }
.mb-9{ margin-bottom: 9px!important; }
.ml-9{ margin-left: 9px!important; }

.m10{ margin: 10px!important; }
.mt-10{ margin-top: 10px!important; }
.mr-10{ margin-right: 10px!important; }
.mb-10{ margin-bottom: 10px!important; }
.ml-10{ margin-left: 10px!important; }

.m15{ margin: 15px!important; }
.mt-15{ margin-top: 15px!important; }
.mr-15{ margin-right: 15px!important; }
.mb-15{ margin-bottom: 15px!important; }
.ml-15{ margin-left: 15px!important; }

.m20{ margin: 20px!important; }
.mt-20{ margin-top: 20px!important; }
.mr-20{ margin-right: 20px!important; }
.mb-20{ margin-bottom: 20px!important; }
.ml-20{ margin-left: 20px!important; }

.m25{ margin: 25px!important; }
.mt-25{ margin-top: 25px!important; }
.mr-25{ margin-right: 25px!important; }
.mb-25{ margin-bottom: 25px!important; }
.ml-25{ margin-left: 25px!important; }

.m30{ margin: 30px!important; }
.mt-30{ margin-top: 30px!important; }
.mr-30{ margin-right: 30px!important; }
.mb-30{ margin-bottom: 30px!important; }
.ml-30{ margin-left: 30px!important; }

.m40{ margin: 40px!important; }
.mt-40{ margin-top: 40px!important; }
.mr-40{ margin-right: 40px!important; }
.mb-40{ margin-bottom: 40px!important; }
.ml-40{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.mt-50{ margin-top: 50px!important; }
.mr-50{ margin-right: 50px!important; }
.mb-50{ margin-bottom: 50px!important; }
.ml-50{ margin-left: 50px!important; }

/*------------------------------------------------------------
		padding
-------------------------------------------------------------*/

.p0{ padding: 0px!important; }				/*全padding無し*/
.pt-0{ padding-top: 0px!important; }		/*上paddingが0px*/
.pr-0{ padding-right: 0px!important; }		/*右paddingが0px*/
.pb-0{ padding-bottom: 0px!important; }		/*下paddingが0px*/
.pl-0{ padding-left: 0px!important; }		/*左paddingが0px*/

.p1{ padding: 1px!important; }
.pt-1{ padding-top: 1px!important; }
.pr-1{ padding-right: 1px!important; }
.pb-1{ padding-bottom: 1px!important; }
.pl-1{ padding-left: 1px!important; }

.p2{ padding: 2px!important; }
.pt-2{ padding-top: 2px!important; }
.pr-2{ padding-right: 2px!important; }
.pb-2{ padding-bottom: 2px!important; }
.pl-2{ padding-left: 2px!important; }

.p3{ padding: 3px!important; }
.pt-3{ padding-top: 3px!important; }
.pr-3{ padding-right: 3px!important; }
.pb-3{ padding-bottom: 3px!important; }
.pl-3{ padding-left: 3px!important; }

.p4{ padding: 4px!important; }
.pt-4{ padding-top: 4px!important; }
.pr-4{ padding-right: 4px!important; }
.pb-4{ padding-bottom: 4px!important; }
.pl-4{ padding-left: 4px!important; }

.p5{ padding: 5px!important; }
.pt-5{ padding-top: 5px!important; }
.pr-5{ padding-right: 5px!important; }
.pb-5{ padding-bottom: 5px!important; }
.pl-5{ padding-left: 5px!important; }

.p6{ padding: 6px!important; }
.pt-6{ padding-top: 6px!important; }
.pr-6{ padding-right: 6px!important; }
.pb-6{ padding-bottom: 6px!important; }
.pl-6{ padding-left: 6px!important; }

.p7{ padding: 7px!important; }
.pt-7{ padding-top: 7px!important; }
.pr-7{ padding-right: 7px!important; }
.pb-7{ padding-bottom: 7px!important; }
.pl-7{ padding-left: 7px!important; }

.p8{ padding: 8px!important; }
.pt-8{ padding-top: 8px!important; }
.pr-8{ padding-right: 8px!important; }
.pb-8{ padding-bottom: 8px!important; }
.pl-8{ padding-left: 8px!important; }

.p9{ padding: 9px!important; }
.pt-9{ padding-top: 9px!important; }
.pr-9{ padding-right: 9px!important; }
.pb-9{ padding-bottom: 9px!important; }
.pl-9{ padding-left: 9px!important; }

.p10{ padding: 10px!important; }
.pt-10{ padding-top: 10px!important; }
.pr-10{ padding-right: 10px!important; }
.pb-10{ padding-bottom: 10px!important; }
.pl-10{ padding-left: 10px!important; }

.p15{ padding: 15px!important; }
.pt-15{ padding-top: 15px!important; }
.pr-15{ padding-right: 15px!important; }
.pb-15{ padding-bottom: 15px!important; }
.pl-15{ padding-left: 15px!important; }

.p20{ padding: 20px!important; }
.pt-20{ padding-top: 20px!important; }
.pr-20{ padding-right: 20px!important; }
.pb-20{ padding-bottom: 20px!important; }
.pl-20{ padding-left: 20px!important; }

.p30{ padding: 30px!important; }
.pt-30{ padding-top: 30px!important; }
.pr-30{ padding-right: 30px!important; }
.pb-30{ padding-bottom: 30px!important; }
.pl-30{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.pt-40{ padding-top: 40px!important; }
.pr-40{ padding-right: 40px!important; }
.pb-40{ padding-bottom: 40px!important; }
.pl-40{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.pt-50{ padding-top: 50px!important; }
.pr-50{ padding-right: 50px!important; }
.pb-50{ padding-bottom: 50px!important; }
.pl-50{ padding-left: 50px!important; }

/*
.bound {
  width: 100%;
  height: 100%;
  background: #000;
  animation: bound 3s infinite;
}

@keyframes bound {
  0% { transform:translateY(0) }
  5% { transform:translateY(0) }
  10% { transform:translateY(0) }
  20% { transform:translateY(-10px) }
  25% { transform:translateY(0) }
  30% { transform:translateY(-5px) }
  50% { transform:translateY(0) }
  100% { transform:translateY(0) }
}
*/

.cbox-formal07v2 {
  margin: 15px auto 2rem;
  line-height: 1.5em;
  position: relative;
  z-index: 0;
  padding: 30px;
  background-color: #fafafa;
  z-index: 1;
}
.cbox-formal07v2::before {
  content: '';
  display: block;
  position: absolute;
  top: 6px;
  right: 6px;
  bottom: 6px;
  left: 6px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NC4wNiA0NC4wNiI+PGRlZnM+PHN0eWxlPi5he2ZpbGw6I2M2YzFhMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImEiIGQ9Ik0xMC4yOCw0N2ExLjYsMS42LDAsMCwwLDEuMzEtMS4yMWMuMzEtMS0xLjM3LTIuMjYtMS42NC0uOWEuNi42LDAsMCwwLDEuMiwwYy43OCwyLTIuMTEsMi40NS0yLjY2LjU0YTEwLjU5LDEwLjU5LDAsMCwxLS4yNy01LjA3LDcuOCw3LjgsMCwwLDAsMS45LDIuMjNjMSwuODcsMywuOTIsMy41Ni0uNDIuMzQtLjg5LjExLTIuNTMtMS0yLjUyYS44Ni44NiwwLDAsMC0uNzguOTQuODcuODcsMCwwLDAsMS42NS4yNmMuMzQsMi4zMi0yLjMxLDIuMzktMy4zOC44N0E5Ljc2LDkuNzYsMCwwLDEsOC40NiwzOWExNC4yNywxNC4yNywwLDAsMSwyLjI0LTVBMTUuODgsMTUuODgsMCwwLDAsMTIsMjNjLS4zOC0uNjItLjgtLjM2LS44NC4xNywwLC4yLjEuNTguMTEuNzhhMTcuMDUsMTcuMDUsMCwwLDEtMS4xMSw4LjE1QzkuNTksMzQsOC40MSwzNS43NCw4LDM3LjY5YTIyLjYsMjIuNiwwLDAsMSwuMjktMTIuOTNjMS40OS00LjUxLDMtOS40LDIuNzMtMTQuMTEsNC42MS4yMiw5LjM4LTEuMjksMTMuNzgtMi43NWEyMi42LDIyLjYsMCwwLDEsMTIuOTMtLjI5Yy0xLjk1LjQ1LTMuNjUsMS42My01LjU3LDIuMjNBMTcuMDUsMTcuMDUsMCwwLDEsMjQsMTFjLS4yLDAtLjU4LS4wOC0uNzgtLjEtLjUzLDAtLjc5LjQ1LS4xNy44M2ExNS44OCwxNS44OCwwLDAsMCwxMS4wNi0xLjMzLDE0LjI3LDE0LjI3LDAsMCwxLDUtMi4yNCwxMCwxMCwwLDAsMSwyLjcsMS42N2MxLjUyLDEuMDcsMS40NSwzLjcyLS44NywzLjM5YS44Ny44NywwLDAsMC0uMjYtMS42Ni44Ni44NiwwLDAsMC0uOTQuNzhjMCwxLjE1LDEuNjMsMS4zOSwyLjUyLDEsMS4zNC0uNTQsMS4yOS0yLjU2LjQyLTMuNTZhNy44LDcuOCwwLDAsMC0yLjIzLTEuOSwxMC41OSwxMC41OSwwLDAsMSw1LjA3LjI3YzEuOTEuNTUsMS40NCwzLjQ0LS41NCwyLjY2YS42LjYsMCwwLDAsMC0xLjJjLTEuMzYuMjctLjA5LDIsLjksMS42NEExLjYsMS42LDAsMCwwLDQ3LDkuOTNjLjM4LTMuMzQtNS41My0yLjg4LTcuNjUtMi42M0EyMSwyMSwwLDAsMCwyNS4yMiw2QzIwLjUzLDcuMjUsMTUuOTEsOS4yNiwxMSw5LjE3aC0uMTlhMTQuNjIsMTQuNjIsMCwwLDAtMi01LjU0LDEuNiwxLjYsMCwwLDAtLjMtLjQyYy0uNzMtLjUyLS44MS0uMDgtLjc2LjQ2LjIxLjU2LjUyLDEuMTIuNzIsMS42OWExNi41MSwxNi41MSwwLDAsMSwuOTQsMy43MiwxNi40OCwxNi40OCwwLDAsMS00LTFjLS41Ny0uMi0xLjEzLS41MS0xLjY5LS43Mi0uNTQsMC0xLDAtLjQ2Ljc2YTEuNiwxLjYsMCwwLDAsLjQyLjNBMTQuNywxNC43LDAsMCwwLDkuNSwxMC41MWMwLC4xNywwLC4zMywwLC40OS4wOSw0LjkxLTEuOTIsOS41My0zLjE1LDE0LjIyQTIxLDIxLDAsMCwwLDcuNjUsMzkuMzZDNy40LDQxLjQ4LDYuOTQsNDcuMzksMTAuMjgsNDdaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMi45NyAtMi45NykiLz48L3N2Zz4="), url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NC4wNiA0NC4wNiI+PGRlZnM+PHN0eWxlPi5he2ZpbGw6I2M2YzFhMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImEiIGQ9Ik0zLDEwLjI4QTEuNiwxLjYsMCwwLDAsNC4yLDExLjU5YzEsLjMxLDIuMjYtMS4zNy45LTEuNjRhLjYuNiwwLDAsMCwwLDEuMmMtMiwuNzgtMi40NS0yLjExLS41NC0yLjY2YTEwLjU5LDEwLjU5LDAsMCwxLDUuMDctLjI3LDcuOCw3LjgsMCwwLDAtMi4yMywxLjljLS44NywxLS45MiwzLC40MiwzLjU2Ljg5LjM0LDIuNTMuMTEsMi41Mi0xYS44Ni44NiwwLDAsMC0uOTQtLjc4Ljg3Ljg3LDAsMCwwLS4yNiwxLjY1Yy0yLjMyLjM0LTIuMzktMi4zMS0uODctMy4zOEE5Ljc2LDkuNzYsMCwwLDEsMTEsOC40NmExNC4yNywxNC4yNywwLDAsMSw1LDIuMjRBMTUuODgsMTUuODgsMCwwLDAsMjcsMTJjLjYyLS4zOC4zNi0uOC0uMTctLjg0LS4yLDAtLjU4LjEtLjc4LjExYTE3LjA1LDE3LjA1LDAsMCwxLTguMTUtMS4xMUMxNiw5LjU5LDE0LjI2LDguNDEsMTIuMzEsOGEyMi42LDIyLjYsMCwwLDEsMTIuOTMuMjljNC41MSwxLjQ5LDkuNCwzLDE0LjExLDIuNzMtLjIyLDQuNjEsMS4yOSw5LjM4LDIuNzUsMTMuNzhhMjIuNiwyMi42LDAsMCwxLC4yOSwxMi45M2MtLjQ1LTEuOTUtMS42My0zLjY1LTIuMjMtNS41N0ExNy4wNSwxNy4wNSwwLDAsMSwzOS4wNSwyNGMwLS4yLjA4LS41OC4xLS43OCwwLS41My0uNDUtLjc5LS44My0uMTdhMTUuODgsMTUuODgsMCwwLDAsMS4zMywxMS4wNiwxNC4yNywxNC4yNywwLDAsMSwyLjI0LDUsMTAsMTAsMCwwLDEtMS42NywyLjdjLTEuMDcsMS41Mi0zLjcyLDEuNDUtMy4zOS0uODdhLjg3Ljg3LDAsMCwwLDEuNjYtLjI2Ljg2Ljg2LDAsMCwwLS43OC0uOTRjLTEuMTUsMC0xLjM5LDEuNjMtMSwyLjUyLjU0LDEuMzQsMi41NiwxLjI5LDMuNTYuNDJhNy44LDcuOCwwLDAsMCwxLjktMi4yMywxMC41OSwxMC41OSwwLDAsMS0uMjcsNS4wN2MtLjU1LDEuOTEtMy40NCwxLjQ0LTIuNjYtLjU0YS42LjYsMCwwLDAsMS4yLDBjLS4yNy0xLjM2LTEuOTUtLjA5LTEuNjQuOUExLjYsMS42LDAsMCwwLDQwLjA3LDQ3YzMuMzQuMzgsMi44OC01LjUzLDIuNjMtNy42NUEyMSwyMSwwLDAsMCw0NCwyNS4yMmMtMS4yMy00LjY5LTMuMjQtOS4zMS0zLjE1LTE0LjIyYTEuMjEsMS4yMSwwLDAsMSwwLS4xOSwxNC42MiwxNC42MiwwLDAsMCw1LjU0LTIsMS42LDEuNiwwLDAsMCwuNDItLjNjLjUyLS43My4wOC0uODEtLjQ2LS43Ni0uNTYuMjEtMS4xMi41Mi0xLjY5LjcyYTE2LjUxLDE2LjUxLDAsMCwxLTMuNzIuOTQsMTYuNDgsMTYuNDgsMCwwLDEsMS00Yy4yLS41Ny41MS0xLjEzLjcyLTEuNjksMC0uNTQsMC0xLS43Ni0uNDZhMS42LDEuNiwwLDAsMC0uMy40MkExNC43LDE0LjcsMCwwLDAsMzkuNDksOS41bC0uNDksMGMtNC45MS4wOS05LjUzLTEuOTItMTQuMjItMy4xNUEyMSwyMSwwLDAsMCwxMC42NCw3LjY1QzguNTIsNy40LDIuNjEsNi45NCwzLDEwLjI4WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIuOTcgLTIuOTcpIi8+PC9zdmc+"), url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NC4wNiA0NC4wNiI+PGRlZnM+PHN0eWxlPi5he2ZpbGw6I2M2YzFhMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImEiIGQ9Ik00NywzOS43MmExLjYsMS42LDAsMCwwLTEuMjEtMS4zMWMtMS0uMzEtMi4yNiwxLjM3LS45LDEuNjRhLjYuNiwwLDAsMCwwLTEuMmMyLS43OCwyLjQ1LDIuMTEuNTQsMi42NmExMC41OSwxMC41OSwwLDAsMS01LjA3LjI3LDcuOCw3LjgsMCwwLDAsMi4yMy0xLjljLjg3LTEsLjkyLTMtLjQyLTMuNTYtLjg5LS4zNC0yLjUzLS4xMS0yLjUyLDFhLjg2Ljg2LDAsMCwwLC45NC43OC44Ny44NywwLDAsMCwuMjYtMS42NWMyLjMyLS4zNCwyLjM5LDIuMzEuODcsMy4zOEE5Ljc2LDkuNzYsMCwwLDEsMzksNDEuNTRhMTQuMjcsMTQuMjcsMCwwLDEtNS0yLjI0QTE1Ljg4LDE1Ljg4LDAsMCwwLDIzLDM4Yy0uNjIuMzgtLjM2LjguMTcuODQuMiwwLC41OC0uMS43OC0uMTFhMTcuMDUsMTcuMDUsMCwwLDEsOC4xNSwxLjExYzEuOTIuNiwzLjYyLDEuNzgsNS41NywyLjIzYTIyLjYsMjIuNiwwLDAsMS0xMi45My0uMjljLTQuNTEtMS40OS05LjQtMy0xNC4xMS0yLjczLjIyLTQuNjEtMS4yOS05LjM4LTIuNzUtMTMuNzhhMjIuNiwyMi42LDAsMCwxLS4yOS0xMi45M2MuNDUsMS45NSwxLjYzLDMuNjUsMi4yMyw1LjU3QTE3LjA1LDE3LjA1LDAsMCwxLDExLDI2YzAsLjItLjA4LjU4LS4xLjc4LDAsLjUzLjQ1Ljc5LjgzLjE3YTE1Ljg4LDE1Ljg4LDAsMCwwLTEuMzMtMTEuMDYsMTQuMjcsMTQuMjcsMCwwLDEtMi4yNC01LDEwLDEwLDAsMCwxLDEuNjctMi43YzEuMDctMS41MiwzLjcyLTEuNDUsMy4zOS44N2EuODcuODcsMCwwLDAtMS42Ni4yNi44Ni44NiwwLDAsMCwuNzguOTRjMS4xNSwwLDEuMzktMS42MywxLTIuNTItLjU0LTEuMzQtMi41Ni0xLjI5LTMuNTYtLjQyYTcuOCw3LjgsMCwwLDAtMS45LDIuMjMsMTAuNTksMTAuNTksMCwwLDEsLjI3LTUuMDdjLjU1LTEuOTEsMy40NC0xLjQ0LDIuNjYuNTRhLjYuNiwwLDAsMC0xLjIsMGMuMjcsMS4zNiwyLC4wOSwxLjY0LS45QTEuNiwxLjYsMCwwLDAsOS45MywzQzYuNTksMi42MSw3LjA1LDguNTIsNy4zLDEwLjY0QTIxLDIxLDAsMCwwLDYsMjQuNzhDNy4yNSwyOS40Nyw5LjI2LDM0LjA5LDkuMTcsMzlhMS4yMSwxLjIxLDAsMCwxLDAsLjE5LDE0LjYyLDE0LjYyLDAsMCwwLTUuNTQsMiwxLjYsMS42LDAsMCwwLS40Mi4zYy0uNTIuNzMtLjA4LjgxLjQ2Ljc2LjU2LS4yMSwxLjEyLS41MiwxLjY5LS43MmExNi41MSwxNi41MSwwLDAsMSwzLjcyLS45NCwxNi40OCwxNi40OCwwLDAsMS0xLDRjLS4yLjU3LS41MSwxLjEzLS43MiwxLjY5LDAsLjU0LDAsMSwuNzYuNDZhMS42LDEuNiwwLDAsMCwuMy0uNDIsMTQuNywxNC43LDAsMCwwLDIuMDgtNS44OGwuNDksMGM0LjkxLS4wOSw5LjUzLDEuOTIsMTQuMjIsMy4xNWEyMSwyMSwwLDAsMCwxNC4xNC0xLjI4QzQxLjQ4LDQyLjYsNDcuMzksNDMuMDYsNDcsMzkuNzJaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMi45NyAtMi45NykiLz48L3N2Zz4="), url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NC4wNiA0NC4wNiI+PGRlZnM+PHN0eWxlPi5he2ZpbGw6I2M2YzFhMzt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImEiIGQ9Ik0zOS43MiwzQTEuNiwxLjYsMCwwLDAsMzguNDEsNC4yYy0uMzEsMSwxLjM3LDIuMjYsMS42NC45YS42LjYsMCwwLDAtMS4yLDBjLS43OC0yLDIuMTEtMi40NSwyLjY2LS41NGExMC41OSwxMC41OSwwLDAsMSwuMjcsNS4wNyw3LjgsNy44LDAsMCwwLTEuOS0yLjIzYy0xLS44Ny0zLS45Mi0zLjU2LjQyLS4zNC44OS0uMTEsMi41MywxLDIuNTJhLjg2Ljg2LDAsMCwwLC43OC0uOTQuODcuODcsMCwwLDAtMS42NS0uMjZjLS4zNC0yLjMyLDIuMzEtMi4zOSwzLjM4LS44N0E5Ljc2LDkuNzYsMCwwLDEsNDEuNTQsMTFhMTQuMzUsMTQuMzUsMCwwLDEtMi4yNCw1QTE1Ljg4LDE1Ljg4LDAsMCwwLDM4LDI3Yy4zOC42Mi44LjM2Ljg0LS4xNywwLS4yLS4xLS41OC0uMTEtLjc4YTE3LjA1LDE3LjA1LDAsMCwxLDEuMTEtOC4xNWMuNi0xLjkyLDEuNzgtMy42MiwyLjIzLTUuNTdhMjIuNiwyMi42LDAsMCwxLS4yOSwxMi45M2MtMS40OSw0LjUxLTMsOS40LTIuNzMsMTQuMTEtNC42MS0uMjItOS4zOCwxLjI5LTEzLjc4LDIuNzVhMjIuNiwyMi42LDAsMCwxLTEyLjkzLjI5YzEuOTUtLjQ1LDMuNjUtMS42Myw1LjU3LTIuMjNBMTcuMDUsMTcuMDUsMCwwLDEsMjYsMzkuMDVjLjIsMCwuNTguMDguNzguMS41MywwLC43OS0uNDUuMTctLjgzYTE1Ljg4LDE1Ljg4LDAsMCwwLTExLjA2LDEuMzMsMTQuMjcsMTQuMjcsMCwwLDEtNSwyLjI0LDEwLDEwLDAsMCwxLTIuNy0xLjY3Yy0xLjUyLTEuMDctMS40NS0zLjcyLjg3LTMuMzlhLjg3Ljg3LDAsMCwwLC4yNiwxLjY2Ljg2Ljg2LDAsMCwwLC45NC0uNzhjMC0xLjE1LTEuNjMtMS4zOS0yLjUyLTEtMS4zNC41NC0xLjI5LDIuNTYtLjQyLDMuNTZhNy44LDcuOCwwLDAsMCwyLjIzLDEuOSwxMC41OSwxMC41OSwwLDAsMS01LjA3LS4yN2MtMS45MS0uNTUtMS40NC0zLjQ0LjU0LTIuNjZhLjYuNiwwLDAsMCwwLDEuMmMxLjM2LS4yNy4wOS0xLjk1LS45LTEuNjRBMS42LDEuNiwwLDAsMCwzLDQwLjA3QzIuNjEsNDMuNDEsOC41Miw0MywxMC42NCw0Mi43QTIxLDIxLDAsMCwwLDI0Ljc4LDQ0YzQuNjktMS4yMyw5LjMxLTMuMjQsMTQuMjItMy4xNWguMTlhMTQuNjIsMTQuNjIsMCwwLDAsMiw1LjU0LDEuNiwxLjYsMCwwLDAsLjMuNDJjLjczLjUyLjgxLjA4Ljc2LS40Ni0uMjEtLjU2LS41Mi0xLjEyLS43Mi0xLjY5YTE2LjUxLDE2LjUxLDAsMCwxLS45NC0zLjcyLDE2LjQ4LDE2LjQ4LDAsMCwxLDQsMWMuNTcuMiwxLjEzLjUxLDEuNjkuNzIuNTQsMCwxLDAsLjQ2LS43NmExLjYsMS42LDAsMCwwLS40Mi0uMywxNC43LDE0LjcsMCwwLDAtNS44OC0yLjA4YzAtLjE3LDAtLjMzLDAtLjQ5LS4wOS00LjkxLDEuOTItOS41MywzLjE1LTE0LjIyYTIxLDIxLDAsMCwwLTEuMjgtMTQuMTRDNDIuNiw4LjUyLDQzLjA2LDIuNjEsMzkuNzIsM1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yLjk3IC0yLjk3KSIvPjwvc3ZnPg==");
  background-size: 32px 32px;
  background-position: top left, top right, bottom left, bottom right;
  background-repeat: no-repeat;
  z-index: -1;
}
.cbox-formal07v2 .cbox-caption {
  color: #59464d;
}
/* スマホ用調整 */
@media screen and (max-width: 768px) {
  .cbox-formal07v2 {
    padding: 20px;
  }
}




form .formbottom {
	text-align: center;
} 

form .btns{
	width: 300px;
	height: 50px;
	font-size: 1.1em;
	border-radius: 5px;
	
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
	padding: 6px 25px;
	color: #ffffff;
	font-weight: bold;
	letter-spacing: 0.5pt;
	text-decoration: none;
	background-color: #4682b4;
	border: 2px solid #4682b4;
	cursor: pointer;
	transition-duration:0.3s;
    -webkit-transition-duration:0.3s;
    -moz-transition-duration:0.3s;
    -o-transition-duration:0.3s;
    -ms-transition-duration:0.3s;
}

form .btns:hover{
    color: #4682b4;
    background-color: #ffffff;
}


.form-step { display: none; }
.form-step.active { display: block; }


.housing-type{
	text-align: center;
	display: inline-block;
	white-space: nowrap;
}

.housing-type:hover {
	opacity:1;
	transition:0.3s;
}


/* ラジオボタンの○を消す */
.sample-form input[type="radio"] {
    display: none;
}
/* 画像の周りに隙間をあける */
.sample-form label img {
    margin: 5px;
    padding: 5px;
}
/* 未選択の場合、色を薄くする */
.sample-form input[type="radio"] + label img {
    opacity:0.3;
  }
/* 選択済みの場合、色を濃くする */
.sample-form input[type="radio"]:checked + label img {
    opacity:1;
}


form .btns2{
	width: 260px;
	height: 50px;
	font-size: 1.1em;
	
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
	padding: 6px 25px;
	color: #ffffff;
	font-weight: bold;
	letter-spacing: 0.5pt;
	text-decoration: none;
	background-color: #C9054F;
	border: 1px solid #C9054F;
	cursor: pointer;
	transition-duration:0.3s;
    -webkit-transition-duration:0.3s;
    -moz-transition-duration:0.3s;
    -o-transition-duration:0.3s;
    -ms-transition-duration:0.3s;
} 
form .btns2:hover{
    color: #C9054F;
    background-color: #ffffff;
}


.campaign-banner {
    cursor: pointer; /* ポインタを指マークにする */
}

/* ===== モーダル全体 ===== */
.modal__container {
/*
  position: fixed;
  top: 0; left: 0;
 */
  position: absolute;
  top: 0; /* ここはJSで上書きされる */
  left: 0;
  width: 100%;
  z-index: 9999;
  
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.6);
  display: none; /* 初期は非表示 */
  justify-content: center;
  align-items: center;
  z-index: 1000;
  padding: 10px; /* スマホで上下に余白確保 */
  box-sizing: border-box;
}
.modal__container.is-active {
  display: flex;
}

/* ===== モーダル本体 ===== */
.modal__body {
  background: #fff;
  border-radius: 12px;
  max-width: 500px;
  width: 100%;
  padding: 35px 16px 60px; /* 下に余白を確保（閉じるボタン分） */
  position: relative;
  box-shadow: 0 6px 18px rgba(0,0,0,0.3);
  box-sizing: border-box;

  /* スマホ対応：画面からはみ出さない */
  max-height: 90vh;
  overflow-y: auto;
}

/* ===== タイトル部分 ===== */
.modal__title {
  position: sticky;
  top: 0;
  background: #fff;
  padding: 12px;
  border-bottom: 1px solid #eee;
  z-index: 10;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

/* ===== 閉じるボタン（右上の×） ===== */
.modal__close__btn {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 24px;
  height: 24px;
  cursor: pointer;
}
.modal__close__btn::before,
.modal__close__btn::after {
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  width: 20px; height: 2px;
  background: #333;
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal__close__btn::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* ===== コンテンツ本文 ===== */
.modal__content {
  margin-top: 10px;
}
.modal__content p {
  margin: 8px 0;
  line-height: 1.5;
  font-size: 15px;
}
.modal__content p strong {
  display: block;
  margin-top: 16px;
  padding: 6px 10px;
  background: #f8f8f8;
  border-left: 3px solid #007bff;
  font-size: 15px;
}

/* ===== フッター（閉じるボタン） ===== */
.modal__footer {
  position: sticky;
  bottom: 0;
  background: #fff;
  padding: 12px;
  border-top: 1px solid #eee;
  text-align: center;
}
.modal__footer button {
  background: #007bff;
  color: #fff;
  border: none;
  padding: 12px 16px;
  border-radius: 6px;
  cursor: pointer;
  width: 100%;
  min-height: 44px; /* スマホでもタップしやすい */
  font-size: 16px;
}
.modal__pretext {
    font-family: inherit;       /* 等幅フォントにせず通常フォントに */
    white-space: pre-wrap;      /* 改行維持＋折り返しOK */
    line-height: 1.6;           /* 行間調整 */
    margin: 0;                  /* p の余白を引き継がない */
    padding: 0;                 /* 本体余白は modal__body で確保 */
}





/* タイプライター見出し（濃青背景＋白文字） */
.typewriter-heading {
  font-family: "Segoe UI", sans-serif;
  font-size: clamp(2.1rem, 5.2vw, 3.1rem);
  font-weight: 900;
  color: #ffffff;
  background-color: #3299D0; /* 濃い青 */
  padding: 30px 40px;
  margin: 30px auto;
/*  margin: 100px auto;	*/
  text-align: center;
  display: inline-block;
  white-space: normal;
  overflow-wrap: break-word;
  border-right: 3px solid #ffffff; /* タイプカーソル */
  animation: blink 1s step-end infinite;
  border-radius: 0; /* 角丸なし */
  box-shadow: 0 8px 20px rgba(0,0,0,0.25);
  
  /* max-width: 90vw;*/
  display: block;        /* 変更 */
  width: 100%;           /* 変更 */
  max-width: 100%;       /* 変更 */
  
}


/* スマホ用調整 */
@media screen and (max-width: 768px) {
  .typewriter-heading {
    padding: 20px;
  }
}



/* 光る効果 */
@keyframes flash {
  0% { color: #ffffff; text-shadow: none; }
  50% { color: #ffffe0; text-shadow: 0 0 10px #ffffe0, 0 0 20px #ffffe0; }
  100% { color: #ffffff; text-shadow: none; }
}

.typewriter-heading.flash {
  animation: flash 0.6s ease-in-out;
}





/* アイコンの揺れアニメーション */
@keyframes phone-ring {
  0% { transform: rotate(0deg); }
  15% { transform: rotate(15deg); }
  30% { transform: rotate(-10deg); }
  45% { transform: rotate(15deg); }
  60% { transform: rotate(-10deg); }
  75% { transform: rotate(5deg); }
  100% { transform: rotate(0deg); }
}

.animated-phone {
  display: inline-block; /* transformを効かせる */
  animation: phone-ring 1s ease-in-out infinite;
  margin-left: 4px; /* アイコンと文字の隙間 */
}


@keyframes phone-slow {
  0% { transform: rotate(0deg); }
  25% { transform: rotate(10deg); }
  50% { transform: rotate(-8deg); }
  75% { transform: rotate(10deg); }
  100% { transform: rotate(0deg); }
}

.phone-pattern1 {
  display: inline-block;
  animation: phone-slow 2s ease-in-out infinite;
  margin-left: 4px;
}

@keyframes phone-bounce {
  0% { transform: rotate(0deg); }
  20% { transform: rotate(20deg); }
  40% { transform: rotate(-15deg); }
  60% { transform: rotate(20deg); }
  80% { transform: rotate(-10deg); }
  100% { transform: rotate(0deg); }
}

.phone-pattern2 {
  display: inline-block;
  animation: phone-bounce 1s ease-in-out infinite;
  margin-left: 4px;
}

@keyframes phone-quick {
  0% { transform: rotate(0deg); }
  25% { transform: rotate(15deg); }
  50% { transform: rotate(-10deg); }
  75% { transform: rotate(15deg); }
  100% { transform: rotate(0deg); }
}

.phone-pattern3 {
  display: inline-block;
  animation: phone-quick 0.5s ease-in-out infinite;
  margin-left: 4px;
}

@keyframes phone-small-swing {
  0% { transform: rotate(0deg); }
  20% { transform: rotate(5deg); }
  40% { transform: rotate(-5deg); }
  60% { transform: rotate(5deg); }
  80% { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

.phone-pattern4 {
  display: inline-block;
  animation: phone-small-swing 1.5s ease-in-out infinite;
  margin-left: 4px;
}

@keyframes phone-side-swing {
  0% { transform: translateX(0); }
  25% { transform: translateX(4px); }
  50% { transform: translateX(-4px); }
  75% { transform: translateX(4px); }
  100% { transform: translateX(0); }
}

.phone-pattern5 {
  display: inline-block;
  animation: phone-side-swing 1s ease-in-out infinite;
  margin-left: 4px;
}

@keyframes phone-bounce-up {
  0%, 100% { transform: translateY(0); }
  30% { transform: translateY(-6px); }
  60% { transform: translateY(-3px); }
}

.phone-pattern6 {
  display: inline-block;
  animation: phone-bounce-up 0.6s ease-in-out infinite;
  margin-left: 4px;
}






/* ▼ 画面幅いっぱいの帯 */
.fullwidth-marquee {
  position: relative;
  width: 100vw;               /* ビューポート幅いっぱい */
  left: 50%;
  right: 50%;
  margin-left: -50vw;         /* コンテナ中央からはみ出させて全幅化 */
  margin-right: -50vw;

  overflow: hidden;
  background: #fff;
  border-top: 7px solid #8fc2db;
  border-bottom: 7px solid #8fc2db;
  padding: 5px 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  z-index: 10;
}

/* 左右のフェード効果 */
.fullwidth-marquee::before,
.fullwidth-marquee::after {
  content: "";
  position: absolute;
  top: 0;
  width: 100px;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

/* スクロール本体 */
.marquee {
  display: inline-block;
  white-space: nowrap;
  animation: scroll-left 60s linear infinite;
  will-change: transform;
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 700;
  color: #0f5e86;
    
  /* padding-left: 100%; */
}

/* 各項目の間隔 */
.marquee span {
  display: inline-block;
  margin-right: 20px;
  letter-spacing: 3px;
}

/* Font Awesome アイコン調整 */
.marquee i {
  color: #0f5e86;
  margin-right: 10px;
  font-size: 1.2em;
  vertical-align: middle;
}

/* スクロールアニメーション */
@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}






.counter-section {
  display: flex;
  justify-content: center;
  /* gap: 20px 50px; */
  /* padding: 0px 50px 20px 50px; */
  background: #fff;
  flex-wrap: wrap;
}

.counter-item {
  text-align: center;
}

.counter {
  font-size: 2.5em;
  font-weight: 700;
  color: #333333;
  display: inline-block;
  line-height: 1;
}

.counter-item p {
  margin-bottom: 10px;
  font-size: 0.9em;
  color: #666;
  text-align: center;
}








.counter-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
  text-align: center;
}

.counter-wrapper img {
  display: block;
  width: 100%;
  height: auto;
}

.counter-overlay {
  position: absolute;
  top: 50%;
  left: 70%;
  transform: translate(-50%, -50%);
  text-align: center;
  pointer-events: none;
}

/* 説明テキスト（旧 p） */
.counter-overlay .counter-label {
  display: block;
  font-size: 1.2em;
  font-weight: 500;
  margin-bottom: 0.3em; /* 数字との間隔調整 */
  color: #333;
}

/* カウントアップ数字 */
.counter-overlay .counter {
  display: block;
  font-size: 4em;
  font-weight: 700;
  line-height: 1;
  color: #333;
}

/* スマホ用 */
@media (max-width: 768px) {
  .counter-overlay {
    top: 55%;
  }

  .counter-overlay .counter-label {
    font-size: 1rem;
  }

  .counter-overlay .counter {
    font-size: 2.5em;
  }
}

/* タブレット用 */
@media (min-width: 769px) and (max-width: 1024px) {
  .counter-overlay .counter-label {
    font-size: 1.1rem;
  }

  .counter-overlay .counter {
    font-size: 3rem;
  }
}






/* ---------- セクション全体 ---------- */
.fade-section {
  text-align: center;
  padding: 40px 10px;
  background-color: #ffffff; /* 背景色はLPに合わせて調整 */
  margin-bottom: 30px;
}

/* ---------- 画像 ---------- */
.fade-section img {
  max-width: 800px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* ---------- テキスト共通 ---------- */
.fade-section p {
  margin: 0 auto;
  line-height: 1.0;
  color: #333333; /* 文字色 */
/*  opacity: 0; *//* 初期は非表示、GSAPでフェードイン */
  transform: translateY(40px);
  
  font-family: "Noto Sans JP", sans-serif;
}

/* ---------- テキスト1 ---------- */
.fade-section .line1 {
  margin-top: 0px;
  font-size: clamp(3rem, 3vw, 1.8rem);
  font-weight: 500;
  margin-bottom: 0.5em;
  
}

/* ---------- テキスト2 ---------- */
.fade-section .line2 {
  font-size: clamp(5.5rem, 5vw, 2.8rem);
  font-weight: 700;
}

/* ---------- スマホ調整 ---------- */
@media (max-width: 600px) {
  .fade-section {
    padding: 60px 5px;
  }
  .fade-section .line1 {
    font-size: clamp(1.8rem, 4vw, 1.5rem);
  }
  .fade-section .line2 {
    font-size: clamp(2.5rem, 5vw, 2rem);
  }
}





.customer-voice {
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px 20px;
}
.customer-voice h3 {
  text-align: center;
  margin-bottom: 30px;
}
.customer-voice .swiper-slide {
  background: #f8f8f8;
  border-radius: 10px;
  padding: 15px;
  box-sizing: border-box;
}
.customer-voice .swiper-slide img {
  width: 100%;
  border-radius: 8px;
  margin-bottom: 10px;
}
.customer-voice .usrbox {
  color: #00344D;
  background-color: #FFFFFF;
  border: solid 2px #D8C6B5;
  padding: 8px;
  margin-top: 8px;
}
.customer-voice .graybg {
  background: #f1f1f1;
  padding: 10px;
  border-radius: 6px;
}


.voice-title {
  font-size: 1.2rem;
  font-weight: bold;
  color: #00344D;
  margin: 1em 0 0.5em;
  line-height: 1.4;
}





@media (max-width: 768px) {
  .step-item img {
    max-width: 80%;
  }
}





.li-check {
  list-style: none;
  margin: 0;
  padding: 0;
  
  background: #F8F8F8;
}

.li-check li {
  position: relative;
  padding: 10px 0 10px 38px; /* 左はアイコン分の余白 */
  line-height: 1.6;
  border-bottom: 2px solid #fff; /* 白い区切り線 */
  width: calc(100% - 20px); /* 白線を少し短く（右端に届かせない） */
}

/* 最後のリストは線なし */
.li-check li:last-child {
  border-bottom: none;
}

.li-check li::before {
  content: "\2713";/* 現在の「レ点」 */
  position: absolute;        /* 位置を自由に調整できるように */
  top: 50%;                  /* 50%が中央なので、52%にして少し下にずらす */
  transform: translateY(-50%); /* 自身の高さの半分を上げて中央揃えを微調整 */
  background: #0078d7;
  color: #fff;
  border-radius: 4px;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  left: 0;                   /* 左端に固定 */
}



.simulation-section {
  background: #FDFCFB;
  border-radius: 12px;
  padding: 30px;
  max-width: 600px; /* 480 */
  margin: 20px auto;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.simulation-title {
  text-align: center;
  margin-bottom: 20px;
  color: #0044cc;
}

.simulation-form .form-group {
  margin-bottom: 25px;
}

.simulation-form label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
  color: #333;
}

.simulation-form input {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 6px;
}

.simulation-button {
  display: block;
  width: 100%;
  background: #2A73B9;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 12px;
  cursor: pointer;
  transition: background 0.3s;
}

.simulation-button:hover {
  background: #1E5EA8;
}

.simulation-result {
  background: #fff;
  margin-top: 25px;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  line-height: 1.6;
}



/* お問い合わせボタンスタイル */
/* お問い合わせボタン（赤系・角丸・横幅いっぱい） */
.inquiry-link-btn {
  display: block;
  width: 100%;
  max-width: 480px; /* スマホでは全幅、PCでは最大幅を制限 */
  margin: 0 auto;
    background: linear-gradient(135deg, #E53935, #C62828);
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem; /* ←大きめ文字 */
  padding: 16px 0;
  border-radius: 10px; /* ←長方形の角丸 */
  text-decoration: none;
  text-align: center;
  letter-spacing: 0.05em;
  box-shadow: 0 5px 14px rgba(0, 0, 0, 0.25);
  transition: all 0.25s ease;
}

.inquiry-link-btn:hover {
    background: linear-gradient(135deg, #C62828, #B71C1C);
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.3);
}


/* スマホ用調整 */
@media screen and (max-width: 768px) {
	  .simulation-section {
    		padding: 10px !important;
  	}
	.simulation-result {
	  background: #fff;
	  margin-top: 25px;
	  border-radius: 8px;
	  padding: 20px;
	  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
	  line-height: 1.6;
	}
}




/* ボタン全体の中央寄せ */
.mail-btn-wrap {
  text-align: center;
  margin: 30px 0 20px;
}

/* メールボタン */
.mail-btn {
  width: 85%;

  display: inline-block;
  background-color: #4DB6AC; /* ティール（青緑） */
  color: #fff;
  font-weight: 600;
/*  font-size: 1.1rem;	*/
  padding: 16px 40px;
  border-radius: 20px;
  text-decoration: none;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
}

/* ホバー効果（マウス時） */
.mail-btn:hover {
  background-color: #009688;
  box-shadow: 0 6px 14px rgba(0,150,136,0.5);
  transform: translateY(-2px);
}

/* スマホ最適化 */
@media screen and (max-width: 600px) {
  .mail-btn {
    display: block;
    width: 85%;
    margin: 0 auto;
/*    font-size: 1rem;	*/
    padding: 14px 0;
    border-radius: 20px;
  }
}



@media screen and (max-width: 600px) {
.brwbox .rbox3 {
	padding: 10px 5px;
  }
.brwbox .rbox3 img {
    transform: scale(1.1);
    transform-origin: left;
  }
.brwbox p {
   font-size: 0.9em;
  }
}



.call-message {
  text-align: center;
}
/* スマホのみ表示 */
@media screen and (min-width: 769px) {
  .call-message { display: none; }
}


/*
@media screen and (max-width: 600px) {
.solve-list img {
    width: 110%;
    margin-left: -5%; 
  }
}
*/


@media (max-width: 768px) {
  .service-comparison th {
    font-size: 90%;
  }
}