﻿@charset "utf-8";

/* ---------------------------------------------
　layout modules
------------------------------------------------ */

/* base modules
------------------------------------------------ */
.content p,
.content ul,
.content dl,
.content ol,
.content table,
.content blockquote{
	margin: 20px 0 0;
}

.content ul p, .content ul dl, .content ul ol, 
.content dl p, .content dl ul, .content dl ol, 
.content ol p, .content ol ul, .content ol dl, 
.content table p, .content table ul, .content table dl, .content table ol{
	margin: 0;
}

.content p img, .content dl img, .content ul img {
	vertical-align: middle;
}

.column-image-left,.column-image-center,.column-image-right { margin-top:20px !important; }

/* common modules
------------------------------------------------ */

.small    { font-size:87%;  }
.x-small  { font-size:70%;  }

.large    { font-size:107%; }
.x-large  { font-size:120%; }

.attention{ color: #FF3366;   }
.attention-box { border: 1px solid #FF3366 ; padding: 10px; margin: 20px 0 !important;}
.bold     { font-weight:bold; }

.center{ text-align: center; }
.right { text-align:right;   }
.left  { text-align:left;    }

.float-l{ float: left;  }
.float-r{ float: right; }
.clear  { clear: both;  }

.img-l{ float:left;  margin:0 25px 10px 0; }
.img-r{ float:right; margin:0 0 10px 25px; }

.nowrap         { white-space:nowrap; }
.nomargintop    { margin-top: 0 !important; }
.content .nocss { maring:0; padding:0; border:none; background:none; }

/* --- anchor --- */

.anchor{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:13px;
}


/* --- openwin --- */

.openwin{ 
	padding-right: 15px;
}



/* ------ title -------------------------------- */


.content h2{
	font-size:170%;
	clear:both;
	margin:0;
	text-align:center;
	border-bottom:3px double #be9b78;
	padding:10px 0 30px;
	font-family: 'Lora', serif;

}

.content h2 .copy {
	font-family:"HGP明朝B","ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	display:block;
	font-weight:normal;
	font-size:50%;
	line-height:0.6em;
}

.content h2 a:link          { text-decoration:underline; }
.content h2 a:visited       { text-decoration:underline; }
.content h2 a:hover,a:active{ text-decoration:none; }


.content h3 {
	clear:both;
	margin:10px 0 0;
	text-align: center;
	color:#855423;
	font-size: 18px;
}



.content h4{
	clear:both;
	font-weight:bold;
	margin:30px 0 0;
	color:#864e14;
}

/* ------ ul ----------------------------------- */


/* --- normal list --- */

.list li{
	background:url("../img/icon_list01.gif") no-repeat 0 0.8em;
	padding-left:13px;
	margin-top:5px;
}

.list li li {
	background:url(../images/icon_list02.png) no-repeat 0 0.6em;
}

/* --- link list --- */

.link li{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:15px;
	margin-bottom:5px;
}

.link li li{
	background:url(../images/icon_arrow02.png) no-repeat 0 0.5em;
	padding-left: 10px;
}

/* --- number list --- */

ol li {
	list-style-type:decimal;
	margin-left:25px;
	margin-bottom:5px;
}

ol ul li{
	list-style-type:none;
	margin-left:10px;
}

/* --- attention list --- */

.rice li{
	margin:0 0 5px 1em;
	text-indent:-1em;
}

/* --- compact list --- */

.compact li{
	display:inline;
	margin-right:10px;
}

/* --- within compact list --- */

.within {
	padding: 8px;
	border: 1px solid #ddd;
}

.within li{
	background:url(../images/icon_arrow_within.png) no-repeat 0 0.4em;
}


.content ul ul, .content dl dl, .content ol ol {
	margin-top: 5px;
}

/* ------ dl ----------------------------------- */

/* --- normal list --- */

.list dt{
	background:url(../images/icon_list01.png) no-repeat 0 0.5em;
	padding-left:13px;
	font-weight:bold;
}

.list dd{
	padding-left:13px;
}

/* --- link list --- */

.link dt{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:15px;
	font-weight:bold;
}

.link dd{
	padding-left:15px;
}

/* --- horizonal --- */

#about dt,
.horizonal dt {
  clear: left;
  float: left;
  width: 6.5em;
  padding:8px 2em 8px 0;
  text-align:right;
  color:#916a44;
}

#about dd,
.horizonal dd {
  padding:8px 15px 8px 10em;
	border-bottom:1px dotted #be9b78;
}

.horizonal2 {
	border-top:1px solid #be9b78;
	border-bottom:1px solid #be9b78;
	padding:11px 5px;
}

.horizonal2 dt {
  clear: left;
  float: left;
  width: 5em;
  padding:0 8px 0 0;
  text-align:left;
  color:#916a44;
}

.horizonal2 dd {
  padding:0 0 0 6em;
}



/* ------ layout frame ------------------------- */

.content .layout-frame {
	clear: both;
	margin-left: -20px;
}

.content .layout-3col {
	margin-left: -15px;
}

.content .layout-unit {
	float: left;
	display: inline;
	margin-left: 20px;
}

.content .layout-3col .layout-unit {
	margin-left: 15px;
}

/* 720px */
.grid-1 { width: 60px; }
.grid-2 { width:110px; }
.grid-3 { width:170px; }
.grid-4 { width:230px; }
.grid-5 { width:290px; }
.grid-6 { width:350px; }
.grid-7 { width:410px; }
.grid-8 { width:470px; }
.grid-9 { width:530px; }
.grid-10{ width:590px; }
.grid-11{ width:650px; }


/* ボタン */
a.btn {
	display: block;
	position: relative;
	padding: 5px 25px;
	border: 2px solid #9e7953;
	background: none;
	color: #855423;
	font-size: 15px;
	text-decoration: none;
	width:220px;
	margin:0 auto;
	text-align:center;
    transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
}

a.btn:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #9e7953;
	border-right: solid 2px #9e7953;
	-webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}

a.btn:hover {
	background: #9e7953;
	color: #fff;
}


/* パララックス */


#top{
	background: url(../img/bg_keyvisual.jpg) 50% 50% no-repeat;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	height: 750px;
	color: #fff;
	background-size:cover;

}

