@charset "UTF-8";
/* CSS Document */
/*
 *Landing page Template | Webly Maker 1.0
 *Copyright (C) 2008-2017 infosmile Inc. All Rights Reserved.
 */
/*reset css
---------------------------------------------------------------------------*/
html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align:baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
article, header, footer, aside, figure, figcaption, nav, section { 
  display:block;
}
body {
  line-height: 0;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
ol, ul {
  list-style: none;
  list-style-type: none;
}

/*全体の設定
---------------------------------------------------------------------------*/
html {
	height: 100%;
	font-size: 16px;
	-webkit-text-size-adjust: 16px;
	-ms-text-size-adjust: 16px;
}
@media screen and (max-width: 640px) {
html {
	width:100%;
  }
}
body{
	font-family: 'Hiragino Sans','ヒラギノ角ゴシック','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ','Meiryo','ＭＳ Ｐゴシック',Osaka,Verdana,sans-serif;
	background-color:#fff;
	color: #333;
	font-size: 120%;
	word-wrap: break-word; 
	overflow-wrap: break-word;
	font-feature-settings: "palt";
	
}
@media screen and (max-width: 640px) {
body {
	font-size: 100%;
  }	
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, body {
		font-feature-settings: "pkna";
	}
}
::selection	{
background: #f5484a;
color:#fff;
}
/*Firefoxに対応*/
::-moz-selection 	{
background: #f5484a;
color:#fff;
}
section {
	padding-top: 0px;
	padding-bottom: 0px;
}
u {
   text-decoration: none;
   border-bottom: 1px solid;
}
/*テキスト関連*/
p { margin-top: 0; margin-bottom: 0 ;  padding-bottom:0px;
}
a {
  color: #ffffff;
  text-decoration: none;
}
a:hover {
	color:#ffffff;
	-webkit-animation: zoom .3s;
	animation: zoom .3s;
}
@-webkit-keyframes zoom {
	50% {
		-webkit-transform: scale(1.05);
	}
}
@keyframes zoom {
	50% {
		transform: scale(1.05);
	}
}
h1{
	text-align: center;
	font-size:40px;
	font-weight: bold;
	line-height: 110%;
	padding: 10px 15px;
}
h2{
	position: relative;
	text-align: center;
	font-size:50px;
}
h2::before{
	position: absolute;
	top: 50%;
	z-index: -1;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #333;
	background: linear-gradient(-45deg, transparent, #325A8C 10%, #325A8C 90%, transparent);
}
h2 span{
	position: relative;
	z-index: 0;
	display: inline-block;
	padding: 0 20px;
	background-color: #fff;
	text-align: left;
	font-weight: bold;
}
h2 .story-02{
	position: relative;
	z-index: 0;
	display: inline-block;
	padding: 0 20px;
	background-color: #f6f4f5;
	text-align: left;
	font-weight: bold;
}
@media screen and (max-width: 640px) {
h2{
	position: relative;
	text-align: center;
	font-size:36px;
}
}
h3{
    text-align: center;
	padding: 50px 15px 30px 15px; 
	line-height: 160%;
}
h3.text2{
    text-align: center;
	padding: 10px 15px 10px 15px; 
}
h4{
    font-size: 140%;
}
h5{
    font-size: 120%;
	color: #333333;
}
h6{
    font-size: 120%;
	color: #333333;
}

/*レスポンシブの設定
---------------------------------------------------------------------------*/
/* PC・大型タブレット用 */
.wrapper {
	height: auto;
	margin: 0px auto;
	width: 960px;
	border-radius: 10px;
		line-height:180%;
}



.wrapperb {
	height: auto;
	margin: 0px auto;
	width: 960px;
}
.wrapper1012 {
	height: auto;
	margin: 0px auto;
	width: 1012px;
	line-height:180%;
	padding: 692px 520px 0px 0px;
}
.wrapper1000 {
	height: auto;
	margin: 0px auto;
	width: 1200px;
	line-height:130%;
}
.wrapper750 {
	height: auto;
	margin: 0px auto;
	width: 750px;
	line-height:180%;
	padding: 935px 180px 0px 0px;
}
.wrapper1060 {
	height: auto;
	margin: 0px auto;
	width: 1060px;
	line-height:130%;
	padding: 1070px 0px 0px 0px;
}
.wrappercta {
	height: auto;
	margin: 0px auto;
	width: 960px;
	line-height:130%;
	color: #FFF;
}
.header-wrapper {
	height: auto;
	margin: 0px auto;
	width: 960px;
}
.inner00 {
	padding:0px 0px;
	text-align:center;
}
.inner-0 {
	padding:20px 50px;
	text-align:left;
	line-height:210%;
	border-radius: 10px;
}
.inner {
	padding:20px 50px;
	text-align:left;
	line-height:210%;
	background-color: #fff;
	border-radius: 10px;
}
.inner22 {
	padding:20px 50px;
	text-align:left;
	line-height:210%;
	background-color: #fff;
}
.inner3 {
	padding:20px 50px;
	text-align:left;
	line-height:210%;
	background-color: #fff;
	border-radius: 0 0 10px 10px;
}
.inner4 {
	padding:20px 50px;
	text-align:left;
	line-height:210%;
	background-color: #fff;
	border-radius: 10px 10px 0 0 ;
}
.innerw {
	padding:20px 50px;
	text-align:left;
	background-color: #fff;
}
.inner0 {
	padding:20px 50px;
	text-align:left;
}
.innert {
	padding:20px 50px;
	text-align:left;
	background-image:url(../img/in.png);
}
.innernavi {
	padding:205px 0px 0 530px;
	text-align:left;
}
.inner670 {
	padding:0px 165px;
	text-align:left;
}
.inner840 {
	padding:20px 60px;
	text-align:left;
}
.inner820 {
	padding:0px 70px;
	text-align:left;
}
.inner800 {
	padding:0px 80px;
	text-align:left;
}
.inner780 {
	padding:20px 90px;
	text-align:left;
}
.inner760 {
	padding:20px 200px 20px 0px;
	text-align:left;
	font-size: 16px;
    color: #02395E;
	
}

/* スマホ・タブレット用 */
@media screen and (max-width: 768px) {
.wrapper,.wrappercta,.wrapper1012,.wrapper1000,.wrapper1060,.wrapper750 {
	width: 100%;
	line-height:150%;
}	
.wrapper1 {
		width: 100%;
	line-height:150%;
	padding:0px 17px;
	text-align:left;
	}	
.header-wrapper {
	width: 100%;
}
.inner,.inner0, .inner670, .inner840, .inner820 , .inner800 , .inner780 , .inner760, .innernavi, .inner-0, .inner22, .inner3, .inner4  {
	padding:10px 15px;
	text-align:left;
	border-radius: 0px;
}
	
	
.inner00 {
	padding:0px 15px;
}
}

 
/*画像の設定
---------------------------------------------------------------------------*/
/*空白消し*/
img{
	margin: 0;
	padding: 0;
	display: block;
}
/*画像切り替え*/
.pc-img { display: block;}		
.sp-img { display: none;}	

@media only screen and (max-width: 768px) {
.pc-img { display: none;}	
.sp-img { display: block;}	
}
/*イメージカット用スケーリング*/
.rs-img { 
    max-width:100%;
	height:auto;
}		
@media only screen and (max-width: 768px) {
.rs-img { 
    width:38%;
	height:auto;
}
}
/*スケーリング*/


.parts_update_class1 img{
		max-width:100%;
	height:auto;
}

.scaling{
	max-width:100%;
	height:auto;
}
.scaling2{
	max-width:100%;
	height:auto;
	padding:0px 20px;
}
/*左寄せ右マージン1em*/
.img-left {
  float: left;
  margin-right: 1em;
  margin-bottom: 0.5em;
  max-width:100%;
  height:auto;
}
/*右寄せ左マージン1em*/
.img-right {
  float: right;
  margin-left: 1em;
  margin-bottom: 0.5em;
  max-width:100%;
  height:auto;
}
/*左寄せ左右マージン2em*/
.img-left01 {
  float: left;
  margin-right: 2em;
  margin-left: 2em;
  margin-bottom: 0.5em;
  max-width:100%;
  height:auto;
}
/*右寄せ左右マージン2em*/
.img-right02 {
  float: right;
  margin-left: 2em;
  margin-right: 2em;
  margin-bottom: 0.5em;
  max-width:100%;
  height:auto;
}
/*高さ中央ぞろえ*/
.demo p {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
/*丸く切り抜く*/
.maru {
    border-radius: 50%;
    -moz-border-image: border-radius: 50%;
    -webkit-border-image: border-radius: 50%;
}
/*角丸*/
.kadomaru {
    border-radius: 10px;
    -moz-border-image: border-radius: 10px;
    -webkit-border-image: border-radius: 10px;
}
/*動画の設定
---------------------------------------------------------------------------*/
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
/* 固定ヘッダー 
----------------------------------------------------------- */  
div#header  {  
    width: 100%;  
	height: 70px;
	background-color:  rgba(51,51,51,0.85);
    position: fixed;  
    background-position: center center;
	background-position: 50% 0%;
	z-index: 9999;
	color: #ffffff;
}  
* html div#header    {     
    position: absolute;     
    top: expression(eval(document.documentElement.scrollTop+0));  
}  

/*コンテンツエリアの設定
---------------------------------------------------------------------------*/
/*コンテンツの切り替え*/
.pc-contents { display: block;}		
.sp-contents { display: none;}	
@media only screen and (max-width: 768px) {
.pc-contents { display: none;}	
.sp-contents { display: block;}	
}
/*コンテンツの背景（スクロール）*/


.bg_03{
	height: 1193px;
	background-repeat: no-repeat;
	background-position: center center;
	background-position: 50% 0%;
	text-align: center;
	background-image:url(../img/CTA.png);
}
.bg_04{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-image:url(../img/sub-back.png);
	text-align: center;
}
.bg_05{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-color: #ffffff;
	text-align: center;
}
/*コンテンツの背景（固定）*/
.bg-fix_00{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-image:url(../img/headbg00.png);
	text-align: center;
}
.bg-fix_01{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-image:url(../img/body.png);
	text-align: center;
}
.bg-fix_02{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-image:url(../img/bg01.png);
	color: #fff;
}

.bg-fix_03{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-color: #f1f1f1;
	text-align: center;
}
@media only screen and (max-width: 768px) {
	.bg-fix_03{
	background-color: #ffffff;
}
}	
	
.bg-fix_04{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-color: #ffffff;
}
.bg-fix_05{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-image:url(../img/bg5.png);
	text-align: center;
}
.bg-fix_06{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-image:url(../img/bg6.png);
	text-align: center;
}
.bg-fix_07{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-attachment: fixed;
	background-image:url(../img/bg7.png);
	text-align: center;
}

/*コンテンツ*/
.pc-contents_01{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-image:url(../img/bg01.jpg);
	text-align: center;
}
.pc-contents_02{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-image:url(../img/tokuten_bg.png);
	text-align: center;
}
.pc-contents_03{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-image:url(../img/pc-contents_03.png);
	text-align: center;
}
.pc-contents_04{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-image:url(../img/pc-contents_04.png);
	text-align: center;
}
.pc-contents_05{
    height: auto;
	background-repeat: repeat;
	background-position: center center;
	background-position: 50% 0%;
	background-image:url(../img/pc-contents_05.png);
	text-align: center;
}
/*段落設定
---------------------------------------------------------------------------*/
.dr { 
  padding-left: 1em;
  text-indent: -1em;
} 
/*区切り線
---------------------------------------------------------------------------*/
hr.white{
	border-top: 0px solid #ffffff;
}
hr.line01{
	border-top: 1px solid #8c8b8b;
}
hr.line02 {
	border-top: 3px double #8c8b8b;
}
hr.line03 {
	border-top: 1px dashed #8c8b8b;
}
hr.line04 {
	border-top: 1px dotted #8c8b8b;
}
hr.line05 {
	background-color: #fff;
	border-top: 2px dashed #8c8b8b;
}
hr.line06 {
	background-color: #fff;
	border-top: 2px dotted #8c8b8b;
}
hr.line07 {
	border-top: 1px dashed #8c8b8b;
	border-bottom: 1px dashed #fff;
}
hr.line08 {
	border-top: 1px dotted #8c8b8b;
	border-bottom: 1px dotted #fff;
}
hr.line09 {
	height: 10px;
	border: 0;
	box-shadow: 0 10px 10px -10px #8c8b8b inset;
}
hr.line10 { 
  border: 0; 
  height: 1px; 
  background-image: -webkit-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
  background-image: -moz-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
  background-image: -ms-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
  background-image: -o-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0); 
}
/*イグジットポップアップ
---------------------------------------------------------------------------*/
.stick_block_layer {
	background-image: url("../img/back/exitpopup_bg.png");
	opacity: 0.9;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
	filter: alpha(opacity=90);
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
}
.stick_popup {
	height: 540px;
	width: 960px;
	box-shadow: 0px 0px 7px #4a4a4a;
	-moz-box-shadow: 0px 0px 7px #4a4a4a;
	-webkit-box-shadow: 0px 0px 7px #4a4a4a;
	background: #f2f2f2;
	-webkit-animation: zoomin 0.7s;
	animation: zoomin 0.7s;
	background-image:url(../img/popup/popup_bg.png);
	text-align: center;
}
.stick_content {
	padding: 355px 0px 0px 0px;
}
.stick_close {
	cursor: pointer;
	position: relative;
	top: 0px;
	left: 0px;
	float: right;
	font-family: Arial;
	font-size: 36px;
	color: #4c4c4c;
	padding: 5px;
	padding-left: 10px;
	padding-right: 10px;
	text-decoration: none;
}
/* 
CSS3 animation keyframes.
*/
@-webkit-keyframes zoomin {
	0% {
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
		opacity: 0;
	}
	50% {
		-webkit-transform: scale(1.04);
		-ms-transform: scale(1.04);
		transform: scale(1.04);
		opacity: 1;
	}  
	100% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}
