@charset "utf-8";
/* ========================================

	cmn.css

	--------------------
	・base
		- アイコンフォント読み込み
		- リセット
		- clearfix
	・color
	・container
	・共通パーツ
	・TOPページ共通パーツ
	・フォーム・MYページ
	・フォーム
	-------------------

========================================== */

/* base
================================= */

/* アイコンフォント読み込み
--------------------------------- */
@import url('iconfont.css');


/* reset
--------------------------------- */
/* Copyright (c) 2008, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.net/yui/license.txt version: 2.6.0 */
html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}del,ins{text-decoration:none;}

/* YUI 3.4.1 (build 4118) Copyright 2011 Yahoo! Inc. All rights reserved. Licensed under the BSD License. http://yuilibrary.com/license/ */
body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif}table{font-size:inherit;font:100%}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%}


/* clearfix
--------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
  height: auto;
  overflow: hidden;
}

/* DL不可 */
.thumb, .ph {
	position: relative;
}
.thumb img, .ph img {
	background: no-repeat center top;
	-moz-background-size: contain;
	-webkit-background-size: contain;
	background-size: contain;
}
.thumb .dummy, .ph .dummy {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

/* MYページ・フォーム系
================================= */

input,textarea,select {
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size: 100%;
	vertical-align: middle;
}
input[type="text"],
input[type="password"],
input[type="tel"] {
	padding: 1px 3px;
}
input[type="radio"],
select {
	margin: 0 3px 0 0;
}
textarea {
	width: 90%;
	padding: 1px 3px;
}


.single .sectionTit {
	text-align:center;

	margin: 0 0 20px;
}

/* formArea
------------------------- */
.formArea {
}
.formArea .formTit {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 10px;
}
.formArea .formList {
	background: #f2f4f5;
	border-radius: 5px;
	padding: 15px 50px 1px 10px;
	margin: 0 0 15px;
}
.formArea .formList dt {
	width: 190px;
	clear: both;
	float: left;
	text-align: right;
	font-weight:bold;
	padding: 2px 0 0;
}
.formArea .formList dt .note {
	font-size: 0.8em;
}
.formArea .formList dd {
	min-height: 1.5em;
	padding: 2px 0 0 200px;
	margin: 0 0 15px;
}
.formArea .formList .subTxt {
	padding: 3px 0 0;
}
.formArea .formList input[type="text"],
.formArea .formList input[type="password"] {
	width: 80%;
	margin: -2px 0 0;
}
.formArea .formList input[type="tel"] {
	margin: -2px 0 0;
}
.formArea .formList input[type="radio"],
.formArea .formList select {
	margin: -2px 3px 0 0;
}
.formArea .btn {
	margin: 0 0 10px;
}
.formArea .supportList {
	text-align: center;
}
.formArea .supportList .pw a:before {
	content: '\f0be';
}
.formArea .supportList .faq a:before {
	content: '\f0a3';
}

/* alertBox
------------------------- */
.alertBox {
	background: #FCFFC4;
	border-radius: 3px;
	padding: 10px 20px;
	margin: 0 0 15px;
}
.alertBox .tit {
	font-size: 16px;
	margin: 0 0 5px;
}
.alertBox .error {
	color: #f00;
}
.alertBox .error:before {
	content: '\f316';
	font-family: 'WebHostingHub-Glyphs';
	font-weight: normal;
	margin: 0 5px 0 0;
}

/*
メールマガジン設定画面用
-------------------------------- */
.mypage .mailmagCheck label {
	display: inline-block;
	width: 40%;
	line-height: 30px;

}

.ui-toggle-switch{
	display:inline-block;
	width:100px;
	height:30px;
	float:right;
	overflow:hidden;
	position:relative;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	border:1px solid #aaa;
	margin-top:5px;
}
.ui-toggle-switch-inner{
	position:absolute;
	left:0px;
	width:200px;
	height:30px;
}
.ui-toggle-switch-inner.off{
	left:-50px;
}
.ui-toggle-switch span{
	display:block;
	float:left;
	width:60px;
	height:30px;
	line-height:30px;
	text-align:center;
	font-size:13px;
}
.ui-toggle-switch span.ui-toggle-switch-on{
	background: rgb(133,186,228); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(133,186,228,1) 0%, rgba(83,147,197,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(133,186,228,1)), color-stop(100%,rgba(83,147,197,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(133,186,228,1) 0%,rgba(83,147,197,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(133,186,228,1) 0%,rgba(83,147,197,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(133,186,228,1) 0%,rgba(83,147,197,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(133,186,228,1) 0%,rgba(83,147,197,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#85bae4', endColorstr='#5393c5',GradientType=0 ); /* IE6-9 */

    -webkit-box-shadow: inset 0px 1px 5px rgba(0,0,0,0.5);
    -moz-box-shadow: inset 0px 1px 5px rgba(0,0,0,0.5);
    box-shadow: inset 0px 1px 5px rgba(0,0,0,0.5);
    font-weight: bold;
    color: white;
    cursor: pointer;
    text-shadow: 0 -1px 1px #145072;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    text-indent:-7px;
    visibility:visible;
}
.ui-toggle-switch .ui-toggle-switch-inner.off span.ui-toggle-switch-on{
    visibility:hidden;
}
.ui-toggle-switch span.ui-toggle-switch-separate{
	width:48px;
	height:28px;
	background: rgb(255,255,255); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(204,204,204,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(204,204,204,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(204,204,204,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */

    -webkit-box-shadow: inset 0px 0px 2px rgba(255,255,255,0.5);
	-moz-box-shadow: inset 0px 0px 2px rgba(255,255,255,0.5);
	box-shadow: inset 0px 0px 2px rgba(255,255,255,0.5);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	margin:0 -10px;
	border:1px solid #CCC;
    position:relative;
    z-index:10;
}
.ui-toggle-switch span.ui-toggle-switch-off{
    -webkit-box-shadow: inset 0px 1px 5px rgba(0,0,0,0.5);
    font-weight: bold;
    color: #aaa;
    cursor: pointer;
    background-image: white;
    -webkit-border-top-right-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    text-indent:7px;
    visibility:hidden;

}
.ui-toggle-switch .ui-toggle-switch-inner.off span.ui-toggle-switch-off{
    visibility:visible;
}
li.ui-toggle-list{
    height:30px;
    padding:10px;
}

/* attentionList
------------------------- */
.attentionList li {
	font-size: 13px;
	text-indent: -1em;
	padding: 0 0 0 1em;
	position: relative;
}
.attentionList li::before {
	content: '\2713';
	font-family: 'WebHostingHub-Glyphs';
	color: #F60;
	font-size: 10px;
	margin: 0 3px 0 0;
}

/* tableList
------------------------- */
.tableList {
    display: inline-block;
    margin: 0 0 30px;
    border: 1px solid #ddd;
}
.tableList th,
.tableList td {
	padding: 10px 15px;
	border-bottom: 1px solid #ddd;
}
.tableList th {
    border-right: 1px solid #ddd;
    background: #eee;
}
.tableList td {
    text-align: right;
    font-weight: bold;
    font-size: 1.25em;
    letter-spacing: .05em;
    min-width: 6em;
}
.tableList tr:last-child > *{border-bottom: none;}

/* ===============================
	base - tablet
	landscape : 1024px
	portrait : 768px
================================== */
@media screen and (max-width: 768px){
	#wrap { width: auto; min-width: 320px; padding: 0 10px; }
	#container { padding: 0 0 75px }
	#header { margin: 0 0 15px; position: relative; }
	#header h1,#header #globalNav { width: auto; }
	#keyVisual { height: auto; }
	#mainArea { width: auto; float: none; }
	#sideArea { display: none; }
	#footer { padding: 10px 0; }
	#pageTop { display: none; }
	.single .section { padding: 15px; }
	img { max-width: 100%; }
	.flex-control-nav { width: 90%; }
	.contentsList li {
		width: 31%;
		margin: 0 3% 15px 0;
	}
	.formArea .formList {
		padding: 15px;
	}

}

.formListStyleNormal:not(:last-of-type){
  margin-bottom: 60px;
}

.formArea .formList.formListStyleNormal dt{
  width: 250px;
  font-size: 16px;
}
.formArea .formList.formListStyleNormal dd{
  margin: 0 0 30px;
  padding: 2px 0 0 270px;
}
a.txtLink{
  text-decoration: underline;
  color: inherit;
}
.formArea .formList.formList {
    padding: 10px 50px 10px 10px !important;
}

.page--changecredit{
}

.page--changecredit input,
.page--changecredit .btn input{
	width:auto;
	min-width:250px;
	padding:0.5em 1em;
}

.page--changecredit select{
}

.page--changecredit #container{
    margin-top:30px;
}

.page--changecredit .logo {
    width: 380px;
    margin: 0 auto 30px;
}

.page--changecredit .logo {
    width: 380px;
    margin: 0 auto 30px;
}

.page--changecredit section{
    color: #111;
    background: #fff;
}

.page--changecredit .blockTit{
}

.page--changecredit #mainArea.single{
}

.page--changecredit .single .section{
	max-width:100%;
}

.page--changecredit .formArea .formList input {
	appearance:none;
	border:none;
	padding:0.5em;
}

.page--changecredit .formArea .formList input[type="password"]{
	width:100%;
}

.page--changecredit .formArea .formList {
	display:flex;
	align-items:baseline;
	margin:0 0 1px 0;
	border-radius:0;
}

.page--changecredit .formTit{
}

.page--changecredit .formArea dl.formList:first-child{
	border-radius:5px 5px 0 0;
}

.page--changecredit .formArea dl.formList:last-child{
	border-radius:0 0 5px 5px;
	margin-bottom:2em;
}

.page--changecredit .formArea .phoneBox dl.formList:last-child{
	margin-bottom:1px;
}


.page--changecredit .formArea .formList dt{
	width:35%;
	float:none;
	margin-right:0.5em;
	font-size:.8em;
}

.page--changecredit .txtArea {
    margin: 1em 0 20px;
}

.page--changecredit select{
	apperance:none;
	border:none;
	padding:0.5em;
}

.page--changecredit .formArea .formList dd{
	width:60%;
	margin:0;
	padding:0;
	font-size:1.1em;
}

.page--changecredit .formArea .formList dd .rule{
	margin-top:0.2em;
	font-size:.5em;
}

.page--changecredit .btn {
	margin-top:2em;
}

.page--changecredit .section.regist .formArea .formTit{
	margin-bottom:1em;
}

/* reCAPTURE */

#alertBoxRecaptcha{
	background: #fff0ea;
    color: #f33;
    border: 1px solid #F32;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    padding: 1em;
    margin: 1.5em auto;
}

#alertBoxRecaptcha .error_txt{
  font-size:.9em;
  margin:1em 0;
}

#alertBoxRecaptcha ul li{
	position:relative;
	padding-left:1em;
}

#alertBoxRecaptcha ul li:before{
	content:'';
	margin-right:.3em;
	background:#f32;
	width:.5em;
	height:.5em;
	border-radius:50rem;
	position:absolute;
	transform:translate(0, -50%);
	top:50%;
	left:0;
}


.formList select{
	box-sizing: border-box;
    padding: 8px 10px;
    border: 1px solid #00000030;
    background: #fff;
    border-radius: 5px;
    box-shadow: none;
}

.formList select#form_tds2PhoneCC {
	box-sizing: border-box;
    padding: 8px 2em 8px 10px;
    border: 1px solid #00000030;
    background: #fff;
    border-radius: 5px;
    box-shadow: none;
    -webkit-appearance: none;
	min-width:10em;
}

.formList dd:has(select){
	position:relative;
	/* display:inline-block; */
}

.formList dd:has(select#form_tds2PhoneCC):after{
	content:'';
	width:.5em;
	height:.5em;
	border-right:solid 1px #00000060;
	border-bottom:solid 1px #00000060;
	transform:translate(0, -50%) rotate(45deg);
	position:absolute;
	right:1em;
	top:50%;
}

.formList dd select:nth-of-type(n + 2){
	margin-left:.5em;
}

#form_tds2PhoneType input[type="radio"]{
	margin:0 .3em 0 .7em;
	appearance:auto;
	width:auto;
	min-width:auto;
}

#form_tds2PhoneType input[type="radio"]:nth-of-type(1){
	margin:0 .3em 0 0;
}

.page--billing details{
	margin-bottom:1em;
}

.page--billing details > .formArea{
	max-height:0;
	transition:max-height .5s, opacity .3s;
	opacity:0;
	background:#fafafa;
	padding:1.5em;
}

.page--billing details[open] > .formArea{
	max-height:1000px;
	transition:max-height .5s, opacity .3s;
	opacity:1;
}

.page--billing .formArea .formList{
	padding:1.5em;
	background:none;
	padding:1em 0 0 !important;
	margin:0;
}

.page--billing details summary {
	display: block;
	list-style: none;
  }

.page--billing details summary::-webkit-details-marker{
	display:none;
}

.page--billing .blockTit{
	color: #666;
    padding: 10px 0;
    font-weight: bold;
    background: none;
    border-bottom: solid 1px #ccc;
    text-align: left;
	position:relative;
	cursor:pointer;
}

.page--billing details .blockTit:after{
	content:'';
	width:.5em;
	height:.5em;
	border-right:solid 1px;
	border-bottom:solid 1px;
	rotate:45deg;
	position:absolute;
	transform:translate(0, -50%);
	top:50%;
	right:.5em;
}

.page--billing .section.regist > .blockTit{
	opacity:.4;
	pointer-events: none;
	margin-bottom:0;
}

.page--billing .caution{
	color:#c22;
	font-size:.85em;
}

.page--billing .btn .main{
	margin:0 auto;
	/* width:auto; */
	padding:10px 1em;
}

.page--billing .formArea .formList select{
	width:100%;
}

.page--billing .section.regist > .btn{
	margin-top:2.5em;
}

.page--billing .item_txt{
	margin-bottom:2em;
	text-align:center;
	font-size:.85em;
}

.page--billing .item_txt strong{
	font-size:1.3em;
	font-weight:bold;
	margin:0 .5em;
}

.page--billing.archive .txtArea{
	text-align:center;
}

.page--billing.archive .spmode{
	text-align:center;
	margin-top:2em;
}

.page--billing.confirm #header h1{
	background:none;
}

.page--billing.confirm h1 img{
	height:min(20vh, 300px);
	object-fit: contain;
	max-width:100%;
}
