@charset "utf-8";
*{
    font-family: "Roboto", "Helvetica", "Arial", sans-serif;  
    margin: 0;
    padding: 0;
}
img {
    max-width: 100%;	
    vertical-align: bottom;
}
html{
    overflow: auto; 
}
.pc {
  display: block;
}
.sp {
display: none;
}

@media screen and (max-width:740px){
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
.Wrapper{
    margin:  0 auto;
    width: 100%;
    overflow-x: hidden;
    background: #f1f1f1;
}
.header{
    height: 90px;
    margin: 0 auto;
    padding: 1% 2%;
    display: flex;
    justify-content: space-between;
    background-color: #fff;
}
.header p{
    font-size: 14.5px;
}

.header .h_right p{
    font-size: 13px;
    margin-top: 2px;
    text-align: right;
}
.contact p{
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center;
    margin: 10px auto;
    animation: flash 1.5s linear infinite;
}
@keyframes flash {
    0%,100% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }
}
.cta{
    margin: 0 auto;
}

.mt30{
    margin-top: 30px;
}

.red{
    color:#ff0000;
    font-weight: bold;
}
.header .h_left{
    width: 65%;
}
.header .h_left img{
    margin-top: 5px;
    width: 25%;
}
.header .h_right {
    width: 35%;
    padding: 15px 0 15px;
}

.icon{
    display: flex;
    width: 100%;
}
.icon a:nth-child(2){
    margin-left: 5px;
}
@media (min-width: 767px) { 
	.icon a:first-child:before{
    width: 40px;
    height: 40px;
    right: 35%;
	content: "";
    display: inline-block;
    position: absolute;
    background: url(../../img/hand.png) no-repeat;
    background-size: contain;
    animation: fuwafuwa 1.5s infinite ease-in-out .8s alternate;
    z-index: 2;
    top: 6%;
}
}
@media (max-width: 767px) { 
	.b_cta a:first-child:before{
    width: 40px;
    height: 40px;
    left: -0.5%;
	content: "";
    display: inline-block;
    position: absolute;
    background: url(../../img/hand.png) no-repeat;
    background-size: contain;
    animation: fuwafuwa 1.5s infinite ease-in-out .8s alternate;
    z-index: 2;
    top: 26%;
}
}
.hand {
    animation: fuwafuwa 1.5s infinite ease-in-out .8s alternate;
    display: inline-block;
    transition: 1.5s ease-in-out;
    width: 5%;
    position: absolute;
    top: 20px;
    left: 25%;
    z-index: 10;
}
@keyframes fuwafuwa {
    0% {
      transform:translate(0, 0) rotate(-7deg);
    }
    50% {
      transform:translate(0, -7px) rotate(0deg);
    }
    100% {
      transform:translate(0, 0) rotate(7deg);
    }
}

.header .h_right p{
    font-size: 13px;
    margin-top: 2px;
    text-align: right;
}
.contact p{
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center;
    margin: 10px auto;
    animation: flash 1.5s linear infinite;
}
@keyframes flash {
    0%,100% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }
}


.content{
	background: #fff;
  border-radius: 20px;
  padding: 50px;
  margin: 70px auto;
  max-width: 850px;
  width: 100%;
}
.content p{
	font-size: 14px;
	overflow-wrap: break-word;
	line-height: 1.7;
}
h2{
	font-size: 22px;
	color: #000;
}

@media screen and (max-width:767px) {
  .content {
    margin: 30px auto;
    padding: 20px;
    width: 85%;
  }
  h2{
  font-size: 20px;
  }
}

@media (max-width: 767px) { 
    body{
        margin: 0 auto;
        width: 100%;
    }
    .header-inner {
        width: 96%;
        justify-content: flex-end;
        margin: auto;
        align-items: center;
        max-height: 50px;
    }
    .header-inner img{
        padding: 3%;
        height: auto;
        box-sizing: border-box;
    }
   .header-inner h1 {
        width: 135%;
        margin-right: 1%;
    }
    header {
        height: auto;
    }
    .header-inner img.cta{
        padding: 0%;
        height: inherit;
        box-sizing: border-box;
        margin: 0;
    }
    h2 {
        padding: 4% 2%;
        font-size: 1.4rem;
        line-height: 2.2rem;
    }
}

#footer .f_nav {
    font-size: 0;
    margin-bottom: 20px;
}
ol, ul {
    list-style: none;
}
footer{
    text-align: center;
}
#footer .f_nav li a {
    color: #666;
    text-decoration: none;
    font-size: 0.9rem;
}
#footer .f_nav li {
    margin-right: 10px;
    display: inline-block;
    font-size: 13px;
}
#footer .f_nav li::after {
    content: '|';
    margin-left: 10px;
}
#footer .f_nav li:last-child::after {
    content: '';
    margin-left: 0px;
}
.pc_dp_n{
    display:none;
}
footer{
    background-color: #999;
    color: #fff;
    padding: 5%;
}
footer p, footer a{
    font-size: 0.8rem;
    text-decoration: none;
    color: #fff;
}

@media (min-width: 1920px) { 
    .Wrapper {
    margin: 0 auto;
    width: 100%;
}
}
/*--------SP-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media (max-width: 767px) { 
    .Wrapper{
        margin:  0 auto;
        width: 100%;
    }
    .header{
        width: 100%;
        height: auto;
        margin: 0 auto;
        padding: 10px 2%;
        box-sizing: border-box;
        display: flex;
        justify-content: space-between;
        background-color: #fff;
    }
    .header p{
    font-size: 11.5px;
    }
    .header .h_right p{
    font-size: 10px;
    margin-top: 2px;
    text-align: right;
    }
    .header .h_right {
        width: 35%;
        padding:0 ;
    }
    .header .h_right {
        width: 43%;
    }
    .header .h_left {
        width: 57%;
    }
    .header .h_left img{
        margin-top: 5px;
        width: 98%;
    }

    .cta {
    width: 90%;
}
    .pc_dp_n{
    display:block;
    }
    .header .h_left img{
    margin-top: 5px;
    width: 98%;
}
}
.pc_ds {
    display: block;
}
.sp_ds {
    display: none;
}
@media (max-width: 767px) { 
.pc_ds {
    display: none;
}
	.sp_ds {
    display: block;
}
}

/* ヘッダー ------------------------------------------------------ */
.header {
    padding: 2% 3%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.h_left {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.h_right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.h_left img {
    width: 90%;
}

.h_right p {
    margin: 0 0 0 10px;
    width: 35%;
}

