@charset "utf-8";
/* == base ============================================== */
html {
	font-size: 62.5%;
}
body {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.6rem;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #333;
}
*,
*::before,
*::after {
	box-sizing: border-box;
}
a,
a:link,
a:visited,
a:active {
	text-decoration: none;
}
a {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
main {
	display: block;
}
input,
textarea {
	-webkit-appearance: none;
	appearance: none;
}
.all_wrapper {
	height: 100vh;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
}
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
.pc_only {
	display: none !important;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
            header
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */
.headerPC {
	display: none !important;
}
.headerSP {
	display: block !important;
}

header {
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 10;
}

.logo {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-left: 20px;
	background-color: #fff;
}

/*  */
.headerItem {
	display: flex;
	height: 64px;
}

.header_NoFixed {
    display: flex;
    justify-content: space-between;
    width: 83%;
    background-color: #fff;
    border-bottom: solid 4px #56a523;
}

/* ハンバーガーメニュー */
.hamBtn {
	width: 17%;
	height: 64px;
	position: fixed;
	top: 0;
	right: 0;
	background-color: #fff;
	cursor: pointer;
	border: none;
	z-index: 10;
    border-bottom: solid 4px #56a523;
}

.hamBtn .border {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	display: block;
	height: 2px;
	width: 32px;
	background-color: #333333;
	transition: all 0.2s;
  }
  .hamBtn .border:nth-of-type(1) {
	top: 16px;
  }
  .hamBtn .border:nth-of-type(2) {
	top: 24px;
  }
  .hamBtn .border:nth-of-type(3) {
	top: 32px;
  }
  .hamBtn .js-hamText {
	position: absolute;
	top: 37px;
	left: 50%;
	transform: translate(-50%, 0);
	font-weight: bold;
	color: #333;
  }
  .hamBtn.active .border:nth-of-type(1) {
	transform: translate(-50%, 0) rotate(-43deg);
	top: 23px;
  }
  .hamBtn.active .border:nth-of-type(2) {
	left: 55%;
	opacity: 0;
	visibility: hidden;
  }
  .hamBtn.active .border:nth-of-type(3) {
	transform: translate(-50%, 0) rotate(43deg);
	top: 23px;
  }

/* webで申し込み */
.webLink {
	font-size: 1.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #f89829;
	color: #fff;
	font-weight: bold;
	width: 23%;
    min-width: 88px;
}

.headerLsit {
    max-height: 90vh;
    overflow: auto;
	background-color: #fff;
	box-shadow: 0 3px 6px 0 #666;
}

.c-mainList {
	position: relative;
	font-size: 1.6rem;
	font-weight: bold;
	border-bottom: 1px solid #eaeaea;
}

.c-mainList:nth-child(1) {
	border-top: 1px solid #eaeaea;
}

.c-mainList a {
	padding: 20px 0 20px 40px;
}

/* アコーディオン */

.c-mainList--accordion span {
	display: block;
	padding: 20px 0 20px 40px;
}

.js-accoContent {
	opacity: 0;
	visibility: hidden;
	height: 0;
	font-size: 1.4rem;
	transition: all 0.2s;
}

.js-accoContent.open {
	opacity: 1;
	visibility: visible;
	height: 491px;
}

.js-accoContent li a {
	padding: 10px 0 10px 0;
	margin-left: 50px;
	border-bottom: 1px solid #eaeaea;
	position: relative;
}
.js-accoContent li a::after{
	content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 24px;
    background: url(../img/Icon-headerListArrow.svg) center no-repeat;
    background-size: contain;
    width: 8px;
    height: 12px;
	transform: translate(0, -50%);
}

.c-mainList::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 26px;
	right: 24px;
	background: url(../img/Icon-headerListArrow.svg) center no-repeat;
	background-size: contain;
	width: 8px;
	height: 12px;
}

.c-mainList--accordion::before {
	transform: rotate(90deg);
	transition: transform 0.2s;
}
.c-mainList--accordion.rotate-negative::before {
	transform: rotate(-90deg);
}

/* SIS */
.c-mainList--sis {
	background-color: #56a523;
	color: #fff;
}
.c-mainList--sis::before {
	background: url(../img/Icon-headerListArrow-f.svg) center no-repeat;
}
/* 光 */
.c-mainList--hikari {
	background-color: #f9be2c;
	color: #fff;
}
.c-mainList--hikari::before {
	background: url(../img/Icon-headerListArrow-f.svg) center no-repeat;
}
/* ドコモ */
.c-mainList--docomo {
	background-color: #cf0f31;
	color: #fff;
}
.c-mainList--docomo::before {
	background: url(../img/Icon-headerListArrow-f.svg) center no-repeat;
}

.c-subList {
	position: relative;
	font-size: 1.4rem;
	font-weight: 500;
	background-color: #eaeaea;
	border-bottom: solid 1px #fff;
}
.c-subList::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 17px;
	right: 24px;
	background: url(../img/Icon-headerListArrow.svg) center no-repeat;
	background-size: contain;
	width: 8px;
	height: 12px;
}
.c-subList a {
	padding: 10px 0 10px 40px;
}

/* アニメーション設定 */
#js-SPheaderItem {
	position: absolute;
	opacity: 0;
	visibility: hidden;
	transition: all 0.2s;
}
#js-SPheaderItem.active {
	position: relative;
	opacity: 1;
	visibility: visible;
}
/*  */
#js-LogoItem {
	transition: all 0.2s;
}

#js-LogoItem.fade {
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
}

#js-LogoItem.fade.active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
/*  */
#js-webLink {
	transition: all 0.2s;
}

#js-webLink.fade {
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
}

#js-webLink.fade.active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
            パンくず
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

