html {
  scroll-behavior:smooth;
}

body
{
  background-color:#FFF;
}

a{
  color:#000;
}

a:hover{
  color:#ff6347;
}

div.text
{
  width:98%;
  margin:auto;
}

div.top{
  width:98%;
  margin:auto;
  position:relative;
}

/* menu */

.nav {
  width:100%;
  background-color:#fff;
  box-shadow: 2px 2px 10px;
  position:fixed;
  z-index:1;
}

.menu {
  width:100%;
  height:40px;
  background-color:#fff;
  margin:auto;
}

.menu ul {
  display:flex;
  justify-content:flex-start;
  align-items:left;
}

.menu li {
  color:#000;
  margin:0px 5px;
  padding:0px 10px 17px 10px;
}

.menu h5 {
  margin-top:10px;
  margin-bottom:0px;
  font-size:12px;
  font-weight:normal;
  color:#000;
  text-align:center;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.backRed {
  background-color:#fb9887;
  border-radius:0 0 0 0px;
}

.red_underline {
  border-bottom-style:solid;
  border-bottom-color:#ff6347;
  border-bottom-width:5px;
}

.red_underline_s {
  border-bottom-style:solid;
  border-bottom-color:#ff6347;
  border-bottom-width:2px;
}

.yellow_underline_s {
  border-bottom-style:solid;
  border-bottom-color:#ffd700;
  border-bottom-width:2px;
}

/* mobile menu */

.btn-menu {
  position:fixed;
  background-color:#ff6347;
  top:0px;
  right:0px;
  color:#fff;
  padding:12px 10px;
  z-index:5;
}

.mob_menuIt {
  background-color:#fff;
  width:0;
  position:fixed;
  z-index:4;
  top:40px;
  right:0;
  overflow:hidden;
  transition:0.2s;
  box-shadow: 2px 2px 10px;
  border-radius:0 0 0 5px;
}

.mob_menuIt.open-menu {
  width:200px;
}

.mob_menuIt li {
  text-align:center;
  margin:1rem 0;
  font-size:14px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.mob_menuIt a {
  display:block;
}

/* footer_menu */

.footer_menu {
  position:fixed;
  z-index:2;
  bottom:0px;
  padding:10px;
  background-color:rgba(255,99,71,0.8);
  box-shadow: 0px 2px 7px;
}

.footer_menu ul {
  display:flex;
  justify-content:center;
  align-items:center;
}

.footer_menu li{
  margin:0px 6px;
  font-size:14px;
  font-weight:normal;
  color:#fff;
  text-align:center;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

/* album_menu */

.album_menu {
  position:fixed;
  z-index:2;
  right:20px;
  bottom:55px;
  padding:10px;
  background-color:rgba(255,99,71,0.8);
  box-shadow: 0px 2px 7px;
  border-radius:20px;
}

.album_menu ul {
  display:flex;
  justify-content:center;
  align-items:center;
}

.album_menu li{
  margin:0px 6px;
  font-size:14px;
  font-weight:normal;
  color:#fff;
  text-align:center;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

/* bottom nav */

.nav_bottom {
  width:100%;
  bottom:0;
  background-color:#ffd700;
  box-shadow: 1px 1px 8px;
  position:fixed;
  z-index:2;
}

.fmenu ul {
  display:flex;
  justify-content:center;
  align-items:left;
}

.fmenu li {
  color:#000;
  margin:0px 5px;
  padding:0px 10px 17px 10px;
}

.fmenu h5 {
  margin-top:10px;
  margin-bottom:0px;
  font-size:12px;
  font-weight:normal;
  color:#000;
  text-align:center;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}


/* font */

h1.logo{
  font-size:60px;
  text-align:center;
  font-family: 'Shrikhand', cursive;
}

p.news_text
{
  color:#000;
  font-size:14px;
  line-height:150%;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  margin:30px 100px;
}

.top_title
{
  margin-top:0px;
  font-size:100px;
  color:#000;
  text-align:left;
  line-height:120px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.since{
  font-size:20px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  color:#ff6347;
  text-align:right;
  margin-top:0px;
}

h2.title
{
  padding-top:0px;
  padding-bottom:20px;
  font-size:60px;
  color:#000;
  text-align:center;
  font-family: 'Shrikhand', cursive;
}

h4
{
  margin-top:0px;
  margin-bottom:2px;
  font-size:30px;
  color:#ff6347;
  font-weight: bold;
  text-align:left;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

h4.news
{
  margin-top:10px;
  margin-bottom:10px;
  font-size:20px;
  color:#ff6347;
  font-weight:bold;
  text-align:center;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

h5.date{
  color:#000;
  font-size:12px;
  margin-top:5px;
  margin-bottom:10px;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.area_text{
  font-size:12px;
  margin-top:1px;
  margin-bottom:0px;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

p.coupon{
  font-size:14px;
  text-align:center;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.news_title
{
  font-size:20px;
  font-weight:bold;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.midashi_pink {
  background-color:#ff6347;
  text-align: center;
  width:140px;
  padding:5px;
  border-radius:5px;
  color:#fff;
  margin-bottom:10px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size:14px;
  display:block;
  margin:auto;
}

.midashi_gray {
  background-color:#696969;
  text-align: center;
  width:140px;
  padding:5px;
  border-radius:5px;
  color:#fff;
  margin-bottom:10px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size:14px;
  display:block;
  margin:auto;
}

.midashi_nyukai {
  background-color:#ffd700;
  text-align: left;
  width:140px;
  padding:5px;
  border-radius:5px;
  color:#000;
  margin-bottom:10px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size:14px;
  margin:20px 150px;
}

.yougu_yellow {
  background-color:#ffd700;
  padding:1px 2px;
  border-radius:5px;
  color:#000;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size:14px;
}

p.toptext
{
  margin-top:20px;
  font-size:14px;
  line-height:175%;
  font-weight:normal;
  text-align:center;
  color:#000;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

p.teamlist
{
  font-size:14px;
  font-weight:normal;
  text-align:left;
  color:#000;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

p.sns
{
  font-size:10px;
  font-weight:bold;
  margin:auto;
  color:#000;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  background-color:#fff;
  width:100px;
  margin-top:3px;
  padding:1px;
  border-radius:10px;
}

.shop_name
{
  font-size:24px;
  font-weight:bold;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

/* icon */

.icon{
  width:1em;
  height:1em;
}

.mark{
  width:2em;
  height:2em;
  vertical-align: bottom;
}

/* form */

.form_taiken {
  border:0;
  padding:10px;
  font-size:14px;
  color:#000;
  border:solid 1px #ccc;
  width:300px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  display:block;
  margin:auto;
  border-radius:10px;
  text-align:center;
}

textarea.form {
  border:0;
  padding:10px;
  font-size:14px;
  color:#000;
  border:solid 1px #ccc;
  width:300px;
  height:300px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  display:block;
  margin:auto;
  border-radius:10px;
  text-align:left;
}

.btn {
  border:0;
  padding:10px;
  font-size:14px;
  color:#fff;
  background-color:#ff6347;
  border:solid 1px #ccc;
  width:150px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  display:block;
  margin:auto;
  margin-top:10px;
  border-radius:10px;
  text-align:center;
}

p.taiken
{
  font-size:14px;
  line-height:200%;
  margin-top:5px;
  margin-bottom:0px;
  font-weight:normal;
  text-align:center;
  color:#000;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.form_text{
  font-size:13px;
  line-height:200%;
  margin-top:3px;
  margin-bottom:0px;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

p.taiken_big
{
  font-size:20px;
  line-height:240%;
  margin-top:10px;
  margin-bottom:0px;
  font-weight:normal;
  text-align:center;
  color:#ff6347;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

hr.taiken
{
  width:100px;
  height:20px;
  border-top: none;
  border-left:6px dotted #ff6347;
  border-right:6px dotted #ff6347;
  border-bottom:none;
  margin:auto;
  margin-bottom:50px;
  margin-top:50px;
}

/* form_radio */

label {
  position: relative;
  cursor: pointer;
  padding-left: 30px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size:14px;
}

label::before,
label::after {
  content: "";
  display: block; 
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}

label::before {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  left: 8px;
}

label::after {
  background-color: #ff6347;
  border-radius: 50%;
  opacity: 0;
  width: 16px;
  height: 16px;
  left: 7px
}

input:checked + label::after {
  opacity: 1;
}

.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}

div.radio {
  text-align:center;
}


/* table */

.schoollist{
  margin:auto;
  width:80%;
  margin-top:0px;
  margin-bottom:10px;
}

.schoollist th{
  font-size:16px;
  color:#ff6347;
  text-align:left;
  font-weight:bold;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.schoollist td{
  width:50%;
  background-color:#ff6347;
  border-radius:10px;
  padding:20px;
  margin:2%;
  text-align:center;
  vertical-align:middle;
  font-size:14px;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.schoollist tr,td{
  padding:2px;
}

.enkaku{
  margin:auto;
  width:550px;
  margin-top:0px;
  margin-bottom:10px;
}

.enkaku tr:nth-child(odd) {
  background-color:#ffb6c1;
}

.enkaku td:nth-child(odd) {
  padding:20px;
  margin:2px;
  vertical-align:middle;
  text-align:right;
  font-size:10px;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.enkaku td:nth-child(even) {
  padding:20px;
  margin:2px;
  text-align:left;
  line-height:200%;
  font-size:14px;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

/* list */

ol.corona{
  counter-reset:list;
  list-style-type:none;
  color:#000;
  font-size:14px;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  padding:0px;
  width:550px;
  margin:auto;
}

ol.corona li{
  position:relative;
  padding: 10px 0px 10px 20px;
  margin: 7px 0 7px 0px;
  font-weight: normal;
  font-size:14px;
  line-height: 30px;
  border-bottom: dashed 1px #F6A38B;
  line-height:1.5;
}

ol.corona li:before{
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 0px;
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #ff6347;
  top: 50%;
  transform: translateY(-50%);
}

/* partner */

.partner_name {
  font-size:17px;
  padding-top:40px;
  color:#000;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.partner_link {
  font-size:10px;
  padding-bottom:5px;
  color:#ff6347;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.partner_team {
  font-size:10px;
  color:#000;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.partner_team::before {
  content: "= ";
}

.partner_team::after {
  content: " =";
}


/* about */

p.text_about
{
  color:#000;
  font-size:14px;
  line-height:150%;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  margin:20px 150px;
}

.about ol
{
  list-style:none;
  counter-reset:list-item;
  padding: 0;
  margin: 0;
}

.about li
{
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size: 13px;
  line-height: 1.5;
  margin: 20px 50px;
  padding-left: 30px;
  position: relative;
  text-align: center;
}

.about li::before
{
  content: counter(list-item);
  counter-increment:list-item 0.5;
  border: 1px solid;
  background-color:#F6A38B;
  box-sizing: border-box;
  border-radius: 50%;
  height: 22px;
  width: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 85%;
}

.about_list
{
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  color:#000;
  font-size: 13px;
  line-height: 2;
  text-align: center;
}

.number
{
  border: 1px solid #000;
  background-color:rgba(255,182,193,0.7);
  color:#000;
  font-weight:bold;
  border-radius: 50%;
  padding:3px 9px;
  font-size: 90%;
}

.yajirushi
{
  width:35px;
  display:block;
  margin:auto;
  padding:10px 0px;
}

.t_about{
  margin:auto;
  width:400px;
  margin-top:10px;
  margin-bottom:40px;
}

.t_about tr:nth-child(odd) {
  background-color:rgba(255,182,193,0.3);
}

.t_about td:nth-child(odd) {
  padding:10px;
  margin:2px;
  vertical-align:middle;
  text-align:right;
  font-size:10px;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.t_about td:nth-child(even) {
  padding:10px;
  margin:2px;
  text-align:left;
  line-height:120%;
  font-size:14px;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.gakunen {
  background-color:black;
  text-align: center;
  width:60px;
  padding:5px;
  border-radius:5px;
  color:#fff;
  margin-bottom:10px;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-size:13px;
  display:block;
  margin:auto;
}

/* image */

hr.top
{
  width:40px;
  height:3px;
  border-top: 6px dotted #ff6347;
  border-left:none;
  border-right:none;
  border-bottom:none;
  margin:auto;
  margin-bottom:30px;
  margin-top:30px;
}

iframe.map{
  width:100%;
  height:400px;
  border:none;
  border-radius:10px;
  margin-top:20px;
}

.photo
{
  width:100%;
  border-radius:10px;
  margin-bottom:5px;
}

.photo_small
{
  width:60%;
  border-radius:10px;
  display:block;
  margin:auto;
  margin-bottom:5px;
}

.photo_zu
{
  width:200px;
  display:block;
  margin:auto;
  margin-top:10px;
  margin-bottom:30px;
}

.cap
{
  font-size:10px;
  padding-bottom:20px;
  color:#000;
  text-align:center;
  font-weight:normal;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

.photo_top
{
  width:100%;
  border-radius:0 0 10px 10px;
  padding-top:40px;
  margin-bottom:5px;
}

.photo_pagetop
{
  width:60%;
  filter:brightness(120%);
  border-radius:10px;
  padding-top:40px;
  margin-bottom:10px;
  display:block;
  margin:auto;
}

.footer_text{
  text-align:center;
  font-size:12px;
  margin-bottom:20px;
  color:#ff6347;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

@media screen and  ( min-width:700px ) {
  div.text{width:700px;}
  .menu{width:700px;}
  .footer_menu{width:120px;left:4px;bottom:0px;border-radius:10px 10px 0px 0px;}
  .photo_pagetop{width:50%;}

}

@media screen and ( max-width:499px ) {
  p.text_about{margin:20px 20px;}
  .midashi_nyukai{margin:20px 20px;}
  p.news_text{margin:30px 20px;}
  p.logo{font-size:50px;}
  table.shopinfo{width:100%;}
  .schoollist{width:98%;}
  .schoollist td{padding:10px;}
  .shopinfo td{font-size:12px;}
  .enkaku{width:98%;}
  .enkaku td:nth-child(odd){width:100px;padding:20px 20px 20px 10px;}
  .enkaku td:nth-child(even){padding:20px 10px 20px 10px;font-size:12px;}
  .t_about{width:98%;}
  .t_about td:nth-child(odd){width:20px;}
  .t_about td:nth-child(even){padding:20px 10px 20px 10px;font-size:12px;}
  ol.corona{width:96%;}
  .top_title{font-size:80px;line-height:80px;}
  div.text{width:94%;}
  h2.title{font-size:40px;}
  .area_text{font-size:10px;}
  .footer_menu{width:120px;left:4px;bottom:0px;border-radius:10px 10px 0px 0px;}
}

@media screen and ( max-width:280px ) {
  p.text_about{margin:10px 10px;}
  .schoollist td{font-size:13px;}
  p.logo{font-size:30px;}
  .menu h5{font-size:10px;}
  .top_title{font-size:50px;line-height:80px;}
  h2.coupon{font-size:16px;}
  iframe.coupon{height:230px;}
  .news_text{margin:20px;}
  .form_taiken {width:90%;}
  textarea.form {width:90%;}
  .menu h5 {font-size:10px;}
  .menu li {margin:2px 5px 0px 2px;padding:3px;}
  p.toptext {font-size:10px;}
  h2.title{font-size:35px;}
  .footer_menu{width:100%;}
}