*,
img {
	max-width: 100%;
}


.sp {
	display: block;
}

.pc {
	display: none;
}





/* header */

header .inner {
	display: block;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

header #hdTel,
header #hdRsrv {
	display: none;
}


/* main */

#main::after {
	content: '';
	display: none;
	padding-top: 0;
}

#main .inner {
	position: static;
	width: 100%;
	height: auto;
	padding: 15px;
	box-sizing: border-box;
}

#main h3 {
	margin: 0;
	font-size: 3.6vw;
}

#main h2,
#main .mainBtn {
	width: 50vw;
}

#main .mainBtn {
	width: 55vw;
	margin: 0;
}

#loan .inner {
	padding: 15px;
}

#loan .loanUpper {
	padding: 0;
}

#loan .loanUpper ul.ifso {
	display: block;
	width: 100%;
	background: #fff;
	padding: 10px 20px;
	box-sizing: border-box;
	border-radius: 10px;
}

#loan .loanUpper ul.ifso li {
	display: list-item;
	list-style: disc inside;
	width: 100%;
	height: auto;
	margin-bottom: 0px;
	padding: 0;
	box-sizing: border-box;
}

#loan .loanUpper ul.ifso li strong {
	display: inline;
	font-size: 1.8rem;
}

#loan .loanUpper h1 {
	font-size: 12vw;
	line-height: 1.2;
}

#loan .loanUpper h1 span {
	font-size: 6.6vw;
}

#loan .loanUpper h1 span::after {
	content: '';
	display: block;
}

#loan .loanUpper h1::after {
	content: '!';
	display: inline;
}

.nayamiArea {
	width: 100%;
}

.nayamiArea h2 {
	top: -70px;
	width: auto;
	left: 0;
}

#loan {
	margin-bottom: 30px;
}

#loan .loanUpper ul.nayami {
	flex-direction: column;
	padding: 20px 20px 5px;
}

#loan .loanUpper ul.nayami li {
	clear: both;
	width: 100%;
	margin-bottom: 15px;
	padding-left: 35px;
	font-size: 1.6rem;
	box-sizing: border-box;
}

#loan .loanUpper ul.nayami li::before {
	float: left;
	width: 30px;
	margin-left: -35px;
	margin-right: 0;
}

#loan .loanBtm {
	background: #0396e5;
}

#loan .loanBtm h3 {
	width: 100%;
	margin: 0;
	padding: 15px 0;
	font-size: 11.8vw;
}

#loan .loanBtm h3 span {
	position: static;
}

#loan .solution {
	width: auto;
	background: #fff;
	padding: 15px;
}

#loan .solution img {
	width: 20%;
	right: 5px;
}

#loan .solution h4 {
	margin: 0;
	padding: 0;
	font-size: 1.8rem;
}

#loan .solution p {
	margin: 15px 0 0;
	padding: 0 20% 0 0;
	font-size: 1.6rem;
}

.reserve.bg_yellow {
	max-width: 100%;
	padding: 10px;
	box-sizing: border-box;
}

.reserve .inner h2 {
	padding-bottom: 10px;
	font-size: 9vw;
	line-height: 1.3;
	text-align: center;
}

.reserve .inner h2 span {
	display: block;
	margin: 0;
	font-size: 5.9vw;
}

.rsvBox {
	display: block;
	padding: 20px;
}

.rsvBox h3 img {
	margin: auto;
}

.rsvBtnArea {
	position: static;
	margin-top: 30px;
	padding: 0;
	text-align: center;
}

.rsvBtnArea span {
	width: 100%;
	margin: auto;
}

.rev_inner {
	margin-bottom: 0;
	padding: 0;
}

.rev_inner li {
	list-style: none;
	width: 50%;
	margin-bottom: 0;
	padding: 0;
}

.rev_inner li:last-of-type {
	margin-bottom: 0;
}

.rev_inner li a {
	display: block;
}

.rev_inner li img {
	width: 100%;
}

#akirame {
	padding-bottom: 0;
}

#akirame .inner {
	background-image: none;
}

#akirame .inner ul {
	width: 100%;
	padding: 0;
	box-sizing: border-box;
}

