@charset "utf-8";

/* ----------------------------------------------------------------
Common
----------------------------------------------------------------- */

body {
	margin: 0;
	padding: 0;
	font-size: 17px;
/*	font-family: "Sawarabi Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
/*	font-family: 'Yu Gothic UI','ヒラギノ丸ゴ ProN','Hiragino Maru Gothic ProN','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;*/
	font-family: 'M PLUS Rounded 1c','Yu Gothic UI','ヒラギノ丸ゴ ProN','Hiragino Maru Gothic ProN','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	background: #FFF;
	height: 100%;
}

* {
	-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;
	padding: 0;
}

p {
	-webkit-margin-before: 0px;
	-webkit-margin-after: 0px;
	-webkit-margin-start: 0px;
	-webkit-margin-end: 0px;
}

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

a img {
	border: none;
}

a:hover {
	opacity: 0.7;
}

/*----------------------------------------------------------------- */

body {
	background: #FFF;
	width: 100%;
	height: auto;
}

.pc-only {
	display: block;
}

.sp-only {
	display: none;
}

/*----------------------------------------------------------------- */

article {
	width: 100%;
	text-align: center;
}

.outer {
	position: relative;
	width: 100%;
	max-width: 2560px;
	margin: 0 auto;
}

.inner {
	position: relative;
	width: 1024px;
	height: auto;
	margin: 0 auto;
}

.address {
	font-size: 20px;
	font-weight: bolder;
	letter-spacing: 0.05em;
	text-align: left;
	line-height: 1.3em;
}

.access {
	font-size: 16px;
	font-weight: bolder;
	letter-spacing: 0.05em;
	text-align: left;
	line-height: 1.3em;
}

.link {
	font-size: 20px;
	font-weight: bolder;
	letter-spacing: 0.05em;
	text-align: left;
	line-height: 1.3em;
}

.map {
	position: relative;
	width: 620px;
	height: 310px;
	overflow: hidden;
}

.map iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

#top {
	position: relative;
	width: 100%;
	max-width: 2560px;
	height: 787px;
	background: url(../images/top_bg.jpg) no-repeat center top;
	margin: 0 auto;
}

#title-logo {
	position: relative;
	width: 965px;
	top: 27px;
	left: 31px;
}

#top-containt {
	position: relative;
	width: 938px;
	margin: 0 auto;
	top: 61px;
	left: 25px;
}

#fukuoka {
	position: relative;
	width: 100%;
	max-width: 2560px;
	height: 736px;
	background: url(../images/fukuoka_bg.jpg) no-repeat center top;
	margin: 0 auto;
}

#fukuoka-h2 {
	position: relative;
	width: 948px;
	top: 29px;
	left: 34px;
}

#fukuoka-text-01 {
	position: relative;
	width: 464px;
	top: 49px;
	left: 35px;
}

#fukuoka .address {
	position: relative;
	top: 79px;
	padding-left: 40px;
}

#fukuoka .access {
	position: relative;
	top: 98px;
	padding-left: 40px;
}

#fukuoka .map {
	top: 115px;
	left: 43px;
}

#fukuoka-myrio {
	position: absolute;
	width: 304px;
	top: 151px;
	left: 705px;
}

#osaka {
	position: relative;
	width: 100%;
	max-width: 2560px;
	height: 868px;
	background: url(../images/osaka_bg.jpg) no-repeat center top;
	margin: 0 auto;
}

#osaka-h2 {
	position: relative;
	width: 948px;
	top: 31px;
	left: 34px;
}

#osaka-text-01 {
	position: relative;
	width: 488px;
	top: 51px;
	left: 35px;
}

#osaka-text-02 {
	position: relative;
	width: 682px;
	top: 63px;
	left: 41px;
}

#osaka a {
	position: relative;
	color: #000;
	text-decoration: underline;
	top: 72px;
/*	left: 40px;*/
}

#osaka a .link {
	padding-left: 40px;
}


#osaka .address {
	position: relative;
	top: 103px;
	padding-left: 40px;
}

#osaka .access {
	position: relative;
	top: 116px;
	padding-left: 40px;
}

#osaka .map {
	top: 129px;
	left: 43px;
}

#osaka-prima {
	position: absolute;
	width: 279px;
	top: 326px;
	left: 729px;
}

