/* 基本構造、メインメニュー、コンテンツ枠、フッター、リンク色 */
/* 基本・骨組み */

body {
	margin: 0;
	padding: 0;
	---text-align:center;
	color:#333333;
	font-size: 16px;
	line-height: 1.8em;
	/*font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;*/
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Verdana", sans-serif;
	font-weight: 500;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
ol {
	margin-top: 0;
	margin-bottom: 0;
}
h1,h2,h3,h4,p {
	margin: 0;
	padding: 0;
	font-size:100%;
}
img {
	border: none;
}

.fclear { clear: both; }
.fleft  { float: left; }
.fright { float: right; }

.tleft   { text-align: left; }
.tright  { text-align: right; }
.tcenter { text-align: center; }

.dgray  { color: #333333; }
.white  { color: #ffffff; }
.red    { color: #e13333; }
.green  { color: #1c9652; }
.orange { color: #e14833; }
.blue   { color: #0084be; }
.pink   { color: #de7791; }
.purple { color: #b646df; }
.aqua   { color: #41c1e8; }
.yellow { color: #fda005; }

.marlight10 {
	margin-right: 10px;
}
.marlight20 {
	margin-right: 20px;
}
.marlight30 {
	margin-right: 30px;
}
.marlight40 {
	margin-right: 40px;
}
.marlight60 {
	margin-right: 60px;
}

/* トップページ背景 */
.top-bg {
	background-color:#ffffff;
	background-image: url("../images/bg_gplaypattern.png");
}
/* 情報ページ背景 */
.sub-bg {
	background-color:#ffffff;
}

/* ヘッダー */
#header {
	height: 135px;
	text-align:center;
}
.header-title {
	margin: auto;
}

/* トップ・イメージ */
#top-img {
	position: relative;
}
.top-img-main-area {

}
.top-img-copy-area {
	height: 200px;
	margin: auto;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
.top-img-copy-text {
	font-size: 150%;
	line-height: 1.8em;
	font-weight: bold;
	text-align:center;
}
.top-img-btn-area {
	height: 90px;
	margin: auto;
	text-align:center;
}
.top-img-btn {
	margin: 0 auto 0 auto;
}
.top-img-win-area {
	width: 880px;
	margin: auto;
}
.top-img-win-area-bot {
	width: 870px;
	min-height: 180px;
	text-align: left;
	/*background-image: url("../images/pic_top_window_bottom.png");* /* 全体の背景画像 */
	background-color: #ffffff;
	border-radius: 10px;
	padding-top: 30px;
	margin: 5px;
	box-shadow: 0 5px 7px 0 rgba(0, 0, 0, .1);
	background-position: center bottom;
	background-repeat: no-repeat;
	---background-color:#eeeeee;
}
.top-img-win-area-bot-long {
	width: 860px;
	min-height: 180px;
	text-align: left;
	/*background-image: url("../images/pic_top_window_bottom_long.png"); *//* 全体の背景画像 */
	background-color: #ffffff;
	border-radius: 10px;
	padding-top: 30px;
	margin: 5px;
	box-shadow: 0 5px 7px 0 rgba(0, 0, 0, .1);
	background-position: center bottom;
	background-repeat: no-repeat;
	---background-color:#eeeeee;
}
.top-img-win-text {
	margin: 0px 50px 30px 50px;
}
.top-img-win-text h3 {
	font-size: 140%;
	font-weight: bold;
	padding: 0 0 16px 36px;
}
.top-img-win-text .text {
	font-size: 110%;
}
/*
.top-img-win-text-sub {
	margin: 0px 50px 30px 50px;
	padding-bottom: 40px;
}
.top-img-win-text-sub h3 {
	font-size: 120%;
	font-weight: bold;
	padding: 0 0 16px 0;
}
.top-img-win-text-sub .text {
	font-size: 110%;
}
*/
/* トップ・アクセス */
#contents-mid {
	position: relative;
}
.top-access-h3 {
	text-align:center;
	margin: 48px auto 42px auto;
}
.top-access-h3 h3 {
	font-size: 220%;
	font-weight: bold;
}
.top-access-h3-sub {
	margin: 14px 0 0 0;
	font-weight: bold;
}
.top-access {
	width: 900px;
	margin: auto;
}
.top-access-block {  /* アクセスブロック */
	width: 280px;
	height: 320px;
	text-align:center;
	margin-bottom: 40px;
	background-color:#ffffff;
	/* border: 3px solid #66bdd7; */
	box-sizing: border-box;
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	float: left;
}
.top-access-block .head {
	margin: auto;
	text-indent: -9999px;
}
.top-access-block-text {
	font-size: 90%;
	height: 45px;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
.top-access-block-btn {
	margin: 48px auto 0 auto;
}
.top-access-block-wide {  /* アクセスブロックワイド */
	width: 900px;
	/*height: 320px;*/
	text-align:center;
	margin-bottom: 40px;
	background-color:#ffffff;
	box-sizing: border-box;
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	float: left;
	padding: 20px;
}
.top-access-block-wide h3 {
	margin: auto;
	font-size: 120%;
	font-weight: bold;
	padding: 0 0 16px 0;
}
.top-access-block-wide .text {
	font-size: 110%;
}
/* トップ・フロー */
#top-flow {

}
.top-flow-area {
	width: 900px;
	margin: auto;
	padding: 50px 0;
}
.top-flow-left {
	width: 220px;
	float: left;
	text-align: center;
}
.top-flow-right {
	width: 640px;
	float: left;
}
.top-flow-right h3 {
	font-size: 140%;
}
.top-flow-h3 {
	font-size: 220%;
	color: #ffffff;
	font-weight: bold;
	margin: 10px 0 0 0;
}
.top-flow-h3-sub {
	margin: 14px 0 40px 0;
	font-weight: bold;
}
.top-flow-win1 {
	height: 110px;
	background-color:#ffffff;
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
.top-flow-win2 {
	height: 80px;
	background-color:#ffffff;
	border-radius: 10px;
  	-webkit-border-radius: 10px;
  	-moz-border-radius: 10px;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
.top-flow-text {
	width: 540px;
	font-size: 90%;
	line-height: 1.6em;
	text-align: left;
}

/* トップ・フッター */
#footer {
	background-color:#eeeeee;
}
.footer-btn-area {
	padding: 30px 0;
	position: relative;
	overflow: hidden;
}
.footer-btn-area ul {
	position: relative;
	left: 50%;
	float: left;
}
.footer-btn-area ul li {
	position: relative;
	left: -50%;
	float: left;
	list-style: none;
}
.footer-btn {

}
.copyright-text {
	font-size: 70%;
	line-height: 1.6em;
	text-align: center;
	padding: 14px;
}

/* ボタンサイズ */
.btn-top01 {
	font-size: 110%;
	width: 240px;
	text-align: center;
}
.btn-top01 a {
	padding: 10px 10px 10px 0px;
}
.btn-top02 {
	font-size: 100%;
	width: 200px;
	text-align: center;
}
.btn-top02 a {
	padding: 10px 10px 10px 0px;
}
.btn-top03 { /* フッターボタン・トップ用 */
	font-size: 90%;
	width: 200px;
	text-align: center;
}
.btn-top03 a {
	padding: 5px 5px 5px 0px;
}
.btn-page01 { /* 規約関連 */
	font-size: 100%;
	width: 200px;
	text-align: center;
	font-weight: bold;
	float: left;
}
.btn-page01 a {
	padding: 7px 7px 7px 0px;
}
.btn-page02 { /* 規約関連 */
	font-size: 100%;
	width: 200px;
	text-align: center;
	font-weight: bold;
	float: left;
}
.btn-page02 a {
	padding: 7px 0px 7px 7px;
}
.bg-caution-mail { /* お問い合わせ関連 */
background-image: url(/media/web/images/pic_sp_caution_icon.png);
    background-repeat: no-repeat;
    background-position: left;
	background-position-x: 18px;
    background-size: 20px;
    padding-left: 40px;
	display: inline-block;
}
.btn-foot01 { /* フッターボタン小 */
	font-size: 80%;
	width: 180px;
	text-align: center;
}
.btn-foot01 a {
	padding: 4px 4px 4px 0px;
}

/* サブヘッダー */
#sub-header {
	height: 110px;
	text-align: center;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
#sub-header h1 {
	font-size: 160%;
	font-weight: bold;
}

/* サブコンテンツ */
.sub-contents {
	width: 900px;
	margin: 40px auto 60px auto;
	overflow: hidden;
}
.sub-contents96 {
	width: 960px;
	margin: 40px auto 60px auto;
	overflow: hidden;
}

/* 規約 */
.page-kiyaku {
	background-color:#eeeeee;
	margin-bottom: 40px;
	font-size: 90%;
	overflow: scroll;
	height: 500px;
	padding: 20px;
}
.page-kiyaku h3 {
	font-size: 120%;
	font-weight: bold;
}
.page-kiyaku-btn-area {
	width: 460px;
	margin: 40px auto 0px auto;
}

/* フォーム */
.form-left {
	width: 620px;
	margin-right: 40px;
	float: left;
}
.form-right {
	width: 300px;
	float: left;
}
.form-right ul {
	list-style: none;
}
.form-box {
	padding: 15px 20px;
	border-top: 1px solid #cccccc;
}
.form-h3-01 {
	padding: 2px 4px 8px 0px;
	clear: both;
}
.form-h3-01 h3 {
	font-size: 100%;
	font-weight: bold;
	display: inline;
	margin-right: 30px;

}
.form-h3-01 .hissu {
	border: 1px solid #ff0000;
	color: #ff0000;
	font-size: 70%;
	display: inline;
	margin-right: 20px;
	padding: 2px 6px;
	border-radius: 5px;
}
.form-cap {
	padding: 0px 4px 8px 4px;
	font-size: 90%;
	color: #555555;
}

/* フォームデザイン */
.form-design1 {
	font: 15px/24px sans-serif;
	box-sizing: border-box;
	width: 100%;
	padding: 0.5em 0.8em;
	transition: 0.3s;
	letter-spacing: 1px;
	color: #333333;
	border: 2px solid #cccccc;
	background: #e3f8ff;
	border-radius: 4px;
}
.form-design1:focus {
	border: 2px solid #aaaaaa;
	background: #ffffff;
	outline: none;
}
.form-size10 {
	width: 100px;
}
.form-size20 {
	width: 200px;
}
.form-size30 {
	width: 300px;
}
.form-size40 {
	width: 400px;
}
/* Chrome *//* placeholder属性 */
::-webkit-input-placeholder {
  color: #89abb6;
}
/* Firefox */
::-moz-placeholder {
  color: #888888;
}
/* IE */
:-ms-input-placeholder {
  color: #888888;
}

/* セレクトボックス */
.form-input select {
	border: 2px solid #cccccc;/* ボックスの境界線を実線で指定する */
	background: #e3f8ff;
	min-width: 150px;	/* ボックスの高さを指定する */
	padding: 12px 10px;	/* ボックス内側の余白を指定する */
	color: #555555;	/* フォントの色を指定 */
	font-weight: bold;
	border-radius: 4px;
  	-webkit-border-radius: 4px;
  	-moz-border-radius: 4px;
}
.form-input select:focus {
	border: 2px solid #aaaaaa;
	background: #ffffff;
	outline: none;
}
.form-text01 {
	font-size: 100%;
	font-weight: bold;
	margin-right: 10px;
}

/* フォームボタン */
.form-btn-area {
	width: 460px;
	margin: 10px auto;
}
.form-btn {
	float: left;
}

 /* フォーム・メニュー */
.form-guide-head {
	text-align: center;
	font-weight: bold;
	padding: 8px;
}
.accordion1 {

}
.accordion1 .inner {
	display: none;
}
.accordion1 p {
	cursor: pointer;
	padding: 8px;
}
.accordion1 p.ac1 { /* アコーティオン・ボタン　※color.css */ }
.accordion1 .inner li {
	padding: 8px 12px;
}
.accordion1 .inner li.content1 { /* アコーティオン・情報欄　※color.css */ }

.form-hide {
	display: none;
}

.form-msg {
	margin-bottom: 20px;
	padding: 20px;
	border-radius: 6px;
	background-color: #f5f5f5;
}
#f1-multi, #f2-multi, #f3-multi, #f4-multi {
	display: inline-block;
}

/* 規約 */
.kiyaku-caption {
	font-size: 18px;
    line-height: 1.6em;
    margin-top: 25px;
    /* color: #004d83;*/
}

/* よくある質問 */
.question {
    background-color: #66bdd7;
    color: #ffffff;
    padding: 8px 0px 8px 8px;
    font-size: 90%;
    font-weight: bold;
    line-height: 1.6em;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
}
.answer strong {
    color: #66bdd7;
   /*color: #0f84bf;*/
}
.answer {
    font-size: 90%;
    line-height: 1.6em;
    padding: 5px 10px 25px 10px;
}
/*
.qa-line {
    height: 14px;
    margin-bottom: 14px;
    border-bottom: 1px dashed #777777;
}
*/

/* お問い合わせ */
.text-block {
	width: 80%;
	background-color:#ffffff;
	box-sizing: border-box;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	margin: auto;
	padding: 15px 30px;
}

/* 規約 */
.kiyaku-frame {
	background-color:#f5f5f5;
	text-align:left;
}
.kiyaku-area {
	padding:30px;
}
.kiyaku {
	font-size:16px;
	line-height:1.6em;
}