body {
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    width:100%;
    min-height: 100vh;
	margin: 0px;
	padding: 0px;
    background-color: #FFFFFF;
	font-size: 16px;
	font-family: 
        /*英数字*/
        "Arimo",/*Google fonts 英数字*/
        "Helvetica Neue",/*macOS Helveticaの再設計版*/
        Helvetica,/*macOS*/
        Arial,/*macOS,windowsOS共通*/
        /*日本語*/
        "Noto Sans JP",/*Google fonts 英数字、日本語*/
        /*"Zen Kaku Gothic New",Google fonts 英数字、日本語*/
        "Hiragino Sans",/*macOS 10.11以降、iOS*/
        "Hiragino Kaku Gothic ProN",/*古いmacOS*/
        Meiryo,/*windowsOS*/
        sans-serif;/*標準のゴシック体*/
    line-height: 2;
    box-sizing: border-box;
}



/*■フォント関連*/
body, h1, h2, h3, h4, h5, h6, a {
  font-family: "Noto Sans JP", sans-serif;
}

h1 {
  color: #333333;
  font-size: 36px;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.3;
}

h2 {
  color: #333333;
  font-size: 36px;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.3;
}

h3 {
  color: #333333;
  font-size: 24px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4;
}

h4 {
  color: #333333;
  font-size: 20px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.45;
}

h5 {
  color: #333333;
  font-size: 18px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}

h6 {
  color: #333333;
  font-size: 16px;
  font-weight: 600;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
}

p {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 2;
}

a {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
  text-decoration: none;
}

a:hover {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
}

/*トップエリア関連*/
#top {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 1030;
    margin: 0px;
    padding: 0px;
    background-color:#FFFFFF;
}

/*メインエリア関連*/
#main {
    flex:1;
}

/*ボトムエリア関連*/
#bottom {
    margin-top:auto;
}

/*スライドエリア関連*/
#slide {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    overflow-y:auto;
    background: rgba( 145, 174, 63, 0.95 );
    transform: translateX(100%);
    transition: transform .3s ease;
    z-index: 1150;
    max-width: 50%; /*■追加*/
    width: 50%; /*■追加*/
    font-family:Noto Sans JP, sans-serif; /*■追加*/
}
#slide.is-open {
    box-shadow: -2px 0 8px rgba(0, 0, 0, .15);
}
#slide .slide-menu-container {
    height: 100vh;
    overflow-y: auto;
}

/*イメージ表示用モーダル関連*/
#image.modal .modal-header {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 100;
    border-bottom: 0px;
    border-radius: 0px;
}
#image.modal .modal-body {
    padding: 50px 15px; 
}
#image.modal .modal-body .image {
    display: block; 
    width: 100%;
}
#image.modal .modal-header .modal-title {
    margin-right: auto;
    font-size: 16px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#image.modal .modal-body .image img, 
#image.modal .modal-body .image video {
    max-width: 100%;
    max-height: 100%;
    display: block;
    object-fit: cover;
    margin: auto;
}
#image.modal .slider-gallery-list-outer .swiper-slide img,
#image.modal .slider-gallery-list-outer .swiper-slide video {
    display: block;
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    object-fit: cover;
}
#image  .caption {
    display: block;
    padding: 15px;
}
#image .caption-heading {
    margin-bottom: 10px;
    font-size: 20px;
}

/*スライドメニューボタン*/
.slide-menu-btn {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0px; /*■15px*/
    right: 0px; /*■15px*/
    width: 90px;
    height: 90px;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1100;
    /*background-color: ;*/
    font-size: 24px;
    font-weight: normal;
    border-radius: 0px; /*■20px*/
    color: #ffffff;
}
.slide-menu-close {
    position: absolute;
    top: 15px;
    right: 15px; /*■15px*/
    z-index: 9999;
    background: none;
    border: none;
    font-size: 30px; /*■24px*/
    cursor: pointer;
    color: #ffffff;
}