#concept{
	background: url(../img/bg_concept.jpg) 50% 50% no-repeat fixed;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover;
}

.concept_test2 {
	background: url(../img/bg_concept2.jpg) 50% 50% no-repeat fixed !important;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover !important;
}

.concept_test3 {
	background: url(../img/bg_concept3.jpg) 50% 50% no-repeat fixed !important;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover !important;
}


#about{
	background: url(../img/bg_about.jpg) 50% 50% no-repeat fixed;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover;
}

#service{
	background: url(../img/bg_service2.jpg) 50% 50% fixed;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
}

#voice{
	background: url(../img/bg_voice.jpg) 50% 50% no-repeat fixed;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover;
}

#contact{
	background: url(../img/bg_contact.jpg) 50% 50% no-repeat fixed;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover;
}



/*------------------------------------------ 
個別CSS 
--------------------------------------------*/


/* ------------ キービジュアル ------------  */

.keyvisual {
	width: 100%;
	text-align: center;
	display: table;
}

.keyvisual p {
	font-family:"HGP明朝B","ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size:28px;
	height: 700px;
	display: table-cell;
	vertical-align: middle;
	margin: inherit auto;

}


/* ---------------- news ------------*/

.news-list {
	margin-top: 30px;
}

.news-list li {
	 background: url("../img/icon_list01.gif") no-repeat scroll 0 0.8em rgba(0, 0, 0, 0);
    margin-top: 5px;
    padding-left: 13px;
		padding-bottom: 10px;
		margin-bottom: 10px;
		border-bottom: 1px dotted #be9b78;
}

