@charset "utf-8";
/* CSS Document */
#container {
	min-width: 320px;
	margin-top: 50px;
	margin-right: auto;
	margin-left: auto;
}

.remodal-is-opened {
	display: block !important;
}
@media screen and ( max-width:820px ) {
	.pc{
		display: none!important;	
	}
}
#sp_footer_banner  {
	display: flex;
	background-size: cover;
	padding: 0;
	position: fixed;
	bottom: 0;
	text-align: center;
	z-index: 9999;
	width: 100%;
}
#sp_footer_banner p {
	display: inline-block;
	width: 90%;
	margin: 0 2%;
}

#sp_footer_banner a {
	display: inline-block;
	animation: furu 2s infinite;
}

/* #sp_footer_banner.active {

}
@keyframes furu {
    0% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
    4% {
        transform: translate(0px, 0px) rotateZ(1deg)
    }
    8% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
    12% {
        transform: translate(0px, 0px) rotateZ(-1deg)
    }
    16% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
    20% {
        transform: translate(0px, 0px) rotateZ(1deg)
    }
    24% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
    28% {
        transform: translate(0px, 0px) rotateZ(-1deg)
    }
    32% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
    36% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
    100% {
        transform: translate(0px, 0px) rotateZ(0deg)
    }
} */








#header {
	position: fixed;
	top: 0;
	z-index: 10000;
	width: 100%;
	padding-top: 0px;
	padding-bottom: 0px;
	height: 50px;
	background: #fff;
}
#h_logo,#h_logo2 {
	width: 200px;
	position: absolute;
	left: 10px;
	top: 5px;
}
#h_tel {
	display: none;
}
#header h1 {
	display: none;
}
#h_nav {
	display: none;
}
#footer .copyright {
	font-size: 10px;
	padding-bottom: 16vw;
}
#footer #f_nav {
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #FCFBF8;
}
#f_nav ul {
	width: auto;
	margin-right: 10px;
	margin-left: 10px;
	text-align: center;
}
#f_nav ul li a {
	font-size: 14px;
	color: #918A86;
	text-decoration: none;
	padding-right: 20px;
	display: block;
	line-height: 20px;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	background-size:8px auto;
}
#f_nav ul li {
	display: inline;
	margin-right: 0%;
	margin-left: 2%;
	width: 49%;
	float: left;
	border-bottom-width: 2px;
	border-bottom-style: dotted;
	border-bottom-color: #DFDBD9;
}
#f_nav ul li:nth-child(2n+2) {
	clear: left;
	margin-left: 0px;	
}
#f_nav li.home{
	margin-right: 0%;
	margin-left: 0%;
	width: 100%;
	border-bottom-width: 2px;
	border-bottom-style: dotted;
	border-bottom-color: #DFDBD9;
}
#footer_contents {
	width: auto;
	padding-top: 40px;
	padding-bottom: 20px;
}
#f_box01 {
	float: none;
	width: auto;
}
#f_box02 {
	float: none;
	width: auto;
	margin-right: 10px;
	margin-left: 10px;
}
/*.f_list01_hosoku {
	margin-left: 0;
    margin-top: 5px;
    font-size: 13px;
	 padding-left: 1em;
 text-indent: -1em;
}*/
.f_list01_hosoku_sp{
	font-size: 13px;
}
#f_logo {
	padding:0 auto;
	max-width: 80%;
	width: 100%;
}
#footer #f_logo a{
	text-align: center;
}
#f_logo img {
	width: auto;
	margin: 0 auto;
}

#f_tel {
	display: none;
}
#footer .sec {
	padding-bottom: 60px;
	position: relative;
}

a.scrollpagetop {
	height: 0;
	overflow: hidden;
	padding-top: 27px;
	width: 27px;
	background-size: 27px auto;
	display: block;
	margin-top: -50px;
}



#h_menu {
	height: 50px;
	width: 50px;
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
}
#menu {
	display: block;
}
.menu {
	position: fixed;
	z-index: 200;
	left: 0px;
	top: 0px;
	width: 100%;
	min-width: 320px;
	display: none;
}
#sp_menubox .h_close {
	height: 50px;
	width: 50px;
	position: absolute;
	z-index: 1;
	top: 0px;
	right: 0px;
}

#sp_menubox .head {
	background-color: #FFFFFF;
	height: 50px;
	width: 100%;
	position: relative;
}

