/* ==========================================================================
   HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)
   Author: Jonathan Verrecchia - verekia.com/initializr/responsive-template
   ========================================================================== */
      
html, button, input, select, textarea {
 color: #686b71; /* Update Default Text Color */
}
body {
 font-size: 1em; line-height: 1.4;
}
::-moz-selection {
 background: #b3d4fc; text-shadow: none;
}
::selection {
 background: #b3d4fc; text-shadow: none;
}
hr {
 display: block; height: 1px; border: 0; border-top: 1px solid #e6e6e6; margin: 1em 0; padding: 0; clear: both;
}
img {
 vertical-align: middle;
 max-width: 100%;
 height: auto;
 display: block;
 margin: auto;
}
fieldset {
 border: 0; margin: 0; padding: 0;
}
textarea {
 resize: vertical
}
.chromeframe {
 margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0;
}
a {
 text-decoration: none
}
body {
 font: 16px/26px Helvetica, Helvetica Neue, Arial
}
.wrapper {
 width: 90%; margin: 0 5%; height=100%; /* height=100%;追加20170816*/
}
/*.wrapper {
 width: 100vw; margin: 0%; height=100%;
}*/


/* ==========================================================================
   HEADER STYLES
   ========================================================================== */

.wrapper {
	padding-top: 5px;
}

.container {
-o-display: flex;
-ms-display: flex;
-moz-display: flex;
-webkit-display: flex;
display: flex;
}

.header-container {
 	padding: 0px; 
 	height:  60px;  
  	width: 100vw;
 	position: fixed !important;  
    position: relative;  
    white-space: nowrap;  
    margin-top: 0;
    z-index: 100;   
 	top: 0;
 	left: 0;
 	/* background: white; */
 	/* background-color: white; */
 	background: black; 	
 	background-color: black;
 	overflow: hidden;
 	border-bottom-color: white;
 	border-bottom-style: solid;
 	border-bottom-width: thin;
}

@media only screen and (max-width: 768px) {
	.header-container {
	   	overflow: visible;  
	}
	.section {
		padding-top: 60px!important;
		position: relative; /* 20170721 */
	}
}

/*
.header-container:before {
    content: ' ';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
 	width: 100vw;
 	height: 100vh;  /* 20170720 */
    z-index: 1;     /* 20170721 修正前 100; */
    opacity: 0.8;
    background-repeat: no-repeat;
    background-position: 50% 0;
    -ms-background-size: cover;
    -o-background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
}
*/
.header-container.internal {
 	padding: 50px 0; 
 	z-index: 2!important; /* 20170720 */ 
}

.jmp {
    margin-left; 10px;
}

.jmp.last {
	margin-right: 200px;
}

.mail {
	margin-left: 2px;
	margin-right: 20px;	
}
.language.first {
	margin-left:10px;
	float:left;	
	margin-right:10px;
}

.language {
    margin-right;  10px;
	float: left;
}

.language.filler {
    margin-left; 0px;
	margin-right:0px;
}

.language-mob {
	margin-right: 30px;
}

.language-mob.first {
	margin-left: 30px;
}

.language-mob, .shop {
	display: none;
}

/* ==========================================================================
   LOGO
   ========================================================================== */
.logo {
 	float: left; 
 	width: 50px; /* Update Logo Width based on half Logo Size  */
 	height: 50px; /* Update Logo Height based on half Logo Size  */
 	margin-left:20px;
 	margin-top:5px;
}

.logo img {
	 width: 45px;
	 height: 40px;	/* 20180805 */ 
	 z-index: 209;
	 position: relative;
}
nav {
 	/* float: right; */
 	/* position: relative; */ 
 	display: flex; 
 	justify-content: center; 
 	align-items: center; 
 	position: absolute;
 	right: 50px; /* 20180809 add */
 	left:  50px; /* 20180809 add */

 	z-index: 210;
 	overflow: hidden;
 	margin-left: 10vw;
 	width: 60vw;
}
nav li { 
 	float: left; 
 	margin-left: 30px;
}
nav li.first, .foot-nav li.first {
	margin-left: 0
}
nav li a {
 	/* color: #000;*/ /* Update Nav Link Color */
 	color: white;
 	font-weight: bold; 
 	font-size: 14px;
}
nav li a:hover {
 	color: #258056 /* Update Nav Link Hover Color */
}

