@charset "utf-8";

/* ===============================================================================================================================
	reset
================================================================================================================================ */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
table {
	font-size: 100%;
	font-family: inherit;
}
fieldset, img {
	border: 0;
}
img {
	vertical-align: top;
}
address, caption, cite, code, dfn, th, var {
	font-style: normal;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
caption, th {
	text-align: left;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}
q:before, q:after {
	content: '';
}
abbr, acronym {
	border: 0;
}
select, input, textarea {
	font-size: 100%;
}
hr {
	border-top: 1px solid #cccccc;
	clear: both;
}
blockquote{
	border-left: 4px solid #cccccc;
	margin-left: 20px;
	padding-left: 20px;
}
header,footer,nav,section,article,figure,aside {
	display:block;
}

rt, rp {
display: none;
}

*{min-height: 0%;}

/* ===============================================================================================================================
	共通モジュール
================================================================================================================================ */

/* ClearFix
============================================================================================================ */
.clearfix {
	zoom: 1;
}
.clearfix:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

/* text-align
============================================================================================================ */
.mar_b05em{margin-bottom:.5em;}
.mar_b1em{margin-bottom:1em;}
.mar_b2em{margin-bottom:2em;}

.mar_t05em{margin-top:.5em;}
.mar_t1em{margin-top:1em;}
.mar_t2em{margin-top:2em;}

/* text-align
============================================================================================================ */
.text_l {text-align: left;}
.text_c {text-align: center;}
.text_r {text-align: right;}

.ver_t{vertical-align: top;}
.ver_m{vertical-align: middle;}
.ver_b{vertical-align: bottom;}

/* color */
.txtBlue01{color: #2d8acd;}
.txtRed01{color: #FF4B00;}

/* ===============================================================================================================================
	template
================================================================================================================================ */
html {
	font-size: 62.5%;
}
body {
	background-color: #fff;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.6;
	color: #333333;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", sans-serif;
}
table {
	line-height: 1.6;
}

a {
	color: #2d8acd;
	cursor: pointer;
	text-decoration:none;
}

a:hover{
	color: #2d8acd;
	text-decoration: underline;
}

.list_btn02 li:hover,
.list_btn03 li:hover,
.list_btn04 > li:hover,
.btn_arrow01 > a:hover, 
.btn_arrow01 > a:hover, 
.panel_box:hover a, 
.swiper-slide-active:hover, 
.swiper .button-prev:hover, 
.swiper .button-next:hover {
	text-decoration: none;
	opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)";
	cursor: pointer;
}


a.link_arrow{
    background: url(../images/arrow_link.png) right center no-repeat;
    padding-right: 19px;
    margin-right: 5px;
	background-size: 14px;
	color: #6aaade;
}
.news_text_box a{
	color: #6aaade;
}

#header #nav ul a:hover{
	opacity: 1 !important;
	cursor: pointer;
}
label {
	cursor: pointer;
}
input, select, textarea, button {
	font-size: 100%;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", Verdana,Arial, Helvetica, sans-serif;
	outline: none;
}



/* pc / sp
============================================================================================================ */
.sp, .list_btn01 .pc-hide{
	display: none;
}

/* コンテナ
============================================================================================================ */
#container {
	margin: 0 auto;
	font-size: 16px;
	font-size: 1.6rem;
	position: relative;
}

#indexMainWrap #indexMain{
	width: 100%;
	margin: 0 auto;
	text-align: center;
	position: relative;
}

#indexMainWrap #indexMain h1{
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: normal;
	margin: 40px 0 40px;
}

#indexMainWrap #indexMain .mainImage{
	display: block;
	width: 100%;
	min-height: 439px;
	background:url(../images/parts/main.jpg) no-repeat;
	background-size: 1240px 439px;
	background-position: top center;
	margin: 0 auto;
}

#indexMainWrap #indexMain .mainImage p {
    position: absolute;
    top: 0;
    left: 0;
	visibility:hidden;
}

/*lifestickを動画で見る　ここから*/
#indexMainWrap #indexMain .movie_btn_box{
	position: absolute;
	top:30%;
	left: 10%;
	text-align: center;	
	background:rgba(0,0,0,0.7);
	width: 155px;
	height: 155px;
	border-radius: 50%;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
}

#indexMainWrap #indexMain .movie_btn_box:hover{
	-webkit-transform: scale( 1.05 );
    -moz-transform: scale( 1.05 );
}

.movie_btn_box .movie_btn_wrap {
	width: 100%;
	max-width: 100%;
	height: 100%;
	margin:0 auto;
	background: url(../images/parts/play_btn.png) no-repeat;
    background-position: center 20px;
    background-size: 28px 28px;
}

.movie_btn_box .movie_btn_wrap:hover{
	text-decoration: none;
	opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)";
	cursor: pointer;
}

.movie_btn_box .movie_btn_wrap a{
	display:block;
	width: 100%;
	max-width: 100%;
	height: 100%;
}
.movie_btn_box .movie_btn_wrap a:hover {
	text-decoration: none;
}