.breadcrumb {
	width: 100%;
	background: rgba(255, 255, 255, 0.8);
	padding: 5px 20px 5px;
}
.breadcrumbItem {
	position: relative;
	display: inline-block;
	font-size: 1.4rem;
	padding-right: 17px;
	margin-right: 8px;
}
.breadcrumbItem::after {
	content: "";
	position: absolute;
	top: 8px;
	right: 0;
	display: inline-block;
	background: url(../img/Arrow-breadcrumb.svg) center no-repeat;
	background-size: contain;
	width: 5px;
	height: 8px;
}
.breadcrumbItem:last-child::after {
	display: none;
}

.breadcrumbItem a {
	color: #56a520;
	border-bottom: 1px solid #56a520;
	transition: all 0.2s;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
            共通
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

/* ==== 共通タイトル ==== */

.c-Title {
	position: relative;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	margin-bottom: 40px;
}

.c-Title img {
	display: block;
	margin: 0 auto;
	margin-bottom: 12px;
}

/* タイトル左右につくIcon */
.c-TitleIcon {
	text-align: center;
}
.c-TitleIcon.u-mini {
	font-size: 1.6rem;
	font-weight: bold;
}
.c-TitleIcon.u-big {
	margin-top: 80px;
	margin-bottom: 40px;
}
.c-TitleIcon.common_mg {
	margin-top: 0;
	margin-bottom: 40px;
}
.c-TitleIcon .TitleIcon-en {
	display: block;
	font-size: 1.6rem;
	font-weight: 700;
	color: #44831c;
}
.c-TitleIcon.p-white .TitleIcon-en {
    color: #fff;
}
.c-TitleIcon .TitleIcon-en::before {
	content: "";
	display: inline-block;
	margin-right: 16px;
	width: 23px;
	height: 12px;
	background: url(../img/icon-title_left.svg) left center no-repeat;
}
.c-TitleIcon .TitleIcon-en::after {
	content: "";
	display: inline-block;
	margin-left: 16px;
	width: 23px;
	height: 12px;
	background: url(../img/icon-title_right.svg) right center no-repeat;
}
.c-TitleIcon.p-white .TitleIcon-en::before {
	background: url(../img/icon-title_left_white.svg) left center no-repeat;
}
.c-TitleIcon.p-white .TitleIcon-en::after {
	background: url(../img/icon-title_right_white.svg) right center no-repeat;
}
.c-TitleIcon .TitleIcon-ja {
	display: block;
	font-weight: 700;
}
.c-TitleIcon.p-white .TitleIcon-ja {
    color: #fff;
}
.c-TitleIcon.u-mini .TitleIcon-ja {
	font-size: 1.8rem;
}
.c-TitleIcon.u-big .TitleIcon-ja {
	font-size: 2.4rem;
}
.ContactBox {
	width: 100%;
	text-align: center;
	border: solid 8px #e9e9e9;
	background-color: #fafafa;
	padding: 40px 20px;
	border-radius: 16px;
	margin-bottom: 24px;
}
.ContactBox:last-of-type {
	margin-bottom: 0;
}

/* ===== ボタン ==== */
.c-btn {
	display: block;
}
.c-btn a {
	position: relative;
	font-size: 1.4rem;
	font-weight: bold;
	color: #fff;
	display: block;
	text-align: center;
	width: 300px;
	padding: 20px 0;
	border-radius: 40px;
	background-color: #56a523;
	box-shadow: 0px 4px #448319;
	transition: all 0.2s;
	margin: 0 auto;
}

.c-btn a span {
	position: relative;
}

.c-btn a::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 28px;
	right: 28px;
	background: url(../img/Arrow-cBtn.svg) center no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	transition: all 0.2s;
}

.c-btn--m a {
	width: 300px;
	padding-top: 22px;
	padding-bottom: 22px;
}
.c-btn--m a::before {
	top: 35px;
}

/* (白) */
.c-btn--f a {
	color: #15a369;
	background-color: #fff;
	box-shadow: 0px 4px #15a369;
}
.c-btn--f a:before {
	background: url(../img/Arrow-cBtn-f.svg) center no-repeat;
}

/* (白)小さい版 */
.c-btn--fs a {
	width: 73.47%;
	padding: 6px 0;
	color: #56a520;
	font-size: 1.4rem;
}

.c-btn--fs a:before {
	top: 13px;
	right: 19px;
	background: url(../img/Plan/icon-Arrow-plan.svg) center no-repeat;
}

/* オプション */
.c-btn--opp a {
	width: 300px;
	color: #56a520;
	background-color: #fff;
	box-shadow: 0px 4px #56a520;
	border: solid 2px #56a520;
	padding-top: 22px;
	padding-bottom: 22px;
}

.c-btn--opp a::before {
	top: 27px;
	background: url(../img/Arrow-cBtn-opp.svg) center no-repeat;
}

.c-btn--opp.bottom{
	margin-bottom: 80px;
}
/* (オレンジ) */
.c-btn--o a {
	width: 100%;
	font-size: 1.6rem;
	color: #fff;
	background-color: #f89829;
	box-shadow: 0px 4px #c47b26;
}

/*  */
.c-btn--uni span {
	position: relative;
	font-size: 1.6rem;
	font-weight: bold;
	color: #fff;
	display: block;
	text-align: center;
	width: 300px;
	padding: 20px 0;
	border-radius: 40px;
	background-color: #56a523;
	box-shadow: 0px 4px #448319;
	transition: all 0.2s;
	margin: 0 auto;
}

.c-btn--uni span {
	position: relative;
}

.c-btn--uni span::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 28px;
	right: 28px;
	background: url(../img/Arrow-cBtn.svg) center no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	transition: all 0.2s;
}

/* ===== リンクなしバージョン(シャドウなし&hoverなし) ===== */