#nagoya {
	position: relative;
	width: 100%;
	max-width: 2560px;
	height: 764px;
	background: url(../images/nagoya_bg.jpg) no-repeat center top;
	margin: 0 auto;
}

#nagoya-h2 {
	position: relative;
	width: 948px;
	top: 59px;
	left: 34px;
}

#nagoya-text-01 {
	position: relative;
	width: 488px;
	top: 76px;
	left: 35px;
}

#nagoya .address {
	position: relative;
	top: 135px;
	padding-left: 40px;
}

#nagoya .access {
	position: relative;
	top: 155px;
	padding-left: 40px;
}

#nagoya .map {
	top: 166px;
	left: 43px;
}

#nagoya-1000chan {
	position: absolute;
	width: 284px;
	top: 194px;
	left: 709px;
}

#caution {
	position: relative;
	width: 100%;
	max-width: 2560px;
	margin: 0 auto;
}

#caution-title {
	position: relative;
	width: 139px;
	height: auto;
	margin: 0 auto;
	top: 34px;
}

#caution-text {
	text-align: left;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.15em;
	margin: 0 30px 90px;
	position: relative;
	top: 56px;
}

_::-webkit-full-page-media, _:future, :root #caution-text {
	letter-spacing: -0.07em;
}

#banner {
	position: relative;
	width: 240px;
	margin: 0 auto;
	top: 19px;
}

#copyright {
	position: relative;
	width: 57px;
	margin: 38px auto 20px;
}

.pagetop {
	display: none;
	position: fixed;
	width: 98px;
	bottom: 10px;
	left: 50%;
	margin-left: 512px;
	cursor: pointer;
	z-index: 100;
	opacity: 0.9;

}

.pagetop:hover {
	opacity: 0.7;
}

/*----------------------------------------------------------------- */

@media screen and (max-width: 1240px) {

.pagetop {
	display: none;
	position: fixed;
	width: 98px;
	bottom: 10px;
	left: initial;
	right: 10px;
	margin-left: 0;
	cursor: pointer;
	z-index: 100;
	opacity: 0.9;
}
}

/*----------------------------------------------------------------- */

@media screen and (max-width: 1024px) {

.inner {
	width: 100%;
}

.address {
	font-size: 1.953125vw;
}

.access {
	font-size: 1.5625vw;
}

.link {
	font-size: 1.953125vw;
}

.map {
	width: 60.546875%;
	height: calc(100vw / 1024 * 310);
}

#top {
	height: calc(100vw / 1024 * 787);
	background: url(../images/top_bg.jpg) no-repeat center top;
	background-size: cover;
}

#title-logo {
	width: 94.23828125%;
	top: calc(100vw / 1024 * 27);
	left: 3.02734375%;
}

#top-containt {
	width: 91.6015625%;
	top: calc(100vw / 1024 * 61);
	left: 2.44140625%;
}

#fukuoka {
	height: calc(100vw / 1024 * 736);
	background: url(../images/fukuoka_bg.jpg) no-repeat center top;
	background-size: cover;
}

#fukuoka-h2 {
	width: 92.578125%;
	top: calc(100vw / 1024 * 29);
	left: 3.3203125%;
}

#fukuoka-text-01 {
	width: 45.3125%;
	top: calc(100vw / 1024 * 49);
	left: 3.41796875%;
}

#fukuoka .address {
	top: calc(100vw / 1024 * 79);
	padding-left: 3.90625%;
}

#fukuoka .access {
	top: calc(100vw / 1024 * 98);
	padding-left: 3.90625%;
}

#fukuoka .map {
	top: calc(100vw / 1024 * 115);
	left: 4.19921875%;
}

#fukuoka-myrio {
	width: 29.6875%;
	top: calc(100vw / 1024 * 151);
	left: 68.84765625%;
}

#osaka {
	height: calc(100vw / 1024 * 868);
	background: url(../images/osaka_bg.jpg) no-repeat center top;
	background-size: cover;
}

#osaka-h2 {
	width: 92.578125%;
	top: calc(100vw / 1024 * 31);
	left: 3.3203125%;
}

#osaka-text-01 {
	width: 47.65625%;
	top: calc(100vw / 1024 * 51);
	left: 3.41796875%;
}