.movie_btn_box .movie_btn_wrap a .movie_btn_txt{
	width: 100%;
	max-width: 100%;
	display: block;
	padding-top:60px;

    color: #fff;
    text-align: center;
    font-size: 18px;
}

.movie_btn_box .movie_btn_wrap a .movie_btn_txt:hover {
	text-decoration: none;
}

#indexMainWrap #main{
	width: 960px;
	margin: 0 auto;
}

.mainImage2 a{
	display: block;
	width: 100%;
	min-height: 90px;
	background:url(../images/parts/main05-01.png) no-repeat;
	background-size: 1240px 90px;
	background-position: top center;
	margin: 0 auto;
        text-indent:-9999px;
}

.mainImage2:hover{
filter:alpha(opacity=80);
opacity:0.8;
}

/* お知らせ
============================================================================================================ */
#indexMainWrap .newsArea dl:first-of-type{
	border-top: 1px dotted #d3d3d3;
}

#indexMainWrap .newsArea dl{
	border-bottom: 1px dotted #d3d3d3;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 16px;
	padding: 17px 0;
	word-break:break-all;
}

#indexMainWrap .newsArea dl:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

#indexMainWrap .newsArea dl dt{
	float: left;
	width: 165px;
}

#indexMainWrap .newsArea dl dt span{
	background: #c00;
	color: #fff;
	font-size: 12px;
	font-size: 1.2rem;
	padding: 2px 8px 0;
	margin-left: 10px;
	vertical-align: top;
}
#indexMainWrap .newsArea dl dd{
	float: left;
	width: 795px;
}



/* ヘッダー
============================================================================================================ */
#header {
	position: relative;
	background-color: #f1f1f1;
}

#header .head {
	width: 960px;
	height: 60px;
	margin: 0 auto;
	padding: 0 30px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.4;
}

#header .head ul {
    float: right;
}

#header .head ul li{
	display: block;
    float: left;
	margin: 20px 10px;
	padding: 0 ;
    border-right: solid 1px #333;
}
#header .head ul li:last-child{
	margin: 10px;
}

#header .head ul li a{
	margin: 10px 0 0 0;
	padding: 0 15px 0 0;
	text-decoration: none;
}

#header .head ul li a img{
	margin: 0 10px;
	padding: 0;
}

#header .head ul li:last-child{
    border-right: 0;
}

#header .head:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

#header #nav {
	width: 100%;
	height: 60px;
	padding: 0;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #fff;
	background: #333;
}

#header #nav ul {
    width: 960px;
	height: 60px;
	margin: 0 auto;
	position: relative;
}

#header #nav ul .logo {
	position: absolute;
	top: -73px;
	left: 0px;
	width: 142px;
	height: 113px;
	background: #fff;
	padding: 30px 0 0;
	text-align: center;
	border: 0;
	z-index: 10;
	opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)" !important;
	cursor: pointer;
	box-shadow: 0px 1px 0px 1px #f1f1f1;
	-webkit-box-shadow: 0px 1px 0px 1px #f1f1f1;
	-moz-box-shadow: 0px 1px 0px 1px #f1f1f1;
}

#header #nav ul li{
    float: left;
	margin: 0;
	text-align: center;
	border-bottom: 6px solid #333;
	cursor: pointer;
}

#header #nav ul li a{
	display: block;
	color: #fff;
	text-decoration: none;
	width: 100%;
    height: 100%;
}

#header #nav ul .lineup{ 
	width: 255px;
	height: 36px;
	padding: 18px 5px 0 15px;
	margin-left: 135px;
	background: url(../images/head/nav_icon01.png) no-repeat;
	background-position: 30px center;
    background-size: 28px;
}

#header #nav ul .news{
	width: 250px;
	height: 36px;
	padding: 18px 5px 0 20px;
	background: url(../images/head/nav_icon02.png) no-repeat;
	background-position: 30px center;
	background-size: 28px;
}

#header #nav ul .support{
	width: 260px;
	height: 36px;
	padding: 18px 5px 0 10px;
	background: url(../images/head/nav_icon03.png) no-repeat;
	background-position: 30px center;
	background-size: 28px;
}

#header #nav ul:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

@media screen and (min-width: 640px) {

	#header #nav{
		display: block !important;
		position: relative !important;
	}

	#header #nav ul .logo {
		display: block !important;
	}

	#header #nav ul li:hover a{
		color: #6aaade;
		text-decoration: none;
	}

	#header #nav ul .lineup:hover{ 
		width: 255px;
		height: 36px;
		padding: 18px 5px 0 15px;
		margin-left: 135px;
		background: url(../images/head/nav_icon01_ovr.png) no-repeat;
		background-position: 30px center;
		color: #6aaade;
		border-bottom: 6px solid #6aaade;
		background-size: 28px;
	}

	#header #nav ul .news:hover{
		width: 250px;
		height: 36px;
		padding: 18px 5px 0 20px;
		background: url(../images/head/nav_icon02_ovr.png) no-repeat;
		background-position: 30px center;
		color: #6aaade;
		border-bottom: 6px solid #6aaade;
	    background-size: 28px;
	}

	#header #nav ul .support:hover{
		width: 260px;
		height: 36px;
		padding: 18px 5px 0 10px;
		background: url(../images/head/nav_icon03_ovr.png) no-repeat;
		background-position: 30px center;
		color: #6aaade;
		border-bottom: 6px solid #6aaade;
	    background-size: 28px;
	}


