@charset "utf-8";

/* ==========================================================
レスポンシブについて
×w768pxまでをスマホ扱い
×w769px-1365pxまではPC用の表示だがcontentの横幅を1280pxに固定しない
○スマホ：w320-599、タブレット：w600-1080、ノート：w1081-1365、PC：w1366-
※参考　http://scene-live.com/page.php?page=97
○w1081-1365pxまではPC用の表示だがcontentの横幅を1280pxに固定しない
(contentが画面外に飛び出すのを避けるため
1280pxで指定するとスライドバーの分なのか飛び出した)
========================================================== */

/* webフォント */
/*@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);*/
@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700);
/*@import url(https://fonts.googleapis.com/css?family=Titan+One);*/
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: local('NotoSansJP-Regular.otf'),
		 url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
		 url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
		 url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'),
		 url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'),
		 url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}
/*!
 * "自家製 Rounded M+" is lisenced under the SIL Open Font License 1.1
 * by http://jikasei.me/
 */
@font-face {
	font-family: "myTitle";
	font-style: normal;
/*	font-weight: 800;*/
	src: url("./font/rounded-x-mplus-2c-web-heavy.eot?") format('eot'),
		 url("./font/rounded-x-mplus-2c-web-heavy.woff2") format('woff2'),
		 url("./font/rounded-x-mplus-2c-web-heavy.woff") format('woff');
}
/*!
 * "にくまるフォント" is lisenced under the SIL Open Font License 1.1
 * by http://www.fontna.com/
 */
/*@font-face {
	font-family: "nikumaru-web";
	src: url("./font/nikumaru-web.eot?") format('eot'),
		 url("./font/nikumaru-web.woff2") format('woff2'),
		 url("./font/nikumaru-web.woff") format('woff');
}*/
@font-face {
  font-family: 'icoadd';
  src:  url('./font/icoadd.eot?opdaco');
  src:  url('./font/icoadd.eot?opdaco#iefix') format('embedded-opentype'),
    url('./font/icoadd.ttf?opdaco') format('truetype'),
    url('./font/icoadd.woff?opdaco') format('woff'),
    url('./font/icoadd.svg?opdaco#icoadd') format('svg');
  font-weight: normal;
  font-style: normal;
}

/*ico-add*/
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icoadd' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-fw {
	display: inline-block;
	width: 1.28571429em;
}

.icon-pf-begginer:before {
  content: "\e902";
	font-size: 1.25em;
}
.icon-pf-down:before {
  content: "\e903";
}
.icon-pf-girl:before {
  content: "\e904";
}
.icon-pf-yen:before {
  content: "\e905";
}
.icon-pf-balloon:before {
  content: "\e906";
}
.icon-uniF137:before {
  content: "\f137";
}
.icon-insert_invitation:before {
  content: "\e24f";
}
.icon-clock:before {
  content: "\e901";
}
.icon-back-in-time:before {
  content: "\e900";
}


/* ===== 汎用 */
html, body, input, select, textarea {
	font-size: 20px;
	font-family: 'Montserrat', 'Noto Sans Japanese', 'メイリオ', sans-serif;
	font-weight: 400;
}
body {
	line-height: 1.5em;
	background: url(../img/top-bg.jpg) no-repeat center 177px fixed;
	color: #666;
}
@media (max-width: 800px) {
	body {
		background-image: url(../img/top-bg-sp.jpg);
		background-size: contain;
	}
}
p+p {
	margin-top: 0.5em;
}
form+p {
	margin-top: 0.5em;
}
a {
	-moz-transition: color 0.2s ease-in-out;
	-webkit-transition: color 0.2s ease-in-out;
	-ms-transition: color 0.2s ease-in-out;
	transition: color 0.2s ease-in-out;
	color: #444;
}
a:hover, a:active {
	color: #fa7093;/*f9c→f9a*/
}
a.invalid {
	pointer-events: none;
}
em {
	color: #f06;
}
h2 {
	font-size: 1.5em;
}
h3 {
	font-size: 1.25em;
}
img {
	max-width: 100%;
}
strong {
	color: #f06;
	font-weight: bold;
}

/* ===== color */
.style-dark {
	color: #444;
}
.style-dark .item-title .title-style {
	border-color: #444;
	color: #444;
}
.style-light {
	color: #fff;
}
.style-light a {
	color: #fff;
}