#osaka-text-02 {
	width: 66.6015625%;
	top: calc(100vw / 1024 * 63);
	left: 4.00390625%;
}

#osaka a {
	top: calc(100vw / 1024 * 72);
}

#osaka a .link {
	padding-left: 3.90625%;
}

#osaka .address {
	top: calc(100vw / 1024 * 103);
	padding-left: 3.90625%;
}

#osaka .access {
	top: calc(100vw / 1024 * 116);
	padding-left: 3.90625%;
}

#osaka .map {
	top: calc(100vw / 1024 * 129);
	left: 4.19921875%;
}

#osaka-prima {
	width: 27.24609375%;
	top: calc(100vw / 1024 * 326);
	left: 71.19140625%;
}

#nagoya {
	height: calc(100vw / 1024 * 764);
	background: url(../images/nagoya_bg.jpg) no-repeat center top;
	background-size: cover;
}

#nagoya-h2 {
	width: 92.578125%;
	top: calc(100vw / 1024 * 59);
	left: 3.3203125%;
}

#nagoya-text-01 {
	width: 47.65625%;
	top: calc(100vw / 1024 * 76);
	left: 3.41796875%;
}

#nagoya .address {
	top: calc(100vw / 1024 * 135);
	padding-left: 3.90625%;
}

#nagoya .access {
	top: calc(100vw / 1024 * 155);
	padding-left: 3.90625%;
}

#nagoya .map {
	top: calc(100vw / 1024 * 166);
	left: 4.19921875%;
}

#nagoya-1000chan {
	width: 27.734375%;
	top: calc(100vw / 1024 * 194);
	left: 69.23828125%;
}

#caution-title {
	width: 13.57421875%;
	top: calc(100vw / 1024 * 34);
}

#caution-text {
	text-align: left;
	font-size: 1.5625vw;
	font-weight: bold;
	line-height: 1.15em;
	margin: 0 2.9296875% calc(100vw / 1024 * 90);
	position: relative;
	top: calc(100vw / 1024 * 56);
}

#banner {
	width: 23.4375%;
	top: calc(100vw / 1024 * 19);
}

#copyright {
	width: 5.56640625%;
	margin: calc(100vw / 1024 * 38) auto calc(100vw / 1024 * 20);
}

.pagetop {
	display: none;
	position: fixed;
	width: 9.5703125%;
	bottom: calc(100vw / 1024 * 10);
	left: initial;
	right: 0.9765625%;
	margin-left: 0;
	cursor: pointer;
	z-index: 100;
	opacity: 0.9;
}
}

/*----------------------------------------------------------------- */

@media screen and (max-width: 640px) {

.pc-only {
	display: none;
}

.sp-only {
	display: block;
}

/* iOS 文字間 */
body.iPhone #text-03 {
	letter-spacing: -0.1em;
}

.outer {
	position: relative;
	width: 100%;
}

.address {
	font-size: 3.125vw;
	font-weight: bolder;
	letter-spacing: 0.05em;
	text-align: left;
	line-height: 1.3em;
}

/* Safari & iOS Chrome */
_::-webkit-full-page-media, _:future, :root .address {
	letter-spacing: -0.1em;
}

.access {
	font-size: 2.8125vw;
	font-weight: bolder;
	letter-spacing: 0.05em;
	text-align: left;
	line-height: 1.2em;
}

/* Safari & iOS Chrome */
_::-webkit-full-page-media, _:future, :root .acess {
	letter-spacing: -0.1em;
}

.link {
	font-size: 2.96875vw;
	font-weight: bolder;
	letter-spacing: 0.013em;
	text-align: left;
	line-height: 1.3em;
}

/* Safari & iOS Chrome */
_::-webkit-full-page-media, _:future, :root .link {
	letter-spacing: -0.1em;
}

.link span {
	display: inline-block;
	text-decoration: underline;
}

.map {
	position: relative;
	width: 87.5%;
	height: calc(100vw / 640 * 430);
	overflow: hidden;
}

#top {
	width: 100%;
	height: calc(100vw / 640 * 631);
	background: url(../images/top_bg_sp.jpg) no-repeat center top;
	background-size: cover;
}

#title-logo {
	width: 94.0625%;
	top: calc(100vw / 640 * 19);
	left: 2.96875%;
}

#top-containt-sp {
	position: relative;
	width: 99.0625%;
	top: calc(100vw / 640 * 38);
	left: 0.9375%;
}