#akirame .inner ul li {
	width: 30%;
	margin: 5px;
}

.akirameTxt {
	width: 100%;
	margin: 20px 0 0;
	padding: 20px 15px 0;
	box-sizing: border-box;
}

#wait h3 {
	padding: 0 15px;
}

#wait h3 span img {
	margin: 15px 0;
}

#weare {
	width: 100%;
	padding: 0 15px;
	margin: 35px auto 50px;
	box-sizing: border-box;
}

#weare .weph {
	display: none;
}

#weare .wetxt {
	padding: 0;
	font-size: 1.8rem;
}

#weare .wetxt span {
	font-size: clamp(34px,4.9vw,38px);
}

#weare .wetxt span.ttlby {
	font-size: clamp(28px,4.1vw,32px);
}

#weare .wetxt span.inb {
	display: inline-block;
}

#weare .muri {
	margin: 35px 0;
}


#weare .muri .muritxt {
	margin-bottom: 25px;
	padding: 15px;
	font-size: 4.0vw;
}

#graphArea {
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;
}

.shinsa {
	margin-bottom: 35px;
}

#ikaga {
	width: 100%;
	margin: 45px auto 0;
	padding: 20px;
	box-sizing: border-box;
}

#ikaga .muriChara {
	display: none;
}

#ikaga h4 {
	top: -6vw;
	left: 0;
	right: 0;
	width: 80%;
	margin: auto;
}

#ikaga p {
	width: 100%;
	margin: 0 auto;
	font-size: 5.8vw;
	box-sizing: border-box;
}

#ikaga p br {
	display: none;
}

#start .strtTtl .inner {
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
}

#start .strtTtl .inner h2 {
	font-size: 4.6vw;
}

#start .strtTtl .inner h2 span {
	font-size: 6.4vw;
}

.strtTtlChara {
	display: none;
}

#start article {
	width: auto;
	margin: 50px 20px;
	padding: 20px;
	box-sizing: border-box;
}

.voicehd {
	display: block;
}

.voicehd .name {
	display: inline-block;
}

.voicehd h3 {
	font-size: 1.8rem;
}

dl.hensai {
	display: block;
}

.hensai dd {
	margin: 0;
	font-size: 16.2vw;
	text-align: center;
}

.caption {
	padding-left: 2em;
	font-size: 1.2rem;
	text-indent: -1em;
	text-align: left;
}

.case {
	display: block;
	padding: 15px;
}

.case li {
	width: 100%;
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: 1.6rem;
	box-sizing: border-box;
	border-bottom: dotted 4px #CBCBCB;
}

.case li:nth-last-child(2) {
	border: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.case li .icon {
	width: 35px;
	margin-right: 15px;
}

.case li .txt strong {
	font-size: 1.8rem;
}

.case li .txt span {
	font-size: 1.4rem;
}

.case li.border {
	display: none;
}

.dlright {
	text-align: left;
}

.kariire {
	display: block;
	width: 100%;
	margin: 0 0 70px;
	padding: 0;
	box-sizing: border-box;
}

.kariire dd {
	margin: 0;
	font-size: 13vw;
	text-align: center;
}

.kariire dd span {
	font-size: 1.4rem;
}

.review {
	margin-bottom: 25px;
	padding: 0px;
}

.review a {
	position: relative;
	display: block;
	padding: 15px;
}

.review a::after {
	position: absolute;
	content: '\77';
	bottom: 0;
	right: 0;
	background: #0396E5;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	font-family: "fontello";
	color: #fff;
}

.review a.splink {
    pointer-events: auto;
    cursor: pointer;
}

.voice_btn_area {
	padding: 0 20px;
	text-align: center;
}

.voice_btn_area .inner {
	margin: auto;
	text-align: center;
}



a.line_bnr img {
	width: 85%;
}

a.line_bnr::after {
	right: -20px;
	font-size: 12px;
}

#soudan .inner {
	width: 100%;
	padding: 25px 15px;
	box-sizing: border-box;
}

#soudan .inner h2 {
	margin: 0 0 25px;
}

#soudan .inner h2 span {
	padding: 8px 20px;
	font-size: 5.4vw;
	font-weight: bold;
}