/*セクション関連*/
.section {
    padding-top: 0px;
    padding-bottom: 30px;
}
#top .section {
    padding: 0px;
}

/*モジュール関連*/
.module,
.module-detail {
    padding: 0px;
    margin-bottom: 15px;
}
.module-detail {
    padding-bottom: 30px;
}
.module .content,
.moddule-detail .content-detail {
    padding: 0px; /*■変更 7px*/
}
.module .module-inner-col-1,
.module-detail .module-inner-col-1 {
    padding-right: 10px;
}
.module .module-inner-col-2,
.module-detail .module-inner-col-2 {
    padding-left: 10px;
}
.module .list-content .heading > :where(h1, h2, h3, h4),
.module .list-content .heading  > a > :where(h1, h2, h3, h4),
.module .slide-content .heading > :where(h1, h2, h3, h4),
.module .slide-content .heading > a > :where(h1, h2, h3, h4) {
    font-size: 18px
}
.module .list-content .subheading > :where(h1, h2, h3, h4),
.module .slide-content .subheading > :where(h1, h2, h3, h4) {
    font-size: 16px
}
.module .content-inner .column-1 {
    padding-right: 10px;
}
.module .content-inner .column-2 {
    padding-left: 10px;
}
.module .title,
.module .date,
.module-detail .date-detail,
.module .heading,
.module-detail .heading-detail,
.module .subheading,
.module-detail .subheading-detail,
.module .lead,
.module .text,
.module-detail .text-detail,
.module .image-list,
.module-detail .image-list-detail,
.module .image,
.module-detail .image-detail,
.module .button-list,
.module-detail .button-list-detail,
.module-detail .detail-heading,
.module-detail .detail-subheading,
.module-detail .detail-text,
.module .embed {
    margin-bottom: 0px; /*■10px*/
}



/*ナビゲーション関連*/
.module .nav-item .nav-links {
    padding-left: 0px;
}
.module .nav-menu .page-links {
    margin-bottom: 10px;
    padding-left: 15px;

}
.module .nav-menu .subcategory-links {
    padding-left: 15px;
}

/*モジュール内 カテゴリ関連*/
.module .category-heading,
.module-detail .category-heading,
.module .category-menu,
.module-detail .category-menu {
    padding: 7px;
}
.module .category-tabs-menu,
.module-detail .category-tabs-menu {
    margin-bottom: 10px;
}
.module .category-heading h5,
.module-detail .category-heading h5 {
    font-size: 18px;
}
.module .category-menu > li > a,
.module-detail .category-menu > li > a {
    line-height: 1.8;
}

/*タイトル関連*/
.module .title {
    margin-top: 10px;
}

/*日付関連*/
.module .date,
.module-detail .date-detail {
    padding-left: 7px;
    padding-right: 7px;
}

/*優先表示関連*/
.module span.label-new,
.module-detail span.label-new,
.module span.label-check,
.module-detail span.label-check {
    margin-left: 7px;
    padding-left: 5px;
    padding-right: 5px;
    border-radius: 2px;
    font-size: 12px;
}

/*見出し関連*/
.module .heading,
.module-detail .heading-detai {
    margin-top: 10px;
}
.module-detail .detail-heading {
    margin-top: 30px;
}

 /*テキスト関連*/
.module .text.cell {
    margin-top: 0px;
    margin-bottom: 0px;
}
.module .lead p,
.module-detail .lead-detail p,
.module .text p,
.module-detail .text-detail p,
.module-detail .detail-text p{
    margin-bottom: 10px;
    line-height:2;
    text-align :justify;
}

