@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');
@import url('https://fonts.googleapis.com/css?family=Roboto');


/*============================================================*/
/* Reset CSS
/*============================================================*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}


/*============================================================*/
/* common
/*============================================================*/
html,body {
	margin: 0;
	padding: 0;
    width: 100%;
    height: 100%;
}
html { font-size: 62.5%;/*default size : 10px */}
body {
    background-color: #FFF;
	line-height: 1.5;
	/*font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', Osaka, メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
	font-family: 'Roboto', メイリオ, Meiryo, 'Noto Sans JP', sans-serif;
	/*font-family: 'Noto Serif',"Sawarabi Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
    font-feature-settings: "palt";
	font-size: 1.6rem;
	color: #231815;
    -webkit-text-size-adjust: 100%;
    /*-webkit-font-smoothing: antialiased;*/
}

/* anchor */
a {
    text-decoration: underline;
	color: #0071CE;

	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
a:hover {
	text-decoration: none;
}

/* img (anchor) */
a:hover img {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	filter: alpha(opacity=70);
	opacity: 0.7;
}

/* clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}

/* placeholder */
:placeholder-shown { color: #cdd4d9;}
::-webkit-input-placeholder { color: #cdd4d9;}/* Google Chrome, Safari, Opera 15+, Android, iOS */
:-moz-placeholder { color: #cdd4d9; opacity: 1;}/* Firefox 18- */
::-moz-placeholder { color: #cdd4d9; opacity: 1;}/* Firefox 19+ */
:-ms-input-placeholder { color: #cdd4d9;}/* IE 10+ */

/* separate */
hr.sep {
    clear: both;
    border: none;
    width: 100%;
    height: 0;
    margin: 0;
    background: none;
}


/*============================================================*/
/* element
/*============================================================*/

/* list - default
----------------------------------*/
ul.default li {
    margin-left: 20px;
    list-style: disc;
}
ol.default li {
    margin-left: 20px;
    list-style: decimal;
}

/* ul - clause
----------------------------------*/
ul.clause li {
    font-size: 1.2rem;
    padding-left: 1em;
    text-indent: -1em;
}
ul.clause li::before {
    content: '\0025cf';
}

/* button
----------------------------------*/
.btn a {
    position: relative;
    font-size: 3.8rem;
    font-weight: bold;
    line-height: 1.5;
    display: block;
    padding: 22px 22px 18px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background:-webkit-gradient(linear, left top, right top, from(#F9C498), to(#D37D29));
    background:-webkit-linear-gradient(left, #F9C498, #D37D29);
    background:-moz-linear-gradient(left, #F9C498, #D37D29);
    background:-o-linear-gradient(left, #F9C498, #D37D29);
    background:linear-gradient(to right, #F9C498, #D37D29);
}
.btn a::after{
	content: '';
	width: 12px;
	height: 12px;
	border: 0px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -6px;
}
.btn a:hover {
    text-decoration: none;
    opacity: .7;
    filter: alpha(opacity=70);
    -moz-opacity: .7;
}
@media screen and (max-width:768px) {
    .btn a {
        font-size: 2.4rem;
    }
}

/* image
----------------------------------*/
.fit {
    max-width: 100%;
    height: auto;
}
.fitImg img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

/* text align
----------------------------------*/
.txt-c {
    text-align: center;
}
.txt-l {
    text-align: left;
}
.txt-r {
    text-align: right;
}

/* notes
----------------------------------*/
.note {
    padding-left: 1em;
    text-indent: -1em;
}
.notes li {
    line-height: 1.2;
    margin-top: 4px;
    padding-left: 1em;
    text-indent: -1em;
}
.notes li:first-child {
    margin-top: 0;
}

/* marker
----------------------------------*/
.marker {
    background-color: #fcee21;
}

/* pc <--> sp 
----------------------------------*/
.pc {
    display: block;
}
.sp {
    display: none;
}
@media screen and (max-width:600px) {
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
}

/* print
----------------------------------*/

/* 印刷用紙設定 */
@page {
    margin: 12.7mm 9.7mm;
    size: A4;
}

/* 印刷時 */
@media print {}


/*============================================================*/
/* #header
/*============================================================*/
#header {
    min-width: 1000px;
}
#header .inr {
    position: relative;
    display: flex;
    width: 100%;
    max-width: 1000px;
    height: 104px;
    margin: 0 auto;
    padding: 20px 0;
    align-items: center;
}
@media screen and (max-width:768px) {
    #header {
        min-width: auto;
    }
    #header .inr {
        display: block;
        width: 100%;
        height: auto;
        padding: 15px;
    }
}

/* h1
----------------------------------*/
#header h1 {
    position: absolute;
    z-index: 10;
    top: 36px;
    left: 0;
}
@media screen and (max-width:768px) {
    #header h1 {
        position: static;
    }
}

/* .contactArea
----------------------------------*/
#header .contactArea {
    position: absolute;
    z-index: 10;
    top: 20px;
    right: 0;
}
#header .contactArea h2 {
	margin-left: 8px;
	font-weight: bold;
	font-size: 1.4rem;
}
#header .contactArea section {
	margin-top: 2px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media screen and (max-width:768px) {
    #header .contactArea {
        position: static;
    }
    #header .contactArea h2 {
	    letter-spacing: -1px;
	    text-align: center;
    }
	#header .contactArea section {
		margin-top: 0;
		display: block;
		justify-content: space-between;
		align-items: center;
	}
}

/* .tel
------------------*/
#header .contactArea .tel {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#header .contactArea .tel h3 {
	line-height: 1.2;
	padding: 4px 4px 2px; 
	font-weight: bold;
	font-size: 0.8rem;
	color: #fff;
	text-align: center;
	background-color: #D37D29;
}
#header .contactArea .tel h3 span {
	display: block;
	font-size: 2.0rem;
}
#header .contactArea .tel .telNumber {
	line-height: 1;
	margin-top: 2px;
	margin-left: 6px;
	font-weight: bold;
	font-size: 3.6rem;
	letter-spacing: -1px;
}
#header .contactArea .tel .telNumber a {
	color: #231815;
	text-decoration: none;
}
#header .contactArea .tel dl {
	margin-bottom: 2px;
	margin-left: 6px;
	font-weight: bold;
	font-size: 1.2rem;
	text-align: center;
}
#header .contactArea .tel dl dd {
	color: #fff;
	background-color: #D37D29;
}
@media screen and (max-width:768px) {
	#header .contactArea .tel {
		justify-content: space-around;
	}
	#header .contactArea .tel h3 {
		display: none;
	}
	#header .contactArea .tel .telNumber {
		line-height: 1;
		margin-top: 2px;
		margin-left: 0;
		font-weight: bold;
		font-size: 3.0rem;
		letter-spacing: -2px;
	}
	#header .contactArea .tel dl {
		font-size: 1.0rem;
	}
}

