.sp {
  display: none; }

.pc {
  display: block; }

@media only screen and (max-width: 1160px) {
  .sp {
    display: block; }

  .pc {
    display: none; } }
h1 img {
  max-width: 550px;
  height: auto; }

h2 {
  text-align: center;
  font-size: 3rem;
  color: #2975AC;
  font-weight: bold;
  margin-bottom: 20px; }

h2 span {
  display: block;
  font-size: 1.6rem;
  margin-top: 10px;
  color: #000;
  font-weight: normal; }

header h2 {
  font-size: 5rem;
  margin-bottom: 20px; }
header p {
  font-size: 2rem; }

@media only screen and (max-width: 1160px) {
  h1 img {
    width: 80vw;
    height: auto; }

  h2 {
    font-size: 1.8rem; }

  header h2 {
    font-size: 3rem; }
  header p {
    font-size: 1.6rem; } }
#list div {
  border-radius: 20px;
  text-align: center;
  width: 1160px;
  margin: 0 auto 50px;
  padding: 50px;
  background: #fff;
  position: relative; }
  #list div:after {
    content: "";
    display: block;
    height: 50px;
    width: 100%;
    background: url("../images/top/arrow.png") no-repeat center center;
    background-size: 60px auto;
    position: absolute;
    bottom: -50px;
    left: 0; }
  #list div:last-child:after {
    background: none; }
  #list div figure {
    margin-bottom: 40px; }
  #list div figure img {
    width: 620px;
    height: auto;
    border-radius: 10px; }
  #list div p {
    text-align: left;
    margin: 0 auto 30px;
    width: 620px; }
    #list div p span {
      display: block;
      font-size: 1.4rem;
      margin-top: 10px; }
  #list div ul {
    display: flex;
    justify-content: center; }
    #list div ul li {
      margin: 0 10px; }
    #list div ul a {
      display: block;
      padding: 20px 20px;
      border: 1px solid #cccccc;
      border-radius: 5px;
      font-size: 2rem;
      min-width: 300px;
      font-weight: bold; }
      #list div ul a:hover {
        background: #2975AC;
        color: #fff; }

@media only screen and (max-width: 1160px) {
  #list {
    margin: 0 25px; }

  #list div {
    width: 100%;
    padding: 30px; }
    #list div figure {
      margin-bottom: 30px; }
    #list div figure img {
      width: 100%;
      height: auto; }
    #list div p {
      width: 100%; }
    #list div ul {
      display: block; }
      #list div ul li {
        margin: 10px 0; }
      #list div ul a {
        box-sizing: border-box;
        min-width: 100%; } }
#area {
  text-align: center;
  width: 1160px;
  margin: 0 auto 100px; }
  #area ul {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px; }
  #area a {
    display: block;
    min-width: 400px;
    padding: 20px;
    background: #fff;
    border-radius: 5px;
    background: url("../images/common/icon_blank.png") no-repeat 94% center #fff;
    font-size: 2rem;
    font-weight: bold; }
    #area a span {
      display: block;
      font-size: 1.6rem;
      font-weight: normal;
      margin-top: 5px; }
    #area a:hover {
      background: url("../images/common/icon_blank.png") no-repeat 94% center #2975AC;
      color: #fff; }

@media only screen and (max-width: 1160px) {
  #area {
    width: 100%;
    margin: 0 0 50px;
    padding: 0 25px;
    box-sizing: border-box; }
    #area ul {
      gap: 3vw; }
    #area li {
      width: 100%; }
    #area a {
      min-width: 100%;
      padding: 3vw;
      font-size: 1.6rem; }
      #area a span {
        font-size: 1.2rem; } }
footer {
  background: #fff;
  text-align: center;
  font-size: 1rem;
  color: #ccc;
  padding: 30px 0; }
