@charset "UTF-8";

html {
	overflow-y: scroll;
}
body, div, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, hgroup, header, address,
figure, figcaption {
	margin: 0;
	padding: 0;
}
address, caption, cite, code, dfn, em, strong, th, var, i {
	font-style: normal;
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
q:before ,q:after {
	content: '';
}
object, embed {
	vertical-align: top;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
img, abbr, acronym, fieldset {
	border: 0;
}
img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
ul li {
	list-style-type: none;
	display: block;
}



/*-----------------------------------------------------
	body
-----------------------------------------------------*/

body {
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	color: #333333;
	background-color:#333;
	font-size: 13px;
	line-height: 1.6;
	text-align: left;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
}


/*-----------------------------------------------------
	Anchor
-----------------------------------------------------*/

a {
	outline: none;
}
a:link {
	text-decoration: none;
	color: #f79256;
}
a:visited {
	text-decoration: none;
	color: #d6885a;
}
a:hover {
	text-decoration: underline;
}
a:active {
	text-decoration: underline;
}


/*-----------------------------------------------------
	Clearfix
-----------------------------------------------------*/

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

/*-----------------------------------------------------
	common
-----------------------------------------------------*/
.txt-em	{
	font-weight: bold;
}
.txt-nml	{
	font-weight: normal !important;
}
.txt-white {
	color: #ffffff;
}
.txt-red {
	color: #e66060;
}
.txt-color {
	color: #f79256;
}
.txt-cancel {
	text-decoration: line-through !important;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
img.img100 {
	width:100%;
	height:auto;
}
.mt-non {
	margin-top: 0 !important;
}
.mb-non {
	margin-bottom: 0 !important;
}
.mb-5 {
	margin-bottom: 5px !important;
}

/*-----------------------------------------------------
	common-from-style_l.css
-----------------------------------------------------*/
.list-nml,
.list-num,
.list-gp {
	text-align: left;
}
.list-nml > li {
	position: relative;
	padding-left: 12px;
	line-height: 18px;
	margin-bottom: 10px;
	text-indent: 0;
}
.list-nml > li:last-child {
	margin-bottom: 0;
}
.list-nml > li:before {
	content: "-";
	position: absolute;
	left: 0;
	top: 0;
}
.list-num > li {
	list-style-type: decimal;
	display: list-item;
	margin-left: 1.5em;
	line-height: 18px;
	margin-bottom: 10px;
}
.list-num > li:last-child {
	margin-bottom: 0;
}
.list-gp > li {
	list-style-type: none;
	text-indent:-2.5em;
	padding-left:2.5em;
	margin-bottom: 10px;
}
.list-gp > li:last-child {
	margin-bottom: 0;
}
.list-mb-s li {
	margin-bottom: 5px;
}

.mt-05 {
	margin-top: 5px !important;
}
.mt-10 {
	margin-top: 10px !important;
}
.mt-20 {
	margin-top: 20px !important;
}
.mt-30 {
	margin-top: 30px !important;
}
.mr-30 {
	margin-right: 30px !important;
}
.mr-60 {
    margin-right: 60px !important;
}
.break {
	display: inline-block;
}
ul.list-kome {
	font-size: 0;
}
ul.list-kome li {
	display: inline;
	margin-right: 10px;
	font-size: 11px;
	line-height: 16px;
	color: #666;
}
.email-img {
	height: 14px;
	width: auto;
}

/*-----------------------------------------------------
	form
-----------------------------------------------------*/

/*--------------------common--------------------*/
.box-form {
	position: relative;
	box-sizing: border-box;
	display: flex;
	display: -webkit-flex;
	-webkit-flex-direction:column;
	flex-direction:column;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	/*margin-bottom: 20px;*/
	margin-top: 20px;
	/*text-align: left;*/
}
.box-form .inner {
	display: inline-block;
}
.detail-desc .box-form:first-child {
	margin-top: 0;
}
/*

.detail-desc .box-form:last-child {
	margin-bottom: 0;
}
*/

.box-form.box-form-half {
	width: calc(50% - 15px);
}
.box-form.box-form-half-center {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}
.box-form.box-form-half-btn {
	width: 50%;
	padding-right: 60px;
}
.box-form.box-form-quarter {
	width: 25%;
}
label {
	font-size: 13px;
	line-height: 22px;

}
label.label-l {
	font-size: 16px;

}

.indent-radio {
	margin-left: 28px;
	margin-top: 5px;
}

.select-character {
	margin-top: 20px;
	zoom: 1;
}
.select-character:after {
	content: "";
	display: block;
	clear: both;
}
.select-character-left {
	width: 60%;
	float: left;
}
.select-character-right {
	width: 40%;
	float: right;
}
.select-character-main {

}
.select-character-main:after {
	content: "";
	display: block;
	clear: both;
}
.select-character-sub {
	margin-top: 20px;
}
.select-character-sub:after {
	content: "";
	display: block;
	clear: both;
}
.select-character-form {
	width: calc(100% - 50px);
	float: left;
}
.select-character-btn {
	width: 40px;
	float: right;
	margin-top: 22px;
}



/*--------------------radio / checkbox--------------------*/
input[type="radio"],
input[type="checkbox"] {
	display: none;
}
input[type="radio"] + label,
input[type="checkbox"] + label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 28px;
	line-height: 22px;
	text-align: left;
}
input[type="radio"] + label:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -28px;
	width: 22px;
	height: 22px;
	margin-top: -11px;
	background: #fcfcfc;
	border-radius: 50%;
	box-sizing: border-box;
	border: 1px solid #d8d8d8;
}
input[type="radio"] + label:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -18px;
	width: 0px;
	height: 0px;
	margin-top: 0;
	border-radius: 50%;
	background: #fff;
	transition-duration:.1s;
}
input[type="radio"]:checked + label:after {
	left: -23px;
	width: 12px;
	height: 12px;
	margin-top: -6px;
	background: #f79256;

}