/* カラー */
.col-09f {
	color: #09f;
}
.col-f06 {
	color: #f06;
}
.col-pink {
	color: #fa7093;
}

/* ===== common */
.content {
	width: 100%;
	box-sizing: border-box;
}

.card {
	padding: 0.75em;
	background: rgba(245,245,245,.8) url(../img/common/card-bg.png);
	border-radius: 0.5em;
}
@media (max-width: 599px) {
	.card {
		padding: 0.75em 0.5em;
	}
}

.item-title {
	margin: 0 auto 1px;
	padding: 5px 0;
	background: rgba(255,255,255,.9);
	border-radius: 0.25em 0.25em 0 0;
}
.item-title .title-style {
	display: block;
	line-height: 1em;
	margin: 0;
	padding: 3px;
	font-family: 'myTitle', 'Noto Sans Japanese', sans-serif;
	font-weight: bold;
	border-bottom: 1px solid #fa7093;/*f9c→f9a*/
	text-align: center;
	color: #fa7093;/*f9c→f9a*/
}
.item-content {
	padding: 0.5em;
	background: rgba(255,255,255,.9);
	border-radius: 0 0 0.375rem 0.375rem;
}
.content-title {
	margin: 0 auto 1em;
	padding: 5px 0.5em;
	background: rgba(255,255,255,.75) url(../img/common/content-title-bg.png);
	border-radius: 0.25em;
}
.style-light .content-title {
	background: rgba(255,255,255,.5);
}
.content-title .title-style {
	display: block;
	line-height: 1em;
	margin: 0;
	padding: 3px;
	font-family: 'myTitle', 'Noto Sans Japanese', sans-serif;
	font-weight: bold;
	border-left: 3px solid #444;
	border-right: 3px solid #444;
	text-align: center;
	color: #444;
}

.image-fit {
	display: block;
	width: 100%;
	line-height: 100%;
	font-size: 0;
}
.image-fit img {
	width: 100%;
}

.button {
	-moz-transition: background-color 0.2s ease-in-out;
	-webkit-transition: background-color 0.2s ease-in-out;
	-ms-transition: background-color 0.2s ease-in-out;
	transition: background-color 0.2s ease-in-out;
	display: inline-block;
	margin-top: 0.5em;
	background-color: transparent;
	border-radius: 4px;
	letter-spacing: 0.1em;
}
.button a {
	display: inline-block;
	padding: 0.5em 1.5em;
}
.style-dark .button {
	box-shadow: inset 0 0 0 1px rgba(144,144,144,0.5);
}
.style-dark .button:hover {
	background-color: rgba(144,144,144,0.25);
}
.style-light .button {
	box-shadow: inset 0 0 0 1px rgba(255,255,255,0.5);
}
.style-light .button:hover {
	background-color: rgba(255,255,255,0.25);
}.button a:hover {
	color: inherit;
}

.cf:after {
	content:"";
	display:block;
	clear:both;
}

.al-center {
	text-align: center;
}
.dis-block {
	display: block;
}
.dis-none {
	display: none;
}
.vis-hidden {
	visibility: hidden;
}

.fa {
	line-height: 1em;
}

.word-ib {
	display: inline-block;
	word-wrap: normal;
	word-break: keep-all;
	white-space: nowrap;
}
.pun:not(:last-child):after {
	content: "・";
}
.acordion .acordion-title {
	position: relative;
}
.acordion .acordion-arrow {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 1.05em;
	height: 1em;
	margin-top: -0.5em;
/*	border-radius: 0.6em;*/
/*	background: #f8a;*/
	text-align: center;
/*	font-family: 'FontAwesome';*/
	font-size: 1.2em;
	color: #f8a;
/*	text-shadow: 0 1px 0 #f36, 1px 0 0 #f36, 0 -1px 0 #f36, -1px 0 0 #f36, -1px -1px 0 #f36, 1px -1px 0 #f36, -1px 1px 0 #f36, 1px 1px 0 #f36;*/
}
/*.acordion-arrow:after {
	padding: 0.075em 0.075em 0.125em 0.125em;
	content: "\f0d7";
	z-index: 1;
}*/
.acordion .det {
	display: none;
}
.acordion .dis-block {
	display: block;
}
.acordion .reverse {
	transform: rotate3d(1,0,0,180deg);
}