#fukuoka {
	width: 100%;
	height: calc(100vw / 640 * 824);
	background: url(../images/fukuoka_bg_sp.jpg) no-repeat center top;
	background-size: cover;
}

#fukuoka-h2-sp {
	position: relative;
	width: 92.96875%;
	top: calc(100vw / 640 * 18);
	left: 2.8125%;
}

#fukuoka-text-01 {
	width: 65.46875%;
	top: calc(100vw / 640 * 37);
	left: 3.125%;
}

#fukuoka .address {
	top: calc(100vw / 640 * 64);
	padding-left: 3.59375%;
}

#fukuoka .access {
	top: calc(100vw / 640 * 78);
	padding-left: 3.59375%;
}

#fukuoka .map {
	top: calc(100vw / 640 * 98);
	left: 6.09375%;
}

#fukuoka-myrio-sp {
	position: absolute;
	width: 44.6875%;
	top: calc(100vw / 640 * 38);
	left: 55.3125%;
}

#osaka {
	width: 100%;
	height: calc(100vw / 640 * 1065);
	background: url(../images/osaka_bg_sp.jpg) no-repeat center top;
	background-size: cover;
}

#osaka-h2-sp {
	position: relative;
	width: 92.8125%;
	top: calc(100vw / 640 * 9);
	left: 3.125%;
}

#osaka-text-01 {
	width: 68.90625%;
	top: calc(100vw / 640 * 36);
	left: 3.125%;
}

#osaka-prima-sp {
	position: absolute;
	width: 36.5625%;
	top: calc(100vw / 640 * 26);
	left: 60.46875%;
}

#osaka-text-02-sp {
	position: relative;
	width: 79.6875%;
	top: calc(100vw / 640 * 64);
	left: 3.28125%;
}

#osaka a {
	top: calc(100vw / 640 * 109);
}

#osaka a .link {
	padding-left: 3.59375%;
}

#osaka .address {
	top: calc(100vw / 640 * 136);
	padding-left: 3.75%;
}

#osaka .access {
	top: calc(100vw / 640 * 141);
	padding-left: 3.75%;
}

#osaka .map {
	top: calc(100vw / 640 * 159);
	left: 6.09375%;
}

#nagoya {
	width: 100%;
	height: calc(100vw / 640 * 825);
	background: url(../images/nagoya_bg_sp.jpg) no-repeat center top;
	background-size: cover;
}

#nagoya-h2-sp {
	position: relative;
	width: 92.8125%;
	top: calc(100vw / 640 * 12);
	left: 3.125%;
}

#nagoya-text-01 {
	width: 68.90625%;
	top: calc(100vw / 640 * 32);
	left: 3.4375%;
}

#nagoya .address {
	top: calc(100vw / 640 * 58);
	padding-left: 3.75%;
}

#nagoya .access {
	top: calc(100vw / 640 * 83);
	padding-left: 3.75%;
}

#nagoya .map {
	top: calc(100vw / 640 * 116);
	left: 6.09375%;
}

#nagoya-1000chan-sp {
	position: absolute;
	width: 35%;
	top: calc(100vw / 640 * 26);
	left: 62.5%;
}

#caution {
	width: 100%;
}

#caution-title {
	width: 21.71875%;
	top: calc(100vw / 640 * 32);
}

#caution-text {
	text-align: left;
	font-size: 2.5vw;
	font-weight: bold;
	line-height: 1.15em;
	margin: initial;
	padding: 0 4.0625% calc(100vw / 640 * 60);
	position: relative;
	top: calc(100vw / 640 * 56);
}

/* Safari & iOS Chrome */
_::-webkit-full-page-media, _:future, :root #caution-text {
	letter-spacing: -0.1em;
}

#banner {
	width: 37.5%;
	margin: 0 auto;
	top: calc(100vw / 640 * 19);
}

#copyright {
	width: 8.90625%;
	margin: calc(100vw / 640 * 38) auto calc(100vw / 640 * 50);
}







.pagetop {
	display: none;
	position: fixed;
	width: 15.3125%;
	bottom: 10px;
	left: initial;
	right: 10px;
	margin-left: 0;
	cursor: pointer;
	z-index: 100;
	opacity: 0.9;
}

}
