@charset "UTF-8";
/* ==========================================================================

    Theme Name: CSR
    Theme URI: http://csr.keio.ac.jp/
    Author: Yuria Shoji
    Author URI: http://kiu.co.jp/
    Version: 2.0

   ========================================================================== */

html {
    font-size: 62.5%;
}

body {
    position: relative;
    background: #fff;
    color: #5C5B5C;
    font-family: sans-serif;
    font-size: 16px; font-size: 1.6rem;
    line-height: 1.8;
    -webkit-text-size-adjust: 100%;
}

::-moz-selection {
    background: #ade5f2;
    text-shadow: none;
}

::selection {
    background: #ade5f2;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

p{ margin: 0; }

ul,ol,li,dl,dt,dd{
    margin: 0;
    padding: 0;
    list-style: none;
}

img{
    max-width: 100%; 
    height:auto;
}

a{
    color: #0081C3;
}


audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

audio{
    width: 100%;
    margin: 0;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

.mb10{ margin: 0 0 10px; }
.mb20{ margin: 0 0 20px; }
.mb30{ margin: 0 0 30px; }
.mb40{ margin: 0 0 40px; }

.f12{ font-size: 12px; font-size: 1.2rem; }

.ctr{ text-align: center; }
.lft{ text-align: left; }
.rgt{ text-align: right; }

.bold{ font-weight: bold; }

.wrapper{
    position: relative;
    margin: 0 10px;
}

p.en-txt{
    font-size: 14px; font-size: 1.4rem;
}

.li-member li{
    width: 100%;
}

.li-member li .inner{
    -js-display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 0 20px;
}

.li-member li .inner figure{
    width: 20%;
}

.li-member li .inner dl{
    flex: 1;
    padding: 0 0 0 20px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.li-member li .inner dt{
    margin: 0 0 10px;
    font-size: 16px; font-size: 1.6rem;
    font-weight:bold;
}

.li-member li .inner dd{
    font-size: 14px; font-size: 1.4rem;
    font-weight: normal;
}

.li-member li .inner dt.en-txt{
    margin: 10px 0 0;
    font-size: 14px; font-size: 1.4rem;
}

.li-member li .inner dd.en-txt{
    margin: 10px 0;
    font-size: 12px; font-size: 1.2rem;
}

.li-member li .inner dt.en-txt .en-l{
    font-size: 16px; font-size: 1.6rem;
}

.li-member li .inner dd span:first-of-type{
    margin: 0 10px 0 0;
}

.btn{
    display: inline-block;
    position: relative;
    width: 100%;
    min-width: 200px;
    height: 40px;
    line-height: 40px;
    padding: 0 20px;
    border: 0;
    border-radius: 20px;
    box-sizing: border-box;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px; font-size: 1.6rem;
    font-weight: bold;
    transition: all .3s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    transition: .3s;
}

.large .btn{
    height: 50px;
    line-height: 50px;
    border-radius: 25px;
}

.btn:hover{
    /*-webkit-transform: translate(0, -1px);
    transform: translate(0, -1px);
    color: #fff;
    -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .2);
    box-shadow: 0 3px 6px rgba(0, 0, 0, .2);*/
}

button.btn{
    line-height: 1;
}

.btn:hover:before,
.btn:focus:before,
.btn:active:before {
    border-radius: 2px;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
}

.btn-blue,
.btn-blue-gradient{
    border: 1px solid #0081C3;
    color: #0081C3;
}

.btn-purple{
    background: #93D4DD;
}

.btn.btn-blue.en-btn{
    position: relative;
    height: auto;
    line-height: 1.4;
    padding: 10px;
}

.btn.btn-blue.en-btn .en-txt{
    display: block;
    margin: 5px 0 0;
    font-size: 12px; font-size: 1.2rem;
}

.btn.btn-blue.en-btn i{
    position: absolute;
    line-height: 1;
    top: 50%;
    right: 10px;
    margin: -0.5em 0 0;
}

.btn-blue:hover,
.btn-blue-gradient:hover{
    background-image: -webkit-gradient(linear, left top, right top, from(#93D4DD), to(#0081C3));
   background-image: -webkit-linear-gradient(left, ##93D4DD 0%, #0081C3 100%);
   background-image: linear-gradient(90deg, ##93D4DD 0%, #0081C3 100%);
   color: #fff;
}

select {
    display: inline;
    position: relative;
    -moz-appearance: none;
    -webkit-appearance: none;
    -o-appearance: none;
    -ms-appearance: none;
    appearance: none;
    border:1px solid #d5d9dd;
    border-radius: 2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff url(../img/arrow_down_select@3x.png) no-repeat right 5px center;
    background-size: 7px 4px;
    cursor: pointer;
    text-indent: .01px; /*Firefox*/
    text-overflow: ""; /*Firefox*/
    font-size: 16px; font-size: 1.6rem;
}

select::-ms-expand {
  display: none;
}

select {
    width: 100%;
    height: 36px;
    line-height: 36px;
    padding: 0 10px;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
textarea{
    display: inline-block;
    margin: 0;
    padding: 0 10px;
    border: none;
    border: 1px solid #d5d9dd;
    border-radius: 2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: 1px 1px 2px rgba(165,165,165,0.2) inset;
    background: #fff;
    cursor: pointer;
    resize: none;
    font-size: 16px; font-size: 1.6rem;
}


input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"]{
    width: 100%;
    height: 36px;
    line-height: 36px;
}

.pc{ display: none; }


.title{
    margin: 0 0 10px;
    padding: 0 0 5px;
    border-bottom: 1px dotted #DEE6EB;
    color: #3986C9;
    font-size: 18px;
    font-weight: normal;
}

.right{ text-align: right; }

/* ==============
    MOBILE: Header
   ============== */

#header-container {
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    margin: 0 0 20px;
    box-shadow: 0 2px 2px rgba(165,165,165,0.2);
    background: #fff;
    padding: 5px 0 0;
    z-index: 10000;
}

#header-container .logo{
    width: 303px;
    height: 40px;
    margin: 0 0 5px;
    padding: 0;
}

#header-container .logo a{
    overflow: hidden;
    display: block;
    width: 303px;
    height: 0;
    margin: 0;
    padding: 40px 0 0;
    background: url(../img/logo_sp@3x.png?630) no-repeat left center;
    background-size: 303px 40px;
    font-size: 16px; font-size: 1.6rem;
}

/* Fixed reset */
#header-container.fixed {
    background: rgba(255,255,255,0.8);
}
#mobile-head {
    width: 100%;
    padding: 0;
    z-index: 99999;
    position: relative;
}
#header-container.fixed .logo,
#header-container .logo {
    position: relative;
    top: 0;
    left: 0;
}

#nav-container{
    position: relative;
    margin: 0 -10px;
}

#g-nav {
    position: absolute;
    /* 開いてないときは画面外に配置 */
    top: -500px;
    background: rgba(0,129,195,0.8);
    width: 100%;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    z-index: 99999;
}
#g-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
}
#g-nav ul li {
    float: none;
    position: relative;
}
#header-container #g-nav ul li a,
#header-container.fixed #g-nav ul li a {
    position: relative;
    display: block;
    color: #fff;
    margin: 0;
    padding: 0 10px;
    height: 40px;
    line-height: 40px;
    border-bottom: 1px solid #0081C3;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    text-decoration: none;
    font-size: 14px; font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
}

#header-container #g-nav ul li a:after,
#header-container.fixed #g-nav ul li a:after {
    content: "\f054";
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 14px; font-size: 1.4rem;
    font-family: 'FontAwesome';
    text-align: center;
}

#header-container #g-nav ul li.main-menu a:after,
#header-container.fixed #g-nav ul li.main-menu a:after {
    content: " ";
}