.c-btn--noH span {
	position: relative;
	font-size: 1.6rem;
	font-weight: bold;
	color: #fff;
	display: block;
	text-align: center;
	width: 300px;
	padding: 15px 0;
	border-radius: 40px;
	background-color: #56a520;
	/* box-shadow: 0px 4px #448319; */
	transition: all 0.2s;
	margin: 0 auto;
}

.c-btn--noH span {
	position: relative;
}

.c-btn--noH span::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 23px;
	right: 28px;
	background: url(../img/Arrow-cBtn.svg) center no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	transition: all 0.2s;
}

/* ======= 別タブボタンの場合 ====== */

.B-tab a::before {
	top: 20px;
	right: 25px;
	background: url(../img/icon_link.svg) center no-repeat;
	width: 16px;
	height: 16px;
}

/* ======= 戻るボタン ====== */
.c-btn--rev {
	margin: 60px auto 60px auto;
}
.c-btn--rev a {
	width: 90%;
	max-width: 488px;
	padding: 28px 0;
}
.c-btn--rev a::before {
	background: url(../img/icon-Arrow-rev.svg) center no-repeat;
	top: 37px;
	left: 40px;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
            sec_mv
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

main {
	margin-top: 64px;
	position: relative;
	transition: linear 0.2s;
}

/* スライダー */
.slideInner {
	position: relative;
	display: block;
	content: "";
	background: url(../img/TOP/sec_mv/img-mv02sp.jpg) no-repeat center bottom;
	background-size: cover;
	width: auto;
	height: 588px;
	z-index: 1;
}
.zuumoArea{
	position: absolute;
	bottom: -50px;
	right: 4.267vw;
	width: 200px;
	height: 167px;
}

.slideTextArea {
	text-align: center;
	width: 100%;
	position: absolute;
	top: 41%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

.mvTitle img {
	width: 186px;
	margin: 0 auto 20px auto;
}

.zuumoImg {
	position: absolute;
	bottom: -50px;
	right: 200px;
	z-index: 1;
}

.slideTitle {
	font-size: 4.4rem;
	font-weight: 900;
	color: #fff;
	background-color: #2ea6c3;
	display: inline-block;
	margin-bottom: 24px;
	padding: 0 10px;
}

.slideTitle span {
	font-size: 2.8rem;
}

.slideText {
	font-size: 1.6rem;
	font-weight: 500;
	width: 90%;
	margin: 0 auto;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
        sec_news(お知らせ)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

.sec_news {
	padding: 32px 0 38px 0;
	width: 100%;
	height: 100%;
	background-color: #1d8b5e;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
    sec_reason(SISが選ばれる理由)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

.sec_reason {
	padding: 80px 0;
	background-color: #f4f8f9;
}

.reasonInner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.reasonPointItem {
	width: 80%;
	margin: 0 auto 40px auto;
}
.reasonPointItem:last-of-type {
	margin-bottom: 0;
}

.PointThum {
	background-color: #fff;
	text-align: center;
	border-radius: 16px;
	padding: 20px 0;
	margin-bottom: 20px;
}

.PointThum img {
	margin-bottom: 10px;
}

.PointCatch {
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.08em;
}

.PointText {
	font-size: 1.6rem;
	font-weight: 500;
	color: #666;
	letter-spacing: 0.04em;
	line-height: 2;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
    sec_plan(選べる料金プラン)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

.sec_plan {
	padding: 80px 0;
	background-color: #1d8b5e;
}

.c-secText {
	width: 87%;
	margin: 0 auto;
}

.planInner {
	width: 87%;
	max-width: 985px;
	margin: 0 auto;
}

.planTitle {
	color: #fff;
	margin-bottom: 40px;
}

.planSubTitle {
	text-align: center;
	margin-bottom: 30px;
}

.planText {
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.5;
	color: #fff;
	text-align: center;
	margin-bottom: 32px;
}

.planList {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 60px;
}

.planListItem {
	width: 33.03%;
	text-align: center;
}
.planListItem:nth-of-type(1),
.planListItem:nth-of-type(2),
.planListItem:nth-of-type(3) {
	margin-bottom: 24px;
}

.planListItem img {
	width: 79.63%;
	margin-bottom: 24px;
}

.planListText {
	font-size: 1.2rem;
	letter-spacing: 0;
	font-weight: bold;
	color: #fff;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
    sec_option(豊富なオプションサービス)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲ */

.sec_option {
	padding: 80px 0;
}

.optionInner {
	width: 87%;
	margin: 0 auto;
}

.optionTitle {
	margin-bottom: 30px;
}

.optionText {
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
	margin-bottom: 20px;
}

/* === オプション一覧 トップ === */
.optionList {
	margin-bottom: 56px;
}

.optionListItem {
	width: 100%;
	background-color: #fafafa;
	border: solid 8px #e9e9e9;
	border-radius: 16px;
	box-shadow: 0px 4px #ccc;
	transition: all 0.2s;
}

.optionListItem:nth-of-type(1),
.optionListItem:nth-of-type(2),
.optionListItem:nth-of-type(3) {
	margin-bottom: 20px;
}

.optionListItem a {
	padding: 36px 26px 44px 22px;
}

.optionListTitle {
	text-align: center;
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 16px;
}

.optionListText {
	font-size: 1.6rem;
	color: #666;
	margin-bottom: 16px;
}

.optionPrice {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 36px;
}

.optionPrice span {
	font-size: 2.4rem;
}

.optionListImg {
	width: 35%;
	display: block;
	margin: 0 auto 16px auto;
}

.optionListItem a > .c-btn--noH span {
	width: 100%;
	padding: 16px 0;
}

.optionListItem a > .c-btn--noH span::before {
	top: 27px;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
      sec_flow(ご利用までの流れ)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

.sec_flow {
	padding: 80px 0;
	background-color: #1d8b5e;
	width: 100%;
	height: 319.47vw;
}

.flowInner {
	position: relative;
	width: 87.73%;
	margin: 0 auto;
}

.flowTitle {
	color: #fff;
	margin-bottom: 40px;
}

.flowText {
	text-align: center;
	font-size: 1.6rem;
	font-weight: 500;
	color: #fff;
	margin-bottom: 50px;
}
.StepImg{
	width: 100%;
	height: 236vw;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
      sec_faq(よくあるご質問)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */
.sex_faq {
	background: url(../img/img-faqBG.svg) center repeat;
	background-size: cover;
	padding: 80px 0;
	border-bottom: 1px solid #eaeaea;
}

.faqInner {
	width: 87%;
	max-width: 900px;
	margin: 0 auto;
}

.faqListItem {
	padding-bottom: 20px;
	border-bottom: 1px solid #707070;
	margin-bottom: 40px;
}

.faqListItem:last-of-type {
	border: none;
	margin-bottom: 94px;
}

.Qtext {
	position: relative;
	font-size: 1.6rem;
	font-weight: bold;
	color: #44831c;
	margin-bottom: 30px;
	padding-left: 50px;
}

.Qtext::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/TOP/sec_faq/img-Qicon.svg) center no-repeat;
	background-size: contain;
	width: 22px;
	height: 30px;
}
.Atext {
	position: relative;
	font-size: 1.6rem;
	line-height: 2;
	font-weight: 500;
	padding-left: 50px;
}
.Atext::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 4px;
	left: 0;
	background: url(../img/TOP/sec_faq/img-Aicon.svg) center no-repeat;
	background-size: contain;
	width: 21px;
	height: 23px;
}

.Atext > a {
	color: #1571da;
	display: inline-block;
	border-bottom: solid 1px;
	transition: opacity 0.2s;
}

/* ▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼
    sec_info(お申し込みはこちら/ご相談はこちら)
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼ */

.sec_info {
	padding: 80px 0;
	background-color: #f4f8f9;
}
.sec_info.p-option {
	padding: 0;
	background-color: #fff;
}
.infoInner {
	width: 87%;
	max-width: 995px;
	margin: 0 auto;
}
.infoList li:not(:first-of-type){
    margin-top: 40px;
}
.infoItem li:not(:first-of-type){
    margin-top: 32px;
}
.infoItem {
	width: 100%;
	padding: 32px 16px;
	background-color: #fafafa;
	border: solid 8px #e9e9e9;
	text-align: center;
	border-radius: 16px;
}
.infoItem:first-of-type {
	margin-bottom: 20px;
}

.infoItemTitle {
	font-size: 2.4rem;
	font-weight: bold;
	margin-bottom: 24px;
}

.infoItemSubTitle {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1.6;
}
.info24 {
	display: inline-block;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 5px 7px;
	border: solid 1px #333;
	margin: 24px 0 40px 0;
}
.telnum {
	display: inline-block;
	margin-bottom: 4px;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1;
    letter-spacing: normal;
}
.telnum::before {
	content: "";
	display: inline-block;
	margin-right: 10px;
	background: url(../img/TOP/sec_info/img-telicon.svg) center no-repeat;
	background-size: contain;
	width: 16px;
	height: 24px;
}
.infoText {
	font-size: 1.6rem;
	font-weight: bold;
}
.infoText_mini {
	font-size: 1.4rem;
    font-weight: 500;
}
.infoText_big {
	font-size: 1.6rem;
	font-weight: bold;
}
.c-border::after {
    margin: 32px auto 0;
    text-align: center;
    display: block;
    content: "";
    background-color: #999;
    max-width: 320px;
    width: 100%;
    height: 1px;
}

.c-telBtn {
	padding-bottom: 6px;
	text-align: center;
	width: 100%;
	line-height: 1.2;
	font-size: 2.4rem;
	background-color: #ef4218;
	border-radius: 40px;
	color: #fff;
	font-weight: bold;
	box-shadow: 0 4px #cf0f31;
	margin-top: 12px;
	margin-bottom: 16px;
}
.c-telBtn .text {
	font-size: 1.4rem;
}
.c-telBtn .tel {
	position: relative;
	padding-left: 21px;
}
.c-telBtn .tel::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 1px;
	left: 0;
	background: url(../img/icon-tel-f.svg) center no-repeat;
	background-size: contain;
	width: 15px;
	height: 22px;
}

/* --
※-※ー※-※ー※-※ー下層ページスタイルここから
-- */

/* ====== 共通 ====== */

.UmvInner {
	position: relative;
}

.c-UtitleWrap {
	width: 100%;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.c-Utitle {
	display: inline-block;
	font-size: 2.4rem;
	font-weight: 900;
	color: #fff;
	background-color: #1d8b5e;
	padding: 0 12px;
}

.c-subUtitle {
	font-weight: 900;
	text-align: center;
	font-size: 2rem;
	color: #1d8b5e;
	display: block;
	margin-bottom: 9px;
}

.c-Utitle span {
	width: 180px;
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translate(-50%, 0);
	display: inline-block;
}

/* h3 */
.U-Title--h3 {
	font-size: 2rem;
	line-height: 1.2;
	font-weight: bold;
	padding: 8px 0 8px 10px;
	margin-top: 80px;
	margin-bottom: 40px;
}

/* 緑 */
.U-Title--h3-green {
	background-color: rgba(86, 165, 32, 0.1);
	border-left: 6px solid #1d8b5e;
}

/* h4 */
.U-Title--h4 {
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: bold;
	padding-bottom: 4px;
	margin-top: 48px;
	margin-bottom: 24px;
}

/* 緑 */
.U-Title--h4-green {
	border-bottom: 4px solid #1d8b5e;
}

/* h4 */
.U-Title--h4--point {
	position: relative;
	font-size: 1.8rem;
	font-weight: bold;
	color: #44831c;
	border-top: solid 2px #44831c;
	border-bottom: solid 2px #44831c;
	padding: 10px 0;
	margin-top: 24px;
	margin-bottom: 24px;
}

.pointTag {
	position: absolute;
	top: -17px;
	left: 0;
	display: inline-block;
	background-color: #fff;
	font-weight: bold;
	color: #44831c;
	font-size: 1.4rem;
}
.pointTagNum {
	font-weight: bold;
	color: #44831c;
	font-size: 2rem;
}

/* h5(グレー色) */
.U-Title--h5--gray {
	font-size: 1.8rem;
	font-weight: bold;
	border-bottom: 2px solid #cccccc;
	margin-top: 24px;
	margin-bottom: 16px;
}

/* ▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲
                    ▼料金プランページ
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲*/

.sec_Plan {
	padding-bottom: 80px;
}

.PlanListWrap {
	overflow: auto;
}
.PlanListInner {
    width: 600px;
	overflow-y: scroll;
    margin: auto;
	padding: 40px 0 0 12px;
	display: flex;
    gap: 8px;
	margin-bottom: 20px;
	justify-content: space-between;
}
.page_archive .PlanListInner {
	width: 1000px;
}
.PlanListItem {
	width: 32.6%;
}
.PlanTitleBox {
	position: relative;
	padding: 54px 0 24px 0;
	background-color: #1d8b5e;
	border-radius: 16px 16px 0 0;
}
.PlanTitleBox::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translate(-50%, 0);
	background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
	width: 80px;
	height: 80px;
}
/* v4 */
.PlanTitleBox--v4::before {
	background-image: url(../img/Plan/icon-plan-v4.svg);
}
/* v6 */
.PlanTitleBox--v6::before {
	background-image: url(../img/Plan/icon-plan-v6.svg);
}
/* v4固定IP */
.PlanTitleBox--v4F::before {
	background-image: url(../img/Plan/icon-plan-ip4.svg);
}
/* シンプル */
.page_archive .PlanTitleBox--simple::before {
	background-image: url(../img/Plan/icon-plan-simple.svg);
}
/* スタンダード3年 */
.page_archive .PlanTitleBox--3year::before {
	background-image: url(../img/Plan/icon-plan-3year.svg);
}
/* スタンダード2年 */
.page_archive .PlanTitleBox--2year::before {
	background-image: url(../img/Plan/icon-plan-2year.svg);
}
/* セキュリテイプラス */
.PlanTitleBox--secu::before {
	background-image: url(../img/Plan/icon-plan-secu.svg);
}
/* IPv6サービス */
.PlanTitleBox--ipv::before {
	background-image: url(../img/Plan/icon-plan-ipv.svg);
}

.PLanTitle {
	font-weight: bold;
	font-size: 2rem;
	color: #fff;
	text-align: center;
	margin-bottom: 20px;
}
.PlanDetail {
	position: relative;
	padding: 20px 0 24px;
}
.PlanDetail--S {
	padding: 50px 0;
}
.PlanDetail::before {
	content: "";
	width: 40.82%;
	display: inline-block;
	height: 1px;
	background-color: #7c7069;
	opacity: 0.2;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
}

.PlanText--L {
	text-align: center;
	font-size: 1.4rem;
	font-weight: bold;
}

.PlanText--L .price--L {
	font-size: 4rem;
	font-weight: 900;
	color: #56a522;
	line-height: 1;
}

.PlanText--L .price--L-uni {
	line-height: 1.4;
}

.PlanText--L .yen--L {
	font-size: 1.8rem;
}

.PlanText--M {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	padding-top: 20px;
}

.PlanText--M .price--M {
	font-size: 2.8rem;
	font-weight: bold;
	color: #56a522;
	line-height: 1;
}

.PlanText--M .yen--M {
	font-size: 1.6rem;
}

.PlanText--S {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 400;
}

.PlanText--S span {
	font-size: 2rem;
	font-weight: bold;
	color: #1d8b5e;
}

/* 詳細 */
.detailItem {
	margin-bottom: 80px;
}
.detailInner {
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
}
.detailTitle {
	position: relative;
	background-color: #1d8b5e;
	padding: 30px 0 70px 96px;
	color: #fff;
	font-size: 2.4rem;
	font-weight: 900;
	margin-bottom: 40px;
}

.detailTitle::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 17px;
	left: 18px;
	background-size: contain;
	width: 64px;
	height: 64px;
}

.detailTitle:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -4px;
	right: 0;
	background: url(../img/Plan/icon-plan-zuumo02.svg) center no-repeat;
	background-size: contain;
	width: 227px;
	height: 75px;
}
.page_archive .detailTitle:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -4px;
	right: 0;
	background: url(../img/Plan/icon-plan-zuumo.svg) center no-repeat;
	background-size: contain;
	width: 227px;
	height: 75px;
}
/* v4 */
.detailTitle--v4::before {
	background: url(../img/Plan/icon-plan-v4-2.svg) center no-repeat;
}
/* v6 */
.detailTitle--v6::before {
	background: url(../img/Plan/icon-plan-v6-2.svg) center no-repeat;
}
/* ip4 */
.detailTitle--v4F::before {
	background: url(../img/Plan/icon-plan-ip4-2.svg) center no-repeat;
}
/* シンプル */
.page_archive .detailTitle--simple::before {
	background: url(../img/Plan/icon-plan-simple2.svg) center no-repeat;
}
/* スタンダード3年 */
.page_archive .detailTitle--3year::before {
	background: url(../img/Plan/icon-plan-3year2.svg) center no-repeat;
}
/* スタンダード2年 */
.page_archive .detailTitle--2year::before {
	background: url(../img/Plan/icon-plan-2year2.svg) center no-repeat;
}
/* セキュリティ */
.detailTitle--secu::before {
	background: url(../img/Plan/icon-plan-secu2.svg) center no-repeat;
}
/* IPV */
.detailTitle--ipv::before {
	background: url(../img/Plan/icon-plan-ipv.svg) center no-repeat;
}

.detailTitle--ipv::after {
	background: url(../img/Plan/icon-plan-zuumo02.svg) center no-repeat;
	background-size: contain;
}
.page_archive .detailTitle--ipv::after {
	background: url(../img/Plan/icon-plan-zuumo02.svg) center no-repeat;
	background-size: contain;
}
.detailItemBox {
	width: 87%;
	margin: 0 auto;
}
.detailWrap {
	margin-bottom: 30px;
}
.detailItem-note {
    width: 91.3%;
    margin-top: 24px;
    margin-left: auto;
    margin-right: auto;
}
.ServicePrice .c-btn a {
	width: 100%;
}

.detailSubTitle {
	font-size: 2.4rem;
	font-weight: bold;
	border-bottom: 4px solid #1d8b5e;
	margin-bottom: 16px;
}
.detailText {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 32px;
}

.servicedeta {
	position: relative;
	border: 2px solid #1d8b5e;
	border-radius: 16px;
	padding: 32px 8px 32px 16px;
	margin-bottom: 32px;
}

.servicedetaTitle {
	position: absolute;
	top: -16px;
	left: 50%;
	transform: translate(-50%, 0);
	display: inline-block;
	color: #1d8b5e;
	font-size: 1.8rem;
	font-weight: bold;
    padding: 0 8px;
	background-color: #fff;
}

.servicedetaList li {
	font-size: 1.8rem;
	font-weight: 500;
	position: relative;
	padding-left: 20px;
	margin-top: 8px;
}

.servicedetaList li:first-of-type {
	margin-top: 0;
}

.servicedetaList li::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 7px;
	left: 0;
	display: inline-block;
	background: url(../img/Plan/icon-circle.svg) center no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
}
.servicedetaAtt {
	font-size: 1.4rem;
	font-weight: 400;
    line-height: 1.4;
    display: inline-block;
}
.detailAtt-title {
    font-size: 1.6rem;
    font-weight: 400;
}
.detailAtt-description {
    font-size: 1.8rem;
    color: #1d8b5e;
    font-weight: bold;
}

