@charset 'utf-8';

/* **********************************************************************
 *
 *       Title:   JPRS sp_block.css
 *
 ********************************************************************** */

/* メインビジュアル設定
======================================================= */

.mv_area{
	width: 100%;
	height: 100%;
	margin: 0 0 40px;
	background: url(../img/sp/main_specialimg.jpg) 50% bottom no-repeat;
	background-size: cover;
    padding: 0 0 20px 0;
}

body.en .mv_area{
	width: 100%;
	height: 100%;
	margin: 0 0 40px;
	background: url(../img/sp/main_img.png) 50% bottom no-repeat;
	background-size: cover;
    padding: 0 0 20px 0;
}

.mv_area a{
	width: 100%;
	height: 100%;
    text-decoration: none;
}

.mv_area a:hover{
    opacity: 0.8;
}

.mv_area .img,
body.en .mv_area h1{
	width: 60%;
	margin: 0 auto;
	padding: 21px 0 8px;
	text-align: center;
}

.mv_area .catch{
	font-size: 1.1rem;
	text-align: center;
	line-height: 1.8;
	margin: 0 0 22px;
}


/* トップ見出し設定
======================================================= */

#top h2 {
	font-size: 1.5rem;
	margin: 0 0 15px;
	text-align: left;
	color: #333;	/* トップページ見出し　文字色 */
	background: none;
	padding: 0;
}


/* トップレイアウト設定
======================================================= */

.block {
	margin: 0 0 40px;
}


/* 下層見出し設定
======================================================= */


.main h1 {
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: normal;
    margin: 0 0 20px;
    padding: 0 0 15px;
    border-bottom: 1px solid #dedede;		/* 下層ページ大見出し（タイトル） 枠線（下線）色 */
    color: #2a2a2a;		/* 下層ページ大見出し（タイトル） 文字色 */
}

.main p.date_post{
    text-align: right;
    font-size: 11px;
    font-size: 1.1rem;
    margin: 0 0 23px;
}


#under .main h2{
    position: relative;
    border-top: 2px solid #dedede;
    border-bottom: 1px solid #dedede;
    margin: 0 0 25px;
    padding: 15px 0;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: normal;
    line-height: 1.1;
    margin-top: 40px;
}

#under .main h2:before {
    position: absolute;
    z-index: 2;
    top: -2px;
    left: 0;
    width: 80px;
    height: 0;
    content: '';
    border-width: 2px 2px 0 0;
    border-style: solid;
    border-color: #d2232a;
}

.main .block h3 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0 0 20px;
    padding: 0 0 0 15px;
    background: url(../img/bg_h3.gif) 0 50% no-repeat;
    color: #333;
    font-weight: normal;
}

/* 下層block設定
======================================================= */

.wrap_un .block {
	margin: 0 0 40px;
}


/* バナー設定
======================================================= */

#top ul.bnr{
    display: none;
}

ul.bnr{
	margin: 0 0 40px;
	padding: 20px 10px;
	list-style-type: none;
    background: #fff;
	border-bottom: 1px solid #dedede;
}

ul.bnr li{
	background: url(../img/arw_l.png) 97% 50% no-repeat;
	margin: 20px 0 0;
	padding: 0 14px;
	border: 1px solid #dedede;
}

ul.bnr li:first-child{
    margin: 0;
}

ul.bnr li p{
	display: table;
	padding: 20px 0;
}

ul.bnr li p span{
	display: table-cell;
	vertical-align: middle;
	padding: 0 14px 0 0;
}

ul.bnr li p span img{
	width: 38px;
	height: auto;
}

ul.bnr li p a{
	display: table-cell;
	vertical-align: middle;
	color: #2a2a2a;
}

ul.bnr li a{
	text-decoration: none;
	font-size: 12px;
	font-size: 1.2rem;
}

ul.bnr li a:visited,
ul.bnr li a:hover,
ul.bnr li a:active{
	color: #2a2a2a;
}

ul.bnr li a br{
    display: none;
}



/* パーツテンプレート設定
======================================================= */

