@charset "UTF-8";

/*--------------------------------------------------------------------
=== [共通] ====================================
-------------------------------------------------------------------*/

body {
	font-family: "メイリオ", Meiryo,"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", Osaka, sans-serif;
}

.inner{
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 3%;
}
html {
	box-sizing: border-box;
}
.sm_only {
	display: none;
}

/*=== [/共通] ====================================*/


#header {
	position: static!important;
}
#header h2 {
	float: unset;
	width: 230px;
}
#header .header_inside {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#innerHeader {
	width:1000px;
	margin: 0 auto;
	padding: 10px 0;
	z-index: 999;
}

#header h1{
	margin-bottom: 10px;
}

#header h2{
float: left;
}

#header h2 a:hover {
cursor: pointer;
}


#main {
	position: static!important;
}


#innerSec01{
height: 300px;
background: url(../images/rinrin/bg_sec01.png);
border-top: 30px #e73341 solid;
border-bottom: 30px #e73341 solid;
}

.sec01Content01 {
position: relative;
}

.sec01Content01 img {
position: absolute;
top: -118px;
left: 0px;
}

.sec01Content02 {
height: 82px;
background: url(../images/rinrin/bg_sec01bar.png);
}

.sec01Content02 p {
float: left;
}

#section02 p.line {
margin: 18px 0 47px 0;
}

#section02 h5 {
padding: 50px 0;
background: #e73341;
text-align: center;
}

#section03 {
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
overflow: hidden;
}

#section03 h3 {
text-align:center;
margin: 80px 0 75px 0;
}

.sec03Content01,.sec03Content02 {
width: 1000px;
overflow: hidden;
margin-bottom: 80px;
}

.sec03Content01 .txtSec03 {
width: 460px;
float:left;
}

.txtSec03 h6 {
font-family:"ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif;
font-size: 24px;
text-align: center;
color: #e73341;
line-height: 1.4;
margin-bottom: 16px;
}

.txtSec03 p {
font-size: 14px;
line-height: 2.2;
}

.sec03Content01 p.illSec03 {
float: right;
}

.sec03Content02 p.illSec03 {
float: left;
padding-top: 30px
}

.sec03Content02 .txtSec03 {
width: 460px;
float:right;
}

#section04 {
background: #e73341;
}

#section04 .inner {
	padding-bottom: 70px;
}

#section04 h3 {
padding: 80px 0 36px 0;
}

#section04 p.txtSec04 {
margin-bottom: 35px;
}

#section05 {
margin-top: 85px;
}


.sec05content01{
position: relative;
}

.sec05content01 p.txtSec05 {
position: absolute;
top: 104px;
right: 0;
width: 540px;
font-size: 14px;
line-height: 2;
}

.sec05content02 {
padding:40px;
border: 10px #e73341 solid;
background: url(../images/rinrin/bg_sec05content02.png);
}

.innerWrapper {
width: 900px;
margin: 40px 0 auto 40px;
}

.flow {
margin-bottom:30px;
}

.flow h6 {
font-size: 24px;
font-weight:bold;
color:#e73341;
margin: 22px 0 6px 0;
}

.flow p {
font-size: 20px;
margin-bottom: 24px;
}

.flow p.underTxt {
text-align: center;
margin-top: 15px;
}

.ratePlan {
margin-top: 60px;
}

.ratePlan h4 {
margin-bottom: 30px;
}

.ratePlan .model {
margin-bottom: 20px;
margin-top:30px;
}

.ratePlan .txt {
	margin-bottom:20px;
	font-size:14px;
}

.ratePlan .txt span {
	font-size:12px;
	margin-bottom:10px;
}

.ratePlan ul {
margin-top: 23px;
padding: 20px;
border: 2px #e73341 solid;
border-radius: 5px;
background-color: #ffffff;
}

.ratePlan ul li {
font-size:12px;
margin-bottom: 9px;
}

.ratePlan ul li:last-child {
margin-bottom: 0px;
}

#section06 {
background: #f5f5f5;
}

#mapField {
float:left;
margin-top: 85px;
}

