@charset "UTF-8";

/* ===================================================================
reset
====================================================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
main, article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote::before, blockquote::after,
q::before, q::after {
	content: '';
	content: none;
}

table, thead, tbody, tr, th, td {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ===================================================================
basic
====================================================================== */
html {
	font-size: 62.5%;
	height: 100%;
	position: relative;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0.25);
}
body {
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "ＭＳ Ｐゴシック", Osaka;
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
	min-width: auto;
	background-image: none;
	position: relative;
	top: 0;
	left: 0;
}

a {
	color: #000;
	text-decoration: underline;
}
b {
	font-weight: bold;
}
img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
sub,
sup {
	font-size: 0.57em;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}

*,
*::after,
*::before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.cf:after {
    content:" ";
    display:block;
    clear:both;
}

/* margin */
.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb25{margin-bottom:25px;}
.mb30{margin-bottom:30px;}
.mg0-10{margin: 0 10px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}


.fs16{font-size:16px;}

.noto{
  font-family: 'Noto Sans Japanese';
}
.round{
  font-family: "Rounded Mplus 1c";
}
.fw900{
  font-weight: 900;
}
.fw800{
  font-weight: 800;
}
.fw600{
  font-weight: 600;
}
.fw300{
  font-weight: 300;
}


.block {display: block;}

/* ===================================================================
header
====================================================================== */
.sp_l_header {
	position: relative;
	padding: 4px 10px 10px;
	font-size: 0.7em;
	white-space:nowrap;
  	/*overflow:scroll;*/
}
.sp_h_upper:after {
	content: "";
	display: table;
	clear: both;
}
.sp_h_upper {
	margin-top: 5px;
}
.sp_h_upper .sp_h_logo {
	float: left;
	width: 170px;
}
.sp_h_upper .sp_h_menu {
	float: right;
	width: 40px;
}
.sp_h_upper .sp_h_tel {
	margin-right: 4px;
	float: right;
	width: 40px;
}

.sp_l_header h1{
	/*font-size: 1.0rem;*/
	width: 100%;
	white-space: nowrap;
	overflow:scroll;
}

/* ===================================================================
gnav
====================================================================== */
.sp_gnav {
  display: none;
  position: absolute;
  z-index: 100;
  width: 100%;
  background-color: #fff;
  padding-bottom: 20px;
}

.sp_gnav_list {
  margin: 0 3%;
  border-top: 1px solid #bbb;
}

.sp_gnav_item {
  border-bottom: 1px solid #bbb;
  padding: 10px 10px 10px 45px;
  background-image: url(../img/common/header_ico_nav.png);
  background-size: 16px 17px;
  background-repeat: no-repeat;
  background-position: 20px 50%;
}
.sp_gnav_item a {
    text-decoration: none;
}
.sp_gnav_item_sub {
  border-bottom: 1px solid #bbb;
  padding: 10px 10px 10px 60px;
  background-image: url(../img/common/header_ico_nav.png);
  background-size: 16px 17px;
  background-repeat: no-repeat;
  background-position: 30px 50%;
}
.sp_gnav_item_sub a {
    text-decoration: none;
}

ul.sub-menu{display:none;}
.sp_gnav_item,.sp_gnav_item_sub a {
  display: block;
}