/* 共通 */

.box_column01 .img {
	margin: 0 0 10px;
	text-align: center;
}

.box_column01 .link {
	margin: 0 0 10px;
	padding: 0 0 0 21px;
	background: url(../img/arw.png) no-repeat 0 5px;
}


/* 3列_テキスト下 */

.box_column01.col3 .col {
    float: left;
    max-width: 32.6%;
    margin: 0 1% 0 0;
}
.box_column01.col3 .col:last-child {
    margin: 0;
}
.box_column01.col3 .col .img {
    margin: 0;
}

.box_column01.col3 .col .inner {
    display: none;
}

/* 4列_テキスト下 */

.box_column01.col4 .col {
	margin: 0 0 40px;
}


/* 1列_テキスト右 */

.box_column01.col1 .img {
	margin: 0 0 20px;
	text-align: center;
}

.box_column01.col1 .img img {
	display: block;
	margin: 0 auto 5px;
}


/* ２列_テキスト下 */

.box_column01.col2_image_none .col {
	margin: 0 0 40px;
	border: 1px solid #e6e6e6;
}

.box_column01.col2_image_none .inner {
	padding: 14px 19px;
}


/* 2列_テキスト右 */

.box_column01.col2 {
	margin: 0 0 40px;
}

.box_column01.col2 .col {
	overflow: hidden;
	clear: both;
	margin: 0 0 30px;
}

.box_column01.col2 .col .img {
	float: left;
	width: 140px;
	margin: 0 20px 0 0;
}

.box_column01.col2 .col .inner {
	overflow: hidden;
}

.flexs_column img {
	width: 100%;
	height: auto;
}

.flexs_column a:link,
.flexs_column a:visited {
	color: #333;
	text-decoration: none;
}

.flexs_column a:hover {
	color: #333;
	text-decoration: underline;
}

.flexs_column > div {
	width: 100%;
}

.flexs_column .flexs_col {
	display: block;
	border-bottom: 1px solid #e6e6e6;
	padding: 0 0 30px;
	margin: 0 0 30px;
}

.flexs_column > div > .flexs_col:first-child {
	border-left: 0px solid #e6e6e6;
}

.flexs_column h2 {
	text-align: center;
}

.flexs_column .txt {
	width: 100%;
	margin: 0 auto;
}

.flexs_col3 .flexs_col {
	border-bottom: 1px solid #e6e6e6;
	padding: 0 0 30px;
	margin: 0 0 30px;
}

.flexs_col3 .info {
	float: left;
	width: 50%;
	overflow: hidden
}

.flexs_col3 .info h2 {
	text-align: left;
	font-size: 1.8rem;
}

.flexs_col3 .img {
	float: right;
	width: 47%;
	height: 160px;
	overflow: hidden;
	position: relative;
}

.flexs_col3 .img img {
	width: 326px;
	max-width: 326px;
	height: 160px;
	position: absolute;
	left:-90px;
}
.flexs_col3 .flexs_col:after {content:"";} /* clearfix */

.flexs_col4 .flexs_col {
	border-bottom: 1px solid #e6e6e6;
	padding: 0 0 30px;
	margin: 0 0 30px;
}

.flexs_col4 .txt {
	float: right;
	width: 60%;
	overflow: hidden;
	margin: 0;
}

.flexs_col4 .txt h2 {
	font-size: 1.8rem;
	text-align: left;
	margin: 0 0 5px;
}

.flexs_col4 .img {
	float: left;
	width: 35%;
	height: 100px;
	overflow: hidden;
	position: relative;
}

.flexs_col4 .img img {
	width: 200px;
	max-width: 200px;
	height: 100px;
	position: absolute;
	left:-50px;
}
.flexs_col4 .flexs_col:after {content:"";} /* clearfix */


/* ボタン */

.box_colum_btn {
	clear: both;
	margin: 40px 0 0;
	text-align: center;
}