input[type="checkbox"] + label:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -28px;
	width: 22px;
	height: 22px;
	margin-top: -11px;
	background: #fcfcfc;
	border-radius: 1px;
	box-sizing: border-box;
	border: 1px solid #d8d8d8;
}
input[type="checkbox"] + label:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -18px;
	width: 0px;
	height: 0px;
	margin-top: 0;
	border-radius: 50%;
	background: #fff;
	transition-duration:.1s;
}
input[type="checkbox"]:checked + label:after {
	left: -23px;
	width: 12px;
	height: 12px;
	margin-top: -6px;
	border-radius: 2px;
	background: #f79256;

}

/*--------------------text--------------------*/
.box-form input[type="text"],
.box-form input[type="password"],
.box-form textarea {
	-webkit-order: 2;
	-moz-order: 2;
	-ms-order: 2;
	order: 2;
	font-size:14px;
	line-height: 18px;
	padding: 10px 7px;
	border: 1px solid #dcdcdc;
	background: #fcfcfc;
	box-sizing:border-box;
	transition-duration:.2s;
}
.box-form input[type="text"]:focus,
.box-form input[type="password"]:focus,
.box-form textarea:focus,
.box-form select:focus {
	/*outline: 1px solid #F29600;*/
	outline: none;
	border: 1px solid #f79256;
	background: #ffffff;
}
.box-form input[type="text"] + label,
.box-form input[type="password"] + label,
.box-form textarea + label {
	-webkit-order: 1;
	-moz-order: 1;
	-ms-order: 1;
	order: 1;
	font-size: 13px;
	color: #666;
	transition-duration:.2s;
}
.box-form input[type="text"]:focus + label,
.box-form input[type="password"]:focus + label,
.box-form textarea:focus + label {
	color: #f79256;
	font-weight: bold;
}