@-ms-keyframes zoomin {
	0% {
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
		opacity: 0;
	}
	50% {
		-webkit-transform: scale(1.04);
		-ms-transform: scale(1.04);
		transform: scale(1.04);
		opacity: 1;
	}  
	100% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}	
}
@keyframes zoomin {
	0% {
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
		opacity: 0;
	}
	50% {
		-webkit-transform: scale(1.04);
		-ms-transform: scale(1.04);
		transform: scale(1.04);
		opacity: 1;
	} 
	100% {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		opacity: 1;
	}
}
input.popup {
    color: #4797BC;
    font-weight: bold;
    width: 100%;
}
input.popup2::-webkit-input-placeholder {
    color: #ccc;
    font-weight: normal;
}
input.popup2:-ms-input-placeholder {
    color: #ccc;
    font-weight: normal;
}
input.popup2::-moz-placeholder {
    color: #ccc;
    font-weight: normal;
}

/*デザインフレーム
---------------------------------------------------------------------------*/
.d-frame01 {
   background-image: url('../img/omoipf_02.png') ;
   height: auto;
   background-size: contain;
   padding: 0px 70px 0px 70px; 
}
@media screen and (max-width: 768px) {
.d-frame01 {
   padding: 0px 30px 0px 30px; 
}
}
.d-frame02 {
   background-image: url('../img/omoipf_04.png') ;
   height: auto;
   background-size: contain;
   padding: 0px 70px 0px 70px; 
}
@media screen and (max-width: 768px) {
.d-frame02 {
   padding: 0px 30px 0px 30px; 
}
}

