@charset "utf-8";

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 Body
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
body {
	overflow: hidden;
	font-size: 100%;
	word-wrap: break-word;
	-webkit-overflow-scrolling: touch;
	-webkit-text-size-adjust: none;
}
a {
	color: #333;
	text-decoration: none;
}
a:hover {
	color: #06C;
	text-decoration: none;
}
.pc {
	display: none!important;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 Common
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
main {
	width: 100%;
	display: block;
}
.home {
	background: #fcfbf0;
}

/*-- メニュー --*/
nav {
	width: 100%;
	display: block;
}
nav ul.menu {
	width: 96%;
	display: flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
	margin: 20px auto 0;
}
nav ul.menu li {
	width: 49.5%;
	display: block;
	margin: 2px 0;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 メインビジュアル
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.mainVisual {
	position: relative;
	width: 100%;
	display: block;
}
.mainVisual img.mainImg {
	width: 100vw;
	height: 100vh;
	/*height: 55vh;*/
	display: block;
	object-fit: cover;
	object-position: 55% 50%;
	font-family: 'object-fit: cover; object-position: 70% 50%;';
}
.mainVisual img.logoOHO {
	position: absolute;
	width: 100px;
	top: 10px;
	left: 10px;
}
.mainVisual h1 {
	position: absolute;
	top: 10px;
	right: 10px;
	display: block;
	font-size: 1em;
	line-height: 1em;
	text-align: right;
}
.mainVisual img.mainCopy {
	position: absolute;
	width: 50%;
	top: 13%;
	right: 15%;
}
.mainVisual img.coming_soon {
	position: absolute;
	width: 90%;
	top: 160px;
	right: 5%;
}
@media (orientation: landscape){
.mainVisual img.mainImg {
	width: 100vw;
	height: 100vh;
	object-fit: cover;
	object-position: 50% 70%;
	font-family: 'object-fit: cover; object-position: 50% 70%;';
}
.mainVisual h1 {
	position: absolute;
	top: 10px;
	right: 10px;
	display: block;
	font-size: 1em;
	line-height: 1em;
	text-align: right;
}
.mainVisual img.mainCopy {
	position: absolute;
	width: 40%;
	top: 15%;
	right: 5%;
}
.mainVisual img.coming_soon {
	position: absolute;
	width: 50%;
	top: 10%;
	left: calc(50% - 25%);
}
}
.mainVisual a.btnInsta,
.mainVisual a.btnTwitter {
	position: absolute;
    width: 24px;
    height: 24px;
	top: 30px;
	display: block;
}
.mainVisual a.btnInsta {
	right: 10px;
}
.mainVisual a.btnTwitter {
	right: 44px;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 ワークショップ
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.minna {
	position: relative;
	width: 100%;
	display: flex;
		justify-content: center;
		align-content: stretch;
		align-items: center;
		flex-wrap: wrap;
	padding: 0 0 60px;
	box-sizing: border-box;
}
.minna .block {
	width: 90%;
	display: flex;
		justify-content: center;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
    margin: 0 auto;
    padding: 20px 0;
	box-sizing: border-box;
}
.minna img.title {
	width: 70%;
	display: block;
    margin: 0 auto;
}
.minna .minnaRead {
	width: 100%;
	display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
    padding: 20px 0;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.6em;
    text-align: justify;
}
.minna .minnaRead br {
	display: none;
}
.minna .minnaPhoto {
	width: 100%;
	display: flex;
		justify-content: space-between;
		align-content: flex-start;
		align-items: flex-start;
		/*flex-wrap: wrap;*/
	box-sizing: border-box;
}
.minna .minnaPhoto img {
	width: 100%;
	display: block;
}
.minna .minnaInfo {
	width: 90%;
	display: flex;
		justify-content: center;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
    margin: 0 auto;
    padding: 10px 0;
    border-top: solid 5px #b68def;
	box-sizing: border-box;
}
.minna .minnaInfo div {
	width: 100%;
    display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	box-sizing: border-box;
}
.minna .minnaInfo div dl {
	width: 100%;
	display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
    padding: 10px 0;
}
.minna .minnaInfo div dl dt {
	width: 18%;
    max-width: 100px;
    height: 24px;
	display: flex;
		justify-content: center;
		align-content: center;
		align-items: center;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1em;
	text-align: center;
    color: #fff;
    background: #b68def;
}
.minna .minnaInfo div dl dd {
	width: 82%;
	display: flex;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
    padding: 0 10px;
	font-size: 1.3em;
	font-weight: bold;
	line-height: 1.6em;
    box-sizing: border-box;
}
.minna .minnaInfo div dl dd span {
	display: inline-block;
	font-size: 0.8em;
	font-weight: normal;
}
.minna .minnaInfo div dl dd a.btnMap {
	width: 70px;
    height: 20px;
	display: inline-block;
    margin-left: 5px;
	font-size: 0.5em;
	font-weight: normal;
	line-height: 20px;
    text-align: center;
    color: #fff;
    background: #333;
}
.minna .minnaInfo div dl dd a.btnMap:hover {
	transition: all 200ms;
    opacity: 0.7;
}
.minna img.landscape,
.movie img.landscape {
	position: absolute;
	width: 150%;
	bottom: 0;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 ムービー
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.movie {
	position: relative;
	width: 100%;
	display: flex;
		justify-content: flex-end;
		align-content: stretch;
		align-items: center;
		flex-wrap: wrap;
	padding: 40px 0 60px;
	box-sizing: border-box;
}
.movie .block {
	width: 100%;
	display: block;
	margin: 0 auto;
}
.movie .block h2 {
	width: 100%;
	display: block;
	margin: 0 auto 10px;
}
.movie .block h2 img {
	height: 30px;
	display: block;
	margin: 0 auto;
}
.movie .block h2 img.h80 {
	height: 40px;
	display: block;
	margin: 0 auto;
}
.movie .block p {
	width: 96%;
	display: block;
    margin: 10px auto;
	font-size: 1em;
	font-weight: bold;
	line-height: 1.2em;
	text-align: center;
}
.movie .youtube {
	position: relative;
	width: 320px;
	height: 180px;
	margin: 0 auto;
}
.movie .youtube iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.movie .coming_soon {
	position: relative;
	width: 320px;
	height: 180px;
	display: flex;
		justify-content: center;
		align-content: center;
		align-items: center;
	margin: 0 auto;
	font-size: 2em;
	line-height: 1em;
	color: #FFF;
	border: solid 1px #FFF;
	box-sizing: border-box;
}

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 ピックアッププロジェクト
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.pickup {
	width: 100%;
	clear: both;
	padding: 40px 0 20px;
	box-sizing: border-box;
}
.pickup h2 {
	width: 100%;
	display: block;
	align-self: flex-start;
	margin: 0 auto 20px;
}
.pickup h2 img {
	height: 22px;
	display: block;
	margin: 0 auto;
}
.pickup section {
	width: 90%;
	display: flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
	margin: 0 auto;
}
.pickup section .pickupMap_sp {
	position: relative;
	width: 300px;
	display: flex;
		justify-content: center;
		align-content: center;
		align-items: center;
	margin: 0 auto 20px;
	/*background: url("../images/map_bg.png") no-repeat center center;
	background-size: 620px 640px;*/
}
.pickup section .pickupMap {
	display: none;
}
.pickup section .pickupMap_sp area:focus {
	outline: none;
}
.pickup section .pickupMap_sp area.pos_osaka:hover {
	position: absolute;
	width: 75px;
	height: 108px;
	top: calc(50% - 19.4%);
	left: calc(50% - 19.8%);
	display: block;
	z-index: 2000;
	background: url("../images/map_osaka.png") no-repeat center center;
	background-size: contain;
}
.pickup section .pickupMap_sp area.pos_hyogo:hover {
	position: absolute;
	width: 135px;
	height: 200px;
	top: calc(50% - 45.5%);
	left: calc(50% - 49%);
	display: block;
	background: url("../images/map_hyogo.png") no-repeat center center;
	background-size: contain;
}
.pickup section .pickupMap_sp area.pos_kyoto:hover {
	position: absolute;
	width: 130px;
	height: 143px;
	top: calc(50% - 49.7%);
	left: calc(50% - 25.9%);
	display: block;
	z-index: 1000;
	background: url("../images/map_kyoto.png") no-repeat center center;
	background-size: contain;
}
.pickup section .pickupMap_sp area.pos_shiga:hover {
	position: absolute;
	width: 74px;
	height: 118px;
	top: calc(50% - 45.2%);
	left: calc(50% + 5.35%);
	display: block;
	background: url("../images/map_shiga.png") no-repeat center center;
	background-size: contain;
}
.pickup section .pickupMap_sp area.pos_nara:hover {
	position: absolute;
	width: 75px;
	top: calc(50% - 25.7%);
	left: calc(50% - 2.7%);
	display: block;
	background: url("../images/map_nara.png") no-repeat center center;
	background-size: contain;
}
.pickup section .areaMap {
	position: relative;
	width: 100%;
	max-width: 1000px;
	display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	margin: 0 auto;
}
.pickup section .areaMap .areaTitle {
	width: 80px;
	height: 80px;
	display: block;
	object-fit: contain;
	object-position: 50% 50%;
	font-family: 'object-fit: contain; object-position: 50% 50%;';
}
.pickup section .osaka {
	width: 100%;
	height: 480px;
	background: url("../images/osaka_map.png") no-repeat center center;
	background-size: contain;
}
.pickup section .hyogo {
	width: 100%;
	height: 400px;
	background: url("../images/hyogo_map.png") no-repeat center center;
	background-size: contain;
}
.pickup section .kyoto {
	width: 100%;
	height: 240px;
	background: url("../images/kyoto_map.png") no-repeat center center;
	background-size: contain;
}
.pickup section .shiga {
	width: 100%;
	height: 240px;
	background: url("../images/shiga_map.png") no-repeat center center;
	background-size: contain;
}
.pickup section .nara {
	width: 100%;
	height: 240px;
	background: url("../images/nara_map.png") no-repeat center center;
	background-size: contain;
}
.pickup section .areaMap a {
	position: absolute;
	width: 30px;
	height: 30px;
	display: flex;
		justify-content: center;
		align-content: center;
		align-items: center;
    overflow: visible;
    font: bold 1.4em/1em Arial, Helvetica, "sans-serif";
    color: #000;
    border-radius: 20px;
    background: #feee2e;
    filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.2));
	transition: all 100ms;
}
.pickup section .areaMap a:hover {
	z-index: 10000;
    color: #000;
    background: #fff;
	transition: all 100ms;
}
.pickup section .areaMap a .NN,
.pickup section .areaMap a .NE,
.pickup section .areaMap a .EE,
.pickup section .areaMap a .ES,
.pickup section .areaMap a .SS,
.pickup section .areaMap a .SW,
.pickup section .areaMap a .WW,
.pickup section .areaMap a .WN {
  position: absolute;
  width: 6px;
  height: calc(36px / 2);
  clip-path: polygon(50% 0, 0 100%, 100% 100%);
  background: #feee2e;
}
.pickup section .areaMap a:hover .NN,
.pickup section .areaMap a:hover .NE,
.pickup section .areaMap a:hover .EE,
.pickup section .areaMap a:hover .ES,
.pickup section .areaMap a:hover .SS,
.pickup section .areaMap a:hover .SW,
.pickup section .areaMap a:hover .WW,
.pickup section .areaMap a:hover .WN {
  background: #fff;
  transition: all 100ms;
}
.pickup section .areaMap a .NN {
  top: -15px;
  left: calc(50% - 3px);
}
.pickup section .areaMap a .NE {
  top: -6px;
  right: calc(-3px);
  transform: rotate(45deg);
}
.pickup section .areaMap a .EE {
  top: calc(50% - 10px);
  right: calc(-10px);
  transform: rotate(90deg);
}
.pickup section .areaMap a .ES {
  bottom: -6px;
  right: calc(-3px);
  transform: rotate(135deg);
}
.pickup section .areaMap a .SS {
  bottom: -15px;
  left: calc(50% - 3px);
  transform: rotate(180deg);
}
.pickup section .areaMap a .SW {
  bottom: -6px;
  left: calc(-3px);
  transform: rotate(225deg);
}
.pickup section .areaMap a .WW {
  top: calc(50% - 10px);
  left: calc(-10px);
  transform: rotate(270deg);
}
.pickup section .areaMap a .WN {
  top: -6px;
  left: calc(-3px);
  transform: rotate(315deg);
}

/*大阪地図*/
.pickup section .areaMap a.osaka_p1 {
	top: calc(50% - 105px);
	left: calc(50% + 53px);
}
.pickup section .areaMap a.osaka_p2 {
	top: calc(50% - 78px);
	left: calc(50% + 33px);
}
.pickup section .areaMap a.osaka_p3 {
	top: calc(50% - 13px);
	left: calc(50% + 98px);
}
.pickup section .areaMap a.osaka_p4 {
	top: calc(50% + 50px);
	left: calc(50% + 26px);
}
.pickup section .areaMap a.osaka_p5 {
	top: calc(50% + 18px);
	left: calc(50% + 102px);
}
.pickup section .areaMap a.osaka_p6 {
	top: calc(50% + 87px);
	left: calc(50% + 43px);
}
.pickup section .areaMap a.osaka_p7 {
	top: calc(50% + 15px);
	left: calc(50% + 63px);
}
.pickup section .areaMap a.osaka_p8 {
	top: calc(50% + 72px);
	left: calc(50% - 22px);
}
.pickup section .areaMap a.osaka_p9 {
	top: calc(50% - 45px);
	left: calc(50% + 103px);
}
.pickup section .areaMap a.osaka_p10 {
	top: calc(50% + 66px);
	left: calc(50% + 120px);
}
.pickup section .areaMap a.osaka_p11 {
	top: calc(50% - 88px);
	left: calc(50% + 105px);
}
.pickup section .areaMap a.osaka_p12 {
	top: calc(50% - 40px);
	left: calc(50% - 18px);
}
.pickup section .areaMap a.osaka_p13 {
	top: calc(50% + 20px);
	left: calc(50% + 8px);
}
.pickup section .areaMap a.osaka_p14 {
	top: calc(50% - 52px);
	left: calc(50% + 13px);
}
.pickup section .areaMap a.osaka_p15 {
	top: calc(50% + 115px);
	left: calc(50% + 10px);
}
.pickup section .areaMap a.osaka_p16 {
	top: calc(50% - 0px);
	left: calc(50% - 18px);
}
.pickup section .areaMap a.osaka_p17 {
	top: calc(50% - 32px);
	left: calc(50% + 60px);
}

/*兵庫地図*/
.pickup section .areaMap a.hyogo_p1 {
	top: calc(50% + 6px);
	left: calc(50% + 78px);
}
.pickup section .areaMap a.hyogo_p2 {
	top: calc(50% + 73px);
	left: calc(50% - 4px);
}
.pickup section .areaMap a.hyogo_p3 {
	top: calc(50% + 54px);
	left: calc(50% - 44px);
}
.pickup section .areaMap a.hyogo_p4 {
	top: calc(50% - 18px);
	left: calc(50% - 6px);
}
.pickup section .areaMap a.hyogo_p5 {
	top: calc(50% + 98px);
	left: calc(50% - 37px);
}
.pickup section .areaMap a.hyogo_p6 {
	top: calc(50% + 42px);
	left: calc(50% + 60px);
}
.pickup section .areaMap a.hyogo_p7 {
	top: calc(50% + 20px);
	left: calc(50% + 33px);
}
.pickup section .areaMap a.hyogo_p8 {
	top: calc(50% + 80px);
	left: calc(50% + 42px);
}
.pickup section .areaMap a.hyogo_p9 {
	top: calc(50% + 158px);
	left: calc(50% - 10px);
}
.pickup section .areaMap a.hyogo_p10 {
	top: calc(50% + 22px);
	left: calc(50% + 116px);
}
.pickup section .areaMap a.hyogo_p11 {
	top: calc(50% + 65px);
	left: calc(50% + 80px);
}
.pickup section .areaMap a.hyogo_p12 {
	top: calc(50% - 3px);
	left: calc(50% - 50px);
}

/*京都地図*/
.pickup section .areaMap a.kyoto_p1 {
	top: calc(50% + 4px);
	left: calc(50% + 42px);
}
.pickup section .areaMap a.kyoto_p2 {
	top: calc(50% - 40px);
	left: calc(50% - 40px);
}

/*滋賀地図*/
.pickup section .areaMap a.shiga_p1 {
	top: calc(50% - 2px);
	left: calc(50% - 32px);
}

/*奈良地図*/
.pickup section .areaMap a.nara_p1 {
	top: calc(50% - 111px);
	left: calc(50% - 12px);
}

.pickup section ul.proList {
	width: 100%;
	display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
	margin: 20px auto 80px;
}
.pickup section .center {
	justify-content: center !important;
}
.pickup section ul.proList li {
	width: 46%;
	display: block;
	margin: 5px 2%;
	background: #FFF;
}
.pickup section ul.proList li img {
	background: #feee2e;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
 プロジェクト（詳細）
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#project .slideBlock {
	position: relative;
	width: 100%;
	clear: both;
	padding-bottom: 100px;
}
#project ul.slide {
	width: 100%;
	height: 31.6vh;
	clear: both;
}
#project ul.slide li.cover,
#project ul.slide li.contain {
	position: relative;
	width: 100%;
	height: 31.6vh;
	overflow: visible;
	margin-bottom: 100px;
	background-repeat: no-repeat;
	background-position: center;
	background-color: #222;
}
@media (orientation: landscape){
#project .slideBlock {
	height: 90vh;
}
#project ul.slide {
	height: 90vh;
}
#project ul.slide li.cover,
#project ul.slide li.contain {
	height: 90vh;
}
}
#project ul.slide li.cover {
	background-size: cover;
}
#project ul.slide li.contain {
	background-size: contain;
}
#project ul.slide li.cover .caption,
#project ul.slide li.contain .caption {
	position: absolute;
	width: 90%;
	height: 100px;
	bottom: -100px;
	right: calc(50% - 45%);
	display: flex;
		justify-content: flex-end;
		align-content: stretch;
		align-items: flex-start;
		flex-wrap: wrap;
	z-index: 20000;
	padding: 10px 0 10px;
	box-sizing: border-box;
}
#project ul.slide li.cover .caption p,
#project ul.slide li.contain .caption p {
	width: 100%;
	display: block;
	font-size: 0.9em;
	line-height: 1.6em;
}
#project ul.slide li.cover .caption p span.bigger,
#project ul.slide li.contain .caption p span.bigger {
	display: inline-block;
	margin: 0 5px;
	font-size: 1.4em;
	line-height: 1em;
}
#project ul.slide li.cover .caption span,
#project ul.slide li.contain .caption span {
	display: block;
	align-self: flex-end;
	font-size: 0.7em;
	line-height: 1em;
}
#project .slideBlock .down {
	display: none;
}

