/* 全体 */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
html,body,main,div,p,a,ul,li,h1,h2,h3,h4,h5,h6,span,b,dl,dt,dd,th,td{
font-family: "Noto Sans JP", sans-serif;
}
body{
	width:100%;
	max-width:621px;
	margin:0 auto;
	padding:0 .25rem;
}
p {
    margin-top: 0;
    margin-bottom:0rem;
    font-weight: 500;
    line-height: 180%;
	letter-spacing: 1px;
}
img{
	width:100%;
}
a{
	color:#5aa4e1 !important;
}
a:hover{
	text-decoration:none;
}
footer{
	color:#fff;
	background:#262626;
	padding:1rem;
	text-align:center;
}
 .accordion-toggle a:after {
	font-family: "Font Awesome 5 Free";
    content: "\f00d";
    float: right;
    color: #5aa4e1;
	background: none;
    padding: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    position: absolute;
    right: 20px;
    top: 10px;
	 font-weight: 700;
}
.accordion-toggle a.collapsed:after {
    font-family: "Font Awesome 5 Free";
    content: "\f107";
    float: right;
    color: #5aa4e1;
    padding: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    position: absolute;
    right: 20px;
    top: 10px;
	font-weight: 700;
}
h2{
    background: #5aa4e1;
    color: #fff;
    text-align: center;
    padding: 1rem;
    margin-bottom: 1rem;
}
h4 {
    padding: 20px;
    border-radius: 200px;
    font-size: 1rem;
    color: #021460 !important;
    position: relative;
    text-align: center;
    border: 3px solid #5aa4e1;
}
.footer {
    padding-top: 1rem;
    padding-bottom: 1rem;
    background-color: #e54312;
    color: #fff;
}
.panel-default{background:url(../../img/stripe-bg.png); border-radius:10px;}
.panel-body{padding:10px 20px;}
.c-button._shiny {
    display: block;
    position: relative;
    border-radius: 4px;
    font-weight: bold;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    overflow: hidden;
    transition: 300ms;
	animation: yureru-j 2s infinite;
}
.c-button._shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    transition: 300ms;
    animation: shinyshiny 2.5s ease-in-out infinite;
}

.c-button._shiny:hover {
    text-decoration: none;
    color: #fff;
    box-shadow: none;
    -webkit-transform: translateY(3px);
}
.menu{
  position: fixed;
  display: flex;
  left: 0;
  bottom: 0;
  width: 100%;
  /* 1. メニューを画面下へ隠す */
  transform: translateY(100%);
  /* 2. 0.3秒かけて表示する */
  transition: .3s;
}
.active{
  /* 3. メニューを定位置へ戻す */
  transform: translate(0);
}
.menu a{
		width:100%;
	max-width:621px;
	margin:0 auto 2rem;
}
.show2 {
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    animation-name: floating;
    animation-duration: 0.5s;
    animation-fill-mode: forwards;
    opacity: 0;
}
footer ul{
	list-style:none;
	padding-left:0;
}
footer li {
    display: inline-block;
    padding: .25rem;
}
footer a{
	color:#fff !important;
}
@keyframes floating {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes yureru-j {
    0% {
        transform: translate(0px, 2px);
    }
    5% {
        transform: translate(0px, -2px);
    }
    10% {
        transform: translate(0px, 2px);
    }
    15% {
        transform: translate(0px, -2px);
    }
    20% {
        transform: translate(0px, 2px);
    }
    25% {
        transform: translate(0px, -2px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}
@-webkit-keyframes shinyshiny {
    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; }
}
@media (min-width: 992px){
}

/* タブレット・スマホ */
@media (max-width: 992px){
}