.d-frame03 {
   background-image: url('../img/sui_02.png') ;
   height: auto;
   background-size: contain;
   padding: 0px 70px 0px 70px;
	line-height:180%;
	
}
@media screen and (max-width: 768px) {
.d-frame03 {
   padding: 0px 30px 0px 30px; 
}
}
/*ロードマップ
---------------------------------------------------------------------------*/
.timeline {
  position: relative;
  width: 660px;
  margin: 0 auto;
  margin-top: 20px;
  padding: 1em 0;
  list-style-type: none;
}

.timeline:before {
  position: absolute;
  left: 50%;
  top: 0;
  content: ' ';
  display: block;
  width: 6px;
  height: 100%;
  margin-left: -3px;
  background: rgb(80,80,80);
  background: -moz-linear-gradient(top, rgba(80,80,80,0) 0%, rgb(80,80,80) 8%, rgb(80,80,80) 92%, rgba(80,80,80,0) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(30,87,153,1)), color-stop(100%,rgba(125,185,232,1)));
  background: -webkit-linear-gradient(top, rgba(80,80,80,0) 0%, rgb(80,80,80) 8%, rgb(80,80,80) 92%, rgba(80,80,80,0) 100%);
  background: -o-linear-gradient(top, rgba(80,80,80,0) 0%, rgb(80,80,80) 8%, rgb(80,80,80) 92%, rgba(80,80,80,0) 100%);
  background: -ms-linear-gradient(top, rgba(80,80,80,0) 0%, rgb(80,80,80) 8%, rgb(80,80,80) 92%, rgba(80,80,80,0) 100%);
  background: linear-gradient(to bottom, rgba(80,80,80,0) 0%, rgb(80,80,80) 8%, rgb(80,80,80) 92%, rgba(80,80,80,0) 100%);
  
  z-index: 0;
}