/* Arrows */
.slick-prev,
.slick-next {
	position: absolute;
	width: 30px;
	height: 30px;
	top: 50%;
		-webkit-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
	display: block;
	z-index: 10000;
	padding: 0;
	font-size: 0px;
	line-height: 0px;
	color: transparent;
	cursor: pointer;
	border: none;
	outline: none;
	background: transparent;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
	outline: none;
	color: transparent;
	background: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
	opacity: 1; }
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
	opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
	font-family: "slick";
	font-size: 30px;
	line-height: 1;
	color: #CCC;
	opacity: 0.75;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
}
.slick-prev {
	left: 5px;
}
[dir="rtl"] .slick-prev {
	left: auto;
	right: 5px;
}
.slick-prev:before {
	content: "←";
}
[dir="rtl"] .slick-prev:before {
	content: "→";
}
.slick-next {
	right: 5px;
}
[dir="rtl"] .slick-next {
	left: 5px;
	right: auto;
}
.slick-next:before {
	content: "→";
}
[dir="rtl"] .slick-next:before {
	content: "←";
}

/* Dots */
#project .slick-dotted.slick-slider {
	margin: 0;
}
#project .slick-dots {
	position: absolute;
	width: 100%;
	height: 5px;
	bottom: 20px;
	left: 0;
	display: block;
	margin: 0;
	text-align: center;
	list-style: none;
}
#project .slick-dots li {
	position: relative;
	width: 50px;
	height: 3px;
	display: inline-block;
	margin: 0 2px;
	padding: 0;
	cursor: pointer;
}
#project .slick-dots li button {
    width: 50px;
	height: 3px;
	display: block;
	font-size: 0;
    line-height: 0;
    cursor: pointer;
    border: 0;
    outline: none;
	background: #EEE;
	opacity: 1;
}
#project .slick-dots li button:hover,
#project .slick-dots li button:focus {
    outline: none;
	background: #FFF;
	opacity: 1;
}
#project .slick-dots li button:hover:before,
#project .slick-dots li button:focus:before {
    background: #f88237;
	opacity: 1;
}
#project .slick-dots li button:before {
    position: absolute;
	width: 50px;
	height: 3px;
	top: 0;
    left: 0;
	font-family: 'slick';
    content: '•';
    text-align: center;
    opacity: 0;
    	-webkit-font-smoothing: antialiased;
    	-moz-osx-font-smoothing: grayscale;
	background: #feee2e;
}
#project .slick-dots li.slick-active button:before {
    opacity: 1;
    color: #FFF;
}
#project .exp {
	position: relative;
	width: 90%;
	display: flex;
		justify-content: space-between;
		align-content: stretch;
		align-items: center;
		flex-wrap: wrap;
	margin: 0 auto;
}
#project .exp .title {
	width: 100%;
	display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
}
#project .exp .title p {
	width: 80px;
	height: 80px;
	display: flex;
		justify-content: center;
        align-content: center;
		align-items: center;
        flex-wrap: wrap;
	font-size: 1.6em;
	font-weight: 700;
	line-height: 1.2em;
	text-align: center;
	background: #feee2e;
}
#project .exp .title p span {
	width: 100%;
	display: block;
    margin-top: 10px;
	font: bold 0.6em/1em Arial, Helvetica, "sans-serif";
	text-align: center;
}
#project .exp .title h1 {
	display: block;
	padding-left: 10px;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.6em;
}
#project .exp .title h1 span {
	display: block;
	font-size: 0.5em;
	font-weight: normal;
	line-height: 1.2em;
}
#project .exp section .textBlock p a {
	text-decoration: underline;
	color: #06C;
}
#project .exp section .name {
	width: 100%;
	display: block;
	margin-left: auto;
	padding-top: 10px;
	font-size: 1.4em;
	line-height: 1.2em;
	text-align: right!important;
}
#project .exp section .name span {
	display: inline-block;
	padding-top: 10px;
	font-size: 0.8em;
	line-height: 1.2em;
	text-align: right;
}
#project .exp section {
	width: 100%;
	display: flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
	padding: 20px 0;
}
#project .exp section .textBlock {
	width: 100%;
	display: block;
    border-bottom: solid 1px #CCC;
}
#project .exp section .textBlock h2 {
	width: 100%;
	display: block;
	margin-bottom: 20px;
	font-size: 1.4em;
	line-height: 1.6em;
	text-align: center;
}
#project .exp section .textBlock h3 {
	width: 100%;
	display: block;
	margin: 20px 0 10px;
	font-size: 1.2em;
    font-weight: bold;
	line-height: 1.2em;
}
#project .exp section .textBlock p {
	width: 100%;
	display: block;
	margin-bottom: 10px;
	font-size: 1.1em;
	line-height: 1.6em;
	text-align: justify;
}
#project .exp section .textBlock p a {
	text-decoration: underline;
	color: #06C;
}
#project .exp section .name {
	width: 100%;
	display: block;
	margin-left: auto;
	padding-top: 10px;
	font-size: 1.4em;
	line-height: 1.2em;
	text-align: right!important;
}
#project .exp section .name span {
	display: inline-block;
	padding-top: 10px;
	font-size: 0.8em;
	line-height: 1.2em;
	text-align: right;
}
#project .youtube {
	position: relative;
	width: 320px;
	height: 180px;
	margin: 20px auto 40px;
}
#project .youtube iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
#project .exp section address {
	width: 100%;
	display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		/*flex-wrap: wrap;*/
	padding: 20px 0;
	font-size: 1em;
	line-height: 1em;
	border-bottom: solid 1px #CCC;
}
#project .exp section address a.linkMap {
	width: auto;
	height: 2em;
	display: block;
	margin: 0 10px;
	padding: 2px 10px;
	font-size: 0.8em;
	line-height: 2em;
	text-align: center;
	color: #FFF;
	background: #333;
}
#project .page_navi {
	position: relative;
	width: 100%;
	margin: 0 auto;
	display: flex;
		justify-content: space-between;
		align-content: stretch;
		align-items: center;
		/*flex-wrap: wrap;*/
	padding: 20px 0 0;
}
#project .page_navi .prev,
#project .page_navi .next {
	width: 30%;
	display: block;
	align-items: center;
	font-size: 0.9em;
	line-height: 1.2em;
	box-sizing: border-box;
}
#project .page_navi .next {
	text-align: right;
}
#project .page_navi .prev a {
	display: block;
	padding-left: 12px;
	text-decoration: none;
	background: url(../images/arrow_left.svg) no-repeat left center;
	background-size: 8px 8px;
}
#project .page_navi .next a {
	display: block;
	padding-right: 12px;
	text-decoration: none;
	background: url("../images/arrow_right.svg") no-repeat right center;
	background-size: 8px 8px;
}
#project .page_navi a.btnBack {
	width: 38%;
	height: 40px;
	display: flex;
		justify-content: center;
		align-items: center;
	margin: 0 auto;
	font-size: 0.8em;
	font-weight: bold;
	line-height: 1.2em;
	text-align: center;
	border: solid 1px #feee2e;
	border-radius: 20px;
	box-sizing: border-box;
}
#project a.linkBack {
	width: 14%;
	min-width: 100px;
	height: 30px;
	display: flex;
		justify-content: center;
		align-items: center;
	margin: 20px auto 0;
	font-size: 0.9em;
	line-height: 1em;
	text-align: center;
	color: #FFF;
	border-radius: 15px;
	background: #333;
	box-sizing: border-box;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