#header-container #g-nav ul li a .txt-en,
#header-container.fixed #g-nav ul li a .txt-en{
    display: inline-block;
    margin: 0 0 0 10px;
    font-size: 12px; font-size: 1.2rem;
}

#header-container #g-nav ul li .title-close:before,
#header-container #g-nav ul li .title-open:before{
    content: "\f067";
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-left: 1px solid #47549E;
    font-size: 16px; font-size: 1.6rem;
    font-family: 'FontAwesome';
    text-align: center;
    color: #fff;
    z-index: 200;
}

#header-container #g-nav ul li .title-open:before{
    content: "\f068";
}

#header-container #g-nav ul li .open-content .sub-menu li a{
    font-size: 14px; font-size: 1.4rem;
    padding: 0 10px 0 20px;
}

/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
}
.open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}
/* #global-nav スライドアニメーション */
.open #g-nav {
    /* #global-nav top + #mobile-head height */
    -moz-transform: translateY(500px);
    -webkit-transform: translateY(500px);
    transform: translateY(500px);
}

/* Toggle Button */
#nav-toggle {
    position: absolute;
    display: block;
    top: -5px;
    right: -10px;
    width: 24px;
    height: 26px;
    padding: 12px 15px;
    background: #0081C3;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #FFF;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}

.nav-contact {
    width: 80%;
    margin: 10px auto;
}

.nav-contact .btn.btn-blue{
    background: #fff;
    border: 1px solid #0081C3;
    color: #0081C3;
}

.nav-contact .btn.btn-blue:before{
    background: #fff;
}

/* ==============
    MOBILE: Main
   ============== */

#main-container{
    margin: 50px 0 40px;
}

.main-visual{
    margin: 0 auto;
    text-align: center;
}

.main-visual p{
    max-width: 1500px;
    margin: 0 auto;
    width: expression(this.width >= this.height ? "1500px" : "auto");
}

.main-visual video{
    width: 100%;
}

.breadcrumb{
    margin: 0 0 30px;
    padding: 0;
    background: #F2F2F2;
    border-top: 1px solid #E5E5E5;
    border-bottom: 1px solid #E5E5E5;
}

.breadcrumb li{
    display: inline-block;
    line-height: 1;
    margin: 5px 5px 5px 0;
    font-size: 12px; font-size: 1.2rem;
}

.breadcrumb li a{
    position: relative;
    display: block;
    padding: 0 10px 0 0;
    text-decoration: none;
    color: #3f3f3f;
}

.breadcrumb li a:after{
    position: absolute;
    content: "\f105";
    display: block;
    top: 0;
    right: 0;
    font-family: 'FontAwesome';
    color: #a5a5a5;
}

.breadcrumb br{
    display: none;
}

.breadcrumb span{
    display: none;
}

.news-hdr{
    position: relative;
    padding-top: 70px; /*マインドフルネス教室参加者募集中*/
}

.hx-main{
    margin: 0 0 30px;
    color: #0081C3;
    font-weight: bold;
    font-size: 22px; font-size: 2.2rem;
}

.hx-main.hx-mindfulness{
    font-size: 20px; font-size: 2.0rem;
}

.hx-main a{
    text-decoration: none;
    color: #0081C3;
}

.hx-main span{
    display: block;
    margin: 5px 0 0;
    font-size: 14px;
}

.btn-news,
.btn-area{
    width: 230px;
    height: 50px;
    margin: 0 auto;
}

.btn-area{
    position: relative;
    z-index: 1;
}

.btn-news i,
.btn-area i{
    margin: 0 0 0 10px;
}

.dl-news dt{
    margin: 0 0 5px;
    font-size: 14px; font-size: 1.4rem;
}

.dl-news dd{
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: 1px dotted #d8d8d8;
    font-size: 16px; font-size: 1.6rem;
}

.li-card{
    -js-display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 -10px;
}

.li-card.topics{
    margin: 0 15px;
}

.li-card li{
    width: 50%;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 0 20px;
}

.li-card li .inner{
    height: 100%;
    box-shadow: 0 0 5px rgba(165,165,165,0.3);
}

.li-card a{
    text-decoration: none;
}

.li-card li .item-img{
    position: relative;
    overflow: hidden;
}

.li-card li .item-img .category{
    position: absolute;
    top: 0;
    left: 0;
    min-width: 76px;
    line-height: 1;
    padding: 5px 8px;
    box-sizing: border-box;
    border-radius: 3px;
    background: #F1E7FF; 
    color: #5C5B5C;
    font-size: 12px; font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
}

.li-card li .item-img img{
    display: block;
    transition-duration: 0.3s;
    width: 100%;
    height: 70px;
    object-fit: cover;
    font-family: 'object-fit: cover;'
}

.li-card li .item-img img:hover{
    transform: scale(1.1);
    transition-duration: 0.3s;
}

.li-card .news-content {
    padding: 10px;
}

.li-card .news-content .news-ttl{
    line-height: 1.4;
    margin: 0 0 10px;
    font-size: 13px; font-size: 1.3rem;
    font-weight: bold;
    color: #5C5B5C;
}

.li-card .news-content .news-cap{
    margin: 0 0 10px;
    font-size: 12px; font-size: 1.2rem;
    color: #5C5B5C;
}

.li-card .news-content .news-date{
    font-family: 'Open Sans', sans-serif;
    font-size: 12px; font-size: 1.2rem;
    color: #93D4DD;
}

.li-page-menu{
    margin: 0 -10px 20px;
    border-top: 1px solid #d8d8d8;
}

.li-page-menu li{
    position: relative;
    width: 100%;
    padding: 10px 30px 10px 10px;
    border-bottom: 1px solid #d8d8d8;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.li-page-menu li:after{
    position: absolute;
    display; block;
    content: "\f054";
    top: 50%;
    right: 10px;
    line-height: 1;
    margin: -9px 0 0;
    font-family: 'FontAwesome';
    font-size: 18px; font-size: 1.8rem;
    color: #7787D3;
}

.li-page-menu li a{
    text-decoration: none;
}

.li-page-menu li:nth-child(odd){
    background: #E7ECFF;
}

.li-page-menu li dt{
    margin: 0 0 5px;
    color: #0081C3;
    font-size: 18px; font-size: 1.8rem;
    font-weight: bold;
}

.li-page-menu li dd{
    font-size: 14px; font-size: 1.4rem;
    color: #3f3f3f;
}

.hx-bdr{
    margin: 0 0 20px;
    padding: 5px 0 5px 10px;
    border-left: 4px solid #93D4DD;
    font-size: 18px; fotn-size: 1.8rem;
    font-weight: bold;
    color: #5C5B5C;
}

.hx-bdr span{
    display: block;
    margin: 0 0 5px;
    font-size: 14px; font-size: 1.4rem;
}

.hx-bdr-lft{
    line-height: 1;
    margin: 0 0 20px;
    padding: 5px 0 5px 14px;
    border-left: 3px solid #93D4DD;
    font-size: 18px; font-size: 1.8rem;
    font-weight: bold;
    color: #0081C3;
}

.hx-bdr-lft .en{
    display: block;
    margin: 8px 0 0;
    font-size: 12px; font-size: 1.2rem;
}

.hx-box.keap{
    line-height: 1;
    margin: 0 0 30px;
    padding: 20px 10px;
    border-radius: 5px;
    background: #0081C3;
    color: #fff; 
    text-align: center;
    font-size: 22px; font-size: 2.2rem;
}

.hx-box.keap span{
    display: block;
    line-height: 1.6;
    margin: 0 0 10px;
    font-size: 16px; font-size: 1.6rem;
}

.hx-box.keap span.en{
    margin: 10px 0 0;
    font-size: 14px; font-size: 1.4rem;
}

