@charset "UTF-8";

*, *:before, *:after {
  -webkit-box-sizing:border-box;
  box-sizing:border-box
}

/*デバイス共通部分*/
body{
  -webkit-text-size-adjust:100%;
  font-family:Century;
  padding:0;
  margin:0;
  background-color:#ffeeff;
}

section , .buttons , .list{
  opacity:0;
  transform:translate(0 , 50px);
  transition:all 1500ms;
}

section.scrollin , .buttons.scrollin , .list.scrollin{
  opacity:1;
  transform:translate(0 , 0);
}

#page_top {
  z-index: 2;
}






/*以下よりスマホ用記述*/
@media(max-width:767px){

  header{
    display:none;
    background-image:url("../img/main_phone.jpg");
    background-size:cover;
    padding:220px 0;
  }

  header p{
    text-align:center;
    color:#d84544;
    background-color:#fff;
    opacity:0.8;
    font-size:15px;
    margin:0;
    position:relative;
    top:220px;
  }





  nav > button{
    position:relative;
    border:none;
  	cursor:pointer;
    margin:0;
  }

  #navi{
    margin:0;
    padding:0;
  }

  nav{
    background-color:#ff6699;
  }

  nav > ul{
    list-style:none;
    display:none;
  }

  nav > ul > li a{
    text-decoration:none;
    display:block;
    padding:10px 0 10px 20px;
    color:#FFF;
    border-bottom:1px solid #A24861;
    background-color:#B94B6A;
  }







  #page_top{
    width:75px;
    height:40px;
    position:fixed;
    right:10px;
    bottom:10px;
    background-color:#d84544;
    opacity:0.7;
    border-radius:50%;
  }

  #page_top a{
    position:relative;
    display:block;
    width:50px;
    height:50px;
    text-decoration:none;
  }

  #page_top a::before{
    font-family:'Font Awesome 5 Free';
    font-weight:bold;
    content:'\f102';
    font-size:35px;
    color:#fff;
    position:absolute;
    width:25px;
    height:25px;
    top:0;
    margin:auto;
    text-align:center;
  }






  main{
    width:90%;
    margin:100px auto 100px auto;
    text-align:center;
  }

  main section{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    border-left:10px double #d84544;
    margin-top:100px;
  }

  main section h2{
    color:#d84544;
    margin:0;
    padding:10px 0;
    letter-spacing:5px;
    font-size:18px;
  }

  main section p{
    width:85%;
    margin:0 auto;
    padding-top:10px;
    color:#000;
    font-size:11px;
    line-height:2;
  }

  main section p span{
    color:#d84544;
    font-size:30px;
    font-weight:bold;
    opacity:0.7
  }

  main section p a{
    color:#d84544;
    font-weight:bold;
  }

  main h4{
    width:70%;
    margin:0 auto;
    text-align:center;
    font-size:9px;
  }







  .features{
    width:90%;
    margin:150px auto 0 auto;
    text-align:center;
  }

  .features > p{
    color:#d84544;
    font-size:20px;
    text-align:center;
    padding:10px 0;
  }

  .features > p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
  }

  .features .section-content-1{
    width:95%;
    margin:0 auto;
    background-color:#ffddff;
    border-radius:30px;
    box-shadow:10px 10px 10px #ff6699;
    margin-bottom:150px;
    padding-bottom:20px;
    text-align:center;
  }

  .features .section-content-2{
    width:95%;
    margin:0 auto;
    background-color:#ff6699;
    border-radius:30px;
    box-shadow:10px 10px 20px #f00;
    margin-bottom:150px;
    padding-bottom:20px;
    text-align:center;
  }

  .section-content-1 h2{
    width:90%;
    margin:0 auto;
    font-size:14px;
    text-align:center;
    letter-spacing:3px;
    color:#ff6699;
    line-height:1.5;
  }

  .section-content-2 h2{
    width:90%;
    margin:0 auto;
    font-size:14px;
    text-align:center;
    letter-spacing:3px;
    color:#ffddff;
    line-height:1.5;
  }



  .section-content-1 p{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
    font-size:12px;
  }

  .section-content-2 p{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#fff;
    font-size:12px;
  }







  .member{
    width:90%;
    margin:0 auto;
  }

  .member p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    padding:10px 0;
  }

  .member ul{
    padding:0;
    margin-left:15px;
  }

  .buttons{
    text-align:center;
  }

  button{
    font-size:8px;
    margin:0 5px 10px 5px;
    color:#fff;
    padding:7px 13px;
    background-color:#ff6699;
    border-radius:20px;
    border:none;
    display:inline-block;
    cursor:pointer;
    width:20%;
  }

  button span{
    font-size:6px;
  }

  button:hover{
    background-color:#d84544;
  }

  button:focus{
    outline:none;
  }

  .list{
    margin-bottom:150px;
  }

  .list span{
    font-size:12px;
    letter-spacing:4px;
    color:#d84544;
  }

  .list li{
  	list-style:none;
  	display: inline-block;
    text-align:center;
    margin:0 7px 20px 0;
  }

  .list li img{
    width:90px;
    height:60px;
    border:5px ridge #ff6699;
    box-shadow:5px 5px 0 #d84544;
  }












  .access{
    width:90%;
    margin: 0 auto 0 auto;
    padding-top:50px
  }

  .access p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    padding:10px 0;
  }

  .access .section-contents{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    margin-bottom:150px;
    padding:20px 0;
    border-left:10px double #d84544;
  }

  .access ul{
    width:90%;
    margin:0 auto;
    padding:0;
    line-height:1.5;
    color:#000;
    list-style:none;
    text-align:center;
    font-size:12px;
  }

  .access .map{
    text-align:center;
    margin-top:30px;
  }

  iframe{
    width:95%;
    height:300px;
  }






  .caution{
    width:90%;
    margin:150px auto 0 auto;
  }

  .caution p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    padding:10px 0;
  }

  .caution .section-contents{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    margin-bottom:150px;
    padding:10px 0;
    border-left:10px double #d84544;
  }

  .caution ul{
    width:85%;
    margin:0 auto;
    padding:0;
    line-height:1.5 ;
    color:#000;
    font-size:12px;
  }






  footer{
    background-color:#ff6699;
    padding:20px 0;
    text-align:center;
    border-top:5px solid #d84544;
  }

  footer h3 , p{
    color:#fff;
  }

  footer h3{
    font-weight:normal;
    font-size:20px;
    margin:0;
  }

  footer span{
    font-size:12px;
  }

  footer p{
    margin-top:30px;
  }

}






