@charset "utf-8";

/*
=======================================
	Reset
=======================================
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    color: #222;
}

/*
=======================================
	font
=======================================
*/
@font-face {
    font-family: "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

body {
    font-size: 100%;
    /*14px*/
    line-height: 1.7;
    overflow-x: hidden;
    font-weight: 500;
    font-family: 'Sawarabi Gothic', sans-serif;
    overflow-y: auto;
}

h1,
h2,
h3,
h4 {
    font-family: "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

p,
dd,
a {
    font-family: '游ゴシック体', 'YuGothic', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', "Yu Gothic UI", "Yu Gothic UI Semibold", 'Sawarabi Gothic', sans-serif;
    line-height: 1.7;
}

ul,
ol,
dt {
    list-style-type: none;
    font-family: "游明朝", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

img,
input,
select,
textarea {
    vertical-align: middle;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    transition: 0.5s all;
}

a:hover {
    text-decoration: none;
}

.container {
    max-width: 1024px;
}

/*.dropdown:hover .dropdown-menu {
    display: block;
}*/
h2 {
    margin-bottom: 24px;
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0.2rem;
}

h2 span {
    color: #5B8C06;
}

h2 .span2 {
    text-align: center;
    font-size: 50%;
    color: #d4af82;
    font-style: italic;
    letter-spacing: 0.75;
}

h3 {
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 1.5;
}

h4 {
	font-size: 15px;
	color: #342a0a;
	font-weight: 700;
}
h5 {
	font-size: 14px;
	color: #342a0a;
	font-weight: 700;
}


h2.under:after {
    content: '';
    display: block;
    background: #ffc107;
    height: 2px;
    border-radius: 2px;
    width: 80px;
    margin: 5px auto 20px auto;
}

h2.under_white:after {
    content: '';
    display: block;
    background: #ffffff;
    height: 2px;
    border-radius: 2px;
    width: 80px;
    margin: 5px auto 20px auto;
}

h2.lead {
    font-size: 20px;
/*    font-weight: bold;*/
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: 8px;
    margin: -0.3rem 0 0 0;
    font-size: 1rem;
    text-align: left;
    background-clip: padding-box;
    border: none;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: 0 0.7rem 0 0.7rem;
    clear: both;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    font-size: 14px;
    border-bottom: 1px dotted #fbebc7;
    line-height: 200%;
}

/*
 Off Canvas
-------------------------------------------------- */
@media screen and (max-width: 991px) {
    .inner {
        width: 100%;
    }

    .offcanvas {
        position: relative;
        min-height: 100%;
        -webkit-transition: all .25s ease-out;
        -o-transition: all .25s ease-out;
        transition: all .25s ease-out;
    }

    .offcanvas-right {
        right: 0;
    }

    .offcanvas-right.active {
        right: 300px;
    }

    .offcanvas-right .sidebar-offcanvas {
        right: -100%;
        -webkit-transition: all .25s ease-out;
        -o-transition: all .25s ease-out;
        transition: all .25s ease-out;
    }

    .offcanvas-right.active .sidebar-offcanvas {
        right: 0;
        border-left: 1px solid #e7e7e7;
    }

    .sidebar-offcanvas {
        position: fixed;
        top: 0;
        bottom: 0;
        width: 300px;
        padding: 60px 15px 15px;
        background-color: #f8f8f8;
        border-radius: 0;
        overflow-y: auto;
        z-index: 1050;
    }

    .sidebar-offcanvas .dropdown-menu {
        border: medium none;
        background: none;
        border-radius: 0;
        box-shadow: none;
        float: none;
        margin: 0;
        padding-top: 0;
        position: static;
    }

    .navbar-toggler {
        z-index: 1060;
    }
}

/*
=========================================
	グローバルメニュー
=========================================
*/
.gmenu-container {
    width: 1024px;
    margin: 0 auto;
}

.dropdown:hover .dropdown-menu {
    display: block;
}

#gnav {
    line-height: 4rem;
    letter-spacing: 0.1rem;
    margin-left: 48px;
    text-align: center;
    font-size: 14px;
    justify-content: center;
}

#gnav a {
    color: #342a0a;
    font-weight: 600;
}

#gnav a:hover {
    color: #5B8C06;
    text-decoration: underline;
}