/* social define  */
navs {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
 	z-index: 400;
 	margin-left: 65vw;
 	width: 30vw;
}
navs li { 
 	/* margin-left: 30px; */
 	float: left;
 	list-style:none;
 	margin-top: -4px;
}
navs li.first, .first {
	margin-left: 0
	float: left;
}
navs li a {
 	color: white;
 	font-weight: bold; 
 	font-size: 14px;
}
navs li a:hover {
 	color: #258056 
}
.social-icon {
	margin-left:0;
}

.social-icon.first {
    margin-left: 0;
    float: left;
}
.social-icon.last {
    margin-right: 30px;
}
.social {
	max-width: 30px;
	top: 0px;
 	position: relative; 
}

/* social end */

/* language set */
lang {
    float: left;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
 	z-index: 400;
 	margin-left: 1px;
 	width: 50px;
 	height: 20px;
 	position: absolute;
 	top: 130px;
}

lang li { 
 	margin-left: 10px;
 	float: left;
 	list-style:none;
}
lang li.first, .first {
	margin-left: 0
	float: left;
}
lang li a {
 	color: white;
 	font-weight: bold; 
 	font-size: 14px;
}
lang li a:hover {
 	color: #258056 
}
.lang {
    display: flex;
}
/* language end */

.header-container .wrapper  nav .toggleMenu {
 	margin-right: 0; 
 	width: 28px; height: 21px; 
 	float: right; 
 	-webkit-border-radius: 4px; 
 	border-radius: 4px; 
 	padding: 10px 12px; 
 	background-color: rgba(0, 0, 0, 1);
 	z-index: 500;  /* 20170721 *//* 20180816 reset */	
}
/*  20180816 kn delete */
/*.header-container .wrapper  nav .toggleMenu img {  */
/* 	width: 100%;                                     */
/* 	padding-bottom: 6px;                             */
/*  */	/* z-index: 500; */ /* 20170721 */	
/*} */



/* ==========================================================================
   CTA STYLES
   ========================================================================== */
   
.cta {
 	color: #c7c7c7; /* Update Default CTA color */	
 	text-align: center;
 	z-index: 9; /* z-index: 900; 20170721 */
 	margin: 0 auto;
 	padding-top: 20px;
}
.cta h1 {
 	color: #fff; /* Update CTA Heading color */
 	font-weight: 400; 
 	font-size: 48px; 
 	line-height: 48px; 
 	margin-bottom: 0;
}
.cta h3 {
 	color: #cecece; /* Update CTA Sub-Heading color */	
 	font-weight: 100; 
 	font-size: 28px; 
 	margin-top: 5px; 
 	margin-bottom: 40px; 
}


/*-----------------------------------------------------------------------------------*/
/*	SLIDESHOW
/*-----------------------------------------------------------------------------------*/

.cb-slideshow,
.cb-slideshow:after { 
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 0; 
    opacity: 0.9;
}
.cb-slideshow li {
	list-style-type: none!important;
}
.cb-slideshow:after { 
    content: '';
}
.cb-slideshow li span { 
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    opacity: 0;
    z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
    -webkit-animation: imageAnimation 18s linear infinite 0s;
    -moz-animation: imageAnimation 18s linear infinite 0s;
    -o-animation: imageAnimation 18s linear infinite 0s;
    -ms-animation: imageAnimation 18s linear infinite 0s;
    animation: imageAnimation 18s linear infinite 0s; 
}
.cb-slideshow li div { 
    z-index: 1000;
    position: absolute;
    bottom: 30px;
    left: 0px;
    width: 100%;
    text-align: center;
    opacity: 0;
    color: #fff;
    -webkit-animation: titleAnimation 18s linear infinite 0s;
    -moz-animation: titleAnimation 18s linear infinite 0s;
    -o-animation: titleAnimation 18s linear infinite 0s;
    -ms-animation: titleAnimation 18s linear infinite 0s;
    animation: titleAnimation 18s linear infinite 0s; 
}

