@charset "utf-8";


/*----------------------------------------------------------------------------------------

	bese.css

----------------------------------------------------------------------------------------*/

html {
	background-color: #fff;
	font-size: 62.5%;/*=10px ベースのフォントサイズ*/
}
body {
	min-width: 1200px;
	color: #333;
	font-size: 1.6rem;
	line-height: 1.75;
	text-align: justify;
	font-feature-settings: "palt";
	font-family: "メイリオ", Meiryo, sans-serif;
	line-break: strict;
}
.acc {
	background-color: #beaf87;
}

/*--------------------*/

.cont-w, main ,.page-cont {
	margin-right: auto;
	margin-left: auto;
}
.cont-w {
	width: 1200px;
}

.page-cont{
	width: 1000px;
	margin-top: 50px;
}

/*--------------------*/

.dnone {
	display: none !important;
}
.pc-dnone {
	display: none !important;
}
.smp-dnone {
	display: block !important;
}
/*--------------------*/

iframe {
	width: 100%;
	display: block;
}

/* table //
---------------------------------------------- */

.table {
	display: table;
}
.table > * {
	display: table-cell;
	vertical-align: middle;
}

/* float //
---------------------------------------------- */

.float > *, .float_pc > * {
	float: left;
}
.float-r > *{
	float: right;
}
.float::after, .float_pc::after, .clearfix::after {
	content: "";
	clear: both;
	display: block;
}

/* テキスト //
---------------------------------------------- */

.imgtxt, .imgtxt-all a {
	background-repeat: no-repeat;
	background-position: center;
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: -99999px;
	text-align: left !important; /*IE用*/
}

/*----------*/

.under {
	text-decoration: underline;
}
.center{
	text-align: center;
}
.red{
	color:#f30;
}

/* 画像 //
---------------------------------------------- */
img {
	max-width: 100%;
	height: auto;
}
.border{
	border: 1px solid #CCC;
	box-sizing: border-box;
}

/* 余白 //
---------------------------------------------- */
.space5{margin-bottom: 5px;}
.space10{margin-bottom: 10px;}
.space15{margin-bottom: 15px;}
.space20{margin-bottom: 20px;}
.space25{margin-bottom: 25px;}
.space30{margin-bottom: 30px;}
.space35{margin-bottom: 35px;}
.space40{margin-bottom: 40px;}

.top0{margin-top:0 !important;}
.top10{margin-top:10px;}
.top15{margin-top:15px;}
.top20{margin-top:20px;}
.top30{margin-top:30px;}
.top35{margin-top:35px;}
.top40{margin-top:40px;}
.top50{margin-top:50px;}
.top60{margin-top:60px;}
.top70{margin-top:70px;}
.top80{margin-top:80px;}

.top100{margin-top:100px;}

.left10{margin-left:10px;}
.left15{margin-left:15px;}
.left20{margin-left:20px;}
.left30{margin-left:30px;}
.left40{margin-left:40px;}
.left50{margin-left:50px;}

/* アイコン //
---------------------------------------------- */

/*.icon::before, .icon-all a::before {
	margin: auto;
	height: 1em;
	position: absolute;
	top: 0;
	bottom: 0;
	font-size: 2rem;
	line-height: 1;
	font-family: fontawesome;
}
*/
/* ホバー //
---------------------------------------------- */

.hover a:hover {
	color: #beaf87 !important;
}
.hover2 a:hover {
	text-decoration: underline;
}

.hover3 a:hover {
	color: #f90 !important;
	text-decoration: underline;
}

/* ロールオーバー //
---------------------------------------------- */

.rov a , .rov input {
	transition: opacity 0.2s;
	backface-visibility: hidden; /*chrome 1pxずれる現象回避*/
}
.rov a:hover ,  .rov input:hover {
	opacity: 0.8;
}
.rov input {
	cursor: pointer;
}

/*
// 背景の共通デザイン（本文中で使う色付きBOX）
// クラス.bg-boxと、つけたい色のクラス名を併せて指定して使う想定。
// borderをつける場合は、さらに.bg-borderを指定することで色にあったborderがつく。
*/