.box_colum_btn a {
	display: inline-block;
	vertical-align: top;
	zoom: 1; /* Fix for IE7 */
	*display: inline; /* Fix for IE7 */
	border: 1px solid #ccc;
	padding: 19px 45px 18px;
}

.box_colum_btn a span {
	padding: 0 0 0 21px;
	background: url(../img/arw.png) no-repeat 0 5px;
}

.box_colum_btn a:link,
.box_colum_btn a:visited {
	text-decoration: none;
}

.box_colum_btn a:hover {
	text-decoration: underline;
}


/* 中央揃え */

.bnr_center ul {
	max-width: 560px;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	list-style-type: none;
}

.bnr_center li {
	max-width: 230px;
	width: 48%;
	margin: 0 0 20px;
}

.bnr_center li:nth-child(odd) {
	float: left;
	clear: both;
}

.bnr_center li:nth-child(even) {
	float: right;
}


/* 165センター */

.bnr_center.bnr_165 ul {
	max-width: 350px;
}


/* alink_text */

.alink_text ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.alink_text li {
	width: 48%;
	margin: 0 0 20px;
}

.alink_text li:nth-child(odd) {
	float: left;
	clear: both;
}

.alink_text li:nth-child(even) {
	float: right;
}

.alink_text li a {
	display: block;
	padding: 15px 10px;
	border: 1px solid #e6e6e6;
	text-align: center;
}

.alink_text li a span {
	padding: 0 0 0 21px;
	background: url(../img/arw.png) no-repeat 0 5px;
}

.alink_text li a:link,
.alink_text li a:visited {
	text-decoration: none;
}

.alink_text li a:hover {
	text-decoration: underline;
}


/* link_text_lr
======================================================= */

.link_text_lr .link_text_l {
	margin: 0 0 20px;
}

.link_text_lr a {
	display: table;
	width: 100%;
	padding: 14px;
	border: 1px solid #e6e6e6;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
			box-sizing: border-box;
}

.link_text_lr a span {
	display: table-cell;
	vertical-align: middle;
	text-align: left;
	width: 100%;
	padding: 0 20px 0 21px;
	background: url(../img/arw.png) no-repeat 0 50%;
}

.link_text_lr .link_text_r a span {
	padding: 0 0 0 41px;
	background: url(../img/arw.png) no-repeat 20px 50%;
}

.link_text_lr a img {
	display: table-cell;
	vertical-align: middle;
	width: 100px;
}


/* お問い合わせ・資料請求設定
======================================================= */