.news-table td, .news-table th {
	padding: 3px;
	border: 1px solid #be9b78;
}

 .news-table th {
	 background: #EFEADD;
 }
 
 /* -------------concept --------*/
 
 #concept .content h3 {
	text-align: left;
	margin-top: 25px;
	font-size: 24px;
	line-height: 1;
	clear: none;
}

 #concept .content h3:after {
	 content:"";
	 width: 211px;
	 background: url(../img/img_line.png) no-repeat 5px 50%;
	 height: 17px;
	display: inline-block;
 }

#concept .content p {
	margin-top: 5px;
}

#concept .figure {
	padding-bottom: 30px;
	padding-top: 10px;
}
 
/*  ------------ about ------------  */


.about {
	padding:25px 50px;
}

.map {
	margin: 20px -5px 0;
}


/*  ------------ service ------------  */
.service {
	padding:5px 22px 25px;
}

.service-list li ,.shop-btn li {
	width:270px;
	float:left;
}

.shop li {
	margin-right: 44px;
}

.shop li:last-child {
	margin-right: 0;
}

.inline-inner {
	line-height: 1.7;
	height: 480px;
	width: 500px;
	overflow: auto;
}

.inline-content {
	padding: 20px;
}

.inline-inner h1 {
	text-align: center;
	font-size: 16px;
	border-bottom:3px double #be9b78;
	padding-bottom: 5px;
	font-weight: bold;
}

.shop {
	border-bottom: 1px solid #decdbb;
}

ul.shop {
	border-bottom: none;
}

.shop dt {
	font-size: 14px;
	color: #99683d;
	padding: 4px 0 4px 15px;
	width: 7em;
	float: left;
}

.shop dd {
	margin-left: 9em ;
	padding: 4px 15px 4px 0 ;
}

.shop .nowrap {
	display: inline-block;
}

.shop:after, .shop:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}

.pp_nav, .pp_social, .pp_gallery { display: none !important; }
/* バリ島 */

#bari .shop__area {
	width: 10em;
}

#bari .shop__list {
	margin-left: 12em;
}

/* 世界地図 */
.worldmap img {
	width: 100%;
	height: auto;
	margin-bottom: 20px;
}


/* ------------  Voice ------------  */

#voice .content {
	margin: 140px auto;
}

.voice {
	padding: 0;
}

.voice:last-child {
	padding-bottom: 30px;
}

.content .voice__index {
	width: 490px;
	margin: 20px auto 0;
	display: block;
	color: #fff;
	text-decoration: none;
	
  background-image: -moz-linear-gradient( 90deg, rgb(208,183,158) 0%, rgb(190,155,120) 100%);
  background-image: -webkit-linear-gradient( 90deg, rgb(208,183,158) 0%, rgb(190,155,120) 100%);
  background-image: -ms-linear-gradient( 90deg, rgb(208,183,158) 0%, rgb(190,155,120) 100%);
	
	transition: all 0.4s ease;
	-webkit-transition: all 0.4s ease;
}

.content .voice__index:hover {
  background-image: -moz-linear-gradient( 90deg, rgb(158,133,108) 0%, rgb(140,105,70) 100%);
  background-image: -webkit-linear-gradient( 90deg, rgb(158,133,108) 0%, rgb(140,105,70) 100%);
  background-image: -ms-linear-gradient( 90deg, rgb158,133,108) 0%, rgb(140,105,70) 100%);
}

.voice__thumb {
	width: 219px;
	height: 97px;
	overflow: hidden;
	float: left;
}

.voice__text {
	margin-left: 219px;
	padding: 0 15px 0 7px;
	height: 97px;
	display: table-cell;
	vertical-align: middle;
	position: relative;
}

.voice__text:after {
	display: block;
	content: "";
	position: absolute;
	top: 50px;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}


/* pager */