.bg-box {
	padding: 25px;
}
.bg-box_gray {
	background-color: #e7e7e7;
}
.bg-box_yellow {
	background-color: #ffc;
}
.bg-box_yellow.bg-border {
	border: 1px solid #e7e7e7;
}
.bg-box_gold {
	background-color: #ebe7db;
}
.bg-box_gold.bg-border {
	border: 1px solid #beaf87;
}

/* 枠のスタイル //
---------------------------------------------- */

a[data-lightbox] {
	display: block;
	position: relative;
}
a[data-lightbox]::after {
	content: "\f00e";
	font-family: fontawesome;
	position: absolute;
	bottom: 0;
	right: 0;
	color: #FFF;
	background-color: #F90;
	width: 24px;
	line-height: 24px;
	text-align: center;
	font-weight: normal;
}

.aisatsu{
	border: 1px solid #beaf87;
	background-color: #ebe7db;
	box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
	padding-top: 40px;
	padding-right: 35px;
	padding-bottom: 40px;
	padding-left: 35px;
	box-sizing: border-box;
}
.aisatsu p:nth-of-type(1),
.aisatsu p:nth-of-type(2){
	margin-top:0;
}
.aisatsu img{
	width:200px;
	margin-left:20px;
	margin-bottom:20px;
}
.aisatsu ul {
	background-color:rgba(255,255,255,0.9);
	padding:22px;
}
.aisatsu ul li{
	font-weight:bold;
}
.aisatsu dl{
	background-color: rgba(255,255,255,0.4);
	padding-top: 17px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 20px;
	border: 1px solid #ccc;
}
.aisatsu dt{
	font-weight: bold;
	font-size: 2rem;
	text-align: center;
	border-bottom: 1px solid #ccc;
	padding-bottom:10px;
	margin-bottom: 15px;
}
.main-cont .aisatsu h4 {
	font-size: 20px;
	line-height: 1.5;
}
.main-cont .aisatsu h4 i {
	color: #F60;
	margin-right: 0.5em;
}

/* ギャラリー //
---------------------------------------------- */

.gallery {
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
}
.gallery li {
	width: 31.86%;
	margin-left: 2.2%;
	margin-top: 15px;
}
.gallery li:nth-of-type(3n-1) {
	margin-left: 0;
}
.gallery li:first-child {
	width: 100%;
	margin-left: 0;
	margin-top: 0;
}

/* 本文リスト //
---------------------------------------------- */

.liststyle1 li {
	list-style-type: disc;
	margin-left: 1em;
}
/* ヘッダー //
////////////////////////////////////////////////////////////////////*/

#body_header {
	background-color: #fff;
	position: relative;
}
#header-line {
	background-color:#414042;
	font-size: 1.3rem;
}
h1 {
	padding-top:3px;
	padding-bottom:4px;
	color:#fff;
	font-weight: normal;
	line-height: 1.7; /* staff.cgi用 */
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	margin-right: auto;
	margin-left: auto;
}

#site-title{
	padding-top: 22px;
}
#body_header h2 {
	width:681px;
}
#body_header h2 a {
	padding-bottom: 5px;
	display: block;
	width:331px;
}
#body_header h2 + div{
	width: 316px;
	height: 66px;
	}
#body_header > div > div .address{
	padding-bottom:2px;
	line-height: 1;
	padding-left: 9px;
}
#body_header > div > div .eigyo li{
	font-size: 1.3rem;
	line-height: 1;
	padding-top:6px;
	letter-spacing: -1px;
	
}
/* スマホサイト用メニューボタン */
#smp-menubtn{
	display:none;
}
/* グローバルメニュー //
////////////////////////////////////////////////////////////////////*/

#gmenu {
	padding: 7px 0;
	margin-left:auto;
	border-top:1px solid #afa17c;
	border-bottom:1px solid #afa17c;
}

/*----------*/
#gmenu > ul{
	margin-left:auto;
	margin-right:auto;
}
#gmenu > ul > li a {
	height: 48px;
	display: block;
	font-size:0;
	transition: background 0.2s;
}

/*----------*/