/* ==================================================
	SLIDESHOW - ADD IMAGES HERE
================================================== */

.cb-slideshow li:nth-child(1) span { 
    background-image: url(../img/slider1.jpg) ;
}
.cb-slideshow li:nth-child(2) span { 
    background-image: url(../img/slider2.jpg);
    -webkit-animation-delay: 6s;
    -moz-animation-delay: 6s;
    -o-animation-delay: 6s;
    -ms-animation-delay: 6s;
    animation-delay: 6s; 
}
.cb-slideshow li:nth-child(3) span { 
    background-image: url(../img/slider3.jpg);
    -webkit-animation-delay: 12s;
    -moz-animation-delay: 12s;
    -o-animation-delay: 12s;
    -ms-animation-delay: 12s;
    animation-delay: 12s; 
}



/* Animation for the slideshow images */
@-webkit-keyframes imageAnimation { 
    0% { opacity: 0;
    -webkit-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -webkit-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-moz-keyframes imageAnimation { 
    0% { opacity: 0;
    -moz-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -moz-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-o-keyframes imageAnimation { 
    0% { opacity: 0;
    -o-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -o-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@-ms-keyframes imageAnimation { 
    0% { opacity: 0;
    -ms-animation-timing-function: ease-in; }
    8% { opacity: 1;
         -ms-animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
@keyframes imageAnimation { 
    0% { opacity: 0;
    animation-timing-function: ease-in; }
    8% { opacity: 1;
         animation-timing-function: ease-out; }
    17% { opacity: 1 }
    25% { opacity: 0 }
    100% { opacity: 0 }
}
/* Animation for the title */
@-webkit-keyframes titleAnimation { 
    0% { opacity: 0 }
    8% { opacity: 1 }
    17% { opacity: 1 }
    19% { opacity: 0 }
    100% { opacity: 0 }
}
@-moz-keyframes titleAnimation { 
    0% { opacity: 0 }
    8% { opacity: 1 }
    17% { opacity: 1 }
    19% { opacity: 0 }
    100% { opacity: 0 }
}
@-o-keyframes titleAnimation { 
    0% { opacity: 0 }
    8% { opacity: 1 }
    17% { opacity: 1 }
    19% { opacity: 0 }
    100% { opacity: 0 }
}
@-ms-keyframes titleAnimation { 
    0% { opacity: 0 }
    8% { opacity: 1 }
    17% { opacity: 1 }
    19% { opacity: 0 }
    100% { opacity: 0 }
}
@keyframes titleAnimation { 
    0% { opacity: 0 }
    8% { opacity: 1 }
    17% { opacity: 1 }
    19% { opacity: 0 }
    100% { opacity: 0 }
}
/* Show at least something when animations not supported */
.no-cssanimations .cb-slideshow li span{ opacity: 1; }


/* ==========================================================================
   BUTTON STYLES
   ========================================================================== */
.btn, button {
	 -webkit-border-radius: 3px; 
	 border-radius: 3px; 
	 border: none; 
	 -webkit-transition: all 250ms ease-in-out; 
	 -moz-transition: all 250ms ease-in-out; 
	 -ms-transition: all 250ms ease-in-out; 
	 -o-transition: all 250ms ease-in-out; 
	 transition: all 250ms ease-in-out; 
	 color: #fff; 
	 font-size: 22px; 
	 text-align: center; 
	 padding: 14px 40px; 
	 font-weight: bold; 
	 display: inline-block;
}
.yellow {
 	background: #f4b200; /* Update Button color */	
}
.yellow:hover, .blue:hover {
 	background: #f45c00; 
 	color: #fff; /* Update Hover color */	
}
.blue {
 	background: #2c8ac6;
}
.black {
 	background: black;
}
.black:hover {
 	background: #d6964b; 
 	color: #fff; /* Update Hover color */	
}
.pink {
	background: #DF277E;
}
.pink:hover {
	background: #000;
	color: #fff;
}
.small {
 	font-size: 18px; 
 	padding: 8px 32px; 
 	margin-top: 10px;
}
   
/* ==========================================================================
   TYPOGRAPHY
   ========================================================================== */
h1, h2, h3, h4, h5, h6{
	color: #1f2226; /* Update Headings Color */
	line-height: 110%;
}
h1{
	font-size: 36px;
}   
h2{
	font-size: 32px;
	clear: both;
}
h2.title{
	margin-bottom: 0;
}   
h3{
	font-size: 24px; 
	margin-top: 1.4em; 
	margin-bottom: .8em;
}
h4{
	font-size: 20px;
} 
h5{
	color: #1A553F;  /* Update H5 Heading Color */
	font-size: 16px;
	font-weight: bold;
}
h5.subtitle{
	margin-top: 5px;
}
a{
	color: #1A553F;  /* Update Link Color */
	-webkit-transition: all 250ms ease-in-out; 
	-moz-transition: all 250ms ease-in-out; 
	-ms-transition: all 250ms ease-in-out; 
	-o-transition: all 250ms ease-in-out; 
	transition: all 250ms ease-in-out;	
}
a:hover{
	color: #258056;  /* Update Link Hover Color */
}
.callout{
	color: #414449;  /* Update Call Out Text Color */
	text-align: left; 
	font-size: 26px; 
	line-height: 34px; 
	font-weight: 300; 
	padding-bottom: 10px; 
	margin-bottom: 0; 
	clear: both;
}
.callout strong{
	color: #1A553F; /* Update Call Out By Color */
	font-size: 16px; 
}
.callout span{
	color: #1A553F; /* Update Call Out Highlight Color */
}
.callout.home{
	border-top: 1px solid #e6e6e6; 
	margin-top: 30px; 
	padding-top: 30px;
}
.callout.internal{
	border-bottom: 1px solid #e6e6e6; 
	margin-bottom: 30px; 
	padding-bottom: 30px;
}
.callout.internal.noline{
	border-bottom: 0px solid #e6e6e6; 
	margin-bottom: 30px; 
	padding-bottom: 30px;
}
.callout.internal p{
	margin-top: 10px;
}
.listmenu{
	padding-left: 0;
	border-top: 1px solid #e6e6e6;

}
.listmenu li{
	border-bottom: 1px solid #e6e6e6;
	list-style-type: none;
	padding: 8px 0 8px 6px;
}


/* ==========================================================================
   Section + Layout Styles
   ========================================================================== */
.section{
	padding: 0; 
	background: #fff; 
	position: relative; 
	z-index: 1; 
}
.half {
 	width: 45%; 
 	margin-left: 2%; 
 	margin-right: 3%; 
 	float: left; 
 	margin-bottom: 50px;
}



.halfr {
 	width: 45%; 
 	margin-right;50%
  	margin-right; 3%; 
  	float: right;
  	margin-bottom: 50px;
}

.half.feat {
 	border: none; 
 	margin-right: 0; 
 	padding-right: 0; 
 	padding-bottom: 0px;
}
.third {
 	width: 25%; 
 	margin-left: 3%; 
 	margin-right: 3%; 
 	padding-right: 3%; 
 	float: left; 
 	margin-bottom: 50px; 
 	border-right: 1px solid #e6e6e6;
}
.third.internal {
 	border: none;
}
.feature {
 	padding-left: 100px;
 	position: relative;
}
.feature span {
 	position: absolute; 
 	left: 0; 
 	top: 0px; 
 	width: 80px;
}
.feature span img {
 	width: 100%;
}
.main article {
 	float: left; 
 	width: 62%;
 	margin-bottom: 40px;
}
.main aside {
 	float: right; 
 	width: 30%;
 	margin-bottom: 40px;
}
.main {
 	padding: 10px 0 20px;
 	background-color: white;
}
.main article h1 {
 	font-size: 2em;
}
.icon {
 	width: 75px; 
 	display: inline-block; 
 	padding-bottom: 20px;
}
.headshot {
 	width: 100%; 
 	display: inline; 
 	padding-bottom: 20px; 
 	margin-top: 40px; 
 	text-align: center;
}
.icon img, .headshot img, .feat_img img {
 	width: 100%;
}
.headshot img {
 	-webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.15); 
 	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.15); 
 	-webkit-border-radius: 100px; 
 	border-radius: 115px; 
 	max-width: 150px;
 	margin-right: 10px;
}
.feat_img {
 	margin-top: 20px;
}

.body-text {
 	max-width: 50%; 
 	margin: 0 auto; 
 	text-align: center;
}
.wapper-body-img {
	position:relative;
	display:inline-block;
}
.cover-body-img {
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-pack: center;
	display:flex;
	height: 100%;
	justify-content: center;
	overflow: hidden;
	width: 100%;
	position: relative;
}
.body-img {
 	max-width: 100vw; 
 	height: 100%;
 	width: 100%;
}
.body-img-overtext {
 	color: white; 
 	position: absolute;
 	left: 0vw;
 	right: 0vw;
 	top: 8vw;
 	font-size: 2.5vw;
 	font-family: cursive;
}
.body-img-overtext-mid {
 	color: white; 
 	position: absolute;
 	left: 0vw;
 	right: 0vw;
 	bottom: 1vw;
 	font-size: 2.5vw;
 	font-family: Monotype Corsiva;
 	line-height: normal;
}
.body-img-overtext-bottom {
 	color: white; 
 	position: absolute;
 	left: 0vw;
 	right: 0vw;
 	bottom: 3vw;
 	font-size: 3vw;
 	font-family: Monotype Corsiva;
 	line-height: normal;
}

//.body-img-overtext:hover {
 	//color: green;
//}
//.body-img-overtext-mid:hover {
 	//color: yellow; 
//}
//.body-img-overtext-bottom:hover {
 	//color: yellow; 
//}


.body-text-inlineblock-title {
	font-weight:800;
}
.body-text-inlineblock {
	display: inline-block; 
	text-align: left; 
	line-height : 1.8; 
	font-family: 'ＭＳ Ｐゴシック' ,'Verdana'; 
	font-weight:600;
	max-width: 100%;
}


.center{
	text-align: center;
}
.left{
	float: left;
}
.right{
	float: right;
}
.clears{
	clear: both; 
	height: 50px;
}
.clears.padder{
	height: 40px;
}   

.video {
	margin-top: 0px; 
	padding-top: 20px;
	padding-bottom: 20px;
}

.items-container, .about-container {
	margin-top: 0px; 
	padding-top: 0px;
}

input {
  display: inline-block;
  margin: 0;
  font-family: sans-serif;
  font-size: 18px!important;
  appearance: none;
  box-shadow: none;
  border-radius: none;
  width: auto;
}
input:focus {
  outline: none;
}

input {
  padding: 10px;
  border: none;
  border-bottom: solid 1px #c9c9c9;
  transition: border 0.3s;
  width: 290px;
}

input#email {
	margin-right: 20px;
}

#contact textarea {
  border: solid 1px #c9c9c9;
  transition: border 0.3s;
  outline: none;
  overflow: none;
  font-family: sans-serif;
  font-size: 18px!important;
  resize: none;
  padding: 4px;
}

form#contact button {
	background: #DF277E!important;
	font-size: 18px!important;
	margin-left: 0px;
	padding: 10px 20px!important;
}

form#contact button:hover {
	 background: #000!important; 
	 color: #fff; /* Update Hover color */	
}

/* Colorboxes */	

a.aboutbox {
  font-weight: 300;
  display: inline-block;
  text-decoration: none;
  color: white;
  padding: 30px 0px;
  max-width: 513px;
  width: 100%;
  margin: 0px;
  text-align: center;
}

a.aboutbox.first {
  background-color: #0E487A;
  -webkit-transition: background-color 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out;
}
a.aboutbox.second {
  background-color: #2B8B77;
  -webkit-transition: background-color 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out;
}
a.aboutbox.third {
  background-color: #1A553F;
  -webkit-transition: background-color 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out;
}
a.aboutbox .description {
  display: inline-block;
  vertical-align: middle;
  padding-left: 10px;
  font-size: 23px;
  padding-top: 40px;
  padding-bottom: 40px;
}

a.aboutbox .description span {
  display: block;
  line-height: 16px;
}

/* ==========================================================================
   Footer Styles
   ========================================================================== */

.footer-container {
 	/* background: #f0f2f5;*/ /* Update Footer Background Color */
 	background: black; /* 20180816 Update Footer Background Color */
 	z-index: 3; 
 	position: relative;
}
footer img {
    max-width: 135%; 
    padding-top: 10px;
}
.footer-container footer {
 	padding: 1px 0 0px;
}
.foot-nav {
 	display: flex; /* 子要素をflexboxで揃える */
    flex-direction: row; /* 子要素をflexboxにより横方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;
    width: 70vw;
    padding-top: 36px;
}
.foot-nav li {
 	float: left; 
 	list-style-type: none; 
 	margin-left: 50px;
}
.foot-nav li a {
 	/* color: #1f2226; */ /* Update Footer Link Color */
 	color: white; /* 20180816 Update Footer Link Color */
 	font-weight: bold; 
 	font-size: 14px; 
 	display: inline-block;
}
.foot-nav li a:hover {
 	color: #258056; /* Update Footer Link Hover Color */
}
.logo-foot {
	float: left; 
	width: 80px; 
	margin-left: 50px;
}
.logo-foot img {
 	width: auto;
}

.foot-nav li.mobile-social-footer {
	display: none;
}

img.top {
	max-width: 40px;
	position: relative;
	top: -5px;
}


/* ==========================================================================
   Insert custom styles
   ========================================================================== */


.yoga .gallery img {
	max-width: 150px;
	height: auto;
}












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

@media only screen and (max-width: 480px) {
	.foot-nav li {
		display: block!important; 
		margin: 0;
	}
	.cta {
		padding-top: 40px;
	}
	.cta h3 {
	 	margin-top: 20px;
	}
	.body-text {
	    max-width: 90%;
	}
	.body-img {
 	    max-width:99%; 
 	    height: 100%;
	}	
	nav {
	    display: block;
	}  
	.lang {
	    display: block;
	}  
}

/*
@media only screen and (max-width: 480px) and (min-width: 390px) {
	.body-img-overtext {
 		top: 15vw;
	}
	.body-img-overtext-mid {
 		top: 30vw;
 	}
	.body-img-overtext-bottom {
 		top: 46vw;
	}
}


@media only screen and (max-width: 390px) {
	.body-img-overtext {
 		top: 18vw;
	}
	.body-img-overtext-mid {
 		top: 30vw;
 	}
	.body-img-overtext-bottom {
 		top: 46vw;
	}
}
*/

/* ==========================================================================
   Media Queries 768
   ========================================================================== */
   
@media only screen and (max-width: 768px) { 
    html{ font-size : 40%;}
	.logo {
		/* width: 128px; */
		/* width: 100px;  */
	}
	.main article, .main aside {
	 	width: 100%; 
	 	float: none;
	}
	.main article{
		padding-top: 40px;
	}
	.main aside {
	 	padding-bottom: 40px;	
	}
	.feature {
	 	padding-bottom: 20px; 
	 	border-bottom: 1px solid #dadada;
	}
	.logo-foot {
	 	float: right; 
	 	display: block; 
	 	text-align: center;
	}
	.foot-nav {
	 	float: none; 
	 	text-align: center; 
	 	padding: 0;
	 	display: table-footer-group;
	}
	.foot-nav li {
	 	display: inline; 
	 	float: none;
	}
	.foot-nav li a {
	    font-size:10px;
	}
	.header-container .wrapper nav ul {
	    /* position: relative; */ /* 20170721 */
	    height: 100vh;        /* 20170720  スマホモードの右肩に出るリストメニュー表示用 */
	    max-height: 250px;    /* 20170720  スマホモードの右肩に出るリストメニュー表示用 300を230に変更*/
	    width: 100vh          /* 20170724 */
	    max-width: 30px;      /* 20170724 */
	 	margin: 0; 
	 	padding: 2px 0px 1px 0px; 
	 	text-align: center    /* 20170726  right; */
	 	clear: right; 
	 	float: right; 
		background-color: rgba(0, 0, 0, 1);
	 	position: absolute; 
	 	top: 38px; 
	 	right: 0;
	 	/* z-index: 300; */ /* 20170721 試し */ 
	}
	.header-container .wrapper  nav ul li {
	 	display: block; 
	    position: relative;
	 	margin: 0; 
	 	float: none;
		padding: 5px 10px;
		/* z-index:300; */ /* 20170721  試し */
	}
	nav li a {
		color: #fff;
		/* z-index:300; */ /* 20170721  試し */
	 	z-index: 99; /* 20170721 */		
	}
	nav li a:hover {
	 	color: #258056; /* Update Nav Link Hover Color */
	 	z-index: 99; /* 20170721 */
	}
	.cta h1 {
	 	font-size: 32px; 
	 	line-height: 40px;
	}
	.cta h3 {
	 	font-size: 20px;
	}
	button {
		margin-top: 20px;
	}
	.main {
	 	padding: 0;
	 	z-index: 99;
	}
	.half {
	 	float: none; 
	 	width: 100%; 
	 	border-bottom: 1px solid #e6e6e6; 
	 	text-align: left; 
	 	padding-bottom: 30px;
	}
	.feat.last {
	 	border-bottom: 1px solid #e6e6e6; 
	 	padding-bottom: 50px;
	}
	.clears {
	 	height: 0px;
	}
	.third {
	 	width: 100%; 
	 	margin-right: 0%; 
	 	padding-right: 0%; 
	 	float: none; 
	 	margin-bottom: 0px; 
	 	margin-top: 50px; 
	 	border-right: none; 
	 	border-bottom: 1px solid #e6e6e6;
	}
	.callout {
	 	font-size: 20px; 
	 	line-height: 28px; 
	 	padding-bottom: 30px;
	}
	.callout.internal {
	 	padding-top: 40px; 
	 	margin-bottom: 40px;
	}
	.headshot {
		margin-top: 0;
	}
	.third.internal.last {
	 	margin-bottom: 50px; 
	 	border: none;
	}
	.third.internal {
	 	border-bottom: 1px solid #e6e6e6; 
	 	padding-bottom: 30px;
	}
	.flexslider {
	 	width: 100%; 
	 	margin-left: 3%;
	}
	.flex-direction-nav .flex-prev {
	 	left: -26px;
	}
	.flex-direction-nav .flex-next {
	 	right: -26px;
	}
	.social-icon {
		display: none!important;
	}
	.shop, .language-mob {
		display: none;
	}
	.language-mob a {
	    color: #000!important;		
	}
	.shop {
		margin-right: 10px;
	}
	.mobile-social {
		float: left!important;
		background-color: none;
		position: relative!important;
		top: 0px!important;
		right: 0;
		display: block!important;
		margin-right: 10px!important;
	}
	ul.mobile-social {
		background: none!important;
	}
	.mobile-social img {
		max-width: 30px!important;
	}
	.mobile-social li {
		display: inline-block!important;
		padding: 0px!important;
		padding-right: 10px!important;
		float: left!important;
	}
	.mobile-social-footer {
		-webkit-border-radius: 4px 4px 4px 4px;
		border-radius: 4px 4px 4px 4px;
		position: relative!important;
		top: 0px!important;
		right: 0;
		margin-right: 10px!important;
		text-align: center!important;
		width: 100%;
	}
	.foot-nav li.mobile-social-footer {
		display: block!important;
		top: 10px!important;
		padding: 10px;
	}
	.foot-nav li.langage {
		display: block!important;
		top: 10px!important;
		padding: 10px;
	}
	.body-text {
	    max-width: 98%;
	}
	.body-img {
 	    max-width: 99%; 
 	    height: 100%;
	}
	.b-sub {
	    font-size=50%
	}
	.c-sub {
	    white-space: nowrap
	}

	
	img.top {
		top: 50px;
	}
	
	nav {
	    display: block;
	}
	
	navs {
	    display: none; 
	}
	.lang {
	    display: block;
	}  
	lang {
	    top: 155px;
	}
}

/*
@media only screen and (max-width: 768px) and (min-width: 480px) {
	.body-img-overtext {
 		top: 12vw;
 	}
	.body-img-overtext-mid {
 		top: 26vw;
 	}
	.body-img-overtext-bottom {
 		top: 42vw;
	}
}
*/

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


@media only screen and (max-width: 960px) {
    html {
    	font-size : 60%;
    }
	.logo {
	 	float: left; 
	}
	.body-text {
	    max-width: 98%;
	    /* font-size : 3vw; */
	}
	.body-img {
 	    max-width: 99%; 
 	    height: 100%;
    }
    .social-icon {
        display: none;
    }
    .social-icon first{
        display: none;
    }
    .social-icon last{
        display: none;
    }

	nav {
	    display: contents;
	    margin-left:  5vw;
	}
	.lang {
	    display: block;
	}  
}


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


@media only screen and (max-width: 1024px) {
    html {
    	font-size : 60%;
    }
    .social-icon {
        display: none;
    }
    .social-icon first{
        display: none;
    }
    .social-icon last{
        display: none;
    }
    
	nav {
	    margin-left: 15vw;
	}
	.foot-nav {
	  /*  display: inline-grid; */
	      display: block; 
	}
	.foot-nav li a {
	    font-size: 15px;
	}
	.lang {
	    display: flex;
	}  
	.foot-nav li.language-first {
		display: none!important;
	}
	lang {
	    top: 126px;
	}
}

/*
@media only screen and (max-width: 1024px) and (min-width: 768px) {
	.body-img-overtext {
 		top: 9vw;
 	}
	.body-img-overtext-mid {
 		top: 19vw;
 	}
	.body-img-overtext-bottom {
 		bottom: 40vw;
	}
}
*/

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


@media only screen and (min-width: 961px) {
    html{ font-size : 100%;}
	.wrapper {
    	width: 100vw; /* width: 1140px; */ /* 1140px - 10% for margins */
    	margin: 0 auto;
    }
	nav {
	    display: flex;
	    margin-left: 9%;
	    width: 65vw;
	}
	navs {
	    display: flex;
	    margin-left: 30%;
	    width: 65vw;
	}
    .lang {
	    display: none;
	}  

}


/* ==========================================================================
   Media Queries 1140
   ========================================================================== */
@media only screen and (min-width: 1140px) {
    html{ font-size : 100%;}
	.wrapper {
    	width: 100vw; /* width: 1140px; */ /* 1140px - 10% for margins */
    	margin: 0 auto;
    }
	.b-sub {
	    font-size=250%
	}    
	.body-text {
	    max-width: 50%;
	}
	.body-img {
 	    max-width: 100vw; 
 	    height: 100%;
    }
	nav {
	    display: flex;
	    margin-left: 9%;
	    width: 65vw;
	}

	.toggleMenu {
	    display: none;
	}	
	.lang {
	    display: none;
	}  
	.foot-nav li.language-first {
		display: none!important;
	}
	

}




/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
 	background-color: transparent; 
 	border: 0; 
 	overflow: hidden; 
 	*text-indent: -9999px;
}
.ir:before {
 	content: ""; 
 	display: block; 
 	width: 0; 
 	height: 100%;
}
.hidden {
 	display: none !important; 
 	visibility: hidden;
}
.visuallyhidden {
 	border: 0; 
 	clip: rect(0 0 0 0); 
 	height: 1px; 
 	margin: -1px; 
 	overflow: hidden; 
 	padding: 0; 
 	position: absolute; 
 	width: 1px;
}
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
 	clip: auto; 
 	height: auto; 
 	margin: 0; 
 	overflow: visible; 
 	position: static; 
 	width: auto;
}
.invisible {
 	visibility: hidden;
}
.clearfix:before, .clearfix:after {
 	content: " "; 
 	display: table;
}
.clearfix:after {
 	clear: both;
}
.clearfix {
 	*zoom: 1;
}
.last {
 	margin-right: 0; 
 	border: none; 
 	padding-bottom: 0; 
 	padding-right: 0;
}