/* フッター
============================================================================================================ */
	#footer {
		border-top :1px solid #666;
	}

	#footer .footerBlock{
		width: 960px;
		margin: 30px auto 0;
	}

	#footer .logo{
		float: left;
	}

	#footer .logo img{
		width: 150px;
		height: auto;
	}

	#footer .text_box{
		float: left;
		width:810px;
		padding-left: 25px;
		box-sizing: border-box;
		font-size: 12px;
	}

	#footer .text_box .text{
		margin-top: 5px;
	}

	#footer .text_box .nav{
		margin-top: 10px;
	}

	#footer .text_box .nav a{
		text-decoration: none;
	}

	#footer .text_box .nav a:hover{
		text-decoration: underline;
	}

	#footer .copyright{
		height: 80px;
		margin-top: 30px;
		background: #666;
		color: #fff;
		line-height: 80px;
		text-align: center;
	}

	#footer .copyright p{
		margin: 0 auto;
		font-size: 12px;
		font-size: 1.2rem;
		letter-spacing: 1px;
	}

}

/* ページトップ
-------------------------------------------------------------------------- */
#pagetop  {
	position: fixed;
	bottom: 90px;
	right: 20px;
	z-index: 1;
}

/* 見出し
-------------------------------------------------------------------------- */
section h1{
	font-size: 40px;
	font-weight: normal;
	margin: 60px 0 40px;
	text-align: center;
}

section .title_h3{
	font-size: 24px;
	line-height: 30px;
	margin-bottom: 15px;
	font-weight: normal;
}

section .title_box,
section .subtitle_box{
	font-size: 40px;
	font-weight: normal;
	margin: 60px auto 40px;
	text-align: center;
}


/* ボタン
-------------------------------------------------------------------------- */
/* 黒 矢印 */
.btn_arrow01{
	margin:30px auto;
	text-align: center;
}
.btn_arrow01 a{
	color: #fff;
	text-decoration: none;
	font-size: 24px;
	font-size: 2.4rem;
	line-height:60px;
	display: inline-block;
	padding-left: 14px;
	background: #333 url(../images/arrow_next.png) no-repeat 14px center;
	background-size: 17px 14px;
}
.btn_arrow01 a .btn_arrow01_inner{
	display: block;
	height:60px;
	padding: 0 30px 0 55px;
}

/* 黒 アロー 右寄せ */
.btn_arrow02{
	text-align: right;
    margin: 10px 0 30px 0;
}
.btn_arrow02 a{
	color: #6aaade;
	text-decoration: none;
	font-size: 16px;
	font-size: 1.6rem;
	line-height:24px;
	padding-left: 30px;
	background: url(../images/icon_arrow01.png) no-repeat 14px center;
	background-size: 10px 14px;
}
.btn_arrow02 a:hover{
	text-decoration: underline;
}

.news_text_box a:hover, .news_text_box .btn_arrow02 a:hover{
	text-decoration: underline;
}
.news_text_box .btn_arrow02 a img{
	width: 14px;
    margin-left: 5px;
    vertical-align: middle;
}
.news_text_box .btn_arrow02 a{
	width: 14px;
    margin-right: 5px;
	text-decoration: none;
}
/* 黒 アロー 左寄せ */
.btn_arrow03{
	margin: 30px 0;
}
.btn_arrow03 a{
	text-decoration: none;
	font-size: 16px;
	font-size: 1.6rem;
	line-height:24px;
	padding-left: 30px;
	background: url(../images/icon_arrow01.png) no-repeat 14px center;
	background-size: 10px 14px;
}

/* リスト 下線 アイコン */
.list_btn01 li{
	display: inline-block;
	margin: 50px 39px 0;
	border-bottom: 3px solid #fff;
}
.list_btn01 li a{
	text-decoration: none;
	font-size: 24px;
	padding: 0 10px;
	color: #333;
}
.list_btn01 li:hover, .list_btn01 .current{
	border-bottom: 3px solid #6aaade;
	cursor: pointer;
	color: #6aaade;
}
.list_btn01 .current a{
	color: #6aaade;
}
.list_btn01 li:hover a{
	opacity: 1;
	color: #6aaade;
}
.list_btn01 li a .icon_all{
	background: url(../images/parts/main_icon_all.png) no-repeat;
	background-position: left center;
    background-size: 24px auto;
    padding-left: 40px;
}
.list_btn01 li a .icon_tv{
	background: url(../images/parts/main_icon_tv.png) no-repeat;
	background-position: left top;
	background-size: 33px 30px;
	padding-left: 40px;
}
.list_btn01 li a .icon_sp{
	background: url(../images/parts/main_icon_sp.png) no-repeat;
	background-position: left top;
	background-size: 33px 30px;
	padding-left: 40px;
}
.list_btn01 li a .icon_pc{
	background: url(../images/parts/main_icon_pc.png) no-repeat;
	background-position: left top;
	background-size: 33px 30px;
	padding-left: 40px;
}
.list_btn01 li:hover a .icon_all, .list_btn01 li.current a .icon_all{
	background: url(../images/parts/main_icon_all_ovr.png) no-repeat;
	background-position: left center;
    background-size: 24px auto;
    padding-left: 40px;
}
.list_btn01 li:hover a .icon_tv, .list_btn01 li.current a .icon_tv{
	background: url(../images/parts/main_icon_tv_ovr.png) no-repeat;
	background-position: left top;
	background-size: 33px 30px;
	padding-left: 40px;
}
.list_btn01 li:hover a .icon_sp, .list_btn01 li.current a .icon_sp{
	background: url(../images/parts/main_icon_sp_ovr.png) no-repeat;
	background-position: left top;
	background-size: 33px 30px;
	padding-left: 40px;
}

