﻿@charset "UTF-8";

/* ------ 共通 ------ */
@media screen and (min-width: 768px) {
  html {
    min-width: 1240px;
  }
}
.contentsWrap img {
  width: 100%;
  height: auto;
}
.contentsWrap figure {
  position: relative;
  margin: 0;
  font-size: 18px;
}
.contentsWrap figcaption {
  padding-top: 12px;
  font-weight: bold;
}
.contentsWrap p {
  font-size: 18px;
  line-height: 170%;
}
@media screen and (max-width: 768px) {
  .contentsWrap figure {
    font-size: 16px;
  }
  .contentsWrap figcaption {
    padding-top: 8px;
    font-size: 14px;
  }
  .contentsWrap p {
    font-size: 16px;
  }
}
.container {
  max-width: 1280px;
  margin: 0 auto;
}

.contentsTitle {
  width: 760px;
  margin: 0 auto 64px;
  padding-top: 16px;
  padding-bottom: 18px;
  font-family: 'Noto Serif JP';
  font-size: 34px;
  font-weight: 500;
  text-align: center;
  background: linear-gradient(#fff 0%, #A9A9A9 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-image-source: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0) 100%);
  border-image-slice: 1;
}
@media screen and (max-width: 768px) {
  .contentsTitle {
    width: 100%;
    margin: 0 auto 32px;
    padding-top: 17px;
    padding-bottom: 17px;
    font-size: 24px;
    line-height: 140%;
  }
}

@media screen and (min-width: 769px) {
  .cardWrap {
    display: grid;
    column-gap: 40px;
  }
  .cardWrap.-col2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .cardWrap.-col3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .cardWrap .card {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 6;
    gap: 0;
  }
}
.cardWrap.-col2>* {
  margin-top: 40px;
}
.cardWrap.-col2>*:nth-child(-n+2) {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .cardWrap.-col2>*, .cardWrap.-col2>*:nth-child(-n+2) {
    margin-top: 40px;
  }
  .cardWrap.-col2>figure.card, .cardWrap.-col2>figure.card:nth-child(-n+2) {
    margin-top: 12px;
  }
  .cardWrap.-col2>*:first-child {
    margin-top: 0;
  }
}
.cardWrap.-col2 img + .detailSubTitle {
  margin-top: 16px;
  margin-bottom: 12px;
}
.cardWrap.-col3 .detailSubTitle {
  margin-top: 12px;
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 140%;
}
.cardWrap.-col3 .detailText {
  font-size: 16px;
}
.cardWrap.-col3 .detailText:last-child {
  margin-top: 12px;
}
.cardWrap.-col3 .detailText:has(+ .btnBox) {
  margin-bottom: 0;
}
.cardWrap figcaption {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .cardWrap.-col3>* {
    margin-top: 56px;
  }
  .cardWrap.-col3>*:first-child {
    margin-top: 0;
  }
  .cardWrap.-col3 .detailSubTitle {
    font-size: 16px;
  }
  .cardWrap.-col3 .card .btnBox {
    max-width: 311px;
    margin-left: auto;
    margin-right: auto;
  }
  .cardWrap figcaption {
    font-size: 14px;
  }
}
.cardWrap[class*="-col"] .detailText:last-child {
  margin-bottom: 0;
}

.btnBox {
  margin-top: 64px;
  text-align: center;
}
.btnBox .btn01 {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 20px 80px;
  color: #10218B;
  font-weight: bold;
  border: 1px solid #10218B;
  border-radius: 999px;
  text-decoration: none;
  transition: all .3s ease-out;
}
.btnBox .btn01 span.-small {
  font-size: 14px;
}
.btnBox .btn01.-brand {
  color: #fff;
  background-color: #10218B;
}
.btnBox .btn01:hover {
  color: #fff;
  background: #000413;
  border: 1px solid #000413;
}
.btn01.-pop img {
  width: auto;
  margin-top: 2px;
  position: absolute;
}
.cardWrap.-col3 .btn01.-pop img {
  right: 22px;
}
.btn01.-arrow {
  position: relative;
}
.btn01.-arrow::after {
  content: '';
  width: 8px;
  height: 8px;
  position: absolute;
  right: 45.56px;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 0;
  border-top: solid 2px #10218B;
  border-right: solid 2px #10218B;
  transform: rotate(45deg);
}
.btn01.-arrow:hover::after {
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
}
.btn01.-brand.-arrow::after {
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
}
.cardWrap.-col2 .btnBox {
  margin-top: 64px;
}
.cardWrap.-col2 .btnBox .btn01 {
  padding: 24px 64px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
.cardWrap.-col3 .btnBox {
  margin-top: 24px;
  font-size: 16px;
  line-height: 140%;
}
.cardWrap.-col3 .btnBox ~ .btnBox {
  margin-top: 20px;
}
.cardWrap.-col3 .btnBox .btn01 {
  padding: 12px 30px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
.cardWrap.-col3 .btn01.-arrow::after {
  right: 22px;
}
@media screen and (max-width: 768px) {
  .btnBox {
    margin-top: 40px;
  }
  .btnBox .btn01 {
    padding: 20px 55.5px;
    font-size: 14px;
    line-height: 140%;
  }
  .btn01.-arrow::after {
    right: 35px;
  }
  .cardWrap.-col2 .btnBox ~ .btnBox {
    margin-top: 16px;
  }
  .cardWrap.-col3 .btnBox ~ .btnBox {
    margin-top: 16px;
  }
}

.-bg {
  background-image: linear-gradient(#000413 0%, #1E212C 100%);
}
.-mark {
  background: #FFFBAC;
}

/* ------ mainTitle ------ */
@media screen and (min-width: 768px) {
  #mainTitle {
    padding-bottom: 30px;
    height: auto;
  }
}

/* ------ MV ------ */
.mvArea .container {
  padding-top: 66px;
}
.mvArea img {
  width: 100%;
  margin: 0 auto;
  padding: 0 40px;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .mvArea .container {
    padding: 0;
  }
  .mvArea img {
    padding: 0;
  }
}

/* ------ contents01 ------ */
.contents01 .container {
  padding: 100px 0 80px;
}
.contents01 .tabs {
  position: relative;
}
.contents01 .labelWrap {
  display: flex;
  flex-wrap: wrap;
}
.contents01 .labelWrap.tabBottom {
  margin-top: 16px;
}
.contents01 .tabLabel {
  flex: 1;
  font-size: 28px;
  font-weight: 600;
  color: #fff;
  opacity: .6;
  text-align: center;
  line-height: 160%;
  border: 1px solid #4D4D4D;
  cursor: pointer;
  transition: 0.3s all;
}
.contents01 .tabLabel .-border {
  display: block;
  padding: 16px 0 12px;
  border: 2px solid transparent;
}
.contents01 .tabLabel span.-small {
  font-size: 18px;
}
.contents01 .tabLabel:hover {
  opacity: 1;
}
.contents01 #tab01:checked ~ .labelWrap .tabLabel[for="tab01"],
.contents01 #tab02:checked ~ .labelWrap .tabLabel[for="tab02"],
.contents01 #tab03:checked ~ .labelWrap .tabLabel[for="tab03"] {
  color: #fff;
  opacity: 1;
  border-color: #fff;
}
.contents01 #tab01:checked ~ .labelWrap .tabLabel[for="tab01"] .-border,
.contents01 #tab02:checked ~ .labelWrap .tabLabel[for="tab02"] .-border,
.contents01 #tab03:checked ~ .labelWrap .tabLabel[for="tab03"] .-border {
  border-color: #fff;
}
.contents01 #tab01:focus-visible ~ .labelWrap .tabLabel[for="tab01"],
.contents01 #tab02:focus-visible ~ .labelWrap .tabLabel[for="tab02"],
.contents01 #tab03:focus-visible ~ .labelWrap .tabLabel[for="tab03"] {
  outline: 1px solid blue;
}
.contents01 input[name="tabName"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  border: 0;
}
@media screen and (max-width: 768px) {
  .contents01 input[name="tabName"] {
    top: 300px;
  }
}
.contents01 #tab01:checked ~ #tab01Content,
.contents01 #tab02:checked ~ #tab02Content,
.contents01 #tab03:checked ~ #tab03Content {
  display: block;
}
.contents01 .tabContent {
  width: 100%;
  display: none;
  overflow: hidden;
  padding-top: 16px;
}
.contents01 .tabContentInner {
  padding: 80px;
  background: #fff;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.contents01 .detail {
  margin-bottom: 64px;
  padding-bottom: 64px;
  border-bottom: 2px solid #DFDFDF;
}
.contents01 .detail:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.contents01 .detailTitle {
  margin-bottom: 24px;
  font-family: 'Noto Serif JP';
  font-size: 28px;
  font-weight: 900;
}
.contents01 .detailTitle span.-line {
  font-size: 30px;
}
.contents01 .detailTitle span.-line::after {
  content: "";
  display: inline-block;
  height: 0.93em;
  margin-bottom: -2px;
  margin-right: 19px;
  padding-right: 19px;
  border-right: 1px solid #000;
}
.contents01 .detailText {
  margin-bottom: 32px;
}
.contents01 .detailSubTitle {
  margin: 56px 0 12px;
  font-size: 22px;
  font-weight: bold;
  line-height: 170%;
}
.contents01 .detailText + .detailSubTitle {
  margin-top: 40px;
}
.contents01 .card .detailSubTitle:first-child {
  margin: 8px 0 16px;
}
.contents01 img + .detailText {
  margin-top: 16px;
}
.contents01 .cardWrap.-col3 .btnBox {
  margin-left: 33px;
  margin-right: 33px;
}
.contents01 .detailBox {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}
.contents01 .detailBox img {
  width: 33.1%;
}
.contents01 .card figcaption {
  padding-top: 0;
}
@media screen and (max-width: 768px) {
  .contents01 .container {
    padding: 48px 16px;
  }
  .contents01 .tabs {
    padding: 32px 20px 40px;
    background: #fff;
    border-radius: 2px;
  }
  .contents01 .labelWrap {
    display: block;
    border-bottom: none;
  }
  .contents01 .labelWrap.tabBottom {
    margin-top: 56px;
  }
  .contents01 .tabLabel {
    display: block;
    margin-bottom: 12px;
    color: #000;
    font-size: 18px;
    font-weight: 600;
    line-height: 150%;
    border: 1px solid #000413;
  }
  .contents01 .tabLabel:last-of-type {
    margin-bottom: 0;
  }
  .contents01 .tabLabel .-border {
    padding: 12px 0;
    border: none;
  }
  .contents01 .tabLabel span.-small {
    font-size: 14px;
  }
  .contents01 #tab01:checked ~ .labelWrap .tabLabel[for="tab01"],
  .contents01 #tab02:checked ~ .labelWrap .tabLabel[for="tab02"],
  .contents01 #tab03:checked ~ .labelWrap .tabLabel[for="tab03"] {
    color: #fff;
    background: linear-gradient(#000413 0%, #1E212C 100%);
    border-color: #000413; 
  }
  .contents01 .tabContent {
    padding: 0;
  }
  .contents01 .tabContentInner {
    padding: 0;
    padding-top: 56px;
    border-radius: 0;
  }
  .contents01 .detail {
    margin-bottom: 48px;
    padding-bottom: 48px;
    border-bottom: 1px solid #D8D9DE;
  }
  .contents01 .detailTitle {
    display: flex;
    font-size: 20px;
    line-height: 140%;
  }
  .contents01 .detailTitle span.-line {
    display: flex;
    align-items: center;
    font-size: 26px;
  }
  .contents01 .detailTitle span.-line::after {
    height: 100%;
    margin-bottom: 0;
  }
  .contents01 .detailText {
    margin-bottom: 24px;
    font-size: 16px;
  }
  .contents01 .detailSubTitle {
    margin: 40px 0 12px;
    font-size: 18px;
  }
  .contents01 .cardWrap.-col3 > img ~ img{
    margin-top: 16px;
  }
  .contents01 .cardWrap.-spCol2 {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
  }
  .contents01 .cardWrap.-spCol2 > * {
    max-width: calc(100% / 2 - 16px / 2);
    width: 100%;
    margin-top: 0;
  }
  .contents01 .cardWrap.-spCol2 > *:last-child {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  .contents01 .cardWrap.-spCol2 > *:last-child img {
    max-width: calc(100% / 2 - 16px / 2);
  }
  .contents01 .cardWrap.-spCol2.-f100 > * {
    max-width: calc(100% / 2 - 16px / 2);
    width: 100%;
    margin-top: 0;
  }
  .contents01 .cardWrap.-spCol2.-f100 > *:first-child {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  .contents01 .cardWrap.-spCol2.-f100 > *:first-child img {
    max-width: calc(100% / 2 - 16px / 2);
  }
  .contents01 .cardWrap.-col2 .btnBox:first-child {
    margin-top: 40px;
  }
  .contents01 .cardWrap.-col2 .btnBox .btn01 {
    padding: 20px 51px;
  }
  .contents01 .cardWrap.-col3 .btnBox {
    margin-left: auto;
    margin-right: auto;
  }
  .contents01 .detailBox {
    display: block;
  }
  .contents01 .detailBox img {
    width: 100%;
  }
}

/* ------ contents02 ------ */
.contents02 .container {
  padding: 118px 0 120px;
}
.contents02 .contentsTitle {
  background: linear-gradient(#000413 0%, #1E212C 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  border-image-source: linear-gradient(90deg, rgba(147, 147, 147, 0) 0%, rgba(147, 147, 147, 1) 50%, rgba(147, 147, 147, 0) 100%);
}
.contents02 .detailSubTitle {
  font-weight: bold;
}
.contents02 .cardWrap {
  margin-bottom: 110px;
}
.contents02 .cardWrap.-col3 .detailText {
  line-height: 140%;
}
.contents02 .balloon {
  position: relative;
  display: inline-block;
  background: linear-gradient(#000413 53%, #1E212C 100%);
  border-radius: 4px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.contents02 .balloon::after {
  content: "";
  position: absolute;
}
.contents02 .balloon.-bottom::after {
  top: 100%;
  left: 50%;
  margin-left: -20px;
  border: 20px solid transparent;
  border-top: 24px solid #1E212C;
}
.contents02 .balloonText {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 16px 20px 24px;
  color: #fff;
  font-weight: bold;
}
.contents02 .balloonText .num {
  font-family: 'Noto Serif JP';
  font-size: 96px;
  font-weight: 900;
  line-height: 1;
  background: linear-gradient(#B6BCD4 0%, #6C7389 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.contents02 .cardWrap.-col3 .card > *:not(.balloon) {
  margin-left: 6%;
  margin-right: 6%;
  width: calc(100% - 12%);
}
.contents02 .bannerTitle {
  margin-bottom: 48px;
  font-family: 'Noto Serif JP';
  font-size: 28px;
  font-weight: 500;
  text-align: center;
  background: linear-gradient(#000413 0%, #1E212C 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.contents02 .bannerArea a.bannerLink img {
  opacity: 1;
  transition: all .3s ease-out;
}
.contents02 .bannerArea a.bannerLink:hover img {
  opacity: .6;
}
@media screen and (max-width: 768px) {
  .contents02 .container {
    padding: 80px 16px;
  }
  .contents02 .cardWrap {
    margin-bottom: 64px;
  }
  .contents02 .balloon {
    width: 100%;
  }
  .contents02 .balloonText {
    gap: 20.58px;
    padding: 13.72px 18.87px 16px;
  }
  .contents02 .balloonText .num {
    font-size: 84px;
  }
  .contents02 .balloon + img {
    margin-top: 24px;
  }
  .contents02 .cardWrap.-col3 .card > *:not(.balloon) {
    margin-left: 16px;
    margin-right: 16px;
    width: calc(100% - 32px);
  }
  .contents02 .cardWrap.-col3 .detailSubTitle {
    font-size: 18px;
  }
  .contents02 .cardWrap.-col3 .card .btnBox {
    margin-left: auto;
    margin-right: auto;
  }
  .contents02 .bannerTitle {
    margin-bottom: 32px;
    font-size: 20px;
  }
}

/* ------ contents03 ------ */
.contents03 .container {
  padding: 64px 0 130px;
}
.contents03 .cardWrap.-col3 {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 40px;
}
.contents03 .card {
  display: flex;
  flex-direction: column;
  width: calc(100% / 3 - 40px * 2 / 3);
  background: #fff;
  padding: 14px 32px 17px;
  border-radius: 15px;
  border-bottom-left-radius: 0;
  box-sizing: border-box;
}
.contents03 .voiceText {
  padding-bottom: 24px;
  font-size: 16px;
  line-height: 140%;
  flex: 1;
}
.contents03 .voiceText::before {
  content: "";
  display: block;
  width: 45px;
  height: 60px;
  margin-left: -10px;
  background: url("/katsuyou/photo/article/sakuhinprint-start/images/deco.png") no-repeat;
}
.contents03 .voiceBottom {
  display: flex;
  align-items: center;
  padding-top: 16px;
  border-top: 1px solid #DFDFDF;
}
.contents03 .voiceBottom img {
  width: 64px;
}
.contents03 .voiceBottom p {
  font-size: 16px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .contents03 .container {
    padding: 56px 16px 64px;
  }
  .contents03 .cardWrap.-col3 {
    flex-direction: column;
    gap: 24px;
  }
  .contents03 .card {
    width: 100%;
    margin: 0;
  }
}

/* --------------------
エプソン認定SNSアカウントエリア
-------------------- */
#sns_area {
	padding: 77px 0 0;
}

#sns_area h2.title {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	padding-top:77px;
}
#sns_area p.lead {
	margin: 28px auto 0;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: -0.05em;
	text-align: center;
}
#sns_area ul.list {
	margin: 34px auto 0;
	text-align: center;
	padding-bottom: 80px;
}
#sns_area ul.list li {
	display: inline-block;
	vertical-align: top;
	width: 460px;
	margin: 0;
	text-align: left;
	background: url(/katsuyou/photo/common/images/area_bg.png) left top;
	transition: opacity 0.3s linear;
}
#sns_area ul.list li + li {
	margin: 0 0 0 40px;
}
#sns_area ul.list li:hover {
	opacity: 0.3;
}
#sns_area ul.list li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 30px 0;
	color: #151515;
}
#sns_area ul.list li a:hover {
	color: #151515;
	text-decoration: none;
}
#sns_area ul.list li .icon {
	display: inline-block;
	vertical-align: top;
	width: 120px;
	margin: 0 0 0 40px;
}
#sns_area ul.list li .textArea {
	display: inline-block;
	vertical-align: top;
	width: 260px;
	margin: 14px 0 0 16px;
	text-align: left;
}
#sns_area ul.list li .textArea p.text {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	color: #858585;
}
#sns_area ul.list li .textArea h3.title {
	margin: 14px auto 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.2;
}
#sns_area ul.list li .textArea p.acount {
	margin: 14px auto 0;
	display: inline-block;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	border-bottom: #151515 1px solid;
}

