

/*  メンタル心理カウンセリング HeartCare「ここなぎ」
--------------------------------------------------------------------------*/
/*  https://www.coconagi.jp
--------------------------------------------------------------------------*/

@charset "shift_jis";
a:link {text-decoration: none;color:#333;} 
a:visited {text-decoration: none;color:#333;} 
a:hover {text-decoration: none;} 
body { margin:0px;padding:0px;}
body { width: 100%;position:relative;}
body { background-color: #fcfaf1; }
body { font-family: 'Noto Sans JP', sans-serif;}
body, th, td, div, font { line-height: 1.5; }
body { font-size: 16px;font-size: 1.6rem;   /* sets the default sizing to make sure nothing is actually 10px */}
html { font-size: 62.5%; text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}

ul, ol, ul li, ol li { list-style: none;}
img, a img { border: 0px none; vertical-align: bottom;outline: none;}
form{margin:0px;}
input{margin:0px;}form{margin:0px;}
iframe{ vertical-align: bottom;}

::-webkit-scrollbar-track {background: #fff;border-radius: 5px;}
::-webkit-scrollbar { width: 8px;height: 10px;}
::-webkit-scrollbar-thumb {background: #d8d8d8;border-radius: 5px;}

@font-face {font-family: 'Pinyon Script', cursive;font-style: ;src: url(''),url('../font/PinyonScript-Regular.ttf') format('truetype');}
@font-face {font-family: 'Noto Sans JP', sans-serif;font-style: ;src: url(''),url('../font/NotoSansJP-Light.otf') format('opentype');}
@font-face {font-family: 'Noto Sans JP', sans-serif;font-style: ;src: url(''),url('../font/NotoSansJP-Thin.otf') format('opentype');}
@font-face {font-family: 'Noto Sans JP', sans-serif;font-style: ;src: url(''),url('../font/NotoSansJP-Medium.otf') format('opentype');}

.font-script {font-family: "Pinyon Script", cursive; letter-spacing: -0.5px;}

.mincho { font-family:"游明朝","YuMincho","ヒラギノ明朝 ProN W3","HiraMinProN-W3","HG明朝E",serif;}
@media screen and (max-width: 640px) {
.mincho { font-family:"Sawarabi Mincho", serif;}
}

@-webkit-keyframes light {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@media screen and (max-width: 640px) {.sp_none {display: none !important;}}
@media screen and (min-width: 640px) {.pc_none {display: none !important;}}



/*  タイトル関連
--------------------------------------------------------------------------*/
h1 { margin: 0px;padding: 0px;}
h2 { margin: 0px;padding: 0px;}
h3 { margin: 0px;padding: 0px;}
.clear { display: none;}

.title { margin: 0px;padding: 100px 0; position:relative;text-align:center;}
.title { background : transparent url(../img/title.jpg) no-repeat center top;background-position: 50% 50%;background-size: cover;}
.title::before {background: url("../img/title_top.svg");top: 0px;left: 0;content: '';height: 40px;position: absolute;width: 100%;transform: rotate(180deg);}
.title h2{ margin: 0px;padding: 20px 0 ;display: inline-block;position: relative;}
.title h2{ font-size: 2.5rem;color: #7e334a;font-weight:bold;letter-spacing:0px;text-align: center;}
.title h2 span { padding: 5px 0px 20px;font-family: 'Oswald', sans-serif;font-size: 16px;color: #7e334a;font-weight:normal;letter-spacing:2px;line-height: 1.5;text-align: left;}
.title h2 span:before { content:" / ";}
@media screen and (max-width: 800px) {
.title { margin: 0px;padding: 70px 0; position:relative;text-align:center;}
.title::before {background: url("../img/title_top.svg");top: 0px;left: 0;content: '';height: 20px;position: absolute;width: 100%;transform: rotate(180deg);}
.title h2{ margin: 0px;padding: 0px 0 ;display: inline-block;position: relative;}
.title h2{ font-size: 2.0rem;color: #7e334a;font-weight:bold;letter-spacing:2px;text-align: center;}
.title h2 span { padding: 5px 0px 0px;font-family: 'Oswald', sans-serif;font-size: 14px;color: #7e334a;font-weight:normal;letter-spacing:2px;line-height: 1.5;display: block;text-align: left;}
.title h2 span:before { content:" / ";}
}



/*  HEAD
--------------------------------------------------------------------------*/
.header{ background-color: #ffd4d4;position;top: 0px;z-index: 8888;}
.header{ width: 100% ;height: 120px;padding: 0px 0px;}
.head_logo{ max-width: 230px;position:absolute;top: 20px;left: 30px;z-index: 8888;}
#head_content{padding: 0px 0 0 0;}

@media screen and (max-width: 720px) {
.header{ width: 100% ;height: 80px;padding: 0px 0px;}
.head_logo{ max-width: 160px;position:absolute;top: 13px;left: 10px;z-index: 8888;}
#head_content{padding: 0px 0 0 0;}
}




/*  MENU
--------------------------------------------------------------------------*/
ul.menu { margin: 0px;padding: 0px 0px 0px 300px;display: inline-block;position: absolute;top: 34px;right: 120px;}
ul.menu li { float:left;margin: 0px 0px;text-align:center; position: relative;}
ul.menu li a { margin: 0px;padding: 10px 10px ;display: block; text-decoration: none;}
ul.menu li a { font-size: 17px;color: #6e4155;font-weight:bold;line-height: 1.2;letter-spacing: 0.1em;}
ul.menu li a:hover { background-color: #;color: #; }
@media screen and (max-width: 1300px) {
ul.menu { margin: 0px;padding: 0px 0px 0px 300px;display: inline-block;position: absolute;top: 30px;right: 120px;}
ul.menu li a { margin: 0px;padding: 5px 5px ;display: block; text-decoration: none;}
}

@media screen and (max-width: 800px) {
ul.menu { display: none;}
}


/*  MENU
--------------------------------------------------------------------------*/
.menu-trigger { width: 80px;height: 80px;position: fixed;right:0px;top:0px;z-index:9999;}
.menu-trigger { background-color:#e490a8;}
.menu-trigger span {display: block;position: absolute;right:20px;background-color: #fff;height: 2px;width: 40px;transition: .3s;}
.menu-trigger span { display: inline-block;transition: all .4s;box-sizing: border-box;}
.menu-trigger span:nth-of-type(1) {top: 26px;}
.menu-trigger span:nth-of-type(2) {top: 38px;}
.menu-trigger span:nth-of-type(3) {top: 50px;}
.menu-trigger.active span:nth-of-type(1) {-webkit-transform: translateY(12px) rotate(-45deg);transform: translateY(12px) rotate(-45deg);}
.menu-trigger.active span:nth-of-type(2) {opacity: 0;}
.menu-trigger.active span:nth-of-type(3) {-webkit-transform: translateY(-12px) rotate(45deg);transform: translateY(-12px) rotate(45deg);}
.menu-trigger:hover {cursor: pointer;}

@media screen and (max-width: 720px) {
.menu-trigger { width: 60px;height: 60px;position: fixed;right:7px;top:10px;z-index:9999;}
.menu-trigger span {display: block;position: absolute;right:15px;background-color: #fff;height: 2px;width: 30px;transition: .3s;}
.menu-trigger span { display: inline-block;transition: all .4s;box-sizing: border-box;}
.menu-trigger span:nth-of-type(1) {top: 18px;}
.menu-trigger span:nth-of-type(2) {top: 30px;}
.menu-trigger span:nth-of-type(3) {top: 42px;}
.menu-trigger.active span:nth-of-type(1) {-webkit-transform: translateY(12px) rotate(-45deg);transform: translateY(12px) rotate(-45deg);}
.menu-trigger.active span:nth-of-type(2) {opacity: 0;}
.menu-trigger.active span:nth-of-type(3) {-webkit-transform: translateY(-12px) rotate(45deg);transform: translateY(-12px) rotate(45deg);}
}

#menu_sp_wrap{ width:100%; height:100%; height:100vh;overflow-x:none;overflow-y:auto;background-color: rgba(255,255,255,0.9);padding: 20px 0px;border-bottom: 1px solid #f8f8f8;box-shadow: 0px 0px 12px rgba(102,102,102,0.0);}
#menu_sp_wrap{ position: fixed;z-index:8888;top: 0px;left: 0px;display:none;text-align: center;}
@media screen and (max-width: 640px) {
#menu_sp_wrap{ position: fixed;z-index:8888;top: 0px;left: 0px;display:none;text-align: center;}
}

.menu_sp_wrapper{  padding: 10px 10px 170px;}
.menu_sp_wrapper h2 { padding: 0px 0px ;margin: 30px 0px 0px;position:relative;}
.menu_sp_wrapper h2 { font-size: 2.5rem;color: #333;font-weight: bold;letter-spacing:1px;line-height: 1.6;text-align: center;}
.menu_sp_wrapper h2 span { padding: 0px 0px 0px;font-size: 13px;color: #333;font-weight:normal;letter-spacing:2px;line-height: 1.5;display: block;}
@media screen and (max-width: 1300px) {
.menu_sp_wrapper h2 { font-size: 1.8rem;color: #333;font-weight: bold;letter-spacing:1px;line-height: 1.6;text-align: center;}
}

ul.menu_sp { max-width: 1600px;padding: 0px 0px;background-color: rgba(255,255,255,1.0);border: 1px solid #e1decf;border-radius: 0px;right:0px;left:0px;margin:20px auto;}
ul.menu_sp:after {content: "";display: block;clear: both;}
ul.menu_sp li { float: left;width: 50%;border-right: 1px solid #e1decf;border-bottom: 1px solid #e1decf;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
ul.menu_sp li:nth-child(even) {border-right: none;}
ul.menu_sp li:nth-last-child(1),
ul.menu_sp li:nth-last-of-type(2) { border-bottom: none;}
ul.menu_sp li:nth-last-of-type(2):nth-child(even) {}
ul.menu_sp li a { margin: 0px;padding: 20px 0px;display: block; text-decoration: none;text-align:center;}
ul.menu_sp li a { font-size: 16px;color: #222;font-weight:bold;letter-spacing:1px;transition: all .3s;}
ul.menu_sp li a:hover { background-color: #f4f3ee;text-decoration: none;}
@media screen and (max-width: 640px) {
ul.menu_sp li a { margin: 0px;padding: 18px 0px;display: block; text-decoration: none;text-align:center;}
ul.menu_sp li a { font-size: 13px;color: #222;font-weight:bold;letter-spacing:1px;transition: all .3s;}
}


/*  TOP
--------------------------------------------------------------------------*/

.top_main { min-height: 400px;margin: 0px;padding: 100px 0; position:relative;text-align:center;}
.top_main { background : transparent url(../img/bg_top.jpg) no-repeat center top;background-position: 50% 50%;background-size: cover;}
.top_main::before {background: url("../img/title_top.svg");top: 0px;left: 0;content: '';height: 40px;position: absolute;width: 100%;transform: rotate(180deg);}


@media screen and (max-width: 640px) {
.top_main { min-height: 300px;margin: 0px;padding: 60px 0; position:relative;text-align:center;}
.top_main::before {background: url("../img/title_top.svg");top: 0px;left: 0;content: '';height: 20px;position: absolute;width: 100%;transform: rotate(180deg);}
}
#top_catch { max-width:700px;padding: 150px 20px 0px;right:0px;left:0px;margin:auto auto;text-align: center;}
#top_catch h3 { margin: 0px 0px;padding: 0px 0px;position:relative;}
#top_catch h3 { font-size: 2.6rem;color: #792c45;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#top_catch p { margin: 0px;padding:15px 0px ;position:relative;font-size: 15px;color: #792c45;line-height: 1.8;font-weight: normal;letter-spacing:2px;text-align: center;}

@media screen and (max-width: 640px) {
#top_catch { max-width:700px;padding: 60px 10px 0px;right:0px;left:0px;margin:auto auto;text-align: center;}
#top_catch h3 { font-size: 18px;color: #792c45;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#top_catch p { margin: 0px;padding:15px 0px ;position:relative;font-size: 15px;color: #792c45;line-height: 1.8;font-weight: normal;letter-spacing:2px;text-align: center;}
}

ul.service_list { width: 900px;margin: 0px;padding: 10px 0px;text-align: center;display:inline-block;right:0px;left:0px;margin:auto auto;}
ul.service_list li { width: 33.3333%;float: left;text-align: center; padding: 10px; position:relative;}
ul.service_list li { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
ul.service_list li h3 { background-color: #6e4155;border-radius: 0 30px 30px 0;margin: 0px;padding: 10px 0px;font-size: 16px;color: #fff;font-weight: bold;letter-spacing:1px;line-height: 1.3;text-align:center;}
ul.service_list li { display: block;position: relative;}
ul.service_list li p { margin: 0px;padding:15px 0px ;position:relative;font-size: 15px;color: #792c45;line-height: 1.8;font-weight: normal;letter-spacing:2px;text-align: left;}
@media screen and (max-width: 950px) {
ul.service_list { width: 100%;margin: 0px;padding: 10px 0px;}
}

@media screen and (max-width: 640px) {
ul.service_list li { width: 100%;float: left;text-align: center; padding: 0px; position:relative;}
}






.main_wrap { min-height: 200px;margin: 0px;padding: 20px 20px;overflow:hidden;position: relative;text-align:center;}
.main_wrap h2 { padding: 0px 0px 10px;margin: 20px 0px 10px;osition:relative;}
.main_wrap h2 { font-size: 2.6rem;color: #c6a885;font-weight: normal;letter-spacing:5px;text-align: center;}
.main_wrap h2 span { padding: 0px 0px 0px;font-size: 15px;color: #a69b87;font-weight:normal;letter-spacing:2px;display: block;}
@media screen and (max-width: 640px) {
.main_wrap h2 { font-size: 2.2rem;color: #c6a885;font-weight: normal;letter-spacing:5px;text-align: center;}
.main_wrap h2 span { padding: 0px 0px 0px;font-size: 14px;color: #a69b87;font-weight:normal;letter-spacing:2px;display: block;}
}
@media screen and (max-width: 640px) {
.main_wrap { min-height: 200px;margin: 0px;padding: 10px 10px;position: relative;text-align:center;}
}

.navi_wrap { max-width:1000px;margin: 5px 0px;padding: 20px 20px;background: rgba(255,255,255,1.0);border: 1px solid #ebe7da;border-radius:5px;position: relative;right:0px;left:0px;margin:15px auto;text-align:center;}
#navi_catch { position: relative;padding: 10px 10px;}
#navi_catch p{ margin: 0px; padding: 0px 0px;font-size:15px;color: #333;font-weight: bold;letter-spacing:1px;line-height: 1.6;text-align: center;}
#navi_catch .tel{ margin: 0px; padding: 0px 0px;font-family: 'Oswald', sans-serif;font-size:4.0rem;color: #333;font-weight: normal;letter-spacing:-1px;text-align: center;}
#navi_catch .tel::before {content: ''; display: inline-block; background-image: url(../img/icon_tel.png); vertical-align: -2px; margin-right: 5px;width: 36px;height: 36px;background-size: contain;}
#navi_catch img {max-width: 250px;margin: 10px 0;}
@navi_catch screen and (max-width: 640px) {
}



/*  NEWS
--------------------------------------------------------------------------*/
ul.news_list { max-width: 900px;margin: 0px;padding: 20px 0px;right:0px;left:0px;margin:auto auto;}
ul.news_list li{ background: rgba(255,255,255,0.0);border-bottom: 1px solid #ebe7da;border-radius:0x;margin: 0px 0px;position: relative;}
ul.news_list li a{ padding: 20px 20px;text-align: left;}
ul.news_list li a{  -webkit-transition: all .3s;transition: all .3s;display: block;position: relative;}
ul.news_list li a::after{ position:absolute;top: 0;bottom: 0;margin: auto;right:0px;content:"";width:20px;height:20px;}
ul.news_list li a::after{ background:url(../img/news_arrow.png) no-repeat scroll 0% 0%;background-size:contain;opacity: 5; content: ""; transition: all 0.2s ease-in-out 0.1s; transform: translateX(-15px);}
ul.news_list li a:hover::after { opacity: 1;transform: translateX(-5px);}
ul.news_list li a h3 { padding: 8px 50px 0px 0px;font-size: 1.6rem;color: #333;letter-spacing: 2px;font-weight: normal;text-decoration: none;}
ul.news_list li a:hover h3{ text-decoration: none; }
ul.news_list li::after{content: "";display: block;clear: both;}
ul.news_list li .news_list_day { margin: 0px;padding: 0px 0px;font-size:13px;color: #7e334a;letter-spacing: 0px;text-decoration:none;}
@media screen and (max-width: 640px) {
ul.news_list li a h3 { padding: 8px 40px 0px 0px;font-size: 16px;color: #222;letter-spacing: 1px;font-weight: normal;line-height: 1.6;text-decoration: none;}
ul.news_list li .news_list_day  { margin: 0px;padding: 0px 0px;font-size:11px;color: #7e334a;letter-spacing: 0px;text-decoration:none;}
}

.news_column_container { width: 1200px;display: inline-block;vertical-align: top;padding: 0px 0px;}
.news_column { margin:0px;padding: 10px 10px;float: left;position: relative;text-align: center; }
.news_column { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;overflow:hidden;}
.news_column.news_left{width: 30%;}
.news_column.news_left img{max-width: 100%;}
.news_column.news_right{width: 70%;}
.news_column.news_right h3 { padding: 8px 0px;border-bottom: 1px solid #d2d2d2;font-size: 18px;color: #333;letter-spacing: 1px;font-weight: bold;text-decoration: none;text-align: left;}

@media screen and (max-width: 1250px) {
.news_column_container { width: 100%;display: inline-block;vertical-align: top;padding: 0px 0px;}
}

@media screen and (max-width: 640px) {
.news_column_container { width: 100%;display: inline-block;vertical-align: top;padding: 0px 0px;}
.news_column.news_left{ width: 100%;}
.news_column.news_right{width: 100%;}
}
.news_day { margin: 0px;padding: 0px 0px;font-size:12px;color: #333;letter-spacing: 0px;text-decoration:none;text-align: left;}
.news_comme { padding: 15px 0px 20px;margin: 0px;font-size: 16px;color: #222;line-height: 1.7;font-weight: normal;letter-spacing:0px;text-align: left;}


/*  ACCESS
--------------------------------------------------------------------------*/
.access_wrap { padding: 10px 0px;margin: 0px 0px;position: relative;text-align:center;}
.access_wrap iframe{ width: 100%;height: 400px;vertical-align: bottom;}
@media screen and (max-width: 640px) {
.access_wrap iframe{ width: 100%;height: 300px;vertical-align: bottom;}
}

/*  ABOUT
--------------------------------------------------------------------------*/
#about { max-width:800px;padding: 20px 10px ;right:0px;left:0px;margin:auto auto;text-align: center;}
#about h3{ padding: 10px 0px;font-size:22px;color: #dc668d;line-height: 1.6;font-weight: normal;letter-spacing:1px;text-align: center;}
#about .message { padding: 10px 0px;font-size: 16px;color: #222;line-height: 1.6;font-weight: normal;letter-spacing:1px;text-align: left;}
#about .director_img { max-width:300px;border-radius: 50%;margin: 20px auto;}
#about .director { margin: 0px;padding: 10px 0px;position:relative;font-size: 2.8rem;color: #333;line-height: 1.6;font-weight: normal;letter-spacing:1px;text-align: center;}
#about .director rt{ font-size: 12px;}
@media screen and (max-width: 640px) {
#about .director_img { max-width:200px;border-radius: 50%;margin: 10px auto;}
}

ul.license { margin: 0px ;padding: 20px 0px;display: inline-block;}
ul.license li { margin: 0px ;padding: 8px 0px 8px 50px;letter-spacing:0px;}
ul.license li { font-size: 20px;color: #333;font-weight: normal;letter-spacing: 1px;line-height: 1.5;text-align: left;}
ul.license li { background: url('../img/mark.png') no-repeat scroll ;background-size: 36px 36px;background-position: left 0px top 9px;}
ul.license li a{color: #333;text-decoration: none;}
@media screen and (max-width: 640px) {
ul.license li { margin: 0px ;padding: 8px 0px 8px 40px;letter-spacing:0px;}
ul.license li { font-size: 18px;color: #333;font-weight: normal;letter-spacing: 1px;line-height: 1.5;text-align: left;}
ul.license li { background: url('../img/mark.png') no-repeat scroll ;background-size: 30px 30px;background-position: left 0px top 7px;}
}

ul.timeline { max-width:800px;padding-left: 120px;position: relative; right:0px;left:0px;margin: 30px auto 50px;}
ul.timeline::before {content: "";width: 15px;height: 100%;background: #eee;margin-left: -8px;display: block;position: absolute;top: 0;left: 120px;}
ul.timeline > li { ;position: relative;margin: 0px;}
ul.timeline > li:not(:last-child) {margin-bottom: 4vh;}
ul.timeline > li .step { background-color:#cc2b66;}
ul.timeline > li .step { font-size: 12px;color: #fff;letter-spacing:1px;padding: 8px 20px;display: block;position: absolute;top: 0;left: -120px;z-index: 100;}
ul.timeline > li .step::after {content: "";border-style: solid;border-width: 5px 0 5px 10px;border-color: transparent transparent transparent #cc2b66;position: absolute;top: 50%;left: 100%;-webkit-transform: translateY(-50%);transform: translateY(-50%);}
ul.timeline > li dl { padding-left: 70px;position: relative;}
ul.timeline > li dl::before,
ul.timeline > li dl::after {content: "";display: block;position: absolute;top: 15px;}
ul.timeline > li dl::before {width: 7px;height: 7px;margin-top: -3px;background: #f96299;border-radius: 50%;left: -4px;}
ul.timeline > li dl::after {width: 50px;border-bottom: 1px dashed #999;position: absolute;left: 5px;}
ul.timeline > li dl dt { padding: 0px 0px ;font-size: 17px;font-weight: normal;color: #222;letter-spacing: 1px;line-height: 1.6;text-align:left;}
ul.timeline > li dl dd { margin: 0px;padding: 0px 0px 0;font-size: 17px;font-weight: normal;color: #222;line-height: 1.6;letter-spacing: 1px;text-align:left;}
@media screen and (max-width: 640px) {
ul.timeline dd { margin-left: 0;text-align:left;}
ul.timeline { max-width:800px;padding-left: 90px;position: relative; right:0px;left:0px;margin: 50px auto;}
ul.timeline::before {content: "";width: 15px;height: 100%;background: #eee;margin-left: -8px;display: block;position: absolute;top: 0;left:72px;}
ul.timeline > li { ;position: relative;}
ul.timeline > li:not(:last-child) {margin-bottom: 2vh;}
ul.timeline > li .step { background-color:#cc2b66;}
ul.timeline > li .step { font-size: 10px;color: #fff;padding: 7px;display: block;position: absolute;top: 0;left: -90px;z-index: 100;}
ul.timeline > li .step::after {content: "";border-style: solid;border-width: 5px 0 5px 10px;border-color: transparent transparent transparent #cc2b66;position: absolute;top: 50%;left: 100%;-webkit-transform: translateY(-50%);transform: translateY(-50%);}
ul.timeline > li dl {padding-left: 25px;position: relative;}
ul.timeline > li dl::before,
ul.timeline > li dl::after {content: "";display: block;position: absolute;top: 15px;}
ul.timeline > li dl::before {width: 7px;height: 7px;margin-top: -3px;background: #f96299;border-radius: 50%;left: -14px;}
ul.timeline > li dl::after {width: 20px;border-bottom: 1px dashed #999;position: absolute;left: 0px;}
ul.timeline > li dl dt { padding: 0px 0px ;font-size: 1.0em;font-weight: bold;color: #222;letter-spacing: 2px;text-align:left;}
ul.timeline > li dl dd { padding: 3px 0px ;font-size: 15px;font-weight: normal;color: #222;line-height: 1.6;letter-spacing: 1px;text-align:left;}
}


.concept_wrap { height: 400px;margin: 0px;padding: 0px 0px ;background : transparent url(../img/concept.jpg) no-repeat center top;background-position: 50% 50%;background-size: cover;position: relative;text-align:center;}

#concept { max-width:700px;padding: 70px 0px 50px;right:0px;left:0px;margin:auto auto;text-align: center;}
#concept img { margin: 10px 0;max-width:300px;}
#concept h3 { margin: 0px 0px;padding: 5px 0px;position:relative;}
#concept h3 { font-size: 2.0rem;color: #666;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#concept p { margin: 0px;padding:15px 0px ;position:relative;font-size: 15px;color: #666;line-height: 1.8;font-weight: normal;letter-spacing:2px;text-align: center;}
@media screen and (max-width: 640px) {
#concept { max-width:700px;padding: 30px 0px;right:0px;left:0px;margin:auto auto;text-align: center;}
#concept img { margin: 10px 0;max-width:230px;}
#concept h3 { margin: 0px 0px;padding: 0px 0px;position:relative;}
#concept h3 { font-size: 20px;color: #666;line-height: 1.6;font-weight: bold;letter-spacing:2px;text-align: center;}
#concept p { margin: 0px;padding:15px 0px ;position:relative;font-size: 15px;color: #666;line-height: 1.7;font-weight: normal;letter-spacing:1px;text-align: left;}
}


/*  相談内容
--------------------------------------------------------------------------*/
#counseling { max-width:600px;padding: 20px 10px ;right:0px;left:0px;margin:auto auto;text-align: center;}
#counseling h3 { background-color: #6e4155;border-radius: 0 30px 30px 0;margin: 0px 0px;padding: 10px 0px;position:relative;}
#counseling h3 { font-size: 19px;color: #fff;line-height: 1.6;font-weight: normal;letter-spacing:1px;text-align: center;}
#counseling p { margin: 0px;padding:15px 0px ;position:relative;font-size: 16px;color: #333;line-height: 1.6;font-weight: normal;letter-spacing:2px;text-align: left;}

table.system { width: 600px;border-collapse: collapse;border-spacing: 0px 0px;right:0px;left:0px;margin:auto auto;}
table.system th { width: 60%;border-bottom: solid 1px #d7d1ca;padding: 10px 0px;vertical-align: top;text-align: left;}
table.system th { font-size: 18px; font-weight: normal;letter-spacing:1px;color: #222;text-align:left;}
table.system td { border-bottom: solid 1px #d7d1ca;padding: 10px 0px ;vertical-align: top;}
table.system td { font-size: 18px;color: #222; font-weight: normal;letter-spacing:1px;text-align:right;}
table.system span { padding-left: 5px ;font-size: 12px; color: #222;}
@media screen and (max-width: 640px) {
table.system { width: 100%;border-collapse: collapse;border-spacing: 0px 0px;right:0px;left:0px;margin:auto auto;}
}

.flow_wrap { max-width: 600px;display: inline-block; vertical-align: top;padding: 20px 0px ; }
#flow { max-width:600px;background-color:#f1ede8;border-radius: 10px;margin: 0;padding: 20px;border: 0px solid #dbd4cb;position:relative;right:0px;left:0px;margin:15px auto;}
#flow h3 { margin: 0px;padding: 0px 0 0 60px;font-size: 20px;color: #424242;font-weight: bold;letter-spacing: 1px;text-align:left;position:relative;}
#flow p { margin: 0px;padding: 10px 0px;font-size: 17px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing: 0px;text-align:left;position:relative;}
#flow a { color: #333;text-decoration: none;}
@media only screen and (max-width:640px) {
#flow { background-color:#f1ede8;margin: 0;padding: 20px;border: 0px solid #dbd4cb;position:relative;right:0px;left:0px;margin:10px 0px ;}
#flow h3 { margin: 0px;padding: 0px 0 0 60px;font-size: 18px;color: #424242;font-weight: bold;letter-spacing: 1px;text-align:left;position:relative;}
#flow p { margin: 0px;padding: 10px 0px;font-size: 15px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing: 0px;text-align:left;position:relative;}
}

.flow_number{ background-color: #fff;border: 1px solid #dbd4cb; width: 60px;height: 60px;transform: rotate(45deg);position:absolute;top: -10px;left:-5px;}
.flow_number span{ line-height: 60px;transform: rotate(-45deg);display:block;font-family: 'Pinyon Script', cursive;font-size: 40px;color:#6e4155;}
.flow-down { margin: 0px 0;display: inline-block;vertical-align: middle;color: #dbd4cb;line-height: 1;width: 30px;height: 30px;border: 0.1em solid currentColor;border-left: 0;border-bottom: 0;box-sizing: border-box;transform: translateY(-25%) rotate(135deg);}
@media only screen and (max-width:640px) {
.flow_number{ background-color: #fff;border: 1px solid #dbd4cb; width: 50px;height: 50px;transform: rotate(45deg);position:absolute;top: -10px;left:15px;}
}

/* FAQ
--------------------------------------------------------------------------*/
.faq_list_wrapper { margin: 0px;padding: 20px 0px;position:relative;text-align:center;}
.faq_list { max-width: 800px;margin: 10px auto;}
.faq_list .accordion_header { border: 2px solid #e6e6e6;background-color: #fff;position: relative;z-index: +1;cursor: pointer;transition-duration: 0.2s;}
.faq_list .accordion_header { padding: 20px 15px 20px 70px;text-align: left; }
.faq_list .accordion_header p{ margin: 0px auto;padding: 0px ;font-size: 1.6rem;color: #6e4155;font-weight: bold;letter-spacing:1px;vertical-align: middle;}
.faq_list .accordion_header:hover {opacity: .8;}
.faq_list .accordion_inner {display: none;padding: 0px;border-left: 2px solid #e6e6e6;border-right: 2px solid #e6e6e6;border-bottom: 2px solid #e6e6e6;box-sizing: border-box;}
.faq_list .accordion_inner.stay {display: block;}
.faq_list_wrap { background-color: #fff;}
.faq_list_wrap h3{ background-color: #f2f2f2;border-bottom: 1px solid #e6e6e6;padding: 20px; font-size: 1.6rem;color: #ff6363;font-weight: bold;letter-spacing:2px;text-align: left; }
.faq_list_wrap p{ margin: 0px;padding: 16px; font-size: 16px;color: #333;line-height: 1.7;letter-spacing:2px;font-weight: bold;text-align: left; }

@media screen and (max-width: 640px) {
.faq_list .accordion_header { padding: 15px 15px 15px 60px;text-align: left; }
.faq_list .accordion_header p{ margin: 0px auto;padding: 0px 0px;font-size: 1.6rem;color: #6e4155;font-weight: bold;vertical-align: middle;}
.faq_list_wrap h3{ background-color: #f2f2f2;border-bottom: 1px solid #e6e6e6;padding: 20px; font-size: 1.6rem;color: #ff6363;font-weight: bold;letter-spacing:2px;text-align: left; }
.faq_list_wrap p{ margin: 0px;padding: 16px; font-size: 15px;color: #444;line-height: 1.6;letter-spacing:2px;font-weight: bold;text-align: left; }
}
.icon-wrap {position: absolute;left: 10px;top: 50%;transform: translatey(-50%);width: 50px;height: 50px;background-color: #6e4155;}
.icon {position: relative;display: inline-block;width: 100%;height: 100%;}
.icon:before,
.icon:after {position: absolute;content: "";display: block;transition: all 0.4s;background: #fff;left: 50%;top: 50%;width: 50%;height: 3px;transform: translate(-50%, -50%);}
.icon:before {transform: translate(-50%, -50%) rotate(90deg);}
.icon.open:before {transform: translate(-50%, -50%) rotate(0deg);}
@media screen and (max-width: 640px) {
.icon-wrap {position: absolute;left: 10px;top: 50%;transform: translatey(-50%);width: 40px;height: 40px;background-color: #6e4155;}
}

/* CONATCT
--------------------------------------------------------------------------*/
table.contact { width: 1500px;margin: 0px 0px; border-collapse: separate;border-spacing: 3px 3px;right:0px;left:0px;margin:20px auto 40px; }
table.contact th { width: 35%;background-color:#f5f4ed;padding: 20px 20px;vertical-align: middle;text-align: left;}
table.contact th { font-size: 15px; color: #222;font-weight: bold;letter-spacing:1px;}
table.contact td { width: 65%;background-color:#fcfcfb;padding: 25px 36px ;vertical-align: middle; text-align: left;}
table.contact td { font-size: 15px; color: #333;font-weight: normal;letter-spacing:1px;}
table.contact td p{ margin: 0px ; padding: 10px 0px 0px;font-size: 14px; color: #222;}
@media only screen and (max-width:1550px) {
table.contact { width: 100%;margin: 0px 0px; border-collapse: separate;border-spacing: 3px 3px;right:0px;left:0px;margin:20px auto; }
}
@media only screen and (max-width:640px) {
table.contact { width: 100%;}
table.contact th,.contact td { display: block;width: auto;}
table.contact th { padding:15px;font-size: 14px; letter-spacing:1px;position: relative;}
table.contact tr:last-child { }
table.contact td { padding:15px 10px;font-size: 14px;width: 100%; box-sizing:border-box;word-break: break-all;}
}
#agree_wrap { max-width:1460px;background-color:#fff;padding: 20px 20px ;right:0px;left:0px;margin:20px auto 50px;text-align: center;}
#agree_wrap .agree_txt { margin: 0px;padding: 10px 0px;font-size: 16px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing:1px;text-align: left;}
#agree_wrap .agree{ padding:10px 0px 0;font-size: 17px;color: #333;line-height: 1.6;font-weight: normal;letter-spacing:1px;text-align: left;}
@media only screen and (max-width:640px) {
#agree_wrap .agree_txt { margin: 0px;padding: 10px 0px;font-size: 14px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing:1px;text-align: left;}
}
.required { background: #9e0903;border-radius:0px;margin: 0px 6px;padding:3px 7px ;font-size: 10px;color: #fff;letter-spacing:1px;vertical-align: 2px;}
.optional { background: #333;border-radius:0px;margin: 0px 6px;;padding:3px 7px ;font-size: 10px;color: #fff;letter-spacing:1px;vertical-align: 2px;}

#thanks { max-width: 100%;background-color:#fff;padding: 30px 20px;right:0px;left:0px;margin:20px auto; text-align: center;}
#thanks h3 { margin: 0px;padding: 15px 0px;font-size: 2.0rem;color: #222;font-weight: bold;letter-spacing:1px;text-align: center;}
#thanks p{ margin:0px;padding: 5px 5px;font-size: 16px;color: #222;font-weight: normal;letter-spacing:1px;line-height: 1.6;text-align: center;position: relative;}
@media only screen and (max-width:640px) {
#thanks p{ margin:0px;padding: 5px 5px;font-size: 16px;color: #222;font-weight: normal;letter-spacing:1px;line-height: 1.6;text-align: left;position: relative;}
}


/*  フォーム関連
--------------------------------------------------------------------------*/
form{margin:0px;}

input{ background-color: #fff;border: 1px solid #d2d2d2;border-radius: 0px;margin: 0px;padding: 12px 10px;font-size:120%; color:#222;}
input{ -webkit-appearance: none; }
input:focus{ background-color: #fff;-webkit-appearance: none;outline: none;}
input{ width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
.input01{ width:400px;}
.input02{ width:100px;}
@media only screen and (max-width:800px) {
.input01{ width:100%;}
}

select{ margin: 0px 0px;padding: 15px 10px;font-size:16px; color: #222;}
select{ width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
select{ background-color: #fff;border: 1px solid #d2d2d2;border-radius: 0px;-webkit-appearance: none;}
select{ background: #fdfdfd url(../img/select_arrow.png) no-repeat ;background-position: right 10px center;}
select:focus { background: #fff url(../img/select_arrow.png) no-repeat ;background-position: right 10px center;outline: none;}
.select_day { width:100px; margin: 0px 0px;}

textarea{ background-color: #fff;border: 1px solid #d2d2d2;border-radius: 0px;margin: 0px 0px;padding: 10px 10px;font-size:120%;}
textarea{ width:100%;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
textarea{ overflow: auto; resize: none;-webkit-appearance: none;}
textarea:focus{ background-color: #fff;outline: none;}

input.button { max-width:400px;margin: 0px 0px;padding: 20px 0px;position: relative;}
input.button { background-color: #fff;border: 3px solid #ac5c75;border-radius:50px;}
input.button { font-size:15px;color: #ac5c75;font-weight:bold;letter-spacing: 2px;text-align: center;-webkit-appearance: none;}
input.button { -webkit-appearance: none;}
input.button:hover { background-color:#ac5c75;border: 3px solid #ac5c75;color: #fff;}
input.button:active { position:relative;top:1px;}
@media screen and (max-width: 640px) {
input.button { padding: 15px 0px;font-size:14px;}
}
input.btn_contact { max-width:380px;margin: 20px 0px;-webkit-transition: all .3s;transition: all .3s;}
input.btn_contact { border: 3px solid #792c45;border-radius:50px;padding: 17px 0px;text-align: center;}
input.btn_contact { font-size:16px;color: #792c45;font-weight:bold;letter-spacing: 2px;text-align: center;-webkit-appearance: none;}
input.btn_contact { -webkit-appearance: none;}
input.btn_contact:hover { background-color: #;}
input.btn_contact:hover  { background-color:#792c45;border: 3px solid #792c45;  transform: translate3d(0, 5px, 0);color: #fff; }
input.btn_contact:active { position:relative;top:1px;}

.btn_back { max-width: 400px;margin: 0px 0px;padding: 0px 0px ;position: relative;right:0px;left:0px;margin:auto auto;}
.btn_back a { background-color: #fff;border: 3px solid #46a879;border-radius:50px;padding: 20px 0px;text-align: center;}
.btn_back a { -webkit-transition: all .3s;transition: all .3s;display: block;position: relative;}
.btn_back a:hover { background-color:#46a879;border: 3px solid #46a879;color: #fff; }
.btn_back a { font-size:15px;color: #46a879;font-weight:bold;letter-spacing: 1px;text-align: center;-webkit-appearance: none;}
@media screen and (max-width: 640px) {
.btn_back a { padding: 15px 0px;font-size:14px;}
}

.button-group { max-width: 100%;display: flex;}
.button-group .item {width: 100%;}
.button-group .radio-button {position: absolute;width: 1px;height: 1px;opacity: 0;}
.button-group 
.radio-button + label { padding: 15px 5px;cursor: pointer;border: 1px solid #e7e1e3;margin-right: -2px;font-size:14px;color: #555;letter-spacing: 1px;background-color: #fff;display: block;text-align: center;}
.button-group .item:first-of-type .radio-button + label{border-top-left-radius:0px;border-bottom-left-radius: 0px;}
.button-group .item:last-of-type .radio-button + label {border-top-right-radius: 0px;border-bottom-right-radius: 0px;}
.button-group .radio-button:checked + label {background-color: #ac5c75;color: #fff;}
@media only screen and (max-width:800px) {
.button-group { max-width: 100%;display: flex;}
.button-group .radio-button + label {padding: 12px 0px;cursor: pointer;border: 1px solid #e7e1e3;margin-right: -2px;font-size:12px;color: #555;background-color: #fff;display: block;text-align: center;}
}


/*  検索フォーム-チェックボックス
--------------------------------------------------------------------------*/
input[type="checkbox"] {
    border: 1px solid #aaaaaa;
    vertical-align: middle;
    -webkit-appearance: none;
    position: relative;
    margin-right: 10px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    -webkit-box-sizing: border-box;width: 28px;height: 28px;
    /*Other Browser*/background: #e2e2e2;
    /*For Old WebKit*/background: -webkit-gradient(linear, left top, left bottom,color-stop(0.00, #ffffff),color-stop(1.00, #e2e2e2));
    /*For Modern Browser*/ background: linear-gradient(to bottom,#ffffff 0%,#e2e2e2 100%);
}

input[type="checkbox"]:checked { background: #937f65;border: 1px solid #336600;}
input[type="checkbox"]:checked:before {position: absolute;left: 1px;top: 16px;display: block;-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);content: "";width: 10px;height: 4px;background: #fff;-webkit-transform: rotate(45deg);-webkit-transform-origin: right center;}
input[type="checkbox"]:checked:after {display: block;position: absolute;left: 9px;top: 16px;content: "";-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .5);width: 16px;height: 4px;background: #fff;-webkit-transform: rotate(-53deg);-webkit-transform-origin: left center;}

/*  POLICY
--------------------------------------------------------------------------*/
#policy { max-width: 1000px;padding: 40px 10px;text-align: left;right:0px;left:0px;margin:auto auto;}
#policy h3 { font-size: 1.8rem;color: #333;font-weight: bold;letter-spacing:2px;line-height: 1.6;text-align:left;}
#policy h3 { padding: 40px 0px 10px; margin-bottom: 0.3rem;background-image: linear-gradient(90deg, #96d5b7 0 20%, #dedede 20%);background-repeat: no-repeat;background-size: 100% 1%; background-position: bottom;}
#policy p { margin: 0px;padding: 5px 0px 0px;font-size: 16px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing:2px;text-align: left;}
@media screen and (max-width: 640px) {
#policy { max-width: 100%;padding: 30px 10px;text-align: left;right:0px;left:0px;margin:auto auto;}
#policy h3 { font-size: 17px;color: #222;font-weight: bold;letter-spacing:2px;line-height: 1.6;text-align:left;}
#policy p { margin: 0px;padding: 5px 0px 0px;font-size: 15px;color: #333;line-height: 1.7;font-weight: normal;letter-spacing:2px;text-align: left;}
}

/*  FOOTER
--------------------------------------------------------------------------*/
.footer { min-height: 150px;background-color:#ffd0d1;margin: 0px 0px;padding: 100px 15px 60px;position: relative;text-align: center;}
.footer::before {background: url("../img/footer_top.svg");top: 0px;left: 0;content: '';height: 80px;position: absolute;width: 100%;transform: rotate(180deg);}
@media screen and (max-width: 640px) {
.footer { margin: 0px 0px;padding: 80px 10px ;position: relative;text-align: center;}
.footer::before {background: url("../img/footer_top.svg");top: 0px;left: 0;content: '';height: 30px;position: absolute;width: 100%;transform: rotate(180deg);}
}

ul.address { margin: 0px ;padding: 10px 0px;display: inline-block;}
ul.address li { padding: 3px 0px;letter-spacing:0px;}
ul.address li { font-size: 14px;color: #792c45;font-weight: normal;letter-spacing: 1px;line-height: 1.5;text-align: center;}
ul.address li a{color: #792c45;text-decoration: none;}
ul.address h3 { padding: 10px 0px;font-size: 19px;color: #fff;line-height: 1.5;font-weight: bold;letter-spacing:0px;}
@media screen and (max-width: 640px) {
ul.address { margin: 0px ;padding: 10px 10px;display: inline-block;}
ul.address li{font-size: 12px;color: #792c45;font-weight: normal;letter-spacing: 1px;line-height: 1.5;text-align: left;}
ul.address h3{  padding: 5px 0px;font-size: 14px;color: #792c45;line-height: 1.5;font-weight: bold;letter-spacing:0px;text-align: left;}
}

.foot_logo{ max-width: 230px;margin: 10px 0px;}
@media screen and (max-width: 640px) {
.foot_logo{ max-width: 200px;margin: 10px 0px;}
}

.copy{ margin: 0px ;padding: 20px 10px;text-align: center;}
.copy{ font-family: Tahoma,arial,sans; font-size:13px;color: #6e4155;line-height: 1.6;font-weight:normal;letter-spacing: 1px;}
.copy a{ color: #6e4155;text-decoration: none;}
.copy a:hover{ text-decoration: underline;}
@media screen and (max-width: 640px) {
.copy{ margin: 0px ;padding: 20px 10px ;text-align: center;}
.copy{ font-family: Tahoma,arial,sans; font-size:11px;color: #6e4155;line-height: 1.6;font-weight:normal;letter-spacing: 1px;}
}

/*  NAVI
--------------------------------------------------------------------------*/
@media screen and (min-width: 640px) {
#foot_content { display: none;}
ul.foot_navi_menu { display: none;}
ul.foot_navi { display: none;}
}

@media screen and (max-width: 640px) {
#foot_content{ background-color: #;padding: 50px 0 0 0;}

ul.foot_navi { width: 100%;background-color: rgba(255,208,209,0.8);border-top: 0px solid #d6e4e3;margin: 0px;padding: 1px 0px ;border-radius: 0px;position: fixed;bottom: 0px;z-index: 9999;}
ul.foot_navi li { width: 50%;float: left;padding: 0px;}
ul.foot_navi li { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
ul.foot_navi li a {display: block;margin: 1px ;padding: 0px 0px; }
ul.foot_navi li a {background-color:#f8a69e;border: 1px solid #fb8e84;border-radius:8px;box-shadow:0px 0px 5px 1px # inset;}
ul.foot_navi:after { content: "";display: block;clear: both;}
ul.foot_navi li img { width: 100%;}
ul.foot_navi li.tel a{ background-color:#6e4155;}
ul.foot_navi li.mail a{ background-color:#e07bae;}
}




/* PAGER
--------------------------------------------------------------------------*/
.pager_wrap { width: 840px;position: relative;text-align: center; }
ul.pager { margin: 0px;padding: 10px 0px 10px ;display: inline-block;}
ul.pager li { background-color: #e490a8;border: 0px solid #dad9cc;margin: 2px 1px 2px;display: block;}
ul.pager li { min-width: 40px;line-height: 40px;float:left;position:relative;text-align: center;}
ul.pager li { font-family: 'Oswald', sans-serif ;font-size: 14px;color: #fff;letter-spacing:0px;text-decoration: none;;}
ul.pager li a { background-color: #d8d8d8;line-height: 40px;display:block;position:relative;text-align: center;}
ul.pager li a { font-size: 14px;color: #fff;letter-spacing:0px;text-decoration: none;}
ul.pager li a:hover  { background-color: #e490a8;color:#fff;text-decoration: none;display:block;}
ul.pager li.current a { background-color: #e490a8;color:#fff;text-decoration: none;display:block;}

/* SLIDER
--------------------------------------------------------------------------*/
.bx-wrapper { position: relative;  padding: 0px 0px 0px;margin: 0px auto 0px;z-index: 8000;}
_.bx-wrapper img { max-width: 100%;height: auto; display: block; position: relative;  top: 0px; }
.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto { position: absolute; bottom: 0px; width: 100%;z-index: 9999;  }
.bx-wrapper .bx-pager { text-align: center; font-size: 0.85em; font-family: Arial; font-weight: bold; color: rgb(255, 255, 255); padding-top: 10px; }
.bx-wrapper .bx-pager .bx-pager-item, .bx-wrapper .bx-controls-auto .bx-controls-auto-item { display: inline-block; }
.bx-wrapper .bx-pager.bx-default-pager a { background: none repeat scroll 0% 0% rgb(235, 232, 215); text-indent: -9999px; display: block; width: 13px; height: 13px; margin: 0px 5px; outline: 0px none; border-radius: 10px; }
.bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active { background: none repeat scroll 0% 0% rgb(214, 214, 214); }
.bx-wrapper .bx-prev { left: -10px; background: url('../img/prev.png') no-repeat scroll transparent;}
.bx-wrapper .bx-next { right: -20px; background: url('../img/next.png') no-repeat scroll transparent; }
.bx-wrapper .bx-prev:hover { background-position: 0px 0px; }
.bx-wrapper .bx-next:hover { background-position: 0px 0px; }
.bx-wrapper .bx-controls-direction a { position: absolute; top: 42%; margin-top: -16px; outline: 0px none; width: 60px; height: 60px; text-indent: -9999px; z-index: 9999; }
/*.bx-wrapper li { height: 100%; }*/
.bx-viewport { overflow: visible!important;width: 100%!important;}