/* .btn
------------------*/
#header .contactArea .btn {
	margin-left: 8px;
	width:330px;
}
#header .contactArea .btn a {
	padding: 8px 24px 6px 8px;
	font-size: 2rem;
	text-align: center;
}
#header .contactArea .btn a::after {
	right: 8px;
}
#header .contactArea .btn a span {
	display: block;
	font-size: 1.6rem;
}
@media screen and (max-width:768px) {
	#header .contactArea .btn {
		margin-top: 6px;
		margin-left: 0;
		width:100%;
	}
	#header .contactArea .btn a {
		font-size: 1.6rem;
		text-align: center;
		width:100%;
	}
	#header .contactArea .btn a span {
		display: inline;
	}
}


/*============================================================*/
/* block / headding / listBox
/*============================================================*/
.contBlock,
.listBlock {
    min-width: 1000px;
}
.contBlock .inr,
.listBlock .inr {
    width: 1000px;
    margin: 0 auto;
	padding: 60px 0;
}
@media screen and (max-width:768px) {
    .contBlock,
    .listBlock {
        min-width: auto;
    }
    .contBlock .inr,
    .listBlock .inr {
        width: 100%;
        padding: 30px 15px;
    }
}

/* contBlock
----------------------------------*/
.contBlock p {
    line-height: 1.8;
}
@media screen and (max-width:768px) {
	.contBlock p {
	    line-height: 1.6;
	}
}

/* .contHead
------------------*/
.contBlock .contHead {
    margin-bottom: 40px;
}
.contBlock .contHead h2 {
	line-height: 1;
    font-size: 3.8rem;
    font-weight: bold;
    text-align: center;
	background-color: #D37D29;
	color: #D37D29;
}
.contBlock .contHead h2 em {
	padding: 0 22px;
	background-color: #fff;
}
@media screen and (max-width:768px) {
    .contBlock .contHead {
        margin-bottom: 20px;
    }
    .contBlock .contHead h2 {
        font-size: 2.8rem;
    }
	.contBlock .contHead h2 em {
		padding: 0 6px;
		background-color: #fff;
	}
}

