@charset "utf-8";
:root {
  --aio-color: #093488;
  --aio-color02: #E7EEF8;
  --seo-color: #008B9C;
  --seo-color02: #E0F1F4;
}

/* table（表）の記述 */
.cmn_table--outer {
  overflow: auto;
  width: 100%;
  margin-block: 30px;
  table {
    width: 100%;
  }
  thead th,
  tbody td {
    padding: 10px 24px;
    width: 50%;
  }
  thead th {
    font-weight: bold;
    background: #EEE;
    border-right: 1px solid #CCC;
    text-align: center;
    &:first-of-type {
      border-left: none;
    }
    &:last-of-type {
      border-right: none;
    }
  }
  tbody td {
    border-right: 1px solid #CCC;
    &:first-of-type {
      border-left: none;
    }
    &:last-of-type {
      border-right: none;
    }
  }
  tr {
    border-top: 1px solid #CCC;
  }
  tr:last-child {
    border-bottom: 1px solid #CCC;
  }
  .emphasis {
    font-size: 2rem;
    font-weight: bold;
  }
  .ta_l {
    text-align: left;
  }
  @media screen and (max-width: 767px) {
    &.multiple table {
      width: 800px;
    }
  }
}
.cmn_table--outer.price {
  th {
    background: #F0F1F2;
    width: 25%;
  }
  @media screen and (max-width: 767px) {
    margin-top: 10px;
  }
}

/* ページリンク */
.price_nav {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 30px;
  margin: 30px 0;
  padding: 0 5%;
  @media screen and (max-width: 767px) {
    flex-direction: column;
    align-items: center;
  }
}
.price_nav_box {
  max-width: 300px;
  width: 100%;
  padding: 20px 20px 30px;
  flex: 1;
  @media screen and (max-width: 767px) {
    max-width: 100%;
  }
  &:nth-of-type(1) {
    ul li a {
      background: var(--aio-color);
    }
    li:after {
      content: "";
      background: url(../img/arrow_aio.svg) center center no-repeat;
    }
  }
  &:nth-of-type(2) {
    ul li a {
      background: var(--seo-color);
    }
    li:after {
      content: "";
      background: url(../img/arrow_seo.svg) center center no-repeat;
    }
  }
  &:nth-of-type(3) {
    ul li a {
      background: var(--theme-color);
    }
    li:after {
      content: "";
      background: url(../../img/arrow_gold.svg) center center no-repeat;
    }
  }
  p {
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    letter-spacing: 4.8px;
  }
  ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;
    li {
		max-width: 306px;
		width: 100%;
		height: 56px;
    position: relative;
    &::after {
			content: "";
			display: inline-block;
			width: 15px;
			height: 15px;
      position: absolute;
      top: 50%;
      right: 20px;
      transform: translateY(-50%);
		}
	}
	a {
		width: 100%;
		height: 100%;
		color: #fff;
		display: flex;
		align-items: center;
    padding-left: 30px;
    line-height: 1.5;
		gap: 8px;
	}
  }
  &:nth-of-type(1) {
    p {
      color: var(--aio-color);
    }
    background: var(--aio-color02);
  }
  &:nth-of-type(2) {
    p {
      color: var(--seo-color);
    }
    background: var(--seo-color02);
  }
  &:nth-of-type(3) {
    p {
      color: #000;
    }
    background: #EEE;
  }
}

.contents_aio {
  background: var(--aio-color02);
  padding: 30px 5%;
  .price_h2 {
    color: var(--aio-color);
  }
  .article_child--name {
    background: var(--aio-color);
  }
  .cmn_table--outer {
    thead th {
        background: var(--aio-color02);
    }
  }
  .cmn_table--outer.price {
    th {
        background: var(--aio-color02);
        width: 25%;
    }
  }

}
.contents_seo {
  background: var(--seo-color02);
  padding: 30px 5%;
  margin-top: 100px;
  .price_h2 {
    color: var(--seo-color);
  }
  .article_child--name {
    background: var(--seo-color);
  }
  .cmn_table--outer {
    thead th {
        background: var(--seo-color02);
    }
  }
  .cmn_table--outer.price {
    th {
        background: var(--seo-color02);
        width: 25%;
    }
  }
}

.price_h2 {
  text-align: center;
  font-size: 3.2rem;
  font-weight: bold;
}
.link_box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
    li {
		max-width: calc(100% / 4);
		width: 100%;
		height: 56px;
    position: relative;
    border: 1px solid var(--aio-color);
    &::after {
			content: "";
			display: inline-block;
      background: url(../img/arrow_aio.svg) no-repeat center/cover;
			width: 15px;
			height: 15px;
      position: absolute;
      top: 50%;
      right: 10px;
      transform: translateY(-50%);
		}
	}
	a {
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
    padding-left: 15px;
    line-height: 1.5;
		gap: 8px;
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--aio-color);
	}
}
.price_section {
  background: #FFF;
  max-width: 960px;
  width: 100%;
  margin: 20px auto 0;
  padding: 30px;
  @media screen and (max-width: 767px) {
    padding: 20px 5px;
  }
}
#aio_package , #aio_contents {
  .contents_heading {
    color: var(--aio-color);
    border-bottom: 4px solid var(--aio-color);
  }
  .article_child--name {
    background: var(--aio-color);
  }
  .link_box {
    li {
    border: 1px solid var(--aio-color);
    &::after {
      background: url(../img/arrow_aio.svg) no-repeat center/cover;
		}
	}
	a {
    color: var(--aio-color);
	}
}
}
#seo_package , #seo_contents {
  .contents_heading {
    color: var(--seo-color);
    border-bottom: 4px solid var(--seo-color);
  }
  .article_child--name {
    background: var(--seo-color);
  }
  .article_child--plus {
    border: 4px solid var(--seo-color);
    h3 {
      color: var(--seo-color);
    }
  }
  .link_box {
    li {
    border: 1px solid var(--seo-color);
    &::after {
      background: url(../img/arrow_seo.svg) no-repeat center/cover;
		}
	}
	a {
    color: var(--seo-color);
	}
}
}

.article_child--gray {
  padding: 40px;
  background: #F2F2F2;
  @media screen and (max-width: 767px) {
    padding: 20px 5%;
  }
}
.article_child--grayinner {
  background: #FFF;
  padding: 30px 20px;
  @media screen and (max-width: 767px) {
    padding: 20px;
  }
}

.mw_50 {
  max-width: calc(50% - 15px);
  @media screen and (max-width: 767px) {
    max-width: 100%;
  }
  .article_child--name {
    letter-spacing: 2px;
  }
  figcaption {
    margin-top: 10px;
    min-height: 56px;
    @media screen and (max-width: 767px) {
      min-height: auto;
    }
  }
}
.mw_100 {
  max-width: 100%;
  width: 100%;
}
.article_child--flex.fw_w {
  row-gap: 50px;
  flex-wrap: wrap;
  @media screen and (max-width: 767px) {
    flex-direction: column;
  }
}