@charset "UTF-8";
/*!
	Theme Name: 
	Theme URI: 
	Author: 
	Author URI: 
	Description: 

	Version: 0.0.1
*/
/************************/
html {
   visibility: hidden;
}
html.wf-active {
   visibility: visible;
}
html {
   font-size: 62.5%;
}
body {
   color: #111;
   font-size: 16px;
   font-size: 1.6rem;
   line-height: 1.7;
   font-family: 'Zen Kaku Gothic New', sans-serif;
   font-weight: 400;
   font-style: normal;
   /*   font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif, fot-tsukubrdgothic-std, sans-serif;*/
   font-feature-settings: "palt";
   -webkit-font-feature-settings: "palt";
   -moz-font-feature-settings: "palt";
   letter-spacing: 2px;
}
html.fixed {
   height: 100%;
   overflow: hidden;
}
.name {
   position: absolute;
   right: 8%;
   bottom: calc(100% - 93%);
   color: #fff;
}
.kvslider {
   opacity: 0;
   transition: opacity .3s linear;
}
.kvslider.slick-initialized {
   opacity: 1;
}
.googleCalendar {
   margin-bottom: 7rem;
}
.googleCalendar iframe {
   width: 100%;
   height: 400px;
}
.kvtext {
   position: absolute;
   top: 16%;
   left: 5%;
   text-align: center;
}
.kvtext h2 span {
   font-size: 2vw;
   display: block;
}
.lead ul {
   display: flex;
   align-items: center;
}
.kvtext h2 {
   font-size: 7rem;
   letter-spacing: .1em;
}
.lead ul li a {
   display: flex;
   background: #d6c66c;
   color: #fff;
   border-radius: 100%;
   width: 120px;
   height: 120px;
   justify-content: center;
   align-items: center;
   text-align: center;
   font-size: 1.6rem;
   line-height: 1.3;
}
.lead {
   margin: 0 2.5rem;
   top: 54%;
   position: absolute;
   margin-left: 7%;
}
.lead ul li:first-child img {
   width: 130px;
   max-width: 130px;
}
.lead ul li {
   margin-right: 6%;
}
@media all and (min-width: 768px) {
   .googleCalendar iframe {
      height: 600px;
   }
}
/* font  
-----------------------------------*/
.h1 {
   font-size: 4.2rem;
   line-height: 1.4;
}
h1 {
   font-size: 3rem;
}
h1 span {
   font-size: 1.8rem;
   display: block;
}
h2 {
   font-size: 3.6rem;
   font-weight: normal;
}
h3, .h3 {
   font-size: 2.4rem;
   font-weight: normal;
}
h4 {
   font-size: 2.2rem;
   font-weight: normal;
}
h5 {
   font-size: 1.8rem;
   font-weight: normal;
}
h6 {
   font-size: 1.6rem;
   font-weight: normal;
}
.koz {
   font-family: kozuka-mincho-pro, serif;
   font-weight: 500;
   font-style: normal;
}
.tuku {
   font-family: fot-tsukuaoldmin-pr6n, sans-serif;
   font-weight: 300;
   font-style: normal;
}
/*section
-----------------------------------*/
section h2 {
   font-size: 2.2rem;
   position: relative;
   letter-spacing: 5px;
}
section h2.tate::after {
   content: '';
   border-left: 1px solid #333;
   height: 80px;
   position: absolute;
   top: 40px;
   left: 50px;
}
.titlehead1 {
   font-size: 2.5rem;
   margin-bottom: 2rem;
}
.titlehead1 + p {
   margin-bottom: 3rem;
}
section h2.yoko::after {
   content: '';
   border-top: 1px solid #333;
   height: 11px;
   position: absolute;
   width: 60px;
   top: 16px;
   margin-left: 10px;
}
strong {
   font-weight: bold;
}
.text-center {
   text-align: center;
}
.text-right {
   text-align: right;
}
.text-left {
   text-align: left;
}
.text-i {
   font-style: italic;
}
.lhkv {
   line-height: 1.3;
}
.li14 {
   line-height: 1.4;
}
.plat {
   font-feature-settings: "palt";
   -webkit-font-feature-settings: "palt";
   -moz-font-feature-settings: "palt";
}
.mangahead {
   line-height: 1.3;
   margin-bottom: 2rem;
}
.f22 {
   font-size: 2.2rem;
}
.mark {
   background: linear-gradient(transparent 60%, #f6ff5f 60%);
}
/* link  
-----------------------------------*/
a, a img, button {
   text-decoration: none;
   -webkit-transition: ease 0.7s;
   -moz-transition: ease 0.7s;
   -o-transition: ease 0.7s;
   -ms-transition: ease 0.7s;
   transition: ease 0.7s;
   color: #303030;
   -webkit-backface-visibility: hidden; /* è¿½åŠ  */
   backface-visibility: hidden; /* è¿½åŠ  */
}
a:hover {
   opacity: .8;
}
.row {
   padding-right: 15px;
   padding-left: 15px;
}
.palt {
   font-feature-settings: "palt";
   -webkit-font-feature-settings: "palt";
   -moz-font-feature-settings: "palt";
}
a.arrow {
   margin-top: 1rem;
   display: block;
   position: relative;
   font-size: 1.3rem;
}
a.arrow::before {
   content: '';
   background-color: #d580a6;
   width: 10px;
   height: 10px;
   clip-path: polygon(0% 0%, 0% 100%, 50% 50%, 0% 0%);
   position: relative;
   display: inline-block;
   top: 0px;
}
.linknone {
   pointer-events: none;
}
/* container width
-----------------------------------*/
.container {
   margin: auto;
   max-width: 900px;
   padding: 0px;
   box-sizing: border-box;
}
.containerflat {
   margin: auto 4%;
}
.containerinner {
   padding: 0 30px;
}
/* hr
-----------------------------------*/
.hr1 {
   border: none;
   background: #eee;
   height: 1px;
   width: 100%;
   margin: 3rem auto;
}
/* w750
-----------------------------------*/
.w750 {
   max-width: 830px;
   margin: auto;
   padding: 0px 40px;
}
.w750inner {}
.row {
   padding-right: 15px;
   padding-left: 15px;
}
/* w900
-----------------------------------*/
.w900 {
   max-width: 900px;
   margin: auto;
   padding: 0px 40px;
}
/* w960
-----------------------------------*/
.w960 {
   max-width: 960px;
   margin: auto;
   padding: 0px 40px;
}
/* colum
-----------------------------------*/
/*530colum*/
.wid530 {
   width: 530px;
}
/* flex 
-----------------------------------*/
.d-flex {
   display: flex;
   flex-direction: row;
}
.d-content-column {
   flex-direction: column !important;
}
.d-align-items-baseline {
   align-items: baseline;
}
.d-align-items-center {
   align-items: center;
}
.d-justify-space-between {
   justify-content: space-between;
}
.d-justify-space-around {
   justify-content: space-around;
}
.d-align-items-bottom {
   align-items: baseline;
}
.column-reverse {
   flex-direction: column-reverse;
}
.row-reverse {
   flex-direction: row-reverse;
}
.align-items-stretch {
   align-items: stretch;
}
.flex-wrap-wrap {
   flex-wrap: wrap;
}
.flev {
   flex-direction: row-reverse;
}
.ml-auto {
   margin-left: auto;
}
.mr-auto {
   margin-right: auto;
}
@keyframes arrow {
   0% {
      transform: translate(-50%, 0)
   }
   100% {
      transform: translate(-50%, 125px)
   }
}
/* img responsiv 
-----------------------------------*/
main div > img, img.img_responsive {
   max-width: 100%;
   width: 100%;
   display: inherit;
   height: auto;
}
img.noresponsive310 {
   width: 100%;
   max-width: 100%;
   display: block;
}
/* btn
-----------------------------------*/
.btn_more, #contact ul li {
   position: relative;
}
.btn_more a {
   font-family: kozuka-mincho-pro, serif;
   font-weight: 500;
}
.btn_more a, #contact ul li a {
   border: 1px solid #333;
   padding: 3px 10px;
   max-width: 130px;
   display: flex;
   height: 40px;
   align-items: center;
   justify-content: center;
   font-style: normal;
   letter-spacing: 1px;
}
.btn_more a::after {
   content: '';
   background: url("../../common/img/4x/btn_more_arrow@4x.png") no-repeat right center;
   display: inline-block;
   width: 30px;
   height: 12px;
   background-size: 30px;
   margin-left: 10px;
}
/* content base64 tmp
-----------------------------------
::before {
    content: url("data:image/svg+xml;base64,");
}
*/
/* list
-----------------------------------*/
.komelist, .circlelist {
   position: relative;
   margin-left: 23px;
}
.komelist li::before {
   content: '※';
   margin-left: -20px;
   margin-right: 4px;
   top: -2px;
   position: relative;
}
.circlelist li::before {
   content: '・';
   margin-left: -20px;
   margin-right: 4px;
   top: -2px;
   position: relative;
}
.icon_circle2 {
   margin-left: 30px;
}
.icon_circle2 li::before {
   content: '●';
   display: inline-block;
   color: #D580A6;
   margin-left: -20px;
   margin-right: 10px;
}
.icon_dot {
   margin-left: 30px;
}
.icon_dot li::before {
   content: '・';
   display: inline-block;
   color: #D580A6;
   margin-left: -26px;
   margin-right: 10px;
}
/* pagetop 
-----------------------------------*/
.pagetop {
   display: none;
   position: fixed;
   bottom: 20px;
   right: 20px;
   z-index: 100;
}
.pagetop a::before {
   content: '';
   width: 20px;
   height: 20px;
   border: 0px;
   border-top: solid 2px #000;
   border-right: solid 2px #000;
   -ms-transform: rotate(45deg);
   -webkit-transform: rotate(45deg);
   transform: rotate(-45deg);
   position: absolute;
   left: 0;
   right: 0;
   margin: auto;
   top: 10px;
   bottom: 0px;
   opacity: 1;
}
.pagetop a {
   display: block;
   border-radius: 50px;
   -webkit-backface-visibility: hidden;
   backface-visibility: hidden;
   zoom: 1;
   width: 60px;
   height: 60px;
   text-align: center;
   /* font-size: 24px; */
   text-decoration: none;
   line-height: 50px;
   /* border: 1px solid #fbfbfb; */
   -webkit-transition: all 0.7s;
   -moz-transition: all 0.7s;
   -ms-transition: all 0.7s;
   -o-transition: all 0.7s;
   transition: all 0.7s;
   opacity: 0.8;
   color: #1d1d1c;
   background: #fff;
}
.pagetop a span {
   top: 22px;
   position: relative;
   font-size: 0.1rem;
}
.pagetop a:hover {
   opacity: 0.6;
}
.bookstore {
   position: fixed;
   right: 0;
   top: 40%;
}
_::-webkit-full-page-media, _:future, :root .bookstore {
    right: 20px;
}
.bookstore a {
   display: block;
   background: #d6c66c;
   padding: 20px 10px;
   -ms-writing-mode: tb-rl;
   writing-mode: vertical-rl;
   text-orientation: sideways;
   font-size: 1.2rem;
   color: #fff;
   transform: rotate(180deg);
   transition: none;
}
/* google map responsive
-----------------------------------*/
.gmapres {
   position: relative;
   padding-bottom: 30.842%;
   padding-top: 30px;
   height: 400px;
   overflow: hidden;
   min-width: 100%;
   margin-right: 0;
   margin-bottom: 2rem;
}
.gmapres iframe, .gmapres object, .gmapres embed {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}
/* footer
-----------------------------------*/
footer .copy {}
footer .copy ul {
   display: flex;
   justify-content: center;
   align-items: center;
   margin-bottom: 2rem;
   margin-top: 2rem;
   font-family: kozuka-mincho-pro, serif;
   font-weight: 500;
   font-style: normal;
   letter-spacing: 2px;
}
footer .copy ul li:last-child {
   margin-left: 1.8rem;
}
footer .copy ul li:nth-child(2) {
   margin-left: 2rem;
}
footer {
   text-align: center;
   margin: auto;
}
.footernav {
   border-bottom: 1px solid #333;
   padding-bottom: 2.5rem;
}
.footernav ul {
   display: flex;
   justify-content: center;
}
.footernav ul li::before {
   content: '';
   border-left: 1px solid #333;
}
.footernav ul li:first-child::before {
   content: '';
   border-left: none;
}
.footernav ul li a {
   padding: 0 20px;
   letter-spacing: 1px;
   font-family: tbudgothic-std, sans-serif;
   font-weight: 400;
   font-style: normal;
}
.sp_visible {
   display: none;
}
.sp_hidden {
   display: inherit;
}
.sp_xsvisible {
   display: none;
}
.pagehead h3 {
   line-height: 1.4;
   padding-left: 3rem;
   margin: 5rem auto;
   position: relative;
}
.pagehead {
   margin: auto;
   display: flex;
   justify-content: center;
}
.pagehead h3::before {
   content: '';
   background: url("../../common/img/2x/headlogo@2x.png") no-repeat;
   background-size: 100%;
   width: 40px;
   height: 40px;
   position: absolute;
   top: 0;
   bottom: 0;
   margin: auto;
   left: -3rem;
}
.gmap {
   height: 0;
   overflow: hidden;
   padding-bottom: 56.25%;
   position: relative;
   margin-bottom: 5rem;
}
.gmap iframe {
   position: absolute;
   left: 0;
   top: 0;
   height: 100%;
   width: 100%;
}
/*story-concept
-----------------------------------*/
#story-concept {
   padding: 9rem 0;
}
#story-concept h2 {
   margin-bottom: 3rem;
}
#story-concept h2 + p {
   font-size: 1.8rem;
   line-height: 2;
}
/*contents
-----------------------------------*/
main {
   max-width: 1240px;
   margin: auto;
   padding:0 30px;
}
#contents {
   background: #e4e3ea;
   padding: 7rem 0;
}
section#contents h2.tate::after {
   content: '';
   border-left: 1px solid #333;
   height: 80px;
   position: absolute;
   top: 40px;
   left: 63px;
}
#contents h3 {
   font-size: 2.5rem;
   margin-bottom: 2rem;
}
#contents .d-flex p {
   font-size: 1.8rem;
   line-height: 2;
}
#contents .d-flex div:firest-child {
   width: 40%;
}
#contents .d-flex div:last-child {
   width: auto;
   margin: 5rem 0 0 10rem;
}
/*coaching
-----------------------------------*/
#coaching {
   background: url("../../common/img/4x/section_ Coaching@4x.png") no-repeat left top;
   height: 500px;
   background-size: cover;
   padding: 4rem 0;
}
#coaching h2 {
   -ms-writing-mode: tb-rl;
   writing-mode: vertical-rl;
   text-align: left;
   font-size: 8rem;
   line-height: 1;
   margin-right: -40px;
}
#coaching h2 strong {
   font-size: 4.2rem;
   font-weight: normal;
}
#coaching .d-flex {
   flex-flow: row-reverse;
}
#coaching .coa1 {
   width: 36%;
   margin-top: calc(100% / 5);
   margin-right: calc(100vw / 15);
   /* margin-top: auto; */
}
#coaching .titlehead1 + p {
   margin-bottom: 5rem !important;
}
/*training
-----------------------------------*/
#training {
   padding: 7rem 0
}
/*mg
-----------------------------------*/
#mg {
   background: #d3d1bc;
   padding: 7rem 0
}
#mg {
   background: #d3d1bc;
}
#training .d-flex, #mg .d-flex {
   justify-content: space-between;
}
.imgmg {
   width: 40%;
}
#mg small {
   font-size: .4rem;
   letter-spacing: 1px;
        margin-left: -0.4rem;
}
.kv {
   position: relative;
}
/*kvnews
-----------------------------------*/
.kvnews {
   background: rgb(114 113 113 / 40%);
   padding: 8px 5px 5px 15px;
   font-size: 1.2rem;
   color: #fff;
   max-width: 400px;
   position: absolute;
   bottom: 0;
   width: 100%;
}
.oshirase {
   float: left;
   width: 5em;
   margin-right: 2rem;
   letter-spacing: 1px;
}
.kvnews a {
   color: #fff;
   letter-spacing: 1px;
}
.kvnews span {
   margin-right: 2rem;
   display: inline-block;
}
.kvnews .slick-prev, .kvnews .slick-next {}
.kvnews .slick-prev {
   right: -3px;
   left: auto;
   transform: rotate(90deg);
   top: 2px;
}
.kvnews .slick-vertical .slick-slide {
   display: block;
   height: auto;
   border: 1px solid transparent;
   top: -2px;
   position: relative;
}
.kvnews .slick-prev::after {
   content: '';
   background: #ddd;
   width: 1px;
   height: 9px;
   position: absolute;
   top: 6px;
   left: 8px;
}
.kvnews .slick-list {
   width: 300px;
   overflow: hidden;
}
.kvnews .slick-next {
   right: -3px;
   left: auto;
   transform: rotate(90deg);
   top: 14px;
}
.kvnews .slick-prev:before {
   content: '';
   display: block;
   width: 5px;
   height: 5px;
   border-top: solid 1px #fff;
   border-right: solid 1px #fff;
   -webkit-transform: rotate(225deg);
   transform: rotate(225deg);
}
.kvnews .slick-next:before {
   content: '';
   display: block;
   width: 5px;
   height: 5px;
   border-top: solid 1px #fff;
   border-right: solid 1px #fff;
   -webkit-transform: rotate(45deg);
   transform: rotate(45deg);
}
/*philosophy
-----------------------------------*/
#philosophy {
   position: relative;
   background: url("../../common/img/4x/section_ philosophy@4x.png") no-repeat 0 0;
   background-size: cover;
   height: 570px;
}
#philosophy p {
   font-size: 1.8rem;
}
#philosophy .container {
   padding-top: 10rem;
}
.centerborder {
   position: relative;
}
.centerborder::after {
   content: '';
   border-left: 1px solid #333;
   width: 1px;
   height: 80px;
   position: absolute;
   left: 0;
   right: 0;
   margin: auto;
   bottom: -40px;
   z-index: 1;
}
/*news
-----------------------------------*/
#news {
   background: #e4e3ea;
}
#news .containerinner {
   padding-top: 5rem;
   padding-bottom: 7rem;
}
#news .sectiondesc {
   margin: 80px 0 0 -77px;
   width: 100%;
}
#news .sectiondesc .d-flex {
   width: 100%;
}
#news .sectiondesc article {
   background: #fff;
   border: #333 1px solid;
   width: calc(100% / 3);
   padding: 20px;
   margin-right: 30px;
   display: flex;
   flex-direction: column;
}
#news .sectiondesc a:last-child {
   margin-right: 0;
}
#news article dl {
   font-size: 1.4rem;
   letter-spacing: 1px;
}
#news article dl dt {
   margin: 1rem 0;
}
#news article dl dd {
   margin-bottom: 2rem;
    text-align: justify;
    line-height: 1.5;
}