.sec06right{
width: 460px;
margin-top: 110px;
margin-left: 40px;
text-align: center;
}

.sec06right h3 {
margin-bottom: 58px;
}

.sec06right table {
color: #666666;
width: 460px;
border-collapse:collapse;
border-top:1px #666666 solid;
}

.sec06right table tr {
border-bottom: 1px #666666 solid;
vertical-align: middle;
}

.sec06right table th {
width: 92px;
text-indent: 5px;
font-size: 14px;
font-weight: bold;
vertical-align: middle;
}

.sec06right table td {
font-size: 12px;
vertical-align: middle;
}

#section07 {
height: 887px;
}


#section07 h3 {
text-align:center;
}

#section07 p {
color: #e73341;
font-size: 12px;
margin: 54px 0 10px 767px;
}

.formArea table.form {
width: 810px;
height: 495px;
margin: 0 auto;
font-size: 14px;
}


.formArea form th {
width: 193px;
background: #e73341;
color: #ffffff;
vertical-align: middle;
}

.formArea form td {
width: 620px;
background: #ececec;
vertical-align: middle;
}
 
.formArea form td input {
width: 600px;
height: 40px;
}


.formArea form td textarea {
width: 600px;
height: 170px;
}


.formArea form td.btnRadio {
width: 610px;
padding-left: 10px;
}

.formArea form td.btnRadio input {
width:auto;
height: auto;
padding-left:5px;
}

.formArea form td.btnRadio span {
margin-right: 10px;
}

.btnSubmit {
text-align: center;
margin-top: 50px;
}

#footer {
	padding: 0!important;
	background-color: #f5f5f5!important;
	border-top: none!important;
}

#footer .topArea{
	background: #e73341;
	color:#FFFFFF;
}

ul.footerNav {
	padding: 5px 0;
	text-align: center;
}

ul.footerNav li {
	display: inline;
	text-align:center;
	font-size: 14px;
	margin-right:15px;
}

ul.footerNav li a {
	margin-right:15px;
}

ul.footerNav li a:link, ul.footerNav li a:visited {
color: #ffffff;
text-decoration: none;
}

ul.footerNav li a:hover{
opacity:0.7;
} 

#footer .underArea {
background: #c32834;
font-size:10px;
text-align:center;
color: #ffffff;
}

#btn {
	background-image:url(../images/rinrin/btn_submit.png);
	height:75px;
	width:315px;
	text-indent:-9999px;
	border:none;
	cursor:pointer;
}

#section08 {
	text-align:center;
}

#section08 ul {
	overflow:hidden;
	margin:100px 0;
}

#section08 ul li {
	display:inline;
	margin:0 20px;
}

#wifiBnr {
	position: fixed;
	text-align: center;
	background-image: url(../images/rinrin/wifi_bnr_bg.png);
	background-repeat: repeat-x;
	width: 100%;
	transition: 1s;
	z-index: 99;
	
}
.hover {
	bottom: -80px;
}
.hd_active {
	bottom: 0;
} 
.none {
	bottom: -80px;
}
#wifiBnr .inner {
	width:1000px;
	margin:10px auto;
}
#wifiBnr ul {
	display: flex;
	justify-content: center;
}
#wifiBnr ul li {
	width: 32%;
}
#wifiBnr ul li:first-child{
	margin-right: 20px;
}
#wifiBnr ul li a {
	display: block;
	padding: 10px 20px;
	background-color: #ce0f31;
	border-radius: 10px;
	border: solid 2px #ce0f31;
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	transition: .2s;
}
#wifiBnr ul li a:hover {
	background-color: #fff;
	color: #ce0f31;
}
#wifiBnr ul li:last-child a {
	margin-right: 0;
}

input:hover,textarea:hover {
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
}

#bnrSet {
	overflow:hidden;
	margin:20px 0;
}

#bnrSet li {
	float:left;
}

#bnrSet li:first-child {
	margin-right:11px;
}


#thunks {
	text-align:center;
	margin-top:100px;
}

