/* ---------------------------------------------------------------
start COMMON CSS
--------------------------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Sans:ital@0;1&family=Noto+Serif+Hentaigana:wght@200..900&family=Noto+Serif+JP:wght@600&display=swap');

@font-face {
	font-family: 'hannari';
	font-style: normal;
	font-display: swap;
	src: local("HuiFontP109"),
		url(../fonts/HannariMincho-Regular.woff2) format('woff2'),
		url(../fonts/HannariMincho-Regular.woff) format('woff'),
		url(../fonts/HannariMincho-Regular.otf) format('opentype');
}

* {
	-webkit-box-sizing : border-box ;
	-moz-box-sizing : border-box ;
	box-sizing : border-box ;
}

body {
	width: 100%;
	margin: 0;
	padding: 0;
	color: #231815;
	font-size: 16px;
	line-height: 1.75;
	font-weight: 400;
	font-family: 'Noto Sans JP', Meiryo, sans-serif;
	-webkit-text-size-adjust: 100%;
	opacity: 0;
	overflow-x: hidden;
	overflow-y: auto;
	position: relative;
	z-index: 0;
	transition: opacity .1s;
}

body.font-load {
	opacity: 1;
}

.mincho {
	font-family: 'hannari', serif;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

a {
	outline: none;
	color: #e97279;
	text-decoration: underline;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	cursor: pointer;
}

a:hover {
	text-decoration: none;
	cursor: pointer;
}

button {
	outline: none;
}

img {
	width: 100%;
	height: auto;
	border: none;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic !important;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	backface-visibility: hidden;
}

p {
	margin: 0 0 15px 0;
	padding: 0;
}

h1,h2,h3,h4,h5,h6 {
	margin: 0;
	padding: 0;
	font-size: .8em;
	font-weight: normal;
}

ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0px;
}

.aligncenter {
	text-align: center;
}

.alignright {
	text-align: right;
}

.alignjust {
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}

.bold{font-weight: 700;}

.mt5 {margin-top: 5px;}
.mt10 {margin-top: 10px;}
.mt15 {margin-top: 15px;}
.mt20 {margin-top: 20px;}
.mt25 {margin-top: 25px;}
.mt30 {margin-top: 30px;}
.mt35 {margin-top: 35px;}
.mt40 {margin-top: 40px;}
.mt45 {margin-top: 45px;}
.mt50 {margin-top: 50px;}
.mt55 {margin-top: 55px;}
.mt60 {margin-top: 60px;}
.mt65 {margin-top: 65px;}
.mb5 {margin-bottom: 5px;}
.mb10 {margin-bottom: 10px;}
.mb15 {margin-bottom: 15px;}
.mb20 {margin-bottom: 20px;}
.mb25 {margin-bottom: 25px;}
.mb30 {margin-bottom: 30px;}
.mb35 {margin-bottom: 35px;}
.mb40 {margin-bottom: 40px;}
.mb45 {margin-bottom: 45px;}
.mb50 {margin-bottom: 50px;}
.mb55 {margin-bottom: 55px;}
.mb60 {margin-bottom: 60px;}
.mb65 {margin-bottom: 65px;}
.ml1em {margin-left: 1em;}

.w100{
	width: 100%;
}

.mb35.online{
	line-height: 1.6;
}

.fleft {
	float: left;
}

.fright {
	float: right;
}

.note {
	font-size: .7em;
}

.red {
	color: #e60012;
}

.under {
	text-decoration: underline;
}

.iblock {
	display: inline-block;
}

.indent1 {
	padding-left: 1em;
	text-indent: -1em;
}

.indent1 * {
	text-indent: 0;
}

.fade-in {
	opacity: 0;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	position: relative;
}

.scroll-in,
.fade-in.active {
	opacity : 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.delay01 {
	-webkit-transition-delay: 0.1s;
    transition-delay: 0.1s;
}
.delay02 {
	-webkit-transition-delay: 0.2s;
    transition-delay: 0.2s;
}
.delay03 {
	-webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}
.delay04 {
	-webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}
.delay05 {
	-webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}
.delay06 {
	-webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.goTop10 {
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
}
.goTop15 {
	-webkit-transform: translate3d(0,15px,0);
	transform: translate3d(0,15px,0);
}
.goLeft15 {
	-webkit-transform: translate3d(15px,0,0);
	transform: translate3d(15px,0,0);
}
.goLeft30 {
	-webkit-transform: translate3d(30px,0,0);
	transform: translate3d(30px,0,0);
}
.goRight30 {
	-webkit-transform: translate3d(-30px,0,0);
	transform: translate3d(-30px,0,0);
}
.goBottom10 {
	-webkit-transform: translate3d(0,-10px,0);
	transform: translate3d(0,-10px,0);
}




/* --------------- header --------------- */