.f_contact .f_contact_in {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.f_contact .f_contact_in > div {
	margin: 0 auto 40px;
	max-width: 408px;
	width: 100%;
	padding: 30px;
	border: 1px solid #e6e6e6;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
			box-sizing: border-box;
}

.f_contact .f_contact_in .fcon {
	text-align: center;
}

.f_contact .fcon .tit {
	margin: 0 0 35px;
	line-height: 1;
}

.f_contact .fcon .tel {
	margin: 0 0 35px;
	line-height: 1;
}

.f_contact .fcon .btn a {
	display: block;
	border: 1px solid #ccc;
	padding: 19px 45px 18px;
}

.f_contact .fcon .btn a span {
	padding: 0 0 0 21px;
	background: url(../img/arw.png) no-repeat 0 5px;
}

.f_contact .fcon .btn a:link,
.f_contact .fcon .btn a:visited {
	text-decoration: none;
}

.f_contact .fcon .btn a:hover {
	text-decoration: underline;
}

.f_contact .f_contact_in .fmate {
	text-align: left;
	/*background: url(../img/bg_fmate.gif) no-repeat 85% 82px;
	-webkit-background-size: 74px 73px;
	   -moz-background-size: 74px 73px;
		 -o-background-size: 74px 73px;
			background-size: 74px 73px;
		-ms-background-size: 74px 73px;*/
}

.f_contact .fmate .tit {
	margin: 0 0 25px;
	line-height: 1;
	text-align: center;
}

.f_contact .fmate .txt {
	margin: 0 0 16px;
}

.f_contact .fmate .btn {
}

.f_contact .fmate .btn a {
	text-align: center;
	display: block;
	border: 1px solid #ccc;
	padding: 19px 45px 18px;
}

.f_contact .fmate .btn a span {
	padding: 0 0 0 21px;
	background: url(../img/arw.png) no-repeat 0 5px;
}

.f_contact .fmate .btn a:link,
.f_contact .fmate .btn a:visited {
	text-decoration: none;
}

.f_contact .fmate .btn a:hover {
	text-decoration: underline;
}


/* under */

.wrap_un .f_contact {
	clear: both;
	margin: 60px 0 60px;
}

.wrap_un .f_contact .fcon .tel {
	margin: 0 0 29px;
}

.wrap_un .f_contact .fmate .tit {
	margin: 0 0 13px;
}

.wrap_un .f_contact .btn a {
	padding: 19px 30px 18px;
	text-align: center;
}

.wrap_un .f_contact .f_contact_in .fmate {
	text-align: left;
	background: url(../img/bg_fmate.gif) no-repeat 85% 65px;
	-webkit-background-size: 74px 73px;
	   -moz-background-size: 74px 73px;
		 -o-background-size: 74px 73px;
			background-size: 74px 73px;
		-ms-background-size: 74px 73px;
}


/* BLOCK内スタイル設定
======================================================= */

span.texts {
	font-size: 77%;
	line-height: 1.3;
}
span.textn {
	font-size: 100%;
}
span.textl {
	font-size: 138.5%;
}
span.textll {
	font-size: 200%;
}
span.textxl {
	font-size: 350%;
}
span.textxxl {
	font-size: 500%;
}

table {
	width: 100%;
	padding: 0;
	border-collapse: collapse;
}

table.nbr,
table.tbr table.nbr {
	border-collapse: collapse;
	border-top: none;
	border-left: none;
}

table.nbr th,
table.tbr table.nbr th {
	padding: 0;
	color: #333;
	border-right: none;
	border-bottom: none;
}

table.nbr td,
table.tbr table.nbr td {
	padding: 0;
	color: #333;
	border-right: none;
	border-bottom: none;
}

table,
table.tbr,
table.nbr table.tbr {
	border-collapse: collapse;
	border-top: 1px solid #dedede;	/* 表組み 枠線色 */
	border-left: 1px solid #dedede;	/* 表組み 枠線色 */
}

table th,
table.tbr th,
table.nbr table.tbr th {
	width: 100%;
	box-sizing: border-box;
	font-weight: bold;
	padding: 10px;
	color: #333;	/* 表組み 文字色 */
	border-right: 1px solid #dedede;	/* 表組み 枠線色 */
	border-bottom: 1px solid #dedede;	/* 表組み 枠線色 */
	background: #f8f8f8;	/* 表組み th背景色 */
	display: block;
}

table td,
table.tbr td,
table.nbr table.tbr td {
	width: 100%;
	box-sizing: border-box;
	padding: 10px;
	border-right: 1px solid #dedede;	/* 表組み 枠線色 */
	border-bottom: 1px solid #dedede;	/* 表組み 枠線色 */
	display: block;
}

table.publishDataTable,
table.publishDataTable th,
table.publishDataTable td{
    border: none;
    width: auto;
}

table.publishDataTable th,
table.publishDataTable td,
table.tbr table.publishDataTable th,
table.tbr table.publishDataTable td{
	display: table-cell;
	width: auto;
    padding: 0;
    vertical-align: top;
}
table.publish.nochg th{
    text-align: center;
    vertical-align: top;
}

/*テーブルbasic02設定*/

table.tbr {
	width: 100%;
}

table.tbr thead {
	display: none;
}

table.tbr th,
table.tbr td {
	display: block;
}

table.tbr td[data-title]:before {
	color: #666;
	content: attr(data-title) " :";
	font-weight: bold;
	padding: 0 10px 0 0;
	text-transform: none;
	display: block;
	float: left;
}

table.tbr td span {
	display: block;
	overflow: hidden;
}

iframe {
	overflow: hidden;
}

.photo_r,
.photo_l,
.photo_c,
.photo-r,
.photo-l,
.photo-c {
	width: auto !important;
	font-size: 1.2rem;
	line-height: 1.3;
	margin: 0 auto 20px;
	text-align: center;
	color: #333;
}

.photo_r img,
.photo_l img,
.photo_c img,
.photo-r img,
.photo-l img,
.photo-c img {
	display: block;
	margin: 0 auto 10px;
}

table.publish th{
	vertical-align: top;
}


table td[data-title]:before {
    color: #2a2a2a;
    content: attr(data-title);
    font-weight: bold;
    padding: 0 10px 0 0;
    text-transform: none;
    display: block;
    float: left;
    line-height: 26px;
}

/* リンク定義
======================================================= */

ul.link_un {
	margin: 5px 0;
	padding: 0;
	list-style-type: none;
}

ul.link_un li {
	margin: 0 0 5px;
}

.arw a {
	padding: 0 0 0 13px;
	background: url(../img/arw.png) no-repeat 0 .4em;
}

.blank a {
	padding: 0 19px 0 0;
	background: url(../img/ico_blank.png) no-repeat right 50%;
}

.pdf a {
	padding: 0 24px 0 0;
	background: url(../img/ico_pdf.png) no-repeat right 50%;
}


/* 引用定義
======================================================= */

.quote {
	padding: 17px 22px;
	border: 3px solid #dedede;
}


/* お問い合わせ設定
======================================================= */

/* お問い合わせ table */

form table.tbr {
    display: block;
    width: 100%;
    border-top: 1px solid #e6e6e6;
    border-left: none;
}

form table.tbr th {
    display: block;
    width: 100%;
    float: left;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    border-bottom: none;
}

form table.tbr td {
    clear: both;
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
    border: 1px solid #e6e6e6;
}

form table.tbr span {
    float: right;
    color: #fff;
    font-size: 1.1rem;
    background: #cc0000;
    padding: 2px 7px;
}

form ul,
form ol {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

form input,
form select,
form label {
    width: 90%;
    padding: 5px;
    font-size: 1.4rem;
    vertical-align: middle;
}

form select#month,
form select#day {
    width: 30%;
}

form textarea {
    width: 90%;
    padding: 5px;
    font-size: 1.6rem;
    vertical-align: middle;
    resize: vertical;
}

form input[type="tel"] {
    width: 20%;
}

form input[type="radio"],
form input[type="checkbox"] {
    width: 20px;
    height: 20px;
    -moz-transform-origin: left center;
    -moz-transform: scale( 1 , 1 );
    -webkit-transform-origin: left center;
    -webkit-transform: scale( 1 , 1 );
}

form ul.list_inline li {
    float: left;
    margin: 0 30px 0 0;
}

form ul.list_inline li input[type="checkbox"] {
    margin: 0 10px 0 0;
}

dl.subform {
    width: 100%;
    padding: 0 0 5px;
}

dl.subform dt {
    font-weight: bold;
}

form .agree_box {
    padding: 15px 10px;
    text-align: center;
    border: 1px solid #e6e6e6;
}

form .agree_box input[type="checkbox"] {
    margin: 0 5px 0 0;
    -moz-transform-origin: left center;
    -moz-transform: scale( 1 , 1 );
    -webkit-transform-origin: left center;
    -webkit-transform: scale( 1 , 1 );
}

form input.btn {
    display: block;
    margin: 0 auto;
    padding: 20px 60px 20px 81px;
    color: #fff;
    /*background: #666666 url(../img/arw_wb.png) no-repeat 60px 27px;*/
    border: none;
}

form p.back {
    margin: 30px 0 0;
    text-align: center;
}

form p.back a {
    padding: 0 0 0 21px;
    background: url(../img/arw.png) no-repeat 0 5px;
}


/* お問い合わせ error */

#form_flow {
    font-size: 77%;
    margin: 0;
    padding: 0;
    list-style-type: none;
}

