
/* module
----------------------------------------------------*/

#content {
    padding: 0px;
}

:root {
    --blue2: #1b75b2;
}

.blue {
	color: var(--blue2);
}
.orange {
	color: #ff6600;
}

.yellow {
	color: #ffc000;
}


/* 波線
----------------------------------------------------------- */
.dotted {
  background-image: linear-gradient(to right, #333, #333 2px, transparent 2px);
  background-size: 4px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
}
/* 点線
----------------------------------------------------------- */
.dashed {
	background-image: linear-gradient(to right, #333, #333 6px, transparent 6px);
	background-size: 10px 2px;
	background-position: left bottom;
	background-repeat: repeat-x;
  }


.gf {
	font-family: 'Josefin Sans', sans-serif;
}

.lp_title {
	margin-bottom: 30px;
    text-align: center;
}
.lp_title h2 {
	font-size: 36px;
	font-weight: 600;
}
.lp_title h2 span {
	font-size: 42px;
}


.artl .arrow {
    position: relative;
    display: inline-block;
    margin-bottom: 5px;
    padding: 0 35px;
    font-weight: 600;
    font-size: 18px;
    color: var(--blue);
}
.artl .arrow:before,
.artl .arrow:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 27px;
    height: 2px;
    background-color: var(--blue);
}
.artl .arrow:before {
    left: 0;
    -moz-transform: rotate(60deg);
    -webkit-transform: rotate(60deg);
    -ms-transform: rotate(60deg);
    transform: rotate(60deg);
}
.artl .arrow:after {
    right: 0;
    -moz-transform: rotate(-60deg);
    -webkit-transform: rotate(-60deg);
    -ms-transform: rotate(-60deg);
    transform: rotate(-60deg);
}


.artl_cta .arrow {
    position: relative;
    display: inline-block;
    margin-bottom: 12px;
    padding: 0 35px;
    font-weight: 600;
    font-size: 17px;
    color: #ffffff;
}
.artl_cta .arrow:before,
.artl_cta .arrow:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 27px;
    height: 2px;
    background-color: #ffffff;
}
.artl_cta .arrow:before {
    left: 0;
    -moz-transform: rotate(60deg);
    -webkit-transform: rotate(60deg);
    -ms-transform: rotate(60deg);
    transform: rotate(60deg);
}
.artl_cta .arrow:after {
    right: 0;
    -moz-transform: rotate(-60deg);
    -webkit-transform: rotate(-60deg);
    -ms-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

#wrapper {
    overflow: initial;
}


/* レイヤー重ね */
.lt_tl {
	position: relative;
}
.lt_tl:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #f7f7f7;
    z-index: -1;
}
.lt_tl .inner {
	position: relative;
    margin-top: -30px;
}
.lt_tl .sub_lead {
    position: absolute;
    left: -30px;
    top: -22px;
    font-size: 48px;
    color: #f1f1f1;
}

.dl_base dl {
    display: flex;
    flex-wrap: wrap;
}
.dl_base dt {
    width: 140px;
    padding: 24px 18px 24px 0px;
    border-bottom: 2px solid var(--blue2);
    font-size: 16px;
    font-weight: 600;
    color: var(--font);
}
.dl_base dd {
    width: calc(100% - 140px);
    margin: 0;
    padding: 24px 0px 24px 18px;
    font-size: 15px;
    line-height: 1.8;
    border-bottom: 2px solid #ddd;
}


/* tab
------------------------------------------------------*/

.tab {
	margin-bottom: 15px;
}

.tab li {
    display: inline-block;
    margin-right: 5px;
}
.tab li:last-child {
    margin-right: 0px;
}
.tab li a {
    display: block;
    padding: 5px 12px;
    text-align: center;
    font-weight: 600;
    border-radius: 5px;
}
.tab li a:hover ,
.tab li.active a {
    background-color: var(--blue);
    color: #fff;
    text-decoration: none;
}

/* tab2
------------------------------------------------------*/

.tab2 {
    margin: 30px 0px;
}
.tab2:after {
    content: "";
    position: relative;
    top: -2px;
    z-index: 1;
    display: block;
    border-bottom: 2px solid #ddd;
}
.tab2 li {
    position: relative;
    display: inline-block;
    font-weight: 600;
    cursor: pointer;
    transition: .8s;
}
.tab2 li a {
	display: block;
	width: 100%;
    padding: 15px;
	text-decoration: none;
	color: #999;
}


.tab2 li a:before {
    content: "";
    position: absolute;
    z-index: 2;
    display: block;
    background-color: var(--blue);
    width: 0;
    height: 2px;
    bottom: 0px;
    left: 0;
    -webkit-transition: .4s ease 0s;
    transition: .4s ease 0s;
}
.tab2 li a:hover {
    text-decoration: none;
}
.tab2 li.active a:before,
.tab2 li a:hover:before {
    width: 100%;
}

.tab2 li.active a,
.tab2 li a:hover {
	color: var(--blue);
}

.tab-switch {
	display: none;
}

/* tab3
------------------------------------------------------*/

.tab3 {
	margin-bottom: 15px;
}

.tab3 li {
	width: calc(100% / 3 - 6px);
	font-size: 18px;
    display: inline-block;
    margin-right: 5px;
}
.tab3 li:last-child {
    margin-right: 0px;
}
.tab3 li a {
	background-color: #f7f7f7;
    display: block;
    padding: 10px;
    text-align: center;
    font-weight: 600;
    border-radius: 5px;
}
.tab3 li a:hover ,
.tab3 li.active a {
    background-color: var(--blue);
    color: #fff;
    text-decoration: none;
}

ul.s_relat_link {
    margin-top: 15px;
}

ul.s_relat_link li {
    display: inline-block;
}

.accbox a{
    display: block;
    padding: 3px 15px;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    background: var(--navy);
    border: 1px solid var(--navy);
    border-radius: 5px;
} 

/* ポイントキャンペーン詳細
------------------------------------------------------*/

.explain h4 {
	margin-top: 15px;
	margin-bottom: 10px;
	font-weight: 600;
}

.explain .point_conditions ul {
    margin-top: 15px;
    margin-bottom: 15px;
    padding-left: 20px;
}

.explain .point_conditions ul li {
    margin-bottom: 5px;
    list-style: auto;
    line-height: 1.8;
}

/* 利用規約
------------------------------------------------------*/

.regulation h4 {
	margin-top: 15px;
	margin-bottom: 10px;
	font-weight: 600;
}

.regulation_ul {
    margin-top: 15px;
    margin-bottom: 15px;
    padding-left: 20px;
}

.regulation_ul li {
	font-weight: 500;
    margin-bottom: 5px;
    list-style: auto;
    line-height: 1.8;
}