.hx-num{
    margin: 0 0 20px;
    font-size: 18px; font-size: 1.8rem;
    font-weight: bold;
}

.hx-num span{
    display: inline-block;
    width: 30px;
    height: 30px;
    line-height: 30px;
    margin-right: 5px;
    background: #93D4DD;
    border-radius: 50%;
    text-align: center;
    color: #fff;
}

.hx-dot{
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: 1px dotted #93D4DD;
    font-size: 16px; font-size: 1.6rem;
    color: #0081C3;
    font-weight: normal;
}

.hx-sub{
    margin: 0 0 20px;
    padding: 0  0 10px;
    border-bottom: 1px solid #0081C3;
    color: #0081C3;
    font-size: 18px; font-size: 1.8rem;
}

.hx-sub span{
    display: block;
    margin: 5px 0 0;
    font-size: 12px; font-size: 1.2rem;
}

.hx-bold{
    margin: 0 0 20px;
    font-weight: bold;
    font-size: 18px; font-size: 1.8rem;
    color: #0081C3;
}

.hx-bold i{
    margin: 0 5px 0 0;
}

.li-theme {
    -js-display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 -10px;
}

.li-theme li{
    width: 48%;
    margin: 0 0 20px;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.li-theme li a{
    text-decoration: none;
}

.li-theme li .inner{
    text-align: center;
}

.li-theme li img{
    width: 120px;
    height: 120px;
    border-radius: 50%;
    margin: 0 auto 10px;
}

.li-theme li .theme-ttl{
    line-height: 1.4;
    color: #0081C3;
    font-size: 16px; font-size: 1.6rem;
    text-decoration: none;
    text-align: center;
}

.li-theme li .theme-ttl span{
    display: block;
    margin: 5px 0 0;
    font-size: 12px; font-size: 1.2rem;
    color: #3f3f3f;
}

.li-theme li .tbr{
    display: block;
    margin: 10px 0 0;
    text-align: center;
    font-weight: bold;
    color: #3F3F3F;
    font-size: 16px; font-size: 1.6rem;
}

.main.contact p{
    margin: 0 0 20px;
}

.contact-form{
    margin: 0 0 20px;
    border-bottom: 1px solid #E5E5E5;
    font-size: 14px;
}

.contact-form dt{
    margin: 0;
    padding: 7px 10px;
    -webkit-box-shadow: 0px 1px #fff inset; 
    -moz-box-shadow: 0px 1px #fff inset; 
    -o-box-shadow: 0px 1px #fff inset; 
    -ms-box-shadow: 0px 1px #fff inset; 
    box-shadow: 0px 1px #fff inset; 
    background: #E7ECFF;
    border: 1px solid #E5E5E5;
}

.contact-form dt span{
    display: inline-block;
    *display: inline;
    *zoom: 1;
    margin: 0 0 0 5px;
    padding: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -o-border-radius: 2px;
    -ms-border-radius: 2px;
    border-radius: 2px;
    background: #BE0005;
    color: #fff;
    font-size: 12px;
}

.contact-form dd{
    padding: 10px;
    zoom: 1;
}

span.wpcf7-form-control-wrap{
    position:static !important;
}

.contact-form input[type="text"],
.contact-form input[type="option"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form input[type="password"],
.contact-form input[type="date"]{
    width: 100%;
    height: 38px;
    line-height: 38px;
    padding: 0 2px;
    border: 1px solid #D8D8D8;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    vertical-align: middle;
    -webkit-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    -moz-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    -o-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    -ms-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    box-sizing: border-box;
    font-size: 16px;
}

.contact-form textarea{
    width: 100%;
    height: 140px;
    padding: 0 2px;
    border: 1px solid #D8D8D8;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    -moz-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    -o-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    -ms-box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    box-shadow: 1px 1px 0 rgba(216,216,216,0.4) inset;
    box-sizing: border-box;
}

.contact-form-area input[type="checkbox"],
.contact-form-area input[type="radio"]{
    margin-right: 5px;
}

.contact-form-area .btn-submit{
    text-align: center;
}

.contact-form-area .btn-submit input[type="submit"]{
    position: relative;
    width: 100%;
    height: 44px;
    line-height: 44px;
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    -ms-appearance: none;
    appearance: none;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    border: 0;
    background: #0081C3;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
}

.contact-form-area .btn-submit input[type="submit"]:hover{
    background: #47549E;
}

.contact-form-area select{
    display: block;
    position: relative;
    box-sizing: border-box;
    width: 100%;
    height: 32px;
    line-height: 32px;
    margin-bottom:10px;
    padding-left:10px;
    padding-right:25px;
    -moz-appearance:button;
    -webkit-appearance:button;
    -o-appearance:button;
    -ms-appearance:button;
    border:1px solid #D8D8D8;
    border-radius: 4px;
    background-color:transparent;
    background-image: url(/img/arrow_select_x2.png),linear-gradient(top, #FFFFFF 0%, #EFEFEF 100%);
    background-image: url(/img/arrow_select_x2.png),-o-linear-gradient(top, #FFFFFF 0%, #EFEFEF 100%);
    background-image: url(/img/arrow_select_x2.png),-moz-linear-gradient(top, #FFFFFF 0%, #EFEFEF 100%);
    background-image: url(/img/arrow_select_x2.png),-webkit-linear-gradient(top, #FFFFFF 0%, #EFEFEF 100%);
    background-image: url(/img/arrow_select_x2.png),-ms-linear-gradient(top, #FFFFFF 0%, #EFEFEF 100%);
    background-image: url(/img/arrow_select_x2.png),-webkit-gradient(
        linear,
        left top,
        left bottom,
        color-stop(0, #FFFFFF),
        color-stop(1, #EFEFEF)
    );
    background-repeat:no-repeat,repeat;
    background-position:98% center,0 0;
    background-size:11px 7px, auto;
    cursor: pointer;
    font-size:16px;
    text-shadow:1px 1px 0 #fff;
}

.wpcf7-not-valid-tip{
    color: #BE0005 !important;
}

div.wpcf7-validation-errors{
    padding: 10px !important;
    border: 2px solid #FFE266 !important;
}

div.wpcf7-mail-sent-ok{
    padding: 10px !important;
    border: 2px solid #93D4DD !important;
}

.category-seminar,
.category-news{
    margin: 0 0 40px;
}

.post-img li{
    margin: 0 0 20px;
}

.li-dot{
    margin: 0 0 20px;
}

.li-dot li{
    position: relative;
    margin: 0 0 10px;
    padding: 0 0 0 15px;
}

.li-dot li:before{
    position: absolute;
    content: " ";
    top: 9px;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background: #93D4DD;
}

.dl-block,
.dl-inlblock{
    margin: 0 0 20px;
}

.dl-block dt,
.instructor-name{
    margin: 0 0 10px;
    font-weight: bold;
    font-size: 18px; font-size: 1.8rem;
}

.dl-inlblock dt img{
    display: inline;
    float: left;
    width: 100px;
}

.dl-block dd{
    margin: 0 0 20px;
}

.dl-inlblock dd{
    margin: 0 0 0 120px;
}

.box-bdr{
    padding: 10px;
    border: 1px solid #93D4DD;
    background: #E7ECFF;
}

.box-bdr-w{
    padding: 10px;
    border: 1px solid #93D4DD;
    background: #fff;
}

.li-num span{
    display: inline-block;
    margin: 0 5px 0 0;
}

.li-num li{
    margin: 0 0 10px;
}

.li-form li {
    margin: 0 0 10px;
    font-weight: bold;
}

.li-form li input[type="checkbox"]{
    margin: 0 5px 0 0;
}

.li-form .li-dot{
    margin: 0 0 0 1em;
}

.li-form .li-dot li{
    font-weight: normal;
    font-size: 14px; font-size: 1.4rem;
}

.contact-form-area{
    position: relative;
    padding: 0 0 20px;
}

.form-overlay{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(204,204,204,0.5);
    z-index: 10;
}

.form-confirm{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(204,204,204,0.5);
    z-index: 11;
}

.form-confirm .inner{
    margin: 20px;
    padding: 20px;
    border-radius: 4px;
    background: #fff;
    box-shadow: 2px 2px 2px rgba(165,165,165,0.4);
}


.btn-area{
    margin: 0 auto 40px;
}

.btn-bdr-purple{
    display: block;
    padding: 10px 20px;
    border: 2px solid #7787D3;
    border-radius: 3px;
    text-decoration: none;
    color: #7787D3;
    text-align: center;
    font-weight: bold;
    font-size: 18px; font-size: 1.8rem;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: color, background-color;
    transition-property: color, background-color;
}

.btn-bdr-purple i{
    margin: 0 5px 0 0;
}

.btn-bdr-purple:hover{
    background: #E7ECFF;
}


.btn-oval {
    display: inline-block;
    padding: 20px;
    border-radius : 50%;
    background: #fef2a3;
    background: radial-gradient(#fffbe8, #fef2a3);
    box-shadow: 0 0 15px 0 #fee645 inset;
    -webkit-transition : all .7s linear;
    -moz-transition : all .7s linear;
    -o-transition : all .7s linear;
    transition : all .7s linear;
    text-align : center;
    text-decoration : none;
    color: #0081C3;
    font-weight: bold;
    font-size: 16px; font-size: 1.6rem;
}

.btn-oval:hover {
     background: radial-gradient(#fff4c7, #fee645);
}

.btn-oval span.sp-block{
    display: block;
}

.btn-wrap{
    position: relative;
    height: 45px;
}

.btn-area.event{
    position: absolute;
    top: -5px;
    right: 0;
}

.btn-area.event.top{
    top: -106px;
}

.btn-area.event.top .en{
    display: block;
    line-height: 1.4;
    margin: 5px 0 0;
    font-size: 13px; font-size: 1.3rem;
}

.notice.mindfulness{
    display: block;
    margin: 0 auto 40px;
    padding: 10px;
    border: 2px solid #f2d951;
    border-radius: 4px;
    background: #feec80;
    font-size: 16px; font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
}

.btn-area.event.large{
    position: relative;
    top: 0;
    width: auto;
    height: auto;
    margin: 0 auto 20px;
    text-align: center;
}

.btn-area.event.large .small{
    display: block;
    line-height: 1.4;
    margin: 0;
    font-size: 12px; font-size: 1.2rem;
}

#mindfulness .btn-area.event.large{
    max-width: 300px;
    box-sizing: border-box;
}

.img-flex li{
    margin: 0 0 10px;
}

.hx-main .bg-well-being{
    padding: 10px;
    border-radius: 4px; 
    background: url(../img/hx_bg.jpg) no-repeat center center;
    background-size: cover;
    color: #fff;
    text-align: center;
    text-shadow: 2px 2px 2px rgba(21,75,150,0.7);
}

.btn-area li{
    margin: 0 0 10px;
}

.contact-form-area .btn-submit input[type="submit"].btn-back{
    background: #b2b2b2;
}

.alert-danger{
    margin: 0 0 20px;
    padding: 10px;
    border-radius: 3px;
    border: 1px solid #bd8181;
    background: #f6cfcc;
    color: #b92421;
    font-weight: bold;
}

.li-card li .item-img img{
    height: 100px;
}


.bg-mindfulness{
    padding: 30px 0;
    background: -moz-linear-gradient(top, #2683FF, #43A7E7 50%, #FFF);
    background: -webkit-linear-gradient(top, #2683FF, #43A7E7 50%, #FFF);
    background: linear-gradient(to bottom, #2683FF, #43A7E7 50%, #FFF);
}

.bg-mindfulness .hx-main{
    margin: 0;
    color: #fff;
}

.bg-info{
    margin: 0 0 40px;
    padding: 0 0 40px;
    background: #E2FAFD;
}

.hx-conference{
    line-height: 1;
    padding: 40px 0;
    margin: 0 auto 40px;
    background: url(../img/bg_conference.jpg?992) no-repeat center center;
    background-size: cover;
    text-shadow: 0 0 8px #fff;
    font-size: 26px; font-size: 2.6rem;
    font-weight: bold;
    color: #0081C3;
    text-align: center;
}

.hx-conference span{
    display: block;
    margin: 5px 0 0;
    font-size: 14px; font-size: 1.4rem;
}


.li-report li{
    margin: 0 0 10px;
}

.li-papers li{
    padding: 10px 0;
    border-bottom: 1px solid #e2e2e2;
}

.li-papers li:first-child{
    border-top: 1px solid #e2e2e2;
}

.li-papers li .ttl{
    margin: 0 0 5px;
}

.li-papers li .tag{
    display: inline-block;
    line-height: 1;
    margin: 0 5px 10px 0;
    padding: 4px 4px;
    border-radius: 2px;
    background: #93D4DD;
    color: #fff;
    font-size: 12px; font-size: 1.2rem;
}

.li-papers li .detail{
    font-size: 12px; font-size: 1.2rem;
}

.page-link{
    margin: 0 0 20px;
}

.page-link li {
    position: relative;
    margin: 0 0 10px;
    padding: 0 0 0 15px;
}

.page-link li:before{
    position: absolute;
    content: "\f0d7";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 14px; font-size: 1.4rem;
    font-family: 'FontAwesome';
    color: #7787d3;
}
.page-link li i{
    margin: 0 5px 0 0;
}

.page-link li span{
    display: inline-block;
    margin: 0 0 0 5px;
}

#mindfulness,
#research-healtheconomics,
#wellbeing,
#page-link-video,
#page-link-audio{
   margin-top:-50px;
  padding-top:50px;
}

.navigation{
    margin: 40px 0 0;
    -js-display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.en-ttl-bold{
    font-size: 16px; font-size: 1.6rem;
    font-weight: bold;
    color: #0081C3;
}

#page-link-video .ttl,
.li-audio .ttl{
    margin: 0 0 5px;
    font-weight: bold;
}

.li-audio li{
    margin: 0 0 30px;
}

.li-audio li .flexbox-audio li{
    margin: 0;
}

.li-logo li{
    margin: 0 0 15px;
}

.li-news li{
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: 1px solid #d8d8d8;
}

.li-news dt{
    display: block;
    margin: 0 0 10px;
    font-size: 13px; font-size: 1.3rem;
    font-weight: bold;
}

.li-news dt .category{
    display: inline-block;
    line-height: 1;
    margin: 0 0 0 8px;
    padding: 5px 8px;
    border-radius: 3px;
    box-sizing: border-box;
    font-weight: normal;
    background: #F1E7FF; 
    color: #5C5B5C;
    font-weight: bold;
}

.category-blue{
    background: #E7ECFF !important;
    color: #5C5B5C !important;
}

.category-pink{
    background: #FAE5FA !important;
    color: #FF559C !important;
    color: #5C5B5C !important;
}

.category-yellow{
    background: #FDFFE7 !important;
    color: #5C5B5C !important;
}

.category-purple{
    background: #F1E7FF !important; 
    color: #A432FC !important;
    color: #5C5B5C !important;
}

.category-green{
    background: #DFF9FA !important;
    color: #0EAD6B !important;
    color: #5C5B5C !important;
}

.li-news dd{
    display: block;
    margin: 0;
    font-size: 14px; font-size: 1.4rem;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.li-video li{
    width: 100%;
    margin: 0 auto 20px;
}

/*2023*/

.top-contents {
	padding-top: 40px;
}

.box{
    margin: -70px 0 80px;
    padding-top: 70px;
}

#project,
#report{
    margin: -70px 0 0;
    padding-top: 70px;
}

.hx-bdr-ctr{
    line-height: 1;
    margin: 0 0 30px;
    color: #5C5B5C;
    font-size: 24px; font-size: 2.4rem;
    text-align: center;
}

.hx-bdr-ctr .line{
    position: relative;
    display: inline-block;
    padding: 0 32px;
}

.hx-bdr-ctr .line::before{
    position: absolute;
    content: " ";
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background: #0081C3;
    z-index: -1;
}

.hx-bdr-ctr .line span{
    background: #fff;
    padding: 0 16px;
}

.hx-bdr-ctr .en{
    display: block;
    margin: 10px 0 0;
    font-size: 12px; font-size: 1.2rem;
}

.hx-ctr{
    margin: 0 0 20px;
    font-size: 18px; font-size: 1.8rem;
    text-align: center;
}

.btn-box{
    display: flex;
    justify-content: center;
    margin: 0 auto;
}

.btn-box li{
    min-width: 200px;
}

.large.btn-box li{
    min-width: 100%;
}

.btn-box.mindfulness-link{
    display: block;
    margin: 0 0 30px;
}

.btn-box.mindfulness-link li{
    margin: 0 0 20px;
}

.btn-box.mindfulness-link li .btn{
    height: 50px;
    line-height: 50px;
    border-radius: 25px;
}

.li-flex li{
    margin: 0 0 30px;
    padding: 0 20px;
}

.li-flex li img{
    display: block;
    margin: 0 0 10px;
}

.li-flex li .txt-research{
    display: block;
    margin: 0 0 20px;
    text-align: center;
    font-weight: bold;
    font-size: 18px; font-size: 1.8rem;
}

.li-flex li .btn{
    display: block;
    width: 200px;
    margin: 0 auto;
}

.li-flex li a .en{
    display: block;
    font-size: 13px; font-size: 1.3rem;
}

.main-btn-box .btn{
    height: 50px;
    line-height: 50px;
    border-radius: 0;
}

.btn-box.mindfulness-link .material-icons,
.main-btn-box .btn .material-icons,
.large.btn-box .material-icons{
    line-height: 50px;
    vertical-align: top;
    margin: 0 0 0 10px;
}

.top-txt-box{
    margin: -10px 0  60px;
}

.top-txt-box p{
    font-weight: bold;
}

#mindfulness .box p,
#moreresearch .box p{
    margin: 0 0 30px;
}

#mindfulness .box p:last-of-type,
#moreresearch .box p:last-of-type{
    margin: 0;
}

.dl-research{
    margin: 0 0 30px;
}

.dl-research dt{
    position: relative;
    margin: 0 0 10px;
    padding: 0 0 0 16px;
    font-weight: bold;
    color: #0081C3;
}

.dl-research dt::before{
    content: " ";
    position: absolute;
    display: block;
    width: 6px;
    height: 6px;
    background: #0081C3;
    left: 0;
    top: 50%;
    margin: -3px 0 0;
}

.dl-research dd{
    margin: 0 0 20px;
}

#mindfulness .img-box,
#healtheconomics .img-box{
    margin: 0 0 20px;
}

#mentalhealth .img-box{
    margin: 0 auto 20px;
    text-align: center;
}

.sp-nav{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 30px 0 0;
    align-items: stretch;
}

.sp-nav li{
    display: block;
    width: 33.3%;
    border: 1px solid #fff;
    border-radius: 6px;
    box-sizing: border-box;
    background: #0081C3;
    background: linear-gradient(to bottom , #0081C3 , #006DAF);
}

.sp-nav li a{
    display: block;
    padding: 10px 0;
    line-height: 1.4;
    color: #fff;
    font-size: 12px; font-size: 1.2rem;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
}

.sp-nav li.np a{
    padding: 5px 0;
}

.sp-nav li a .txt-en{
    margin: 4px 0 0;
    display: block;
    line-height: 1.2;
    font-size: 10px; font-size: 1.0rem;
}

.btm-btn-box{
    position: fixed;
    bottom: 0;
    width: 100%;
    background: rgba(255,255,255,0.8);
    padding: 10px;
    box-sizing: border-box;
    z-index: 1;
}

.btm-btn-box .btn-box{
    width: 100%;
    display: block;
}

.btm-btn-box .btn-box li{
    display: block;
}

.btm-btn-box .btn{
    background-image: -webkit-gradient(linear, left top, right top, from(#93D4DD), to(#0081C3));
   background-image: -webkit-linear-gradient(left, ##93D4DD 0%, #0081C3 100%);
   background-image: linear-gradient(90deg, ##93D4DD 0%, #0081C3 100%);
   color: #fff;
   border: 0;
}

.papers-img{
    margin: 20px 0 0;
}

.btn-blue.btn-en{
    height: auto;
    line-height: 1.2;
    padding: 8px 20px 7px;
}

.btn-blue.btn-en .flex{
    display: flex;
    justify-content: center;
    vertical-align: top;
}

.btn-blue.btn-en .flex .en-txt{
    display: block;
    font-size:12px; font-size:1.2rem;
}

.btn-blue.btn-en .flex .material-icons{
    line-height: 33px;
}
/* ==============
    MOBILE: Footer
   ============== */

#page-top{
    display: none;
}

#footer-container{
    padding: 10px 0 0;
    background: #f0f0f0;
}

#footer-container.top{
    margin: 0 0 70px;
}

#footer-container .ftr-nav{
}

#footer-container .ftr-nav li{
}

#footer-container .ftr-nav li a{
    display: block;
    padding: 5px 0;
    color: #3F3F3F;
    font-size: 12px; font-size: 1.2rem;
    text-decoration: none;
    text-align: left;
}

#footer-container .ftr-nav li a i{
    margin: 0 5px 0 0;
    color: #009EBE;
}

#footer-container .ftr-nav li.child{
    margin: 0 0 0 20px;
}

#footer-container .ftr-link{
    margin: 0 0 30px;
}

#footer-container .ftr-link li{
    margin: 0 0 10px;
}

#footer-container .ftr-link li a{
    line-height: 1;
    font-size: 12px; font-size: 1.2rem;
    text-decoration: none;
    color: #3F3F3F;
}

#footer-container .ftr-link li a i{
    margin: 0 0 0 5px;
}

#footer-container .emb{
    width: 160px;
    margin: 0 0 20px;
}


#footer-container .copy{
    height: 50px;
    line-height: 50px;
    background: #0081C3;
    text-align: center;
    color: #fff;
    font-size: 12px; font-size:1.2rem;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 571px) {
    .li-card li .item-img img{
        height: 150px;
    }
    
    audio{
        width: 300px;
    }

}