#sp_menu {
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #FCFBF8;
}
#sp_menu ul {
	width: auto;
	margin-right: 10px;
	margin-left: 10px;
	text-align: center;
}
#sp_menu ul li a {
	font-size: 14px;
	color: #918A86;
	text-decoration: none;
	padding-right: 20px;
	display: block;
	line-height: 20px;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	background-image: url(../img/f_ico01.png);
	background-size: 8px auto;
	background-repeat: no-repeat;
	background-position: right 10px center;
}
#sp_menu ul li {
	display: inline;
	margin-right: 0%;
	margin-left: 2%;
	width: 49%;
	float: left;
	border-bottom-width: 2px;
	border-bottom-style: dotted;
	border-bottom-color: #DFDBD9;
}
#sp_menu ul li:nth-child(2n+2) {
	clear: left;
	margin-left: 0px;	
}
#sp_menu li.home{
	margin-right: 0%;
	margin-left: 0%;
	width: 100%;
	border-bottom-width: 2px;
	border-bottom-style: dotted;
	border-bottom-color: #DFDBD9;
}

#page_contents {
	min-width: 320px;
	margin-bottom: 5%;
}

.contents {
	width: 100%;
	margin: 0 auto;
}
.contents h2 {
    color: #726C66;
    font-size: 20px;
    text-align: center;
    background: url(//images/icon_01.png) top center no-repeat;
    padding: 50px 0 0;
    margin: 50px 0 30px;
}



/*-----------------------------------------------------------------------
* 交通アクセス
-------------------------------------------------------------------------*/

.access .contents_title {
	background: url(./images/tit_bg05.jpg) no-repeat center center;
	background-size:cover;
}
#access01 {
	width: 94%;
	margin: 0 auto 80px;
}
.access .f_l {
	float: none;
	margin-bottom: 5%;
}
.access .access_table {
	width: 100%;
	float: none;
	
}

.access .access_table tr th,
.access .access_table tr td {
	width: 100%;
	float: left;
	padding: 3% 5%;
}
.access .access_table tr th{
	border-bottom: none;
	padding-bottom: 1%;
}
.access .access_table tr td{
	padding-top: 0;
}
/*
.access .access_table table {
	width: 100%;
	border-collapse:separate;
	border: 3px solid  #ccc;
	border-radius: 10px;
}
.access .access_table tr {
	
}
.access .access_table th {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: left;
	background-color: #a09a96;
	border-bottom: 1px solid  #ccc;
	padding: 15px;
	border-collapse:separate;
	box-sizing: border-box;
}
.access .access_table tr:first-child th {
	border-top-left-radius:7px;
	border-top-right-radius:7px;
}
.access .access_table tr:first-child td {
	border-top-right-radius:0px;
}
.access .access_table tr:last-child th {
	border-bottom-left-radius:0px;
}
.access .access_table tr:last-child td {
	border-bottom-right-radius:7px;
	border-bottom-left-radius:7px;
}
.access .access_table td {
	display: block;
	width: 100%;
	color: #645e59;
	font-size: 14px;
	padding: 15px;
	box-sizing: border-box;
}
.access .access_table tr:nth-child(odd) td {
	background-color: #fcfbf8;
}
.access .access_table td a {
	color: #645e59;
	font-size: 14px;
	text-decoration: none;
	pointer-events: auto;
}
*/


div#access01 .clearfix,
div#access02 .clearfix,
div#access03 .clearfix{
	flex-direction: column;
}
div#access03 {
	width: 100%;
	margin:0 auto;
}

.access .access_map {
	
	margin: 60px auto;
}
.access .access_map iframe {
	width: 100%;
	height: 450px;
	border: 3px solid  #ccc !important;
	border-radius: 10px;
	margin-bottom: 40px;
	box-sizing: border-box;
}
.access .access_map p.link {
	display: none;
	
}
.access .access_map p a {
	display: inline-block;
}

.access .access_route {
	background-color: #fcfbf8;
	border: 3px solid  #e1dfdd;
	border-radius: 10px;
	padding: 35px 0 40px;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}
.access .access_route ul {
	font-size: 0;
	padding: 0;
	text-align: center;
}
.access #access01 .access_route ul, 
.access #access02 .access_route ul, 
.access #access03 .access_route ul {
	padding: 0;
}
.access #access01 .access_route li, 
.access #access02 .access_route li, 
.access #access03 .access_route li {
	display: inline-block;
	text-align: center;
	width: 94%;
	box-sizing: border-box;
	margin: 0 3% 10%;
}
.access .access_route li h3 {
	color: #393939;
	font-size: 20px;
	font-weight: bold;
	line-height: 100%;
	margin: 12px 0;
}
.access .access_route li h4 {
	color: #393939;
	font-size: 14px;
	line-height: 100%;
}