.sp_gnav_btn {
  margin: 15px auto 0;
    width: 70%;
    padding: 5px 10px;
    text-align: center;
    border: 1px solid #bbb;
    border-radius: 5px;
    background: #f3f3f3;
    background: -webkit-linear-gradient(#fff 0%, #ececec 100%);
    background: linear-gradient(#fff 0%, #ececec 100%);
    font-weight: bold;
    font-size: 16px;
    color: #5d973e;
}


/* ===================================================================
sp_l_wrapper
====================================================================== */
/*breadCrumb*/
.sp_l_wrapper .breadCrumb {
	padding:5px 10px;
	font-size: 0.7em;
	background: url(../img/common/cmn_bg01.png) repeat 0 0;
}
.sp_l_wrapper .breadCrumb ul {
	letter-spacing: -0.4em;
}
.sp_l_wrapper .breadCrumb li {
	display: inline;
	letter-spacing: normal;
}
.breadCrumb li:after{
	content: ">";
	margin-right: 8px;
	padding-left: 8px;
}
.breadCrumb li:last-child:after{
	content: none;
	margin-right: 0;
}


/* ===================================================================
footer
====================================================================== */
.sp_l_footer {
	/*
	position: relative;
	margin-top: 15px;
	padding: 100px 0 0;
	background: url(../img/common/footer_bg01.png) no-repeat center top;
	background-size: 375px 100px;
	*/
}
.sp_l_footer .sp_l_footer_inner {
	/*
	position: relative;
	padding-bottom: 25.466vw;
	background: url(../img/common/footer_bg03.png) repeat 0 0;
	background-size: 50px 50px;
	*/
	margin-bottom: 20px;
}
.sp_l_footer .sp_l_footer_inner::before {
	content: "";
	position: absolute;
	top: -36px;
	width: 100%;
	height: 36px;
	right: 0;
	left: 0;
	background: url(../img/common/footer_bg01_re.png) repeat-x center top;
	background-size: 375px 36px;
}
.sp_l_footer_wrap01 {
	padding: 22px 0 0;
	background: url(../img/common/footer_bg02.png) repeat 0 0;
	background-size: 50px 50px;
}
.sp_l_footer_wrap01 .ttl{
	padding-bottom: 23px;
	text-align: center;
	background: url(../img/common/footer_bg05.png) repeat-x center bottom;
	background-size: 355px 2px;
}
.sp_l_footer_wrap01 .sp_f_nav {
	padding:0;
	font-size: 0.85em;
}
.sp_l_footer_wrap01 .sp_f_nav li{
	text-align: left;
	position: relative;
}
.sp_l_footer_wrap01 .sp_f_nav li:first-child {
	margin-top: 0;
}
.sp_l_footer_wrap01 .sp_f_nav li a {
	display: block;
	padding: 15px 35px 15px 15px;
	background-color: #FFF;
    border-bottom: 1px solid #d7d7d7;
    background-size: 4px 8px;
    text-decoration: none;
	/*
	background: url(../img/common/cmn_arrow01.png) no-repeat 20px 0.75em #fff;
	background-size: 17px 17px;
	padding: 9px 15px 9px 45px;
	border: 1px solid #bdbdae;
	/*border-radius: 5px;*/
}
.sp_l_footer_wrap01 .sp_f_nav li a:after {
    display: inline-block;
    content: "";
    right: 5px;
    top: 41%;
    box-sizing: border-box;
    width: 4px;
    height: 8px;
    border: 4px solid transparent;
    border-left: 4px solid #5d973e;
    position: absolute;
}

.sp_l_footer_wrap02 {
	position: relative;
	/* padding: 0 15px 69px 15px; */
	padding: 0 15px;
}
.sp_l_footer_wrap02::before {
	position: absolute;
	top: -2px;
	left: 0;
	content: "";
	width: 100%;
	height: 2px;
	/*
	background: url(../img/common/footer_bg04.png) repeat-x 0 0;
	*/
	background-size: 25px 2px;
}
.sp_l_footer_wrap02 .ttl {
	font-weight: bold;
}
.sp_l_footer_wrap02 .txt {
	margin-top: 5px;
	font-size: 0.7em;
	line-height: 1.7;
}
.sp_l_footer_wrap02 .txt .c_attention01 {
	margin-top: 20px;
	color: #666;
}
.sp_f_copy {
	/*
	margin-top: 40px;
	*/
	margin-top: 0px;
	font-size: 0.7em;
	text-align: center;
	line-height: 39px;
	height: 27vw;
	background: #999;
  color: #fff;
}


.sp_f_pagetop {
	position: absolute;
	right: 17px;
  bottom: 22vw;
  width: 45px;
  /*
  z-index: 999;
  */
  z-index: 100;
}
.sp_conversion_footer {
}
/*
 .sp_conversion_footer .sp_conversion_footer_inner {
 	text-align: center;
 	max-width: 375px;
 	margin: 0 auto;
 }
*/
.sp_f_txt {
	border-top: 5px solid #5d973e;
	padding: 13px;
	text-align: center;
	background-color: #fff;
}
	.sp_f_txt img{
		width: 306px;
	}
.sp_f_sticky {
	width: 100%;
	/* height: 167px;*/
	position: fixed;
	left: 0;
	/*
	bottom: -25.466vw;
	*/
	bottom: -38vw;
	z-index: 100;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
/*
.sp_f_sticky .sp_conversion_footer .btn {
	display: block;
	background: url(../img/common/footer_bg_cv01.png) repeat 0 0 #ffb300;
	background-size: 6px 6px;
	padding: 12px;
	border: 2px solid #fed056;
	border-radius: 14px;
	text-decoration: none;
} */

@media screen and (min-width: 667px) {
	.sp_l_header,
	.sp_l_wrapper,
	.sp_l_footer {
		width: 375px !important;
		margin: 0 auto;
	}
}

#js_bottom_tap .note {
    position: absolute;
    bottom: 0;
    font-size: 10px!important;
    font-size: 1.0rem;
    color: #fff;
    padding: 0 0 0 10px;
    font-weight: normal;
}


/* ===================================================================
footer Credit
====================================================================== */
.homeCredit {
    margin: 10px 10px 50px 10px;
}
.homeCredit .homeCredit__content {
    margin: 0 0 4px;
    padding: 10px;
    border: 2px solid #2eb6a2;
}
.homeCredit .homeCredit__ttl {
    background: #2eb6a2;
    color: #fff;
    font-size: 4vw;
    font-weight: bold;
    text-align: center;
    margin-bottom: 5px;
    padding: 2px 0;
}
.homeCredit .homeCredit__note {
    font-size: 11px;
    color: #333;
}


/* ===================================================================
content
----------------------------------------------------------------------
[default 14px] 18px:1.29em / 16px:1.14em / 12px:0.85em / 10px:0.7em
====================================================================== */
.sp_l-main > section > .sp_l_inner {
	padding: 0 10px;
}
.sp_l-main > section > .sp_l_inner.none {
	padding: 0;
}
.sp_l-main > section {
	margin-top: 10px;
}
.sp_l-main > section.mt_medium {
	margin-top: 25px;
}
.sp_l-main > section.mt_small {
	margin-top: 20px;
}
.sp_l-main > [class^="c_cv"]:first-child,
.sp_l-main > [class*=" c_cv"]:first-child,
.sp_l-main > section:first-child {
	margin-top: 0;
}
.sp_l_inner {
	/*margin-top: 10px;*/
	margin-top: 0;
}
.sp_l_inner > * {
	margin-top: 15px;
}
.sp_l_inner > *:first-child {
	margin-top: 0;
}
section .sp_l_inner section { /*h3以降のsection上*/
	margin-top: 10px;
}
section .sp_l_inner > .c_cv02 { /*section内にcvをいれる場合*/
	margin-top: 25px;
	padding: 0;
}
section .sp_l_inner > .c_cv03 { /*section内にcvをいれる場合*/
	margin-top: 30px;
	padding: 0;
}

/* --------------------------------------------------------------------
 sp_mainvisual
-------------------------------------------------------------------- */
.sp_mainvisual {
}
.sp_l_inner.none .sp_mainvisual {
	padding: 0 10px;
}
.sp_mainvisual .lead {
	margin-top: 10px;
}
.sp_mainvisual .lead > *{
	margin-top: 5px;
}
.sp_mainvisual .lead > *:first-child {
	margin-top: 0;
}


/* --------------------------------------------------------------------
 attention
-------------------------------------------------------------------- */
/* c_attention01 */
p.c_attention01 {
	display: inline-block;
	position: relative;
	padding-left: 1.2em;
	font-size: 0.7em;
	color: #999;
}
p.c_attention01::before {
	position: absolute;
	left: 0;
	content: "※";
}
.c_attention01 li {
	position: relative;
	padding-left: 1.2em;
	font-size: 0.7em;
}
.c_attention01 li::before{
	position: absolute;
	left: 0;
	content: "※";
}

/* c_attention02 */
.c_attention02 {
	font-size: 0.7em;
}


/* --------------------------------------------------------------------
 column
-------------------------------------------------------------------- */
/* column1 */
.c_column1_01 > [class^="column"],
.c_column1_01 > [class*=" column"] {
	margin-top: 2%;
}


.c_column2_01::after,
.c_column3_01::after,
.c_column4_01::after {
	content: "";
	display: table;
	clear: both;
}

/* column2 */
.c_column2_01 > [class^="column"],
.c_column2_01 > [class*=" column"] {
	position: relative;
	float: left;
	width: 49%;
	margin-left: 2%;
}
.c_column2_01 > [class^="column"]:nth-child(n+3),
.c_column2_01 > [class*=" column"]:nth-child(n+3) {
	margin-top: 2%;
}
.c_column2_01 > [class^="column"]:nth-child(2n+1),
.c_column2_01 > [class*=" column"]:nth-child(2n+1) {
	clear: both;
	margin-left:0 !important;
}

/* column3 */
.c_column3_01 > [class^="column"],
.c_column3_01 > [class*=" column"] {
	position: relative;
	float: left;
	width: 32%;
	margin-left: 2%;
}
.c_column3_01 > [class^="column"]:nth-child(n+4),
.c_column3_01 > [class*=" column"]:nth-child(n+4) {
	margin-top: 2%;
}
.c_column3_01 > [class^="column"]:nth-child(3n+1),
.c_column3_01 > [class*=" column"]:nth-child(3n+1) {
	clear: both;
	margin-left:0 !important;
}

/* column4 */
.c_column4_01 > [class^="column"],
.c_column4_01 > [class*=" column"] {
	position: relative;
	float: left;
	width: 23.5%;
	margin-left: 2%;
}
.c_column4_01 > [class^="column"]:nth-child(n+5),
.c_column4_01 > [class*=" column"]:nth-child(n+5) {
	margin-top: 2%;
}
.c_column4_01 > [class^="column"]:nth-child(4n+1),
.c_column4_01 > [class*=" column"]:nth-child(4n+1) {
	clear: both;
	margin-left:0 !important;
}

/* imageLeft 回り込み */
.c_imageLeft_01::after {
	content: "";
	display: table;
	clear: both;
}
.c_imageLeft_01 .img {
	float:left;
	padding-right: 15px;
}

/* imageRight 回り込み */
.c_imageRight_01::after {
	content: "";
	display: table;
	clear: both;
}
.c_imageRight_01 .img {
	float:right;
	padding-left: 15px;
}

/* columnWrap */
.c_columnWrap01 {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.c_columnWrap01 > * {
	display: table-cell;
	vertical-align: top;
	box-sizing: content-box;
	padding-left: 10px;
}
.c_columnWrap01 > *:first-child {
	padding-left: 0;
}
.c_columnWrap01 .txt > * {
	margin-top: 10px;
}
.c_columnWrap01 .txt > *:first-child {
	margin-top: 0;
}

.c_columnWrap01 .w30 {width: 30px;}
.c_columnWrap01 .w45 {width: 45px;}
.c_columnWrap01 .w50 {width: 50px;}
.c_columnWrap01 .w70 {width: 70px;}
.c_columnWrap01 .w75 {width: 75px;}
.c_columnWrap01 .w90 {width: 90px;}
.c_columnWrap01 .w95 {width: 95px;}
.c_columnWrap01 .w100 {width: 100px;}
.c_columnWrap01 .w113 {width: 113px;}
.c_columnWrap01 .w120 {width: 120px;}
.c_columnWrap01 .w125 {width: 125px;}


/* --------------------------------------------------------------------
 background
-------------------------------------------------------------------- */
/*bdr*/
.c_bdr_gray01 {
	border: 2px solid #ccc;
}

/*bg*/
.c_bg_white01 {background: #fff;}
.c_bg_gray01 {background: #eee;}
.c_bg_gray02 {
	border: 1px solid #f0f0f0;
	background: #f9f9f9;
}
.c_bg_beige01 {
	border: 2px solid #f6f2dd;
	background: #fcfcf2;
}

.c_bg_01 {
	background: url(../img/common/cmn_bg01.png) repeat 0 0;
	background-size: 20px 20px;
}
.c_bg_02 {
	/*background: url(../img/common/cmn_bg02.png) repeat 0 0;*/
	background-size: 20px 20px;
	background-color: #FFF4D1;
}
.c_bg_03 {
	background: url(../img/common/cmn_bg03.png) repeat 0 0;
	background-size: 20px 20px;
}
.c_bg_04 {
	background: url(../img/common/cmn_bg04.png) repeat 0 0;
	background-size: 14px 14px;
}
.c_bg_05 {
	background: url(../img/common/cmn_bg05.png) repeat 0 0;
	background-size: 15px 15px;
}

[class^="c_bg"],
[class*=" c_bg"],
[class^="c_bdr"],
[class*=" c_bdr"]{
	padding: 10px;
}
[class^="c_bg"].c_bg_large,
[class*=" c_bg"].c_bg_large,
[class^="c_bdr"].c_bg_large,
[class*=" c_bdr"].c_bg_large { /*余白を広く*/
	padding: 15px;
	margin-top: 10px;
}


/* --------------------------------------------------------------------
 radius
-------------------------------------------------------------------- */
.c_shadow01 {
	box-shadow: 0 0 2px 1px #d1d1d1;
}
.c_shadow02 {
	box-shadow: 0 0 6px 1px #b3b3b3;
}


/* --------------------------------------------------------------------
 radius
-------------------------------------------------------------------- */
.c_radius01 {
	border-radius: 5px;
	overflow: hidden;
}
.c_radius02 {
	border-radius: 10px;
	overflow: hidden;
}


/* --------------------------------------------------------------------
 button
-------------------------------------------------------------------- */
/*レイアウト*/
.c_btn_01 {
  margin-top:10px;
  margin-bottom:25px;
}
.c_btn_01 > * {
	margin-top: 8px;
}
.c_btn_01 > *:first-child {
	margin-top: 0;
}
.c_btn_02 {
	margin-top: 15px;
	text-align: right;
}


/*c_btn_gray_01*/
.c_btn_gray_01 {
	display: block;
	position: relative;
	width: 100%;
	padding: 17px 35px;
	background: #f3f3f3;
	background: -webkit-linear-gradient(#fff 0%, #ececec 100%);
	background: linear-gradient(#fff 0%, #ececec 100%);
	border-radius: 6px;
	border: 1px solid #bbb;
	text-align: center;
	line-height: 1;
}
.c_btn_gray_01::after {
	content: "";
	background: url(../img/common/cmn_arrow02.png) no-repeat center center;
	background-size: 17px 17px;
	position: absolute;
	right: 10px;
	top: 0;
	bottom: 0;
	width: 17px;
}
.c_btn_gray_01.small {
	display: inline-block;
	width: auto;
	padding: 7px 35px 9px 20px;
}
.c_btn_gray_01.small::after {
	background: url(../img/common/cmn_arrow02.png) no-repeat center center;
	background-size: 13px 13px;
}
.c_btn_gray_01.small img {
	vertical-align: middle;
}

/*c_btn_anc_01*/
.c_btn_anc_01 {
	position: relative;
	display: block;
	width: 100%;
	padding: 10px 30px;
	background: #f6f2dd;
	border: 1px solid #e5dba3;
	border-radius: 3px;
	color: #897267;
	line-height: 1.3;
	text-align: center;
	vertical-align: middle;
	font-weight: bold;
	text-decoration: none;
}
.c_btn_anc_01.small {
	padding: 10px 30px 10px 10px;
}
.c_btn_anc_01::after {
	position: absolute;
	top: 0;
	right: 8px;
	content: "";
	width: 17px;
	height: 100%;
	background: url(../img/common/cmn_arrow03.png) no-repeat left center;
	background-size: 17px 17px;
}


/* --------------------------------------------------------------------
 c_anc01
-------------------------------------------------------------------- */
.c_anc01::after {
	content: "";
	display: table;
	clear: both;
}
.c_anc01 li {
	display: table;
	table-layout: fixed;
	float: left;
	width: 49%;
	margin-left: 2%;
}
.c_anc01 li:nth-child(n+3) {
	margin-top: 2%;
}
.c_anc01 li:nth-child(2n+1) {
	clear: both;
	margin-left:0;
}
.c_anc01 li a {
	position: relative;
	display: table-cell;
	width: 100%;
}


/* --------------------------------------------------------------------
 c_faq
-------------------------------------------------------------------- */
.c_faq {
	margin-top: 10px;
}
.c_faq:first-child {
	margin-top: 0;
}
.c_faq .question {
	margin-top: 5px;
	font-weight: bold;
	background: url(../img/common/cmn_icon_faq01.png) no-repeat 0 0;
}
.c_faq .answer {
	margin-top: 10px;
	background: url(../img/common/cmn_icon_faq02.png) no-repeat 0 0;
}
.c_faq .question,
.c_faq .answer {
	padding-left: 36px;
	background-size: 26px 24px;
	font-size: 16px;
}
.c_faq .btn {
	margin-top: 10px;
	text-align: right;
}


/* --------------------------------------------------------------------
 c_arrow_wrap01
-------------------------------------------------------------------- */
.c_arrow_wrap01 .c_arrow_colum01 {
	margin-top: 10px;
	padding-top: 20px;
	background: url(../img/common/cmn_arrow_step01.png) no-repeat center top;
	background-size: 25px 10px;
}
.c_arrow_wrap01 .c_arrow_colum01:first-child {
	margin-top: 0;
	padding-top: 0;
	background: none;
}


/* --------------------------------------------------------------------
 c_panel01
-------------------------------------------------------------------- */
.c_table01 table {
	width: 100%;
	font-size: 0.78em;
	background: #fff;
	border: 1px solid #6da150;
}
.c_table01 table + table {
	border-top: none;
}
.c_table01 .w30p {width: 30%;}
.c_table01 .w36p {width: 36%;}
.c_table01 .bg_gray01 {background: #f7f7f7;}
.c_table01 th,
.c_table01 td {
	border-top: 1px solid #ccc;
	padding: 5px;
	color: #323232;
	text-align: center;
	vertical-align: middle;
}
.c_table01 td {
	border-left: 1px solid #ccc;
}
.c_table01 tr:first-child th,
.c_table01 tr:first-child td {
	border-top: none;
}
.c_table01 tbody th {
	background: #e9f8c5;
	font-weight: bold;
}
.c_table01 tbody th span {
	color: #5d973e;
}
.c_table01 tbody td .price {
	color: #ff590f;
	font-weight: bold;
	font-size: 1.19em;
}
.c_table01 tbody td .price span {
	font-size: 0.88em;
}


/* --------------------------------------------------------------------
 c_panel01
-------------------------------------------------------------------- */
.c_panel01 {
	position: relative;
}
.c_panel01 + .c_panel01 {
	margin-top: 10px;
}
.c_panel01:first-child {
	margin-top: 0;
}
.c_panel01::before,
.c_panel01::after {
	position: absolute;
	top: -5px;
	content: "";
	width: 49px;
	height: 30px;
}
.c_panel01::before {
	left: -10px;
	background: url(../img/common/voice_bg01.png) no-repeat 0 0;
	background-size: 49px 30px;
}
.c_panel01::after {
	right: -10px;
	background: url(../img/common/voice_bg02.png) no-repeat 0 0;
	background-size: 49px 30px;
}
.c_panel01 a {
	display: block;
	padding: 10px;
	text-decoration: none;
}
.c_panel01 .txt > * {
	margin-top: 2px;
	text-decoration: underline;
}
.c_panel01 .txt > *:first-child {
	margin-top: 0;
}
.c_panel01 .txt .ttl {
	font-size: 16px;
	font-weight: bold;
	color: #ff590e;
	text-decoration: none;
}
.c_panel01 .txt .detail {
	font-size: 1.4rem;
    line-height: 1.7;
}


/* --------------------------------------------------------------------
 c_panel02
-------------------------------------------------------------------- */
.c_panel02 {
	padding: 10px 0 0;
}
.c_panel02 + .c_panel02 {
	margin-top: 10px;
}
.c_panel02:first-child {
	margin-top: 0;
}
.c_panel02 .ttl {
	position: relative;
	padding-bottom: 6px;
}
.c_panel02 .ttl::before,
.c_panel02 .ttl::after {
	position: absolute;
	bottom: 0;
	content: "";
	width: 6px;
	height: 100%;
}
.c_panel02 .ttl::before {
	left: -6px;
	background: url(../img/common/cmn_bg_reason01.png) no-repeat left bottom;
	background-size: 6px 100px;
}
.c_panel02 .ttl::after {
	right: -6px;
	background: url(../img/common/cmn_bg_reason02.png) no-repeat left bottom;
	background-size: 6px 100px;
}
.c_panel02 .ttl .ico {
	position: absolute;
	left: 9%;
	top: -2px;
	width: 9.6%;
}
.c_panel02_inner {
	padding: 10px 10px 15px;
}
.c_panel02_inner > * {
	margin-top: 10px;
}
.c_panel02_inner > *:first-child {
	margin-top: 0;
}


/* --------------------------------------------------------------------
 c_panel03
-------------------------------------------------------------------- */
.c_panel03 {
	display: block;
	padding: 10px;
}
.c_panel03 + .c_panel03 {
	margin-top: 5px;
}
.c_panel03 .txt > * {
	margin-top: 7px;
}
.c_panel03 .txt > *:first-child {
	margin-top: 0;
}
.c_panel03 .txt .ttl {
	margin-top: 3px;
}
.c_panel03 .c_panel03_wrap01 {
	margin-top: 15px;
}
.c_panel03 .c_panel03_wrap01 .ttl {
	padding: 10px 15px 8px;
	background: #ffb300;
	line-height: 1;
}
.c_panel03 .c_panel03_wrap01 .c_panel03_inner01 {
	background: #fff;
	padding: 10px;
}
.c_panel03 .c_panel03_wrap01 .c_panel03_inner01 .txt {
	margin-bottom: 8px;
	padding-bottom: 8px;
	font-weight: bold;
	border-bottom: 2px dotted #ccc;
	font-size: 16px;
}


/* --------------------------------------------------------------------
 c_panel04
-------------------------------------------------------------------- */
.c_panel04 + .c_panel04 {
	margin-top: 10px;
}
.c_panel04 > * {
	margin-top: 10px;
}
.c_panel04 > *:first-child {
	margin-top: 0;
}
.c_panel04 .c_panel04_inner .ttl {
	padding-bottom: 5px;
	color: #ff590f;
	font-weight: bold;
	border-bottom: 2px dotted #ccc;
}
.c_panel04 .c_panel04_inner > * > * {
	margin-top: 10px;
}
.c_panel04 .c_panel04_inner > * > *:first-child {
	margin-top: 0;
}



/* ===================================================================
conversion
====================================================================== */

/* --------------------------------------------------------------------
 cv01
-------------------------------------------------------------------- */
.c_cv01 {
	margin-top: 10px;
}

/*c_cv01_wrap01*/
.c_cv01 .c_cv01_wrap01 {
	padding: 7px 9px 10px;
	background: #fcfcf2;
	border: 3px solid #f6f2dd;
}
.c_cv01 .c_cv01_wrap01 .ttl {
	text-align: center;
}
.c_cv01 .c_cv01_wrap01 .c_cv01_inner {
	margin-top: 10px;
}
.c_cv01 .c_cv01_wrap01 .c_cv01_inner > * {
	margin-top: 10px;
}
.c_cv01 .c_cv01_wrap01 .c_cv01_inner > *:first-child {
	margin-top: 0;
}

/*c_cv01_wrap02*/
.c_cv01 .c_cv01_wrap02 {
	margin-top: 10px;
	padding: 10px 10px 0;
	border-top: 2px dotted #eee;
}


/* --------------------------------------------------------------------
 cv02
-------------------------------------------------------------------- */
.c_cv02 {
	padding: 0 10px;
}


/* --------------------------------------------------------------------
 c_cv03
-------------------------------------------------------------------- */
.c_cv03 {
	margin-top: 30px;
	padding: 0 10px;
}
.c_cv03 .c_cv03_inner{
	padding: 5px;
	background: url(../img/common/cv3_bg01.png) repeat 0 0;
	background-size: 10px 10px;
	text-align: center;
}
.c_cv03 .ttl {
	padding: 4px 2px 0;
	background: #fff;
}
.c_cv03 .txt{
	padding: 6px 7px 9px;
	background: #fff;
}
.c_cv03 .txt .lead img {
	width: 306px;
}
.c_cv03 .c_cv_btn01 {
	margin-top: 10px;
}


/* 2018.03.12追加 */
.index_ttl_schedule02{margin:10px 0;}

/* --------------------------------------------------------------------
 c_cv_btn01 電話が繋がりやすくなっております
-------------------------------------------------------------------- */
.sp_conversion_new_btn {
    display: inline-block;
    margin: 0 auto;
    width: 94%;
    height: 100%;
    padding: 19% 0 7%;
    text-decoration: none;
}
.sp_conversion_new .sp_conversion_new_time span{
	color: #f31035;
}
.c_cv_btn01 {
	display: block;
	background: url(../img/common/cv3_bg02.png) repeat 0 0 #ffb300;
	background-size: 7px 7px;
	padding: 8px 6px;
	border: 2px solid #fed056;
	border-radius: 12px;
	text-decoration: none;
}
.c_cv_btn01 .sp_conversion_new_time {
	background: #fff;
	font-size: 0.85em;
	margin: 5px 2px 0;
	padding: 8px 5px 7px;
	text-align: center;
}
.sp_conversion_new {
    position: relative;
    margin: 10px auto 5px;
}

.sp_conversion_new_time {
    bottom: 4.6vw;
    right: 0;
    left: 0;
    margin: auto;
    position: absolute;
    width: 91%;
    font-size: 12px;
    text-align: center;
    height: 34%;
}
.sp_conversion_new .cv_pointer{
	position: absolute;
	bottom: 15px;
	right: -10px;
	width: 50px;
	height: 47px;
}
@media screen and (max-width: 320px) {
	.sp_conversion_new_time {
		position: absolute;
		text-align: center;
		left: 0;
	    right: 0;
	    font-size: 11px;
	    bottom: 8%;
	}
}



/* ===================================================================
Utility
====================================================================== */

.u_mt00 {margin-top:0 !important;}
.u_mt05 {margin-top:5px !important;}
.u_mt10 {margin-top:10px !important;}
.u_mt15 {margin-top:15px !important;}
.u_mt20 {margin-top:20px !important;}
.u_taR {text-align: right !important;}
.u_taC {text-align: center !important;}
.u_taL {text-align: left !important;}
.u_fwB {font-weight: bold !important;}
.u_fwN {font-weight: normal !important;}
.u_vaT {vertical-align: top !important;}
.u_vaM {vertical-align: middle !important;}
.u_vaB {vertical-align: bottom !important;}
.u_tRed01 {color:#ff590f;}
.u_tGreen01 {color:#5d973e;}

.u_clearfix::after {
	content: "";
	display: table;
	clear: both;
}

/* --------------------------------------------------------------------
 p_news
-------------------------------------------------------------------- */
.sp_l-main .p_news{
	/*
	margin-top: 20px;
	*/
	margin-top: 25px;
}
.p_news .p_news_list01 li:nth-child(odd) {
	background: url(../img/index_bg_news01.png) repeat 0 0;
	background-size: 2px 2px;
}

.p_news .p_news_list01 li a {
	display: block;
    padding: 10px 33px 10px 10px;
    background: url(../img/common/cmn_arrow01.png) no-repeat center right 10px;
    background-size: 17px 17px;
}

.p_news section{
	padding:10px;
	background-color: #fefdf6;
	border:1px solid #d3dfbc;
}

.p_news .p_news_list01.even li{border-bottom:1px dotted #ccc;}
.p_news .p_news_list01 li a {text-decoration: none;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;font-size: 1.4rem;}
.p_news .p_news_list01.even li:nth-child(odd) {
	background:none;
}
.p_news .p_news_list01.even li:nth-child(even) {
	background: #f9f5d8;
}
.p_news .c_btn_gray_01{width:80%;margin: 0 auto;}


/* tips */
ul.tipsList{margin:0 auto;width: 100%;}
ul.tipsList li{display:inline-block;margin:0 2% 2% 0;}
ul.tipsList li:before{content:'\0bb';margin-right: 3px;color: #5c973e;}
ul.tipsList li a{font-size: 1.4rem;}


/* 2018.3.12 */
.p_voice .c_btn_01{margin-bottom: 0;margin-top:10px;}

.ul_qa a:after {
    display: inline-block;
    content: "";
    right: 5px;
    top: 41%;
    box-sizing: border-box;
    width: 4px;
    height: 8px;
    border: 4px solid transparent;
    border-left: 4px solid #5d973e;
    position: absolute;
}
.p_faq .c_btn_01{margin-bottom: 10px;}

.p_aside_gsl{
	margin:10px auto 0;
	width:100%;
	font-size:0.7em;
}


/*フッター共通化対応*/

.media_footer{
      padding: 0px 13px 0px 13px;
      margin-top: 15px;
}

.p_aside_media{
    margin-top: 15px;
}
.p_aside_support{
    margin-top: 20px;
    border: 1px solid #CCC;
}
.p_aside_support .ttl{
    padding: 12px 10px 0;
    background: #fff;
    background-size: 8px 8px;
    font-weight: bolder;
    font-size: 16px;
    color: #333;
    text-align: center;
}
.p_aside_support .p_aside_support_inner{
    padding: 10px;
    background: #fff;
    overflow: hidden;
}
.p_aside_support_inner{
    padding: 10px;
        background: #fff;
        overflow: hidden;
}
.p_aside_media .img{
    margin: 10px 6px 0;
}
.p_aside_media .txt > *:first-child{
    margin-top: 0;
    font-size: 12px;
		padding: 0px 10px;
}
/*クレジットエリア*/
.c_columnWrap01 > *:first-child{
        padding-left: 0;
}
.c_columnWrap01 > *{
    display: table-cell;
    vertical-align: top;
    box-sizing: content-box;
}
.p_aside_gsl{
    padding: 0px 10% 5px 10%;
    font-size: 0.85em;
    text-align: center;
    margin-bottom: 45px;
}
.c_columnWrap01{
    display: table;
    table-layout: fixed;
    width: 100%;
}
.c_columnWrap01 .w50{
    width: 50px;
}
.p_aside_gsl p{
    padding-left: 0;
    margin-bottom: 10px;
    text-align: left;
    padding-top: 10px;
}
.u_vaM{
    padding-top: 20px;
}
.sp_visa {
  background-size: 2px;
  padding: 3vw 3vw;
  margin: 0 0 14vw;
  margin-top: 20px;
  border: 1px solid #CCC;
}
.sp_visa_mtb {
	margin-top: 1vw!important;
	margin-bottom: 4vw!important;
}
.sp_visa_img{
    width: 96%;
    text-align: center;
    margin: 0 auto;
}
.sp_visa .sp_visa_img {
  padding: 10px 0 8px;
}
.sp_visa .sp_visa_txt{
  font-size: 10px;
  color: #999;
}
.sp_visa .sp_visa_ttl {
    color: #666;
    font-size: 0.9em;
    font-weight: bold;
    padding: 4px 0 10px 0;
    line-height: 1;
    text-align: center;
    border-bottom: 1px solid #ddd;
}
/*footer*/
.sp_l_footer{
    position: relative;
    /*
    padding-bottom: 72px;
    */
    background-color: #f3f3f3;
}
.sp_l_footer_wrap02 .sp_f_link{
    padding: 15px 0;
    font-size: 0.65em;
    text-align: center;
}
#policy_text{
    background: #fff;
    padding: 10px;
    font-size: 0.85em;
    text-align: left;
}
.sp_f_privacy{
    padding: 10px 30px 10px;
    font-size: 0.65em;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
}
.sp_l_footer_wrap02 #policy_text{
    background: #fff;
    padding: 10px;
    font-size: 0.85em;
    color: #333;
    line-height: 21px;
}
.sp_l_footer_wrap02 .sp_f_link li{
    padding-right: 6px;
    margin-right: 4px;
    border-right: 1px solid #202d39;
    display: inline;
    text-decoration: underline;
}
.sp_l-footer a{

    text-decoration: none;
}
.sp_l_footer_wrap02 #policy_text strong{
    font-weight: bold;
    font-size: 1.2em;
}
.c_imageLeft_01 .img{
        float: left;
    padding-right: 15px;
    margin-top: 0px;
}
.sp_l_footer_wrap02 .logo{
    padding: 20px 15px 5px;
    text-align: center;
}
.theme-switch{
padding: 15px 15px;
    background-color: #f3f3f3;
    border-width: 1px 0;
    text-align: center;
}
.sp_f_themeswitch a {
		margin-bottom: 15px;
    display: block;
    padding: 10px;
    font-weight: bold;
    color: #999;
    text-decoration: none;
    border: 2px solid #fff;
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    border-radius: 12px;
    background: rgb(255,255,255); /* Old browsers */
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(230,230,230,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(230,230,230,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(230,230,230,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}


.sp_f_themeswitch{
    padding: 15px 10px 0px 10px;
    background-color: #f3f3f3;
    border-width: 1px 0;
    text-align: center;
    margin: 0 auto;
    width: 100%;
}
#policy_text a{
    text-decoration: underline !important;
}
.sp_f_text_inner{
  background: #fff;
  padding: 5px;
}
.c_imageLeft_01{
	/*
 padding-top: 10px;
 */
}
.sp_f_privacy .txt{
  line-height: 16px;
}
.sp_l_footer_wrap02_inner{
	background-color: #FEFFFF;
	padding: 8px;
	margin-bottom: 10px;
}


.site_img{
padding-top: 20px;
width: 49%;
margin: 0 auto;
}

.sp_l-main > section > div.c_ttl02_01{margin-bottom: 10px;}
.c_attention01{margin-top: 5px;}

.p_voice .p_voice_bg01 {
    padding: 10px;
    border: 1px solid #ead5b8;
    background: url(../img/index_bg_voice01.png) repeat 0 0;
    background-size: 4px 4px;
}
.sp_f_pagetop {
  position: absolute;
  right: 10px;
  top: -60px;
  width: 50px;
  height: 50px;
  background-color: rgba(0,0,0,0.5);
  border-radius: 100%;
  text-align: center;
}
.sp_f_pagetop a{
    padding: 14px 10px 0;
    display: block;
}
.spf_pagetop_img{
  width: 60%
}
.sp_l_footer_wrap02_inner .ttl{
	color: #000000;
	font-size: 14px;
}
.sp_l_footer_wrap02_inner .txt{
	color: #000000;
}

.p_aside_gsl02{
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}
.p_aside_gslIn{
    display: flex;
    align-items: center;
}
.p_aside_gslIn span{
    font-size: 12px;
    display: block;
    padding-left:10px;
}
/*read_more st*/
.sp_l_footer_wrap02_inner .sp_readmore{
    text-align: right;
}
.sp_l_footer_wrap02_inner .txt a{
	  position: relative;
    padding-left: 6px;
    text-decoration: underline;
    display: inline-block;
}
.sp_l_footer_wrap02_inner .txt a:after{
	   width: 0;
    height: 0;
    content: '';
    border-style: solid;
    border-width: 4px 0 4px 4px;
    border-color: transparent transparent transparent #2cac38;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -4px;
}

/* 全サイト共通ボタン */
.btn_page {
    display:block;
    position: relative;
    text-decoration: none;
    color: #333;
    width: 93%;
    margin: 20px auto 10px;
    padding: 8px 0 7px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
    text-align: center;
    vertical-align: middle;
    overflow: hidden;
    font-weight: bold;
    background-image: -webkit-linear-gradient(#fafafa 30%, #ddd 100%);
    background-image: linear-gradient(#fafafa 30%, #ddd 100%);
    text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.66);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
}
.btn_page i {
    margin-left: 10px;
    font-size: 1.8rem;
    vertical-align: middle;
    color: #5c973e;
}

.btn_page + .btn_page{margin-top:0;}

.c_cv01 .wrap{
	margin-top: 20px;
	background: #fcfcf2;
    border: 3px solid #f6f2dd;
    padding:10px;
}
.c_cv01 .wrap .ttl{margin-bottom: 10px;}
.c_cv01 .box{
	width: 100%;
}
.c_cv01 .box .inner{
	float: left;
	width: 32%;
	margin-right: 2%;
}
.c_cv01 .box .inner:last-child{margin-right: 0;}

.p_aside_wrap{padding: 0 10px;}
.p_aside_wrap .media_attention {
	color: #999;
	font-size: 11px;
}

@media screen and (max-width:320px){
	body{font-size: 14px;}
}

@media screen and (min-width: 667px) {
	.sp_conversion_new_time {
	    bottom: 18px;
	}
	.sp_f_sticky {
	    width: 375px;
	    margin: 0 auto;
	    left: 0;
	    right: 0;
	}
	.sp_gnav {
	  display: none;
	  position: absolute;
	  z-index: 100;
	  width: 375px;
	  left: 0;
	  right: 0;
	  margin: 0 auto;
	}
}
/*read_more end*/

.s_showmovie{
  position: relative;
  margin: 30px auto 10px;
  padding: 0 0 10px;
  border: 1px solid #ccc;
  background :#fff;
  text-align: center;
	box-sizing: border-box;
}
.bg_movie{
  width: 100%;
  padding: 30px 10px 0;
  margin: 0 0 -23px;
  position: relative;
  top: -20px;
  background: url(../img/common/movie_bg.png) no-repeat right top;
  background-size: 27% auto;
}
.bg_movie h2{
  font-size :23px;
  font-weight: bold;
  color: #ff6100;
  text-align: left;
  line-height: 1.2;
  margin: 0 0 5px 0;
  text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px , #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
}
.bg_movie iframe{
  width: 100%;
  height: 188px;
  display: block;
}
.cv_sp_tel_txt{
	position: absolute;
	top:45vw;
	left:20vw;
	font-size: 7vw;
	font-weight: bold;
	color:white;
}
.footer_sp_tel_txt{
	position: absolute;
	top: 9.5vw;
    left: 36.5vw;
    font-size: 7.5vw;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-image: linear-gradient(rgba(0,0,0,.65)48%,rgba(0,0,0,1)52%);
}