@media only screen and (min-width: 768px) {

    .pc{ display: block; }
    .sp{ display: none; }

    .wrapper {
        width: 90%;
        margin: 0 5%;
    }
    
    audio{
        width: 300px;
    }

/* ============
    WIDE: Header
   ============ */

    #header-container {
        position: absolute;
        top: -126px;
        left: 0;
        display: block;
        width: 100%;
        margin: 126px 0 0;
        box-shadow: 0 2px 2px rgba(165,165,165,0.2);
        background: #fff;
        padding: 10px 0 0;
        z-index: 10000;
    }

    #header-container.fixed{
        margin-top: 0;
        top: 0;
        position: fixed;
        background: rgba(255,255,255,.7);
        transition: top 0.35s ease-in;
        -webkit-transition: top 0.35s ease-in;
        -moz-transition: top 0.35s ease-in;
    }
    
    #header-container .logo{
        width: 455px;
        height: 60px;
        margin: 0 0 10px;
        padding: 0;
    }
    
    #header-container .logo a{
        overflow: hidden;
        display: block;
        width: 455px;
        height: 0;
        margin: 0;
        padding: 60px 0 0;
        background: url(../img/logo_pc@2x.png?630) no-repeat left center;
        background-size: 455px 60px;
        font-size: 16px; font-size: 1.6rem;
    }
    
    /* Fixed reset */
    #header-container.fixed {
        background: rgba(255,255,255,0.8);
    }
    #mobile-head {
        width: 100%;
        padding: 0;
        z-index: 99999;
        position: relative;
    }
    #header-container.fixed .logo,
    #header-container .logo {
        position: relative;
        top: 0;
        left: 0;
    }
    
    #nav-container{
        position: relative;
        margin: 0;
    }
    
    #g-nav {
        position: relative;
        top: 0;
        background: transparent;
        width: 100%;
        text-align: center;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        z-index: 99999;
    }
    #g-nav ul {
        position: relative;
        right: 0;
        bottom: 0;
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }
    #g-nav ul li {
        float: none;
        width: auto;
        position: relative;
    }

    #g-nav ul li .sub-menu{
        display:none;
    }

    #g-nav ul li.main-menu:hover .sub-menu{
        display: block;
    }


    #header-container #g-nav ul li a,
    #header-container.fixed #g-nav ul li a {
        position: relative;
        display: block;
        color: #5C5B5C;
        margin: 0;
        padding: 10px;
        height: auto;
        line-height: 1;
        border-bottom: none;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        text-decoration: none;
        font-size: 14px; font-size: 1.4rem;
        text-align: center;
    }

    #header-container #g-nav ul li a:hover,
    #header-container.fixed #g-nav ul li a:hover{
        color: #0081C3;
        transition: 0.3s;
    }

    #header-container #g-nav ul li a:after,
    #header-container.fixed #g-nav ul li a:after{
        content: " ";
    }


    #header-container #g-nav ul li a .txt-en,
    #header-container.fixed #g-nav ul li a .txt-en{
        display: block;
        line-height: 1;
        margin: 10px 0 0;
    }


    #header-container #g-nav ul li a.title-close,
    #header-container #g-nav ul li a.title-open{
        height: 36px;
        line-height: 36px;
    }

    #header-container #g-nav ul li .open-content{
        position: absolute;
        top: 100%;
        left: 0;
        display: none;
        width: 200px;
        box-shadow: 0 2px 2px rgba(165,165,165,0.2);
    }

    #header-container #g-nav ul li .open-content .sub-menu{
        width: 240px;
        background: #fff;
    }

    #header-container #g-nav ul li .open-content .sub-menu li{
        display: block;
        margin: 0;
        padding: 0 10px;
    }

    #header-container #g-nav ul li .open-content .sub-menu li a{
        position: relative;
        height: 36px;
        line-height: 36px;
        padding: 0 10px;
        border-bottom: 1px solid #f2f2f2;
        font-size: 14px; font-size: 1.4rem;
        color: #3D3959;
        text-align: left;
    }

    #header-container #g-nav ul li .open-content .sub-menu li a:after{
        content: "\f054";
        position: absolute;
        top: 0;
        right: 0;
        width: 20px;
        height: 36px;
        line-height: 36px;
        font-size: 14px; font-size: 1.4rem;
        font-family: 'FontAwesome';
        text-align: right;
        color: #96A7F4;
    }

    #header-container #g-nav ul li .open-content .sub-menu li:last-child a{
        border: none;
    }

    #header-container #g-nav ul li .title-close:before,
    #header-container #g-nav ul li .title-open:before{
        content: " ";
        width: 0;
        height: 0;
        display: none;
    }


    /* Toggle Button */
    #nav-toggle {
        display: none;
    }

    .nav-contact{
        position: absolute;
        top: -55px;
        right: 0;
        display: block;
        width: auto;
        margin: 0;
    }

    .nav-contact .btn{
        padding: 0 15px;
    }

    .nav-contact .btn i{
        margin: 0 5px 0 0;
    }

    .nav-contact .btn.btn-blue:hover{
        background-image: -webkit-gradient(linear, left top, right top, from(#93D4DD), to(#0081C3));
       background-image: -webkit-linear-gradient(left, ##93D4DD 0%, #0081C3 100%);
       background-image: linear-gradient(90deg, ##93D4DD 0%, #0081C3 100%);
       color: #fff;
    }

    .li-news li{
        margin: 0 0 15px;
        padding: 0 0 15px;
    }

    .li-news dl{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        align-items: stretch;

    }

    .li-news dt{
        display: block;
        margin: 0;
        font-size: 14px; font-size: 1.4rem;
        font-weight: bold;
    }

    .li-news dt .category{
        display: inline-block;
        line-height: 1;
        min-width: 90px;
        margin: 0 0 0 8px;
        padding: 6px 8px;
        font-size: 14px; font-size: 1.4rem;
        text-align: center;
    }

    .li-card li .item-img .category{
        min-width: 85px;
        padding: 6px 8px;
        text-align: center;
        font-size: 13px; font-size: 1.3rem;
    }

    .li-news dd{
        display: block;
        margin: 0 0 0 20px;
        font-size: 16px; font-size: 1.6rem;
        flex: 1;
    }


/* ============
    WIDE: Main
   ============ */

    #main-container{
        margin: 0 0 80px;
        padding: 136px 0 0;
    }

    .breadcrumb{
        margin: 0 0 60px;
    }

    .breadcrumb li{
        height: 30px;
        line-height: 30px;
    }

    .breadcrumb li a:hover{
        text-decoration: underline;
    }

    .main-container{
        margin-left: 230px;
        overflow: hidden;
    }

    .hx-main,
    .hx-main.hx-mindfulness{
        margin: 0 0 40px;
        font-size: 30px; font-size: 3.0rem;
    }

    .hx-main span{
        font-size: 18px;
    }

    .btn-news{
        width: 230px;
        height: 50px;
    }

    .dl-news dt{
        clear: left;
        float: left;
        width: 18%;
        margin: 0 0 15px;
        padding: 0 20px 15px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        border-bottom: 1px dotted #d8d8d8;
        font-size: 16px; font-size: 1.6rem;
    }

    .dl-news dd{
        margin: 0 0 15px 18%;
        padding: 0 20px 15px 0;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .li-card{
        position: relative;
        margin: 0 -20px;
    }

    .li-card li{
        width: 20%;
        padding: 0 20px;
        margin: 0 0 40px;
    }

    .li-card li .inner:hover{
        display: inline-block;
        vertical-align: middle;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        box-shadow: 0 0 10px rgba(165,165,165,0.6);
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-osx-font-smoothing: grayscale;
        -webkit-transition-duration: 0.3s;
        transition-duration: 0.3s;
        -webkit-transition-property: box-shadow;
        transition-property: box-shadow;
    }

    .li-card::after{
      content:"";
      display: block;
      width:33.3%;
    }

    .li-card li .inner{
        box-shadow: none;
    }

    .li-card li .item-img img{
        height: 227px;
    }

    .li-card .news-content{
        padding: 15px;
    }

    .li-card .news-content .news-ttl{
        font-size: 12px; font-size: 1.2rem;
    }

    .li-card .news-content .news-date{
        font-size: 14px; font-size: 1.4rem;
    }

    .li-page-menu{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-around;
        justify-content: space-around;
        margin: 0;
        border-top: none;
    }

    .li-page-menu li{
        width: 20%;
        padding: 0;
        margin: 0 0 40px;
        border-top: none;
        border-bottom: none;
    }

    .li-page-menu.col3 li{
        width: 30%;
        padding: 20px;
        border: 1px solid #d8d8d8;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .li-page-menu.col3 li:hover{
        background: #E7ECFF;
    }

    .li-page-menu li:after{
        content: " ";
    }

    .li-page-menu li a{
        text-decoration: none;
    }

    .li-page-menu li:nth-child(odd){
        background: transparent;
    }

    .li-page-menu li dt{
        margin: 0 0 10px;
        text-align: center;
    }

    .li-page-menu li dd{
        font-size: 16px; font-size: 1.6rem;
    }
    
    .li-member{
        margin: 0 -20px;
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
    }

    .li-member li{
        width: 50%;
        padding: 0 20px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .li-member li .inner figure{
        width: 35%;
    }

    .li-member li .inner dd span{
        display: block;
        margin: 0 0 5px;
    }

    figure{
        width: 630px;
        margin: 0 auto 20px;
    }

    .main .hx-sub{
        font-size: 24px;
    }

    .hx-bdr{
        margin: 0 0 20px;
        font-size: 22px; font-size: 2.2rem;
    }

    .hx-bdr-lft{
        margin: 0 0 40px;
        padding: 10px 0 10px 13px;
        font-size: 22px; font-size: 2.2rem;
    }

    .hx-bdr-lft .en{
        margin: 8px 0 0;
        font-size: 14px; font-size: 1.4rem;
    }

    .hx-box.keap{
        width: 70%;
        margin: 0 auto 40px;
        padding: 24px 0;
        text-align: center;
        font-size: 30px; font-size: 3.0rem;
    }

    .hx-box.keap span{
        margin: 0 0 16px;
        font-size: 18px; font-size: 1.8rem;
    }

    .hx-box.keap span.en{
        margin: 16px 0 0;
        font-size: 16px; font-size: 1.6rem;
    }


    .hx-num{
        margin: 0 0 20px;
        font-size: 22px; font-size: 2.2rem;
        font-weight: bold;
    }
    
    .hx-num span{
        display: inline-block;
        width: 36px;
        height: 36px;
        line-height: 36px;
        margin-right: 10px;
    }

    .li-theme {
        margin: 0 -15px;
    }

    .li-theme li{
        width: 25%;
        margin: 0 0 30px;
        padding: 0 15px;
    }

    .li-theme.col2 li{
        width: 50%;
        margin: 0 0 30px;
        padding: 0 15px;
    }

    .li-theme.col2 li a.link-cover,
    .li-theme.col2 li .flex{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .li-theme li img{
        width: 150px;
        height: 150px;
    }

    .li-theme.col2 li .theme-ttl{
        flex: 1;
        margin: 0 0 0 20px;
        text-align: left;
    }


    .li-theme li .theme-ttl span{
        font-size: 14px; font-size: 1.4rem;
    }

    .contact-form{
        margin: 0 0 20px;
        border: 1px solid #E5E5E5;
        background: #E7ECFF;
        font-size: 14px;
    }

    .contact-form dt{
        display: inline;
        float: left;
        width: 29%;
        padding: 12px 2%;
        margin: 0;
        border: none;
        border-top: 1px solid #E5E5E5;
        background: transparent;
        text-align: left;
    }

    .contact-form dd{
        margin: 0 0 0 33%;
        padding: 12px 2%;
        border-top: 1px solid #E5E5E5;
        background: #fff;
    }

    .contact-form dd:after{
        content: ' ';
        clear:both;
        display: block;
    }
    
    .contact-form .btn-submit{
        margin-right: -20px;
    }

    .contact-form dt.first-of-type,
    .contact-form dd.first-of-type{
        border-top: none;
    }

    .contact-form-area .center input[type="text"]{
        width: 230px;
    }

    .contact-form-area .btn-submit input[type="submit"]{
        width: 230px;
        height: 50px;
        line-height: 50px;
    }

    input[type="text"].wpcf7-captchar{
        width: 230px;
    }

    .ajax-loader{
        display: block;
    }

    .post-img{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin: 0;
        border-top: none;
    }

    .box-bdr,
    .box-bdr-w{
        padding: 20px;
    }

    .btn-bdr-purple{
        display: inline-block;
    }

    .notice.mindfulness{
        margin: 0 auto 40px;
        padding: 20px;
        font-size: 18px; font-size: 1.8rem;
    }

    .img-flex{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin: 0 -10px;
    }

    .img-flex li{
        display: inline-block;
        width: 50%;
        padding: 0 10px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .hx-main .bg-well-being{
        padding: 20px;
    }

    .dl-inlblock dt img{
        width: 150px;
    }

    .dl-inlblock dd{
        margin: 0 0 0 170px;
    }

    .form-confirm .inner{
        margin: 40px;
    }


    .btn-area{
        display: block;
        margin: 0 auto 40px;
        text-align: center;
    }


    .btn-area li{
        display: inline-block;
        margin: 0 10px;
    }

    .btn-oval {
        display: inline-block;
        padding: 30px;
        -webkit-transition : all .3s linear;
        -moz-transition : all .3s linear;
        -o-transition : all .3s linear;
        transition : all .3s linear;
        font-size: 18px; font-size: 1.8rem;
    }

    .btn-oval span.sp-block{
        display: inline-block;
    }

    .btn-wrap{
        height: 58px;
    }

    .btn-area.event{
        position: absolute;
        top: -10px;
        right: 0;
    }

    .btn-area.event.top{
        top: -129px;
    }

    .alert-danger{
        margin: 0 0 40px;
        padding: 20px;
        font-size: 17px; font-size: 1.7rem;
    }

    .li-card li .item-img img{
        height: auto;
    }

    #main-container .btn{
        /*height: 50px;
        line-height: 50px;
        border-radius: 25px;*/
    }

    #main-container .btn.btn-blue.en-btn{
        position: relative;
        height: auto;
        line-height: 1.4;
        padding: 10px 40px;
        border-radius: 32px;
    }

    #main-container .btn.btn-blue.en-btn .en-txt{
        display: block;
        margin: 5px 0 0;
        font-size: 12px; font-size: 1.2rem;
    }

    #main-container .btn.btn-blue.en-btn i{
        position: absolute;
        line-height: 1;
        top: 50%;
        right: 10px;
        margin: -0.5em 0 0;
    }

    .bg-mindfulness{
        padding: 40px 0;
    }

    .hx-conference{
        padding: 150px 0;
        margin: 0 auto 40px;
        font-size: 35px; font-size: 3.5rem;
    }

    .hx-conference span{
        margin: 10px 0 0;
        font-size: 18px; font-size: 1.8rem;
    }

    .page-link{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    .page-link li{
        width: 50%;
        display: inline-block;
        border: 1px solid #7787D3;
        text-align: center;
        box-sizing: border-box;
        transition:all 0.5s;
    }

    .page-link li:first-child{
        border-right: none;
        border-radius: 3px 0 0 3px;
    }

    .page-link li:last-child{
        border-radius: 0 3px 3px 0;
    }

    .page-link li a{
        display: block;
        padding: 5px 10px;
        text-decoration: none;
    }

    .page-link li span{
        display: block;
        margin: 0;
        font-size: 12px; font-size: 1.2rem;
    }

    .page-link li:before{
        content: " ";
    }

    .page-link li:hover{
        background: #7787D3;
        color: #fff;
    }

    .page-link li:hover a{
        color: #fff;
    }

    #mindfulness,
    #research-healtheconomics,
    #wellbeing,
    #page-link-video,
    #page-link-audio{
       margin-top:-136px;
      padding-top:136px;
    }

    .btn-area.event.large{
        width: auto;
        position: absolute;
        top: -126px;
    }

    .btn-area.event.large .small{
        display: block;
        line-height: 1.4;
        margin: 0;
        font-size: 14px; font-size: 1.4rem;
    }

    #mindfulness .btn-area.event.large{
        top: -146px;
    }

    #mindfulness .btn-oval{
        padding: 25px 30px;
        box-sizing: border-box;
    }

    #mindfulness .btn-area.event.large .small{
        font-size: 13px; font-size: 1.3rem;
    }

    .instruction-btn-area{
        position: relative;
    }

    .instruction-btn-area .btn-area.event.large{
        top: -126px;
    }

    .flexbox-audio{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: stretch;
        margin: 0 -10px;
    }

    .flexbox-audio li{
        width: 50%;
        padding: 0 10px;
        box-sizing: border-box;
    }

    .li-logo{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        align-items: center;
    }

    .li-logo li{
        margin: 0 15px 0 0;
    }

    .li-logo li:last-child{
        margin: 0;
    }

    .youtube{
        width: 560px;
        height: 315px;
        margin: 0 auto;
        padding: 0;
    }

    .youtube iframe {
        position: relative;
    }

    .li-video{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: stretch;
        margin: 0 -20px;
    }

    .li-video li{
        width: 50%;
        margin: 0 0 20px;
        padding: 0 20px;
        box-sizing: border-box;
    }

    /*2023*/

    .top-contents {
    	padding-top: 136px;
    }

    .box{
        margin: -136px 0 120px;
        padding-top: 136px;
    }

    #project,
    #report{
        margin: -136px 0 0;
        padding-top: 136px;
    }

    .hx-bdr-ctr{
        margin: 0 0 40px;
        font-size: 40px; font-size: 4.0rem;
    }

    .hx-bdr-ctr .line{
        padding: 0 60px;
    }

    .hx-bdr-ctr .line span{
        padding: 0 24px;
    }

    .hx-bdr-ctr .en{
        font-size: 16px; font-size: 1.6rem;
    }

    .hx-ctr{
        margin: 0 0 30px;
        font-size: 28px; font-size: 2.8rem;
    }

    .btn-box li{
        min-width: 240px;
    }

    .btn-box.mindfulness-link{
        display: flex;
        margin: 0 auto 40px;
    }

    .btn-box.mindfulness-link li {
        width: 100%;
        margin: 0 20px;
    }

    .btn-box.mindfulness-link li .btn{
        height: 60px;
        line-height: 60px;
        border-radius: 30px;
        font-size: 18px; font-size: 1.8rem;
    }

    .li-flex{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin: 0 -20px;
    }

    .li-flex::after{
      content:" ";
      display: block;
      width:33.3%;
    }


    .li-flex li{
        width: 33.3%;
        padding: 0 20px;
        box-sizing: border-box;
    }

    .main-btn-box .btn{
        height: 60px;
        line-height: 60px;
        font-size: 18px; font-size: 1.8rem;
    }
    
    .btn-box.mindfulness-link .material-icons,
    .main-btn-box .btn .material-icons,
    .large.btn-box .material-icons{
        line-height: 60px;
    }

    .top-txt-box{
        margin: -56px 0  80px;
    }

    .top-txt-box p{
        text-align: center;
    }

    .li-card.topics{
        margin: 0;
    }

    #mindfulness .box p,
    #moreresearch .box p{
        margin: 0 0 40px;
    }

    #mindfulness .box p:last-of-type,
    #moreresearch .box p:last-of-type{
        margin: 0;
    }

    .dl-research{
        margin: 0 0 40px;
    }

    .dl-research dt{
        margin: 0 0 10px;
        font-weight: bold;
    }

    .dl-research dd{
        margin: 0 0 30px;
    }

    #mindfulness .img-box,
    #healtheconomics .img-box{
        margin: 0 auto 40px;
    }

    .large .btn{
        height: 60px;
        line-height: 60px;
        border-radius: 30px;
        font-size: 18px; font-size: 1.8rem;
    }
    
    .large.btn-box li{
        min-width: 473px;
    }

    .btm-btn-box{
        bottom: 140px;
        right: 20px;
        width: auto;
        background: transparent;
        padding: 0;
    }

    .btm-btn-box .btn-box{
        width: auto;
        display: inline-block;
    }

    .btm-btn-box .btn-box li{
        width: auto;
        min-width: inherit;
        display: inline-block;
    }


    .btm-btn-box .btn-box li .btn{
        width: 150px;
        min-width: inherit;
        height: 150px;
        line-height: 1.5;
        border-radius: 85px;
        padding: 50px 10px 0;
        font-size: 14px; font-size: 1.4rem;
        /*border: 1px solid #006DAF;
        box-shadow: 0 7px 0 #006DAF;
        background: linear-gradient(to right, #93D4DD 0%, #006DAF 50%, #93D4DD 100%);
        background-position: 0 50%;
        background-size: 200% auto;
        transition: all 0.5s;*/
    }

    /*.btm-btn-box .btn-box li .btn:hover{
        transform: translate(0, 4px);
        color: #fff;
        box-shadow: 0 3px 0 #006DAF;
        background-position: 100% 50%;
    }*/

    .btm-btn-box .btn-box li .btn .material-icons{
        line-height: 1.5;
        display: block;
        margin: 0;
    }
    
    .papers-img{
        max-width: 50%;
    }

    .btn-blue.btn-en{
        line-height: 1.2;
        height: auto;
        padding: 12px 20px;
    }

    .btn-blue.btn-en .flex .material-icons{
        line-height: 35px;
    }