#access02 {
	background-color: #f1f9fb;
	padding: 9% 0;
}
#access02 ul {
	width: 94%;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
#access02 li {
	display: inline-block;
	margin-right: 0px;
	margin-bottom: 10px;
}
#access02 li:nth-child(3n) {
	margin-right: 0;
}





/*-----------------------------------------------------------------------
* スタッフ紹介
-------------------------------------------------------------------------*/

.staff .contents_title {
	background: url(./images/tit_bg04.jpg) no-repeat center center;
	background-size:cover;
}
#staff01 {
	text-align: center;
	width: 94%;
	margin: 0 auto;
}
#staff01 .text {
	color: #393939;
	font-size: 16px;
	font-weight: bold;
	line-height: 200%;
	text-align: left;
}





/*-----------------------------------------------------------------------
* 料金表
-------------------------------------------------------------------------*/

.cost .contents_title {
	background: url(./images/tit_bg06.jpg) no-repeat center center;
	background-size:cover;
}
.cost .contents{
	padding: 0 2%;
	box-sizing: border-box;
}
.cost .contents p{
	margin-bottom: 1em;
}
#cost01 {
	width: 100%;
	margin: 0 auto;
}
#cost01 h3 {
	color: #F58B05;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	background: url(../../img/cost/cost_h3_line.png) no-repeat center bottom;
	padding-bottom: 10px;
	margin-bottom: 40px;
}
#cost01 table {
	width: 94%;
	margin: 0 auto;
	border-collapse:separate;
	border: 3px solid  #ccc;
	border-radius: 10px;
	margin-bottom: 5%;
	position: relative;
}
#cost01 p.comment {
	width: 94%;
	margin: 0 auto 9%;
}
#cost01 tr {
	
}

#cost01 th {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	background-color: #a09a96;
	border-bottom: 1px solid  #ccc;
	padding: 15px;
	border-collapse:separate;
	box-sizing: border-box;
}
#cost01 tr:first-child th {
	border-top-left-radius:7px;
	border-top-right-radius:7px;
}
#cost01 tr:first-child td {
	border-top-right-radius:0px;
}
#cost01 tr:last-child th {
	border-bottom-left-radius:0px;
}
#cost01 tr:last-child td {
	border-bottom-right-radius:7px;
	border-bottom-left-radius:7px;
}
#cost01 td {
	display: block;
	width: 100%;
	color: #645e59;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	padding: 15px;
	padding-left: 0px;
	box-sizing: border-box;
}
#cost01 td span {
	color: #a09a96;
	font-size: 12px;
	font-weight: bold;
}
#cost01 tr:nth-child(odd) td {
	background-color: #fcfbf8;
}



/*-----------------------------------------------------------------------
* 交通事故
-------------------------------------------------------------------------*/

.accident .contents_title {
	background: url(./images/tit_bg02.jpg) no-repeat center center;
	background-size:cover;
}
#accident01 {
	width: 100%;
	padding-bottom: 90px;
}
#accident01 .clearfix {
	width: 94%;
	margin: 0 auto;
}
#accident01 .f_l {
	float: none;
}
#accident01 .f_r {
	width: 100%;
	float: none;
	margin-top: 10px;
}
#accident01 p.text {
	color: #393939;
	font-size: 14px;
}
#accident01 ul {
	background: #fcfbf8;
	border: 3px solid  #e1dfdd;
	border-radius: 10px;
	margin: 20px 0;
	padding: 20px;
}
#accident01 li {
	color: #645e59;
	font-size: 14px;
	font-weight: bold;
	line-height: 180%;
}
#accident01 li:before {
	content: '●';
	color: #F58B05;
	margin-right: 5px;
}

#accident02 {
	background-color: #f1f9fb;
	padding: 60px 0 80px;
}
#accident02 h2 {
	width: 94%;
	margin: 0 auto 5%;
}
#accident02 .clearfix {
	width: 100%;
	margin: 0 auto;
}
#accident02 .f_l,
#accident02 .f_r {
	width: 94%;
	margin: 10px auto;
	float: none;
}
#accident02 p.text {
	color: #393939;
	font-size: 14px;
}
#accident02 ul {
	background: #fcfbf8;
	border: 3px solid  #e1dfdd;
	border-radius: 10px;
	margin: 0 0 20px;
	padding: 20px;
}
#accident02 li {
	color: #645e59;
	font-size: 14px;
	font-weight: bold;
	line-height: 180%;
}
#accident02 li:before {
	content: '●';
	color: #F58B05;
	margin-right: 5px;
}