/*  */

.ServicePrice {
	background-color: #f4f8f9;
	border-radius: 16px;
	padding: 40px 0;
}

.priceTextItem {
	position: relative;
	padding-bottom: 35px;
}

.PriceText--L {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
}

.PriceText--L .price {
	font-size: 5.6rem;
	color: #56a522;
	font-weight: 900;
	line-height: 1.4;
}

.PriceText--L .month {
	font-size: 2.4rem;
	font-weight: bold;
}

.PriceText--M {
	margin-top: 24px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 500;
}

.PriceText--M .price {
	font-size: 4.8rem;
	color: #56a522;
	font-weight: bold;
	line-height: 1.4;
}

.PriceText--S {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 400;
	padding-top: 16px;
}

.PriceText--S:nth-of-type(1) {
	padding-bottom: 16px;
}

.PriceText--S .price {
	font-size: 2rem;
	color: #1d8b5e;
	font-weight: bold;
}

.PriceText--S .yen {
	font-size: 1.6rem;
	color: #1d8b5e;
	font-weight: bold;
}

/* ====== 共通下線 ====== */

.UnderLine {
	position: relative;
}
.UnderLine::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 22.22%;
	height: 1px;
	background-color: #7c7069;
	opacity: 0.2;
}

/* 注意事項 */