.timeline li {
  padding: 1em 0;
}

.timeline li:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.direction-l {
  position: relative;
  width: 300px;
  float: left;
  text-align: right;
}

.direction-r {
  position: relative;
  width: 300px;
  float: right;
  text-align: left;
}

.flag-wrapper {
  position: relative;
  display: inline-block;
  
  text-align: center;
}

.flag {
  position: relative;
  display: inline;
  background: rgb(248,248,248);
  padding: 6px 10px;
  border-radius: 5px;
  
  font-weight: 600;
  text-align: left;
}

.direction-l .flag {
  -webkit-box-shadow: -1px 1px 1px rgba(0,0,0,0.15), 0 0 1px rgba(0,0,0,0.15);
  -moz-box-shadow: -1px 1px 1px rgba(0,0,0,0.15), 0 0 1px rgba(0,0,0,0.15);
  box-shadow: -1px 1px 1px rgba(0,0,0,0.15), 0 0 1px rgba(0,0,0,0.15);
}

.direction-r .flag {
  -webkit-box-shadow: 1px 1px 1px rgba(0,0,0,0.15), 0 0 1px rgba(0,0,0,0.15);
  -moz-box-shadow: 1px 1px 1px rgba(0,0,0,0.15), 0 0 1px rgba(0,0,0,0.15);
  box-shadow: 1px 1px 1px rgba(0,0,0,0.15), 0 0 1px rgba(0,0,0,0.15);
}