/*
=========================================
　　プルダウンメガメニュー
=========================================
*/
.mega-menu {
    position: static;
}

.mega-menu .dropdown-menu {
    width: 100%;
}

.dropdown-hover .dropdown-menu {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
}

.dropdown-hover:hover .dropdown-menu {
    max-height: 500px;
    opacity: 1;
}

.mega-menu-box {
    width: 100%;
    margin: 10px 0;
    clear: both;
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    font-size: 16px;
    line-height: 200%;
}

#mmenu {
    background-color: rgba(72, 57, 9, 0.60);
}

#mmenu a {
    background-color: rgba(72, 57, 9, 1.00);
    color: rgba(255, 255, 255, 1.00);
    padding: 8px 16px;
    display: block;
}

#mmenu a:hover {
    background-image: linear-gradient(90deg, #5B8C06 0 10px, rgba(255, 255, 255, 0.90) 10px 100%);
    color: #483909;
    text-decoration: none;
}

/*
=========================================
	ブログ
=========================================
*/

div.side-blog a {
    color: #342a0a;
    font-weight: 600;
}

div.side-blog a:hover {
    color: #f29855;
    text-decoration: underline;
}

/*
=========================================
	ヘッダー
=========================================
*/
#top-header p,
#top-header a {
line-height: 1.2;
}

.header-container {
    width: 1024px;
    color: #fff;
    text-align: left;
    margin: 0 auto;
    box-sizing: border-box;
}

.header-container a {
    color: #fff;
}

.header-container ul li.header_home a {
    color: #cc6666;
}

h1.site-title {
    width: 100%;
    margin: 20px;
    padding: 0;
}

#top-header .btn-group-sm > .btn,
.btn-sm {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: .6rem;
}

@media screen and (max-width: 991px) {}

.header-catch {
    background: #fabe00;
    padding: 0.3em 1em;
    color: #fff;
    line-height: 1.4em;
    font-size: 0.9em;
    margin-top: 2em;
    border-radius: 10px;
}

#sp-gnav .col-4 {
    padding: 0;
}

/* ヘッダー（SP用）
------------------------------------*/
#sp-head {
    padding: 10px;
    width: 100%;
    background: #fff;
    display: table;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.sp-head-tit {
    display: table-cell;
    vertical-align: middle;
}

.sp-head-sholder {
    font-size: 6px;
}

.sp-head-btn {
    display: table-cell;
    vertical-align: middle;
    text-align: right;
}

.sp-head-btn li {
    display: inline-block;
}

#sp-toggle {
    cursor: pointer;
}

/* フッター（PC用）
------------------------------------*/
#footer p,
a {
    color: rgba(255, 255, 255, 1.00);
}

#footer a:hover {
    color: #f29855;
    text-decoration: underline;
}

@media screen and (max-width: 576px) {
    #footer p {
        font-size: 12px;
    }

    #footer small {
        font-size: 12px;
    }
}

/*
=========================================
	Contents Layout
=========================================
*/
/* 2ndページ　タイトル
------------------------------------*/
.page-header {
    margin-top: 80px;
    margin-bottom: 70px;
    text-align: center;
}

.page-header .container {
    position: relative;
}

.page-title {
    margin: 0 auto 20px;
    padding: 0 10px;
    max-width: 940px;
    font-size: 26px;
    line-height: 150%;
}

.page-caption {
    margin: 0 auto 30px;
    padding: 0 10px;
    max-width: 940px;
}

.page-header .btn-trial {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
}

/* 2ndページ　セクション間隔
------------------------------------*/
.section {
    margin-bottom: 100px;
}

.section p + p {
    margin-top: 30px;
}

/* リンクスタイル
---------------------------------*/
/*行頭ブレット矢印*/
.bullet-arw:before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 11px;
    margin-right: 5px;
    background: url(/common/img/ico_arw.png) no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
    vertical-align: middle;
}