.list_btn01 li:hover a .icon_pc, .list_btn01 li.current a .icon_pc{
	background: url(../images/parts/main_icon_pc_ovr.png) no-repeat;
	background-position: left top;
	background-size: 33px 30px;
	padding-left: 40px;
}

/* サポートメニュー
-------------------------------------------------------------------------- */
#indexMainWrap .supportNemu{
	text-align:center;
    margin-bottom: 60px;
}

#support_menu{
	width: 100%;
	max-width: 100%;
	margin:0 auto;
}

/* リスト 青塗り */

#indexMainWrap .supportNemu .list_btn02{
	margin: 0 auto 60px auto;
	width: 600px;
}

.list_btn02 a{
    display: block;
}

.list_btn02 .arrow01{
    display: block;
    float: left;
	margin: 50px 10px 0;
	line-height: 60px;
	color: #fff;
	width: 190px;
	height: 60px;
    background: #709cd4 url(../images/arrow_next.png) no-repeat right 5px top 5px;
	background-size: 18px 18px;
}

.list_btn02 li:last-child{
	margin: 0 !important;
}

.list_btn02 li{
    text-decoration: none;
	float: left;
	margin: 50px 10px 0 0;
	line-height: 60px;
	width: 190px;
	height: 60px;
    background: #709cd4 url(../images/arrow_support.png) no-repeat right 5px top 5px;
	background-size: 18px 18px;
}

.list_btn02 li a{
	color: #fff;
	text-decoration:none;
	display: block;
	width: 100%;
	height: 100%;
}

.list_btn02:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

#indexMainWrap .supportNemu .list_btn03{
	margin: 0 auto 60px auto;
	width: 900px;
}

.list_btn03 a{
    display: block;

}

.list_btn03 .arrow01{
    display: inline-block;
	margin: 50px 10px 0;
	line-height: 60px;
	color: #fff;
	width: 180px;
	height: 60px;
    background: #709cd4 url(../images/arrow_next.png) no-repeat right 5px top 5px;
	background-size: 18px 18px;
}

.list_btn03 li{
    text-decoration: none;
	display: inline-block;
	margin: 50px 10px 0 0;
	line-height: 60px;
	width: 180px;
	height: 60px;
    background: #709cd4 url(../images/arrow_support.png) no-repeat right 5px top 5px;
	background-size: 18px 18px;
}

.list_btn03 li a{
	color: #fff;
	text-decoration:none;
	display: block;
	width: 100%;
	height: 100%;
}

.list_btn03:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

#indexMainWrap .supportNemu .list_btn04{
	margin: 0 auto;
	width: 90%;
	display: block;
}

.list_btn04 li {
	    display: inline-block;
	    width: 185px;

	    text-decoration: none;
    	vertical-align: middle;
    	text-align: center;

    	margin: 0 auto;

    	color: #fff;
    	padding:25px 0;
}

.list_btn04 li.jump01{
    background: #709cd4 url(../images/arrow_support.png) no-repeat right 5px top 5px;
	background-size: 16px 16px;
}


.list_btn04 li.arrow01{
    background: #709cd4 url(../images/arrow_next.png) no-repeat right 5px top 5px;
	background-size: 18px 18px;
}

.list_btn04 li a{
	color: #fff;
	text-decoration:none;
	display: block;
	width: 100%;
	height: 100%;
}