@media (max-width: 768px) {
	.pc {
		display: none !important;
	}
}
@media (min-width: 769px) {
	.sp {
		display: none !important;
	}
}

/* ===== サイズ */
.both-pad {
	padding: 2em 1em;
}
@media (max-width: 1365px) {
	.small-pad {
		padding: 2em;
	}
}
@media (min-width: 1366px) {
	.content {
		width: 1280px;
		margin-right: auto;
		margin-left: auto;
	}
	.small-pad {
		padding: 4em 0;
	}
}
@media (max-width: 1080px) {
	.small-pad {
		padding: 2em 0.8em;
	}
}
@media (max-width: 599px) {
	html, body, input, select, textarea {
		font-size: 16px;
	}
	.both-pad {
		padding: 2em 0.5em;
	}
}
@media (max-width: 340px) {
	html, body, input, select, textarea {
		font-size: 14px;
	}
}

/* ===== BOX */
/* 2分割 */
.two-wrap {
	margin-left: -2em;
}
.two-wrap:after {
	content:"";
	display:block;
	clear:both;
}
.two {
	float: left;
	width: 50%;
	box-sizing: border-box;
	padding-left: 2em;
}
@media (max-width: 599px) {
	.two {
		width: 100%;
	}
}
/* 3分割 */
.three-wrap {
	margin-left: -0.5em;
}
.three-wrap:after {
	content:"";
	display:block;
	clear:both;
}
.three {
	float: left;
	width: 33.333%;
	box-sizing: border-box;
	padding-left: 0.5em;
}
/*@media (max-width: 800px) {
	.three {
		width: 100%;
	}
}*/
/* 4分割 */
.is-other .four-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-direction: horizontal;
	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: justify;
	justify-content: flex-start;
	-webkit-box-align: strech;
	-ms-flex-align: strech;
	-webkit-align-items: strech;
	align-items: stretch;
	margin-left: -0.5em;
}
.four-wrap:after {
	content:"";
	display:block;
	clear:both;
}
.four {
/*	float: left;*/
	width: 25%;
	box-sizing: border-box;
	padding-left: 0.5em;
}
@media (max-width: 800px) {
	.four {
		width: 33%;
	}
}
.is-android .four {
	float: left;
}
.is-android .four:nth-child(3n+1) {
	clear: both;
}
/* 5分割 */
.five-wrap {
	margin-left: -1%;
}
.five-wrap:after {
	content:"";
	display:block;
	clear:both;
}
.five {
	float: left;
	width: 19%;
	margin-left: 1%;
	box-sizing: border-box;
}
@media (max-width: 1080px) {
/*	.five-wrap {
		margin-right: -2%;
	}*/
	.five {
		width: 24%;
	}
}
@media (max-width: 600px) {
	.five {
		width: 32%;
	}
}
/* サイドバナーあり */
.split2-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.split2-main {
	float: left;
	width: 75%;
	min-height: 100%;
	background: rgba(250,112,147,.75) url(../img/common/main-bg.png);
	box-sizing: border-box;
}
.split2-side {
	float: left;
	width: 25%;
	min-height: 100%;
	box-sizing: border-box;
}
@media (max-width: 1365px) {
	.split2-main, .split2-side {
		float: none;
		width: 100%;
	}
	.split2-side:after {
		content:"";
		display:block;
		clear:both;
	}
	.split2-side-wrap {
		margin-left: -0.5em;
	}
	.split2-side-item {
		float: left;
		width: 50%;
		box-sizing: border-box;
		padding-left: 0.5em;
	}
}
@media (min-width: 801px) and (max-width: 1365px) {
	.split2-side-wrap .split2-side-item:first-child {
		margin-top: 2.4em;
		padding-top: 8px;
	}
}
@media (max-width: 800px) {
	.split2-main {
		background: rgba(250,112,147,.75) url(../img/common/sp-main-bg.png);
	}
	.split2-main, .split2-side {
		width: 100%;
	}
	.split2-side {
		padding: 2em 1em;
	}
	.split2-side-wrap {
		margin-left: 0;
	}
	.split2-side-item {
		float: none;
		width: 100%;
	}
}
/*サイドバナー内の2分割*/
.split2-main .two-wrap {
	margin-left: -1em;
}
.split2-main .two {
	padding-left: 1em;
}
