@charset "utf-8";
/* CSS Document 
ベース ------------#fff
クロスメディアピクチャーズカラー --#1b1464（濃ブルー）
*/

* {
	font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-style: normal;
	margin: 0px;
	padding: 0px;
}

html {
	width: 100%;
	height: 100%;
}

body {
	position: relative;
	width: 100%;
	height: 100%;
	color: #333333;/* 基本の文字色 */
	line-height: 1.6;
	background :url(../img/body_bg01.jpg)no-repeat center center;
	background-size:cover;
	background-attachment: fixed;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

/* テンプレート(ここから)
---------------------------------------------------------*/

/* 下層ページh1 */

.ul_head01 {
	color :#fff;
	text-align :center;
	padding :1em;
	background :url(../img/ul_head01.jpg)no-repeat center center;
	background-size:cover;
	background-attachment: fixed;

}

/* 下層ページh1 */

/* 見出し2 */
.h2_01 {
	color : #aaa;
	margin : 10px 0;
}

/* 見出し2(ボーダー) */
.h2_02 {
	position: relative;
	text-align: right;
	color :#aaa;
	margin : 1.5em;
}

@media screen and (max-width: 500px) {
.h2_02 {
	font-size :80%;
}
}

.h2_02 span {
	position: relative;
	z-index: 2;
	display: inline-block;
	margin: 0 2.5em;
	padding: 0 1em;
	background-color: #fff;
	text-align: left;
}

.h2_02:before {
	position: absolute;
	top: 50%;
	z-index: 1;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #ccc;
}

.h2_03 {
	font-weight :normal;
	padding : 0.25em 0.5em;
	color : #1b1464;
	border-bottom: 1px solid #1b1464;
}


.h3_01 {
	padding: .5em .75em;
	background-color: #f6f6f6;
	border-bottom: 1px solid #ccc;
}

.h3_02 {
	font-family: "ヒラギノ明朝 Pro W2","ヒラギノ明朝 Pro W2","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif !important;
	font-weight :normal;
	color : #666;
	margin :1em;
	padding: 1em;
	text-align :center;
	background-color: #fff;
	border : 1px dotted #af9a72;
	border-radius : 5px;
}

.h3_03{
	font-family: "ヒラギノ明朝 Pro W2","ヒラギノ明朝 Pro W2","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif !important;
	font-weight :normal;
	font-size: 1.2em;
	margin :0.7em;
}

.h4_01{
	font-family: "ヒラギノ明朝 Pro W2","ヒラギノ明朝 Pro W2","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif !important;
	font-weight :normal;
	margin :0.5em;
	border-bottom : 1px dotted #af9a72;
	text-align :left;
}

/* ハッシュリンク先のGナビ分ズラす指定（このクラスで内包する） */
.hashlink {
	margin-top: -60px; /* Gナビの高さ分のネガティブマージン */
	padding-top: 60px; /* 打ち消し用のパディング */
}

/* And More */
.andmore {
	position :relative;
	text-align :right;
	font-weight :bold;
	z-index :100;
}

.andmore a,.andmore a:visited {
	color :#666;
}

.andmore a:hover,.andmore a:active {
	color :#ffbf00;
}

.text_list01 dt{
	background :#f0f8ff;
}

ol {
	margin :1em 2em;
}

.ol_01 li{
	list-style-type : decimal;
}

.ol_02 li{
	list-style-type : lower-roman;
}

.ol_03 li{
	list-style-type : lower-alpha;
}

.ol_04 li{
	list-style-type : upper-alpha;
}


#nameplate {
	position: -webkit-sticky; /* Safari */
	position: sticky;
	top: 0;
	display :table;
	width :100%;
	max-width :1000px;
	background-color: rgba(255,255,255,0.6);  
	margin :0 auto;
	z-index :50;
	table-layout: fixed;
}

#nameplate h1 {
	background :#1b1464;
	padding :5% 10%;
	font-size :100%;
	width :100%;
}

#nameplate h1 img {
	vertical-align:bottom;
}

@media screen and (max-width: 850px) {
#nameplate h1 {
	position :relative;
	height :50px;
	padding :0;
}

#nameplate h1 a {
position: absolute;
	top: 10px;
	right: 10px;
}

#nameplate h1 img {
	width : 250px;
}
}

header {
	width: 65%;
	height :100%;
	display :table-cell;
}

header ul {
	width :100%;
	font-size :85%;
	text-align:center
}

