@charset "utf-8";
/*------------------------------------------------------------
共通
------------------------------------------------------------*/
body {
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
	background:#fff;
	color:#333;
	font-size:10px;
	-webkit-text-size-adjust: 100%;
	width:640px;
	max-width:100%;
	margin:0 auto;
}
*,*:before,*:after {
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
body,img,div,ul,dl,ol,section,header,footer,nav,main,article,iframe {
	max-width:100%;
}
p {
	margin-bottom:5px;
	line-height:1.5;
}
h2 {
	text-align:center;
	margin-bottom:20px;
}
ul, ol {
    list-style: none;
}
/*------------------------------------------------------------
ヘッダー
------------------------------------------------------------*/
header {
	padding:8px 5px 5px 8px;
}
header img {
	width:50%;
}

/*------------------------------------------------------------
メインイメージ
------------------------------------------------------------*/
.main {
	line-height:0;
	position: relative;
}
.bnr {
	line-height:0;
}
.barbie {
	text-align:center;
	margin-top:10px;
}
.logo{
	position: absolute;
	top:10px;
	left: 10px;
	width:44vw;
}
/*------------------------------------------------------------
コンテンツ
------------------------------------------------------------*/
.cont01 {
	padding:30px 10px;
	background:#f9f4e5 url(../img/cont01_bg.png) center top no-repeat;
	background-size:auto;
}
.cont01 img {
	display:block;
	margin-bottom:15px;
}
.cont01 .box {
	background:#fff;
	border-radius:10px;
	padding:10px;
	line-height:1.5;
}
.cont01 .box h3 {
	font-size:13px;
	margin-bottom:5px;
}
.cont02 {
	background:url(../img/cont02_bg.png) repeat;
	padding:20px 10px;
}
.cont02 .accordion dt {
	border-top:3px solid #000;
	border-bottom:3px solid #000;
	background:#fff;
	position:relative;
	margin-top:-3px;
}
.cont02 .accordion dt img {
	max-width:85%;
}
.cont02 .accordion dt:before {
	content:"";
	background:url(../img/plus.png) center no-repeat;
	background-size:100%;
	width:30px;
	height:30px;
	position:absolute;
	right:3%;
	top:0;
	bottom:0;
	margin:auto;
}
.cont02 .accordion dt.open:before {
	content:"";
	background:url(../img/minus.png) center no-repeat;
	background-size:100%;
	width:30px;
	height:30px;
	position:absolute;
	right:3%;
	top:0;
	bottom:0;
	margin:auto;
}
.cont02 .accordion dd {
	padding:10px 10px 10px 7px;
	background:#e5eaed;
	line-height:0;
}

.cont03 {
	background:url(../img/cont03_bg.png) repeat;
	padding:20px 10px;
	line-height:0;
}
.cont04 {
	background:url(../img/cont04_bg.png) repeat;
	padding:20px 10px;
	line-height:0;
}
.cont05 {
	padding:30px 10px;
}
.cont06 {
	background:url(../img/cont06_bg.png) repeat;
	padding:20px 10px;
}
.cont06 .hakko {
	margin:20px 0 0;
	background:#fff;
	border:3px solid #000;
	padding:10px;
}
.cont06 .hakko td {
	vertical-align:middle;
	padding:5px;
	line-height:1.5;
}
.cont07 {
	padding:30px 10px;
	text-align:left;
}
.cont07 h2 {
	font-size:16px;
	margin-bottom:15px;
	text-align:left;
}
.cont07 table {
	width:100%;
	line-height:1.5;
}
.cont07 th {
	background:#1fa5c8;
	color:#fff;
	text-align:left;
}
.cont07 td {
	background:#e5eaed;
}
.cont07 th,.cont07 td {
	border:2px solid #fff;
	padding:7px;
	vertical-align:middle;
}

.txtbox_1{
    text-align:center;
	padding:20px 0px;
	background: #FFF;
}

.txtbox_1 p {
	font-size:16px;
    　　text-align:center;
	margin:0;
	font-weight:bold;
}

.txtbox_1 p a{
	color: blue;
	text-decoration: underline;
}

.inner {
  width: 93.75vw;
  margin: auto;
}
.inner2 {
  width: 87.5vw;
  margin: auto;
}
.container {
	max-width: 640px;
	margin: auto;
	position: relative;
}
.btn {
	display: inline-block;
	width: 87.34%;
}
.flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 0 4% 20px;
   
}
.narrow {
    width: 48%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px!important;

}
.sec1 {
	background: #154d97;
  text-align: center;
}
.sec1 .flex {
	width: calc(100% - 3.12% * 2);
	margin: 0 auto 3.75%;
}
.main-visual {
	background: url(../img/bg-main-visual.png) no-repeat center top;
	position: relative;
}
.main-visual .btn {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto 3.13%;
}
.main-visual p,
.sec1 p,
.sec2 p,
.sec3 p {
  margin: 0;
}
.sec1 li {
	width: 48.67%;
}
.sec1-button {
	padding-bottom: 5.47%;;
}
.sec2 {
	background: url(../img/bg-stripe1.png);
	background-size: 5.62vw;
}
.sec2 li {
	width: 48.75%;
}
.sec3 {
	background: url(../img/bg-stripe2.png);
	background-size: 5.62vw;
}
.sec3-button {
	padding-bottom: 9.6%;
}
.sec3 li:not(:last-child) {
	width: 48.75%;
	margin-bottom: 2vw;
}
.sec3 li:last-child {
	margin-bottom: 8vw;
}
.acc {
  background: url(../img/cont02_bg.png);
  padding: 7.81vw 0;
}
.acc .accordion dt {
  margin: -.781vw auto 0;
  position: relative;
}
.acc .accordion dt:after {
  content: "";
  background: url(../img/plus.png) no-repeat;
  background-size: contain;
  position: absolute;
  width: 7.03vw;
  height: 7.03vw;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 4.69vw;
  cursor: pointer;
}
.acc .accordion dt:hover:after {
  opacity: .8;
}
.acc .accordion dt.open:after {
  background-image: url(../img/minus.png);
}
.acc .accordion dd {
  display: none;
  text-align: center;
  position: relative;
}
.acc .accordion dd img {
  max-height: none;
}