#accident03 {
	padding: 9% 0;
}


/*-----------------------------------------------------------------------
* 矯正メニュー
-------------------------------------------------------------------------*/

.correction .contents_title {
	background: url(./images/tit_bg02.jpg) no-repeat center center;
	background-size:cover;
}
.correction_box {
	width: 94%;
	margin: 0 auto 10%;
}
.correction_box:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
.correction_left {
	width: 100%;
	float: none;
	padding-top: 6%;
	margin-bottom: 5%;
}
.correction_left h3 {
	color: #726c66;
	font-size: 20px;
	font-weight: bold;
	line-height: 100%;
	background: url(../img/line_01.png) no-repeat left bottom;
	padding-bottom: 15px;
	margin-bottom: 30px;
}
.correction_left p.text {
	color: #393939;
	font-size: 14px;
}
.correction_box .img {
	float: none;
}


/*-----------------------------------------------------------------------
* 施術メニュー
-------------------------------------------------------------------------*/

.treatment .contents_title {
	background: url(../images/tit_bg01.jpg) no-repeat center center;
	background-size:cover;
}
.treatment_box {
	width: 94%;
	margin: 0 auto 10%;
}
.treatment_box:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
.treatment_left {
	width: 100%;
	float: none;
	padding-top: 0;
	margin-bottom: 5%;
}
.treatment_left h3 {
	color: #726c66;
	font-size: 20px;
	font-weight: bold;
	line-height: 100%;
	background: url(../img/line_01.png) no-repeat left bottom;
	padding-bottom: 15px;
	margin-bottom: 4%;
}
.treatment_left p.text {
	color: #393939;
	font-size: 14px;
	margin: 3% auto 4.5%;
}
.treatment_left p.btn {
	width: 96% ;
	margin: 0 auto;
}
.treatment_left p.btn a {
	display: block;
	text-align: center;
}
.treatment_left p.btn a img{
	float: none;
	margin:0 auto ;
}
.treatment_box .img {
	float: none;
}

.even {
	background: url(../../img/treatment/treatment_bg.png);
	padding: 1px 0;
}













.top_flow_01,.top_flow_02,.top_flow_03,.top_flow_04,.top_flow_05,.top_flow_06{
    width: 100%;
    position: relative;
    display: flex;
    align-items: flex-start;
    padding: 0 20px;
}

.top_flow_img{
    width: 50%;
    position: relative;
    padding-bottom: 60px;
}
.top_flow_img::after{
    content: "";
    position: absolute;
    left: calc(50% - 29px);
    bottom:10px;
    width: 59px;
    height: 26px;
}
.top_flow_img img{
    width: 100%;
    height: auto;
}
.top_flow_contents p{
    width: 50%;
    padding: 0 0 0 20px;
}
.top_flow_01{
    order: 1;
}
.top_flow_02{
    order: 2;
}
.top_flow_03{
    order: 3;
    margin-bottom: 0;
}
.top_flow_04{
    order: 4;
}
.top_flow_05{
    order: 5;
}
.top_flow_06{
    order: 6;
}
.top_flow_06 .top_flow_img::after{
    display: none;
}
.top_flow_01::after,.top_flow_02::after,.top_flow_03::after,.top_flow_04::after,.top_flow_05::after,.top_flow_06::after{
    display: none;
}