.bullet-arw {
    text-indent: -11px;
    margin-left: 16px;
}

/*箇条書き：ナンバリング*/
.list-decimal {
    list-style: decimal;
    margin-left: 20px;
}

.list-decimal li {
    margin-bottom: 0.8rem;
}

/*箇条書き：点*/
.list-disc {
    list-style: disc;
    margin-left: 20px;
    margin-bottom: 20px;
}

.list-disc li {
    margin-bottom: 0;
}

/* セクションタイトル周り
---------------------------------*/
.sec {
    padding: 40px 0;
}

/*
.sec {
	padding: 72px 0;
}

@media screen and (max-width: 991px) {
    .sec {
        padding: 36px 0;
    }
}
*/

/* 箇条書き（行頭インデント）
---------------------------------*/
.idt-list li {
    margin-left: 1em;
    text-indent: -1em;
}

/*
=========================================
	setting
=========================================
*/
small {
    font-size: 60%;
    font-weight: 400;
}

/**************************************************************

* 共通　*

***************************************************************/

strong,
.bold {font-weight: bold;}


.display-4{font-weight: 100;}
.display-5{font-size: 3rem;
	line-height: 3rem;}


.display-5 {
	font-weight: 300;
	line-height: 1;
}

.display-6 {
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0.1rem;
}


.display-7 {
	font-size: 1.5rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0.1rem;
}

.display-8 {
	font-size: 1.25rem;
	font-weight: 300;
	line-height: 1;

}


@media screen and (max-width: 575px) {

	.display-5{font-size: 2.5rem;
		line-height: 2.5rem;
		font-weight: 300;
		line-height: 1;
	}


	.display-6 {
		font-size: 1.5rem;
		font-weight: 300;
		line-height: 1;
		letter-spacing: 0.1rem;
	}


	.display-7 {
		font-size: 1.3rem;
		font-weight: 300;
		line-height: 1;

	}

	.display-8 {
		font-size: 1.2rem;
		font-weight: 300;
		line-height: 1;

	}

}