#form_flow li {
    float: left;
    width: 28%;
    list-style-type: none;
}

#form_flow li.arw {
    width: 8%;
    padding: 7px 0 0 0;
    text-align: center;
}

#form_flow li .inner {
    padding: 5px 0;
    text-align: center;
    border: 1px solid #d2d2d2;
}

label.error {
    border: 1px solid #ff8383;
    background: #ffe8e8;
}

input.error {
    border: 1px solid #ff8383;
    background: #ffe8e8;
}

select.error {
    border: 1px solid #ff8383;
    background: #ffe8e8;
}

textarea.error {
    border: 1px solid #ff8383;
    background: #ffe8e8;
}

.contactform ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.contactform input {
    vertical-align: middle;
}

.err_block {
    clear: both;
    margin-bottom: 17px;
    padding: 12px;
    background: #ffe8e8;
}

.err_block p {
    font-size: 100%;
    line-height: 1.6;
    color: #f00;
}

.err_block p.err_tit {
    font-size: 100%;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 5px 0;
    padding: 2px 0 2px 10px;
    color: #fff;
    background: #f00;
}


/* 真ん中
======================================================= */

.tal {
	text-align: left !important;
}

.tac {
	text-align: center !important;
}

.tar {
	text-align: right !important;
}



/* TOPへ戻る
======================================================= */