.direction-l .flag:before,
.direction-r .flag:before {
  position: absolute;
  top: 50%;
  right: -40px;
  content: ' ';
  display: block;
  width: 12px;
  height: 12px;
  margin-top: -10px;
  background: #fff;
  border-radius: 10px;
  border: 4px solid rgb(255,80,80);
  z-index: 0;
}

.direction-r .flag:before {
  left: -40px;
}

.direction-l .flag:after {
  content: "";
  position: absolute;
  left: 100%;
  top: 50%;
  height: 0;
  width: 0;
  margin-top: -8px;
  border: solid transparent;
  border-left-color: rgb(248,248,248);
  border-width: 8px;
  pointer-events: none;
}

.direction-r .flag:after {
  content: "";
  position: absolute;
  right: 100%;
  top: 50%;
  height: 0;
  width: 0;
  margin-top: -8px;
  border: solid transparent;
  border-right-color: rgb(248,248,248);
  border-width: 8px;
  pointer-events: none;
}

.time-wrapper {
  display: inline;
  
  line-height: 1em;
  font-size: 0.66666em;
  color: rgb(250,80,80);
  vertical-align: middle;
}

.direction-l .time-wrapper {
  float: left;
}

.direction-r .time-wrapper {
  float: right;
}

.time {
  display: inline-block;
  padding: 4px 6px;
  background: rgb(248,248,248);
}