/*イメージ関連*/
.module .image,
.module-detail .image-detail {
    padding: 0px; /*■変更 2px*/
}
.module .image-list > .image,
.module-detail .image-list-detail > .image-detail {
    padding: 0px; /*■変更 2px*/
    margin-bottom: 0px;
}
.module .image.pull-left,
.module-detail .image-detail.pull-left {
  padding-right: 15px;
}
.module .image.pull-right,
.module-detail .image-detail.pull-right {
  padding-left: 15px;
}
.module .image img,
.module-detail .image-detail img {
    width: 100%;
    margin: auto;
    object-fit: cover;
}
.module .image video,
.module-detail .image-detail video {
    width: 100%;
    margin: auto;
    object-fit: cover;
    aspect-ratio: 16 / 9;
}
.module .brand img {
    width: auto;
    object-fit: contain;
}

/*キャプション関連*/
.module .caption,
.module .caption-gallery,
.module-detail .caption-detail {
    position: absolute;
    bottom: 0px;
    padding: 7px;
    color:#FFFFFF;
}
.module .caption-heading p,
.module .caption-gallery-heading p,
.module-detail .caption-detail-heading p,
.module-detail .caption-gallery-detail-heading p {
    font-size: 18px;
}
.module .caption p,
.module-detail .caption-detail p,
.module .caption-gallery p,
.module-detail .caption-gallery-detail p {
    font-size: 14px;
}

/*ボタン関連*/
.module .button-list,
.module-detail .button-list-detail {
    display: flex;
    padding: 7px; /*ここを0にするとフォームのボタンがくずれる*/
    margin-top:40px;
    flex-wrap: wrap;
    justify-content: center;
}
.module .button,
.module-detail .button-detail {
    display: flex;
    padding: 0px;
}
.module .button  a,
.module .button-to-modal  a,
.module-detail .button-detail  a {
    display: flex;
    width: 100%;
    padding: 30px 15px; /*■7px 15px*/
    align-items: center;
    justify-content: center;
    
    background-color: transparent; /*■追加*/
    
	background-image:url("../assets/img/1/icon_arrow.png");
	background-size:10px;
	background-position:90% center;
	background-repeat: no-repeat;

	border-width: 1px; /*■追加*/
    border-style: solid; /*■追加*/
    border-color: #91ae3f; /*■追加*/
    border-radius : 0px; /*■追加*/
    color: #91ae3f !important; /*■追加*/
    font-size: 18px; /*■追加*/
    font-weight: 500; /*■追加*/
    font-family : Noto Sans JP, sans-serif; /*■追加*/
    letter-spacing: 0.05em;/*■追加*/
    line-height: 1.5;/*■追加*/


}

/*リンク関連*/
.module .link-list,
.module-detail .link-list-detail {
    list-style: none;
}
.module .link-to-detail {
    padding: 7px;
    text-align: center;
}
.module-detail .link-to-back {
    padding: 15px;
    text-align: center;
}

/*タグ関連*/
.module .tag-list,
.module-detail .tag-list-detail {
  display: flex;
  flex-wrap: wrap;
  padding: 7px;
}
.module .tag-item,
.module-detail .tag-item-detail {
  padding: 5px;
}
.module .tag > a {
    margin: 7px;
}
.module .tag-item > span {
    padding: 2px 5px;
    border: 1px solid;
    border-radius: 3px;
    font-size: 14px;
}

/*画像スライダー関連*/
.module .swiper-scrollbar {
    display:none !important;
}
.module .slider-gallery,
.module .slider-gallery-detail {
    margin-bottom: 10px;
}
.module .slide-gallery img,
.module .slide-gallery-detail img {
    width: 100%;
    object-fit: cover;
}
.module .slide-gallery video,
.module .slide-gallery-detail video {
    width: 100%;
    object-fit: cover;
}
.module .caption-gallery,
.module-detail .caption-gallery-detail {
    position: absolute;
    bottom: 0px;
    padding: 7px;
    color:#ffffff;
}
.module .slider-gallery-nav {
    color:  #ffffff;
}
.module .gallery-thumb-list-outer {
    margin-bottom: 10px;
    padding-left: 40px;
    padding-right: 40px;
}