#soudan ol {
	display: block;
	margin: 0;
}

#soudan ol li {
	width: 95%;
	margin: auto;
}

#soudan ol li.arrow {
	padding: 10px 0;
}

#soudan ol li.arrow img {
	display: block;
	margin: auto;
	transform: rotate(90deg);
}

section.reserve.bg_white {
	max-width: 100%;
	margin: 50px 0;
    padding: 10px;
    box-sizing: border-box;
}

#reason {
	padding: 0 15px;
}

#reason h2 {
	font-size: 7.2vw;
}

#reason h2 i {
	display: inline-block;
	margin-right: 0.2em;
}

#reason h2 small {
	font-size: 5.4vw;
}

#reason h2 em {
	font-size: 14vw;
}

#reason .upper {
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
}

#reason .upper ol {
	font-size: 1.8rem;
}

#reason .upper ol br {
	display: none;
}

.reasonPh {
	display: none;
}

#reason .botttom {
	width: auto;
	margin: 0 15px;
	padding: 15px;
	font-size: 1.6rem;
	box-sizing: border-box;
}

#reason .botttom p {
	margin: 0;
}

#maind {
	padding: 20px 15px;
}

#maind .inner {
	width: 100%;
	box-sizing: border-box;
}

#maind h2 {
	font-size: 11.2vw;
}

#maind .bg_white {
	padding: 20px;
}

#maind .bg_white .maindChara {
	position: static;
	display: block;
	width: 80px;
	margin: 0 auto 20px;
	transform: none;
}

#maind .bg_white br {
	display: none;
}

.wittenby {
	font-size: 1.6rem;
}

#faq {
	padding: 0 15px;
}

#faq .faqhd h2 {
	padding: 15px 0;
	font-size: 11.8vw;
}

#faq .faqChara {
	display: none;
}

#faq dt,
#faq dd {
	align-items: flex-start;
}

#faq dt::before,
#faq dd::before {
	font-size: 2.8rem;
	line-height: 1.1;
}

#faq .okigaru {
	width: auto;
	margin: 50px 20px;
	box-sizing: border-box;
}

#faq .okigaru .muriChara {
	left: 0;
	right: 0;
	width: 80px;
	margin: auto;
}

#faq .okigaru p {
	margin: 0;
	padding-bottom: 60px;
	font-size: 1.8rem;
}

/* company */

#company {
	margin-top: 0px;
	padding: 20px 0 0;
}

#company h2 {
	margin: 0 10px;
	font-size: 5vw;
}

#company h2 span {
	display: inline-block;
}

.comWrap {
	background: none;
}

.comWrap .inner {
	width: 100%;
	padding: 20px 15px;
}

.comWrap .inner .tableWrap {
	width: 100%;
	padding: 0;
}

.comChara {
	width: 100px;
	transform: translate(0, -86px);
}

.comWrap .inner table tr,
.comWrap .inner table th,
.comWrap .inner table td {
	display: block;
}

.comWrap .inner table tr {
	margin-bottom: 15px;
	border: none;
}

.comWrap .inner table th {
	background: #eee;
	width: 100%;
	box-sizing: border-box;
}

.comWrap .inner table td {
	margin-top: 5px;
	margin-bottom: 15px;
}

#shop {
	width: 100%;
	padding: 0 15px;
	box-sizing: border-box;
}

#shop .shopInfo {
	display: block;
	margin-top: 20px;
}

#shop .otherInfo {
	font-size: 1.6rem;
}

#spTokushima,
#spTakamatsu {
	float: none;
	margin: auto;
}

#spTakamatsu {
	margin-top: 30px;
}


/* contact */

#contact {
	padding: 25px 15px 0;
}

#contact .inner h2 {
	font-size: 7.6vw;
}

#contactForm {
	width: 100%;
	margin: 25px auto;
}

#contactForm .inner {
	width: 100%;
	margin: 0;
	padding: 0 15px 20px;
	box-sizing: border-box;
}

.mfp .formLine,
.mfp .formRight ul li,
.mfp .formRight ul li span,
.mfp .formRight select {
	display: block;
}

