@charset "UTF-8";
/* ----------------------------------------------------------------
    Normalize
----------------------------------------------------------------- */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
@media(max-width:767px){
	
/* ----------------------------------------------------------------
    Base
----------------------------------------------------------------- */
body {
	min-width: 100%;
}
body.result {
	min-width: 100%;
}
sup {
	font-size: 1.125rem;
	top: 0;
}
/* ----------------------------------------------------------------
    Placeholder
----------------------------------------------------------------- */
[data-column-number="2"].list-bullet-01 > li, [data-column-number="3"].list-bullet-01 > li {
	float: none;
}
[data-column-number="3"].list-bullet-01 > li, [data-column-number="3"].link-list-02 > li, [data-column-number="2"].list-bullet-01.mt-5 > li {
	width: 100%;
}
[data-column-number="4"].list-bullet-01 > li, [data-column-number="5"].list-bullet-01 > li, [data-column-number="6"].list-bullet-01 > li {
	width: 45%;
	margin-left: 3.84615%;
}
[data-column-number="5"].list-bullet-01 > li:nth-child(5n+1){
	clear: none;
}
/* ----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
/* %header-utility-table-cell
----------------------------------------------- */
.header-logo, .header-utility {
	vertical-align: middle;
    width: auto;
}
/* .header-inner
----------------------------------------------- */
.header-inner {
	background: #FFFFFF;
    padding-top: 0;
	border-bottom: solid 1px #dedede;
	width: 100%;
}
/* .header-logo
----------------------------------------------- */
.header-logo {
	/*width: 60px !important;*/
    width: 72px !important;
	padding: 0;
	margin: 11px 10px 10px 12px;
	float: left;
}
.header .mt-10.mb-15 img ,.header .mt-10.mb-10 img {
	width: auto;
	margin: 0px 0 10px;
	padding: 0;
	float: left;	
}
/* .header-copy , .header-copy02
----------------------------------------------- */
.header-copy p {
font-size: 1.4rem;
	padding: 10px 0 3px;
}
/* .header-utility
----------------------------------------------- */
.header-utility {
	display:none;
}
/* .nav-header-utility
----------------------------------------------- */
.nav-header-utility ul {
	display:none;
}

/* ----------------------------------------------------------------
    Global nav
----------------------------------------------------------------- */
/* #menubtn
----------------------------------------------- */
#sp-menu {
	display:block;
}
#sp-menu button, #sp-nav button {
	background-color:#FFFFFF;
	border-left: solid 1px #c5c5c7;
	border-top: none;
	border-bottom: none;
	border-right: none; 
	cursor:pointer;
	float:right;
	margin: 10px 0 2px;
	font-size: 0.7rem;
	width: 18%;
}
#sp-menu img, #sp-nav img {
	display: block;
	margin: 0 auto 4px;
	width: 30%;
}
/* #menu
----------------------------------------------- */
#menu-s li li {
	display:none;
}
/*sp-nav
----------------------------------------------- */		
#sp-nav {	
	display:block;
}	
.sp-nav-unshown {	
  display:none;	
}		
#sp-nav-open {	
  cursor: pointer;	
  	background-color:#FFFFFF;
	border-left: solid 1px #c5c5c7;
	border-top: none;
	border-bottom: none;
	border-right: none; 
	float:right;
	margin: 10px 0 2px;
	font-size: 0.7rem;
	width: 18%;
    text-align: center;	
}	
#sp-nav-open img {	
	width: 22% !important;
}	
#sp-nav-open span:before {	
  bottom: -8px;	
}	
#sp-nav-open span:after {	
  bottom: -16px;	
}	
#sp-nav-close {	
  display: none;	
  position: fixed;	
  z-index: 99;	
  top: 0;
  left: 0;	
  width: 100%;	
  height: 100%;	
  background: #000000;	
  opacity: 0;	
  transition: .3s ease-in-out;	
}	
/**sp-nav-content	
----------------------------------------------- */	
#sp-nav-content {	
  overflow: auto;	
  position: fixed;	
  top: 0;	
  left: 0;	
  z-index: 9999;	
  width: 90%;	
  max-width: 267px;
  height: 100%;	
  background: #fff;
  transition: .3s ease-in-out;
  -webkit-transform: translateX(-105%);	
  transform: translateX(-105%);
  padding: 5px 15px 0;
  font-size: 13px !important;
}	
#sp-nav-content ul li {	
    border-top: solid 1px #eeeeee;	
    text-align: left; 
}	
#sp-nav-content ul li:first-child {	
    border-top: none;	
}	
#sp-nav-content ul li ul li:first-child, #sp-nav-content ul li ul li:last-child {	
    border-top: dotted 1px #dfdfdf;  	
}	
#sp-nav-content ul li a {	
    padding: 12px 0;	
    display: block;	
    color: #333;	
    font-weight: bold;    
}	
#sp-nav-content li ul {	
    margin: 0 !important;	
    padding: 0 !important;	
}	
#sp-nav-content li ul li{	
	background-image: url(/common/images/header/submenu-icon.png);
	background-repeat: no-repeat; 
	background-position: 2% 48%;
    padding: 0;	
    border-top: dotted 1px #dfdfdf;  
}	
#sp-nav-content li ul li a{	
    padding: 12px 0 10px 15px;	
	text-align: left;
	font-weight: normal;
    font-size: 13px !important;    
}	
#sp-nav-content a {	
   text-decoration: none;	
}	
#sp-nav-content a:hover{	
   color: #c93535;	
}	
	