ul.btn_Area{
	width: 756px;
	max-width: 756px;
	margin:0 auto 40px;
	display:flex;
  	-webkit-box-pack: justify;
    -ms-flex-pack: justify;
   	justify-content: space-between;
  	-webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

ul.btn_Area li.btn_Area-block04{
	width: calc((100% - 20px) / 4);
	max-width: calc((100% - 20px) / 4);
	height: 75px;
	margin:0 auto;
	background: #709cd4 url(../images/arrow_next.png) no-repeat right 5px top 5px;
	background-size: 18px 18px;
	display: block;
	position: relative;
}

ul.btn_Area li.btn_Area-block04 a{
	width: 100%;
	max-width: 100%;
	/* centering */
	top: calc(100% / 2);
  	left:calc(100% / 2);
  	transform: translateY(-50%) translateX(-50%);
  	-webkit- transform: translateY(-50%) translateX(-50%);
	margin:0 auto;
	color: #fff;
	display: block;
	position: absolute;
	text-decoration: none;
	text-align: center;
	box-sizing: border-box;
	vertical-align: middle;
}

/* パネル
-------------------------------------------------------------------------- */
.lineup .panel_block01{
	width: 916px;
	padding: 0 0 18px 18px;
	border: 2px solid #f1f1f1;
	margin: 10px auto 0;
}

.panel_block01 .panel_box{
	background: #eee;
	width: 290px;
	margin: 23px 20px 0 0;
	float: left;
    height: 228px;
    text-decoration: none;
}

.panel_block01 .panel_box img{
	width: 290px;
	height: auto;
}

.panel_block01 .panel_box:nth-child(3){
	margin-right: none;
	float: left;
}

.panel_block01 .panel_box .icon{
	position: absolute;
	right: 0;
    top: -30px;
}

.panel_block01 .panel_box .icon img{
	width: 30px;
	height: 30px;
}
.panel_block01 .panel_box a,{
	display: block;
	text-decoration: none;
	font-size: 16px;
}

.panel_block01 .panel_box .panel_icon{
	float: left;
	padding:12px;
	width: 64px;
	height: auto;
}

.panel_block01 .panel_box .text_box{
	position: relative;
	width: 100%;
	height: auto;
}

.panel_block01 .panel_box .text_box p{
	float: right;
    padding: 20px 4px 0 0;
    width: 198px;
}

.panel_block01 .panel_box .text_box::after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

.service-lineup,
.nav-area{
	width: 100%;
	max-width: 100%;
	margin:0 auto;
}

.lineup .panel_block02{
	width: 916px;
	max-width: 916px;
	min-height: 5px;
	padding:16px 10px  0;
	border: 2px solid #f1f1f1;
	margin: 10px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-content: space-between;
}

.panel_block02 .panel_box{
	width: calc((916px - 59px) / 3);
	max-width: calc((916px - 59px) / 3);
	margin: 0 0.5em 16px;
    height: 228px;
    text-decoration: none;
    background-color: #eee;
}

.panel_block02 .panel_box-space,{
	width: calc((916px - 59px) / 3);
	max-width: calc((916px - 59px) / 3);
    height: 228px;
    text-decoration: none;
    background-color: #fff;
    margin: 0 auto;
}

.panel_block02 .panel_box img{
	width: calc((916px - 59px) / 3);
	max-width: calc((916px - 59px) / 3);
	height: auto;
}

.panel_block02 .panel_box .icon{
	position: absolute;
	right: 0;
    top: -30px;
}

.panel_block02 .panel_box .icon img{
	width: 30px;
	height: 30px;
}
.panel_block02 .panel_box a{
	display: block;
	text-decoration: none;
	font-size: 16px;
	background-color: #eee;

}

.panel_block02 .panel_box .panel_icon{
	float: left;
	padding:12px;
	width: 64px;
	height: auto;
}

.panel_block02 .panel_box .text_box{
	position: relative;
	width: 100%;
	height: auto;
	background-color: #eee;
}

.panel_block02 .panel_box .text_box p{
	float: right;
    padding: 12px 4px 0 0;
    width: 192px;
}

.panel_block01 .panel_box .text_box::after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

.nav-area .panel_block03{
	width: 940px;
	max-width: 940px;

	margin: 10px auto 0;
	display: table;
	table-layout: fixed;
	border-collapse: separate;

	border-spacing:20px 26px;
}

.panel_block03 .panel_box-wrap{
	width: 100%;
	max-width: 100%;

    text-decoration: none;
    background-color: #fff;
    margin: 0 auto;
    display: table-row;
    box-sizing: border-box;
}

.panel_block03 .panel_box-wrap a.panel_box{
	width: 290px;
	max-width: 290px;
	margin: 0 auto;

    text-decoration: none;
    background-color: #eee;
    display: table-cell;
    box-sizing: border-box;
}

.panel_box-wrap a.panel_box .panel_box_img{
	width: 290px;
	max-width: 290px;
	height: 140px;
	margin:0 auto;
	position: relative;
	vertical-align: top;
	box-sizing: border-box;
}

.panel_box-wrap a.panel_box .panel_box_img img{
	width: 100%;
	max-width: inherit;
	height: 140px;

	margin:0 auto;
	display: block;
	object-fit: cover;
}

.panel_box-wrap a.panel_box .panel_box_img .icon{
	position: absolute;
	right: 0;
    bottom: 0;
}

.panel_box-wrap a.panel_box .panel_box_img .icon img{
	width: 30px;
	height: 30px;
	box-sizing: border-box;
}

.panel_box-wrap a.panel_box .panel_box_txt{
	width: 100%;
	max-width: 100%;
	height: 88px;
	margin:0 auto;
	display: table;
	box-sizing: border-box;
	border-collapse: collapse;
}

.panel_box-wrap a.panel_box .panel_box_txt p:first-child{
	width: calc(100% - 70%);
	max-width: calc(100% - 70%);
	margin:0 auto;
	display: table-cell;
	vertical-align: middle;
}

.panel_box-wrap a.panel_box .panel_box_txt p:first-child img{
	width: 64px;
	max-width: 64px;
	margin:0 auto;
	display: block;
}

.panel_box-wrap a.panel_box .panel_box_txt p:last-child{
	width: calc(100% - 30%);
	max-width: calc(100% - 30%);
	margin:0 auto;
	display: table-cell;
	vertical-align: middle;
}


/* スライダー
-------------------------------------------------------------------------- */
.swiper{
	margin: 80px 0 60px;
	position: relative;
}

.main_pagination {
	width: 100%;
	margin: 0 auto;
    height: 14px;
    padding-top: 15px;
    text-align: center;
}
.main_pagination span {
    width: 11px;
    height: 11px;
    border-radius: 50%;
	margin: 10px;
}

.main_pagination span.active {
    width: 11px;
    height: 11px;
    border-radius: 50%;
	float: left;
	margin: 10px;
	background: -moz-linear-gradient(top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.main_pagination:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

.button-prev{
	display: block;
	position: absolute;
	top: 45%;
	left: 15px;
	width: 40px;
	height: 90px;
	background: url(../images/arrow_prev.png) center center no-repeat #333;
    opacity: 0.3;
	background-size: 20px 17px;
	z-index:10;
	cursor: pointer;
}

.button-next{
	display: block;
	position: absolute;
	top: 45%;
	right: 15px;
	width: 40px;
	height: 90px;
	background: url(../images/arrow_next.png) center center no-repeat #333;
        opacity: 0.3;
	background-size: 20px 17px;
	z-index:10;
	cursor: pointer;
}


/* 下層
============================================================================================================ */

#breadCrumbs{ width: 960px; margin: 52px auto 0 auto; 	font-size: 12px; font-size: 1.2rem;}
#breadCrumbs ul li{ display: inline-block; margin-right: 15px;}
#breadCrumbs ul li{ color: #333;}
#breadCrumbs ul li:after{ content: ">"; color: #000; margin-left: 15px;}
#breadCrumbs ul li:last-child:after{ content: " ";}

.middle{
	font-size: 14px;
	font-size: 1.4rem;
}

.small{
	font-size: 12px;
	font-size: 1.2rem;
}

.service_h1{
	text-align: left;
	padding-left: 103px;
	vertical-align: middle;
}

.subArea {
	width: 100%;
	max-width: 100%;
	margin:0 auto;
}

.subArea h1{
	text-align: left;
	border-top: 1px solid #d3d3d3;
	background: #f1f1f1;
    font-weight: normal;
    font-size: 20px;
    line-height: 36px;
    padding-left: 20px;
    margin: 25px 0 25px;
	padding-top: 3px;
}

.subArea h2{
	width: 95%;
	margin: 20px auto 8px;
	font-size:1.8rem;

}

/*インターネット*/
.ico_net{
	display: block;
	height: 67px;
	background: url(../images/parts/icon_pct_internet.jpg) no-repeat left center;
	background-size: 82px 82px ;
	padding-top: 15px;
}

.service .h1_wrap{
    margin: 60px auto 0;
	border-top: 1px solid #d3d3d3;
}

.service .h1_wrap h1{
	border-top: 5px solid #f1f1f1;
	margin: 0 auto;
	padding: 20px 0;
	text-align: center;
}

.service .h1_wrap h1 p{
	display: block;
	width: 60%;
	margin: 0 auto;
    font-size: 36px;
	font-size: 3.6rem;
}

.service .h1_wrap h1>p>span{
	width: 100%;
	margin:0 auto;
	font-size:12px;
	font-weight: bold;
	vertical-align:text-top;
}

.service .mainImage{
	text-align: center;
	width: 100%;
}

.float_box01{
	border: 3px solid #f1f1f1;
	padding: 30px 20px;
	margin: 30px 0;
}
.float_box01 .float_img01{
	width: 300px;
	float: left;
}
.float_box01 .float_img01 img{
	width: 300px;
}
.float_box01 .float_txt01{
	width: 575px;
    float: right;
}
.float_box01 .float_txt01 a{
    text-decoration: none;
    color: #2d8acd;
}
.float_box01 .float_txt01 a:hover{
    text-decoration: underline;
    color: #2d8acd;
}
.float_box01 .float_img02{
	width: 300px;
	float: left;
}
.float_box01 .float_img02 img{
	width: 437px;
}
.float_box01 .float_txt02{
	width: 456px;
    float: right;
}
.float_box01 .float_txt02 span{
	display: block;
}
.float_box01 .float_txt02 p span{
	display: block;
}
.float_box01 .float_txt02 li{
	padding-left: 1em;
	text-indent: -1em;
}
.float_box01 .float_txt02 .note{
	font-size: 12px;
}

.subTitle01{
	background: #f1f1f1;
	text-align: center;
	font-size: 24px;
	line-height: 36px;
	font-weight: normal;
}
.subTitle02{
	background: #83c1ea;
	text-align: center;
	font-size: 24px;
	line-height: 36px;
	font-weight: normal;
	color: #fefefe;
}
.float_img_box01{
	display: inline-block;
	width: 120px;
	height: 180px;
	margin-right: 12px;
	position: relative;
	vertical-align: bottom;
}
.float_img_box01:last-child{
	margin-right: 0;
}
.float_img_box02{
	display: inline-block;
	width: 120px;
	height: 180px;
	margin-left: 55px;
	position: relative;
	vertical-align: bottom;
}
.float_img_box02:last-child{
	margin-right: 50px;
}
.float_img_box03{
	display: inline-block;
	width: 316px;
	height: 260px;
	position: relative;
	vertical-align: bottom;
	text-align: center;
	margin-top: 30px;
}
.float_img_box03:last-child{
	margin-right: 0;
}
.float_img_box01 p, .float_img_box02 p, .float_img_box03 p{
	position: absolute;
	bottom: 0;
	text-align: center;
	margin-top: 20px;
}

.subArea h1{
	border-top: 1px solid #d3d3d3;
	background: #f1f1f1;
	text-align: left;
	font-weight: normal;
	font-size: 20px;
	line-height: 36px;
	padding-left: 20px;
	margin: 25px 0 25px;
}

.subArea .subAreaTxt01 ul li{
	padding-left: 1em;
	text-indent: -1em;
}

.subAreaTxt01 .col{
	padding:0 0 5px 2em; 
}

.subAreaTxt01 .col li{
	margin:10px 0 0 0; 
}

/*ラインナップ*/
.lineup h1{
	text-align: left;
}

.service .lineup .h1_box h1{
	text-align: center;
}

/* 利用規約 */
.lineup .linkArea01{
	background: #f1f1f1;
	border-top:1px solid #d3d3d3;
	padding: 20px 0 20px 40px;
	margin-top: 60px;
}

.lineup .linkArea01 ul li{
	float: left;
    width: 282px;
    height: 30px;
    text-indent: -2em;
    margin: 0 0 10px 18px;
    line-height: 1.2em;
}

.lineup .linkArea01 ul li a{
    white-space: normal;
    word-wrap: break-word;
    line-height: 1.1em;
}
.service .supportNemu .h1_box ,.service .supportNemu .h1_box h1{
	border: none;
}

.subArea .kiyakuTxt01{
	width: 95%;
	margin: 8px auto;
	text-indent: 0;
}
.subArea .kiyakuTxt02{
	width: 100%;
	margin: 8px auto;
	font-size: 16px;
	font-size: 1.6rem;
}
.subArea .kiyakuTxt03{
	width: 95%;
	margin: 5px auto;
	padding-left: 2em;
}

.subArea .kiyakuTxt01 li{
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 5px;
}
.subArea .kiyakuTxt01child li{
	padding-left: 3.5em;
	text-indent: -1em;
	padding-top: 5px;
}
.subArea .kiyakuTxt01child02 li{
	padding-left: 3.5em;
	text-indent: -1em;
	padding-top: 5px;
}
.subArea .kiyakuTxt01child02 li ul li ul li{
	padding-left: 1.5em;
	text-indent: 0;
	padding-top: 0;
}
.subArea .kiyakuTxt01childAjust01 li{
	padding-left: 5em;
	text-indent: -3em;
	padding-top: 5px;
}
.subArea .kiyakuTxt01childAjust01 li ul li{
	padding-left: 2em;
	text-indent: -1em;
}
.subArea .kiyakuTxt01child li ul li{
	padding-left: 1em;
}
.subArea .kiyakuTxt01child02 li{
	padding-left: 4.5em;
	text-indent: -1em;
	padding-top: 5px;
}
.subArea .kiyakuTxt01child02 li ul li{
	padding-left: 1em;
}
.subArea .kiyakuTxt01 ul{
	margin-bottom: 0;
	text-indent: 2em;
}
.subArea .ajustIndent01 li{
	text-indent: -2.5em;
	padding-left: 2.5em;
}
.subArea .ajustIndent01 li .ajustIndentChild01 li{
	text-indent: -1em;
	padding-left: 1em;
}
.subArea .ajustIndent02 li{
	text-indent: -3em;
	padding-left: 3em;
}
.subArea .ajustIndent03 li{
	text-indent: -3em;
	padding-left: 6.5em;
}
.subArea .ajustIndent03 li ul li{
	text-indent: -1em;
	padding-left: 0;
}
.subArea .ajustIndent04 li{
	text-indent: -2.5em;
	padding-left: 4em;
}
.subArea .ajustIndent05 li{
	text-indent: -2em !important;
	padding-left: 2em !important;
}
.subArea .ajustIndent06 li{
	text-indent: -2.5em !important;
	padding-left: 2em !important;
}
.subArea .ajustIndent07 li{
	text-indent: 0em !important;
	padding-left: 0em !important;
}
.subArea .ajustIndent08 li{
	text-indent: -1em !important;
	padding-left: 2em !important;
}
.subArea ul li.ajustIndentDouble{
	text-indent: -1.5em;
	padding-left: 4em;
}
.subArea ul li.ajustIndentDouble02{
	text-indent: -3.5em;
	padding-left: 5.5em;
}
.subArea ul li.ajustIndentDouble03{
	text-indent: -3.5em;
	padding-left: 3.5em;
}

.kiyaku_table, .unext_table, .tsutaya_table{
	width: 806px;
	margin: 30px auto;
	border: 1px solid #d3d3d3;
	border-collapse: collapse;
	font-size: 14px;
	font-size: 1.4rem;
}

.kiyaku_table th, .unext_table th, .tsutaya_table th{
	background: #f1f1f1;
	width: 158px;
	height: 40px;
	border: 1px solid #d3d3d3;
	text-align: center;
	padding: 20px;
}

.kiyaku_table td, .unext_table td, .tsutaya_table td{
	background: #fff;
	width: 198px;
	height: 80px;
	border: 1px solid #d3d3d3;
	text-align: center;
	padding: 10px 2%;
}

.kiyaku_table td ul li{
    text-indent: -1.5rem;
    text-align: left;
}

.unext_table{
	width: 93%;	
	margin: 30px auto;
}

.unext_table th, .unext_table td{
    width: 50%;
    height: 40px;
    text-align: left;
    padding: 2%;
    border: 1px solid #ccc;
}

.tsutaya_table{
	width: 93%;	
	margin: 30px auto;
}

.tsutaya_table th, .tsutaya_table td{
    width: 25%;
    height: 40px;
    text-align: left;
    padding: 2%;
    border: 1px solid #ccc;

}

.plan_Box{
	width: 95%;
    margin: 10px auto 0 auto;
    padding: 20px 0 10px 0;
}

.plan_Box_border{
	border-top: 1px solid #ccc;
}

.plan_Box h3{
	width: 30%;
	float: left;
	font-weight: normal;
	padding: 0 0 0 5%;
}

.plan_detail{
	display: block;
	width: 60%;
	float: right;
	font-weight: normal;
}

.plan_detail .kiyakuTxt01{
	width: 80%;
	font-size: 14px;
	font-size: 1.4rem;
}

/* サポートページ */
.support .btn_arrow01{
	margin: 60px 0 90px;
}


/* お知らせページ */

 #indexMainWrap .service .newsArea dl{
	background: url(../../info/images/arrow_grey.jpg) no-repeat 98% center;
	background-size: 29px 17px;
}

#indexMainWrap .service .newsArea dl:hover{
	cursor: pointer;
	opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)";
}