#thunks .btn {
	margin:30px 0;
}


 /********** [マウスオーバー]**********/
 
.hover a:hover img
{
opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";
}



/*--------------------------------------------------------------------
=== [契約申し込みフォーム] ====================================
 -------------------------------------------------------------------*/

 /********** [共通]**********/

#main {
	background-image: unset!important;
}
#main.apply {
	border-top: 30px #e73341 solid;
	color: #333;
	}

#main.apply h3 {
	text-align: center;
	margin: 40px 0 30px 0;
	}
	
#main.apply #section02 {
	width: 810px;
	margin: 0 auto;
	margin-bottom: 50px;
	}

#main.apply h4 {
	font-size: 16px;
	font-weight: bold;
	margin:26px 0 20px 15px;
	}

#main.apply table,
#main.apply #section02.terms p, 
#main.apply #section02.terms li {
	font-size: 14px;
	}

#main.apply table.typeA {
	border-spacing: 1px;
	background: #ccc;
	font-style: normal;
	font-weight: normal;
	}

#main.apply table.typeA p, #main.apply table.typeA a {
	font-size: 12px;
	color: #e73341;
	line-height: 28px;
	}

#main.apply table.typeA a:link, #main.apply table.typeA a:visited {
	color: #e73341;
	} 

#main.apply table.typeA a:hover {
	opacity: 0.7;	
	}
	
#main.apply table.typeA th {
	background: url(../images/rinrin/apply/bg01.png);
	font-size: 14px;
	font-weight: normal;
	border: 1px #FFF solid;
	}

#main.apply table.typeA th span, #main.apply table.typeA td.pay span {
	color: #e73341;
	font-size: 10px;
	}

#main.apply table.typeA td {
	background: #fff;
	padding-left: 12px;
	}

#main.apply table.typeA label {
	cursor: pointer;
	line-height: 28px;
	}

#main.apply table.typeA select {
	-webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
	width: 600px;
	color: #999;
	font-size:14px;
	text-indent:10px;
	background: url(../images/rinrin/apply/arrow01.png) no-repeat right 5px center;
	margin-bottom: 5px;
    text-overflow: ""; /*Firefox用*/
	}

#main.apply table.typeA input, #main.apply table.typeA textarea {
	background: #f9f9f9;
	border: 1px solid #ccc;
	}


#main.apply #section03 {
	width: 650px;
	margin: 0 auto;
	margin-bottom: 125px;
	}
	
#main.apply #section03 a.backBtn {
	margin-right: 21px;
	}
	
	
	
/*=== [select] ====================================*/

#main.apply table.typeA td.terminal span, #main.apply table.typeA td.sim span {
	width: 228px;
    display: inline-table;
	}

#main.apply table.typeA td.packet span {
	width: 270px;
    display: inline-table;
	}

#main.apply table.typeA td.option span {
	width: 290px;
    display: inline-table;
	}

#main.apply table.typeA p.price {
	padding: 4px 12px;
    border: 2px #e73341 solid;
    display: inline-block;
    margin: 5px 0;
	}

#main.apply table.typeA a {
	background: url(../images/rinrin/apply/icon01.png) no-repeat left center;
	padding-left: 15px;
	}


#main.apply table.typeB, #main.apply table.typeB th, #main.apply table.typeB td {
	border-collapse: collapse;
    border:1px solid #ccc;
	}

#main.apply table.typeB tr:nth-child(even) {
	background: #f9f9f9;
	}

#main.apply table.typeB th {
	font-weight: normal;
	text-indent: 52px;
	}

#main.apply table.typeB td.selectMenu {
	padding-left: 18px;
	}


#main.apply table.typeB td.price {
	padding-right: 22px;
	font-weight: bold;
	}

#main.apply table.typeB tr.totalPrice {
	background: #fff2f2;
	}

#main.apply table.typeB tr.totalPrice td {
	color: #e73341;
	}
	

/*=== [info] ====================================*/

#main.apply table.typeA.info td input {
	margin:10px 0;
	}