input[type="text"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	font-weight: normal;
	font-size: 13px;
}
input[type="text"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
textarea::-moz-placeholder {
	font-weight: normal;
	font-size: 13px;
}

textarea {
	resize: vertical;
	height: 100px;
}
.textarea-x2 {
	resize: vertical;
	height: 200px;
}
.detail-desc .note {
	-webkit-order: 3;
	-moz-order: 3;
	-ms-order: 3;
	order: 3;
	font-size: 12px;
	line-height: 18px;
	color: #666;
	margin-top: 5px;
}

.detail-link_tab{
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #E2E2E2;
	margin-bottom: 45px;
}
.detail-link_tab > *{
	width: 120px;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	margin-bottom: -1px;
	border: 1px solid #E2E2E2;
	font-weight: bold;
	font-size: 12px;
	box-sizing: border-box;
}
.detail-link_tab > p{
	border-bottom-color: #FFF;
}
.detail-link_tab > a{
	background: #E2E2E2;
	text-decoration: none;
}
.detail-link .detail-sect .detail-header{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-right: 0;
}
.detail-link .detail-sect .detail-header h2{
	margin-bottom: 0;
}
.detail-link .detail-list li{
	display: flex;
	align-items: center;
}
.detail-desc input{
	padding: 5px;
	width: 100%;
	border: 1px solid #AEAEAE;
	box-sizing: border-box;
}
.detail-desc input:read-only{
	background: #DDD;
}

.box-form.box-form-copy-year {
	width: 100px;
	padding-right: 30px;
	float: left;
	margin-bottom: 0;
}
.box-form.box-form-copy-year:after {
	display: block;
	content: "年";
	position: absolute;
	top: 0;
	right: 0;
	width: 30px;
	height: 40px;
	line-height: 40px;
	font-size: 14px;
	box-sizing: border-box;
	padding-left: 5px;
}
.box-form.box-form-copy-name {
	width: calc(100% - 100px);
	float: right;
	margin-top: 0;
}

.box-form.box-form-card-month {
	width: 100px;
	margin-right: 30px;
	float: left;
}
.box-form.box-form-card-month:before {
	display: block;
	content: "/";
	position: absolute;
	top: 0;
	right: -30px;
	width: 30px;
	height: 40px;
	line-height: 40px;
	font-size: 14px;
	text-align: center;
	box-sizing: border-box;
}

/*.box-form.box-form-card-month {
	width: 130px;
	padding-right: 30px;
	float: left;
}*/

/*.box-form.box-form-card-month:before {
	display: block;
	content: "/";
	position: absolute;
	top: 0;
	right: 0;
	width: 30px;
	height: 40px;
	line-height: 40px;
	font-size: 14px;
	text-align: center;
	box-sizing: border-box;
}*/
.box-form.box-form-card-year {
	width: 100px;
	float: left;
	margin-top: 0;
}

.box-form.box-form-cal input.cal {
	padding-left: 40px;
}
.ui-datepicker-trigger {
	display: block;
	-webkit-order: 3;
	-moz-order: 3;
	-ms-order: 3;
	order: 3;
	position: absolute;
	width: 100%;
	height: 40px;
	top: 0;
	left: 0;
	overflow: hidden;
	z-index: 2;
	cursor: pointer;
}
.box-form.box-form-cal:after {
	font-family:'fontello';
	content: '\e804';
	position: absolute;
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 14px;
	color: #333;
	text-align: center;
	top: 0;
	left: 0;
	cursor: pointer;
	z-index: 1;
}

.box-form.label-non input + label,
.box-form.label-non textarea + label,
.box-form.label-non select + label {
	display: none;
}

.box-form textarea.terms {
	padding: 10px 7px;
	border: 1px solid #dcdcdc !important;
	height: 450px;
}

.box-form .inline-btn {
	-webkit-order: 3;
	-moz-order: 3;
	-ms-order: 3;
	order: 3;
	position: absolute;
	top: 0;
	right: 0;
	height: 40px;
}

.box-form textarea.player {
	padding: 10px 7px;
	border: 1px solid #dcdcdc !important;
	height: 300px;
}

/*--------------------select--------------------*/
select {
	-webkit-order: 2;
	-moz-order: 2;
	-ms-order: 2;
	order: 2;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	text-indent: .01px; /*for Firefox*/
	text-overflow: ""; /*for Firefox*/
	border-radius: 0;
	border: 1px solid #dcdcdc;
	margin: 0;
	padding: 10px 30px 10px 7px;
	background: #fcfcfc;
	font-size: inherit;
	color: inherit;
	box-sizing:border-box;
	cursor: pointer;
	font-size:14px;
	line-height: 18px;
	transition-duration:.2s;
}
.box-form.box-form-select	{

}
.box-form.box-form-select:after {
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 4px 0 4px;
	border-color: #000000 transparent transparent transparent;
	position: absolute;
	bottom: 0;
	right: 12px;
	margin-bottom: 18px;
}
.box-form.box-form-card-month:after {
	right: 42px;
}
.box-form select + label {
	-webkit-order: 1;
	-moz-order: 1;
	-ms-order: 1;
	order: 1;
	font-size: 13px;
	color: #666;
	transition-duration:.2s;
}
.box-form select:focus + label {
	color: #f79256;
	font-weight: bold;
}
.box-form.box-form-l {
	width: calc(50% - 15px);
	float: left;
	margin-bottom: 0;
}
.box-form.box-form-r {
	width: calc(50% - 15px);
	float: right;
	margin-top: 0;
}




.form_file_dummy, .form_file, .form_file .filename {
	position:relative;
}
.form_file_dummy input {
	display:none;
	width:100%;
}
.form_file .filename input {
	padding-left:56px;
	overflow:hidden;
	cursor:pointer;
	width:100%;
	background: #fcfcfc;
}
.form_file .filebtn {
    display: flex;
    align-items: center;
    justify-content: center;
	width:56px;
	height:36px;
	position:absolute;
	top:1px;
	left:0;
	line-height:36px;
	font-size:16px;
	text-align:center;
	color:#111111;
	cursor:pointer;
	z-index:2;
	box-sizing: border-box;
}
.btn_back {
	padding:0 45px !important;
	color:#FFF !important;
	font-size:15px !important;
	background: #888 !important;
	box-shadow: 0 2px 0 #717171 !important;
	margin-right: 20px !important;
}
.btn_back:hover {
	background: #767676 !important;
	box-shadow: 0 2px 0 #646464 !important;
}


/*--------------------disabled--------------------*/
.box-form input[type="text"][disabled],
.box-form input[type="password"][disabled],
.box-form textarea[disabled] {
	border: 1px solid #f5f5f5;
	background: #fcfcfc;
}
select[disabled] {
	border: 1px solid #f5f5f5;
	background: #fcfcfc;
	color: #ccc;
}
.box-form.box-form-select:after {
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 4px 0 4px;
	border-color: #000000 transparent transparent transparent;
	position: absolute;
	bottom: 0;
	right: 12px;
	margin-bottom: 18px;
}
.box-form input[type="text"][disabled] + label,
.box-form select[disabled] + label {
	color: #ccc;
}


/*-----------------------------------------------------
	for fontello
-----------------------------------------------------*/
[class^="icon-"].flip-horizontal:before, [class*=" icon-"].flip-horizontal:before {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -webkit-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  transform: scale(-1, 1);
 }

/*-----------------------------------------------------
	SNS
-----------------------------------------------------*/
.sns											{font-size:0; line-height:1; display: block; vertical-align:top; margin-top: 30px;}
.sns .snsbtn									{display:inline-block; line-height:1; vertical-align:top; position:relative; overflow:hidden; font-size: 14px;}


/*-----------------------------------------------------
	upload for mobile
-----------------------------------------------------*/
.mobile .upload .wrap {
	display: none;
}
.upload-mobile {
	display: none;
}
.mobile .upload-mobile {
	display: block;
	padding: 45px 60px;
}



/*-----------------------------------------------------
	SONOCA
-----------------------------------------------------*/
.sonoca {
	padding: 50px 0;
	margin-top: 20px;
	border-top: #e0e0e0 solid 1px;
	border-bottom: #e0e0e0 solid 1px;
	text-align: center;
}
.detail-sect-sonoca {
	padding-bottom: 0 !important;
}
.sonoca-title {
	font-size: 20px;
	line-height: 25px;
	margin-bottom: 20px;
	text-align: center;
}
#sonoca {
	display: block;
	padding-top: 30px;
	margin-top: -30px;
}
.album-sonoca {
	padding: 40px 0;
	margin-top: 20px;
	border-top:#333333 solid 2px;
	text-align: center;
	background-color: #f9f9f9;
}
.btn-sonoca {
	background-color: #e181b3 !important;
}