.sec_att {
	padding: 80px 0;
	background-color: #f4f8f9;
}

.AttInner {
	width: 87%;
	max-width: 760px;
	margin: 0 auto;
}

.AttTitle {
	font-size: 2.4rem;
	border-bottom: #1d8b5e solid 4px;
}

.AttListWrap {
	width: 100%;
	margin: 40px auto 64px auto;
}

/* ユニバーサル制度について */

.UniversalTitle {
	font-size: 1.8rem;
	font-weight: bold;
	border-bottom: 2px solid #1d8b5e;
	margin-bottom: 24px;
}

.UniversalText {
	font-size: 1.6rem;
	font-weight: 400;
	margin-bottom: 24px;
}

.sec_info--plan {
	background-color: #f4f8f9;
}

/* ▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲
                    オプションサービス
▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲▼▲*/

.optionList-underWrap {
	padding-bottom: 80px;
}

/* === オプションの一覧 下層 === */
.optionList-under {
	width: 90%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.optionListItem-under .optionListItemInner {
	padding: 40px 20px;
}
.optionListTitle-under {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 24px;
	line-height: 1.417;
	letter-spacing: 0.04em;
	border-bottom: 4px solid #1d8b5e;
}
.optionList-flex {
	text-align: center;
}
.optionListImg-under {
	margin-right: 16px;
	width: 120px;
}
.optionListText-under {
	font-size: 1.6rem;
	margin-bottom: 16px;
	font-weight: 500;
}
.optionPrice-under {
	font-weight: bold;
	margin-bottom: 24px;
	letter-spacing: 0.02em;
}
.optionPrice-under .price {
	letter-spacing: 0;
	font-size: 2.8rem;
	color: #56a520;
}

/* === オプション詳細ページ その他のオプションセクション === */

.c-otherOption {
	background-color: #f4f8f9;
	margin-top: 80px;
	padding: 1px 20px 1px;
}

/* === アンカーリンクボタン === */
.c-Anchor {
	max-width: 78%;
	margin: 0 auto;
}
.c-btn--anchor {
	width: 100%;
	margin-bottom: 24px;
}
.c-btn--anchor a {
	width: 100%;
	padding: 8px 0;
}
.c-btn--anchor a::before {
	transform: rotate(90deg);
	top: 17px;
	right: 22px;
}
.c-btn--anchor a:hover::before {
	right: 22px;
}

/* サービスのポイント */
.pointListWrap li {
	width: 90%;
	margin: 0 auto 40px auto;
}
.pointListWrap li:last-of-type {
	margin-bottom: 0;
}

/* === 共通料金詳細 === */
.c-sec_sd {
	padding: 20px 0 0 0;
}
.c-sdInner {
	width: 100%;
	max-width: 840px;
	margin: 0 auto;
}
.c-sdTitle {
	position: relative;
	font-size: 1.8rem;
	padding-top: 24px;
	text-align: center;
	margin-bottom: 20px;
}
.c-sdTitle::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	background: url(../img/Option/SISAnshin/Title-price.svg) center no-repeat;
	background-size: contain;
	width: 128px;
	height: 12px;
}
.c-sdPrice {
	width: 90%;
	margin: 0 auto 40px auto;
	padding: 30px 0;
	background-color: #f4f8f9;
	border-radius: 16px;
	text-align: center;
}
.c-sdText {
	width: 90%;
	margin: 0 auto;
}
.c-sdPriceText {
	position: relative;
	text-align: center;
	font-size: 2.4rem;
	font-weight: bold;
	display: inline-block;
}
.c-sdPriceText .price {
	font-size: 5.6rem;
	font-weight: 900;
	color: #56a522;
}
.c-sdPriceText .tax {
	position: absolute;
	top: 25px;
	right: 0;
	font-size: 1.4rem;
	font-weight: 300;
}
.c-sdPriceSubText {
	font-size: 1.4rem;
	font-weight: 400;
	position: relative;
	padding-top: 16px;
}
.c-sdPriceSubText::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 80px;
	height: 1px;
	background-color: #7c7069;
	opacity: 0.2;
}
.c-sdPriceSubText span {
	font-size: 1.6rem;
	font-weight: bold;
	color: #1d8b5e;
}
.c-sdPriceSubText span:nth-of-type(1) {
	margin-left: 8px;
}
.c-sdPriceSubText span.month {
	font-size: 2rem;
}
.c-sdSubTitle {
	font-size: 2.4rem;
	border-bottom: solid 4px #1d8b5e;
	margin-bottom: 24px;
}
.c-sdSubText {
	font-size: 1.8rem;
}