#sp-nav-content ul li img {	
   width: 227px;	
}	
#sp-nav-input:checked ~ #sp-nav-close {	
  display: block;
  opacity: .5;
  background-image: url("/common/images/header/submenu-02.png") !important;
  background-repeat: no-repeat; 
  background-position: 85% 2%;  
}	
#sp-nav-input:checked ~ #sp-nav-content {	
  -webkit-transform: translateX(0%);	
  transform: translateX(0%);
  box-shadow: 6px 0 25px rgba(0,0,0,.15);	
}	
.sp-nav-box {	
    margin: 0;	
    padding: 0;	
    max-width: 300px;	
}	
.sp-nav-box label {	
    display: block;	
    padding: 12px 0;	
    font-weight: bold;	
    cursor :pointer;	
    transition: all 0.5s;
}	
.sp-nav-box label:after {	
padding-left: 10px;	
color: #dddddd;	
content:"＋";	
}		
.subnav:checked + label:after {	
color: #dddddd;	
content:"－";	
}	
.sp-nav-box label:hover {	
    color: #c93535;	
}	
.sp-nav-box input {	
    display: none;	
}	
.sp-nav-box .subnav-show {	
    height: 0;	
    padding: 0;	
    overflow: hidden;	
    opacity: 0;	
    transition: 0.8s;	
}	
.subnav:checked + label + .subnav-show {	
    height: auto;	
    opacity: 1;	
}	