/* フォントカラー
---------------------------------*/
.te-w {color: #fff;}
.text-gray {color: #848383;}
.te-bro {color: #342a0a;}
.text-bro2 {color: #c6911a;}
.text-orange {color: #f29855;}
.text-beige {color: #766630;}
.text-gold {color:#997A45;}
.text-dark{color: #666!important;}
.text-warning {color: rgba(245,123,17,1.00);}
.text-brown{color: #483909;}
.text-gray{color:#b3b3b3;}
.text-pink{color: #EC6E88;}
.text-pink2{color: #f7c7dc;}
.text-orange3{color: #FFFFFF;}
.text-orange4{color: #f7931d;}
.text-green{color: #5B8C06;}

/* 背景色
---------------------------------*/
.bg-lbl {background-color: #f1faf9;}
.bg-gy {background-color: #f7f8f8;}
.bg-wh {background-color: #fff;}
.bg-beige {background-color: #D2C7AD;}
.bg-beige2 {background-color: #d5bf8d;}
.bg-brown {background-color: #47352e;}
.bg-brown2 {background-color: #c6911a;}
.bg-brown3 {background-color: #a8915d;}
.bg-brown4 {background-color: #e0d2c1;}
.bg-brown5 {background-color: #47352e;}
.bg-orange {color: #f29855;}
.bg-yellow{background:#fcf4e5;}
.bg-gray{background: #999;}
.bg-rgray{background:#CAC7C7;}
.bg-black{background:#000;}
.bg-pink2{background: #fff7fb;}
.bg-pink4{background: #f7f1f4;}
.bg-pink{background: #F9D6E5;}
.bg-pink3{background: #EC6E88;}
.bg-orange2{background: #f39800;}
.bg-orange3 {background: #f7a74a;}
.bg-orange4 {background: #debe73;}
.bg-orange5 {background: #cf5b3a;}
.bg-sw{background: rgba(255, 255, 255, 0.5)}
.bg-green{background: #98dcd6;}
.bg-green2{background: #a8c274;}
.bg-green3{background: #80bc09;}

/* ボーダー・バターン
---------------------------------*/
.border-yw {border: 2px solid #ffde2a;}
.border-bro {border: solid 5px #483909;}
.border-bottom {border-bottom: 1px solid #333;}
.d-border-bottom {border-bottom: 1px dotted #333;}
.border-bottom-f {border-bottom: 1px solid #6d6c6c;}
.border-bottom-g {border-bottom: 1px solid #997A45;}
.border-bottom-dark {border-bottom: 1px solid #333;}

.rounded{ border-radius: .5rem!important;}
.marker {
	background: linear-gradient(transparent 60%, #FFF799 60%);
}
.border-bottom-l {
	background: linear-gradient(transparent 75%, #FFF799 75%);
}

/* フォントサイズ（固定）
---------------------------------*/
.f10 {
    font-size: 10px !important;
}

.f11 {
    font-size: 11px !important;
}

.f12 {
    font-size: 12px !important;
}

.f13 {
    font-size: 13px !important;
}

.f14 {
    font-size: 14px !important;
}

.f15 {
	font-size: 15px !important;
}

.f16 {
    font-size: 16px !important;
}

.f17 {
	font-size: 17px !important;
}

.f18 {
    font-size: 18px !important;
}

.f19 {
	font-size: 19px !important;
}

.f20 {
    font-size: 20px !important;
}

.f21 {
	font-size: 21px !important;
}

.f22 {
    font-size: 22px !important;
}

.f23 {
    font-size: 23px !important;
}

.f24 {
	font-size: 24px !important;
}

.f26 {
    font-size: 26px !important;
}

.f28 {
    font-size: 28px !important;
}

.f30 {
    font-size: 30px !important;
}

.f31 {
    font-size: 31px !important;
}

.f32 {
    font-size: 32px !important;
}

.f35 {
    font-size: 35px !important;
    line-height: 35px;
}

.f36 {
    font-size: 36px !important;
}

.f37 {
    font-size: 37px !important;
}

.f38 {
    font-size: 38px !important;
}

.f39 {
    font-size: 39px !important;
}

.f40 {
    font-size: 40px !important;
}

/* マージン
---------------------------------*/
.mb0 {
    margin-bottom: 0 !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb35 {
    margin-bottom: 35px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb45 {
    margin-bottom: 45px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.mb120 {
    margin-bottom: 120px !important;
}

/* 可変横幅
---------------------------------*/
.w-10 {
    width: 10%;
}

.w-20 {
    width: 20%;
}

.w-30 {
    width: 30%;
}

.w-40 {
    width: 40%;
}

.w-50 {
    width: 50%;
}

.w-60 {
    width: 60%;
}

.w-70 {
    width: 70%;
}

.w-80 {
    width: 80%;
}

.w-90 {
    width: 90%;
}

.w-100 {
    width: 100%;
}

/* 左右行揃え
---------------------------------*/
.ta-l {
    text-align: left;
}

.ta-r {
    text-align: right;
}

.ta-c {
    text-align: center;
}

/* フロート／フロート解除
---------------------------------*/
.fl {
    float: left;
}

.fr {
    float: right;
}

.fl-img {
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}

.fr-img {
    float: right;
    margin-left: 10px;
    margin-bottom: 10px;
}

.clear {
    clear: both;
	margin-bottom: 2rem;
}

/* clearfix */
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.clearfix {
    zoom: 1;
}

/* 操作調整 */
html {
    -webkit-overflow-scrolling: touch;
}

/***-----------------------------------
pcとspでの表示非表示
-----------------------------------***/
.pc,
.pc_inline_block {
	display: none;
}

@media (min-width: 768px) {
	.pc {
		display: block;
	}

	.pc_inline_block {
		display: inline-block;
	}
}

.sp {
	display: block;
}

.sp_inline_block {
	display: inline-block;
}

@media (min-width: 768px) {

	.sp,
	.sp_inline_block {
		display: none;
	}
}

.hidden {
	display: none;
}