#main.apply table.typeA.info td input.autoAdd {
	width: 100px;
    -webkit-appearance: none;
	margin-left: 20px;
	border: none;
	border-radius: 5px;
	box-shadow: 0 1px #999;
	background: #F93;
	color: #fff;
	cursor: pointer;
	}

#main.apply table.typeA.info td p.black {
	color: #333;
	margin-top: 10px;
	}

#main.apply table.typeA.info td input.addTxtArea {
	margin: 0;
	}

#main.apply .borderDot {
	border-bottom: 3px #CCC dotted; 
	margin: 30px 0;
	}

#main.apply table.typeA.info td.pay dl, #main.apply table.typeA.info td.pay p{
	margin:15px 0 0 50px;
	
	}

#main.apply table.typeA.info td.pay div {
	margin-bottom: 50px;
	}

#main.apply table.typeA.info td.pay dt {
	width: 150px;
	line-height: 30px;
    float: left;
    clear: left;
	}

#main.apply table.typeA.info td.pay dd select {
	width: 345px;
	}

#main.apply table.typeA.info td.pay dd input {
	margin:0;
	}
	
#main.apply table.typeA.info td.pay p.bankInfo {
	color: #333;
    font-size: 16px;
    border: 2px #999 dashed;
    width: 300px;
    padding: 10px 20px;
	}	
	
	
#main.apply table.typeA.info td.idUpload div.fileUploder  {
    position:relative;
    width:500px;
    overflow:hidden;
	margin: 10px;
	}

#main.apply table.typeA.info td.idUpload div.fileUploder:hover {
	opacity: 0.7;
	cursor: pointer;
	}

#main.apply table.typeA.info td.idUpload div.fileUploder .uploader{
    position:absolute;
    top:0;
    right:0;
    z-index:99;
    width:100%;
    height:100%;
	opacity:0;
	cursor: pointer;
	}	

#main.apply table.typeA.info td button.fileBtn {
    padding: 5px 15px 5px 30px;
    border: 1px #ccc solid;
    border-radius: 5px;
    text-align: center;
    box-shadow: 0 1px #ccc;
    background: #f9f9f9 url(../images/rinrin/apply/icon02.png) no-repeat left 10px top 8px;
    margin-left: 10px;
	}

#main.apply table.typeA.info td.idUpload div.fileUploder input.txt {
	width:150px;
	}

#main.apply table.typeA.info td.idUpload p {
	line-height: 22px;
	padding-left: 1em;
	text-indent: -1em;
	margin-left: 25px;
	}
	


	
		
/*=== [terms] ====================================*/

#main.apply #section02.terms p{
	margin: 40px 0 20px 0;
	font-weight: bold;
	}

#main.apply #section02.terms li {
    padding-left: 2em;
    text-indent: -2.5em;
	margin-bottom:20px;
	}


/*=== [confirm] ====================================*/

#main.apply #section02.confirm p{
	color:#333;
	}
	
#main.apply #section02.confirm p.heading{
    font-size: 20px;
    font-weight: bold;
	color: #e73341;
    margin-top: 30px;
	}
	

/*=== [completion] ====================================*/
	
#main.apply.completion #section02 p{
	margin: 80px 0;
    font-size: 16px;
    line-height: 50px;
    text-align: center;
    padding: 20px 0;
    border: 5px #ccc double;
	}
	
#main.apply.completion #section03{
	text-align: center;
	}	
	
.error{
	text-align:center;
	font-size:16px;
	color:#F00;
	padding:10px 0;	
}
	
	
/*=== [law] ====================================*/

.lawArea{
	overflow:hidden;
	padding:0 100px 0 100px;
}

.lawArea h3{
	font-size:1.5em;
	margin:0 0 30px 0;
}


.lawArea dl{
	overflow:hidden;
	line-height:2.5em;
	margin:0 0 10px 0;
}

.lawArea dl dt{
	float:left;
	font-size:1.3em;
	width:20%;
	font-weight:bold;
}

.lawArea dl dd{
	float:right;
	font-size:1.3em;
	width:70%;
}