/* ----------------------------------------------------------------
    Contents
----------------------------------------------------------------- */
/* .contents
----------------------------------------------- */
.contents {
	border-radius: 3px;
	background:#FFFFFF;
	margin: 0;
	padding: 0;
}
.contents h1 {
font-size: 2.5rem;
}
.contents h2 {
font-size: 2rem;
margin-bottom: 15px;
}
.h2_point {
padding-left: 30px !important;
margin-bottom: 15px !important;
}
.h2_point::before {
margin-top: -14px;
margin-left: -65px;
}
.h2_point + .lead-01 {
margin-top: -5px !important;
padding-top: 0 !important;
}
.contents h2 span {
border-bottom: none;
}
section {
padding: 40px 0 30px !important;
}
.inner {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
/* .mv
----------------------------------------------- */
.mv .partner_c {
padding-top: 50px
}
.mv .mvbox {
width: 100%;
display: block;
}
.mv .mvbox div {
width: 100%;
}
.mv .mvbox div:last-child {
width: 70% !important;
margin: 15px auto 10px;
}
.mv .add {
padding: 55px 0 0 !important;
}
.mv .partner01 {
font-size: 1.7rem;
margin: 20px auto 0 !important;
padding: 7px 25px 5px;
}
.mv_logo_add {
padding-top: 15px;
}
.mv_logo_oc, .mv_logo_mp {
width: 100% !important;
}
.mv .mvbox div h1 {
font-size: 2.3rem;
}
.mv_startup {
padding-bottom: 0 !important;
margin-bottom: 0 !important; 
height: auto;
}
.mv_startup .inner {
width: 100%;
height: auto;
background-position: 50% 100%;
background-size: 270px;
padding: 0 !important;
margin: 0 !important;
}
.mv_startup .mvbox {
display: block;
}
.mv_startup .mvbox div:first-child {
width: 100%;
padding-bottom: 150px;
margin-bottom: 0;
}
.mv_startup .su_copy01 {
font-size: 1.8rem;
padding-bottom: 0;
}
.mv_startup .su_copy01 span {
background: linear-gradient(transparent 65%, #ffdb3f 65%);
}
.mv_startup .su_copy02 {
font-size: 1.7rem;
margin-top: 20px;
}
/* .mvct
----------------------------------------------- */
.mvct ul, .mvct02 ul {
display: block;
width: 100%;
}
.mvct ul li, .mvct02 ul li {
width: 100%;
margin-right: 0;
margin-bottom: 20px;
}
.mvct02 {
padding: 20px 20px 8px !important;
}
.mvct02 .inner {
width: 100%;
}
.mvnote {
margin-left: 0 !important;
}
/* .case
----------------------------------------------- */
.case {
padding-bottom: 30px !important;
}
.case h3 {
font-size: 1.8rem;
margin-bottom: 10px;
}
.case .casebox {
display: block;
}
.case .casebox div {
width: 100%;
margin-bottom: 25px;
}
/* .merit
----------------------------------------------- */
.merit01flex ,.merit02flex {
display: block;
padding-top: 10px;
}
.merit_box {
display: block;
width: 100%;
margin-bottom: 30px;
overflow:auto;
}
.merit_box:nth-child(odd) {
margin-right: 0;
}
.merit_box div:last-child, .merit01flex .merit_box div:last-child {
width: 100%;
}
.merit01flex .merit_box {
border-radius: 10px;
padding: 20px 20px;
border: 3px solid var(--main-color);
}
.merit02flex .merit_box {
background-color: #FFFFFF;
border-radius: 10px;
padding: 25px 15px 22px 25px;
}
.merit_box .media, .merit01flex .merit_box .media {
margin-left: auto;
margin-right: auto !important;
margin-bottom: 20px;
width: 65%;
text-align: center;
}
.merit_box h3, .merit01flex .merit_box .h3_s {
font-size: 1.7rem;
margin-bottom: 10px;
margin-top: 0;
text-align: center;
}
.merit02flex .merit_box h3 {
margin-bottom: 13px !important;
height: auto;
}
.merit_box a{
  color: #000;
  cursor:pointer;
  font-size: 1.2rem;
  font-weight: normal;
  float: right;
  position: relative;
  display: block;
  vertical-align: middle;
  padding-left: 2.8rem;
  /*margin-left: 19rem;*/
}
.merit_box a::before,
.merit_box a::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.merit_box a::before{
  width: 2rem;
  height: 2rem;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: var(--sub-color);
}
.merit_box .merit_box_hide a::before, .merit_box .merit_box_hide a::before, .merit_box .merit_box_hide a::after{
display: none !important;
}
.merit_box a::after{
  left: .7rem;
  top: -0.3rem;
  width: .75rem;
  height: .75rem;
  border-top: .2rem solid #fff;
  border-right: .2rem solid #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.merit_box a.merit_box_link.close::after{
  left: .6rem;
  top: 0.3rem;
  width: .75rem;
  height: .75rem;
  border-top: .2rem solid #fff;
  border-right: .2rem solid #fff;
  -webkit-transform: rotate(315deg) !important;
  transform: rotate(315deg) !important;
}
.merit_box_hide {
display: none; 
}
.merit_box_hide.is-close {
    padding-top: 15px;
	clear: both;
}
.merit_box_hide.is-close p {
font-size: 1.45rem;
line-height: 1.7 !important;
margin-bottom: 0 !important;
}
/* 　.price
----------------------------------------------- */
.price .inner {
width: 90% !important;
}
.price h2 {
margin-bottom: 40px !important;
}
.price th, .price .td_01 {
font-size: 1.5rem;
}
.price .td_01 span {
font-size: 2rem;
}
/*　.case_service
----------------------------------------------- */
.case_service .case_service_box {
padding-top: 0;
}
.case_service .case_service_box li {
width: 100%;
}
.case_service .case_service_box li a {
display: block;
padding: 25px;
}
.case_service .case_service_box li .case_service_l {
padding-bottom: 5px;
}
.case_service .case_service_box li .case_service_l p {
    padding: 7px 10px;
  }
.case_service .case_service_box li .case_service_r {
width: 100% !important;
}
.case_service .case_service_box li .case_service_r p .p_ttl {
font-size: 1.6rem !important;
}
.case_service .case_service_box li .case_service_r p {
font-size: 1.5rem;
}
/* .structure
----------------------------------------------- */
.structure .media_caption {
width: 100%;
}
/* .use_startup
----------------------------------------------- */
.use_startup .list-number {
width: 100%;
}
.use_startup .list-number li:first-child {
margin-bottom: 40px;
}
.use_startup .use_note {
font-size: 1.3rem;
text-align: left;
line-height: 1.5;
padding-top: 20px;
}
/* support
----------------------------------------------- */
.support_flex {
display: block;
padding-top: 0;
}
.support_box h3 {
font-size: 1.5rem;
}
.support_box h3 span {
font-size: 2rem;
}
.support_box {
width: 100%;
}
.support_box p {
padding: 20px 20px 5px;
}
/* .flow
----------------------------------------------- */
.flow .tbl-01-box {
	overflow-x: scroll;
	padding-bottom: 5px;
	margin-bottom: 15px;
}
.flow .tbl-01-box::-webkit-scrollbar {
	height: 10px;
	background: #e6e6e6;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.2) inset;
	-webkit-box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.2) inset;
	box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.2) inset;
}
.flow .tbl-01-box::-webkit-scrollbar-thumb {
	height: 10px;
	background: #c93535;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.flow .tbl-01-box table {
width: 1000px;
}
/* .faq
----------------------------------------------- */
.h1_bg {
padding: 20px 0 !important;
margin: -50px 0 30px !important;
font-size: 2rem !important;
}
.faq_f {
display:block;
margin: 40px auto 20px;
width: 90%;
}
.faq_f dl {
width: 100%;
margin: 0 0 20px;
}
.faq_List_box-ttl {
  font-size: 1.5rem;
  padding-right: 4.5rem;
}
.faq_List_box-ttl.close {
  padding-right: 4.5rem;
}
.faq_List_box-ttl::before, .faq_List_box-ttl.close::before {
  right: 1.2rem;
  }