/* listBlock
----------------------------------*/
.listBlock p {
    line-height: 1.8;
}
@media screen and (max-width:768px) {
	.listBlock p {
	    line-height: 1.6;
	}
}

/* .contHead
------------------*/
.listBlock .contHead {
	padding: 18px 18px 16px;
	font-weight: bold;
	font-size: 2.6rem;
	text-align: center;
	background-color: #FCF1EB;
}
@media screen and (max-width:768px) {
	.listBlock .contHead {
		padding: 16px 16px 14px;
		font-weight: bold;
		font-size: 2.2rem;
		text-align: center;
		background-color: #FCF1EB;
	}
}

/* .listBox
------------------*/
.listBlock .listBox {
	position: relative;
}
.listBlock .listBox ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	padding: 10px 25px 22px;
	border: 2px solid #FCF1EB;
}
.listBlock .listBox li {
	padding: 10px 0 8px;
	border-bottom: 1px solid #FCF1EB;
	font-size: 1.4rem;
}
.listBlock .listBox li::before {
	content: '●';
	color: #D37D29;
}
.listBlock .listBox .etc {
	position: absolute;
	bottom: 23px;
	right: 25px;
}
.listBlock .listBox .etc {
	border: none;
	text-align: right;
	color: #D37D29;
}
.listBlock .listBox .etc::before {
	content: none;
}
.listBlock .listBox.threeRows li {
	width: 304px;
}
.listBlock .listBox.fourRows li {
	width: 221px;
}
@media screen and (max-width:768px) {
	.listBlock .listBox ul {
		display: block;
		padding: 5px 10px 15px;
	}
	.listBlock .listBox.threeRows li {
		width: 100%;
	}
	.listBlock .listBox.fourRows li {
		width: 100%;
	}
	.listBlock .listBox .etc {
		bottom: 18px;
		right: 15px;
	}
}


/*============================================================*/
/* footer
/*============================================================*/
#footer {
	margin-top: 60px;
    font-size: 1.4rem;
    line-height: 1;
}
#footer .inr {
    width: 1000px;
    margin: 0 auto;
    padding: 30px 0;
}
@media screen and (max-width:768px) {
	#footer {
		margin-top: 30px;
	}
    #footer .inr {
        width: 100%;
        padding: 15px;
    }
}

/* .bannerArea
----------------------------------*/
#footer .bannerArea {
	background-color: #f2f2f2;
	text-align: center;
}

/* .bannerArea
----------------------------------*/
#footer .operationArea {
	background-color: #FCF1EB;
}
#footer .operationArea .inr {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media screen and (max-width:768px) {
	#footer .operationArea .inr {
		display: block;
	}
}

/* .companyInfo
------------------*/
#footer .operationArea .companyInfo li:nth-child(1) {
	margin-left: -8px;
	font-weight: bold;
	font-size: 1.6rem;
}
#footer .operationArea .companyInfo li:nth-child(2) {
	margin-top: 6px;
}
#footer .operationArea .companyInfo li:nth-child(3) {
	margin-top: 2px;
}
@media screen and (max-width:768px) {
	#footer .operationArea .companyInfo {
		text-align: center;
	}
	#footer .operationArea .companyInfo li:nth-child(1) {
		margin-left: -6px;
		font-size: 1.2rem;
		letter-spacing: -1px;
	}
	#footer .operationArea .companyInfo li:nth-child(2),
	#footer .operationArea .companyInfo li:nth-child(3) {
		font-size: 1.2rem;
	}
}

/* .companyLogo
------------------*/
#footer .operationArea .companyLogo {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#footer .operationArea .companyLogo li:nth-child(2) {
	margin-left: 12px;
}
@media screen and (max-width:768px) {
	#footer .operationArea .companyLogo {
		margin-top: 15px;
		justify-content: center;
	}
}

/* small
----------------------------------*/
#footer small {
    display: block;
    margin: 0 auto;
    padding: 20px 40px;
    text-align: center;
    color: #fff;
    background-color: #D37D29;
}


