/** {
	-webkit-appearance: none;
}
body {
	-webkit-text-size-adjust: 100%;
}*/

.not-for-mobile {
    display: none;
}
.for-mobile {
	display: block;
}
#footer-2 {
    display: none;
}


	body {
		width: 100%;
		min-width: 0;
		padding: 0 0 10px 0;
	}
	#header {
		display: none;
	}
	#mobile-header {
		display: block;
		width: 100%;
		height: 60px;
		padding: 0 0 0 0;
		margin: 0 0 0 0;
	}
	#nav-wrapper {
		padding-left: 0;
		/* [disabled]padding-top: 10px; */
		text-align: left;
		margin: 0;
		width: 100%;
		padding-right: 0;
	}

	/*
		Top Image
	*/
	#mobile-top-img {
		display: block;
		width: 70%;
		text-align: center;
		/* padding-top: 10%;
		padding-bottom: 6%; */
		position: relative;
		/* background: #fff; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	#mobile-top-img img {
		max-width: 100%;
		height: auto;
		animation-name: top-img;
		animation-duration: 35s;
		animation-iteration-count: infinite;
		opacity: 0;
	}
	#mobile-top-img .top-img-01 {
		display: block;
		margin: 0 auto;
	}
	#mobile-top-img .top-img-02 {
		animation-delay:5s;
		position: absolute;
		/* top: 19%;
		left: 10%; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	#mobile-top-img .top-img-03 {
		animation-delay:10s;
		position: absolute;
		/* top: 19%;
		left: 10%; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	
	}
	#mobile-top-img .top-img-04 {
		animation-delay:15s;
		position: absolute;
		/* top: 19%;
		left: 10%; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	#mobile-top-img .top-img-05 {
		animation-delay:20s;
		position: absolute;
		/* top: 19%;
		left: 10%; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	#mobile-top-img .top-img-06 {
		animation-delay:25s;
		position: absolute;
		/* top: 19%;
		left: 10%; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	#mobile-top-img .top-img-07 {
		animation-delay:30s;
		position: absolute;
		/* top: 19%;
		left: 10%; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	@keyframes  top-img {
		0% {
			opacity: 0;
		}
		5% { 
			opacity: 1;
		}
		18% {
			opacity: 1;
		}
		18.5% {
			  opacity: 0;
		}
		100% {
			   opacity: 0;
		}
	}


	#footer {
		display: none;
	}
	#mobile-footer {
		display: block;
	}
	#mobile-footer-box {
		margin-top: 20px;
		font-size: 16px;
		display: grid;
		grid-template: 
			"head head head head head" 70px
			"..... left ..... right ....." 150px
			"cpright cpright cpright cpright cpright" 100px
			/ auto 20% 25% 20% auto;
	}
	#mobile-footer-head {
		grid-area: head;
		text-align: center;
	}
	#mobile-footer-head p{
		grid-area: head;
		text-align: center;
		padding: 20px 0 0 0;
	}
	#mobile-footer-left {
		grid-area: left;
		display: flex;
		flex-direction: column;
	}
	#mobile-footer-left span {
		padding: 10px 0 10px 0;
	}
	#mobile-footer-left span a {
		font-family: Calibri, Arial, sans-serif;
		font-weight: normal;
	}
	#mobile-footer-right {
		grid-area: right;
		display: flex;
		flex-direction: column;
	}
	#mobile-footer-right span {
		padding: 10px 0 10px 0;
	}
	#mobile-footer-right span a {
		font-family: Calibri, Arial, sans-serif;
		font-weight: normal;
	}
	#mobile-footer-copyright {
		grid-area: cpright;
		text-align: center;
		margin-top: 10px;
		padding-top: 10px;
	}
	


	/* Align columns straight from top to bottom*/
	#content-columns {
		display: flex;
		flex-direction: column;
		width: 100%;
	}
    #content-columns-2 {
        display: flex;
		flex-direction: column;
		width: 100%;
    }
	#column-1 {
		order: 2;
		width: 100%;
	}
	#column-2 {
		order: 1;
		width: 100%;
		margin-right: 0;
		margin-left: 0;
		border-top-color: transparent;
	}
    #column-2-wide {
        order: 1;
		width: 100%;
		margin-right: 0;
		margin-left: 0;
		border-top-color: transparent;
		background: #F1FBF8;
    }
	#column-2-wide .content {
		padding-top: 10px;
		padding-right: 28px;
		padding-bottom: 20px;
		padding-left: 28px;
	}
	#column-3 {
		order: 3;
		width: 100%;
	}
	#mobile-footer {
		order:4
	}

	h2 {
		font-size: 16px !important;
	}
	.top-text {
		text-align: center;
		font-size: 16px !important;
		font-weight: bold;
		color: #555 !important;
		/*background: repeating-linear-gradient(-45deg, #ffdb7e, #ffdb7e 3px,#e9f4ff 3px, #e9f4ff 7px);*/
		padding: 12px;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		margin-top: 0;
		margin-bottom: 0;
	}
	.top-text-banner {
		text-align: center;
		font-size: 16px !important;
		font-weight: bold;
		color: #555 !important;
		/*background: repeating-linear-gradient(-45deg, #ffdb7e, #ffdb7e 3px,#e9f4ff 3px, #e9f4ff 7px);*/
		padding: 12px;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		margin-top: 0;
		margin-bottom: 0;
	}
	.top-text-border {
		/*border-top: solid 10px #ffdb7e;*/
		/*border-bottom: solid 10px #ffdb7e;*/
		background: #ffdb7e;
	}
	.column-heading {
		background-color: #111;
	}
	.column-heading h1 {
		font-size: 20px;
		font-weight: bold;
	}

	#column-2 .first-content {
		padding-top: 25px;
	}
	.style11{
		color: #555 !important;
		font-weight: bold !important;
	}
	.style21 {
		font-size: 16px !important;
	}
	.style24 {
		color: #FF00FF;
		font-size: 16px !important;
	}
	.style29 {
		font-size: 16px !important;
	}
	.style34 {
		font-size: 16px !important;
	}
	.style40 {
		color: #555 !important;
		font-weight: bold;
	}
	.style48{
		font-size: 16px !important;
	}
	.style49{
		font-size: 16px !important;
	}
	.style50{
		font-size: 16px !important;
	}
	.style51{
		font-size: 16px !important;
	}
	#column-2 .content {
		font-size: 16px;
		padding-top: 0;
	}
	.style307 {
		font-size: 16px !important;
	}
	.style313 {
		font-size: 16px !important;
	}
	.style329 {
		font-size: 16px !important;
	}
	.style338 {
		font-size: 16px !important;
	}
	.style340 {
		font-size: 16px !important;
	}
	.style341 {
		font-size: 16px !important;
	}
	.style342 {
		font-size: 16px !important;
	}
	.style347 {
		font-size: 16px !important;
	}
	.style215 {
		font-size: 16px !important;
	}
	/*
	.style266 {
		font-size: 20px !important;
	}
	*/
	.style237 {
		font-size: 16px !important;
	}
	.style271 {
		font-size: 16px !important;
	}
	.style276 {
		font-size: 16px !important;
	}
	.style311 {
		font-size: 16px !important;
	}
	.style128 {
		font-size: 16px !important;
	}
	.style137 {
		font-size: 16px !important;
	}
	.style168 {
		font-size: 16px !important;
	}
	#column-1 .content, #column-3 .content {
		font-size: 16px;
	}
	.style33 {
		font-size: 16px !important;
	}
	.style33-kai {
		font-size: 16px;
	}
	.hands-on-learning-text {
		padding-bottom: 16px;
	}

	.hands-on-learning-space {
		display: none;
	}
	.hands-on-learning-bottom-line {
		display: none;
	}
    .mobile-iframe {
        max-width: 100%  !important;
        height: auto !important;
    }
    .testimonal-wrapper {
        width: 100%;
    }
	.mobile-added-content {
		display: block;
		text-align: center;
	}
	.mobile-added-content div {
		padding-top: 10px;
	}
	.mobile-hr {
		display: block;
		border-width: 3px 0 0 0;
		border-style: dashed;
		border-color: #ffdb7e;
		width: 90vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -45vw;
		margin-right: -50vw;
		margin-top: 15px;
		margin-bottom: 15px;
	}
	.hr-space-shrink-0 {
		margin-top: 0px;
		margin-bottom: 0px;
	}
	.hr-space-shrink-10 {
		margin-top: 10px;
		margin-bottom: 10px;
	}
	.twelve-reason-top-text {
		margin-top: 0;
	}
	.break-word {
		overflow-wrap: break-word;
	}
	.content-align-center {
		text-align: center;
	}
	.fixed-table {
		width: 100%;
		word-break: break-word;
	}

	/* Hamburger Menu */
	#nav-wrapper {
		background-color: #FFF;
		position: fixed;
		top: 0;
		left: 0;
		height: 60px;
		width: 100%;
		z-index: 1000;
		box-shadow:0 2px 8px rgba(30,30,80,.3);
	}
	/* チェックボックスを非表示 */
	#nav-wrapper input {
		display: none;
	}
	/* 左上ロゴ */
	.menu-left {
		/* line-height: 60px; */
		font-size: 16px;
		width: 100%;
		height: 60px;
		text-align: center;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
		align-items: center; /* 縦方向中央揃え */
		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
		justify-content: center; /* 横方向中央揃え */
	}
	.menu-left img {
		position: absolute;
		top: 0px;
		left: 0px;
		height: 60px;
		width: auto;
	}
	.menu-left a {
		/* font-family: 'Kaushan Script', cursive; */
		font-style: italic;
		color: #555;
	}
	.company-logo {
		display: inline-block;
	}
	/* 上部メニュー */
	.menu {
		float: right;
		margin-right: 10px;
	}
	.menu-parent {
		float: left;
		margin-right: 30px;
		line-height: 60px;
		font-size: 16px;
		font-weight: bold;
		font-family: 'Open Sans', sans-serif;
		white-space: nowrap;
		list-style: none;
	}
	.menu-parent a {
		color: #777;
	}
	.menu-parent a:hover {
		cursor : pointer;
	}
	.menu-extend a{
		display: block;
	}
	.parent-has-menu {
		padding: 15px 0;
	}
	.menu-child a {
		display: block;
	}
	/* パソコンでは V を非表示 */
	.menu-parent .pd {
		display: none;
	}
	/* 上部メニューの最後の項目 */
	.menu-parent:last-child {
		margin-right: 0px;
	}
	
	#menu-navibtn {
		display: none;
		cursor: pointer;
		cursor: hand;
	}

	/* スマホの際に V を表示 */
	.menu-parent .pd {
		display: inline-block;
		width: 100%;
	}
	.menu {
		display: none;
	}
	.menu-parent {
		height: auto;
		width: 100%;
		padding: 0px 20px;
		border-bottom: 1px solid #DDD;
	}
	.menu-parent:first-child {
		border-top: 1px solid #DDD;
	}
	.menu-parent i {
		padding: 0px 6px;
		font-size: 48px;
		font-weight: bold;
		vertical-align: middle;
		color: #777;
	}
	/* メニューを移動させないため */
	#menu-navibtn:checked ~ #nav-wrapper {
		position: fixed;
		overflow-y: scroll;
		overflow-x: hidden;
		height: 100%;
		background: rgba(17,17,17, 0.7);
	}
	.open-nav-wrapper {
		position: fixed;
		overflow-y: scroll;
		overflow-x: hidden;
		height: 100%;
		background: rgba(17,17,17, 0.7);
	}
	
	/* ドロップダウンメニュー */
	.menu-parent {
		position: relative;
	}
	.menu-parent .menu-child {
		visibility: hidden;
		opacity: 0;
		position: absolute;
		margin-left: -40px;
		width: auto;
		box-sizing: border-box;
		padding: 0px 20px;
		background-color: #FFF;
		border: 1px solid #000;
	}
	
	/* スマホ用 */
	/* ハンバーガーメニューがクリックされた時 */
	#menu-navibtn:checked ~ * .menu {
		display: block;
		opacity: 1;
		background: rgba(255, 255, 255, 1);
		margin-top: 0%;
		margin-right:0%;
		width: 60%;
		padding-left: 0%;
	}
	.after-click-menu {
		display: block;
		opacity: 1;
		background: rgba(255, 255, 255, 1);
		margin-top: 0%;
		margin-right:0%;
		width: 60%;
		padding-left: 0%;
	}
	#menu-navibtn:checked ~ * .menu-left {
		background: rgba(255, 255, 255, 1);
	}
	.after-click-menu-left {
		background: rgba(255, 255, 255, 1);
	}
	#menu-navibtn:checked ~ * .menu-parent {
		max-height: inherit;
		overflow-y: visible;
	}
	.after-click-menu-parent {
		max-height: inherit;
		overflow-y: visible;
	}
	#menu-navibtn:checked ~ * div .menu-child {
		max-height: 0;
		overflow-y: hidden;
		visibility: hidden;
	}
	.after-click-menu-child {
		max-height: 0;
		overflow-y: hidden;
		visibility: hidden;
	}
	/* 子メニュー */
	.menu-parent .menu-child {
		border-top: 1px solid #DDD;
		border-left: 1px solid #FFF;
		border-right: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
		position: relative;
		padding: 0 20px;
		opacity: 1;
		top: 0;
		margin-left: auto;
		left: auto;
		width: auto;
	}
	.menu-parent > label:hover {
		cursor: pointer;
		cursor: hand;
	}
	/* 子メニューがクリックされた時 */
	#nav-wrapper input[type="checkbox"]:checked ~ div .menu-child {
		max-height: inherit;
		overflow-y: visible;
		visibility: visible;
	}
	
	/* 子メニュー */
	.menu-child li {
		font-size: 16px;
		border-bottom: 1px solid #DDD;
		list-style: none;
	}
	/* 余分な最後の線を消去 */
	.menu-child li:last-child {
		border: none;
	}
	.menu-child li i {
		margin-right: 3px;
	}
	
	/* ハンバーガー */
	#nav-wrapper #navibtn {
		display: block;
		position: absolute;
		top: 10px;
		right: 10px;
	}
	#navibtn span {
		display: block;
		width: 40px;
		height: 40px;
		background-color: #777;
	}
	#navibtn span span {
		display: block;
		overflow: hidden;
		width: 1px;
		height: 1px;
	}
	#navibtn span span::before,
	#navibtn span span::after,
	#navibtn span::after {
		position: absolute;
		left:10px;
		content:"";
		width: 20px;
		height: 3px;
		background-color: #FFF;
	}
	/* 上の棒 */
	#navibtn span span::before {
		top:10px;
	}
	#menu-navibtn:checked ~ #nav-wrapper label#navibtn span span::before {
		top:19px;
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	/* 下の棒 */
	#navibtn span::after {
		bottom:10px;
	}
	#menu-navibtn:checked ~ #nav-wrapper label#navibtn > span::after {
		bottom:18px;
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
	/* 中の棒 */
	#navibtn span span::after {
		top:18px;
	}
	#menu-navibtn:checked ~ #nav-wrapper label#navibtn span span::after {
		display: none;
	}


	/****             ***/
	/****Schedule css ***/
	/****             ***/
	#schedule {
		display: block;
		position: relative;
	}
	
	.schedule p {
		display: block;
		padding-right: 45px;
		margin-bottom: 1px;
		padding-left: 10px;
	}
	.schedule .schedule-child {
		display: none;
		letter-spacing: 0;
	
	}
	.schedule ul {
		margin: 0;
		padding: 0;
		list-style-type: none;
	}
	
	.schedule-menu {
		background-color: #5FB3F5;
		color: aliceblue;
		position: relative;
		margin: 1px 0 0;
		padding: 10px;
		display: block;
		margin: 1px 0 0;
		font-weight: bold;
		letter-spacing: 0.05em;
		font-size: 16px;
	}
	
	.schedule .schedule-menu:after {
		content: "";
		position: absolute;
		right: 25px;
		top: 38%;
		transition: all 0.2s ease-in-out;
		display: block;
		width: 8px;
		height: 8px;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	.schedule .schedule-menu.open:after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 45%;
	}
	.schedule .schedule-heading {
		background-color: #111;
		color: #CCC;
		font-family: 'Open Sans', sans-serif;
		font-size: 16px;
		font-weight: bold;
		letter-spacing: 0.05em;
		padding: 4px;
		padding-left: 10px;
	}
	.schedule .schedule-class {
		background-color: #dcefff;
		color: #555;
	}
	.schedule .schedule-class:after {
		border-top: solid 2px #555;
		border-right: solid 2px #555;
	}
	.schedule .schedule-caution {
		color: #FF4D4D;
	}
	.schedule .schedule-detail {
		margin: 0;
		padding-left: 5%;
		word-wrap: break-word;
		text-align: left;
		padding-bottom: 5px;
	}
	.schedule .schedule-detail-box{
		background-color: #FFF;
		text-align: center;
		padding-bottom: 1%;
		padding-top: 1%;

	}
	
	.schedule .schedule-detail ul li {
		margin-left: 2em;
		list-style-type: square;
	}
	

	.schedule .register-btn {
		display       : inline-block;
		font-size     : 16px;        /* 文字サイズ */
		text-align    : center;      /* 文字位置   */
		cursor        : pointer;     /* カーソル   */
		padding       : 5px 5px;   /* 余白       */
		margin        : 5px;
		background    : #FF00FF;     /* 背景色     */
		color         : #ffffff;     /* 文字色     */
		line-height   : 1em;         /* 1行の高さ  */
		transition    : .3s;         /* なめらか変化 */
		border        : 2px solid #FF00FF;   /* 枠の指定 */

	}
	.schedule .register-btn input {
		-webkit-appearance: none;
		border-radius: 0;
	}
	.schedule .description-click-here {
		display: inline-block;
		text-align: center;
		font-size     : 16px;        /* 文字サイズ */
		text-align    : center;      /* 文字位置   */
		cursor        : pointer;     /* カーソル   */
		padding       : 3px 3px;   /* 余白       */
		margin        : 5px;
		background    : #007aff;     /* 背景色     */
		color         : #ffffff;     /* 文字色     */
		line-height   : 1em;         /* 1行の高さ  */
		border        : 2px solid #007aff;    /* 枠の指定 */
	}

	.more-menus {
		background-color: #007aff;
		color: aliceblue;
		position: relative;
		margin: 1px 0 0;
		padding: 10px;
		display: block;
		margin: 1px 0 0;
		font-weight: bold;
		letter-spacing: 0.05em;
		font-size: 16px;
	}

	/****                      ***/
	/****Class Description css ***/
	/****                      ***/
	#class-descriptions {
        display: block;
		width: 100%;
		position: relative;
	}
	#class-descriptions img{
		display: block;
		margin: 0 auto;
		max-width: 100%;
		height: auto;
	}
	.class-description-heading {
		background-color: #111;
		color: #CCC;
		font-family: 'Open Sans', sans-serif;
		font-size: 16px;
		font-weight: bold;
		letter-spacing: 0.05em;
		margin-bottom: 1px;
		padding: 4px;
		padding-left: 10px;
	}
	.class-description-box {
		background: #dcefff;
	}
	.class-description-box .class-title {
		background: #5fb3f5;
		padding: 4px;
		text-align: center;
		color: #FFF;
		font-weight: bold;
		letter-spacing: 0.05em;
	}
	.class-description-box p {
		padding: 15px 20px;
		margin: 0;
	}
	.description-text {
		padding-bottom: 10px;
	}
	.description-text-italic {
		font-style: italic;
	}
	.description-text-emphasis {
		font-weight: bold;
		font-style: normal;
	}
	.class-description-btn-container {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.class-description-btn {
		display: inline-block;
		text-align: center;
		font-size     : 16px;
		text-align    : center;
		cursor        : pointer;
		padding       : 5px 5px;
		margin        : 5px;
		background    : #007aff;
		color         : #ffffff;
		line-height   : 1em;
		border        : 2px solid #007aff;
	}
	.class-description-register-btn{
		display       : inline-block;
		font-size     : 16px;        /* 文字サイズ */
		text-align    : center;      /* 文字位置   */
		cursor        : pointer;     /* カーソル   */
		padding       : 5px 5px;   /* 余白       */
		margin        : 5px;
		background    : #FF00FF;     /* 背景色     */
		color         : #ffffff;     /* 文字色     */
		line-height   : 1em;         /* 1行の高さ  */
		transition    : .3s;         /* なめらか変化 */
		border        : 2px solid #FF00FF;   /* 枠の指定 */
	}

	.yay {
		position: relative;
		overflow: hidden;
		margin: 0;
		padding-top: 20px;
		padding-left: 15px;
		padding-right: 15px;
		padding-bottom: 20px;
		font-size: 16px;
		background: #dcefff;
	}
	.yay ul {
		margin-left: 20px;
		list-style: inside;
	}
	.yay li {
		margin-left: 1em;
		text-indent: -1em;
	}
	.close-class-btn-wrapper {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.close-class-btn {
		display: inline-block;
		text-align: center;
		font-size     : 16px;
		font-weight: bold;
		text-align    : center;
		cursor        : pointer;
		padding       : 5px 20px; 
		margin        : 5px;
		background    : #ffdb7e; 
		color         : #ffffff; 
		line-height   : 1em; 
		border        : 2px solid #ffdb7e;
	}

	
	/****                      ***/
	/**** mobile slide css     ***/
	/****                      ***/

	#testimonial-slide-container {
        display: block;
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		z-index: 10;
	}
	.swiper-slide {
		text-align: center;
		font-size: 16px;
		background: #ffdb7e;
		height: auto;
		position: relative;

		/* Center slide text vertically */
		
		display: inline-flex;
		justify-content: center;
		align-items: center;
	}
	.anim-box.slidein.is-animated {
		animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
	}
	@keyframes slideIn {
		0% {
			transform: translateX(180px);
			opacity: 0;
		}

		100% {
			transform: translateX(0);
		}

		40%,
		100% {
			opacity: 1;
		}
	}

	.testimonial-slide-title {
		-webkit-appearance: none;
		color: #FF00FF;
		font-family: 'Open Sans', sans-serif;
		font-size: 16px;
		font-weight: bold;
		text-align: center;
		background: #F1FBF8;
	}
	.testimonial-slide-title div {
		padding: 5px;
	}

	.swiper-container {
		background: #ffdb7e;
	}
	.swiper-content {
		margin-bottom: 15px;
		margin-top: 10px;
		height: 100%;
		padding-left: 15px;
		padding-right: 5px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.swiper-content-child-1 img {
		max-width: 100px;
		height: auto;
		float: left;
		margin-right: 10px;
		margin-left: 10px;
		margin-bottom: 5px;
	}
	.swiper-content-text {
		margin-right: 10px;
	}
	.swiper-button-prev, .swiper-button-next {
		opacity: 0.3;
	}

	.swiper-pagination {
		position: relative;
		margin-top: 5%;
	}
	.swiper-pagination-bullet {
		margin-left: 5px;
	}
	.pagination-wrap {
		position: absolute;
		z-index: 30;
		top: 95%;
		left: 50%;
    	transform: translate(-50%, -50%);
		display: flex;
		justify-content: center;

	}
	.stopbtn {
		cursor: pointer;
		width: 20px;
		height: 15px;
		margin-top: 4px;
		margin-right: 5px;
	}
	.stopbtn.stop {
		position: relative;
	  	display: inline-block;
	}
	.stopbtn.stop::before, .stopbtn.stop::after {
		position: absolute;
		top: 0;
		content: '';
		width: 3px;
		height: 15px;
		background-color: #007aff;
	}
	.stopbtn.stop::before {
		left: 5px;
	}
	.stopbtn.stop::after {
		right: 5px;
	}
	.stopbtn.start {
		position: relative;
		display: inline-block;
	}
	.stopbtn.start::before {
		position: absolute;
		top: 0;
		right: 0;
		content: '';
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 7px 0 7px 14px;
		border-color: transparent transparent transparent #007aff;
	}
	.stopbtn.start::after {
		display: none;
	}
	


	/****                       ***/
	/**** Back to Top Arrow css ***/
	/****                       ***/
    #page-top {
        display: block;
		position: relative;
		z-index: 5;
    }
    #page-top p {
		position: fixed;
		bottom: 20px;
		right: 20px;
		margin: 0;
	}
	#page-top i {
		position: relative;
		bottom: 6%;
		right: 9%;
		font-size: 30px;
	}
	#page-top a {
		display: block;
		z-index: 20;
		padding: 8px 0 0 8px;
		/*border-radius: 30px;*/
		width: 35px;
		height: 35px;
		background-color: #9FD6D2;
		color: #fff;
		font-weight: bold;
		text-decoration: none;
		text-align: center;
		opacity: 0.7;
	}

	/****                        ***/
	/**** Email Form   fixed css ***/
	/****                        ***/
	#email-form {
		position: fixed;
		bottom: 0%;
		background: #FF00FF;
		z-index: 1000;
		border-top: 1px solid #8f7a45;
		padding: 10px;
		width: 100%;
		text-align: center;
		line-height: 25px;
		right: 0;
	}
	.email-contact-form {
		display: flex;
	}
	#emailBtn {
		background-color: #ffdb7e;
		color: #000;
		font-weight: bold;
		border: 1px solid #ffdb7e;
	}

	/****                        ***/
	/**** Register Now fixed css ***/
	/****                        ***/
	#register-now {
		position: relative;
		display: flex;
		width: 100%;
		font-size: 16px;
		z-index: 5;
		/*margin-top: 30px;*/
		text-align: center;
		padding-bottom: calc(env(safe-area-inset-bottom));
		height: 30px;
	}
	.register-now-content {
		position: fixed;
		display: flex;
		top: 60px;
		left: 50%;
		transform: translate(-50%, 0%);
		background: #111;
		width: 100%;
		opacity: 0.8;
		height: 30px;
		flex-direction: column;
    	justify-content: center;
		
	}
	#register-now a {
		color: #FF00FF;
		display: block;
		padding: 10px 0;
	}



	/****                 ***/
	/**** Readmore.js css ***/
	/****                 ***/
	.readmore-btn-wrapper {
		display: inline-block;
	}
	.readmore-btn-container {
		display: flex;
		
	}
	.readmore-js-opn, .readmore-js-cls {
		display: inline-block;
		text-align: center;
		font-size     : 16px;
		text-align    : center;      
		cursor        : pointer;    
		padding       : 5px 5px; 
		margin        : 5px;
		background    : #ffdb7e;    
		color         : #ffffff;     
		line-height   : 1em;         
		border        : 2px solid #ffdb7e;  
		margin-top	  : 10px;
		left: 50%;
		transform: translateX(-50%);
		position: relative;
	}
	.readmore-js-cls {
		padding: 5px 20px;
	}

	/****                       ***/
	/**** Google Map Button css ***/
	/****                       ***/
	#google-map-review {
		position: relative;
		display: flex;
		flex-direction: column; 
    	justify-content: center; 
		text-align: center;
		width: 100%;
		padding-top: 5px;
	}
	#google-map-review a {
		background: #007aff;
		color: #fff;
		padding: 10px 10px;
		margin: 10px;
		font-weight: bold;
	}
	.goo-map-review-text {
		padding: 15px 0;
	}

	/****                       ***/
	/**** Registration Form css ***/
	/****                       ***/
	#registration-form-container {
		position: relative;
		width: 100%;
	}
	.registration-form {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
		width: 100%;
	}
	#registration-form-container input, select, textarea {
		margin-bottom: 15px;
	}
	.registration-filled-area {
		border: solid;
		border-width: thin;
		color: #000;
		background: #DDDDDD;
		margin-bottom: 15px;
	}
	.registration-flex {
		display: block;
		justify-content: flex-start;
		align-items: flex-start;
		width: 100%;
		margin-bottom: 0;
	}
	.registration-flex label {
		width: 100%;
		text-align: left;
		margin-right: 0;
	}
	.registration-flex .second-child {
		width: 100%;
	}
	#registration-form-container .second-child {
		width: 100%;
	}
	

	/****                       ***/
	/**** Alza in t he media    ***/
	/****                       ***/
	.inthepress-container {
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		z-index: 10;
		margin-bottom: 20px;
		background: #ffdb7e;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.inthepress-content {
		margin-bottom: 10px;
		margin-top: 10px;
		height: 100%;
		padding-left: 15px;
		padding-right: 5px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.inthepress-content-child-1 img {
		max-width: 100%;
		height: auto;
		float: left;
		margin-right: 10px;
		margin-left: 10px;
		margin-bottom: 5px;
	}
	.inthepress-content-text {
		margin-right: 10px;
		margin-left: 30px;
	}


	.mobile-inline {
		display: inline;
	}
	.line-link {
		background:linear-gradient(transparent 60%, #ffdb7e 60%);
	}
	.p7IRMimage {
		max-width: 100%;
		height: auto;
	}
	.strong-add {
		font-weight: bold;
	}
	.text-align-p {
		text-align: center;
	}
	.pink {
		color: #FF00FF !important;
	}
	.color-555 {
		color: #555 !important;
	}
	.px16 {
		font-size: 16px !important;
	}
	.font-open-sans {
		font-family: 'Open Sans', sans-serif;
	}
	.no-padding-top {
		padding-top: 0;
	}
	.viewport-width {
		display: block;
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
	}
	.mobile-display {
		display: block;
	}
	.vertical-space-10 {
		padding: 5px 0;
		display: block;
	}
	.vertical-space-20 {
		padding: 10px 0;
		display: block;
	}
	.vertical-space-50 {
		padding: 25px 0;
		display: block;
	}

	/****                       ***/
	/**** Contact Form css      ***/
	/****                       ***/	
	.contact-content-form {
		display: flex;
		flex-direction: column;
		padding: 10px;
	}
	.contact-content-form input {
		margin-bottom: 5px;
	}
	.contact-title {
		padding: 10px;
		text-align: center;
		/* background: #5FB3F5; */
		font-weight: bold;
		/* color: #fff; */
	}
	#contact-content {	
		/* background: #fff; */
		color: #555;
		width: 100%;
		position: relative;
		margin: 0 auto;
		z-index: 31;
		font-size: 16px;
	}
	.contact-buttons {
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 10px;
		
	}
	#contactBtn {
		/* background: #007aff; */
		/* color: #fff; */
		/* border: 1px solid #007aff; */
		font-weight: bold;
		padding: 2px 10px;
		
	}
	.contact-buttons input {
		margin-bottom: 0;
	}

	#contact-content p {
		margin: 0 0 20px;
	}
	.requisite-input {
		color: red;
	}
	#contact-form textarea {
		height: 100px;
	}

	.twelve-reason-img{
		max-width: 320px;
		height: 250px;
	}
	.contact-baa-bgcolor {
		background: #ffdb7e;
	}

	/****                       ***/
	/**** Privacy and Policy    ***/
	/****                       ***/
	/* #privacy-policy-container {

	} */
	.pp-content-box {
		padding: 10px;
	}
	.pp-item {
		font-size: 16px;
		font-weight: bold;
		padding-bottom: 10px;
	}
	/* .pp-text-container {

	} */
	.pp-text {
		padding-bottom: 10px;
	}

	/****                            ***/
	/**** Acting Tip Modal Window    ***/
	/****                            ***/

	.modal-content {
		margin: 50% auto;
		width: 80%;
	}