/** price 
******************************/
#price h3,
#voice h3,
#stock h3,
#area h3,
#method h3,
form h3 {
	margin: 0 auto 40px;
	text-align: center;
}
#price {
	padding: 100px 0;
}
#price .audio_plan {
	margin-bottom: 100px;
	padding-bottom: 100px;
	border-bottom: solid 1px #b2b2b2;
}
#price .zeikomi {
	display: block;
	text-align: right;
}
#price .plan_img {
	padding: 10px 0 30px;
	text-align: center;
}
#price .pricelist {
	display: block;
	width: 75%;
	margin: 0 auto 30px;
}
#price .audio_plan_price {
	margin-bottom: 30px;
}
#price .audio_plan_price .kiyaku {
	display: block;
	margin-top: 5px;
	text-align: right;
	font-weight: bold;
}
#price .audio_plan_price table {
	width: 100%;
	margin: 0 auto;
	border: 1px solid #eee;
}
#price .audio_plan_price table tr {
}
#price .audio_plan_price table tr th {
	background-color: #e73341;
	border: solid 1px #e73341;
	color: #FFF;
	text-align: center;
}
#price .audio_plan_price table tr:first-child th {
	border-bottom: solid 1px #FFF;
}
#price .audio_plan_price table tr th span {
	font-size: 15px;
}
#price .audio_plan_price table tr td {
	width: 67%;
	padding: 30px 20px;
	border: solid 1px #e73341;
	text-align: right;
}
#price .audio_plan_price table tr td span {
	font-size: 12px;
}
#price .audio_plan_price table tr th,
#price .audio_plan_price table tr td {
	padding: 30px 20px;
	font-size: 20px;
	font-weight: bold;
}
#price .audio_plan_option {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
#price .audio_plan_option_content {
	width: 48.5%;
}
#price .audio_plan_option_content table {
	width: 100%;
	border: 1px solid #b2b2b2;
}
#price .audio_plan_option_content table tr th {
	background: #eee;
	border-right: 1px solid #b2b2b2;
	border-bottom: 1px solid #b2b2b2;
}
#price .audio_plan_option_content table tr td {
	width: 54%;
	border-bottom: 1px solid #b2b2b2;
	text-align: right;
}
#price .audio_plan_option_content table tr th,
#price .audio_plan_option_content table tr td {
	padding: 15px 10px;
	font-size: 15px;
	font-weight: normal;
}
#price .audio_plan_option_content_first table tr th,
#price .audio_plan_option_content_first table tr td{
	background-image: linear-gradient(to right top, transparent calc(50% - 0.5px), #F00 50%, #F00 calc(50% + 0.5px), transparent calc(50% + 1px));
}
#price .audio_plan_option_content_first table tr:first-child th,
#price .audio_plan_option_content_first table tr:first-child td{
	background-image: unset;
}
#price .overview p {
	font-size: 15px;
}
#price .overview a {
	color: #00E;
}
#price h5 {
	margin-bottom: 10px;
	font-size: 20px;
	text-align: center;
}

#price .audio_plan_option_content table tr.hide th {
	text-align: center;
	empty-cells: hide;
	background-color: #e73341;
	color: #FFF;
	font-size: 16px;
	font-weight: bold;
}
.no_audio_plan .audio_plan_option_content:last-child {
	margin-top: 39px;
}