.top_back {
	clear: both;
	padding: 30px 0 0;
	text-align: center;
}

.top_back a {
	padding: 0 15px;
}

/* トップ見出し設定
======================================================= */

#top .block > h2 {
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: normal;
	margin: 0 0 30px;
	padding: 0 0 17px;
	background: none;
	color: #2a2a2a;	/* トップページ見出し 文字色 */
	border-bottom: 1px solid #dedede;
}

/* 余白
======================================================= */

.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }


/* 非表示
======================================================= */

.sp_none {
	display: none!important;
}

.pc_headnav,
.pc_catch,
.pc_copy {
	display: none;
}
/* clearfix
======================================================= */

.clearfix {
	zoom: 1;
}
.clearfix:after {
	display: block;
	clear: both;
	content: '';
}

*:after {
	display: block;
	clear: both;
} /* この記述は固定です */

/* 汎用
======================================================= */

.snslist{
	clear: both;
}

.required{
	color: #cc0000;
}

.table-responsive {
    overflow: auto;
    white-space: nowrap;
}

.table-responsive table th,
.table-responsive table td{
	display: table-cell;
}

/* boxlink
======================================================= */
.boxlink a,
.boxlink a:visited,
.boxlink a:hover,
.boxlink a:active{
	color: #2a2a2a;
}

/* トップページ
======================================================= */

.top_snslist{
	padding: 14px 21px;
	background: #f8f8f8;
}

.top_snslist .txt{
	margin: 0 0 10px;
}

.top_snslist ul.top_sns{
	margin: 0;
	padding: 2px 0 1px;
	list-style-type: none;
	font-size: 12px;
	font-size: 1.2rem;
}

.top_snslist ul.top_sns li{
	float: left;
	border-right: 1px solid #dedede;
	text-align: center;
}

.top_snslist ul.top_sns li.first{
	padding: 0 5% 0 0;
	width: 21%;
}

.top_snslist ul.top_sns li.center{
	padding: 0 5%;
	width: 27%;
}

.top_snslist ul.top_sns li.last{
	padding: 0 0 0 3%;
	width: 31%;
    	width: calc(32% - 2px);
	border: none;
}


.top_snslist ul.top_sns li a{
	text-decoration: none;
}

.top_snslist ul.top_sns li a:hover{
	text-decoration: underline;
}

.top_snslist ul.top_sns li.first a{
	padding: 3px 0 3px 20px;
	background: url(../img/sp/rss.png) 0 50% no-repeat;
	background-size: 12px 12px;
}

.top_snslist ul.top_sns li.center a{
	padding: 3px 0 3px 25px;
	background: url(../img/sp/ico_x.png) 0 50% no-repeat;
	background-size: 18px 14px;
}