/* === テーブル === */
.tableWrap {
	overflow: auto;
}
table {
	width: 100%;
	min-width: 720px;
	margin-top: 24px;
	border: solid 1px #eef6e9;
}
th {
	background-color: #eef6e9;
	border: solid 1px #fff;
	padding: 6px 0;
	font-size: 1.3rem;
	font-weight: 700;
}
td {
	border: solid 1px #edfbe4;
	height: 70px;
	font-size: 1.4rem;
	font-weight: 400;
	text-align: center;
}
table th.left,
table td.left {
	text-align: left;
	padding: 6px 12px;
}
table .c-price_sis {
	font-size: 1.5rem;
	font-weight: bold;
	color: #56a522;
}

/* Table Aoscloud */
.c-option_table.p-Aoscloud {
	table-layout: fixed;
}
.c-option_table.p-Aoscloud td {
	height: auto;
}

/* Table Mcafee */
.c-option_table.p-Mcafee {
	width: 800px;
}
.c-option_table.p-Mcafee .size_1 {
	width: 120px;
}
.c-option_table.p-Mcafee .size_2 {
	width: 400px;
}
.c-option_table.p-Mcafee .size_3 {
	width: 70px;
}

/* Table PassordwManager */
.c-option_table.p-PassordwManager {
	width: 800px;
}
.c-option_table.p-PassordwManager .size_1 {
	width: 120px;
}
.c-option_table.p-PassordwManager .size_2 {
	width: 400px;
}
.c-option_table.p-PassordwManager .size_3 {
	width: 70px;
}