header {
	width: 100%;
	height: 82px;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

header.subpage {
	background-color: rgba(255,255,255,0.7);
}

.inner_header {
	width: 100%;
	max-width: 1150px;
	height: 100%;
	margin: 0 auto;
	padding: 0 50px 0 18px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
}

.logo_header {
	width: 322px;
}

.logo_header .txt {
	margin: 0 0 7px;
	color: #fff;
	font-size: 15px;
	line-height: 1;
	display: inline-block;
	vertical-align: bottom;
}

.subpage .logo_header .txt {
	color: #231815;
}

.nav_header {
	width: calc(100% - 322px);
	margin: 0;
	padding: 0 10px 0 20px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

.nav_header ul {
	width: 100%;
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	   -ms-flex-pack: end;
	 justify-content: flex-end;
}

.nav_header ul li {
	margin: 0;
	padding: 0 14px;
	position: relative;
	z-index: 0;
}




.nav_header ul li a {
	padding: 0 4px;
	line-height: 1.2;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 0;
}

.nav_header ul li a span.inner {
	margin: 0;
	padding: 0;
}

header.subpage .nav_header ul li a {
	color: #231815;
}

header.subpage .nav_header ul li .subnav_header a {
	color: #fff;
}

header.subpage .nav_header ul li .subnav_header a:hover{
	color: #e14848;
}


header.subpage .nav_header ul li.active a {
	color: #e14848;
}

.nav_header ul li a:after {
	content: "";
	width: 0%;
	height: 2px;
	margin: 0;
	padding: 0;
	background-color: #e14848;
	position: absolute;
	left: 0;
	bottom: -4px;
	transition: all .3s;
}

.nav_header ul li a:hover:after {
	width: 100%;
}

.subnav_header{
	width: 260px;
	margin: 0;
    padding: 0;
    font-size: 17px;
    font-weight: normal;
    background-color: #e14848;
    box-sizing: border-box;
    position: fixed;
    top: 75px;
    left: calc(50% + 105px);
    text-align: center;
}

.box_subnav2{
	width: 100%;
    margin: 0 auto;
    padding: 0;
    text-align: left;
    justify-content: center;
    display: block;
}

.subnav_header dl{
	margin: 0;
    padding: 0;
    position: relative;
}

.subnav_header dl:first-child::before{
	content: "";
    width: 0;
    height: 0;
    margin: auto;
    border-style: solid;
    border-width: 0 17px 25px 17px;
    border-color: transparent transparent #e14848 transparent;
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    transition: all .2s;
}


.subnav_header dl dt{
	width: 100%;
    padding: 0;
    border-bottom: solid 1px #fff;
    padding: 0;
    position: relative;
}

.subnav_header dl dt:before,.subnav_header dl dt:after{
			content: "";
        width: 15px;
        height: 2px;
        background-color: #fff;
        position: absolute;
        transition: all .3s;
}

.subnav_header dl dt:before{
		top: 27px;
        right: 18px;
	}

.subnav_header dl dt:after{
		top: 27px;
        right: 18px;
        transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
	}

.subnav_header .box_subnav2 dl dd a:before{
	content: "";
        width: 7px;
        height: 7px;
        margin: auto;
        position: absolute;
        top: 0;
        bottom: 0;
        right: auto;
        left: 32px;
        display: block;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
}


.subnav_header .box_subnav2 dl dd a:after{
	content: "";
        width: 7px;
        height: 7px;
        margin: auto;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 20px;
        left: auto;
        display: block;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}

.subnav_header .box_subnav2 dl dd a:hover::before{
	border-top: 1px solid #e14848;
    border-right: 1px solid #e14848;
}

.subnav_header .box_subnav2 dl dd a:hover::after{
	border-top: 2px solid #e14848;
        border-right: 2px solid #e14848;
        background-color: #fbe4e4;
}

.subnav_header a{
	margin: 0 8px;
    padding: 6px;
    color: #222;
    text-decoration: none;
    display: inline-block;
    text-indent: -15px;
    padding-left: 15px;
}

.subnav_header dd{
	width: 100vw;
    margin: 0;
    padding: 1% 5%;
    font-size: 16px;
    font-weight: normal;
    background-color: rgba(214, 235, 235, 0.9);
    box-sizing: border-box;
    position: fixed;
    top: 113px;

}

.subnav_header dl dd{
	width: 100%;
    margin: 0;
    padding: 0;
    line-height: 1.3;
    background: none;
    display: block;
    transform: none;
    position: static;

}

.subnav_header a{
	margin: 0 8px;
    padding: 6px;
    color: #222;
    text-decoration: none;
    display: inline-block;
    text-indent: -15px;
    padding-left: 15px;
}

.subnav_header .box_subnav2 a {
   width: 100%;
    padding: 15px 35px;
    display: block;
    position: relative;
    z-index: 0;
    margin: 0;
}



.subnav_header .box_subnav2 dl dd a{
    display: block;
    text-indent: -12px;
    border-bottom: dotted 1px #fff;
    padding: 15px 18px 15px 60px;
}


.subnav_header .box_subnav2 dl dd a:last-of-type{
	    border-bottom: solid 2px #fff;

}

.subnav_header .box_subnav2 dl dd a.noline{
    border-bottom: none;
}

.subnav_header .box_subnav2 dl dd a:hover{
	background-color: #fbe4e4;
	color: #e14848;
    transition : .3s;
}

.subnav_header .box_subnav2 dl dt:hover{
		background-color: #fbe4e4;
	color: #e14848;
    transition : .3s;

}

.subnav_header .box_subnav2 dl dt:hover a{
		color: #e14848;

	
}

.subnav_header .box_subnav2 dl dt:hover::before{
	background-color: #e14848;
}

.subnav_header .box_subnav2 dl dt:hover::after{
	background-color: #e14848;
}

img.sub_img{
	width: 10px;
    height: 7px;
    margin: 0 5px 0 1em;
}

.btn_fixed_contact {
	margin: 0;
	padding: 0;
	position: absolute;
    top: 0;
    right: 0;
}

.btn_fixed_contact a {
	width: 107px;
	height: 94px;
	color: #fff;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background-color: #e14848;
	border-radius: 5px 0 0 5px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
	transition: .2s;
}

.btn_fixed_contact a.line_btn{
	background-color: #00B900;
}

.btn_fixed_contact a .inner {
	display: inline-block;
	line-height: 1.22;
}

.btn_fixed_contact a .inner img {
	width: 26px;
	margin-bottom: 2px;
	display: inline-block;
	vertical-align: baseline;
}

.btn_fixed_contact a .inner img.line {
	width: 28px;
}

.notice_fixed_contact {
	padding: 13px 13px;
	color: #e14848;
	word-break: keep-all;
	background-color: #fff;
	border: solid 1px #e14848;
	position: absolute;
	top: 205px;
	right: 0;
	z-index: 0;
}

.notice_fixed_contact.active {
	font-size: 27px;
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
}

.notice_fixed_contact.no-active {
	width: 188px;
	color: #231815;
	font-size: 15px;
	line-height: 1.5;
	word-break: break-all;
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}

.notice_fixed_contact.no-active .close {
	width: 19px;
	height: 19px;
	margin: 10px auto 0;
	background-color: rgba(55,42,32,0.65);
	border-radius: 50%;
	position: relative;
	z-index: 0;
}

.notice_fixed_contact.no-active .close:before,
.notice_fixed_contact.no-active .close:after {
	content: "";
	width: 13px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	top: 9px;
}

.notice_fixed_contact.no-active .close:before {
	transform: rotate(45deg);
	left: 3px;
}

.notice_fixed_contact.no-active .close:after {
	transform: rotate(-45deg);
	left: 3px;
}

.notice_fixed_contact:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7px 14px 7px;
	border-color: transparent transparent #e14848 transparent;
	position: absolute;
	top: -14px;
	right: 10px;
}

.notice_fixed_contact:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7px 14px 7px;
	border-color: transparent transparent #fff transparent;
	position: absolute;
	top: -10px;
	right: 10px;
}