.faq_List_box_content-item {
  font-size: 1.5rem;
  padding: 0 1rem 1rem 0;
} 
.faq_List_box_content-item .list-bullet-01 {
width: 100% !important;
margin: 10px 0 25px;
}
/* .contact ----------------------------------------------- */
.contact {
padding: 25px 0 10px !important;
}
.contact .cta {
display: block;
padding-top: 0;
}
.contact .cta div {
width:100%;
font-size: 1.5rem;
padding-bottom: 10px;
}
.contact .contact_tx {
margin: 0 0 20px;
}
/* .btn
----------------------------------------------- */
.cta-btn-01, .cta-btn-02 {
font-size: 1.8rem;
margin-top: 5px;
text-decoration: none;
padding: 15px 0;
height: auto;
width: 90%;
}
.cta-btn-01:hover, .cta-btn-02:hover, .faq-btn-03:hover, .cta-btn-01:active, .cta-btn-02:active, .faq-btn-03:active {
opacity: .7;
text-decoration: none;
}
.contact .cta-btn-01 {
background-color: var(--point-color) !important;
color: #FFFFFF !important;
}
.cta-btn-02 {
background-color: var(--bg-color) !important;
color: var(--sub-color)!important;
}
.cta-btn-03 {
font-size: 2.6rem;
padding-bottom: 8px;
}
.cta-btn-03 span {
display: block;
margin-right: 0;
padding-bottom: 3px;
}
.faq .faq-btn-03 {
border: solid 1px var(--point-color);
color: var(--point-color) !important;
display: inline-block;
font-weight: 900;
font-size: 1.8rem;
margin-top: 30px;
text-decoration: none;
padding: 15px 50px 10px;
border-radius: 50px;
}
/* .section
----------------------------------------------- */
.section, .section-m {
	margin: 0 0 30px;
}
/* .lead
----------------------------------------------- */
.lead-01 {
	line-height: 1.6;
	font-size: 1.5rem;
	padding-bottom: 0;
} 
/* .about
----------------------------------------------- */
.about {
	padding: 20px 5px !important;
}
.about .flex {
display: block;
}
.about .flex div {
width: 100%;
}
.about .flex div:first-child {
font-size: 1.8rem;
font-weight: 900;
padding: 0 0 15px 10px;
text-align: left;
width: 100% !important;
}
.about .flex div:last-child {
border-left: none;
padding-left: 10px;
}
.about dl {
font-size: 1.4rem !important;
}
.about dt {
width: 18%;
margin-top: .5rem;
}
.about dd {
width: 80%;
margin-top: .5rem;
}
.about .about_logo {
width: 120px;
}
/* .row-fixed
----------------------------------------------- */
.row-fixed {
	padding: 10px 0 10px;
}
.row-fixed[data-content-category="about"] {
	padding: 20px;
}
.row-fixed[data-content-category="about"] .flex {
display: block;
}
.row-fixed[data-content-category="about"] .flex div {
width: 100%;
}
.row-fixed[data-content-category="about"] .flex div:first-child {
font-size: 1.8rem;
font-weight: 900;
padding: 0 0 15px 10px;
text-align: left;
width: 100% !important;
}
.row-fixed[data-content-category="about"] .flex div:last-child {
border-left: none;
padding-left: 10px;
}
.row-fixed[data-content-category="about"] dl {
font-size: 1.4rem !important;
}
.row-fixed[data-content-category="about"] dt {
width: 18%;
margin-top: .5rem;
}
.row-fixed[data-content-category="about"] dd {
width: 80%;
margin-top: .5rem;
}
.row-fixed[data-content-category="about"] .about_logo {
width: 120px;
}
/* .pagetop
----------------------------------------------- */
.pagetop {
	float: right;
	margin-right: 10px;
}
.pagetop a {
	width: 54px;
	height: 54px;
}
.pagetop a:hover, .pagetop a:active, .pagetop a:focus {
	opacity: 1;
}
/* ----------------------------------------------------------------
    footer
----------------------------------------------------------------- */
/* .footer
----------------------------------------------- */
.footer {
	padding: 10px 0 0;
}
/* .copyright
----------------------------------------------- */
.copyright {
	padding-top: 15px;
	text-align:center;
	float: none;
}
/* ----------------------------------------------------------------
    Text
----------------------------------------------------------------- */
/* .list-check-01
----------------------------------------------- */
.list-check-01 {
	margin: 0 0 10px;
}
.list-check-01 > li {
	margin: 0 0 5px;	
	font-size: 1.6rem;
}
.list-check-01 > li .link-01 {
	font-weight: normal;
	margin-left: 0;
}
/* .list-notice-01
----------------------------------------------- */
.list-notice-01 {
	margin: 0 0 15px;
}
/* .list-def-01
----------------------------------------------- */
.list-def-01 {
	margin: 0 0 20px;
}
.list-def-01 > dt {
	margin: 0 0 5px;
}
.list-def-01 > dd {
	margin: 0 0 10px;
}
.list-def-01 .bg-01 {
	padding: 10px 15px 15px;
}
/* ----------------------------------------------------------------
    Links
----------------------------------------------------------------- */
/* .link-img
----------------------------------------------- */
.link-img > img:hover, .link-img > img:active, .link-img > img:focus {
	opacity: 1;
}
/* Font-size Control
----------------------------------------------- */
.fs-14 {
	font-size: 1.125rem !important;
}
.fs-16 {
	font-size: 1.2rem !important;
}
.fs-17, .fs-18 {
	font-size: 1.5rem !important;
}
.col.fs-18{
	font-size: 1.5rem !important;	
	}