/*コンテンツスライダー関連*/
.module .slider-content-nav > i {
    font-size: 24px;
}
.module .slider-content-pagination span {
     background-color: #cccccc;
}
.module .slider-content-pagination span.active {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #cccccccc;
    background-color: #aaaaaa;
}

/*検索関連*/
.module .search-form {
    margin-bottom: 15px;
}
.module .search-form-inner {
    display: flex;
}
.module .search-item {
    width: 100%;
}
.module .search-btn {
    width: 100%;
}
.module .search-item-dropdown {
    width: 100%;
}
.module .search-item-option-list {
    display: flex;
    flex-wrap: wrap;
}
.module .search-item-option {
    padding: 7px;
}
.module .search-item-close {
    position: absolute;
    top: 10px;
    right: 15px;
    text-align: right;
}
.module .search-item-footer {
    display: flex;
    justify-content: center;
    padding-top: 15px;
    padding-bottom: 15px;
}
.module .search-item-reset {
    padding-right: 7px;
}
.module .search-item-search {
    padding-left: 7px;
}
.module .search-item-save {
    padding-left: 7px;
}
.module .search-condition {
    display: flex;
    padding: 7px;
    border-radius: 4px;
    padding-left: 15px;
    margin-bottom: 20px;
}
.module .search-condition-body {
    padding: 15px;
}
.search-condition-cancel {
    margin-left: auto;
}
.module .search-result {
    width: 100%;
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 30px;
}
.module .search-item > button {
    width: 100%;
}
.module .search-item-option > label {
    font-size: 14px;
    font-weight: normal;
}
.module .search-condition-body > span {
    margin-right: 7px;
    padding: 2px 5px;
    border: 1px solid;
    border-radius: 3px;
    font-size: 14px;
}

/*番号アイコン関連*/
.numbered > :first-child::before {
    background-color: #464646;
   	color: #FFFFFF;
}

@media screen and (min-width: 768px) {
    body {
        font-size: 16px;
        line-height: 1.5;
        word-break: break-all;
        padding-top: 80px;
    }
    h1 {
        font-size: 36px;
        font-weight: 500;
        line-height: 1.5;
    }
    h2 {
        font-size: 32px;
        font-weight: 500;
        line-height: 1.5;
    }
    h3 {
        font-size: 28px;
    	font-weight: 500;
    	line-height: 1.5;
    }
    h4 {
        font-size: 24px;
    	font-weight: 500;
    	line-height: 1.5;
    }
    h5 {
        font-size: 20px;
        font-weight: 500;
    	line-height: 1.5;
    }
    p {
        font-size: 16px;
        line-height: 1.8;
    }
    
    /*スライドエリア関連8*/
    #slide {
        min-width: 400px;
        max-width: 40%;
    }
    
    /*ボタン関連*/
    .module .button,
    .module-detail .button-detail {
        min-width: 33.3%;
    }

    /*検索関連*/
    .module .search-item {
        padding: 7px;
    }
    .module .search-btn-outer {
        margin-left: auto;
        padding: 7px;
    }
    .module .search-item-dropdown {
        padding: 7px;
    }
    .module .search-result-message {
        flex:1;
    }
    .module .list-sort {
        padding-right: 15px;
    }
    .module .list-view {
        padding-left: 15px;
    }
    .module .search-btn > span.search-btn-icon {
        margin-right: 7px;
    }
    .module .search-item-close > i {
        font-size: 16px;
    }
    .module .search-result-message span.result-count {
        font-size: 32px;
        margin-right: 5px;
        line-height: 1;
    }
}

/*■リストのスタイル　点*/
ul li::marker {
  color: #91ae3f;
  font-size: 1.2em;
}