.btn_header_contact,
#menubtn {
	display: none;
}






/* --------------- footer --------------- */

footer {
	margin: 0;
	padding: 30px 0 0 0;
}

.inner_footer {
	margin: 0;
	padding: 0;
}

.mds_footer_contact1 {
	margin: 0 0 10px;
	padding: 0;
	font-size: 38px;
	color: #e14848;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.txt_footer_contact1 {
	margin: 0 0 15px;
	padding: 0;
	text-align: center;
}

.btn_footer_contact {
	max-width: 282px;
	margin: 0 auto 48px;
	padding: 16px 0;
	color: #fff;
	font-size: 19px;
	line-height: 1.2;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	background-color: #e14848;
	background-image: url(../img/icon_mail.gif);
	background-size: 23px auto;
	background-repeat: no-repeat;
	background-position: center left 20px;
	border-radius: 6px;
	display: block;
	position: relative;
	z-index: 0;
	transition: .2s;
}

.btn_footer_contact .inner {
	padding: 0 0 0 12px;
}

.btn_footer_contact:after {
	content: "";
	width: 7px;
	height: 7px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	display: block;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

dl.logo_footer {
	max-width: 996px;
	margin: 0 auto;
	padding: 45px 0 35px 0;
	text-align: center;
	border-top: solid 1px #231815;
}

dl.logo_footer dt {
	margin: 0 0 10px;
	padding: 0;
	font-size: 15px;
	line-height: 1;
}

dl.logo_footer dd {
	max-width: 429px;
	margin: 0 auto;
	padding: 0;
}

.copyright {
	padding: 9px 10px;
	color: #fff;
	font-size: 14px;
	text-align: center;
	line-height: 1;
	background-color: #231815;
}

.pagetop {
	width: 82px;
	height: 82px;
	margin: 0;
	padding: 0;
	text-indent: -9999px;
	background-color: rgba(89,87,87,0.6);
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	position: fixed;
	right: 15px;
	bottom: 15px;
	z-index: 5;
	cursor: pointer;
	transition: background .3s;
	-moz-transition: background .3s;
	-webkit-transition: background .3s;
	display: none;
}

.pagetop:before {
	content: "";
	width: 20px;
	height: 20px;
	margin: -6px 0 0 -10px;
	padding: 0 0 0 0;
	border-left: solid 2px #fff;
	border-top: solid 2px #fff;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 50%;
	transition: all .3s;
	-moz-transition: all .3s;
	-webkit-transition: all .3s;
}



/* --------------- common --------------- */


.mds1 {
	margin: 0;
	padding: 0 0 18px;
	font-size: 30px;
	line-height: 1.2;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	text-align: center;
	position: relative;
	z-index: 0;
}

.mds1:after {
	content: "";
	width: 78px;
	height: 3px;
	margin: auto;
	background-color: #e14848;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.col_pagettl {
	height: 288px;
	padding: 92px 0 0 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
}

.col_pagettl.news {
	background-image: url(../img/news/bg_pagettl.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}






/* --------------- top --------------- */

.col_topMain {
	width: 100%;
	height: 648px;
	background-image: url(../img/top/mainimg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
	overflow: hidden;
}

.inner_topMain {
	width: 98%;
	max-width: 1150px;
	height: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}

.catch_mainimg {
	color: #fff;
	line-height: 1;
	font-size: 43px;
	word-break: keep-all;
	letter-spacing: 0.25em;
	position: absolute;
	bottom: 55px;
	right: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
}

.catch_mainimg .icon_catch {
	width: 101px;
}

.catch_mainimg .inner {
	width: calc(100% - 101px);
	padding: 10px 0 0 0;
}

.catch_mainimg .catch1,
.catch_mainimg .catch2,
.catch_mainimg .catch3 {
	opacity: 0;
	transform: translateX(20px);
}

.catch_mainimg .catch1 {
	margin-bottom: 16px;
}

.catch_mainimg .catch2 {
	margin-left: 1em;
	margin-bottom: 16px;
}

.catch_mainimg .catch3 {
	margin-left: 2em;
}

.catch_mainimg .big {
	font-size: 60px;
}

.loadend .catch_mainimg .catch1 {
	animation: lead_main1 0.8s ease-in-out 0.5s forwards;
}
@keyframes lead_main1 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}

.loadend .catch_mainimg .catch2 {
	animation: lead_main2 0.8s ease-in-out 1s forwards;
}
@keyframes lead_main2 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}

.loadend .catch_mainimg .catch3 {
	animation: lead_main3 0.8s ease-in-out 1.5s forwards;
}
@keyframes lead_main3 {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}

.col_topNews {
	margin: 0;
	padding: 70px 0 90px 0;
}

.inner_topNews {
	width: 94%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 0;
}

.col_topNews .mds1 {
	margin-bottom: 40px;
}

.wrap_news {
	max-width: 960px;
	margin: 0 auto 45px;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.cont_news {
	width: 29%;
	margin: 0 6.5% 85px 0;
}

.col_topNews .cont_news {
	margin-bottom: 0;
}

.cont_news:nth-child(3n) {
	margin-right: 0;
}

.thumb_news {
	margin: 0 0 13px;
}

.cont_news dl {
	margin: 0;
	padding: 0;
}

.cont_news dl dt {
	margin: 0 0 10px;
	padding: 0 0 7px;
	line-height: 1.2;
	border-bottom: solid 1px #e14848;
}

.cont_news dl dd {
	margin: 0;
	padding: 0;
}

.cont_news dl dd audio {
	max-width: 100%;
}

.cont_news dd img {
	width: 6px;
	margin: 0 5px 6px;
}

.btn_topnews {
	width: 282px;
	margin: 0 auto;
	padding: 14px 15px 14px 0;
	color: #e14848;
	font-size: 18px;
	text-align: center;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	border: solid 1px #e14848;
	border-radius: 6px;
	position: relative;
	z-index: 0;
	display: block;
	transition: .2s;
}

.btn_topnews:after {
	content: "";
	width: 7px;
	height: 7px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 24px;
	display: block;
	border-top: 2px solid #e14848;
	border-right: 2px solid #e14848;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.emoji_news {
	font-family: apple color emoji,segoe ui emoji,noto color emoji,android emoji,emojisymbols,emojione mozilla,twemoji mozilla,segoe ui symbol;
}

.col_topMeasures {
	margin: 0;
	padding: 0 0 60px;
	overflow: hidden;
}

.inner_topMeasures,
.inner_topPrice,
.inner_topProfile {
	width: 94%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.inner_topMeasures .img,
.inner_topPrice .img,
.inner_topProfile .img {
	width: calc(100% - 572px);
	position: relative;
	z-index: 1;
}

.inner_topMeasures .img img,
.inner_topPrice .img img,
.inner_topProfile .img img {
	width: auto;
	height: auto;
	position: absolute;
	top: 0;
	right: 0;
}

.inner_topPrice .img {
	margin-top: 55px;
	-webkit-box-ordinal-group: 2;
	           -ms-flex-order: 1;
	                    order: 1;
}

.inner_topPrice:nth-of-type(2) .img{
	order: 0;
}

.inner_topProfile .img {
	margin-top: 45px;
}

.inner_topPrice .img img {
	right: auto;
	left: 0;
}

.inner_topPrice:nth-of-type(2) .img img{
	right: 0;
	left: auto;

}


.inner_topMeasures .txt,
.inner_topPrice .txt,
.inner_topProfile .txt {
	width: 572px;
	margin: 60px 0 0 0;
	padding: 25px 0 40px 30px;
	position: relative;
	z-index: 0;
}

.inner_topProfile .txt {
	margin: 0;
	padding: 45px 0 45px 45px;
}

.inner_topMeasures .txt:before,
.inner_topPrice .txt:before,
.inner_topProfile .txt:before {
	content: "";
	width: 300%;
	height: 100%;
	background-color: #eceeec;
	position: absolute;
	top: 0;
	left: -95px;
	z-index: -1;
}

.inner_topPrice .txt:before {
	left: auto;
	right: -95px;
}

.inner_topPrice:nth-of-type(2) .txt:before{
	left: -95px;
	right: auto;

}

.inner_topPrice .txt {
	margin: 0;
	padding: 50px 30px 60px 0;
	-webkit-box-ordinal-group: 1;
	           -ms-flex-order: 0;
	                    order: 0;
}

.inner_topPrice:nth-of-type(2) .txt{
	padding: 120px 0 70px 30px;
}

.inner_topPrice:last-of-type .txt{
	padding: 120px 0 70px 30px;
}

.box_price1{
	padding: 0 0 0 1em;
}

.mds_topMeasures {
	margin: 0 0 24px;
	padding: 0;
	color: #e14848;
	font-size: 29px;
	line-height: 1.3;
	letter-spacing: 0.1em;
}

.wrap_topMeasures {
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.wrap_topMeasures dl {
	width: 50%;
	margin: 0;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
}

.wrap_topMeasures dl:nth-child(-n+2) {
	margin-bottom: 23px;
}

.wrap_topMeasures dl dt {
	width: 109px;
	height: 109px;
	margin: 0;
	padding: 0;
	text-align: center;
	display: table;
}

.wrap_topMeasures dl dt span {
	background-color: #fff;
	border-radius: 50%;
	display: table-cell;
	vertical-align: middle;
}

.wrap_topMeasures dl dt img {
	width: 61px;
}

.wrap_topMeasures dl dd {
	width: calc(100% - 109px);
	margin: 0;
	padding: 0 0 0 16px;
	font-size: 18px;
	line-height: 1.5;
	font-weight: 500;
}

.col_topGrow {
	margin: 0 0 80px;
	padding: 50px 0 120px;
	background-image: url(../img/top/bg_grow.jpg);
	background-size: cover;
	background-position: center center;
}

.inner_topGrow {
	width: 94%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 0;
}

.mds_topGrow {
	margin-bottom: 50px;
	padding-bottom: 22px;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	line-height: 1.7;
}

.mds_topGrow em {
	padding: 6px 0 0 0;
	color: #e14848;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
}

.mds_topGrow em span {
	position: relative;
	z-index: 0;
}

.mds_topGrow em span:before {
	content: "\30FB";
	position: absolute;
	top: -1em;
	z-index: -1;
}

.wrap_topGrow {
	max-width: 1046px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.cont_topGrow {
	width: 30.6%;
	margin: 0 4.1% 0 0;
	padding: 0;
	text-align: center;
	background-color: #85746c;
	box-shadow: 2px 2px 10px -5px #000;
}

.cont_topGrow:last-child {
	margin-right: 0;
}

.cont_topGrow dl {
	margin: 0;
	padding: 30px 0 50px 0;
	background-color: #fff;
	position: relative;
	z-index: 0;
}

.cont_topGrow dl:after {
	content: "";
	width: 0;
	height: 0;
	margin: 0 auto;
	border-style: solid;
	border-width: 12px 12px 0 12px;
	border-color: #e14848 transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 18px;
}

.cont_topGrow dl dt {
	margin: 0 0 18px;
	padding: 0;
	color: #e14848;
	font-size: 30px;
	line-height: 1;
}

.cont_topGrow dl dt img {
	width: 65px;
	margin: 0 auto 20px;
	display: block;
}

.cont_topGrow dl dd {
	min-height: 78px;
	margin: 0;
	padding: 0;
	line-height: 1.65;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
}

.result_topGrow {
	min-height: 128px;
	margin: 0;
	padding: 14px 15px;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
}

.col_topContent {
	margin: 0;
	padding: 90px 0 50px;
}

.inner_topContent {
	width: 94%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 0;
}

.mds_topContent {
	margin: 0 0 50px;
	padding: 0;
}

.mds_topContent .icon_piano {
	width: 75px;
	margin: 0 auto 18px;
	display: block;
}

.mds_topContent .logo_mayuka {
	width: 390px;
	margin: 0 auto;
	display: block;
}

.wrap_topContent {
	max-width: 1086px;
	margin: 0 auto;

}

.box_course1{
	width: 100%;
    margin: 0 0 50px;
    padding: 0 0 50px;
    border-bottom: dotted 3px #b0aead;
}

dl.cont_topContent {
	width: 100%;
	min-height: 602px;
	margin: 0 0 68px 0;
	padding: 0;
	position: relative;
	z-index: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	   -ms-flex-direction: column;
	       flex-direction: column;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
}

dl.cont_topContent:nth-child(-n-2) {
	margin-bottom: 0;
}

dl.cont_topContent.concours {
	padding-top: 80px;
}

dl.cont_topContent.presen {
	padding-bottom: 25px;
}

dl.cont_topContent:nth-child(2n) {
	margin-right: 0;
}

dl.cont_topContent dt {
	margin: 0 0 10px;
	padding: 0 0 0 125px;
	position: relative;
}

dl.cont_topContent dt:before{
	content: "";
	width: 85px;
	height: 82px;
	background-image: url(../img/top/img_course1.svg);
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}

dl.cont_topContent dt .course {
	color: #e14848;
	font-size: 29px;
	line-height: 1.3;
	letter-spacing: 0.1em;
	display: block;
}

dl.cont_topContent dt .target {
	margin: 7px 0 4px 0;
	padding: 4px 8px 6px;
	color: #fff;
	font-weight: 400;
	line-height: 1;
	background-color: #796a62;
	border-radius: 5px;
	display: inline-block;
	position: relative;
}

dl.cont_topContent dt .target .left{
	margin: 0 15px 0 0;
}

dl.cont_topContent dt .target::before {
}


dl.cont_topContent dt .note1 {
	display: block;
}


dl.cont_topContent dd {
	margin: 0;
	padding: 0;
}

dl.cont_topContent dd.img {
	width: 639px;
	height: 598px;
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}

dl.cont_topContent dd.txt {
	line-height: 1.65;
}

dl.cont_topContent dd.txt br.tab_none {
	display: block;
}

dl.cont_topContent.test dd.txt {
	width: 30em;
}

dl.cont_topContent.test dd.txt.pianolesson {
	width: 30em;
}

dl.cont_topContent.test dd.txt ul {
	margin: 0;
	padding: 0;
}

dl.cont_topContent.test dd.txt ul li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

dl.cont_topContent.test dd.txt ul li * {
	text-indent: 0;
}

dl.cont_topContent.test dd.txt ul {
	margin: 0;
	padding: 0;
}

.list_topContent1 {
	margin: 40px 0 0 0;
	padding: 0 0 0 14px;
	border-left: solid 3px #e14848;
	line-height: 1.6;
}

.list_topContent1:first-of-type{
	margin: 0;
}


.list_topContent1 ul {
	max-width: 13em;
	margin: 0;
	padding: 0;
}

.list_topContent1 ul li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

.list_topContent1 ul li * {
	text-indent: 0;
}


.list_topContent2 {
	margin: 10px 0 0 0;
	padding: 0 0 0 14px;
	border-left: solid 3px #e14848;
}

.list_topContent2 ul {
	max-width: 13em;
	margin: 0;
	padding: 0;
}

.list_topContent2 ul li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

.list_topContent2 ul li * {
	text-indent: 0;
}


.wrap_course1{
	width: 100%;
    margin: 0 0 30px;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

.wrap_box_course1{
	width: calc(100% / 2 - 20px);
	padding: 0;
    display: flex;
	justify-content: space-between;
    border: solid 1px #858787;
}

.wrap_box_course1 dl{
	width: 60%;
	margin: 0;
}

dt.box_ttl1{
	width: 100%;
	margin: 0 0 15px;
	padding: 15px 0 8px 20px;
	border-bottom: solid 1px #858787;
	color: #e14848;
	font-size: 21px;
	line-height: 1;
	font-weight: 700;
}

.wrap_box_course1 dd{
	margin: 0;
	padding: 0 0 0 20px;
	line-height: 1.63
}

.btn_course1 {
	max-width: 820px;
	margin: 0 auto;
	padding: 16px 0 16px;
	color: #000000;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	background-color: #fdf7f4;
	background-size: 78px auto;
	background-repeat: no-repeat;
	background-position: center left 20px;
	border: solid 1px #e14848;
	border-right: solid 20px #e14848;
	display: block;
	position: relative;
	z-index: 0;
	transition: .2s;
}

.btn_course1:hover{
	opacity: .6;

}

.btn_top1{
	display: flex;
	padding: 0 20px;
    margin: 0 20px;
    align-items: center;
}

.btn_top1_img{
    width: 78px;
    height: auto;
    margin: 0 35px 0 0;
}

.btn_top1_txt{
	width: calc(100% - 78px);
	font-size: 34px;
	color: #e14848;
	font-weight: 700;
	text-align: center;
	line-height: 1;
}

.btn_top1_txt .small{
	font-size: 17px;
    color: #000000;
}

.btn_course1 .big {
	font-size: 30px;
	color: #e14848;
	font-weight: 700;
}

.btn_course1:after {
	content: "";
	width: 7px;
	height: 7px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: -13px;
	display: block;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.col_topPrice {
	margin: 0;
	padding: 0 0 95px;
	overflow: hidden;
}

.inner_topPrice {
	width: 94%;
	max-width: 1150px;
	margin: 0 auto 90px;
	padding: 0;
}

.inner_topPrice:last-of-type{
	margin: 0 auto 0;
}

.col_topPrice .mds1 {
	margin-bottom: 50px;
}

dl.box_topSignup {
	width: 100%;
	max-width: 350px;
	margin: 0 0 30px;
	padding: 0;
	font-size: 20px;
	line-height: 1.2;
	border: solid 2px #e14848;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

dl.box_topSignup dt {
	width: 200px;
	margin: 0;
	padding: 6px 15px 6px 15px;
	color: #fff;
	font-weight: 700;
	text-align: center;
	background-color: #e14848;
	letter-spacing: 0.06em;
}

dl.box_topSignup dd {
	width: calc(100% - 200px);
	margin: 0;
	padding: 6px 20px 6px 20px;
	font-weight: 700;
	text-align: center;
	background-color: #fff;
	color: #e14848;
}

dl.box_topSignup.black{
	width: 100%;
	max-width: 300px;
	margin: 0 0 30px;
	padding: 0;
	font-size: 20px;
	line-height: 1.2;
	border: solid 2px #000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

dl.box_topSignup.black dt {
	width: 150px;
	margin: 0;
	padding: 10px 20px 10px 20px;
	color: #fff;
	font-weight: 700;
	text-align: center;
	background-color: #000;
}

dl.box_topSignup.black dd {
	width: calc(100% - 150px);
	margin: 0;
	padding: 10px 20px 10px 20px;
	font-weight: 700;
	text-align: center;
	background-color: #fff;
	color: #000;
}

.list_price_indent{
	padding-left: 1em;
}

.ttl_price1{
	margin: 0 0 15px;
	font-size: 25px;
    font-weight: 700;
    color: #e14848;
    line-height: 1.28;
}

.ttl_price1 .small{
	    font-size: 17px;
    color: #000;

}

dl.list_topPrice1 {
	margin: 0 0 20px;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

dl.list_topPrice1:last-of-type {
	margin-bottom: 0;
}

dl.list_topPrice1.piano {
	margin-bottom: 0;
}

dl.list_topPrice1 dt {
	width: 10em;
	margin: 0;
	padding: 0;
	color: #e14848;
	font-size: 21px;
	font-weight: 700;
	line-height: 1;
}

dl.list_topPrice1.piano dt {
	width: 9em;
}

dl.list_topPrice1 dd {
	width: calc(100% - 14em);
	margin: 0;
	padding: 0;
	font-size: 17px;
	line-height: 1.5;
}

dl.list_topPrice1.piano dd {
	width: calc(100% - 9em);
}

.list_topPrice2 {
	margin: 20px 0 50px 1.5em;
	padding: 0 0 4px 23px;
	border-left: solid 3px #e14848;
}

.list_topPrice2 dl {
	margin: 0 0 7px;
	padding: 0 4px 7px;
	border-bottom: solid 1px #b5b1b1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.list_topPrice2 dl:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

.list_topPrice2 dl dt {
	width: 5.5em;
	margin: 0;
	padding: 0;
	font-weight: 700;
}

.list_topPrice2 dl dd {
	width: calc(100% - 5.5em);
	margin: 0;
	padding: 0;
	font-weight: 500;
}

dl.list_topPrice1 .pink,
.list_topPrice2 dl .pink {
	color: #e14848;
}





.list_topPrice3 {
	margin: 20px 0 20px 1.5em;
	padding: 10px 0 10px 23px;
	border-left: solid 3px #e14848;
}

.list_topPrice3 dl {
	margin: 0 0 7px;
	padding: 0 4px 7px;
	border-bottom: solid 1px #b5b1b1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.list_topPrice3 dl:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

.list_topPrice3 dl dt {
	width: 5.5em;
	margin: 0;
	padding: 0;
	font-weight: 700;
}

.list_topPrice3 dl dd {
	width: calc(100% - 5.5em);
	margin: 0;
	padding: 0;
	font-weight: 500;
}

dl.list_topPrice1 .pink,
.list_topPrice3 dl .pink {
	color: #e14848;
}

.col_topProfile {
	margin: 0;
	padding: 30px 0 145px;
	overflow: hidden;
}

.inner_topProfile {
	width: 94%;
	max-width: 1150px;
	margin: 0 auto;
	padding: 0;
}

.col_topProfile .mds1 {
	margin-bottom: 50px;
}

dl.cont_topProfile {
	margin: 0;
	padding: 0;
}

dl.cont_topProfile dt {
	margin: 0 0 18px;
	padding: 0 2px 10px;
	line-height: 1.2;
	border-bottom: solid 1px #231815;
}

dl.cont_topProfile dt .name {
	font-size: 25px;
	font-weight: 700;
}

dl.cont_topProfile dd {
	margin: 0;
	padding: 0 2px;
}

dl.cont_topProfile dd ul {
	margin: 0;
	padding: 0;
}

dl.cont_topProfile dd ul li {
	margin: 0 0 3px;
	padding: 0 0 0 1em;
	text-indent: -1em;
	line-height: 1.5;
}

dl.cont_topProfile dd ul li:last-child {
	margin-bottom: 0;
}

dl.cont_topProfile dd ul li * {
	text-indent: 0;
}

dl.cont_topProfile dd .img_profile {
	width: 200px;
	margin: 0 0 -55px 13px;
	padding: 0;
	float: right;
	position: relative;
	top: -65px;
	right: -2px;
}

.bg_topinsta {
	margin: 0 0 70px;
	padding: 0;
}

.col_topinsta {
	width: 96%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
.col_topinsta .cont_mds {
	width: 190px;
	margin: 0;
	padding: 0;
}
.col_topinsta .cont_mds .icon_insta {
	width: 35px;
	margin: 0 auto 10px;
	padding: 0;
}
.col_topinsta .cont_mds .mds1 {
	margin: 0 auto 30px;
}
.col_topinsta .cont_mds a {
	width: 100%;
	margin: 0;
	padding: 0.5em 0;
	color: #e14848;
	font-size: 18px;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	border: solid 1px #e14848;
	border-radius: 3em;
	display: block;
	position: relative;
	z-index: 0;
}
.col_topinsta .cont_mds a::before {
	content: "";
	width: 8px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #e14848;
	border-right: solid 2px #e14848;
	transform: rotate(45deg);
	position: absolute;
	top: calc( 50% - 5px );
	right: 20px;
}
.col_topinsta .list_topinsta {
	width: calc( 100% - 210px );
	max-width: 1127px;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
}
.col_topinsta .list_topinsta .item {
	width: 19.2%;
	max-width: 216px;
	height: calc( ( 100vw - 210px )*0.192 );
	max-height: 216px;
	overflow: hidden;
}
.col_topinsta .list_topinsta .item a {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	display: block;
}
.col_topinsta .list_topinsta .item a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
a.link_topinsta_sp { display: none; }



.col_topAccess {
	margin: 0;
	padding: 30px 0 40px;
}

.inner_topAccess {
	margin: 0;
	padding: 0;
}

.col_topAccess .mds1 {
	margin-bottom: 30px;
}

.cont_gmap {
	margin: 0 0 5px;
	padding: 0;
}

.cont_gmap iframe {
	width: 100%;
	height: 350px;
}

.cont_access1 {
	width: 94%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	   -ms-flex-pack: center;
	 justify-content: center;
}

.cont_access1 address {
	margin: 0 auto;
	padding: 0 0 0 7em;
	font-style: normal;
	text-align: center;
}

.link_access {
	width: 7em;
	margin: 0;
	font-size: 15px;
}


.submenu {
	width: 260px;
	margin: 0;
	padding: 14px 0 0 0;
	position: absolute;
	top: 100%;
	left: calc(50% - 130px);
}

.submenu.env {
	width: 160px;
	left: auto;
	right: 0;
}

.nav_header ul .submenu ul {
	margin: 0;
	padding: 0;
	position: relative;
    top: 0;
}

.nav_header ul .submenu ul li {
	height: 48px;
	margin: 0;
	padding: 0;
	text-align: left;
	line-height: 1.25;
	border-bottom: solid 1px #fff;
	text-align: center;
	background-color: #e14848;
	position: relative;
	z-index: 0;
	-webkit-transition: background .2s;
	-moz-transition: background .2s;
	-ms-transition: background .2s;
	transition: background .2s;
}

.nav_header ul .submenu ul li:first-child:before {
	content: "";
	width: 0;
	height: 0;
	margin: auto;
	border-style: solid;
	border-width: 0 8px 8px 8px;
	border-color: transparent transparent #e14848 transparent;
	position: absolute;
	top: -8px;
	left: 0;
	right: 0;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-ms-transition: all .2s;
	transition: all .2s;
}



.nav_header ul .submenu ul li:last-child {
	border-bottom: none;
}

.nav_header ul .submenu ul li a {
	width: 100%;
	height: 100%;
	padding: 0 15px 2px;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	text-decoration: none;
	position: relative;
	z-index: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	   -ms-flex-align: center;
	      align-items: center;
}


.nav_header ul .submenu ul li a:after {
	content: "";
	width: 7px;
	height: 7px;
	margin: auto;
	cursor: default;
	position: absolute;
	top: 50%;
	right: 12px;
	display: block;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: all .2s;
	-moz-transition: all .2s;
	-webkit-transition: all .2s;
	z-index: -1;
}




.col_topContact{
	max-width: 870px;
	margin: 0 auto;
	padding: 30px 0 100px;

}

.col_topContact .mds1{
	margin-bottom: 30px;
}

.footer_contact_inner1{
	width: 100%;
	margin: 35px 0 0;
}

.footer_contact_btn1{
	display: flex;
	justify-content: center;
}


.footer_contact_btn1 a{
	width: calc(100% / 2 - 40px);
	background-color: #e14848;
	text-decoration: none;
	margin: 0 40px 0 0;
}

.footer_contact_btn1 a:hover{
	background-color: #ce2f2f;
	transition: .2s;
}



.footer_contact_btn1 a:last-of-type{
	margin: 0;
	background-color: #00B900;
	border: none;
}

.footer_contact_btn1 a:last-of-type:hover{
		background-color: #069006;
	transition: .2s;

}

.footer_contact_btn1 a dl{
	margin: 0;
    padding: 0 20px;
    position: relative;
    z-index: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.footer_contact_btn1 a:last-of-type dl{
	align-items: flex-end;
}

.footer_contact_btn1 a dl:before{
	content: "";
	width: 27px;
    height: 27px;
    background-image: url(../img/top/icon_footer_arow1.png);
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    top: 42%;
    right: 3%;
}

.footer_contact_btn1 a:last-of-type dl:before{
    background-image: url(../img/top/icon_footer_arow2.png);
}


.footer_contact_btn1 a dl dt{
	width: calc(100% - 135px);
    margin: 0;
    padding: 10px 0 10px 10px;
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4;
}

.footer_contact_btn1 a:last-of-type dl dt{
	width: calc(100% - 115px);
}

.footer_contact_btn1 a dl dt span.big{
	font-size: 40px;
	font-weight: 900;

}

.footer_contact_btn1 a dl dd{
	max-width: 95px;
    margin: 0;
    padding: 0 0 0 0;
}

.footer_contact_btn1 a:last-of-type dl dd{
	max-width: 86px;
	padding: 0;
}

.footer_contact_btn1 a dl dd img{
	width: 100%;
}
/* ---------------  course --------------- */

.mds1.course{
	margin: 0 0 65px;
}

.bg_course1 {
	margin: 0 0 90px;
	padding: 0 0 90px;
	border-bottom: dotted 3px #b0aead;
	position: relative;
	z-index: 0;
}

.bg_course1:nth-of-type(3){
	border-bottom: none;
	padding: 0;
}

.col_course1 {
	width: 100%;
	max-width: 1260px;
	margin: 0 auto 30px;
	padding: 0;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.col_course1:last-of-type{
	align-items: flex-start;

}


.col_course1 .cont_txt {
	width: 58%;
	max-width: 540px;
	margin: 0 ;
	padding: 0;
}

.col_course1 .cont_txt:nth-of-type(2){
	width: 58%;
	max-width: 540px;
	margin: 0;
	padding: 0;
}

.cont_mask {
	margin: 0;
	padding: 0;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.col_course1 .cont_txt .mds_course1 {
	margin: 0 0 35px;
	padding: 0;
	position: relative;
	z-index: 0;
}

.col_course1 .cont_txt .mds_course1 .cont_ttl_course1{
	margin: 0;
    padding: 0;
    position: relative;
    text-align: center;
}

.col_course1:last-of-type .cont_txt .mds_course1 .cont_ttl_course1{
	text-align: left;
}

.mds_ttl_course1{
	margin: 0 0 28px;
	display: flex;
	align-items: flex-start;
}

.num_course1{
	max-width: 85px;
    margin: 0 15px 0 0;
}

.col_course1 .cont_txt .mds_course1 .cont_ttl_course1 .course{
	color: #e14848;
    font-size: 32px;
    line-height: 1.3;
    letter-spacing: 0.1em;
    display: block;
}

.col_course1 .cont_txt .mds_course1 .cont_ttl_course1 .target{
	margin: 7px 0 4px 0;
    padding: 3px 12px;
    color: #fff;
    font-weight: 400;
    line-height: 1;
    background-color: #796a62;
    border-radius: 5px;
    display: inline-block;
    position: relative;
    font-size: 20px;
}

.col_course1 .cont_txt .mds_course1 .cont_ttl_course1 .target span.left{
	border-right: solid 1px #fff;
    padding: 3px 8px 3px 0;
    margin: 0 8px 0 0;
    display: inline-block;
}


.col_course1 .cont_img {
	width: 82.33%;
    max-width: 635px;
	margin: 0;
	padding: 0 0 60px;
	position: relative;
	z-index: 0;
}

.col_course1 .cont_img.pc_none{
	display: none;
}



.col_course1:last-of-type .cont_img{
	max-width: 577px;
}

.cont_img.second.sp_none{
	max-width: 621px;
	margin: 0 40px 0 0;
}


dl.lead_box_course2{
	margin: 0 0 15px;
	padding: 0;
	border: solid 1px #858787;
}

.lead_box_course2 dt{
	font-size: 21px;
    color: #e14848;
    font-weight: 700;
    padding: 10px 0;
    text-align: center;
    border-bottom: solid 1px #858787;
    line-height: 1.28;
}

.lead_box_course2 dd{
	padding: 15px 15px 15px 0;
	text-align: left;
}

ul.list_course1{
	list-style: disc;
    padding: 0;
    margin: 0;
}

ul.list_course1 li{
	margin: 0 0 5px;
    color: #e14848;
	line-height: 1.5;
}

ul.list_course1 li span{
	color: #231815;
}

.inner_course1{
	display: flex;
}

.inner_course1 .target2 {
	margin: 7px 10px 4px 0;
	padding: 4px 8px 6px;
	color: #fff;
	font-weight: 400;
	line-height: 1;
	background-color: #e14848;
	border-radius: 3px;
	display: inline-block;
	position: relative;
}

.inner_txt{
	margin: 7px 10px 4px 0;
    padding: 4px 2px 3px;
    color: #e14848;
    font-weight: 500;
    line-height: 1;
    display: inline-block;
    position: relative;
    border-bottom: solid 1px #e14848;
}

.inner_txt img{
	width: 18px;
	margin: 0 0 0 5px;
}

.lead_box_txt{
	margin: 7px 10px 4px 0;
	padding: 4px 8px 6px;
	color: #e14848;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	background-color: #fff;
	border-radius: 5px;
	border: solid 1px #e14848;
	display: inline-block;
	position: relative;

}

.btn_course_contact {
	max-width: 282px;
	margin: 20px auto 0 0;
	padding: 16px 0;
	color: #e14848;
	font-size: 19px;
	line-height: 1.2;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	background-color: #fff;
	border-radius: 30px;
	display: block;
	position: relative;
	z-index: 0;
	transition: .2s;
	border: solid 1px #e14848;
}

.btn_course_contact .inner {
	padding: 0;
	font-weight: 700;
}

.btn_course_contact:after {
	content: "";
	width: 7px;
	height: 7px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	display: block;
	border-top: 2px solid #e14848;
	border-right: 2px solid #e14848;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn_course_contact:hover{
	color: #fff;
    background-color: #e14848;
}

.btn_course_contact:hover::after{
	border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}

.txt_online{
	line-height: 1.4;
}

.wrap_img_course1.pc_none{
	display: none;
}

a.black{
	color: #231815;
}

a.lead_txt1:hover .inner_txt{
	border-bottom: none;
	opacity: .8;
}

.inner_topPrice:nth-of-type(2) .img img.sp_none2{
		display: none;
		
	}
/* --------------- news --------------- */

.col_news {
	padding: 65px 0 0;
}

.fs18{
	font-size: 18px;
}

.fs20{
	font-size: 20px;
}