/** method 
******************************/
#method {
	padding: 70px 0;
	background-color: #f7f7f7;
}
#method .method_explanation {
	margin-bottom: 30px;
	font-size: 15px;
	text-align: center;
}
.container {
	margin-bottom: 30px;
}
.container ul.tab {
	display: flex;
	justify-content: center;
}
.container ul.tab li {
	width: 40%;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	padding: 12px 20px;
	background-color: #e7e8ec;
	border: 2px solid #e7e8ec;
	border-radius: 10px 10px 0 0;
	border-bottom: none;
	box-sizing: border-box;
	cursor: pointer;
}
.container ul.tab li:first-child{
	margin-right: 20px;
}
/*クラスに「active」が付与されたときの指定*/
.container ul.tab li.active_tab {
	background: #e73341;
	border: 2px solid #e73341;
	color: #FFF;
}
ul.content {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background-color: #FFF;
	border: 2px solid #e73341;
}
/*通常時は「display: none;」で非表示にしておく*/
ul.content li {
	display: none;
}
/*クラスに「active」が付与されたとき「display: block;」で表示する*/
ul.content li.active_tab {
	display: block;
	padding: 25px 25px 10px;
}
ul.content li p {
	font-size: 15px;
}
.user_document ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-end;
}
.user_document ul li {
	width: 49%;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
	border: solid 1px #e6e8ea;
	border-radius: 10px;
	box-sizing: border-box;
	background-color: #FFF;
}
.user_document ul li a {
	display: flex;
	align-items: center;
	padding: 10px;
	color: #3d3d3d;
}
.user_document ul li a img {
	max-width: 42px;
	margin-right: 10px;
}
.user_document ul li a span {
	margin-left: 10px;
	font-size: 14px;
	color: #e1e1e1;
	text-decoration: none;
}
ul.content li.active_tab dl {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 15px;
}
ul.content li.active_tab dl:last-child{
	margin: 0;
}
ul.content li.active_tab dl dt {
	width: 3.6%;
}
ul.content li.active_tab dl dd {
	width: 96.4%;
	font-size: 15px;
}
ul.content li.active_tab dl dd span {
	display: block;
	margin-left: 10px;
}
#method h5 {
	padding: 30px 0 10px;
	text-align: center;
	font-size: 18px;
}



/** voice 
******************************/
#voice {
	padding: 80px 0;
	background-color: #e73341;
}
#voice dl {
	margin-bottom: 30px;
}
#voice dl:last-child {
	margin-bottom: 0;
}
#voice dl dt {
	padding: 10px 40px;
	font-size: 20px;
	font-weight: bold;
	color: #e73341;
	background-color: #FFF;
	border-bottom: solid 1px #FFF;
	border-radius: 50px;
	cursor: pointer;
}
#voice dl dd {
	padding: 20px;
	font-size: 16px;
	color: #FFF;
}
#voice dl dd a {
	color: #FFF;
	text-decoration: underline;
}


/** flow 
******************************/
#flow {
	margin-bottom: 80px;
}

/** stock 
******************************/
#stock {
	padding-top: 70px;
}
#stock .stock_list {
	margin-bottom: 20px;
}
#stock .stock_list table {
	width: 100%;
}
#stock .stock_list table tr {
}
#stock .stock_list table tr th {
	font-size: 14px;
	font-weight: normal;
	background: #eee;
}
#stock .stock_list table tr td {
	border-bottom: 1px solid #b2b2b2;
	text-align: center;
}
#stock .stock_list table tr th,
#stock .stock_list table tr td {
	padding: 10px;
	text-align: center;
	border: 1px solid #b2b2b2;
}
#stock .stock_list table tr th:first-child{
	text-align: left;
}


/** area 
******************************/
#area {
	padding: 80px 0;
}
#area .area_detali {
	padding: 20px;
	font-size: 16px;
}
#area .area_detali .shop_area {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
#area .list_shop_anc {
	width: 100%;
	margin: 0 auto;
}
#area .list_shop_anc ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
#area .list_shop_anc ul li {
	margin-right: 10px;
	margin-bottom: 10px;
	border: none;
}
#area .list_shop_anc ul li a {
	display: block;
	padding: 10px 16px 8px;
	background-color: #e73341;
	border-radius: 10px;
	font-size: 17px;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
}
#area .list_shop_anc ul li:last-child{
	margin-right: 0;
}


#area ul.shop {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#area ul.shop li {
	width: 48.5%;
	margin-bottom: 30px;
	background-color: #f5f5f5;
	border-top: solid 1px #e73341;
}
#area ul.shop li .address {
}
#area ul.shop li .station {
	margin-bottom: 20px;
}
#area ul.shop li .tel {
	text-align: center;
}
#area ul.shop li .tel a {
	display: inline-block;
}