/* ============
    WIDE: Footer
   ============ */

     #footer-container{
         position: relative;
         padding: 40px 0 0;
     }

    #footer-container .ftr-flex{
        -js-display: flex;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin: 0 -10px 40px;
    }

    #footer-container .ftr-flex .inner{
        margin: 0 10px;
    }

    #page-top{
        display: block;
        position: fixed;
        bottom: 70px;
        right: 20px;
        width: 50px;
        height: 50px;
        background: #0081C3
        color: #fff;
        line-height: 50px;
        font-size: 25px; font-size: 2.5rem;
        text-align: center;
    }

    #page-top a{
        display: block;
        border-radius: 2px;
        background: #0081C3;
        text-decotaion: none;
        color: #fff;
        opacity: 0.8;
    }

    #page-top a:hover{
        display: block;
        opacity: 1;
    }


    #footer-container .ftr-nav{
        display: block;
    }

    #footer-container .ftr-nav li{
        margin: 0 0 10px;
    }

    #footer-container .ftr-nav li.child{
        margin: 0 0 10px;
        padding: 0 0 0 20px;
    }

    #footer-container .ftr-nav li a{
        position: relative;
        line-height: 1.4;
        padding: 0;
        color: #3F3F3F;
        font-size: 13px; font-size: 1.3rem;
        text-align: left;
    }

    #footer-container .ftr-nav li a:hover{
        text-decoration: underline;
    }

    #footer-container .ftr-link li{
        margin: 0 0 10px;
    }

    #footer-container .ftr-link li a{
        line-height: 1.4;
        font-size: 13px; font-size: 1.3rem;
    }

    #footer-container .ftr-link li a:hover{
        text-decoration: underline;
    }

    #footer-container .emb{
        width: 160px;
    }

    #footer-container.top{
        margin: 0;
    }

}

@media only screen and (min-width: 954px) {
    
    .li-card li .item-img img{
        height: auto;
    }
}


@media only screen and (min-width: 1140px) {

    .wrapper {
        width: 1026px; /* 1140px - 10% for margins */
        margin: 0 auto;
    }
/* ============
    PC: Header
   ============ */

/* ============
    PC: Main
   ============ */

    .li-theme li img{
        width: 160px;
        height: 160px;
    }


    .li-card li .item-img img{
        /*height: 227px;*/
        /*height: 160px;*/
    }

/* ============
    PC: Footer
   ============ */

}
