@charset "UTF-8";
.c5-introduction {
  text-align: left; }
  @media only screen and (min-width: 767px) {
    .c5-introduction {
      text-align: center; } }

.c5-tabListContent {
  display: block; }
  .c5-tabListContent .c5-tabListContentInner {
    display: flex;
    justify-content: center;
    width: 100%; }
    .c5-tabListContent .c5-tabListContentInner a {
      width: 100%;
      display: flex;
      justify-content: space-evenly;
      align-items: center;
      margin: 0 5px 15px 5px;
      padding: 22px 10px;
      border-radius: 5px;
      box-sizing: border-box;
      box-shadow: 0 0 0 2px #113377 inset;
      height: 120px; }
      .c5-tabListContent .c5-tabListContentInner a div p {
        position: relative;
        line-height: 1.4;
        margin: 0;
        font-size: clamp(16px, 1vw, 18px);
        text-align: center;
        font-weight: bold;
        color: #113377; }
        .c5-tabListContent .c5-tabListContentInner a div p::after {
          display: block;
          /*position: absolute;*/
          content: "\02228";
          transform: scale(1, 0.5);
          color: orange;
          font-size: clamp(18px, 2vw, 18px);
          font-weight: bold;
          margin: 2px auto auto 0;
          top: 10px; }
      .c5-tabListContent .c5-tabListContentInner a img {
        width: 65px; }
      .c5-tabListContent .c5-tabListContentInner a:hover {
        text-decoration: none;
        background: #eaecf3; }

@media only screen and (min-width: 1200px) {
  .c5-tabListContent .c5-tabListContentInner a {
    margin: 0 15px 30px 15px;
    padding: 20px; } }
@media only screen and (max-width: 1200px) {
  .c5-tabListContent .c5-tabListContentInner a div p {
    font-size: 14px;
    line-height: 1.1; } }
@media only screen and (max-width: 766px) {
  .c5-tabListContent .c5-tabListContentInner a div p {
    font-size: 16px;
    line-height: 1.4; } }
@media only screen and (min-width: 1200px) {
  .c5-tabListContent .c5-tabListContentInner a img {
    width: 76px; } }
@media only screen and (min-width: 767px) {
  .c5-tabListContent {
    display: flex !important;
    justify-content: center;
    flex-wrap: wrap;
    /*gap: 0 15px;*/ } }
@media only screen and (min-width: 767px) {
  .c5-tabListContent .c5-tabListContentInner {
    width: calc(100% / 3); } }
.c5-fourColumn {
  display: block; }
  .c5-fourColumn .c5-tabListContentInner {
    display: flex;
    justify-content: center;
    width: 100%; }

@media only screen and (min-width: 767px) {
  .c5-fourColumn {
    display: flex !important;
    justify-content: center;
    flex-wrap: wrap;
    /*gap: 0 15px;*/ } }
@media only screen and (min-width: 767px) {
  .c5-fourColumn .c5-tabListContentInner {
    width: calc(100% / 4); } }
.capture-box {
  display: block;
  gap: 0;
  padding: 0 15px; }
  @media only screen and (min-width: 767px) {
    .capture-box {
      padding: 0 40px; } }
  .capture-box div {
    display: grid;
    grid-template-columns: 1fr;
    flex: 0 1 calc(50% - 40px);
    margin-top: 0;
    /*img {
    	width: 100%;
    }
    span {
    	width: 100%;
    	display: block;
    	text-align: center;
    	padding: 20px 0;
    	background: rgba(244,243,243,1);
    }*/ }

@media only screen and (min-width: 767px) {
  .capture-box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0 40px; } }
.grid-item {
  display: grid; }

.grid-item__title {
  grid-column: 1 / 2;
  /*アイテムの配置位置を「列方向：ライン番号1から2の間」に指定*/
  /*grid-row: 1 / 2;*/
  /*アイテムの配置位置を「行方向：ライン番号1から2の間」に指定*/ }
  .grid-item__title p {
    font-size: clamp(17px, 2vw, 21px);
    font-weight: bold;
    padding: 15px 0 0 0;
    margin-bottom: 0; }

.grid-item__img {
  grid-column: 2 / 3;
  /*アイテムの配置位置を「列方向：ライン番号2から3の間」に指定*/
  grid-row: 1 / 2;
  /*アイテムの配置位置を「行方向：ライン番号1から2の間」に指定*/
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: 0; }
  .grid-item__img img {
    width: 80px;
    padding: 10px 0 0 10px; }

@media only screen and (min-width: 767px) {
  .grid-item__img img {
    width: 122px; } }
@media only screen and (min-width: 767px) {
  .grid-item__img {
    justify-content: center;
    grid-row: 1 / 3;
    /*アイテムの配置位置を「行方向：ライン番号1から3の間」に指定*/ } }
/*@media only screen and (min-width: 767px) {
  .grid-item__img img {
    width: initial; } }*/
.grid-item__text {
  grid-column: 1 / 3;
  /*アイテムの配置位置を「列方向：ライン番号1から3の間」に指定*/
  /*grid-row: 2 / 3;*/
  /*アイテムの配置位置を「行方向：ライン番号3から3の間」に指定*/
  padding: 0 0 15px 0; }
  .grid-item__text p {
    margin-bottom: 0; }
    .grid-item__text p:last-of-type {
      text-align: center;
      margin-bottom: 20px; }

@media only screen and (min-width: 1200px) {
  .grid-item__text {
    grid-column: 1 / 2;
    /*アイテムの配置位置を「列方向：ライン番号1から2の間」に指定*/ } }
@media only screen and (min-width: 767px) {
  .grid-item__text p:last-of-type {
    text-align: left; } }
.margin-control5 {
  margin-left: 5.5vw; }
  @media only screen and (min-width: 767px) {
    .margin-control5 {
      margin-left: 0; } }

.margin-control30 {
  margin: initial; }
  @media only screen and (min-width: 1200px) {
    .margin-control30 {
      margin: -30px 0 0 0; } }

.margin-control80 {
  margin: initial; }
  @media only screen and (min-width: 1200px) {
    .margin-control80 {
      margin: -80px 0 0 0; } }

.border-column, .border-columnSp {
  position: relative; }

.border-column::after, .border-columnSp::after {
  position: absolute;
  bottom: 0;
  left: 1.5%;
  background: #d9d9d9;
  display: block;
  content: "";
  width: 97%;
  height: 1px; }

@media only screen and (min-width: 767px) {
  .border-row {
    position: relative;
    background: transparent; }
    .border-row::before {
      position: absolute;
      top: 10%;
      left: -40px;
      background: #d9d9d9;
      display: block;
      content: "";
      width: 1px;
      height: 80%; } }
@media only screen and (min-width: 767px) {
  .border-columnSp::after {
    background: transparent; } }
/*中央寄せ見出し*/
.is-style-vkp-heading-diagonal-line {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  border: 0;
  font-size: clamp(17px, 3vw, 28px); }
  .is-style-vkp-heading-diagonal-line::before, .is-style-vkp-heading-diagonal-line::after {
    content: '';
    width: 30px;
    height: 3px;
    background-color: currentColor !important;
    /*Lightning見出しデザイン設定のCSS対策*/
    position: unset;
    border: unset;
    margin-left: unset;
    margin-right: unset;
    flex-grow: unset; }
  .is-style-vkp-heading-diagonal-line::before {
    margin-right: 14px;
    transform: rotate(60deg); }
  .is-style-vkp-heading-diagonal-line::after {
    margin-left: 14px;
    transform: rotate(-60deg); }

.c5-title {
  font-size: clamp(26px, 3vw, 42px);
  font-weight: 600;
  letter-spacing: 1.3px;
  line-height: 0.5; }
  @media only screen and (min-width: 767px) {
    .c5-title {
      letter-spacing: 2.1px; } }
  .c5-title p {
    line-height: 140%;
    /* 36.4px */
    margin: 0; }

/*短い左右線*/
/*ソニーストアでお買い物はこちらから-column*/
.c5-product {
  display: block;
  padding: 0; }

@media only screen and (min-width: 767px) {
  .c5-product {
    display: flex;
    flex-wrap: wrap;
    gap: 0 26px; } }
.c5-product__list {
  list-style: none;
  width: 100%; }
  .c5-product__list img {
    width: 100%; }
  .c5-product__list dl dt {
    font-size: clamp(16px, 2vw, 18px);
    font-weight: bold;
    margin: 0; }
  .c5-product__list dl dd {
    margin: 10px 0 1em 0; }

@media only screen and (min-width: 767px) {
  .c5-product__list {
    width: calc(25% - 20px); } }
/*ソニーストアでお買い物はこちらから-column*/
/*spスペーサー*/
.spacer_sp {
  margin-top: 60px;
  margin-bottom: 40px; }
  @media only screen and (min-width: 767px) {
    .spacer_sp {
      margin-top: 120px;
      margin-bottom: 60px; } }

.c5-link {
  text-decoration: underline; }