@media screen and (max-width: 767px) {
    body {
        font-size: 16px;
        line-height: 1.5;
        word-break: break-all;
        padding-top: 50px;
    }
    
    h1 {
        font-size: 24px;
        font-weight: 500;
        line-height: 1.5;
    }
    h2 {
        font-size: 24px;
        font-weight: 500;
        line-height: 1.5;
    }
    h3 {
        font-size: 20px;
        font-weight: 500;
        line-height: 1.5;
 	}
    h4 {
        font-size: 18px;
        font-weight: 500;
        line-height: 1.5;
    }
    h5 {
        font-size: 16px;
        font-weight: 500;
        line-height: 1.5;
    }
    
    p {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.8;
}
    
    /*スライドエリア関連8*/
    #slide {
        width: 100%;
        max-width: 100%; /*■追加*/
    }

    /*モジュール関連*/
    .module .module-inner-col-1,
    .module-detail .module-inner-col-1 {
        padding-right: 0px;
    }
    .module .module-inner-col-2,
    .module-detail .module-inner-col-2 {
        padding-left: 0px;
    }
    .module .content-inner .column-1,
    .module .content-inner .column-2 {
        padding-left: 0px;
        padding-right: 0px;
    }

    /*見出し関連*/
    .module .list-content .heading > :where(h1, h2, h3, h4),
    .module .slide-content .heading > :where(h1, h2, h3, h4) {
        font-size: 18px
    }
    .module .list-content .subheading > :where(h1, h2, h3, h4),
    .module .slide-content .subheading > :where(h1, h2, h3, h4) {
        font-size: 16px
    }
    
    /*スライドメニュー関連*/
    .slide-menu-btn {
        top: 0px; /*■10px*/
        right: 0px; /*■15px*/
        width: 50px; /*■30px*/
        height: 50px; /*■30px*/
        font-size: 16px;
        border-radius: 0px; /*■15px*/
    }
    
    /*ボタン関連*/
    .module .button,
    .module-detail .button-detail {
        min-width: 100%;
    }

    /*■スマホ用ボタン*/
    .module .button  a,
	.module .button-to-modal  a,
	.module-detail .button-detail  a {
	    display: flex;
	    width: 100%;
	    padding: 10px 10px; /*■7px 15px*/
	    align-items: center;
	    justify-content: center;
  	  
	    background-color: transparent; /*■追加*/
		background-image:url("../assets/img/1/icon_arrow.png");
		background-size:6px;
		background-position:95% center;
		background-repeat: no-repeat;
	    border-width: 1px; /*■追加*/
	    border-style: solid; /*■追加*/
	    border-color: #91ae3f; /*■追加*/
	    border-radius : 0px; /*■追加*/
	    color: #91ae3f !important; /*■追加*/
	    font-size: 16px; /*■追加*/
 	    font-weight: 500; /*■追加*/
	    font-family : Noto Sans JP, sans-serif; /*■追加*/
	    letter-spacing: 0.05em;/*■追加*/
	    line-height: 1.5;/*■追加*/

	    }

    
    /*コンテンツスライダー関連*/
    .module .slider-content-nav > i {
        font-size:20px;
    }

    /*検索関連*/
    .module .search-form-inner {
        flex-wrap: wrap;
        padding-left: 7px;
        padding-right: 7px;
    }
    .module .search-item {
        padding-top: 7px;
        padding-bottom: 7px;
    }
    .module .search-btn-outer {
        width: 100%;
        padding-top: 7px;
        padding-bottom: 7px;
    }
    .module .search-item-dropdown {
        padding-top: 7px;
        padding-bottom: 7px;
    }
    .module .search-result {
        margin-bottom: 10px;
    }
    .module .search-result-message {
        width: 100%;
        padding-top: 7px;
        padding-bottom: 15px;
    }
    .module .list-sort {
        margin-left: auto;
        padding-right: 7px;
    }
    .module .search-btn > span.search-btn-icon {
        margin-right: 5px;
    }
    .module .search-result-message span.result-count {
        font-weight: 700;
        margin-right: 5px;
        font-size: 18px;
        line-height: 1;
    }
    .module .search-result-message span.result-text {
        line-height: 1;
    }

}