/*tuika*/
.news .contents_bg,.blog .contents_bg{
	margin-top: 20px;
}
.news .contents_title h1,.notfound .contents_title h1{
	font-size: 32px;
	line-height: 1.4;
	padding: 90px 10px;
}
.treatment .contents_title h1{
	font-size: 5vw;
}
.category_info {
    padding: 10px;
}
.category_info:last-child{
	border-bottom: none;
}
.category_info .category_info_thumbnail img {
    width: 80px;
}
.category_info .category_info_text {
    position: relative;
    width: calc(100% - 90px);
}
.category_info .category_info_title {
    font-size: 1.0em;
}
.category_info .category_info_date_end {
    width: 100%;
    font-size: 14px;
    color: #4d4d4d;
    margin-top: 5px;
}
.category_info .category_info_thumbnail {
    margin-right: 10px;
}
.category_info .category_info_link {
    margin-top: 0;
}
#entry-content{
	padding: 0 10px;
}
.news #breadcrumb ul,.blog #breadcrumb ul {
    display: block;
}
.news #breadcrumb ul li,.blog #breadcrumb ul li {
	display: inline;
}
.pager_btn span a {
	padding: 5px 10px;
	font-size: 12px;
}
.pager_btn span.prev a {
	padding: 5px 5px;
}
.pager_btn span.next a {
	padding: 5px 5px;
}
.pager_btn span.prev {
	margin: 0 10px 0 0;
}
.pager_btn span.next {
	margin: 0 0 0 10px;
}
#blog_pagenavi {
	padding: 40px 0 30px 0;
	text-align: center;
}
.notfound .contents_bg{
	margin-top: 20px;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.notfound .contents_bg .text{
	text-align: left;
}
#f_nav .txt {
    color: #645e59;
    padding: 15px 0 15px 0;
	text-align: center;
}
#f_box01 .f_line{
	display: none;
}
#f_nav .f_line{
	width: auto;
    margin-right: 10px;
    margin-left: 10px;
	display: block;
}
#correction01 .sangobtn{
	margin-top: 15px;
	text-align: center;
}