#gmenu [href="/"] {
	background-image: url(/images/common/gmenu1.png);
	width:64px;
}
#gmenu [href="/story/"] {
	background-image: url(/images/common/gmenu2.png);
	width:200px;
}
#gmenu [href="/point/"] {
	background-image: url(/images/common/gmenu3.png);
	width:200px;
}
#gmenu [href="/#simulation"] {
	background-image: url(/images/common/gmenu4.png);
	width:200px;
}
#gmenu [href="https://www.maruyoshi-kushitsu.com/"] {
	background-image: url(/images/common/gmenu5.png);
	width:200px;
}
#gmenu [href="/company/"] {
	background-image: url(/images/common/gmenu6.png);
	width:136px;
}

/*ロールオーバー*/
#gmenu .stay [href="/"],
#gmenu [href="/"]:hover {
	background-image: url(/images/common/gmenu1_on.png);
}
#gmenu .stay [href="/story/"],
#gmenu [href="/story/"]:hover {
	background-image: url(/images/common/gmenu2_on.png);
}
#gmenu .stay [href="/point/"],
#gmenu [href="/point/"]:hover {
	background-image: url(/images/common/gmenu3_on.png);
}
#gmenu .stay [href="/#simulation"],
#gmenu [href="/#simulation"]:hover {
	background-image: url(/images/common/gmenu4_on.png);
}
#gmenu .stay [href="https://www.maruyoshi-kushitsu.com/"],
#gmenu [href="https://www.maruyoshi-kushitsu.com/"]:hover {
	background-image: url(/images/common/gmenu5_on.png);
}
#gmenu .stay [href="/company/"],
#gmenu [href="/company/"]:hover {
	background-image: url(/images/common/gmenu6_on.png);
}

/*問い合わせ//
////////////////////////////////////////////////////////////////////*/
.toi{
	width:1000px;
	margin-left:auto;
	margin-right:auto;
}
.toi h3 + div{
	border:10px solid #e7e7e7;
	border-top:none;
	padding-top:30px;
	padding-bottom:20px;
}
.toi ul{
	margin-left:auto;
	margin-right:auto;
	display:table;
}
.toi ul li{
	display:table-cell;
}
.toi ul li span{
	font-size:1.5rem;
	line-height:2rem;
	padding-top:10px;
	display:inline-block;
	margin-left: -10px;
}
.toi ul li + li{
	padding-left:58px;
}

/* form //
////////////////////////////////////////////////////////////////////*/
#form h4{
	margin-top:95px;
	margin-bottom:50px;
}

/* table //
---------------------------------------------- */
.form table {
	width: 1000px;
	border-top: 1px dotted #aaa;
	margin-left:auto;
	margin-right:auto;
}
.form tr {
	box-sizing: border-box;
	height: 60px;
	border-bottom: 1px dotted #aaa;
	/*background:linear-gradient(90deg,#eee 0%,#eee 30%,#fff 30%,#fff 100%);*/
}
.form td {
	padding-top: 20px;
	padding-bottom: 20px;
}
.form tr:nth-of-type(1) td {
	padding-top: 18px;
	padding-bottom: 18px;
}
.form th {
	box-sizing: border-box;
	padding-left: 20px;
	width: 300px;
	/*position: relative;*/
	font-weight: normal;
	text-align: left;
	background-color:#eee;
}
.form span.hissu{
	padding: 0 4px;
	height: 19px;
	color: #fff;
	font-size: 1.2rem;
	line-height: 19px;
	background-color: #f30;
	margin-right: 15px;
	margin-top:4px;
	float: right;
	}
.hissu ::after {
	content: "";
	clear: both;
	display: block;
}
.form td {
	padding-left: 20px;	
}
.form input + ul {
	margin-left: 10px;
	padding-top: 5px;
}

/* form //
---------------------------------------------- */