#sns_area ul.list li .button {
	width: 320px;
	height: 60px;
	font-size: 16px;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	color: #56acee;
	text-indent: 34px;
	background: #fff;
	border: 2px solid #56acee;
	border-radius: 30px;
	margin: 20px 0 0 70px;
	display: inline-block;
	position: relative;
	}
#sns_area ul.list li.facebook .button {
	color: #1877f2;
	border: 2px solid #1877f2;
	}

#sns_area ul.list li .button .ico {
	width: 26px !important;
	margin: 0 !important;
	padding: 0 !important;
	position: absolute;
	top: 18px;
	left: 0px;
}
#sns_area ul.list li .button .ico img {
	margin: 0 !important;
	padding: 0 !important;
}
@media screen and (max-width: 768px) {
  #sns_area {
    padding: 12.0vw 0 0;
  }
  #sns_area h2.title {
    font-size: 5.0vw;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
  }
  #sns_area p.lead {
    margin: 5.0vw auto 0;
    font-size: 3.3vw;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: -0.05em;
    text-align: center;
  }
  #sns_area ul.list {
    margin: 8.1vw auto 0;
    text-align: center;
  }
  #sns_area ul.list li {
    display: block;
    width: 90.6vw;
    margin: 0 auto 0;
    text-align: left;
    background: url(/katsuyou/photo/common/images/area_bg.png) left top;
    background-size: 5.0vw 5.0vw;

    transition: opacity 0s linear;
  }
  #sns_area ul.list li + li {
    margin: 4.7vw auto 0;
  }
  #sns_area ul.list li:hover {
    opacity: 1;
  }
  #sns_area ul.list li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 6.2vw 0;
    color: #151515;
  }
  #sns_area ul.list li a:hover {
    color: #151515;
    text-decoration: none;
  }
  #sns_area ul.list li .icon {
    display: inline-block;
    vertical-align: top;
    width: 23.8vw;
    margin: 0 0 0 6.2vw;
  }
  #sns_area ul.list li .icon img {
    width: 100%;
    height: auto;
  }
  #sns_area ul.list li .textArea {
    display: inline-block;
    vertical-align: top;
    width: 48.4vw;
    margin: 3.0vw 0 0 3.9vw;
    text-align: left;
  }
  #sns_area ul.list li .textArea p.text {
    font-size: 3.1vw;
    font-weight: 500;
    line-height: 1.2;
    color: #858585;
    white-space: nowrap;
  }
  #sns_area ul.list li .textArea h3.title {
    margin: 3.1vw auto 0;
    font-size: 3.8vw;
    font-weight: bold;
    line-height: 1.2;
  }
  #sns_area ul.list li .textArea p.acount {
    margin: 3.1vw auto 0;
    display: inline-block;
    font-size: 3.8vw;
    font-weight: 500;
    line-height: 1.2;
    border-bottom: #151515 1px solid;
  }
  #sns_area ul.list li .button {
    position: relative;
    margin: 3.1vw 0 0 13.8vw;
    display: inline-block;

    width: 63.4vw;
    height: 10.9vw;
    background: #fff;
    border: 2px solid #56acee;
    border-radius: 5.5vw;
    font-size: 3.1vw;
    font-weight: bold;
    line-height: 10.9vw;
    text-align: center;
    color: #56acee;
    text-indent: 6.6vw;
  }
  #sns_area ul.list li.facebook .button {
    color: #1877f2;
    border: 2px solid #1877f2;
  }

  #sns_area ul.list li .button .ico {
    margin: 0 !important;
    padding: 0 !important;
    position: absolute;
    top: 2.3vw;
    width: 5.0vw;
    left: -10px;
  }
  #sns_area ul.list li .button .ico img {
    width: 100%;
    height: auto;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* ------ ------ */
.-dib {
  display: inline-block;
}