.top_snslist ul.top_sns li.last a{
	padding: 3px 0 3px 24px;
	background: url(../img/sp/ico_facebook.png) 0 50% no-repeat;
	background-size: 16px 16px;
}

.top_block{
	border: 1px solid #dedede;
}

ul.top_3col .top_block{
	float: left;
	margin: 0 10px 0 0;
	padding: 20px 0;
	border: 0;
	text-align: center;
	width: 100px;
}

ul.top_3col{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

ul.top_3col li{
	text-align: center;
	margin: 0;
	border-top: 1px solid #dedede;
}

ul.top_3col li.lst{
	margin: 0;
	border-bottom: 1px solid #dedede;
}

ul.top_3col li .txt_area{
	text-align: left;
	float: right;
	padding: 22px 0;
	width: 60%;
	width: calc(100% - 120px);
}

.ie ul.top_3col li .txt_area{
	max-height: 8em;
}

ul.top_3col li .ico_area{
	padding: 0 0 5px;
}

ul.top_3col li .top_block .arwtxt{
	display: none;
}

ul.top_3col li .txt_area .arwtxt{
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
	padding: 0 0 0 15px;
	background: url(../img/sp/arw_m.png) 0 50% no-repeat;
	-webkit-background-size: 7px 12px;
	   -moz-background-size: 7px 12px;
		 -o-background-size: 7px 12px;
			background-size: 7px 12px;
		-ms-background-size: 7px 12px;
}





ul.top_2col{
	margin: 0 0 40px;
	padding: 0;
	list-style-type: none;
}

ul.top_2col .top_block{
	padding: 36px 40px;
}

ul.top_2col li{
	margin: 0 0 20px;
}

ul.top_2col li.lst{
	margin: 0;
}

ul.top_2col li .top_block{
	background: url(../img/arw_l.png) 97% 50% no-repeat;
}

ul.top_2col li .top_block .tbr_area{
	display: table;
}

ul.top_2col li .top_block .ico_area{
	float: left;
	width: 64px;
	margin: 0 32px 0 0;
	text-align: center;
	display: table-cell;
}

ul.top_2col li .top_block .txt_area{
	display: table-cell;
	vertical-align: middle;
}

ul.top_2col li .top_block .txt_area p{
	font-size: 16px;
	font-size: 1.6rem;
}

ul.top_2col li .top_block .txt_area p span{
	font-size: 12px;
	font-size: 1.2rem;
	color: #d2232a;
}

ul.top_2col li .top_block .txt_area a{
	text-decoration: none;
	color: #2a2a2a;
}

ul.top_2col li .top_block .txt_area a:visited,
ul.top_2col li .top_block .txt_area a:hover,
ul.top_2col li .top_block .txt_area a:active{
	color: #2a2a2a;
}

#top .tit_accordion{
	border: 1px solid #dedede;
	font-size: 13px;
	font-size: 1.3rem;
	margin: 0;
	padding: 10px 28px;
	background: url(../img/sp/ico_accordion_open.png) no-repeat 96% 50%;
	-webkit-background-size: 14px;
	-moz-background-size: 14px;
	-o-background-size: 14px;
	background-size: 14px;
	-ms-background-size: 14px;
}

#top .tit_accordion.active{
	background: url(../img/sp/ico_accordion_close.png) no-repeat 96% 50%;
	-webkit-background-size: 14px;
	-moz-background-size: 14px;
	-o-background-size: 14px;
	background-size: 14px;
	-ms-background-size: 14px;
}

ul.top_linklist{
 	display: none;
	margin: 0;
	padding: 0;
	list-style-type: none;
	border-left: 1px solid #dedede;
}

ul.top_linklist li{
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	margin: 0;
	padding: 10px 28px;
	background: url(../img/sp/arw.png) no-repeat 95% 50%;
	-webkit-background-size: 5px 8px;
	-moz-background-size: 5px 8px;
	-o-background-size: 5px 8px;
	background-size: 5px 8px;
	-ms-background-size: 5px 8px;
}