/*-----------------------------------------------------------------------
* 産後
-------------------------------------------------------------------------*/
#sango01 {
    width: 94%;
    margin: 0 auto 40px;
}
.sango03 {
   	width: 94%;
    margin: 40px auto 25px auto;
}
.catch02 {
    font-size: 15px;
	line-height: 140%;
	letter-spacing: -0.05em;
	    margin-top: 10px;
    margin-bottom: 15px;
}
.catch02:before{
	left: -40px;
}
.catch02:after{
	right: -40px;
}
#sango01 .nayamibox01 {
    border: 2px solid #F58B05;
    margin-top: -20px;
    padding: 25px 15px 15px 15px;
    margin-bottom: 25px;
}
#sango01 .nayamibox01 .nayamibox01_in .img {
    position: inherit;
    right: inherit;
    top: inherit;
}
.fukidashi01 {
    margin-top: 15px;
    margin-bottom: 10px;
}
#sango01 .nayamibox01 .nayamibox01_in {
    border: 2px solid #e1dfdd;
    padding: 15px;
}
#sango01 .nayamibox01 .nayamibox01_in .list li {
    background: url(../../img/sango/img05.png) no-repeat left 5px;
	background-size: 20px 17px;
    padding-left: 25px;
    font-size: 14px;
}
#sango01 .nayamibox01 .title{
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
.fixtxt01 {
    font-size: 18px;
	margin-bottom: 20px;
}
.fixtxt01 span{
	display: inline-block;
	font-size: 28px;
}
.fixtxt02 .fz01 {
    font-size: 28px;
}
.fixtxt02 {
    font-size: 18px;
    line-height: 140%;
}
.fixtxt02 .fz02 {
    display: block;
}
.fourpoint .title {
    padding-bottom: 10px;
    margin-bottom: 20px;
    margin-top: 30px;
}
.fourpoint .pointbox {
    width: 100%;
    float: none;
	margin-bottom: 15px;
}
.fourpoint .pointbox:nth-child(2n+0) {
    float: none;
}
.fourpoint .pointbox:before{
left: -7px;
content: "";
width: 60px;
height: 60px;
	
}
.fourpoint .pointbox#point01:before,.fourpoint .pointbox#point02:before,.fourpoint .pointbox#point03:before,.fourpoint .pointbox#point04:before {
    background-size: 60px 60px;
}
.intitle {
    height: 40px;
    font-size: 18px;
    line-height: 40px;
    padding-left: 60px;
}
.fourpoint .pointbox .txt {
    padding: 15px 15px 10px 15px;
}
#sango01 .nayamibox01:after{
bottom: -20px;
	margin-left: -20px;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid #F58B05;
}
.fixtxt04:before {
    top: -20px;
    margin-left: -20px;
     border-left: 20px solid transparent;
  border-right: 20px solid transparent;
    border-top: 20px solid #e42c6a;
}
.fixtxt04 {
    font-size: 20px;
	margin-bottom: 15px;
}
.fixtxt04 span {
    font-size: 22px;
}
.voicebox .img {
    margin-left: 0;
}
.fixtxt05 {
    font-size: 18px;
    line-height: 140%;
    margin-bottom: 40px;
    margin-top: 15px;
}
.fixtxt05:after {
    bottom: -30px;
    margin-left: -20px;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #e42c6a;
}
.fixtxt06,.fixtxt06 + p,.fixtxt06 + p + p {
    margin-top: 20px;
    text-align: left;
}
.sango02 {
	padding: 40px 3% 15px 3%;
	width: 94%;
}
.flow .title {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 20px;
	line-height: 140%;
	background: url(../img/line_02.png) no-repeat left bottom;
}
.sixpoint .title {
    font-size: 18px;
    padding-bottom: 10px;
    margin-bottom: 20px;
	line-height: 140%;
	background: url(../img/line_02.png) no-repeat left bottom;
	text-align: left;
}
.qa .title {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 10px;
	line-height: 140%;
    background: url(../img/line_02.png) no-repeat left bottom;
}
.flowlist .fl_in .title02:after{
	border: none;
}
.flowlist .fl_in {
    float: none;
    width: 100%;
    margin-right: 0;
	position: relative;
}
.flowlist .fl_in:after{
    position: absolute;
    left: 50%;
    bottom: -28px;
    margin-left: -20px;
    content: "";
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-top: 20px solid #e42c6a;
}
.flowlist .fl_in .title02 {
    height: 40px;
    line-height: 40px;
    font-size: 20px;
    margin-bottom: 5px;
}
.sixpoint .pointbox .pointin {
    border: 2px solid #e1dfdd;
    width: 100%;	
    margin-bottom: 20px;
    padding: 15px 0;
}
.sixpoint .pointbox .pointin .title02:after {
    position: absolute;
    top: -30px;
    left: -7px;
    content: "";
    width: 60px;
    height: 60px;
}
.sixpoint .pointbox .pointin:nth-child(1) .title02:after,.sixpoint .pointbox .pointin:nth-child(2) .title02:after,.sixpoint .pointbox .pointin:nth-child(3) .title02:after,.sixpoint .pointbox .pointin:nth-child(4) .title02:after,.sixpoint .pointbox .pointin:nth-child(5) .title02:after,.sixpoint .pointbox .pointin:nth-child(6) .title02:after{
	background-size: 60px 60px;
}
.sixpoint .pointbox .pointin:nth-child(1) .title02, .sixpoint .pointbox .pointin:nth-child(4) .title02, .sixpoint .pointbox .pointin:nth-child(5) .title02 {
    padding-top: 0;
    padding-bottom: 0;
}
.sixpoint .pointbox .pointin .title02 {
    font-size: 24px;
    padding-left: 60px;
}
.sixpoint .pointbox .pointin .txt02 {
    padding-left: 15px;
    padding-right: 15px;
}
.sixpoint .pointbox .pointin img {
    padding-left: 15px;
    padding-right: 15px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.qabox dl {
    padding: 10px 0;
}
.qabox dt {
    background-size: 30px 30px;
    min-height: 30px;
    font-size: 16px;
    line-height: 30px;
    padding-left: 36px;
	margin-bottom: 5px;
}
.qabox dd {
	 background: url(../../img/sango/img21.png) no-repeat left top;
    background-size: 30px 30px;
    min-height: 30px;
    line-height: 160%;
    padding-left: 36px;	   
}
.fixtxt07 {
    text-align: left;
    font-size: 14px;
    margin-top: 20px;
    margin-bottom: 30px;
}
.addbox{
	padding: 15px;
}
.addbox .tel {
    margin: 0 10px 10px 10px;
}
.addbox .teltxt{
	margin-bottom: 15px;
}
.addbox .info {
    border: 2px solid #e1dfdd;
    width: 100%;
    padding: 15px 15px 5px 15px;
	margin-bottom: 10px;
}
.addbox .info dt {
    font-size: 14px;
    width: 70px;
    margin-bottom: 10px;
    margin-right: 10px;
}
.addbox .info dd {
    font-size: 14px;
    margin-bottom: 10px;
	float: left;
}
.flowlist .fl_in:last-child{
	margin-bottom: 20px;
}
.flowlist .fl_in:last-child:after {
    border: none;
}
.sptellink{
	pointer-events: visible;
}
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
	z-index: 9999999;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
	text-align: center;
	width: 90%;
}
.modal__content p{
	font-size: 22px;
	font-weight: 700;
	line-height: 1.6;
	color:#FFF;
	margin-bottom: 25px;
}
.modal__content .btn01{
	margin-bottom: 35px;
}
.js-modal-close.btn{
	position: absolute;
	top:20px;
	right: 20px;
}
.js-modal-close img{
	width: 25px;
}


