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


.pan{
  width : 100%;
  font-size : 1.4rem;
}

.breadcrumb{
  margin : 5px 0px 0px;
  padding: 0;
  list-style: none;
}

.pan ol::after{
  content: "";
  clear : both;
  display : block;
}

.breadcrumb li{
  list-style: none;
  width : auto;
  float : left;
  padding-left : 20px;
}

.breadcrumb li a{
  text-decoration: none;
  color : #1f1f1f;/*色*/
}

.breadcrumb li a:hover{
  text-decoration: underline;
  color : silver;
}

.page_title{
  text-align : center;
}


.page_title h1{
  font-size : 7rem;
  font-weight : 500;
  font-family : 游明朝;
  z-index: 20;
  position : relative;
  text-align : center;
  padding-top : 50px;
  letter-spacing : 0.5rem;
}

.page_title p{
  font-size : 10rem;
  color : #ffffff;
  text-shadow:1px 1px 0 #f1f1f1, -1px -1px 0 #f1f1f1,
              -1px 1px 0 #f1f1f1, 1px -1px 0 #f1f1f1,
              0px 1px 0 #f1f1f1,  0-1px 0 #f1f1f1,
              -1px 0 0 #f1f1f1, 1px 0 0 #f1f1f1;
  font-weight : 900;
  margin-top : -140px;
  z-index: 10;
  position : relative;
  margin-bottom : 50px;
}

.main p{
  text-align: justify;
  text-justify: inter-ideograph;
}

.box1{
  margin-top : 50px;
}

.box1 li{
  text-align: center; /* 中央寄せ */
  list-style-type: none; /* リストのマーカーを消去 */
  margin : 10px;
  padding-top : 5px;
  padding-left : 5px;
  padding-right : 5px;
  padding-bottom : 5px;border-width : 1px;border-style : solid;border-color : #1f1f1f;
  width : 300px;
}

.box1 a{
  text-decoration : none;
  color : #1f1f1f;
}

.box1 a:hover{
  color : silver;
}

.box2{
  margin-top : 50px;
  margin-bottom : 100px;
}

.box2 h2{
  text-align : center;
  font-size : 5rem;
  font-weight : 400;
}

.boxA{
  margin-top : 50px;
}

.boxA2 h3{
  font-size : 3rem;
  font-weight : 400;
}

.boxA2 h4{
  font-size : 1.6rem;
  font-weight : 400;
}

.boxA2 h4 a{
  text-decoration : none;
  border-width : 1px;border-style : solid;border-color : #1f1f1f;
  color : #1f1f1f;
  padding-top : 5px;
  padding-left : 20px;
  padding-right : 20px;
  padding-bottom : 5px;
}

.boxA2 h4 a:hover{
  color:silver;
}

.boxB{
  margin-bottom : 50px;
}

.boxB h3{
  font-size : 2rem;
  font-weight : 400;
}

.boxB h4{
  font-size : 1.6rem;
  font-weighr : 400;
}

.boxB h4 a{
  text-decoration : none;
  border-width : 1px;border-style : solid;border-color : #1f1f1f;
  color : #1f1f1f;
  padding-top : 5px;
  padding-left : 20px;
  padding-right : 20px;
  padding-bottom : 5px;
  font-weight : 400;
}

.boxB h4 a:hover{
  color:silver;
}






/* ########## 767px以下 ########## */ 

@media (max-width: 767px) {

.pan{
  font-size : 1.2rem;
  margin-top : 10px;
}

.page_title h1{
  font-size : 3rem;
  font-weight : 500;
  font-family : 游明朝;
  z-index: 20;
  position : relative;
  text-align : center;
  padding-top : 30px;
}

.page_title p{
  font-size : 4rem;
  color : #ffffff;
  text-shadow:1px 1px 0 #f1f1f1, -1px -1px 0 #f1f1f1,
              -1px 1px 0 #f1f1f1, 1px -1px 0 #f1f1f1,
              0px 1px 0 #f1f1f1,  0-1px 0 #f1f1f1,
              -1px 0 0 #f1f1f1, 1px 0 0 #f1f1f1;
  font-weight : 900;
  margin-top : -60px;
  z-index: 10;
  position : relative;
}

.main{
  margin-left : 10px;
  margin-right : 10px;
}

.box1 ul{
  text-aligin : center;
}
 
.box1 li{
  margin-left : -15px;
}

.boxA{
  margin-top : -20px;
  margin-bottom : 80px;
}

.boxA h3{
  width : 100%;
  margin-top : 0px;
  text-align : center;
}

.boxA p{
  margin-top : -30px;
}

.boxA h4{
  width : 90%;
  margin-top : 0px;
  margin-left : auto;
  margin-right : auto;
  text-align : center;
}

.boxB1,.boxB2,.boxB3{
  margin-top : -20px;
  margin-bottom : 80px;
}

.boxB h3{
  width : 100%;
  margin-top : 10px;
  text-align : center;
}

.boxB p{
  margin-top : -10px;
}

.boxB h4{
  width : 90%;
  margin-top : 0px;
  margin-left : auto;
  margin-right : auto;
  text-align : center;
}

}


/* ########## 768px以上 ########## */ 

@media (min-width: 768px) {

.box1{
  max-width : 1000px;
  margin-left : auto;
  margin-right : auto;
}

.box1 ul{
  text-align: center;
  margin: 0;  /* 余分なマージンを消去 */
  padding: 0; /* 余分なパディングを消去 */
}
 
.box1 li{
  display: inline-block; /* 横並びに */
  margin-left : 15px;
  margin-right : 15px;
}

.box2{
  max-width : 1000px;
  margin-left : auto;
  margin-right : auto;
}

.boxA::after{
  content : "";
  display : block;
  clear : both;
}

.boxA1{
  float : left;
  width : 50%;
}

.boxA2{
  float : left;
  width : 50%;
}

.boxA2 h3{
  padding-left : 30px;
  margin-top : 0px;
  }

.boxA2 p{
  padding-left : 35px;
    margin-top : -20px;
  }

.boxA2 h4{
  margin-left : 35px;
}

.boxB::after{
  content : "";
  display : block;
  clear : both;
}

.boxB1{
  float : left;
  width : 33.3%;
  padding-right : 20px;
}

.boxB2{
  float : left;
  width : 33.4%;
  padding-right : 10px;
  padding-left : 10px;
}

.boxB3{
  float : left;
  width : 33.3%;
  padding-left : 20px;
}

.boxB h3{
  margin-top : 10px;
    text-align : center;
    width : 100%;
  }

.boxB p{
  margin-top : -10px;
}

.boxB h4{
  text-aligin : center;
  width : 90%;
    text-align : center;
    margin-left : auto;
    margin-right : auto;
  }


}