Footer
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
footer {
	position: relative;
	width: 100%;
	clear: both;
	padding: 20px 0 60px;
	background: #feee2e;
}
footer #page-top{
	position: fixed;
	width: 50px;
	height: 50px;
	right: 5px;
	bottom: 70px;
	z-index: 10000;
	border-radius: 25px;
	background: #333;
	box-sizing: border-box;
}
footer .logo {
	width: 240px;
	display: block;
	margin: 0 auto 20px;
}
footer .logo img {
	width: 100%;
	display: block;
}
footer address {
	width: 280px;
	clear: both;
	margin: 0 auto;
	padding-left: 60px;
	font-size: 0.8em;
	line-height: 1.6em;
	box-sizing: border-box;
}
footer address strong {
	display: block;
	margin-bottom: 10px;
	font-size: 1.2em;
	line-height: 1.6em;
}
footer ul.footerMenu {
	width: 96%;
	display: flex;
		justify-content: space-between;
		align-content: center;
		align-items: center;
		/*-webkit-flex-wrap: wrap;
		flex-wrap: wrap;*/
	margin: 20px auto;
}
footer ul.footerMenu li {
	width: 32%;
	display: block;
}
footer .copyright {
	width: 100%;
	clear: both;
	font-size: 0.8em;
	line-height: 1em;
	text-align: center;
}