@media screen and (min-width: 736px) {
	body {
		width: 100%;
		min-width: 0;
		padding: 0 0 10px 0;
        background: #F1FBF8;
	}

	/* Header */
	#mobile-header {
		height: 100px;
	}
	#nav-wrapper {
		height: 100px;
	}
	#nav-wrapper #navibtn {
		top: 20px;
	}
	#navibtn span {
		width: 60px;
		height: 60px;
	}
	#navibtn span span::before,
	#navibtn span span::after,
	#navibtn span::after {
		position: absolute;
		left:15px;
		content:"";
		width: 30px;
		height: 5px;
		background-color: #FFF;
	}
	/* 上の棒 */
	#navibtn span span::before {
		top:15px;
	}
	#menu-navibtn:checked ~ #nav-wrapper label#navibtn span span::before {
		top:28px;
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	/* 下の棒 */
	#navibtn span::after {
		bottom:15px;
	}
	#menu-navibtn:checked ~ #nav-wrapper label#navibtn > span::after {
		bottom:27px;
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}
	/* 中の棒 */
	#navibtn span span::after {
		top:27px;
	}
	.menu-left {
		font-size: 22px;
		height: 100px;
	}
	.menu-left img {
		height: 100px;
	}

	/*
		Top Image
	*/
	#mobile-top-img {
		display: block;
		width: 70%;
		text-align: center;
		/* padding-top: 10%;
		padding-bottom: 6%; */
		position: relative;
		/* background: #fff; */
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
	}
	#mobile-top-img img {
		max-width: 100%;
		height: auto;
		animation-name: top-img;
		animation-duration: 35s;
		animation-iteration-count: infinite;
		opacity: 0;
	}

	#mobile-footer-box {
		font-size: 20px;
		display: grid;
		grid-template: 
			"head head head head head" 70px
			"..... left ..... right ....." 150px
			"cpright cpright cpright cpright cpright" 100px
			/ 25% 20% auto 20% auto;
	}

	#content-columns {
		display: flex;
		flex-direction: column;
		width: 70%;
	}
	#content-columns-2 {
		display: flex;
		flex-direction: column;
		width: 70%;
	}

	/****                        ***/
	/**** Register Now fixed css ***/
	/****                        ***/
	#register-now {
		position: relative;
		display: flex;
		width: 100%;
		font-size: 20px;
		z-index: 11;
		/*margin-top: 30px;*/
		text-align: center;
		padding-bottom: calc(env(safe-area-inset-bottom));
		height: 60px;
	}
	.register-now-content {
		position: fixed;
		display: flex;
		top: 100px;
		left: 50%;
		transform: translate(-50%, 0%);
		background: #111;
		width: 100%;
		opacity: 0.8;
		height: 60px;
		flex-direction: column;
    	justify-content: center;
		
	}

	#testimonial-slide-container {
        display: block;
		width: 100%;
		position: relative;
		z-index: 10;
		left: 0;
		right: 0;
		margin-left: 0;
		margin-right: 0;
		
	}
	.inthepress-container {
        display: block;
		width: 100%;
		position: relative;
		z-index: 10;
		left: 0;
		right: 0;
		margin-left: 0;
		margin-right: 0;
		
	}
	.inthepress-content {
		margin-bottom: 15px;
		margin-top: 10px;
		height: 100%;
		padding-left: 15px;
		padding-right: 5px;
		padding-top: 15px;
		padding-bottom: 5px;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.top-text-banner {
		text-align: center;
		font-size: 18px !important;
		font-weight: bold;
		color: #555 !important;
		/*background: repeating-linear-gradient(-45deg, #ffdb7e, #ffdb7e 3px,#e9f4ff 3px, #e9f4ff 7px);*/
		padding: 24px;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		margin-top: 0;
		margin-bottom: 0;
	}
}
