@charset "utf-8";

/* サブナビ　固有
nav.sub_nav{
  border-top: solid 1.5px red;
}
ul.sub_nav{
  border-left: solid 1.5px red;
}*/

/* 固有 page_title */
h1.page_title{
  margin: -15px 0 0 0;
  border-top: solid 1px red;
  font-size: 26px;
}

/* 目次 */
nav.sub_nav_kaiken{
  width: 100%;
  background: #636363;
  padding: 7px 0;
  border-top: solid 1px red;
  border-bottom: solid 1px red;
}
ul.sub_nav_kaiken{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  width:80%;
  margin: 5px 0 0 80px;
  padding: 0px 20px 0px 10px;
}
.sub_nav_kaiken li {
  width: 40%;
  border-left: solid 1px red;
  padding: 0px 20px 0px 8px;
  margin: 6px 0px;
  font-size: 17px;
  line-height: 1.3;
}
.sub_nav_kaiken li a {
  display: block;
  font-size: 17px;
  color: #fff;
  font-weight: normal;
}

/* ---- section "materials" start  ----*/
section.materials{
}
h2.category{
  width: 100%;
  padding: 20px 0 20px 0;
  margin: 0 0 0 0;
  font-size: 34px;
  letter-spacing: 2px;
  font-weight: ;
  text-align: center;
  box-shadow: 10px 10px 15px -10px;
}
h2.gray{
  background: #e0e0e0;
  color: #000;
  border-top: solid 3px red;
  border-bottom: solid 3px red;
}
h2.ff9999{
  background-color: #ff9999;
  color: #000;
}

/* ----  resume start  ----*/
.box{
  width: 100%;
  padding: 0;
  margin: 0 0 80px 0;
}
.black{
  background-color: #000;
  width: ;
}
h3.heading{
  margin: 0;
  padding: 20px 10px 20px 0;
  text-align: center;
  line-height: 1.6;
  font-size: 26px;
  text-shadow: 1px 2px 3px #808080;
}
.box img{
  display: block;
  margin: 0 auto;
  width: 35%;
}
.phrase{
  width: 75%;
  margin: 20px auto;
  padding: 30px 50px;
  background-color: #eee;
  font-size: 18px;
  line-height: 1.7;
}
h4{
  font-size: 22px;
}
img.kinkyujitai{
  margin: 0px auto;
  padding: 30px 0;
  width: 60%;
}

/* 画像から跳ぶリンク　*/
.box img.img_for_link{
  width: 30%;
  margin: 20px auto;
  border: solid 7px red;
}
.box a img.img_for_link{
  display: block;
  transition: all 0.6s ease 0s;
}
.box a:hover img.img_for_link{
  opacity: 1;
  cursor: pointer;
  transform: scale(1.03, 1.03);
}
.box p{
  display: block;
  width: ;
  margin: 20px 27%;
  font-size: 18px;
　color: ;
  line-height: 1.7;
}
ul.flex{
  display: flex;
  flex-wrap: wrap;
  justify-content:space-around;
  width: 80%;
  padding: 10px 0;
  margin: 20px auto ;
  border-top: solid 1.5px red;
  border-bottom: solid 1.5px red;
}
ul.flex li{
  width: 45%;
  padding: 8px 0px 8px 20px;
  margin: 0px 10px;
  line-height: 1.3;
  font-weight: bold;
  border-left: solid 1.5px red;
}
hr{
  width: 70%;
  margin: 0 auto;
  border-top: dotted 2px blue;
}



/* TOPへ戻る　*/
.return_pagetop{
  width: 100%;
  padding: 12px 0;
  margin: 0px 0 15px 0px;
  background: #636363;
  border-top: solid 1.5px #ffcc66;
  font-size: 16px;
  text-align: center;
  box-shadow: 10px 10px 15px -10px;
}
.return_pagetop a{
  display: block;
  color: #fff;
}