ul.coupon_bnr{
	flex-direction: column;
}
ul.coupon_bnr li{
	width: 100%;
	padding:0 2% 2%;
}

/*初めての方へ|2023/03/09|追記*/
@media screen and (max-width: 821px){
	#first_all {
		max-width: 100%;
		width: auto;
	    height: auto;
	    margin: 0;
	    padding: 3.90625% 4% 7.8125% 4%;
	}
	#first_all h2 {
	    width: 100%;
	}
	.top08 .first_content {
	    padding: 0 0vw 0 0;
	}
	.top08 .first_content .first_left::before {
	    height: 0;
	}
	#first_all .top08 .first_content .first_right .first_right_text h3 {
	    font-size: 5.2vw;
	}
	.top08 .first_content .first_right .first_right_text p {
	    font-size: 3.8vw;
	    margin-bottom: 3%;
	    font-family: 'Noto Sans JP';
	}
	#first_all .inner {
	    display: flex;
	    flex-direction: column;
	    align-items: center;
	}
	#first_all .beginner01 .inner {
	    width: 100%;
	    height: auto;
	    margin: 0;
	    padding: 0;
	}
	#first_all .beginner01 .inner img {
	    width: 80%;
	    height: auto;
	    margin: 0 auto 3.90625% auto;
	    padding: 0;
	}
	#first_all .beginner01 .inner p {
	    font-family: "Noto Sans JP", sans-serif;
	    font-size: clamp( 15px, 3.8vw, 16px );
	    font-weight: 400;
	    line-height: 1.6em;
	    color: #333333;
	    margin-bottom: 2.604166666%;
	}
	#guide_page div#guide_image {
	    padding: 0;
	    margin-bottom: 20px;
	    flex-direction: column;
	}
	#guide_page div#guide_image:before {
	    width: 100%;
	    height: auto;
	    right: 0;
	    top: 32vw;
	    bottom: 10px;
	}
	#guide_page div#guide_image figure.guide_image_img {
	    width: 80%;
	}
	#guide_page div#guide_image .guide_image_text {
	    width: 80%;
	    padding-bottom: 25px;
	}
	#first_all .guide_image_text h3 {
	    font-size: 22px;
	    margin-bottom: 20px;
	    padding: 0;
	    border: none;
	}
	#first_all #guide_image.wrap2 .guide_image_text h3 {
	    font-size: 22px;
	    margin-bottom: 20px;
	    padding: 0;
	    border: none;
	}
	#guide_page div#guide_image.wrap2 {
	    padding: 0;
	    margin-bottom: 20px;
	    flex-direction: column;
	}
	#guide_page div#guide_image.wrap2:before {
	    width: 100%;
	    height: auto;
	    left: 0;
	    top: 42vw;
	    bottom: 15px;
	}
	#first_all .beginner01 {
	    width: 100%;
	    height: auto;
	    margin: 0;
	    padding: 0;
	    display: table;
	}
	#first_all .beginner01 .inner {
	    width: 100%;
	    height: auto;
	    margin: 0;
	    padding: 0;
	}
	#first_all .beginner01 .inner .cover {
	    margin-top: 20px;
	    text-align: center;
	}
	#first_all .beginner01 .inner .cover img {
	    width: auto;
	    height: auto;
	    margin: 0 auto;
	    padding: 0;
	    float: none;
	}
	#first_all .beginner01 .inner .cover ul {
	    width: auto;
	    height: auto;
	    margin: 0;
	    padding: 0;
	    float: none;
	    text-align: initial;
	}
	#service2 .first_button a:before {
	    right: 60px;
	}
	#top_cases .top_title .title01 {
	    padding: 50px 0 0;
	    margin: 0px 0 30px;
	}
	.abox #service2 .wrap {
	    background: #fff;
	    max-width: 1100px;
	    width: 90%;
	    margin: 0px auto;
	    padding: 25px;
	    border-radius: 20px;
	    -webkit-box-shadow: 0px 0px 10px rgb(0 0 0 / 25%);
	    -moz-box-shadow: 0px 0px 10px rgb(0,0,0,0.25);
	    box-shadow: 0px 0px 10px rgb(0 0 0 / 25%);
	    box-sizing: border-box;
	}
}



/*popup*/

