@charset "utf-8";

/*============

common.css

=============*/

/* RESET ----------------------------- */

#container {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
}

#fullIndex {
  padding: 0;
  width: 100%;
  max-width: 100%;
  position: relative;
}

.macOS #fullIndex a {
  margin-bottom: 0;
}

article#fullIndex h1::before,
article#fullIndex h3::before,
article#fullIndex h4::before,
article#fullIndex h5::before,
article#fullIndex h6::before,
article#fullIndex h1::after,
article#fullIndex h2::after,
article#fullIndex h4::after,
article#fullIndex h5::after,
article#fullIndex h6::after {
  display: none !important;
}

article h2, 
article h3, 
article h4, 
article h5 {
  padding: 0;
  background: transparent;
  border: 0;
  color: #000;
}

article h2 {
  font-size: 100%;
}

article#fullIndex h2, 
article#fullIndex h3, 
article#fullIndex h4, 
article#fullIndex h5, 
article#fullIndex h6 {
  margin: 0;
}

article#fullIndex ul, 
article#fullIndex li ul {
  list-style: none;
  margin-top: 0;
  padding-left: 0;
}

article ul li, 
article li ul li, 
article p {
  margin-top: 0;
}

article ul li, 
article li ul li {
  margin-bottom: 0;
}

article p:not(:last-child) {
  margin-bottom: 0;
}

strong {
  font-weight: bold
}

em {
  font-style: italic
}

h1, 
h2, 
h3, 
h4, 
h5, 
h6 {
  font-family: sans-serif;
  font-weight: bold;
}

.txtRed {
  color: #c00;
}

.txtBlue {
  color: #036;
}

#container h2 {
  margin-top: 0;
}

/* COMMON ---------------------------------------------------- */

.for_sphone {
  display: none;
}

.flex_cont {
  display: flex;
}

.link_list a {
  padding-left: 1em;
  position: relative;
  background: url(../../img/link_icon.png) 4px 50% / 7px 12px no-repeat transparent;
}

.link_list a:hover {
  opacity: 0.7;
}

/*============

media queries

=============*/
/*-------------

PC

--------------*/

@media (min-width: 1280px) {
  article > * {
    max-width: none;
  }
}

/*-------------

タブレット・スマホ

--------------*/

@media (max-width: 959px) {
  .for_sphone {
    display: none;
  }

  .link_list a {
    padding: 1em 1em 1em 2em;
    display: block;
    background: url(../../img/link_icon.png) 1em 50% / 7px 12px no-repeat #cde;
  }
}

/*-------------

スマホ

--------------*/

@media (max-width: 639px) {
  .for_sphone {
    display: block;
  }
  #container + .to_upper_dir {
    margin-top: clamp(60px,15.625vw,120px);
  }
}