.desc {
  margin: 1em 0.75em 0 0;
  
  font-size: 0.9em;
  font-style: italic;
  line-height: 1.5em;
}

.direction-r .desc {
  margin: 1em 0 0 0.75em;
}

/* ================ Timeline Media Queries ================ */

@media screen and (max-width: 660px) {

.timeline {
 	width: 100%;
	padding: 4em 0 1em 0;
}

.timeline li {
	padding: 2em 0;
}

.direction-l,
.direction-r {
	float: none;
	width: 100%;

	text-align: center;
}

.flag-wrapper {
	text-align: center;
}

.flag {
	background: rgb(255,255,255);
	z-index: 15;
}

.direction-l .flag:before,
.direction-r .flag:before {
  position: absolute;
  top: -30px;
	left: 50%;
	content: ' ';
	display: block;
	width: 12px;
	height: 12px;
	margin-left: -9px;
	background: #fff;
	border-radius: 10px;
	border: 4px solid rgb(255,80,80);
	z-index: 10;
}

.direction-l .flag:after,
.direction-r .flag:after {
	content: "";
	position: absolute;
	left: 50%;
	top: -8px;
	height: 0;
	width: 0;
	margin-left: -8px;
	border: solid transparent;
	border-bottom-color: rgb(255,255,255);
	border-width: 8px;
	pointer-events: none;
}

.time-wrapper {
	display: block;
	position: relative;
	margin: 4px 0 0 0;
	z-index: 14;
}

.direction-l .time-wrapper {
	float: none;
}

.direction-r .time-wrapper {
	float: none;
}

.desc {
	position: relative;
	margin: 1em 0 0 0;
	padding: 1em;
	background: rgb(245,245,245);
	-webkit-box-shadow: 0 0 1px rgba(0,0,0,0.20);
	-moz-box-shadow: 0 0 1px rgba(0,0,0,0.20);
	box-shadow: 0 0 1px rgba(0,0,0,0.20);
	
  z-index: 15;
}

.direction-l .desc,
.direction-r .desc {
	position: relative;
	margin: 1em 1em 0 1em;
	padding: 1em;
	
  z-index: 15;
}
ƒ
}

@media screen and (min-width: 400px ?? max-width: 660px) {

.direction-l .desc,
.direction-r .desc {
	margin: 1em 4em 0 4em;
}

}

/*レスポンシブテーブル
---------------------------------------------------------------------------*/
/*1行3列*/
table.one3 {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 0px;
}
table.one3 th,
table.one3 td {
  padding: 5px 10px;
  text-align: center;
  width: 33%;
}


@media screen and (max-width: 768px) {
table.one3 {
  }
table.one3 td {
    display: block;
    text-align: center;
	width: 100%;
  }
table.one3 th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
	text-align: center;
  }
}
/*1行2列*/
table.one2 {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 0px;
}
table.one2 th,
table.one2 td {
  padding: 5px 20px;
  text-align: left;
  width: 50%;
  vertical-align: middle;
}


@media screen and (max-width: 768px) {
table.one2 {
  }
table.one2 td {
    display: block;
    text-align: center;
	width: 100%;
  }
table.one2 th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
	text-align: center;
  }
}

/*1行2列罫線付き*/
table.one2-1 {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 0px;
}
table.one2-1 th{
  padding: 5px 20px;
  text-align: left;
  vertical-align: middle;
  width: 30%;
  background-color: #f5484a;
  border: 1px solid #fff;
  color: #fff;
}
table.one2-1 td {
  padding: 5px 20px;
  text-align: left;
  vertical-align: middle;
  background-color: #FFEDED;
  border: 1px solid #fff;
}

@media screen and (max-width: 768px) {
table.one2-1 {
  }
table.one2-1 td {
    display: block;
    text-align: center;
	width: 100%;
  }
table.one2-1 th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
	text-align: center;
  }
}