div#popuptel_wrap{
  position:fixed;
  top:0;
  left:0;
  opacity:0;
  overflow:hidden;
  height:0;
}
input#sp-popup:checked+#popuptel_wrap{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100vw;
  opacity:1;
  transition:all 0.3s ease;
  height:100vh;
  z-index:99999999999999999999999999;
  box-shadow:0 0 0 #555;
}
input#sp-popup:checked+#popuptel_wrap::before {
  background:#fffdf4;
  opacity:0.85;
  content:'';
  width:100vw;
  height:100%;
  position:absolute;
  top:0;
  left:0;
  display:block;
  z-index:-10;
}

div#popuptel_wrap div.popuptel_inner{
  background-color:#fff;
  border-radius:8px;
  display:block;
  margin: auto;	
  max-width: 500px;
  width:75%;
  height:auto;
  padding:15px 0;
  z-index:0;
  box-shadow:0 0 10px 0px #c6cdce;
}
div#popuptel_wrap div.popuptel_inner>p{
  font-size:4.5vw;
  line-height:1.35em;
  font-weight:500;
  text-align:center;
  display:block;
  color:#333;
  max-width: 80%;
  margin: 0 auto;
}
div#popuptel_wrap div.popuptel_inner>p img{
  max-width: 90%;
  margin: 0 auto;
}
div#popuptel_wrap div.popuptel_inner ul{
  width:100%;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  padding:3.5vw 0;
  background:#ffecc9;
  margin:3.5vw 0 4vw;
}
div#popuptel_wrap div.popuptel_inner ul li{
  width:45%;
  margin:0 auto;
  border-radius:1.5vw;
  padding-bottom:3vw;
}
div#popuptel_wrap div.popuptel_inner ul li:nth-child(1){
  background-color:#80f4c3;
  background-image:-moz-linear-gradient(150deg, #ffb23e 0%,#fd791c 100%);
  background-image:-webkit-linear-gradient(150deg, #ffb23e 0%,#fd791c 100%);
  background-image:linear-gradient(150deg, #ffb23e 0%,#fd791c 100%);
  filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#80f4c3', endColorstr='#0cb6e3',GradientType=1 );
}
div#popuptel_wrap div.popuptel_inner ul li:nth-child(2){
  background-color:#e8f57c;
  background-image:-moz-linear-gradient(150deg, #ffa35d 0%,#f9650c 99%);
  background-image:-webkit-linear-gradient(150deg, #ffa35d 0%,#f9650c 99%);
  background-image:linear-gradient(150deg, #ffa35d 0%,#f9650c 99%);
  filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#32d4f4', endColorstr='#1986af',GradientType=1 );
}
div#popuptel_wrap div.popuptel_inner ul li a{
  display:block;
  text-decoration:none;
  color:#fff;
  font-size:3.75vw;
}
div#popuptel_wrap div.popuptel_inner ul li span{
  width:9vw;
  background-color:#fff;
  height:9vw;
  border-radius:800px;
  text-align:center;
  display:flex;
  align-items:center;
  margin:3vw auto;
  background-position:center;
  background-size:70% auto;
  background-repeat:no-repeat;
}
div#popuptel_wrap div.popuptel_inner ul li span i{
  margin:0 auto;
  font-size:4.2vw;
}
div#popuptel_wrap div.popuptel_inner ul li:nth-child(1) span{
  background-image: url('../../../images/popup_tel01.png');
}
div#popuptel_wrap div.popuptel_inner ul li:nth-child(2) span{
  background-image: url('../../../images/popup_tel01.png');
}
div#popuptel_wrap div.popuptel_inner ul li b{
  text-align:center;
  display:block;
  letter-spacing:1px;
  font-weight:500;
  color:#fff;
  text-shadow:0 0 1px #4f4f4f;
}
div#popuptel_wrap div.popuptel_inner label{
  background-color:#77B131;
  width:80%;
  border-radius:5000px;
  text-align:center;
  display:block;
  padding:1.25vw;
  position:relative;
  color:#fff;
  max-width:280px;
  padding:8px 0;
  margin:0vw auto 0;
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-content:center;
  justify-content:center;
  align-items:center;
}
div#popuptel_wrap div.popuptel_inner label::before{
  border-left:2px solid;
  border-top:2px solid;
  border-color:#fff;
  content:"";
  height:6px;
  position:absolute;
  right:15px;
  -moz-transform:rotate(135deg);
  -webkit-transform:rotate(135deg);
  -ms-transform:rotate(135deg);
  transform:rotate(135deg);
  width:6px;
}
div#popuptel_wrap div.popuptel_inner label span{
  letter-spacing:1px;
  color:#fff;
  font-weight:600;
  text-shadow:0 0 1px #4f4f4f;
}