/*------------------------------------------------------------
CV
------------------------------------------------------------*/
.cv {
	background:#196dc6;
	padding:20px 15px;
	position: fixed;
	bottom: 0;
	z-index: 1000;
}

/*------------------------------------------------------------
フッター
------------------------------------------------------------*/
footer {
	background:#0c5780;
	padding:10px;
	color:#fff;
	margin-bottom: 24vw;
}
footer img {
	max-width:50%;
}
footer a {
	text-decoration:underline;
    color: #fff;
}
hr {
	margin:10px 0;
}
/*------------------------------------------------------------
point
------------------------------------------------------------*/
.point img{
	vertical-align: bottom;
}
/*------------------------------------------------------------
campaign_7k
------------------------------------------------------------*/
.campaign_7k_area{
	position: relative;
}
.campaign_dtl_btn {
	position: absolute;
	    top: 60vw;
    left: 16vw;
    width: 70%;
}
.campaign_add_btn {
	position: absolute;
	top: 105vw;
    right: 20%;
    width: 60%;
}
/*------------------------------------------------------------
card_dtl
------------------------------------------------------------*/
.card_dtl th{
	display: block;
	width: 100%;
	background: #daeafb;
	color:#333;
}
.card_dtl td{
	display: block;
	width: 100%;
}
/**/
.cont06{
	background: url(../img/bg-stripe3.png) repeat;
    padding: 20px 10px;
    line-height: 0;
}
.std_pre{
	position: relative;
}
.std_pre_btn{
	position: absolute;
	bottom: 5vw;
	width: 70vw;
	left: 13vw;
	
}
.std_ctxt p {
    line-height: 1.6;
    margin-bottom: 0;
}
.att {
    padding-left: 1em;
    text-indent: -1em;
}
.fsL{
	font-size: 1.1rem;
	font-weight: normal;
	margin: 5vw 0 2vw!important;
}