/** form 
******************************/
form {
	padding: 100px 0 !important;
	background-color: #f7f7f7;
}
.form_inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
form table {
	width: 100%;
	margin-bottom: 30px;
}
form table tr th {
	width: 240px;
	padding: 15px 10px;
	background-color: #e73341;
	border: 1px solid #e73341;
	border-bottom: solid 1px #FFF;
	color: #FFF;
}
form table tr th span {
	margin-left: 10px;
	padding: 2px 5px;
	font-size: 10px;
	font-weight: bold;
	color: #e73341;
	background-color: #fff;
	border-radius: 50px;
}
form table tr:last-child th{
	border-bottom: solid 1px #e73341;
}
form table tr td {
	padding: 12px;
	color: #333;
	text-align: left;
	border: solid 1px #e73341;
}
input,
textarea {
	width: 100%;
	padding: 10px!important;
	border: solid 1px #dfdfdf;
	background-color: #FFF;
	font-size: 16px;
}
#form_submit {
	text-align: center;
}
#form_submit input {
	width: auto;
	padding: 10px 80px !important;
	font-size: 18px;
	color: #FFF;
	background-color: #e73341;
	border-radius: 50px;
	border-color: #e73341;
	-webkit-appearance: none;
}

#footer {
	padding-bottom: 100px;
	border: none;
	background-color: #FFF;
}

/** content_required_g **/
.content_required {
	padding: 20px;
	background-color: #FFF;
}
.content_required_g {
	display: flex;
	justify-content: space-between;
	width: auto;
	align-items: flex-start;
	margin: 0 auto 20px;
}
p.content_d_txt {
	margin-bottom: 20px;
	font-size: 16px;
}
.content_d_step {
	padding: 0 0 20px;
}
.power_attorney_txt {
	margin-bottom: 20px;
	padding: 10px 0;
	font-size: 16px;
	text-align: center;
}
.r_documents {
	margin-right: 20px;
	padding: 30px 15px;
	background-color: #f5f5f5;
}
.r_documents p {
	font-size: 16px;
}
.r_documents p:first-child{
	margin-bottom: 30px;
}
.r_documents p span {
	display: block;
	margin-bottom: 10px;
	font-weight: bold;
}
.r_documents_img {
	width: 45%;
}

/** 赤文字　**/
span.zaiko {
	color: #e73341;
	font-weight: bold;
}