.form [type="text"], /*.form [type="number"],*/ .form [type="tel"], .form [type="email"], .form textarea, .form [type="submit"] {
	box-sizing: border-box;
	border: 1px solid #ccc;
	display: block;
	outline: none;
	box-shadow: none;
	font: inherit;
	-webkit-appearance: none;
	appearance: none;
}
.form [type="text"], /*.form [type="number"],*/ .form [type="tel"], .form [type="email"] {
	height: 40px;
	float:left;
	margin-right:10px;
	padding: 10px;
	line-height:40px;
}
.form select {
	box-sizing: border-box;
	height: 39px;
	border: 1px solid #ccc;
	font: inherit;
}
.form textarea {
	padding: 10px;
	height: 160px;
}
.form span input{
	margin-right:7px;
	vertical-align: middle;
	
	}
.form span + span{
	padding-left: 30px;
	}
.form p.float{
	font-size: 1.4rem;
	line-height: 38px;
}

/*----------*/

.form .big {
	width: calc(100% - 23px);
}
.form .middle {
	width: 300px;
}
.form .small {
	width: 140px;
}

.form [type="submit"] {
	margin: 40px auto 0;
	width: 551px;
	height: 72px;
	border: none;
	border-radius: 4px;
	background-color: #414042;
	cursor: pointer;
	font-size:24px;
	font-weight:bold;
	padding-top:3px;
	color:#fff;
}
#form form+ p{
	text-align: center;
	margin-top: 30px;
}
/* フッター //
////////////////////////////////////////////////////////////////////*/

#body_footer {
	margin-top:150px;
	border-top: 1px solid #ccc;
}
#body_footer > ul {
	width:1000px;
	padding: 10px 0;
	position: relative;
	margin-left:auto;
	margin-right:auto;
}
#body_footer h4{
	background-image:url(/images/common/pc_footer_bk.gif);
	background-repeat:repeat-x;
	position:relative;
}
#body_footer h4::before{
	position:absolute;
	bottom:-10px;
	content:"";
	width:100%;
	height:10px;
	display:block;
	background-image:url(/images/common/pc_footer_shadow.png);
}
/* ページトップ //
---------------------------------------------- */

#body_footer .pagetop {
	width:1000px;
		margin-left:auto;
	margin-right:auto;
	position:relative;
}
#body_footer .pagetop a {
	display: block;
	position:absolute;
	bottom:20px;
	right:-44px;
}
#body_footer .pagetop a span{
	display:none;
}
/* 会社案内 //
---------------------------------------------- */
#body_footer .footer-waku {
	width:1000px;
	display:table;
	margin-left:auto;
	margin-right:auto;
	padding-top: 25px;
	padding-bottom: 25px;
}
#body_footer .footer-waku > *{
	display:table-cell;
	vertical-align: top;
}
#body_footer div:nth-of-type(2){
	background-color: #ebe7db;
}

#body_footer .footer-text{
	box-sizing: border-box;
	position: relative;
	padding-left: 30px;
}

#body_footer .btn{
	background-color:#fff;
	display: inline-block;
	position: absolute;
	bottom: 0;
}

/* フッターリンク //
---------------------------------------------- */

#body_footer .link {
	border-top: 1px solid rgba(255,255,255,0.1);
}
#body_footer li {
	font-size: 1.4rem;
}

#body_footer .list-box li:not(:last-child) {
	margin-right: 15px;
}
#body_footer .list-box a::after {
	margin-left: 10px;
	content: "\f105";
	font-family: fontawesome;
	color: #beaf87;
}
#body_footer .list-box a.hover::after.hover {
	text-decoration: none;
	
}


/*----------*/

#body_footer small {
	background-color: #fff;
	padding: 7px 10px;
	display: block;
	font-size: 1.2rem;
	text-align: center;
}
#body_footer small span + span{
	margin-left:10px;
}

/* スマホ表示に切り替え //
---------------------------------------------- */

#body_footer .switcher-pc a {
	margin-top: 15px;
	background-color: #fff;
	display: block;
	border-radius: 3px;
	color: #333;
	font-size: 3.2rem;
	line-height: 99px;
	text-align: center;
}
#body_footer .switcher-pc a::before {
	margin-right: 10px;
	font-size: 4rem;
	font-weight: normal;
	vertical-align: middle;
	content: "\f10b";
	font-family: fontawesome;
}