/*以下よりタブレット用記述*/
@media(min-width:768px) and (max-width:1024px){

  header{
    display:none;
    background-image:url("../img/main_pc.jpg");
    background-size:cover;
    padding:180px 0;
  }

  header p{
    text-align:center;
    color:#d84544;
    background-color:#fff;
    opacity:0.8;
    font-size:30px;
    margin:0;
    position:relative;
    top:180px;
  }








  nav > button{
    display:none;
  }

  nav{
    width:100%;
    padding-bottom:50px;
  }

  nav ul{
    list-style:none;
    margin: 0;
    padding: 0;
  }

  nav li{
    padding:0;
    width:20%;
    float:left;
  }

  nav li a{
    color:#fff;
    text-decoration:none;
    text-align:center;
    background-color:#ff6699;
    padding:25px 0;
    border-bottom:2px solid #d84544;
    border-right:2px solid #d84544;
    display:block;
  }

  nav li:last-child a{
    border-right:none;
  }

  nav li a:hover{
    background-color:#98302f;
  }






  #page_top{
    width:75px;
    height:40px;
    position:fixed;
    right:10px;
    bottom:10px;
    background-color:#d84544;
    opacity:0.7;
    border-radius:50%;
  }

  #page_top a{
    position:relative;
    display:block;
    width:50px;
    height:50px;
    text-decoration:none;
  }

  #page_top a::before{
    font-family:'Font Awesome 5 Free';
    font-weight:bold;
    content:'\f102';
    font-size:35px;
    color:#fff;
    position:absolute;
    width:25px;
    height:25px;
    top:0;
    margin:auto;
    text-align:center;
  }






  main{
    width:80%;
    margin:150px auto 100px auto;
    text-align:center;
  }

  main section{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    border-left:10px double #d84544;
    margin-top:150px;
  }

  main section h2{
    color:#d84544;
    padding-top:20px;
    letter-spacing:5px;
  }

  main section p{
    width:85%;
    margin:0 auto;
    line-height:1.8;
    color:#000;
  }

  main section p span{
    color:#d84544;
    font-size:30px;
    font-weight:bold;
    opacity:0.7;
  }

  main section p a{
    color:#d84544;
    font-weight:bold;
  }

  main h4{
    width:75%;
    margin:0 auto;
    text-align:center;
    border-bottom:1px solid #000;
  }







  .features{
    width:80%;
    margin:150px auto 0 auto;
    text-align:center;
  }

  .features > p{
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .features > p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
  }

  .features .section-content-1{
    width:70%;
    margin:0 auto;
    background-color:#ffddff;
    border-radius:30px;
    box-shadow:10px 10px 10px #ff6699;
    margin-bottom:150px;
    padding-bottom:20px;
    text-align:center;
  }

   .features .section-content-2{
    width:70%;
    margin:0 auto;
    background-color:#ff6699;
    border-radius:30px;
    box-shadow:10px 10px 20px #f00;
    margin-bottom:150px;
    padding-bottom:20px;
    text-align:center;
  }

  .section-content-1 h2{
    width:90%;
    margin:0 auto;
    font-size:18px;
    text-align:center;
    letter-spacing:3px;
    color:#ff6699;
    line-height:1.5;
  }

  .section-content-2 h2{
    width:90%;
    margin:0 auto;
    font-size:18px;
    text-align:center;
    letter-spacing:3px;
    color:#ffddff;
    line-height:1.5;
  }



  .section-content-1 p{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
    font-size:15px;
  }

  .section-content-2 p{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#fff;
    font-size:15px;
  }






  .member{
    width:80%;
    margin:0 auto;
  }

  .member p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .buttons{
    text-align:center;
  }

  button{
    text-align:center;
    font-size:14px;
    margin:0 5px 10px 5px;
    color:#fff;
    padding:10px 25px;
    background-color:#ff6699;
    border-radius:30px;
    border:none;
    display:inline-block;
    cursor:pointer;
    width:22%;
  }

  button:hover{
    background-color:#d84544;
  }

  button:focus{
    outline:none;
  }

  .list{
    margin-bottom:150px;
  }

  .list span{
    font-size:15px;
    letter-spacing:4px;
    color:#d84544;
  }

  .list li{
  	list-style:none;
  	display: inline-block;
    text-align:center;
    margin:0 5px 20px 0;
  }

  .list li img{
    width:120px;
    height:90px;
    border:5px ridge #ff6699;
    box-shadow:5px 5px 0 #d84544;
  }









  .access{
    width:80%;
    margin: 0 auto 0 auto;
    padding-top:50px
  }

  .access p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .access .section-contents{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    margin-bottom:150px;
    padding:20px 0;
    border-left:10px double #d84544;
  }

  .access ul{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
    list-style:none;
    text-align:center;
  }

  .access .map{
    text-align:center;
    margin-top:30px;
  }

  iframe{
    width:80%;
    height:450px;
  }






  .caution{
    width:80%;
    margin:150px auto 0 auto;
  }

  .caution p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .caution .section-contents{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    margin-bottom:150px;
    padding:20px 0;
    border-left:10px double #d84544;
  }

  .caution ul{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
  }






  footer{
    background-color:#ff6699;
    padding:30px 0;
    text-align:center;
    border-top:5px solid #d84544;
  }

  footer h3 , p{
    color:#fff;
  }

  footer h3{
    font-weight:normal;
    font-size:25px;
    margin:0;
  }

  footer span{
    font-size:16px;
  }

  footer p{
    margin-top  :60px;
  }

}