@media screen and (max-width: 750px){
	.pc_only {
		display: none;
	}
	.sm_only {
		display: block;
	}
	#wifiBnr {
		display: none;
	}

	#header {
		height: auto!important;
	}
	#header h1 {
		display: none;
	}
	#header .header_inside p {
		display: none;
	}
	#innerHeader {
    width: auto;
    padding: 8px 3%;
	}


	#section05 {
    margin-top: 60px;
    margin-bottom: 20px;
	}
	.sec05content01 p.txtSec05 {
		position: static;
    width: auto;
		text-align: justify;
	}
	.sec05content01 p.sm_only {
    width: 90%;
    margin: 0 auto 20px;
	}



	#section02 {
		padding-top: 0!important;
	}
	.sec01Content02 {
		height: auto !important;
    background: unset;
    background-color: #f3b90a;
	}
	.sec01Content02 .sm_only {
		padding: 14px 0;
	}
	.sec01Content02 a {
		display: block;
    cursor: default;
    width: 96%;
    margin: 0 auto;
	}
	.sec01Content02 a img {
    display: block;
    width: 100%;
    margin: 0 auto;
    animation: anime 0.4s ease 0s infinite alternate;
    transform-origin: center;
	}
	@keyframes anime {
		from {
			transform: scale(0.9, 0.9);
		}
		to {
			transform: scale(1, 1);
		}
	}


	.sec01Content02 a:nth-child(2){
		display: block;
		padding: 8px 0 10px;
		font-size: 15px;
		font-weight: bold;
    text-align: center;
    color: #FFF;
    letter-spacing: 1px;
	}


	#section03 h3 {
		width: 85%;
		margin: 0 auto;
		padding: 30px 0;
	}
	.sec03Content02 p.illSec03 {
		float: none;
		padding-top: 30px;
	}
	.sec03Content02 .txtSec03 {
		width: auto;
		float: none;
	}




	#section04 .inner {
		padding-bottom: 0!important;
	}


	#price {
		padding: 60px 0;
	}
	#price h3 {
		width: 24%;
	}
	#price .audio_plan {
    margin-bottom: 50px;
    padding-bottom: 50px;
	}
	#price .pricelist {
    width: 100%;
	}
	#price .audio_plan_price table tr td {
		width: 56%!important;
	}
	#price .audio_plan_option_content table tr td {
    width: 40%!important;
	}
	#price .audio_plan_price table tr th,
	#price .audio_plan_price table tr td {
		padding: 30px 15px;
		font-size: 17px;
	}
	#price .audio_plan_price table tr th span {
		font-size: 12px;
	}
	#price .audio_plan_price table tr th, #price .audio_plan_price table tr td {
    font-size: 17px;
	}
	#price h5 {
		font-size: 17px!important;
	}
	.no_audio_plan .audio_plan_option_content:last-child {
		margin-top: 36px;
	}


	#method h3 {
		width: 52%;
	}
	ul.content li.active_tab {
		padding: 20px;
	}
	ul.content li.active_tab dl {
		align-items: flex-start;
		margin-bottom: 15px;
	}
	ul.content li.active_tab dl dt {
		width: 8%;
		margin-top: 2px;
	}
	ul.content li.active_tab dl dd {
		width: 92%;
		font-size: 16px;
	}


	.container ul.tab li {
		width: 45%;
		font-size: 15px;
	}
	.container ul.tab li:first-child {
		margin-right: 10px;
	}
	.user_document ul li {
		width: 100%;
    margin-bottom: 10px;
	}


	.sec03Content01 {
		margin-bottom: 20px;
	}
	.sec03Content02 {
		margin-bottom: 50px;
	}
	.sec03Content01,
	.sec03Content02 {
		width: auto;
	}
	.sec03Content01 .txtSec03 {
		width: auto;
    float: unset;
	}
	.sec03Content01 p.illSec03 {
		float: unset;
	}
	.txtSec03 h6 {
		margin: 0;
		padding: 25px 0;
	}


	.sec05content02 {
		padding: 25px;
	}
	.flow p {
    font-size: 16px;
	}
	.flow h6 {
		font-size: 20px;
		font-weight: bold;
	}


	#voice {
		padding: 60px 0;
	}
	#voice h3, form h3 {
		width: 60%;
	}
	#voice dl dt {
		padding: 10px 30px!important;
		font-size: 16px!important;
		border-radius: 10px;
	}
	#voice dl dd {
		padding: 10px;
	}


	#area {
		padding: 60px 0;
	}
	#area h3 {
		width: 40%;
	}
	#area ul.shop li {
		width: 100%!important;
	}
	#area ul.shop li .tel a {
    width: 80%;
	}
	#area .list_shop_anc ul li a {
		padding: 10px 12px 8px;
	}


	form {
		padding: 0;
	}
	form table {
		width: 96%!important;
		margin: 0 auto 30px;
	}
	form table tr th,
	form table tr td {
		display: block;
		width: 100%!important;
    float: left;
    clear: both;
		box-sizing: border-box;
		border: none;
	}
	#form_submit input {
		padding: 10px 30px !important;
	}

	ul.footerNav {
    padding: 10px 0;
	}
	ul.footerNav li {
		display: inline-block;
		margin-bottom: 4px;
	}

	.content_required_g {
		flex-wrap: wrap;
		width: 100%;
	}
	.r_documents {
    margin-right: 0;
    margin-bottom: 20px;
	}
	.r_documents_img {
    width: 100%;
	}


	#stock h3 {
		width: 42%;
	}
	#stock .stock_list {
		overflow-x: scroll;
	}
	#stock .stock_list table {
		width: 900px;
	}
} 