header ul li{
	display :inline-block;
	list-stile :none;
}

header ul li:hover {
	background: #f5f6ce;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

header ul li a {
	display: block;
	width: 100%;
	padding: 1em 1em 1em 1em;
}

header ul li a:link ,header ul li a:visited {
	color :#666;
}

header ul li a:hover {
	color :#1b1464;
	padding: 1em 1em 0.7em 1em;
	border-bottom: 0.3em #1b1464 solid;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}


@media screen and (max-width: 850px) {
header {
	display :none;
}
}

/* 最上部メニュー(ここまで)
---------------------------------------------------------*/

/* ▽▽ハンバーガーメニュー▽▽
------------------------------------------------------- */
.hm_wrap ,.hm_menu_check {/* チェックボックスを隠す */
  display: none;
}

@media screen and (max-width: 850px) {
.hm_wrap {
	display: inline-block;
	position :fixed;
	top :0;
	left :0;
	width :100%;
	padding :10px;
	z-index :9000;
}

.hm_title {/* ハンバーガーメニューオープン時の見出し */
	position: relative;
	color: #999;
	display: inline-block;
	float: left;
	font-weight: 100;
	line-height: 30px;
	margin: 0 0 0 15px;
	opacity: 0;
	-webkit-transform: translate3d(0, -15px, 0);
	transform: translate3d(0, -15px, 0);
	-webkit-transition: -webkit-transform 0.6s, opacity 0.5s;
	transition: transform 0.6s, opacity 0.5s;
	z-index: 9002;
}

/* ▽▽メニューボタン▽▽ */
.hm_btn {
	position: relative;
	width: 30px;
	height: 30px;
	cursor: pointer;
	display: block;
	float: left;
	z-index: 9002;
}
.hm_btn::before {
	-webkit-box-shadow: #fff 0 12px 0;
	box-shadow: #fff 0 12px 0;
}
.hm_btn::after {
	bottom: 0;
}
.hm_btn::before,
.hm_btn::after {
	width: 30px;
	height: 6px;
	background: #fff;
	display: block;
	content: '';
	position: absolute;
	-webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
	transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
}
/* △△メニューボタン△△ */

.hm_menu_wrap {
	width :100%;
	height :10000px;
	background: #1b1464;
	position: absolute;
	left: -100%;
	top: 0;
	-webkit-transition: left 0.4s;
	transition: left 0.4s;
	z-index :9000;
}

/* ▽▽開閉時のアニメーション▽▽ */
.hm_menu_check:checked ~ .hm_title {
	opacity: 1;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}
.hm_menu_check:checked ~ .hm_btn::before {
	-webkit-box-shadow: transparent 0 0 0;
	box-shadow: transparent 0 0 0;
	-webkit-transform: rotate(45deg) translate3d(6px, 11px, 0);
	transform: rotate(45deg) translate3d(6px, 11px, 0);
}
.hm_menu_check:checked ~ .hm_btn::after {
	-webkit-transform: rotate(-45deg) translate3d(6px, -11px, 0);
	transform: rotate(-45deg) translate3d(6px, -11px, 0);
}
.hm_menu_check:checked ~ .hm_menu_wrap {
	left: 0;
}

/* △△開閉時のアニメーション△△ */

/* ▽▽メニュー内のリストスタイル▽▽ */
.hm_list {
	list-style-type: none;
	margin: 50px 0 0;
	padding: 0;
}
.hm_list li a {
	color: #fff;
	display: block;
	overflow: hidden;
	padding: 8px 22px;
	position: relative;
	text-decoration: none;
	z-index: 9001;
}

.hm_list li a:hover {
	color :#666;
}

.hm_list li a:before {/* aタグマウスオーバー時の背景 */
	background: #eee;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 100%;
	left: 0;
	-webkit-transition: bottom 0.4s;
	transition: bottom 0.4s;
	z-index: -1;
}

.hm_list li a:hover:before {
	bottom: 0;
}
.hm_list li a:hover:after {
	opacity: 0.5;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
}
/* メニュー内のリストスタイル△△ */

/* △△ハンバーガーメニュー△△
------------------------------------------------------- */

/* トップページ理念(ここから)
---------------------------------------------------------*/

.idea_wrap {
	background :url(../img/idea_bg01.jpg)no-repeat center center;
	background-size:cover;
	background-attachment: fixed;
}

.idea_wrap article {
	padding :2em;
	border :1px solid #fff ;
	text-align :left ;
}

.idea_wrap .idea_left ,.idea_wrap .idea_right {
	display :table-cell;
	text-align :center;
	vertical-align:top;
	width : 50% ; 
}

@media screen and (max-width: 790px) {
.idea_wrap .idea_left ,.idea_wrap .idea_right {
	display :block;
	width :100%;
}
}

.idea_wrap .idea_left {
	border-right :#fff solid 1px;
}

.idea01 {
	background :#1b1464;
	padding :20px 2em;
}

.idea02 ,.idea03 {
	background :#1b1464;
	padding :15px 2em;
}

.idea01:hover ,.idea02:hover ,.idea03:hover {
	background :#000;
	opacity :0.6;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.idea01 article {
	height :340px;
}

.idea02 article ,.idea03 article {
	height :160px;
	text-align :center;
}

.idea01 article p {
	margin : 1em 0 0 0;
}

@media screen and (max-width: 790px) {
.idea01 article ,.idea02 article ,.idea03 article {
	height :auto;
	text-align :center;
}
.idea01 article p {
	display :none;
}
}

.idea01 article h2 {
	font-size :50px;
}
.idea02 article h2 {
	font-size :35px;
}
.idea03 article h2 {
	font-size :30px;
}

.idea01 article h3 {
	font-size :30px;
}
.idea02 article h3 {
	font-size :20px;
}
.idea03 article h3 {
	font-size :20px;
}

.idea01 a:link ,.idea01 a:hover ,.idea01 a:visited ,.idea01 a:active ,
.idea02 a:link ,.idea02 a:hover ,.idea02 a:visited ,.idea02 a:active ,
.idea03 a:link ,.idea03 a:hover ,.idea03 a:visited ,.idea03 a:active {
	color :#fff;
}

@media screen and (max-width: 1000px) {
.idea01 article h2 {
	font-size :4vw;
}
.idea02 article h2 {
	font-size :4vw;
}
.idea03 article h2 {
	font-size :3vw;
}
.idea01 article h3 ,.idea02 article h3 ,.idea03 article h3 {
	font-size :3vw;
}
}

.deg_divide_wrap {
	overflow :hidden;
	border-collapse: collapse;
	border-spacing: 0;
}

.deg_divide01 ,.deg_divide02 {
	display :table-cell;
	vertical-align:top;
}

.deg_divide01 {
	width :60%;
}

.deg_wrap01 {
	position :relative;
	background :url(../img/lp_img01.jpg)no-repeat center center;
	background-size:cover;
	min-height :300px;
	z-index :1;
}

.deg_wrap01:after {
	position: absolute;
	top: 0;
	left: 90%;
	content: "";
	width: 100%;
	min-height: 300px;
	background: #fff;
	z-index: 5;
	transform: skewX(-15deg);
}

.deg_wrap01 img {
	max-width :70%;
	height :auto;
	position: absolute;
	top: 50%;
	left: 45%;
	-webkit-transform: translate(-45%, -50%); /* Safari用 */
	transform: translate(-45%, -50%);
}

.deg_wrap02 {
	position :relative;
	padding :2em;
	font-size :120%;	
	z-index :10;
}

.deg_wrap02 p {
	margin :0 0 1em 0;
}

@media screen and (max-width: 725px) {
.deg_divide01 ,.deg_divide02 {
	display :block;
}
.deg_divide01 {
	width :100%;
}
.deg_wrap01:after {
	display :none;
}
}
/* トップページ理念(ここまで)
---------------------------------------------------------*/


/* 大コピー(ここから)
---------------------------------------------------------*/
.attn {
	position :relative;
	color :#fff;
	padding : 1em;
	text-shadow: 0px 0px 2px #000;
}

.attn article {
	padding :3em;
}

@media screen and (max-width: 760px) {
.attn article {
	padding :0;
}
}

.attention01 {
	background :url(../img/attn_bg01.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.attention02 {
	color :#fff;
	background : #2e3192;
}

.attention03 {
	background :url(../img/attn_bg03.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.attention04 {
	background :url(../img/attn_bg04.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.attention05 {
	background :url(../img/attn_bg05.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.attention06 {
	background :url(../img/attn_bg06.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.attention07 {
	background :url(../img/attn_bg07.jpg) no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

@media screen and (min-width: 768px) {
.attention01,.attention03,.attention04,.attention05,.attention06,.attention07 {
    background-attachment: fixed;
  }
}

/* 大コピー(ここまで)
---------------------------------------------------------*/

/* ボタンデザイン
---------------------------------------------------------*/

.button {
	display: inline-block;
	width: 200px;
	margin : 0.5em 0;
	padding :0.5em 1em;
	text-align: center;
	text-decoration: none;
}
.button:before,
.button:after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button:before,
.button:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button01 {
	border: 1px solid #666;
	border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
	-webkit-border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
	-moz-border-radius: 10px 10px 10px 10px / 10px 10px 10px 10px;
	background-color: #fff;
	color: #666;
}

.button01:link,.button01:visited {
	background-color: #fff;
	color: #666;
}

.button01:hover {
	background-color: #1b1464;
	border-color: #666;
	color: #fff;
}

.button02 {
	border: 2px solid #ffbf00;
}

.button02:link,.button02:visited {
	color: #ffbf00;
}

.button02:hover {
	background-color: #53a639;
	border-color: #53a639;
	color: #fff;
}

.button03 {
	padding:10px 0;
	text-shadow: #72b2ca 1px 1px 1px;
	outline: 1px dashed #ccc;
	outline-offset: -6px;
	background: #53a639;
	border-radius:4px;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
}

.button03:link,.button03:visited {
	color: #fff;
}

.button03:hover {
	background-color: #ffbf00;
	border-color: #fff;
	color: #53a639;
}

.button04 {
	padding:10px 0;
	text-shadow: #72b2ca 1px 1px 1px;
	outline: 1px dashed #ccc;
	outline-offset: -6px;
	background: #53a639;
	border-radius:4px;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
}

.button04:link,.button04:visited {
	color: #fff;
}

.button04:hover {
	background-color: #fff;
	border-color: #ffe189;
	color: #f00;
}

/* フォームデザイン（ここから）
---------------------------------------------------------*/

.form_list dt{
	background :#f0f8ff;
}

.input_s,.input_m,.input_l {
	border: #1b1464 solid 2px;
	border-radius: 5px; 
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

input:focus,textarea:focus {
	outline: none;
	border: #ffbf00 solid 2px;
}
/* フォームデザイン（ここまで）
---------------------------------------------------------*/

/* スライドショーの下の矢印（ここから）
---------------------------------------------------------*/

.top_gallery {
	position :relative;
}

.top_slogan {
	position :absolute;
	top :0;
	left :0;
	width :100%;
	z-index :5;
}

.top_arrow {
	width :100%;
	text-align :center;
	position :absolute;
	bottom :-10%;
	z-index :1000;
}

.top_arrow img {
	width :6%;
}

/* スライドショーの下の矢印（ここまで）
---------------------------------------------------------*/


/* wrapper(ここから)
---------------------------------------------------------*/

.wrapper {
	position :relative;
	max-width: 1000px;
	background: #fff;
	margin : 0px auto;
}


/* wrapper(ここまで)
---------------------------------------------------------*/

/* 記事本文スタイル(ここから)
---------------------------------------------------------*/

.lp_content p {
	margin :1em;
}

.lp_content figure {
	margin : 1em;
	padding: 0.5em;
	text-align :center;
	background-color: #fff;
	border-radius : 5px;
	box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2);
}

/* 記事内メモ・ポイント等ここから
------------------------------------------------- */

.summary {
	margin: 0px auto 10px auto;
	padding: 0.5em 1em 0.5em 1em;
	font-size :90%;
	position:relative;  
	background: #fff;
	border: #af9a72 solid 1px;
	border-radius: 10px; 
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.box {
	margin :0.5em 0 0.5em 0;
	padding: 0.5em 1em 0.5em 1em;
	position:relative;
	border: #c0c0c0 solid 1px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	box-shadow:			1px 1px 2px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow:	1px 1px 2px rgba(0, 0, 0, 0.2);
	-moz-box-shadow:	1px 1px 2px rgba(0, 0, 0, 0.2);
}

.box-dotted {
	margin :0.5em 0 0.5em 0;
	padding: 0.5em 1em 0.5em 1em;
	position:relative;
	border: #888 dotted 1px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.memo {
	clear: both;
	max-width :100%;
	margin :2em 2em 1em 2em;
	padding: 1em 1em 0.5em 1em;
	position:relative;       
	border: #af9a72 solid 1px;
	background :#fff;
}

.memo_title {
	position : absolute;
	top : -1.0em;
	left : 0.5em;
	padding : 0em 1.5em 0em 1.5em;
	background : #fff;
	border : #af9a72 solid 1px;
	border-radius: 20px; 
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

/* 記事内メモ・ポイント等ここまで
------------------------------------------------- */
/* 記事本文スタイル(ここまで)
---------------------------------------------------------*/


/* トピックス(ここから)
---------------------------------------------------------*/

#topics {
	max-width: 1000px;
	margin: 0 auto;
}

#topics ul li {
	width :25%;
	float :left;
	overflow :hidden;
}

#topics ul li .topics_thumb {
	position : relative;
	height :250px;
	text-align :center;
}

#topics ul li .topics_thumb img {
    position: relative;
    top: 100px;
    left: 50%;
    width: auto;
    max-width :100%;
    height: auto;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

#topics ul li figcaption {
    color: #fff;
    padding :1em;
    background: #1b1464;
    position: absolute;
    bottom: 0;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.andmore_topics {
	text-align :right;
	margin-bottom :3em;
}

.andmore_topics a {
	color :#fff;
}

.andmore_topics a:hover {
	color : #ffbf00;
}

@media screen and (max-width: 500px) {
#topics ul li .topics_thumb {
	height :200px;
}
#topics ul li figcaption {
	padding :0.5em;
	max-height :48px;
	font-size :80%;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	white-space: normal;
}
}

/* トピックス(ここまで)
---------------------------------------------------------*/

/* ニュース(ここから)
---------------------------------------------------------*/

#news_wrap {
	padding :2em;
	margin :2em;
	border : #1b1464 1px solid;
}

@media screen and (max-width: 500px) {
#news_wrap {
	font-size :80%;
	padding :1em;
}
}

#newsList {
	list-style :none;
}

.detailText {
	padding :1.5em;
}


.newMark {
	font-size :1rem;
	width :4em;
	font-weight:bold;
	text-decoration:none;
	text-align:center;
	padding:2px 5px 3px 5px;
	color:#fff;
	background-color:#2e3192;
	border-radius:5px;
}
.catName {
	font-size :80%;
	text-decoration:none;
	text-align:center;
	padding:2px 5px 3px 5px;
	margin : 0 0.5em;
	color:#fff;
	background-color:#ccc;
	border-radius:5px;
	vertical-align :text-top;
}
#newsList li h2,#newsList li h2 a {
	font-size :105%;
	font-weight : normal;
	color : #1b1464;
}

#newsList li table {
	width :100%;
	margin :0.5em 0;
}

#newsWrap {
	background : rgba(255,255,255,0.8);
	margin :1em;
	padding :1em;
}

.thumbNailWrap {
	width :100px;
}

.thumbNail {
	max-height: 100px;
	object-fit: cover;
}

.mh500 {
	max-height :500px;
	overflow :auto;
}

.pager {
	text-align :right;
}

.pager a {
	text-align :right;
	padding :5px 10px;
	margin :0 5px;
	background :#ccc;
	color :#fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.pager a:visited,.pager a:hover,.pager a:active {
	color :#fff;
}

.pager a:hover {
	background :#000;
}

.comment {
	font-size :80%;
	padding: 0 10px;
}
/* ニュース(ここまで)
---------------------------------------------------------*/


/* カルーセル(ここから)
---------------------------------------------------------*/
.bxslider {
	width :100%;

}

.bx-wrapper {
	position: relative;
	max-width: 100% !important;
	margin: 0 auto 60px;
	padding: 0;
	*zoom: 1;
	overflow: hidden;
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
}

/** THEME
===================================*/

.bx-wrapper .bx-viewport {
	-moz-box-shadow: 0 0 5px #ccc;
	-webkit-box-shadow: 0 0 5px #ccc;
	box-shadow: 0 0 5px #ccc;
	left: -5px;
	background: #fff;
	
	/*fix other elements on the page moving (on Chrome)*/
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
    	-ms-transform: translatez(0);
    	-o-transform: translatez(0);
    	transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -30px;
	width: 100%;
}

/* LOADER */

.bx-wrapper .bx-loading {
	min-height: 50px;
	background: url(../img/bx_loader.gif) center center no-repeat #fff;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2000;
}

/* PAGER */

.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #666;
	text-indent: -9999px;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #000;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
	left: 10px;
	background: url(../img/controls.png) no-repeat 0 -32px;
}

.bx-wrapper .bx-next {
	right: 10px;
	background: url(../img/controls.png) no-repeat -43px -32px;
}

.bx-wrapper .bx-prev:hover {
	background-position: 0 0;
}

.bx-wrapper .bx-next:hover {
	background-position: -43px 0;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -16px;
	outline: 0;
	width: 32px;
	height: 32px;
	text-indent: -9999px;
	z-index: 9999;
}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}

/* AUTO CONTROLS (START / STOP) */

.bx-wrapper .bx-controls-auto {
	text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
	display: block;
	text-indent: -9999px;
	width: 10px;
	height: 11px;
	outline: 0;
	background: url(../img/controls.png) -86px -11px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
	background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
	display: block;
	text-indent: -9999px;
	width: 9px;
	height: 11px;
	outline: 0;
	background: url(../img/controls.png) -86px -44px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
	background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
	text-align: left;
	width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
	right: 0;
	width: 35px;
}

/* IMAGE CAPTIONS */

.bx-wrapper .bx-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	background: #666\9;
	background: rgba(80, 80, 80, 0.75);
	width: 100%;
}

.bx-wrapper .bx-caption span {
	color: #fff;
	font-family: Arial;
	display: block;
	font-size: .85em;
	padding: 10px;
}

/* カルーセル(ここまで)
---------------------------------------------------------*/

.subject_nav {
	width :100%;
	list-style :none;
}

.subject_nav li {
	float :left;
	width :20%;
	padding :1%;
	background :#fff2c6;
}

/* (ここまで)
---------------------------------------------------------*/

.check {
	margin :1em;
	list-style :none;
	color :#fff;
	font-size :120%;
}

.check li {
	position: relative;
	padding-left: 1.3em;
}

.check li:after {
	position: absolute;
	top: 0.4em;
	left: 0;
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: "\f046";
}

.reception {
	margin :1em;
	padding :1em;
	background-color: #fff;
	border: 2px solid #563526;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.reception p {
	font-size :130%;
}

.r_title {
	text-align :center;
	font-size :300%;
	color: #563526;
	background-color: #fff;
	border: 2px solid #563526;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

@media screen and (max-width: 800px) {
	.r_title {
		font-size :150%;
	}
}

.reception dl {
	display :table;
	margin-top: 0.5em;
	width :100%;
	border: #563526 solid 3px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.reception dl dt,.reception dl dd {
	display :table-cell;
	text-align :center;
	vertical-align: middle;
	padding :0 0.5em;
	font-size :120%;
}

.reception dl dt {
	background :#563526;
	color: #fff;
}

.reception dl dd {
	background :#fff;
}

.nowrap {
	white-space: nowrap;
}

.dayweek {
	margin: 0 0.25em;
}

.contact-wrap {
	padding :1em;
}

.contact-wrap input {
	margin-right :0.5em;
}

.inquiry {
	margin: 0.5em 0;
	color: #fff;
	cursor:pointer;
	font-size: 95%;
}

#form-radio {
	margin: 0 0 0.5em 0.5em;
}

.form-input {
	width: 50%;
	float: left;
	margin-bottom: 0.5em;
	padding: 0 0.25em;
	box-sizing: border-box;
}

@media screen and (max-width: 600px) {
	.form-input {
		width: 100%;
		float: none;
	}
}

.form-input-comment {
	width: 100%;
	margin-bottom: 0.5em;
	padding: 0 0.25em;
	box-sizing: border-box;
}

#form-schedule-list,
#form-subject-list,
#form-contact-list {
	clear: both;
	height: 0;
	color: #fff;
	transition: .3s;
	overflow: hidden;
}

#form-schedule-list label,
#form-subject-list label,
#form-contact-list label {
	margin-right: 1em;
	cursor:pointer
}

#form-schedule-list p,
#form-subject-list p,
#form-contact-list p {
	margin: 0.5em 0;
}

#footer {
	position: relative;
	width: 100%;
	text-align: center;
}

#footer.fixed {
	position: fixed;
	bottom: 0;
}

.footer_logo {
	width :250px;
	margin :1em;
}

address {
	width: 100%;
	padding :1em 0 1em 0;
	text-align: center;
	margin: 0;
}

@media screen and (max-width: 500px) {
address {
	font-size :3vw;
}
}
/* スクロールバー(ここから)
---------------------------------------------------------*/

::-webkit-scrollbar-track {
  background: none;
}
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
::-webkit-scrollbar-thumb {
  background: #1b1464;
  border-radius: 5px;
}

/* スクロールバー(ここまで)
---------------------------------------------------------*/