/*以下よりPC用記述*/
@media(min-width:1025px){

  header{
    display:none;
    background-image:url("../img/main_pc.jpg");
    background-size:cover;
    padding:245px 0;
  }

  header p{
    text-align:center;
    color:#d84544;
    background-color:#fff;
    opacity:0.8;
    font-size:30px;
    margin:0;
    position:relative;
    top:245px;
  }







  nav > button{
    display:none;
  }

  nav{
    width:100%;
    padding-bottom:50px;
  }

  nav ul{
    list-style:none;
    margin: 0;
    padding: 0;
  }

  nav li{
    padding:0;
    width:20%;
    float:left;
  }

  nav li a{
    color:#fff;
    text-decoration:none;
    text-align:center;
    background-color:#ff6699;
    padding:25px 0;
    border-bottom:2px solid #d84544;
    border-right:2px solid #d84544;
    display:block;
  }

  nav li:last-child a{
    border-right:none;
  }

  nav li a:hover{
    background-color:#98302f;
  }






  #page_top{
    width:75px;
    height:40px;
    position:fixed;
    right:10px;
    bottom:10px;
    background-color:#d84544;
    opacity:0.7;
    border-radius:50%;
  }

  #page_top a{
    position:relative;
    display:block;
    width:50px;
    height:50px;
    text-decoration:none;
  }

  #page_top a::before{
    font-family:'Font Awesome 5 Free';
    font-weight:bold;
    content:'\f102';
    font-size:35px;
    color:#fff;
    position:absolute;
    width:25px;
    height:25px;
    top:0;
    margin:auto;
    text-align:center;
  }






  main{
    width:70%;
    margin:150px auto 100px auto;
    text-align:center;
  }

  main section{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    border-left:10px double #d84544;
    margin-top:150px;
  }

  main section h2{
    color:#d84544;
    padding-top:20px;
    letter-spacing:5px;
  }

  main section p{
    width:75%;
    margin:0 auto;
    line-height:2.0;
    color:#000;
  }

  main section p span{
    color:#d84544;
    font-size:40px;
    font-weight:bold;
    opacity:0.7;
  }

  main section p a{
    color:#d84544;
    font-weight:bold;
  }

  main h4{
    width:75%;
    margin:0 auto;
    text-align:center;
    border-bottom:1px solid #000;
  }







  .features{
    width:70%;
    margin:150px auto 0 auto;
    text-align:center;
  }

  .features > p{
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .features > p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
  }

  .features .section-content-1{
    width:70%;
    margin:0 auto;
    background-color:#ffddff;
    border-radius:30px;
    box-shadow:10px 10px 10px #ff6699;
    margin-bottom:150px;
    padding-bottom:20px;
    text-align:center;
  }

   .features .section-content-2{
    width:70%;
    margin:0 auto;
    background-color:#ff6699;
    border-radius:30px;
    box-shadow:10px 10px 20px #f00;
    margin-bottom:150px;
    padding-bottom:20px;
    text-align:center;
  }

  .section-content-1 h2{
    width:90%;
    margin:0 auto;
    font-size:21px;
    text-align:center;
    letter-spacing:3px;
    color:#ff6699;
    line-height:1.5;
  }

  .section-content-2 h2{
    width:90%;
    margin:0 auto;
    font-size:21px;
    text-align:center;
    letter-spacing:3px;
    color:#ffddff;
    line-height:1.5;
  }



  .section-content-1 p{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
    font-size:17px;
  }

  .section-content-2 p{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#fff;
    font-size:17px;
  }






  .member{
    width:70%;
    margin:0 auto;
  }

  .member p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .buttons{
    text-align:center;
  }

  button{
    text-align:center;
  	font-size:14px;
  	margin:0 5px 10px 5px;
  	color:#fff;
  	padding:10px 25px;
  	background-color:#ff6699;
  	border-radius:30px;
  	border:none;
  	display:inline-block;
  	cursor:pointer;
  	width:15%;
  }

  button span{
    font-size:11px;
  }

  button:hover{
  	background-color:#d84544;
  }

  button:focus{
  	outline:none;
  }

  .list{
    margin-bottom:150px;
  }

  .list span{
    font-size:20px;
    letter-spacing:4px;
    color:#d84544;
  }

  .list li{
  	list-style:none;
  	display: inline-block;
    text-align:center;
    margin:0 8px 25px 0;
  }

  .list li img{
    width:180px;
    height:140px;
    border:5px ridge #ff6699;
    box-shadow:5px 5px 0 #d84544;
  }









  .access{
    width:70%;
    margin: 0 auto 0 auto;
    padding-top:50px
  }

  .access p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .access .section-contents{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    margin-bottom:150px;
    padding:20px 0;
    border-left:10px double #d84544;
  }

  .access ul{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
    list-style:none;
    text-align:center;
  }

  .access .map{
    text-align:center;
    margin-top:30px;
  }

  iframe{
    width:80%;
    height:450px;
  }






  .caution{
    width:70%;
    margin:150px auto 0 auto;
  }

  .caution p{
    border-top:1px solid #f00;
    border-bottom:1px solid #f00;
    color:#d84544;
    font-size:20px;
    text-align:center;
    margin-bottom:60px;
    padding:10px 0;
  }

  .caution .section-contents{
    background-color:#ffddff;
    box-shadow:10px 10px 10px #d84544;
    margin-bottom:150px;
    padding:20px 0;
    border-left:10px double #d84544;
  }

  .caution ul{
    width:80%;
    margin:0 auto;
    padding:0;
    line-height:2.0;
    color:#000;
  }






  footer{
    background-color:#ff6699;
    padding:30px 0;
    text-align:center;
    border-top:5px solid #d84544;
  }

  footer h3 , p{
    color:#fff;
  }

  footer h3{
    font-weight:normal;
    font-size:25px;
    margin:0;
  }

  footer span{
    font-size:16px;
  }

  footer p{
    margin-top  :60px;
  }
}