.mfp .formLeft {
	width: 100%;
}

.mfp .formRight ul li span {
	width: 100%;
	font-size: 1.4rem;
}

.mfp .formRight.multi {
	display: block;
}

.mfp .formRight span.spFlex {
	display: table;
	width: 100%;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 15px;
}

.mfp .formRight span.spFlex i {
	display: table-cell;
	width: 2em;
}

.mfp .formRight span.spFlex select {
	display: table-cell;
	box-sizing: border-box;
}

.mfp .formRight select {
	width: 100%;
}

select.time {
	margin-left: 0
}

.formBtn .btnArea {
	width: 95%;
	text-align: center;
}

.btnArea button.mfp_element_all {
	max-width: initial;
}


.mfp .formLeft .formCont br {
	display: none;
}

.mfp .formLeft .formCont {
	white-space: normal;
}


/* spFtNav */

#spFtNav {
	position: fixed;
	bottom: 0;
	left: 0;
	display: block;
	background: #fff;
	width: 100%;
	border-top: solid 1px #123192;
}

#spFtNav ul {
	display: flex;
	width: 100%;
	margin: 0;
	padding: 0;
}

#spFtNav ul li {
	list-style: none;
	width: 25%;
	border-right: solid 1px #fff;
	text-align: center;
	line-height: 1.2;
}

#spFtNav ul li:last-of-type {
	border: none;
}

#spFtNav ul li a {
	display: block;
	padding: 8px;
}

#spFtNav ul li.telbtn a:link,
#spFtNav ul li.telbtn a:visited,
#spFtNav ul li.telbtn a:hover,
#spFtNav ul li.telbtn a:active,
#spFtNav ul li.conbtn a:link,
#spFtNav ul li.conbtn a:visited,
#spFtNav ul li.conbtn a:hover,
#spFtNav ul li.conbtn a:active {
	color: #fff;
	text-decoration: none;
}

.telbtn {
	background: #0396E5;
}

.conbtn {
	background: #ff931e;
}

.linebtn {
	background: #fff105;
}

.icon-line::before {
	content: '';
	background-image: url('../img/icon_line.svg');
	background-size: cover;
	width: calc( ( 100vw - 25%) /10);
	height: 1em;
	font-size: calc( ( 100vw - 25%) /10);
}

.mailbtn {
	background: #ff9621;
}

.icon-mail::before {
	content: '';
	background-image: url('../img/icon_mail.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: calc( ( 100vw - 25%) /10);
	height: 1em;
	font-size: calc( ( 100vw - 25%) /10);
}

#spFtNav ul li.topbtn a:link,
#spFtNav ul li.topbtn a:visited,
#spFtNav ul li.topbtn a:hover,
#spFtNav ul li.topbtn a:active {
	color: #666;
	text-decoration: none;
}

.topbtn {
	background: url('../img/intro_bg.gif');
}

#spFtNav ul li i {
	font-size: calc( ( 100vw - 25%) /10);
}

#spFtNav ul li span {
	display: block;
	background: #fff;
	margin-top: 5px;
	padding: 3px;
	font-size: 1.0rem;
	border-radius: calc( 1em + 6px);
}

#spFtNav ul li a:link span,
#spFtNav ul li a:visited span,
#spFtNav ul li a:hover span,
#spFtNav ul li a:active span {
	color: #000;
	font-weight: bold;
	text-decoration: none;
}




/* thanks */

#thanksBg h2 {
	font-size: calc( ( 100vw - 40px) /18);
}

#thanks #thanksBg .cnt1000 {
	width: 90%;
	margin: auto;
}

#thanksBg .inner {
	padding: 25px;
}

.thanksBtm {
	width: 90%;
}

.thanksBtm li {
	width: 48%;
}


/* hover */

#hdRsrv a.hover {
	display: block;
	animation: pulse .5s;
}

.btntell a.hover {
	animation: pulse .5s;
}

.rsvBtnArea a.hover {
	display: block;
	animation: pulse .5s;
}

.planBtn a.hover {
	display: block;
	animation: pulse .5s;
}

.btnArea button.hover {
	display: block;
	animation: pulse .5s;
}

