@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

.p-breadcrumb__list {
    flex-wrap: wrap; 
}
.single .p-breadcrumb__item:last-child>span.p-breadcrumb__text {
    display: block!important; 
    opacity: 1; 
    white-space: pre-wrap;
}

.c-br .swell-block-column{
	border-radius: 12px;
	overflow: hidden;
}
.c-banner-link_hover .swell-block-column{
	transition: 0.1s all linear;
}
.c-banner-link_hover .swell-block-column:hover{
	opacity: 0.6;
}

.l-header__bar{
	display: none;
}

/*---- GRONAVI 長すぎる問題解決 ---------------------*/
.c-gnav>.menu-item:hover>.sub-menu{
	max-height: 80vh;
	overflow-y: auto;
}

/*---- TOP ---------------------*/
.p-top_intro-btn{
	width: min(100%,740px)!important;
	margin: 0 auto;
}
.c-deco_top-text{
	margin: -4em auto 0 !important;
	z-index: 2;
	position: relative;
	width: min(100%, 740px);
}
@media only screen and (max-width:600px){
	.p-top-title{
		width: 70%;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

/*---- FOOTER ---------------------*/
.l-footer{
	border-top: solid 1px #D9D9D9;
	padding-bottom: min(20vw, 160px);
}
.l-footer-cont{
	width: min(100%,400px);
	margin: 0 auto;
}
.l-footer-cont .siteLogo{
	margin-bottom: 1em;
	text-align: center;
}
.l-footer-cont .siteLogo p{
	margin-bottom: 1em;
	font-size: min(3vw,15px);
	color: #afafaf;
}
.l-footer-cont .siteLogo a{
	width: min(60%,167px);
}
.l-footer_bn-area{
	width: min(100%,348px);
	margin: 0 auto;
}

/*---- FOOTER BN ARIA---------------------*/
.w-beforeFooter{
	margin-bottom: 2em;
}
.l-footer_bn-aria .l-footer_bn-aria_inner{
  width: min(100%,720px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 25px;
}
.l-footer_bn-aria .l-footer_bn-aria_inner a{
  width: min(100%,340px);
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  transition: 0.3s;
}
.l-footer_bn-aria .l-footer_bn-aria_inner a:hover{
  filter: brightness(1.1);
}
.l-footer_bn-aria .l-footer_bn-aria_inner a:first-child{
  color: #60B7DB;
}
.l-footer_bn-aria .l-footer_bn-aria_inner a:last-child{
  color: #3867C2;
}
@media only screen and (max-width:600px) {
  .l-footer_bn-aria .l-footer_bn-aria_inner{
    flex-direction: column;
    align-items: flex-end;
    gap: 20px;
    font-size: 4vw;
  }
}

/*---- FLOATING ARIA ---------------------*/
#floating-aria {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(255,255,255,0.9);
  padding: min(3vw,20px) 10px min(1vw,5px);
  transition: 0.3s;
	border-top: solid 1px #D9D9D9;
	z-index: 99;
}
#floating-aria .floating-aria_inner{
  width: min(100%,500px);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 25px;
}
#floating-aria .floating-aria_inner a{
  width: min(50%,340px);
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  transition: 0.3s;
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
	
	position:relative;
	overflow:hidden;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
#floating-aria .floating-aria_inner a:after {
content:"";
height:100%;
width:30px;
position:absolute;
top:-180px;
left:0;
background-color: #fff;
opacity:0;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: reflection 2s ease-in-out infinite;
animation: reflection 2s ease-in-out infinite;
}
 
@keyframes reflection {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

#floating-aria .floating-aria_inner a:first-child{
  color: #60B7DB;
}
#floating-aria .floating-aria_inner a:last-child{
  color: #3867C2;
}
#floating-aria .floating-aria_inner a:hover{
  filter: brightness(1.1);
}
@media only screen and (max-width:600px) {
  #floating-aria .floating-aria_inner{
    /* flex-direction: column; */
    align-items: flex-end;
    gap: 10px;
    font-size: 2.5vw;
  }
}