.fs-20 {
	font-size: 1.5rem !important;
}
.fs-22 {
	font-size: 1.5rem !important;
}
.fs-24 {
	font-size: 1.6rem !important;
}
.fs-25 {
	font-size: 1.6rem !important;
}
/* .ul-button
----------------------------------------------- */
.ul-button li, .ul-button-2line li, .ul-button-03 li {
	width: 100%;
	margin: 5px 0 10px;
}
.ul-button-2line li {
	height: auto !important;
}
.ul-button-2line li .mt-10 {
	margin-top: 0 !important;
}
/* .clear-both
----------------------------------------------- */
/*#submenu
----------------------------------------------- */	
#menu-s ul li ul {
	display:none;
}
/**menu
----------------------------------------------- */
/*.fixed-menu {
    position: static;
}*/
[id^="anchor-"], [id^="anchor"] {
	margin-top: -55px !important;
	padding-top: 55px !important;
}
.hdg-label[id^="anchor-"] {
	display: block !important;
}
.pro h3 {
	font-size: 1.125rem !important;
}

/*bg
----------------------------------------------- */
.header.boder-b {
	border-bottom: none;
}
.app-box {
 	height: auto;
}/* .banner-01
----------------------------------------------- */
.banner-01 {
	font-weight: bold;
	font-size: 1.6rem;
}
.banner-01 a {
	width: 95%;
}
.banner-01 a span {
	padding: 17px 12px 17px 0;
}
/*#move-contact
----------------------------------------------- */
#move-contact, #move-pageto  { 
	display:none !important;
}
/**
----------------------------------------------- */
.step {
	display: none;
}
.header-inner.boder-b .mt-10.mb-15 {
	margin: 10px;
}
.dt-no {
	display:inline;
}
.dt-no-sp {
	display:none;
}
.tbl-01.w-85 {
	width: 100% !important;	
}
/* @media(max-width:767px) */	
	}
