html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    background-color: #e8e175;
}
body {
    font-family: Arial, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    height: 100%;
    margin:0;
    background-color: #e8e175;
}
ul{
  list-style-type: none;
  padding: 0;
  margin: 0;
}
h1 {font-size:1.35rem;}
h2 {font-size:1.2rem;}
h3 {font-size:1.1rem;}
h4 {font-size:1rem;}
h5 {font-size:0.9rem;}
h6 {font-size:0.8rem;}

strong {
    font-weight: bold;
}
a,
button {
    color: inherit;
    transition: 0.1s ease-in-out;
}
a {
    text-decoration: none;
}
button {
    overflow: visible;
    border: 0;
    font: inherit;
    -webkit-font-smoothing: inherit;
    letter-spacing: inherit;
    background: none;
    cursor: pointer;
}
::-moz-focus-inner {
    padding: 0;
    border: 0;
}
:focus {
    outline: 0;
}
/* ------------- End of reset ------------- */
.jp-font{
  font-family: "メイリオ","ヒラギノ角ゴ Pro W3","MS PGothic","MS UI Gothic",sans-serif;
}
.container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}
.flex-start{
  -ms-flex-pack: start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.flex-center{
 -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.space-around {
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
.space-between {
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.flex-end {
  -ms-flex-pack:end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.bigger :active,
.bigger :focus,
.bigger :hover {
  -webkit-transform: scale( 1.2);
  transform: scale( 1.2);
  transition: 0.2s ease-in-out;
}
.pagetop {
    display: none;
    position: fixed;
    bottom: 4.5rem;
    right: 1rem;
}
.pagetop a {
    display: block;
    background-color: gold;
    text-align: center;
    color: #fff;
    font-size: 1rem;
    text-decoration: none;
    padding: 0.5rem;
    border-radius: 0.5rem;
  filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}
.pagetop a:hover {
    display: block;
    background-color: #F9962C;
    text-align: center;
    color: #fff;
    font-size: 1rem;
    text-decoration: none;
    padding:0.5rem;
    border-radius: 0.5rem;
}
header {
  width: 100%;
  position:relative;
  padding-bottom:18.421%  
}

#ally-name{
    display: block;
    color: #724b02;
    font-size: 1.25rem;
    text-decoration: none;
    position: relative;
    margin:32px 0 0 300px;
}
#ally-name span{
  font-weight: 900;
}
#fuzzy-name{
    display: block;
    text-align: center;
    color: #724b02;
    font-size: 1.25rem;
    text-decoration: none;
    position: relative;
    margin: 100px 0 0 -64px;
}
#fuzzy-name span{
  font-weight: 900;
}
.header-bg{
    position:absolute;
    width:100%;
    height:100%;
    margin:auto;
    background-image:url("../images/header/header-1520-2.png");
    background-repeat:no-repeat;
    background-size:100% auto;
}
.logo {
  width: 20rem;
  margin: 0.6rem 0 0 5rem;
}
.news{
  width:100%;
  padding-bottom: 1.5rem;
  background-color: #e8e175;
  }
.catchcopy{
  font-size: 1.35rem;
  font-weight: bold;
  color: #724b02;
  width:100%;
  margin-bottom: 0.2rem;
  text-align: center;
}
.news-wrapper{
  width:100%;
}
.latest-news{
  padding: 0.5rem 1rem 0.5rem 0.4rem;
  margin: 0 0 1rem 0;
  background-color: #fffde7;
  border-radius: 0.2rem;
  box-shadow: 1px 2px 2px #ddc44a;
}
.new{
  background-color: gold;
}
.new h3{
  font-weight: bold;
  color: #ed4b4e;
  padding: 0.25rem 0.5rem;
  margin: 0;
}
.arrow-left{
  width: 0; 
  height: 0; 
  border-top: 16px solid transparent;
  border-bottom: 16px solid transparent;  
  border-right:16px solid #fffde7; 
}
.latest-news p{
  margin: 0.4rem 0.5rem;
  color: #724b02;
}
.latest-title{
  margin: 0 0 0 0;
  font-weight: bold;
}
.latest-title span{
  padding: 0.2rem 0.2rem;
  
}
.latest-news a :hover{
   background-color: #ed4b4e;
   border-radius: 0.2rem;
}
.latest-title :hover{
  color: #ffffff;
}
.omake-news{
  background-color: #87c407;
  color: #FFFde7;
  font-weight: bold;
  margin:0 0.3rem;
  padding: 0.2rem 0.5rem;
  border-radius: 1rem;
  text-shadow: 1px 1px 2px #446401;
  box-shadow: 1px 1px 1px #446401; 
}
.menu {
  color: #ffffff;
  font-weight: bold;
  text-shadow: 1px 2px 2px #4e7202;
  background-color: #87c407;
  padding: 0.5rem;
  border-radius: 0.2rem;
  margin:0.25rem;
}
nav{
  margin-top: 2rem;
}
nav li a:hover {
  background-color: #347410;
  padding: 0.5rem;
  border-radius: 0.2rem;
  margin:0.25rem;
}
.social-wrapper{
  width:92%;
  padding: 1rem 0 0.5rem 0;
}
.social-wrapper li{
  padding: 0 0.2rem;
}
.main {
  width: 100%;
  -webkit-align-items:flex-start;
  -ms-flex-align: start;
      align-items: flex-start;
  background-color: #E8e175;
}
.contents {
  width: 73rem
}
.mat{  
  background-color: #e8e175;
  width: 98%;
  padding-bottom: 3.5rem;
}

.topbtn{
  border-radius: 1rem;
  height: 9rem;
  margin: 0.3rem 0.2rem;
  border-style:solid;
  box-shadow: 0 5px 2px #ddc44a;
}
.btn-A{ 
  border-color: #ED4B4E; 
}
.btn-I{
  border-color: #FB8E09; 
}
.btn-U{
  border-color: #5FB130; 
}
.btn-Y{
  border-color: #46C1D0; 
}
.btn-E{
  border-color: #BD79FF; 
}
.btn-O{
  border-color: #426FF4; 
}
.btn :active,
.btn :focus,
.btn :hover {
  -webkit-transform: scale( 1.1);
  transform: scale( 1.1);
  transition: 0.1s ease-in-out;
}
.starIcon-wrapper {
  width:100%;
  background-color: #ffd897;
}
.youtube-mat{
  width: 82%;
  border-style: solid;
  border-color: gold;
  border-width: 1px;
  margin: 1rem 0 1.5rem 0;
}
.youtube {
  width: 100%;
  background-color: gold;
}
.youtube img{
  width: 60px;
  height: 25px;
  background-color: white;
  padding: 0.2rem;
  margin: 0.2rem 0 0 0.2rem;
  border-radius: 0.2rem;
}
.youtube h2 {
  background-color: gold;
  margin: 0.6rem 0 0 0.8rem;
  font-size: 1.15rem;
  padding-bottom: 0.5rem;
  color: #724b02;
}
.youtube p {
  font-size: 0.8rem;
  color: #724b02;
  margin-left: 1.5rem;
}
.youtube span {
  font-weight: bold;
}
.channel :hover{
   text-decoration: underline;
}
.youtube-list {
  width: 96%;
  margin: 0.5rem 0 0.5rem 1rem;
}
.youtube-item {
  margin: 0.6rem 0;
}
.youtube-thumbnail {
  width: 90px;
  height: 51px;
  background-color: white;
  padding: 0.1rem;
  box-shadow: 1px 1px 1px #c6a702;
  margin-bottom: 0.2rem;
}
.youtube-link span{
  font-weight: bold; 
  font-size: 1.1rem;
  margin:0 0 0 0.5rem;
  color: #724b02;
}
.youtube-link :hover{
   background-color: #ed4b4e;
   border-radius: 0.2rem; 
   color: #ffffff;
}
.youtube-list span {
  margin-top: 0.3rem;
}
.youtube-list p {
  margin: 0.2rem 0 0 1rem;
  font-size: 0.9rem;
  color: #724b02;
}
.videolist-btn{
  align-items: center;
  background-color: #ED4B4E; 
  border-radius: 1rem;
  margin:0.6rem 0.3rem;
  box-shadow: 0 5px 2px #ff9700;
}
.videolist-btn p {
  margin: 1rem 1rem;
}
.videolist span{
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
  text-shadow: none;
}
.videolist :hover{
  color: #fff;
  font-size: 1.05rem;
  text-shadow: 1px 2px 2px #460708;
}
.omake-mat{
  background-color: #fffde7;
  padding: 0.5rem 0 2rem 0;
  box-shadow: 1px 7px 7px #ddc44a;
}
.consonants{
  width:100%;
  margin: 1rem 0;
}
.consonants-heading p{
  margin: 0.4rem 0.5rem;
  color: #724b02;
}
.consonant-card{
  width: 8rem;
  height: 6rem;
  align-items: center;
  background-color: #87c407; 
  border-radius: 1rem;
  margin:0.6rem 0.3rem;
  box-shadow: 0 5px 2px #ddc44a;
}
.consonants span{
  color: #ffffff;
  font-size: 3.5rem;
  font-weight: bold;
  text-shadow: 1px 2px 2px #4e7202;
}
.consonant-btn :hover {
  color: #347410;
  text-shadow: none;
}
.omake-title{
  width: 100%;
  margin: 1rem 0;
  padding:0;
}
.omake-title h1{
  background-color: #87c407;
  font-size: 2rem;
  color: #FFFde7;
  font-weight: bold;
  margin:0;
  padding: 0.2rem 1rem;
  border-radius: 2rem;
  text-shadow: 1px 1px 2px #446401;
  box-shadow: 1px 1px 2px #446401;
}
.omake-wrapper{
  width: 16rem;
  margin: 0.8rem;
}
.omake-btn{
  border-radius: 1rem;
  width: 16rem;
  margin: 0.3rem 0.2rem 0.6rem 0.2rem;
  border-style:solid;
  box-shadow: 0 5px 2px #e9d881;
}
.omake-btn-title{
  background-color: #ed4b4e;
  color: #fff;
  text-shadow: 1px 1px 1px #724b02;
  text-align: center;
  width: 16rem;
  padding: 0.3rem 0;
  margin: 0 0 0.5rem 0;
}
.goods-title{
  background-color: #5FB130;
  color: #fff;
  text-shadow: 1px 1px 1px #724b02;
  text-align: center;
  width: 16rem;
  padding: 0.3rem 0;
  margin: 0 0 0.5rem 0;
}
.line-title{
  background-color: #FB8E09;
  color: #fff;
  text-shadow: 1px 1px 1px #724b02;
  text-align: center;
  width: 16rem;
  padding: 0.3rem 0;
  margin: 0 0 0.5rem 0;
}
.book-title{
  background-color: #BD79FF;
  color: #fff;
  text-shadow: 1px 1px 1px #724b02;
  text-align: center;
  width: 16rem;
  padding: 0.3rem 0;
  margin: 0 0 0.5rem 0;
}
.omake-caption{
  font-size: 0.85rem;
}
footer {
  margin-top: 1rem;
  width:100%;
  border-top-style: solid;
  border-width: 1px;
  border-color: #724b02;
  padding: 1.5rem 0;
  background-color: #e8e175;
}
.social-buttons{
  margin: -1rem 0 0.5rem 1rem;
}
.social-icon {
  width: 2.5rem;
  margin: 0 0.25rem;
  box-shadow: 1px 4px 2px #ddc440;
  border-radius: 5px;
}
.copyright {
  color: #724b02;
  font-size: 0.75rem;
  padding-right: 0.5rem;
}
.logo-home{
 width: 8rem;
 margin-top: -1rem;
}
/*second-large screen-------2*/
@media all and (max-width: 1350px){
  .logo{
    width: 18rem;
  }
  #ally-name{
    margin:20px 0 0 550px;
  }
  #fuzzy-name{
    margin: -30px 0 0 -300px;
  }
  .topbtn{
    height: 8rem;
  }
  .contents {
    width: 65rem;
  }
}
/*medium screen---------3*/
@media all and (max-width: 1220px){
  .contents {
    width: 63rem;
  }
  .logo{
    width: 16rem;
    margin-left: 1rem;
  }
  #ally-name{
    margin:20px 0 0 550px;
  }
  #fuzzy-name{
    margin: -50px 0 0 -300px;
  }
  .mat {
    margin: 0;
  }
  .topbtn{
    height: 7.75rem;
  }
}
/*tablet------------4*/
@media all and (max-width: 1024px){
  header {
  padding-bottom:25%  
  }
  .header-bg{
    background-image:url("../images/header/header-1120.png");
  }
  .logo{
    width: 12.75rem;
    margin-left: 0.7rem;
    margin-top: 0.4rem;
  }
  #ally-name{
   display: none;
  }
  #fuzzy-name{
    display: none;
  }
  .topbtn{
    height: 6.5rem;
  }
  .contents {
    width: 53.75rem;
  }
}
@media all and (max-width: 715px){
  .nav li{
    margin:0.6rem 0;
  }

  .catchcopy{
    font-size: 1rem;
  }
  .copy{
    font-size:0.8rem;
  }
  .consonant-card{
  width: 5rem;
  height: 5rem;
  border-radius: 0.6rem;
}
.consonants span{
  font-size: 3rem;
}
}
/*mini-tablet--------5*/
@media all and (max-width: 640px){
 .logo{
    width: 10rem;
    margin-left: 0.6rem;
    margin-top: 0.1rem;
  }  
  .topbtn{
    height: 5rem;
    margin: 0.2rem 0.1rem;
  }
  .catchcopy{
    font-size: 0.8rem;
  }
  .copy{
    font-size: 0.75rem;
  }
  .new h3{
  font-size: 0.8rem;
}
 .arrow-left{
  width: 0; 
  height: 0; 
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;  
  border-right: 12px solid #fffde7; 
}
.latest-news p{
  font-size: 0.8rem;
  margin: 0;
  line-height: 1.8;
}
  .social-icon {
  width: 2rem;
  margin: 0 0.35rem;
 }
}
@media all and (max-width: 500px){
  header {
  padding-bottom:33.33%  
  }
  .header-bg{
    background-image:url("../images/header/header-540.png");
  }
  }
@media all and (max-width: 390px){
.videolist span{
  font-size: 0.75rem;
}
.videolist :hover{
  font-size: 0.8rem;
}
  .logo{
    width: 9rem;
  }
  header {
  padding-bottom:40%  
  }
  .header-bg{
    background-image:url("../images/header/header-400.png");
  }
  .logo-home{
   padding:0 1rem 0 3rem;
   width: 8rem;
   margin-top: 0.25rem;
  }
}