ul.top_linklist li br{
	display: none;
}

ul.top_linklist li a{
	text-decoration: none;
	font-size: 13px;
	font-size: 1.3rem;
	color: #2a2a2a;
}

ul.top_linklist li a:visited,
ul.top_linklist li a:hover,
ul.top_linklist li a:active{
	color: #2a2a2a;
}

ul.top_linklist li span.img{
	display: none;
}

#under ul.sptop_2col{
	display: none;
}

ul.sptop_2col{
	margin: 0 0 40px;
	padding: 0;
	list-style-type: none;
}

ul.sptop_2col li.top_block{
	background: url(../img/arw_l.png) 97% 50% no-repeat;
	margin: 0 0 20px;
	padding: 0 14px;
}

ul.sptop_2col li.top_block p{
	display: table;
	padding: 20px 0;
}

ul.sptop_2col li.top_block p span{
	display: table-cell;
	vertical-align: middle;
	padding: 0 14px 0 0;
}

ul.sptop_2col li.top_block p span img{
	width: 38px;
	height: auto;
}

ul.sptop_2col li.top_block p a{
	display: table-cell;
	vertical-align: middle;
	color: #2a2a2a;
}

ul.sptop_2col li a{
	text-decoration: none;
	font-size: 12px;
	font-size: 1.2rem;
}

ul.linkList{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

ul.linkList a {
        background: url(../img/lm_link.gif) no-repeat 0 45%;
    padding-left: 14px;
}
/* Japanese JP Domain Name
======================================================= */

.jdn_list {
    width: 100%;
    overflow: hidden;
	padding: 20px 0;
}

.jdn_list ul {
    width: 100%;
    overflow: hidden;
	list-style-type: none;
	margin: 0;
	padding: 0;
    text-align: center;
}

.jdn_list li {
    width: 280px;
    text-align: center;
	margin: 0 auto 20px;
}


/* トピックス
======================================================= */
.linkListTable{
	margin: 10px 0 6px 0;
	padding: 0;
	border: 0px solid #ffffff;
}
.linkListTable th,
.linkListTable td{
	vertical-align: top;
	padding: 2px 5px;
	text-align: left;
	border: 0px solid #ffffff;
}
.linkListTable th{
	background: url("../img/lm_link.gif") no-repeat 0 9px;
	padding-left: 14px;
	padding-right: 8px;
	white-space: nowrap;
	font-weight: normal;
	width: 100%;
}
.linkListTable td{
	padding-right: 28px;
    padding-bottom: 20px;
}

.lonavBacknumberList{
	margin: 1em 0;
	padding: 0;
}
.lonavBacknumberList li{
	margin: 0 10px 0 0;
	display: block;
	float: left;
}
.lonavBacknumberList li a{
	background: url("../img/lm_link.gif") no-repeat 0 45%;
	padding-left: 14px;
}

.mt-image-left,
.mt-image-right{
	float: none!important;
}



/* .JP Q&A
======================================================= */

.en dl.qaList{
	margin: 5em 0 0 0;
}

.en dl.qaList dt,
.en dl.qaList dd{
	padding-left: 3em;
	position: relative;
	zoom: 1;
}
.en dl.qaList dt{
	font-weight: bold;
}
.en dl.qaList dd{
	padding-bottom: 1em;
}

.en dl.qaList dt span,
.en dl.qaList dd span{
	position: absolute;
	top: 0;
	left: 0;
	font-weight: bold;
}
.en dl.qaList dt span{
	color: #539fcf;
}
.en dl.qaList dd span{
	color: #cf5359;
}

/* 検索結果
======================================================= */

.scroll_inr {
    width: 100%;
}
.scroll{
    overflow: auto;
-webkit-overflow-scrolling:touch !important;
    white-space: nowrap;
    margin: 0 0 30px;
}
.scroll iframe {
    width: 100%;
}
.scroll::-webkit-scrollbar{
    height: 5px;
}
.scroll::-webkit-scrollbar-track{
    background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
}