#indexMainWrap .service .newsArea .contents{
	 display: none;
	 padding: 25px 20px 35px 165px;
	 width: 755px;
     border-bottom: 1px dotted #d3d3d3;
}

#indexMainWrap .service .newsArea .contents .news_text_box{
	float: left;
	width: 530px;
	font-size: 14px;
	font-size: 1.4rem;
}

#indexMainWrap .service .newsArea .contents .news_img_box{
	float: right;
	width: 215px;
}

#indexMainWrap .service .newsArea .contents .news_img_box img{
	width: 100%;
	height: auto;
}

#indexMainWrap .service .newsArea .contents:after{
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
}

#indexMainWrap .service .newsArea .close{
	background: url(../../info/images/arrow_grey_up.jpg) no-repeat 98% center;
	background-size: 29px 17px;
}

#indexMainWrap .service .newsArea .contents .news_text_box .sp_close{
	display: none;
}


/*　選べるお支払い方法　*/

.payment_img_box01{
	text-align: center;
	margin: 20px 0 40px;
}

.payment_img_box01 img{
	margin-right: 60px;
}

.payment_img_box01 img:last-child{
	margin-right: 0;
}

.pay_table{
	width: 806px;
	margin: 30px auto;
	border: 1px solid #d3d3d3;
	border-collapse: collapse;
	font-size: 16px;
	font-size: 1.6rem;
}
.pay_table th, .pay_table .card{
	background: #f1f1f1;
	width: 158px;
	height: 40px;
	border: 1px solid #d3d3d3;
	text-align: center;
	padding: 20px;
}

.pay_table td{
	background: #fff;
	width: 198px;
	height: 80px;
	border: 1px solid #d3d3d3;
	text-align: center;
	font-size: 4rem;
}

.pay_table td.cell3{
	text-align: left;
	padding-left: 5%;
	width: 75%;
}

.pay_table td.cell3 p{
		font-size:1.6rem;
}

.pay_table .pay01{
	background: url(../images/parts/service00_1.png) no-repeat #f1f1f1;
}

.pay_table .pay02{
	background: url(../images/parts/service00_2.png) no-repeat #f1f1f1;
}

.pay_table .pay03{
	background: url(../images/parts/service00_3.png) no-repeat #f1f1f1;
}

.pay_table .pay04{
	background: url(../images/parts/service00_4.png) no-repeat #f1f1f1;

}

.pay_table .pay01, .pay_table .pay02, .pay_table .pay03, .pay_table .pay04{	background-position: left center;
	background-position: 18px center;
    background-size: 70px 62px;
    vertical-align: middle;
    text-align: left;
}

.pay_table tr span{
    display: block;
    width: 51%;
    word-wrap: break-word;
    white-space: normal;
	float: right;
}

.pay_table tr .pay03 span{
    	white-space: nowrap;
}