.pager-navigation {
	text-align: center;
}

.pager-navigation ul {
	display: inline-block;
}

.pager-navigation li {
	display: inline-block;
}

.pager-navigation .cur {
	background: #9E7953;
	color: #fff;
	padding: 3px 10px;
	display: inline-block;
}

.pager-navigation a {
	padding: 3px 10px;
	display: inline-block;
	background: #E0D8CB;
	border: 1px solid #9E7953;
	box-sizing:border-box;
	text-decoration: none;
	color:#6c4319;
}


/* ---------------contact -----------------*/

#contact .content {
	margin: 130px auto;
}

.contact {
	padding:25px 0;
}
.contact p {
	text-align: center;
}

.tel span {
	font-size:170%;
}


/* --------------------form ------------------*/


div.center input{
	margin-top:15px;
}

table {
	width:100%;
}

table th,
table td {
	padding:10px;
}

.content table th {
	width:150px;
	text-align:left;
	color:#6c4319;
}


/* 必須アイコン */
.require {
	display: block;
	float: right;
	margin-top: 2px;
	font-size:78%;
	background:#9e7953;
	color:#fff;
	padding:2px 5px;
	line-height:1em;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}

/* 入力例 */
.content .example {
	font-size: 78%;
	color: #666;
	margin: 3px;
	padding: 0;
}


/* --- エラー -- */

.content p.error {
	font-size: 85%;
	color: #dd0000;
	padding: 0 ;
	margin: 5px 0;
}

.content table table p.error {
	font-size: 91%;
}

input.error,
textarea.error {
	border: 1px solid #ee9899;
}

.sub-contact {
	background: url(../img/bg_contact.jpg) 50% 50% no-repeat fixed;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	background-size:cover;
}

.sub-contact .sub-content {
	min-height:1200px;
}

/* フォームボタン */
.form-button form {
	display: inline;
	padding: 0 20px;
}

.sub-contact input[type=submit] {
	position: relative;
	padding: 5px 25px;
	border: 2px solid #9e7953;
	background:inherit;
	color: #855423;
	font-size: 15px;
	text-decoration: none;
	width:220px;
	margin:0 auto;
	text-align:center;
	font-family: "メイリオ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", Osaka ;
}

.sub-contact input[type=submit]:hover {
	background: #9e7953;
	color: #fff;
	cursor:pointer;
}

.flow img {
	width:614px;
}


/* ---------------------- recruit --------------------- */

#recruit{
	background: url(../img/bg_common.jpg) ;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
}


/*---------------
	 下層ページ
	 ----------------- */
	 
.sub-content {
	margin: 20px auto 50px!important;
}

.summary {
	padding:0;
}

/* voice */

#voice h3 {
	text-align: left;
	color:#94622f;
	font-size: 20px;
	line-height:1.3em;
	margin:10px 0;
}


.overview {
	margin:20px auto 25px;
}

.overview__image {
	width:280px;
	float:left;
	margin-left:25px;
}

.overview__image img {
	width:100%;
}

.overview__text {
	float:right;
	width:330px;
}

.overview__name {
	font-size:12px;
}

/*---------------
	 bxslider
	 ----------------- */

/** RESET AND LAYOUT
===================================*/

.bx-wrapper {
	position: relative;
	margin: 0 auto;
	padding: 0;
	*zoom: 1;
}

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

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

.bx-wrapper .bx-viewport {
	border:  none;
	background: none;
	
	/*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: 10px;
	width: 100%;
}

/* PAGER */

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

.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: #c2bcb4;
	text-indent: -9999px;
	display: block;
	width: 18px;
	height: 18px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 9px;
	-webkit-border-radius: 9px;
	border-radius: 9px;
}

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

/* DIRECTION CONTROLS (NEXT / PREV) */

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

.bx-wrapper .bx-next {
	right: 10px;
}

.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(images/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(images/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;
} */