/* サポートの流れ ご利用の流れ */
.c-item_UseFlow img {
	width: 100%;
}
.c-item_UseFlow {
	position: relative;
	padding-bottom: 40px;
	margin-bottom: 24px;
}
.c-item_UseFlow::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 23px;
	height: 12px;
	background: url(../img/Option/icon-UseFlowStepArrow.svg) center no-repeat;
	background-size: contain;
}
.c-item_UseFlow:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
}

.c-item_UseFlow:last-of-type::before {
	display: none;
}

/* STEP */
.UseFlowTextBox {
	width: 100%;
	margin-top: 16px;
}
.UseFlowStep {
	position: relative;
	background-color: #1d8b5e;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1;
	padding: 6px 0 8px 42px;
	margin-bottom: 18px;
}

.UseFlowStep::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 9px;
	left: 12px;
	width: 23px;
	height: 12px;
	background: url(../img/Option/icon-UseFlowStep.svg) center no-repeat;
	background-size: contain;
}

.UseFlowStep .num {
	font-size: 1.8rem;
}

.UseFlowText {
	font-size: 1.6rem;
	font-weight: bold;
}
.UseFlowText span {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
	margin-top: 24px;
}
/* 終了したオプション文言 */
.c-endService {
	color: #ff1111;
}
.endService_main {
	font-size: 2.4rem;
	font-weight: 700;
}
.endService_sub {
	font-size: 1.6rem;
}

/* 共通リスト */
.c-eachListItem {
	position: relative;
	padding-left: 20px;
	font-size: 1.4rem;
	font-weight: 400;
	margin-top: 8px;
}

/* リスト 米印 */
.c-eachListItem--※::before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}
.c-eachListItem a{
	text-decoration: underline;
	display: inline-block;
}
.under{
	color: #56a520;
	text-decoration: underline;
}
/* リスト ドット */
.c-eachListItem--dots::before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	background: url(../img/Option/icon-dots.svg) center no-repeat;
	background-size: contain;
	width: 8px;
	height: 8px;
}