#news article ul {
   display: flex;
   margin-top: auto;
   flex-wrap: wrap;
   margin-right: 5px;
}
#news article ul li {
   margin-right: 1rem;
   margin-bottom: 10px;
}
#news article ul li {
   border: 1px solid #333;
   font-size: 1.3rem;
   padding: 3px 10px;
   text-align: center;
}
.eyecatch img {
   max-width: 100%;
}
/*profile
-----------------------------------*/
#profile {
   padding: 6rem 0;
}
#profile h2 {
   margin-bottom: 5rem;
}
#profile h5 {
   margin-bottom: 3rem;
}
#profile h6 {
   margin-bottom: 3rem;
}
#profile h6 + p {}
#profile dl {
   margin-bottom: 5rem;
   font-feature-settings: "palt";
   -webkit-font-feature-settings: "palt";
   -moz-font-feature-settings: "palt";
   letter-spacing: 0;
   line-height: 1.9;
}
#profile dl dd ul li {
   display: flex;
}
#profile dl dd ul li span:first-child {
   width: 4em;
}
#profile dl dd ul li span:last-child{
    width: 100%;
}
#profile dl dt{
    margin-left: -0.8rem;
}
/*EDGE CSS*/
@supports (-ms-ime-align:auto) {
   letter-spacing: 0px;
}
#profile h2 + .d-flex {
   margin-bottom: 8rem;
}
#profile .proftxt {
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
}
#profile .profimg {
   width: 28%;
   margin-left: 50px;
}
.platp,
.platp span{
    margin-left: -0.8rem;
}
/*contact
-----------------------------------*/
#contact {
   padding-top: 6rem
}
#contact .contactinner {
   padding: 90px 49px;
}
#contact ul {
   margin-bottom: 4rem;
   margin-top: 4rem;
}
#contact ul li {
   width: 30%;
   display: block;
   line-height: 1;
   align-items: center;
   margin-right: 5%;
}
#contact ul li:last-child {
   font-size: 1rem;
}
#contact ul li a {
   max-width: 100%;
   text-align: left;
}
#contact ul li a::after {
   content: '';
   background: url("../../common/img/4x/btn_contact@4x.png") no-repeat right center;
   display: inline-block;
   width: 60px;
   height: 12px;
   background-size: 51px;
   margin-left: 10px;
}
/*partners
-----------------------------------*/
#partners {
   margin-bottom: 10rem;
}
#partners .sectiondesc h3 {
   font-size: 1.4rem;
   letter-spacing: 1px;
}
#partners .sectiondesc h3 span {
   color: #d6c66c;
}
#partners .sectiondesc h3 span::before {
   content: '';
   border-left: 1px solid #333;
   padding-left: 1rem;
   margin-left: 1rem;
}
#partners .imgblock {
   width: 30%;
   margin-left: 7rem;
}
#partners .textblock {
   display: flex;
   flex-direction: column;
   padding-top: 2rem;
   width: 55%;
}
#partners .textblock h6 {
   margin-top: 3rem;
}
#partners .btn_more {
   margin-top: auto;
   ;
}
#partners .sectiondesc {
   margin-top: 70px;
   margin-left: 30px;
}
#partners .sectiondesc article {
   margin-bottom: 8rem;
}
/*page*/
/*page-coaching
-----------------------------------*/
#page-coaching {
   margin-bottom: 10rem;
}
#page-coaching h2 {
   border-top: 1px solid #111;
   border-bottom: 1px solid #111;
   width: 42%;
   margin: 11vh 0 3rem;
   display: block;
   padding: 1rem 0;
   text-align: center;
}
#page-coaching h2 + ul {
   margin-bottom: 3rem;
}
.site-main {
   margin-right: auto !important;
   margin-left: auto !important;
   margin-bottom: 10vh;
}
.navigation.post-navigation {
   margin: 3rem 0;
   padding: 0;
}
.nav-previous {
   background: #eee;
   padding: 6px 10px;
}
.entry-title {
   line-height: 1.3;
}
.site-main, .entry-header {
   margin: 7vw 0 3rem;
}
.osusume1 h3, .osusume2 h3 {
   margin-bottom: 1rem;
}
#page-coaching .osusume1 {
   border: 1px solid #d3d1bc;
   border-radius: 30px;
   padding: 10px 30px 15px;
   max-width: 590px;
}
#page-coaching .osusume1 h3 {
   color: #cbb669;
}
#page-coaching .osusume2 {
   border: 1px solid #956134;
   border-radius: 30px;
   padding: 10px 30px 15px;
   max-width: 590px;
}
#page-coaching .osusume2 h3 {
   color: #956134;
}
#page-coaching .businessblx {
   position: relative;
   margin-bottom: 3rem;
}
#user .userinner {
   letter-spacing: 1px;
}
#user .userinner, #page-coaching {}
#page-coaching .balanceblx {
   position: relative;
}
.bgtxt {
   position: absolute;
   z-index: -1;
   border-radius: 100%;
   width: 300px;
   height: 300px;
   display: flex;
   justify-content: center;
   align-items: center;
   right: 0;
   font-size: 3rem;
   letter-spacing: 2px;
   top: -100px;
   font-family: fot-matisse-pron, sans-serif;
}
#page-coaching .businessblx .bgtxt {
   background: #efefef;
   color: #9fa0a0;
}
#page-coaching .balanceblx .bgtxt {
   background: #efeedf;
   color: #9f9b66;
}
/* user 
-----------------------------------*/
#user {}
#user .userinner {
   padding: 10px;
}
#user h2 {
   background: #efefef;
   padding: 20px 30px;
   margin-top: 5rem;
}
#user h3 {
   font-size: 2rem;
   margin-bottom: 3rem;
   margin-top: 4rem;
}
.btn_more.contact {
   margin: 5rem 0;
}
.btn_more.contact a {
   width: 100%;
   max-width: 250px;
   font-family: fot-tsukubrdgothic-std, sans-serif;
   font-weight: 400;
   font-style: normal;
}
.btn_more.contact a::after {
   content: '';
   background: url("../../common/img/4x/btn_more_arrow@4x.png") no-repeat right center;
   display: inline-block;
   width: 50px;
   height: 12px;
   background-size: 43px;
   margin-left: 10px;
}
.serviceblk h4 {
   margin-bottom: 3rem;
}
.serviceblk h5 + ul {
   margin-bottom: 3rem;
}
.serviceblk h5 {
   font-feature-settings: "palt";
   -webkit-font-feature-settings: "palt";
   -moz-font-feature-settings: "palt";
    margin-left: -1rem;
}
.plinkheadh4 {
   margin-top: 3rem;
   border-top: 1px solid #888;
   padding-top: 3rem;
   margin-bottom: 3rem;
}
.serviceblk .page-mg h4 {
   margin-top: 0;
}
/* page-mg
-----------------------------------*/
#page-mg {
   background: #d3d1bc;
   margin-left: calc(((100vw - 100%) / 2) * -1);
   margin-right: calc(((100vw - 100%) / 2) * -1);
   padding: 5rem 0 0;
   margin-bottom: 10rem;
}
#page-mg ul {
   margin-top: 3rem;
}
#page-mg li {
   width: calc(100vw / 3);
   margin-right: 3%;
}
#page-mg li:last-child {
   margin-right: 0;
}
#page-mg li img {
   max-width: 100%;
}
/* medhia query 
-----------------------------------*/
@media (max-width: 1080px) {
   .container {
      margin: auto;
      max-width: 900px;
      padding: 0 15px;
      box-sizing: border-box;
   }
   .wid530 {
      width: 48%;
   }
   .kvtext h2 {
      font-size: 6vw;
      letter-spacing: .1em;
   }
   .lead {
      margin: 0 2.5rem;
      top: 54%;
      position: absolute;
      margin-left: 6vw;
   }
   .lead ul li:first-child img {
      width: 10vw;
      max-width: 130px;
   }
   .lead ul li a {
      display: flex;
      background: #d6c66c;
      color: #fff;
      border-radius: 100%;
      width: 12vw;
      height: 12vw;
      justify-content: center;
      align-items: center;
      text-align: center;
      font-size: 1.6vw;
   }
   #contact ul li a::after {
      content: '';
      background: url("../../common/img/4x/btn_contact@4x.png") no-repeat right center;
      display: inline-block;
      width: 40px;
      height: 12px;
      background-size: 41px;
      margin-left: 10px;
   }
   #profile dl dd br.sp_hidden {
      display: none;
   }
   #profile dl dd {
      text-align: justify;
   }
}
@media (max-width: 980px) {
   #coaching .coa1 {
      width: 33vw;
      margin-top: calc(100% / 5);
      margin-right: calc(100vw / 15);
      /* margin-top: auto; */
   }
   #coaching h2 {
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      text-align: left;
      font-size: 8rem;
      line-height: 1;
      margin-right: 0;
   }
   #coaching {
      background: url("../../common/img/4x/section_ Coaching@4x.png") no-repeat center top;
      height: 500px;
      background-size: cover;
      padding: 4rem 0;
   }
   #philosophy {
      position: relative;
      background: url("../../common/img/4x/section_ philosophy@4x.png") no-repeat 53% 0;
      background-size: cover;
      height: 570px;
   }
   #contact ul li {
      width: 40%;
      display: block;
      line-height: 1;
      align-items: center;
      margin-right: 1vw;
   }
   #contact ul li a {
      max-width: 100%;
      text-align: left;
   }
   #partners .imgblock {
      width: 30%;
      margin-left: 9%;
   }
   #partners .sectiondesc {
      margin-top: 70px;
      margin-left: 2vw;
   }
   #partners .textblock {
      display: flex;
      flex-direction: column;
      padding-top: 2rem;
      width: 58%;
   }
   #page-coaching h2 {
      border-top: 1px solid #111;
      border-bottom: 1px solid #111;
      width: 45vw;
      margin: 11vh 0 3rem;
      display: block;
      font-size: 2.8vw;
   }
}
@media (max-width: 768px) {
   /*sp visible hidden*/
   .sp_visible {
      display: inherit;
   }
   .sp_hidden {
      display: none;
   }
   /* container  
    -----------------------------------*/
   main {
      max-width: 100%;
      margin: auto;
      padding: 0;
   }
   .container {
      max-width: 100%;
      padding-left: 15px;
      padding-right: 15px;
   }
   .containerinner {
      padding: 0;
   }
   .row {
      padding-right: 15px;
      padding-left: 15px;
   }
   .w750 {
      max-width: 830px;
      margin: auto;
      padding: 0px 15px;
   }
   /* flex 
    -----------------------------------*/
   .d-flex {
      display: flex;
      flex-direction: column;
   }
   .titlehead1 {
      font-size: 6vw;
      margin-bottom: 2rem;
   }
   /* kv 
     -----------------------------------*/
   .lead ul li a {
      display: flex;
      background: #d6c66c;
      color: #fff;
      border-radius: 100%;
      width: 90px;
      height: 90px;
      justify-content: center;
      align-items: center;
      text-align: center;
      font-size: 1vw;
   }
   .lead ul li:first-child img {
      width: 11vw;
   }
   .kvtext {
      position: absolute;
      top: 16%;
      left: 7%;
      text-align: center;
   }
   .kvtext h2 {
      font-size: 6vw;
      letter-spacing: .1em;
   }
   .kvnews {
      background: rgb(114 113 113 / 40%);
      padding: 5px 5px 5px 15px;
      font-size: 1.2rem;
      color: #fff;
      max-width: 768px;
      position: relative;
      bottom: 0;
      width: 100%;
   }
   .name {
      position: absolute;
      right: 8%;
      bottom: calc(100% - 82%);
      color: #fff;
      font-size: 2vw;
   }
   /* coaching 
     -----------------------------------*/
   #coaching {
      background: url("../../common/img/4x/section_ Coaching@4x.png") no-repeat 0vw top;
      height: 496px;
      background-size: 317vw;
      padding: 4rem 0;
   }
   #coaching h2 {
      -ms-writing-mode: tb-rl;
      writing-mode: inherit;
      text-align: left;
      font-size: 4rem;
      line-height: 1.3;
      margin-right: 0;
   }
   #coaching h2 strong {
      font-size: 2.55rem;
      font-weight: normal;
   }
   #coaching .d-flex {
      flex-flow: column;
   }
   #coaching .coa1 {
      width: 100%;
      margin-top: calc(100% / 5);
      margin-right: 0;
      /* margin-top: auto; */
   }
   /* mg 
     -----------------------------------*/
   .imgmg {
      width: 100%;
      margin-top: 3rem;
   }
   /* philosophy 
     -----------------------------------*/
   #philosophy {
      position: relative;
      background: url("../../common/img/4x/section_ philosophy@4x.png") no-repeat 53% bottom;
      background-size: cover;
      height: 570px;
   }
   /* news 
     -----------------------------------*/
   #news .sectiondesc {
      margin: 100px 0 0 0;
      width: 100%;
   }
   #news .sectiondesc a {
      background: #fff;
      
      width: 100%;
      margin-right: 30px;
      margin-bottom: 20px;
   }
    
   /* profile 
    -----------------------------------*/
   #profile h2 + .d-flex {
      margin-bottom: 8rem;
      flex-direction: column-reverse;
   }
   #profile .profimg {
      width: 42%;
      margin-left: 0;
      margin-bottom: 1rem;
   }
   /* contact 
    -----------------------------------*/
   #contact ul li {
      width: 100%;
      display: block;
      line-height: 1;
      align-items: center;
      margin-right: 5rem;
      margin-top: 15px;
   }
   /* partners 
    -----------------------------------*/
   #partners .sectiondesc {
      margin-top: 10rem;
      margin-left: 0;
   }
   #partners .imgblock {
      width: 50%;
      margin-left: auto;
      margin-top: 30px;
   }
   #partners .textblock {
      display: flex;
      flex-direction: column;
      padding-top: 2rem;
      width: 100%;
   }
   #partners .textblock h6 {
      margin-top: 3rem;
      margin-bottom: 3rem;
   }
   /* footer 
    -----------------------------------*/
   .footernav ul {
      display: flex;
      flex-direction: column;
      align-items: baseline;
   }
   .footernav ul li:first-child::before {
      border-left: 1px solid #333;
   }
   .copy ul li:first-child {
      font-size: 11px;
   }
   /* page 
    -----------------------------------*/
   #page-coaching h2 {
      border-top: 1px solid #111;
      border-bottom: 1px solid #111;
      width: calc(100% - 50%);
      margin: 11vh 0 3rem;
      display: block;
      font-size: 2.8vw;
   }
   #page-mg ul {
      margin-top: 3rem;
      flex-direction: row;
   }
    /* news
    -----------------------------------*/
    #news .sectiondesc article {
    background: #fff;
    border:none;
    width: 100%;
    padding: 20px;
    margin-right: 30px;
    display: flex;
    flex-direction: column;
        margin-bottom: 20px;
}
}
@media (max-width: 480px) {
   body {
      color: #333;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 1.7;
      letter-spacing: 2px;
   }
   .kvtext {
      position: absolute;
      bottom: 26vh;
      left: 4vw;
      text-align: left;
   }
   .lead {
      position: absolute;
      top: calc(100vh / 6);
      margin: 0;
      bottom: calc(100vh / 6);
      left: 5vw;
   }
   .lead ul li:first-child {
      height: auto;
   }
   .lead ul li a {
      display: flex;
      background: #d6c66c;
      color: #fff;
      border-radius: 0;
      width: 100%;
      height: auto;
      justify-content: center;
      align-items: center;
      text-align: center;
      font-size: 3vw;
      padding: 4px;
      line-height: 1.2;
      border-radius: 8px;
   }
   .lead ul {
      display: flex;
      align-items: baseline;
      width: 100%;
      flex-direction: column;
   }
   .lead ul li:first-child img {
      width: 21vw;
   }
   .lead ul li {
      margin-right: 0;
      max-width: 100%;
      display: flex;
      height: 10vw;
      width: 170px;
      margin-bottom: 3%;
   }
   .name {
      position: absolute;
      right: 0;
      bottom: calc(100% - 7%);
      font-size: 2vw;
      left: 4vw;
      color: #000;
   }
   .pagetop a {
      display: block;
      border-radius: 50px;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      zoom: 1;
      width: 30px;
      height: 30px;
      text-align: center;
      /* font-size: 24px; */
      text-decoration: none;
      line-height: 50px;
      /* border: 1px solid #fbfbfb; */
      -webkit-transition: all 0.7s;
      -moz-transition: all 0.7s;
      -ms-transition: all 0.7s;
      -o-transition: all 0.7s;
      transition: all 0.7s;
      opacity: 0.8;
      color: #1d1d1c;
      background: #fff;
   }
   .pagetop a::before {
      content: '';
      width: 10px;
      height: 10px;
      border: 0px;
      border-top: solid 2px #000;
      border-right: solid 2px #000;
      -ms-transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      transform: rotate(-45deg);
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      top: 6px;
      bottom: 0px;
      opacity: 1;
   }
   .pagetop {
      display: none;
      position: fixed;
      bottom: 100px;
      right: 5px;
      z-index: 100;
   }
   /*sp visible hidden*/
   .sp_xsvisible {
      display: inherit;
   }
   .sp_xshidden {
      display: none;
   }
   /* story-concept 
    -----------------------------------*/
   #story-concept h2 + p {
      font-size: 1.5rem;
      line-height: 2;
   }
   /* contents
    -----------------------------------*/
   #contents .d-flex p {
      font-size: 1.5rem;
      line-height: 2;
   }
   #contact ul li a::after {
      content: '';
      background: url("../../common/img/4x/btn_contact@4x.png") no-repeat right center;
      display: inline-block;
      width: 40px;
      height: 12px;
      background-size: 41px;
      right: 30px;
      position: absolute;
   }
   #contact ul li a {
      border: 1px solid #333;
      padding: 3px 10px;
      max-width: 130px;
      display: flex;
      height: 40px;
      align-items: center;
      justify-content: left;
      font-style: normal;
      letter-spacing: 1px;
   }
   /* coaching
    -----------------------------------*/
   #coaching .d-flex {
      flex-flow: column;
      color: #fff;
   }
   /* mg
    -----------------------------------*/
   .titlehead1 {
      font-size: 5.8vw;
      margin-bottom: 2rem;
   }
   /* philosophy
    -----------------------------------*/
   #philosophy {
      position: relative;
      background: url("../../common/img/4x/section_ philosophy@4x.png") no-repeat 65% bottom;
      background-size: cover;
      height: 570px;
   }
   #philosophy p {
      font-size: 1.5rem;
   }
   #profile dl dd ul li span:first-child {
      width: 4em;
   }
   /* profile
    -----------------------------------*/
   #profile dl {
      margin-bottom: 5rem;
      font-feature-settings: "palt";
      -webkit-font-feature-settings: "palt";
      -moz-font-feature-settings: "palt";
      letter-spacing: 0;
      line-height: 1.9;
      text-align: justify;
   }
   #profile dl span {
      display: block;
   }
   #profile dl span + span {
      width: 100%;
   }
   #profile dl li {
      margin-bottom: 1.5rem;
   }
   /* contact
    -----------------------------------*/
   #contact ul li a {
      max-width: 100%;
      text-align: left;
      font-size: inherit;
   }
   #contact h5 {
      text-align: justify;
   }
   #contact .contactinner {
      padding: 90px 0px;
   }
   /* partners
    -----------------------------------*/
   #partners .textblock h6 {
      margin-top: 2rem;
      margin-bottom: 3rem;
      font-size: 4vw;
   }
   #partners .sectiondesc article {
      position: relative;
   }
   #partners .btn_more {
      position: absolute;
      bottom: 0;
      right: 0;
   }
   #partners .imgblock {
      width: 50%;
      margin-left: 0;
      margin-top: auto;
   }
   /* page
    -----------------------------------*/
   #page-coaching h2 {
      border-top: 1px solid #111;
      border-bottom: 1px solid #111;
      width: 100%;
      margin: 11vh 0 3rem;
      display: block;
      font-size: 5vw;
   }
   .bgtxt {
      display: none;
   }
   #page-coaching .osusume1 {
      border: 1px solid #d3d1bc;
      border-radius: 30px;
      padding: 10px 20px 15px;
   }
   #user h2 {
      background: #efefef;
      padding: 10px 10px;
      margin-top: 5rem;
      line-height: 1.6;
      font-size: 2rem;
   }
   #user h3 {
      font-size: 4vw;
      margin-bottom: 3rem;
      margin-top: 7rem;
   }
   .circlelist li, .osusume1 ul li, .osusume2 ul li {
      margin-bottom: 1rem;
   }
   #page-coaching .osusume1 h3, #page-coaching .osusume2 h3 {
      color: #956134;
      font-size: 2rem;
   }
   #page-coaching .osusume1 h3 + ul, #page-coaching .osusume2 h3 + ul {
      font-size: 1.4rem;
   }
   .serviceblk h4 {
      margin-bottom: 3rem;
      margin-top: 10rem;
      font-size: 2rem;
   }
   #user h3:first-child {
      margin-top: 3rem;
   }
   .userinner p {
      text-align: justify;
   }
    
   /* footer
    -----------------------------------*/
   .copy ul li:first-child {
      font-size: 1vw;
      text-align: left;
   }
   footer .copy ul {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 2rem;
      margin-top: 2rem;
      font-family: kozuka-mincho-pro, serif;
      font-weight: 500;
      font-style: normal;
      letter-spacing: 2px;
   }
    footer .copy ul li:last-child  img{
   width: 30px;
}
    footer .copy ul li:nth-child(2){
        margin-left: auto;
    }
footer .copy ul li:nth-child(2) svg{
  width: 30px;
}
}
@media(max-width:375px) {
   .lead {
      position: absolute;
      top: calc(100vh / 4);
      margin: 0;
      bottom: calc(100vh / 6);
      left: 5vw;
   }
}