/* linkshare */
.btn-linkshare a,
.btn-nodee a{
	position: relative;
	display: inline-block;
	color: #fff;
	font-weight: bold;
}
.btn-linkshare + div,.btn-linkshare + p,
.btn-nodee + div,.btn-nodee + p{
	margin-top: 10px;
}
.btn-nodee a{
	padding: 7px 25px 7px 25px;
	background: linear-gradient(90deg,#78c3be,#7985bc);
}
.btn-linkshare a{
	padding: 7px 35px 7px 15px;
	background: #D6CB31;
}
.btn-linkshare span{
	display: inline-block;
}
.btn-linkshare p{
	display: inline-block;
	padding: 7px 15px;
	background: #999;
	color: #dcdcdc;
	user-select: none;
}
.btn-linkshare a::after{
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	font-family: "Material Icons";
	content: "\e80d";
	width: 25px;
	height: 25px;
	font-size: 17px;
	line-height: 25px;
	text-align: center;
}
.btn-linkshare a:hover,
.btn-nodee a:hover{
	text-decoration: none;
}




/* service */
.service_list li:first-child{
	margin-top: 0;
}
.service_table{
	display: flex;
	border: 1px solid #333;
}
.service_img{
	display: flex;
	align-items: center;
	box-sizing: border-box;
	border-right: 1px solid #333;
}
.service_img img{
	max-width: 160px;
	margin: 0 auto;
	width: 100%;
}
.service_table_cont{
	display: flex;
	flex: 1;
	flex-direction: column;
}
.service_table_row{
	display: flex;
}
.service_table p{
	border-bottom: 1px solid #333;
	padding: 20px 10px;
    font-size: 14px;
	flex: 1;
}
.service_table_row:last-child p{
	border-bottom: 0;
}
.service_table .service_table_header{
	flex: none;
	background: #efefef;
	width: 50%;
	border-right: 1px solid rgba(0,0,0,0.2);
	box-sizing: border-box;
}