/* リスト 番号 */
.c-eachList--num {
	margin-left: 20px;
}
.c-eachListItem--num {
	position: relative;
	padding: 0;
	list-style-type: decimal;
	text-indent: -0.2em;
	padding-left: 0.3em;
}
.c-eachListItem--num::marker {
	color: #1d8b5e;
	font-weight: bold;
}

/* === リンク === */

/* 共通リンク */
.c-link {
	position: relative;
	display: inline-block;
	padding-right: 24px;
	margin-left: 4px;
	margin-right: 2px;
	transition: opacity 0.2s;
}

.c-link::after {
	content: "";
	display: inline-block;
	background: url(../img/Option/icon-link.svg) center no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	transform: translateY(4px);
}

.c-link--brank::after {
	background: url(../img/Option/icon-brank.svg) center no-repeat;
}
.c-link--pdf::after {
	background: url(../img/Option/icon-pdf.svg) center no-repeat;
}
.c-link span {
	color: #56a520;
	font-weight: bold;
	border-bottom: 1px solid #56a520;
}
.c-link--solo {
	display: inline-block;
	margin-top: 24px;
}

.c-link--Arrow::before {
	background: url(../img/Plan/icon-linl-Arrow.svg) center no-repeat;
}

/* アイコンなしリンク */
.c-link.c-link--nomal {
	padding-right: 0;
	margin-right: 0;
}
.c-link.c-link--nomal::before {
	background: none;
}

/* 共通テキスト */
.c-eachText {
	font-size: 1.6rem;
	font-weight: 400;
	margin-top: 24px;
}

/* 共通リンクカード */

.c-LinkCardWrap {
	background-color: #f4f8f9;
	padding-top: 80px;
}

.c-LinkCard {
	width: 87%;
	margin: 0 auto;
	background-color: #fff;
	padding: 66px 0;
	border-radius: 16px;
}

.c-LinkCardTitle.u-big {
	margin-top: 0;
	margin-bottom: 40px;
}

.c-LinkCardtext {
	width: 80%;
	margin: 0 auto;
	font-size: 1.6rem;
	font-weight: 500;
	margin-bottom: 40px;
}

/* 光回線もセットなら、お手軽!お得！ */

.sec_c-set {
	background-color: #1d8b5e;
	padding: 80px 0;
	text-align: center;
}

.c-setTitle {
	display: inline-block;
	position: relative;
	font-size: 2.4rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
	margin-bottom: 34px;
	padding: 0 20px;
}

.c-setTitle::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 16px;
	left: 0;
	background: url(../img/icon-setTitle-l.svg) center no-repeat;
	background-size: contain;
	width: 14px;
	height: 24px;
}

.c-setTitle::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 16px;
	right: 0;
	background: url(../img/icon-setTitle-r.svg) center no-repeat;
	background-size: contain;
	width: 14px;
	height: 24px;
}

.c-setBoxWrap {
	width: 87%;
	margin: 0 auto;
}

.c-setBox {
	border-radius: 16px;
	width: 100%;
	position: relative;
	transition: all 0.2s;
}
.c-setBox:first-of-type {
	margin-bottom: 20px;
}

.c-setBox::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 6px;
	left: 50%;
	transform: translate(-50%, 0);
	width: 97.48%;
	height: 160px;
	z-index: 2;
	border-radius: 16px 16px 0 0;
}

.c-setBox--docomo::before {
	background: url(../img/img-set-docomo.jpg) center no-repeat;
	background-size: cover;
}
.c-setBox--hikari::before {
	background: url(../img/img-set-hikari.jpg) center no-repeat;
	background-size: cover;
}
.c-setBox::after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 6px;
	left: 50%;
	transform: translate(-50%, 0);
	background-color: #fff;
	width: 97.48%;
	height: 120px;
	border-radius: 0 0 16px 16px;
	z-index: 1;
}

.c-setBox a {
	position: relative;
	padding: 176px 36px 24px 36px;
	z-index: 3;
	font-size: 1.4rem;
	font-weight: 500;
}

.c-setBox a::after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 54px;
	right: 28px;
	background: url(../img/icon-setArrow.svg) center no-repeat;
	background-size: contain;
	width: 8px;
	height: 12px;
	z-index: 4;
	transition: all 0.2s;
}

.c-setBox--hikari {
	background-color: #f5ab52;
	box-shadow: 0 4px #c48f17;
}

.c-setBox--hikari a span {
	color: #f5ab52;
}

.c-setBox--docomo {
	background-color: #e00b41;
	box-shadow: 0 4px #aa2d0e;
}

.c-setBox--docomo a span {
	color: #e00b41;
}

/* CONTACT */

.sec_contact {
	margin-bottom: 80px;
}

/*==========
Utility
========== */
/* text-align */
.u-textCenter {
	text-align: center;
}
.u-textleft {
	text-align: left;
}

/* margin-top */
.u-mgt1em {
	margin-top: 1em;
}
.u-mgt8 {
	margin-top: 8px;
}
.u-mgt16 {
	margin-top: 16px;
}
.u-mgt24 {
	margin-top: 24px;
}
.u-mgt40 {
	margin-top: 40px;
}
.u-mgt80 {
	margin-top: 80px;
}
.u-mgt120 {
	margin-top: 120px;
}

/* margin-bottom */

.u-mbt80 {
	margin-bottom: 80px;
}

/* padding */
.u-pdt120 {
	padding-top: 120px;
}

/* width */
.l-width_nomal {
	max-width: 92%;
	margin-right: auto;
	margin-left: auto;
}
.l-width_min {
	max-width: 90%;
	margin-right: auto;
	margin-left: auto;
}