/*フッター
---------------------------------------------------------------------------*/
div#footer{
	background-color: #5D94E7;
	text-align: center;
	font-size: 88%;
}
.message{
	line-height: 140%;
	padding-top: 10px;
	color: #fff;	
}
.copyright{
	line-height: 180%;
	padding-bottom: 20px;
	color: #fff;
}
/*固定フッター*/
.footer {
	text-align: center;
	}
.footer-top {
	background-position: center top;
	background-position: 50% 0%;
	position:fixed;
	bottom:0;
	left:0;
	overflow:hidden;
	width:100%;
	height: auto;
	padding: 20px 0px;
	background-color: #000;
	color: #ffffff;
	z-index: 9999;
	}
.footer-wrapper {
	height: auto;
	margin: 0px auto;
	width: 960px;
}
.footer-top.static {
	position:static;
	}
@media screen and (max-width: 768px) {
.footer-wrapper {
	width: 100%;
}
}
/*フッターアコーディオン
---------------------------------------------------------------------------*/
.footer-accordion{
    width:100%;
    min-width:270px;
	padding: 20px 0px 0px 0px;
    margin: 0 auto;
}
.footer-accordion a{
	color: #FFFFFF;
	background-image: none;
	text-decoration: none;
}
.footer-accordion ul li{
    overflow: hidden;
}
.footer-accordion ul li:first-child{
    border-top:none;
}
.footer-accordion ul li > a{
    display: block;
	position: relative;
}
.footer-accordion ul li > a:hover{
    color: #2473EC;
}

.footer-accordion ul li.footer-open > a{
    color: #FFFFFF;
}
.footer-accordion ul li.footer-open > a:hover{
    color: #2473EC;
}
.footer-content{
    padding: 5px 0px 0px 0px;
}
.footer-content p{
    font-size:  16px;
    line-height:  28px;
    padding: 0px 4px 15px 4px; 
}
@media screen and (max-width: 320px){
	.footer-accordion ul li > a{
		font-size:36px;
	}
}

/*特定商法のテーブル
---------------------------------------------------------------------------*/
.tokusyo{
	max-height: 560px;
	overflow-y:scroll;
}
table.tokusyo {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 0px;
}
table.tokusyo th,
table.tokusyo td {
  padding: 5px 10px;
  border: 1px solid #888;
  text-align:left;
  background-color: #fff;
  color: #333;
  line-height: 140%;
}
table.tokusyo th {
  background-color: #ccc;
  text-align: left;
  width: 25%;
}

@media screen and (max-width: 768px) {
.tokusyo{
	max-height: 380px;
}	
  table.tokusyo {
    border-top: 1px solid #999;
  }
  table.tokusyo td {
    display: block;
    text-align: left;
  }
  table.tokusyo th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
	text-align: center;
  }
}


/*2023.02.09追加　ボタン下プライバシーマーク＆有料商品リンク画像
---------------------------------------------------------------------------*/



.button-under-img{
	display: flex;
	justify-content: center;
	margin: 2rem 0 0 0 ;
}

.pm{
	margin-left: 1rem;
}

.paid{
	margin-right: 1rem;
	text-align: center;
}
.paid a{
	color: #333;
	text-decoration: underline;
}
.paid a:hover{
	color: #0000ee;
}


@media screen and (max-width: 768px) {

.button-under-img{
	display: block;
	margin:1rem 0 0 0 ;
}

.pm{
	margin:0 auto 1rem;
	text-align: center!important;
}
.pm img{
	margin:0 auto;
}
.paid{
	margin:0 auto;;
}

.paid img{
	margin:0 auto;;
}

}/*sp END*/



/*2023.02.26追加　ボタン下プロダクトテーブル
---------------------------------------------------------------------------*/

table.product-table{
	font-size: 0.9rem;
	line-height: 1.5rem;
	margin: 2rem 0 0 0;
}

table.product-table th{
padding: 0.5rem;
}
table.product-table td{
padding: 0.8rem;
vertical-align: middle;
}

/*2023.03.20追加　公式サイトへのフッターリンク
---------------------------------------------------------------------------*/


.footer-link{text-align: center;}
.footer-link a{
	color: #0000ee;
	text-decoration: underline;
}

.footer-link a:hover{
	color: #fa7a55;
}














