@charset "UTF-8";

/*共通ツール*/
html {
    font-size: 18px;
}
a{
outline: none;
text-decoration:none;
color:#707070;
transition: .3s all;
box-sizing: border-box;
}
.home a{
    color:#000000;
}
a:hover,a.link_b01:hover,#footer_menu .flex_box a:hover,#model_course2 .flex_box li a:hover h4,
.list_wrap a:hover,#model_course2 .center_text a:hover,#faq #wrap h3,
#right_credit a:hover,a:hover .under_line {
    color: #417b25;
}
.sec07 .flex_box a:hover {
    color: #fff;
}
a:focus{
outline: none;
}
.sec10 .flex_box li img,.blog_slider li img,
.banner img,#model_course2 .flex_box li {
    transition: 0.3s all;
}
a.link_b01 {
    width: fit-content;
    margin: 0 auto;
    text-align: center;
    display: block;
    text-decoration: underline 1px;
    text-underline-offset: 4px;
}
a.link_b02 {
    display: block;
    width: 300px;
    max-width: 100%;
    height: fit-content;
    text-align: center;
    padding: 12px 24px;
    color: #fff;
    background-color: #417b25;
    margin: 12px;
}
.category-activities-details a.link_b02,.category-activities-details .btn.box,#wpcf7-f4997-p4998-o1 {
    margin: 60px auto;
}

.category-activities-details .btn.box a.link_b02 {
    margin: 12px;
}
a.link_b03 {
    color: #417b25;
    border: 1px solid #417b25;
    padding: 6px;
    box-sizing: border-box;
    width: fit-content;
    width: 300px;
    max-width: 100%;
    display: block;
    margin: 1rem auto;
}
a.link_b03:hover {
    color: #fff;
    background-color: #417b25;
}
.deco_wrap a.link_b02 {
    width: 100%;
    margin: 36px 0;
}
a.entry_btn {
    display: block;
    margin: 24px auto 6px;
    padding: 6px 0 6px 18px;
    line-height: 1.8em;
    font-size: 0.9rem;
    transition: 0.7s;
    text-align: right;
    color: #417b25;
}
.btn.box {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

a.entry_btn:hover {
	color:#000;
}
a.link_b02:hover,
input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    background-color: #81a66f;
}
.sec10 .flex_box li img:hover,.blog_slider li img:hover,
.banner img:hover,
#model_course2 .flex_box a:hover img,#archives_whats_n .flex_box li a:hover img {
    opacity: .7;
}
a.more_link {
    text-align: right;
    display: block;
    font-size: .8rem;
    text-decoration: underline 1px;
    text-underline-offset: 2px;
}
a.more_link:hover {
    color: #417B25;
    text-decoration: unset;
    text-shadow: 1px 2px 2px #aaa;
}

address{
	font-style:normal;
}
span.c_red {
    color: #E82525;
}

.main_wrap,.new_title,ul.blog_slider,.sec01 .flex_box,.sec07 .flex_box {
    max-width: 1000px;
    width: 90%;
}
.sec01 .flex_box {
    margin: 0 auto 60px;
}
.main_wrap,ul.blog_slider,.sec07 .flex_box {
    margin: 0 auto;
}

/* ページネーション */
.navigation {
    text-align: center;
    width: fit-content;
    height: fit-content;
    margin: 120px auto;
}
span.page-numbers.current,a.page-numbers {
    padding: 2px 12px;
    border: 1px solid;
    box-sizing: border-box;
    width: fit-content;
    margin: 0px 6px;
    display: inline-block;
    transition: .3s all;
}
a.prev.page-numbers,a.next.page-numbers {
    border: unset;
    font-size: 1.2rem;
    font-weight: lighter;
    padding: 2px;
}
span.page-numbers.current:hover, a.page-numbers:hover {
    background-color: rgba(62 95 42 / 70%);
    color: #fff;
}
a.prev.page-numbers:hover ,a.next.page-numbers:hover  {
    background-color: unset;
    color: #417b25;
}

/*フレックスコンテナ*/
.flex_box{
	display:flex;
	justify-content: space-between;
	width:100%;
	margin:0 0 1% 0;
	height:auto;
	overflow:hidden;
}
.f_column {
    display: flex;
    flex-direction: column;
}

/*各列テーブル*/
ul ul, ol ul {
    list-style-type: none;
	padding:0;
}

/*各ページ共通項目*/
#main{
	width:90%;
	max-width:1000px;
	margin:0 auto;
	min-height: 50vh;
    color: #707070;
}
#home #main {
	max-width: 100%;
    width: 100%;
    color: #000;
}
h2{
	font-size:1.2em;
	line-height:1.5em;
	padding:0.5em 0;
}
h3{
	font-size:1em;
}
h4{
	font-size:0.8em;
    padding:0.5em 0;
}
img{
	width:auto;
	height:auto;
}
img.center_pic {
    display: block;
    max-width: 800px;
    width: 100%;
    margin: 60px auto 120px;
}
#main .subtitle{
    color: #707070;
    font-size: clamp(1.1rem, 3vw, 1.3rem);
    padding: 6px 0;
    margin-bottom: 12px;
}
#main p.exp{
	margin:30px 0;
}
.center_text {
    text-align: center;
    line-height: 2;
}

/*パンくず*/
div#breadcrumb{
	margin: 30px 0 60px;
}
div#breadcrumb .separate{
    padding: 0 2px;
}
div#breadcrumb a{
    display: inline-block;
	outline: none;
}
div#breadcrumb a:hover{
	color: #cd3e3e;
}
.single div#breadcrumb {
    max-width: 800px;
    margin: 30px auto 60px;
}

/*各ページヘッダイメージ*/
.img_area{
    aspect-ratio: 3 / 1;
    width: 100%;
    height: 100%;
    max-height: 420px;
    margin: 0 0 30px 0;
    position: relative;
    background-color: #ccc;
    background-image: url(../image/header_base.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
#spot_guide.img_area{
    background-image: url(../image/gs_img.png);
}
#about .img_area{
    background-image: url(../image/about_img.png);
}
#model_course2 .img_area{
    background-image: url(../image/m_c_img.png);
}
#pickup_course1 .img_area{
    background-image: url(../image/pc_img.png);
}
#faq .img_area{
    background-image: url(../image/faq_img.png);
}
#contact-form .img_area{
    background-image: url(../image/cf_img.png);
}
#general-customers-form .img_area{
    background-image: url(../image/gcf_img.png);
}
#bicycle-guide-form .img_area{
    background-image: url(../image/bgf_img.png);
}
#travel-agency-form .img_area{
    background-image: url(../image/taf_img.png);
}
#course_form .img_area{
    background-image: url(../image/mcf_img.png);
}
#english-page .img_area{
    background-image: url(../image/ep_img.png);
}
#transportation .img_area{
    background-image: url(../image/transportation_img.png);
}
.category-k-news #wrap .img_area{
    background-image: url(../image/c_kn_img.png);
}
.category-58 .category-whats-new .img_area{
    background-image: url(../image/wn_img.JPG);
}
.category-41 .category-tour-guide .img_area{
    background-image: url(../image/ctg_img.png);
}
.category-59 .category-lecture .img_area{
    background-image: url(../image/cl_img.png);
}
.category-43.category-staff-wanted .img_area{
    background-image: url(../image/csw_img.png);
}
.category-44 .category-event .img_area{
    background-image: url(../image/ce_img.png);
}
.category-45 .category-other .img_area{
    background-image: url(../image/co_img.png);
}
.category-activities-details .img_area{
    background-image: url(../image/ad_img.png);
}
.category-extra-issue .img_area,.single .category-k-news .img_area{
    background-image: url(../image/ei_img.png);
}
.category-news .img_area{
    background-image: url(../image/cn_img.png);
}
.category-douga .img_area{
    background-image: url(../image/douga_img.jpg);
}
.term-midokoro #wrap .img_area{
    background-image: url(../image/nk_img.png);
}
#世界遺産・古墳エリアコース.img_area{
    background-image: url(../image/sk_course_img.png);
}
#歴史文化・環濠エリアコース.img_area{
    background-image: url(../image/rk_course_img.png);
}
#歴史街道巡りコース.img_area{
    background-image: url(../image/rg_course_img.png);
}
#堺・深掘りコース.img_area{
    background-image: url(../image/sf_course04.jpg);
}
.img_area img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.img_area h2 {
    font-weight: normal;
    background-color: rgba(0 0 0 / 45%);
    font-size: clamp(1.1rem, 3.5vw, 2.8rem);
    padding: 2.5% 2%;
}
.img_area h2,.img_title_text {
    color: #fff;
    position: absolute;
    text-align: center;
    height: fit-content;
    max-height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    font-family: "游明朝", serif;
    box-sizing: border-box;
}
.img_title_text {
    font-size: clamp(.8rem, 3vw, 1rem);
    background-color: rgba(0 0 0 / 50%);
    padding: 2%;
    display: flex;
    flex-flow: column;
}
.img_title_text h2 {
    position: unset;
    padding: 0;
    background-color: unset;
    display: flex;
    justify-content: center;
    flex-flow: column;
}
.img_title_text p {
    max-width: 600px;
    width: 100%;
    height: auto;
    margin: 12px auto 0;
    line-height: 1.5;
    text-align: left;
}


@media screen and (max-width: 599px) {
.img_area,.img_area img {
	height:150px;
}
}

/*固定ページ　協会について　観光モデルコース*/
#about #main ul {
    margin-bottom: 60px;
}
.list_wrap li{
	padding: 12px 0;
}
.wpcf7 .list_wrap li {
    padding: 0;
}
#about #main ul li:nth-child(3) {
    margin-bottom: 36px;
}
.list_wrap,.spot_box {
    margin: 30px auto;
}
.list_wrap h3 {
    font-weight: normal;
    margin-bottom: 12px;
}
.list_wrap h6,.category-news h3 {
    font-weight: normal;
}
.list_wrap a,.under_line {
    text-decoration: underline 1px;
    text-underline-offset: 2px;
    transition: .3s all;
}
#english-page .under_line {
    color: #417b25;
    font-size: 1.1rem;
    font-weight: 800;
}
#about #main ul a,.page .center_text a{
    display: block;
}
.subpage #wrap section {
    margin: 60px auto 120px;
}
#model_course2 section .flex_box{
    flex-wrap: wrap;
}
#model_course2 section .flex_box li{
    width: 48.5%;
    margin-bottom: 30px;
}
#model_course2 .flex_box img,
#pickup_course1 .flex_box img {
    width: 100%;
    height: auto;
    display: block;
    transition: .3s all;
}
#pickup_course1 .center_text h3 {
    font-family: "游明朝", serif;
    font-size: clamp(1.2rem, 4vw, 1.945rem);
    font-weight: 500;
    margin-bottom: 12px;
}
#pickup_course1 section .flex_box li{
    width: 31.5%;
    margin: 30px auto;
    position: relative;
    overflow: hidden;
}
#pickup_course1 section .flex_box div {
    position: absolute;
    width: 100%;
    background-color: rgba(0 0 0 / 50%);
    color: #fff;
    bottom: 0;
    left: 0;
    padding: 6px;
    height: 74px;
    min-height: fit-content;
    text-decoration: underline;
    box-sizing: border-box;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
#pickup_course1 section .flex_box a:hover div {
    background-color: rgba(65 123 37 / 70%);
}
#faq #wrap li {
    margin-bottom: 36px;
    line-height: 1.8;
}

@media screen and (max-width: 768px) {
    #pickup_course1 section .flex_box {
        flex-wrap: wrap;
        margin: 30px auto;
    }
    #pickup_course1 section .flex_box li {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 18px;
    }
}

/* 投稿 */
#blog_style {
    margin: 0 auto 120px;
    width: 100%;
    max-width: 800px;
    overflow: hidden;
}
.single_post_date {
    margin: 0 0 42px;
}
.single_post_date span {
    margin-right: 12px;
}
.single-format-standard img {
    width: 100%;
}

/* フロントページ */
.sec01,.sec03,.sec05,.sec07,.sec09 {
    width: 100%;
    height: fit-content;
    padding: 72px 0 90px;
    margin: 60px auto 120px;
    box-sizing: border-box;
}
.sec01,.sec05,.sec07 {
    background-image: url(../image/back_img02.jpg);
}
.sec01,.sec05 {
    margin: 60px auto 30px;
}
.sec07 {
    margin: 30px auto;
}
.sec03,.sec09,#footer_menu {
    background-image: url(../image/back_img01.jpg);
}
.sec03,.sec04,.sec09 {
    margin: 30px auto 120px;
}
.sec03 .slick-prev:before,.sec03 .slick-next:before {
    color: #417b25;
}
.sec04 {
    background-image: url(../image/back_img03.jpg);
    background-position: center bottom;
    background-size: cover;
    width: 100%;
    height: fit-content;
    padding: 72px 0 0;
    box-sizing: border-box;
}
.sec01 h4 {
    padding: 12px 0;
    min-height: 5.7rem;
    font-size: 1.1rem;
    line-height: 1.5;
    transition: .3s all;
}
.sec01 h4:hover {
    text-decoration: underline 1px;
    text-underline-offset: 4px;
}
.cate_name {
    margin: 0 0 12px;
    padding: 4px 12px;
    min-width: 120px;
    text-align: center;
    background-color: #b1d1a1;
    color: #fff;
    font-size: .8rem;
    display: inline-block;
}
.sec01 .cate_name {
    margin: 0;
}
.single .cate_name {
    margin: 0 0 42px;
}
.update_date{
	margin: 8px 0 18px;
	color: #777;
    font-size: .845rem;
}
.sec01 .flex_box li {
	width: calc(25% - 6px);
	padding-bottom: 36px;
    background-color: rgba(255, 255, 255);
    box-shadow: 1px 5px 10px -5px #777;
    margin: 0 0 12px;
    position: relative;
}
.sec01 .flex_box li:nth-child(1):before,
#archives_whats_n .flex_box li:nth-child(1):before {
    content: 'NEW';
    position: absolute;
    font-weight: 800;
    top: 0;
    left: 0;
    color: #fff;
    background-color: #cd3e3e;
    padding: 2px 12px;
    display: inline-block;
    z-index: 1;
}
.sec01 .flex_box figure {
    aspect-ratio: 1 / 1;
}
.sec01 .flex_box img,.sec07 .flex_box li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .3s all;
}
.b_text_box {
	padding: 0 12px;
	box-sizing: border-box;
}
.blog_slider li {
	margin: 0 8px;
}
.blog_slider li img {
	aspect-ratio: 3/2;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.blog_slider h4 {
    font-size: clamp(1rem, 3vw, 1.2rem);
    margin: 0 0 18px;
    font-weight: lighter;
    transition: .3s all;
}
.blog_slider li a:hover h4 {
	text-decoration: underline 1px;
    text-underline-offset: 2px;
}
.sec04 .blog_slider h4 {
    margin: 12px 0;
    padding: 0;
    color: #fff;
}
.kanko_course {
    background-color: #cd3e3e;
    color: #fff;
    font-size: .9rem;
    padding: 2px 8px;
    width: fit-content;
    height: fit-content;
    box-sizing: border-box;
    display: inline-block;
    margin-top: 12px;
}
/* タイトルエリア */
.title_wrap {
    width: 100%;
    max-width: 2000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.title_box {
	text-align: center;
    min-width: 48%;
    max-width: 55%;
    width: 100%;
    height: fit-content;
    padding: 30px 12px;
	margin-bottom: 42px;
    box-shadow: 1px 3px 18px #aaa;
    background-color: rgba(255 255 255 / 50%);
	position: relative;
	box-sizing: border-box;
    z-index: 2;
}
.sec01 .title_box {
    margin-bottom: 108px;
}
.title_box img {
    max-width: 72px;
}
.title_wrap h3{
	font-size: clamp(1.3rem, 5vw, 2.4rem);
    text-align: center;
    border: unset;
    background: unset;
	line-height: 1.2;
    font-family: "游明朝",'Noto Serif JP', serif;
	padding: 4px 0 0;
}
.title_wrap h3 span {
    display: block;
    font-size: clamp(1rem, 5vw, 1.1rem);
    font-weight: 500;
    font-family: sans-serif;
    color: #B1D1A1;
    margin: 0 0 18px;
}
.title_img_box {
    position: relative;
    z-index: 1;
    width: 100%;
}
.sec03 .title_img_box {
	display: flex;
    justify-content: right;
    margin-right: 5%;
    max-width: 100%;
}
.title_img_box:before,
.sec07 .title_box:before {
	content: "";
    display: block;
    position: absolute;
    opacity: .4;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
}
.sec01 .title_img_box:before {
    background-image: url(../image/back_kofun.png);
	top: -20px;
    left: -40px;
	background-size: contain;
}
.sec03 .title_img_box:before {
    background-image: url(../image/hana01.png);
	bottom: 0;
    left: 0;
	background-size: cover;
}
.sec05 .title_img_box:before {
    background-image: url(../image/plants01.png);
	top: -132px;
    left: 0;
	background-size: cover;
}
.sec07 .title_box:before {
    background-image: url(../image/bird01.png);
	top: 0;
    left: 0;
    background-size: contain;
}
.sec09 .title_img_box:before {
    background-image: url(../image/flower01.png);
	top: 0;
    left: 0;
	background-size: cover;
}
img.title_img {
	display: block;
    z-index: 2;
    position: relative;
    max-width: 540px;
    object-fit: cover;
    height: 100%;
    overflow: inherit;
}
.sec07 img.title_img {
    max-width: 480px;
}
.tab_box {
    position: relative;
    width: 100%;
    background-color: #417b25;
    padding: 24px 0 0;
    box-sizing: border-box;
}
.tab_b01,.tab_b02 {
    position: absolute;
    display: inline-block;
    text-align: center;
    font-size: clamp(1rem, 3vw, 1.4rem);
    font-weight: 800;
    width: 340px;
    height: 50px;
    padding: 6px;
    border-radius: 24px 24px 0 0;
    top: -50px;
    box-sizing: border-box;
	z-index: 3;
    transition: .3s;
}
.home .tab_b01 {
	color: #417b25;
    background-color: #b1d1a1;
	left: calc(50% - 346px);
}
.home .tab_b02 {
	left: calc(50% + 6px);
	color: #fff;
    background-color: #417b25;
}
.tab_b01:hover,.tab_b02:hover {
    height: 58px;
    top: -58px;
    text-shadow: 1px 2px 3px #777;
}
.tab_b01:hover,.tab_b02:hover {
    color: #fff;
}
.tab_b02:hover {
    color: #b1d1a1;
}
.sec05 .title_img_box {
	margin-top: 60px;
    min-height: 360px;
    height: fit-content;
}
.sec05 .title_img_box img {
    position: absolute;
    width: 400px;
    max-width: 65%;
    padding: 10px;
    background: #fff;
    transition: all 0.5s;
    box-shadow: 1px 2px 12px #969696;
    box-sizing: border-box;
    aspect-ratio: 3 / 2;
}
.title_img_box img.img01 {
    top: 42px;
    left: calc(50% - 200px);
    z-index: 3;
}
.title_img_box img.img02 {
    top: -24px;
    left: 10%;
    z-index: 2;
    transform: rotate(-14deg);
}
.title_img_box img.img03 {
    top: 0;
    right: 10%;
    z-index: 1;
    transform: rotate(10deg);
}
.sec07 .flex_box li{
	width: calc(33.333% - 12px);
    background-color: #f3c036;
}
.sec07 .flex_box a {
	display: block;
}
.archive_text {
    padding: 12px 18px;
    width: 100%;
    height: fit-content;
    box-sizing: border-box;
}
.sec07 .flex_box h4 {
	font-size: clamp(1.1rem, 3vw, 1.4rem);
    text-align: center;
    padding: 0;
    margin: 0 auto 8px;
	text-decoration: underline 1px;
    text-underline-offset: 2px;
}
.sec07 .flex_box figure {
	aspect-ratio: 3 / 2;
}
.sec01 .flex_box figure,.sec07 .flex_box figure {
    overflow: hidden;
    width: 100%;
    height: fit-content;
}
.sec01 .flex_box a:hover img,.sec07 .flex_box li a:hover img,#pickup_course1 .flex_box a:hover img {
    scale: 1.1;
}
.sec10 h4 {
    font-size: 1rem;
    margin: 0 0 42px;
    font-weight: lighter;
}
.sec10 .flex_box {
    max-width: 1060px;
    margin: 0 auto 30px;
    padding-left: 30px;
    justify-content: flex-start;
    flex-wrap: wrap;
    box-sizing: border-box;
}
.sec10 .flex_box li {
    max-width: calc(25% - 30px);
    width: 50%;
    margin: 0 30px 30px 0;
}
.sec10 .flex_box li img {
    width: 100%;
    height: fit-content;
    aspect-ratio: 2.5 / 1;
    object-fit: cover;
    border: 1px solid #aaa;
}

/* フロントページ */
.new_title {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: -64px auto 24px;
    position: relative;
    z-index: 1;
}
.new_title li {
    width: calc(100% / 5 - 18px);
    background-color: #fff;
    padding: 2px 6px;
    box-sizing: border-box;
    text-align: center;
    border: 3px solid #417B25;
    border-radius: 50px;
    height: fit-content;
    transition: .6s all;
}
.new_title li:hover {
    background-color: #417B25;
    border: 3px solid #fff;
}
.new_title li:hover a {
    color: #fff;
}
.new_title li a{
	display: block;
}
.banner {
    width: 100%;
    max-width: 1000px;
    margin: 30px auto;
}
.banner a {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
}
.banner img {
    width: 100%;
    object-fit: cover;
}

/*シングル　観光情報*/
.s_g_wrap {
    margin: 36px auto 120px;
    text-align: center;
}
.s_g_map iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 3 / 2;
    margin: 30px auto 60px;
}
.s_g_wrap .flex_box li {
	width: 31.5%;
    min-width: 180px;
    height: 100%;
    aspect-ratio: 1 / 1;
    margin: 30px auto;
    position: relative;
}
.s_g_wrap .flex_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.s_g_wrap .flex_box li span {
    position: absolute;
    display: block;
    width: 100%;
    background-image: linear-gradient(0deg, rgba(0 0 0 / 60%), rgba(0 0 0 / 0.5%));
    color: #fff;
    bottom: 0;
    left: 0;
    padding: 4px;
    box-sizing: border-box;
}

/* シングル　動画 */
.category-douga iframe {
    width: 96%;
    height: auto;
    aspect-ratio: 16 / 9;
    margin: 30px auto 60px;
    display: block;
}

/* シングル　英語 */
#english-page h3 {
    font-size: clamp(1.1rem, 3vw, 1.5rem);
    margin-bottom: 30px;
}

/* お問い合わせフォーム */
#wpcf7-f4997-p4998-o1 label,
#wpcf7-f5005-p5006-o1 label,
.wpcf7 label {
    margin-bottom: 30px;
    display: block;
}
.wpcf7 .flex_box,.m_b30 {
    margin: 0 0 30px 0;
}
.wpcf7 h4 {
    font-size: 1.1rem;
    font-weight: normal;
}
input.wpcf7-form-control {
    width: fit-content;
}
textarea.wpcf7-form-control{
    width: 100%;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    width: 300px;
    margin: 30px auto;
    display: block;
    background-color: #417b25;
    color: #fff;
    border: none;
    transition: .3s;
}
input.wpcf7-form-control,
textarea.wpcf7-form-control,
input.wpcf7-form-control.wpcf7-submit.has-spinner {
    padding: 12px;
    max-width: 100%;
    height: fit-content;
    font-size: 1rem;
    box-sizing: border-box;
}
span.wpcf7-form-control.last_checkbox {
    text-align: center;
    display: block;
    margin: 30px auto;
}
input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 10px 4px 2px 4px;
    font-size: 1rem;
    box-sizing: border-box;
}
input.wpcf7-form-control.sw_box {
    max-width: 80px;
    margin-bottom: 1rem;
}
form.wpcf7-form.init.flex_box div {
    margin-right: 12px;
}
input.w_box {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}
span.wpcf7-list-item.first.last {
    margin: 0;
    font-weight: 600;
}
#wpcf7-f5155-p5156-o1 {
    margin: 60px auto 120px;
}
#wpcf7-f5155-p5156-o1 span.wpcf7-list-item.first.last {/*講演会フォーム*/
    text-align: center;
    font-weight: normal;
}
.left_box {
    text-align: right;
}
/*main a,*/
input.wpcf7-form-control.wpcf7-validates-as-date {
    color: #707070;
}

/* 協会ニュースアーカイブ */
.category-k-news .content {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 120px;
}
.right_content {
    max-width: 70%;
    width: 100%;
}
.left_content {
    width: 100%;
    max-width: 25%;
}
.left_content li {
    text-align: right;
    margin-right: 1rem;
}
.right_content .item_head,#news_list a {
    display: flex;
    color: #707070;
}
#news_list li {
    padding: 12px 0;
    border-bottom: 1px solid #707070;
}
//.date_post {
//    min-width: calc(8rem + 12px);
//    padding-left: 30px;
//    box-sizing: border-box;
//}
.left_content .item_head {
    text-align: center;
}
.linelist_wrap {
    margin: 0 auto 120px;
}

/* 新着情報カテゴリー */
#archives_whats_n .flex_box {
    flex-wrap: wrap;
    margin: 0 auto 120px;
}
#archives_whats_n .flex_box li {
    width: calc(33.333% - 12px);
    margin-bottom: 60px;
    position: relative;
}
#archives_whats_n .flex_box img {
    aspect-ratio: 3 / 2;
    width: 100%;
    height: fit-content;
    object-fit: cover;
    transition: .3s all;
}
#archives_whats_n h4 {
    font-size: clamp(1.1rem, 3vw, 1.25rem);
    padding: 0;
    font-weight: 500;
    margin-bottom: 12px;
    height: 4.2rem;
}
.a_text {
    min-height: 9.7rem;
    margin: 12px auto;
    letter-spacing: -1px;
}
#archives_whats_n .update_date {
    margin: 18px auto 6px;
}

/* NEWS */
.archive_box li {
    padding: 30px 0;
    border-bottom: 1px solid #aaa;
}
.archive_box li a {
    display: flex;
    flex-wrap: wrap;
}
.archive_box li span {
    margin-right: 30px;
    display: block;
}
.archive_box {
    border-top: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
}

@media screen and (max-width: 980px) {
    .sec01 .flex_box {
        flex-wrap: wrap;
        justify-content: space-around;
    }
    .sec01 .flex_box li {
        width: calc(50% - 6px);
        max-width: 400px;
        padding-bottom: 12px;
    }
    .sec01 h4 {
    min-height: 2.7rem;
    }
}

@media screen and (max-width: 768px) {
    .sec01, .sec03, .sec05, .sec07, .sec09 {
        padding: 0 0 90px;
    }
    .sec04 {
        padding: 0;
    }
    .title_wrap {
        flex-wrap: wrap;
    }
    .sec03 .title_wrap,.sec05 .title_wrap {
        flex-direction: column-reverse;
    }
    .title_box {
        max-width: 100%;
        padding: 12px;
        display: flex;
        justify-content: center;
        align-items: flex-start;
    }
    #main .title_box img {
        width: 50px;
        object-fit: contain;
    }
    .sec03 .title_img_box {
    display: unset;
    margin-right: auto;
    }
    .title_wrap h3 {
        margin: 0 12px;
    }
    img.title_img {
        max-width: 500px;
        width: 96%;
        margin: 0 auto;
    }
    .sec05 .title_img_box:before {
        top: -100px;
    }
    .title_img_box img.img01 {
        top: 60px;
    }
    .title_img_box img.img02 {
        top: -36px;
        transform: rotate(-18deg);
    }
    .title_img_box img.img03 {
        top: -24px;
    }
    .new_title {
        background-image: url(../image/sec01_sp.png);
        background-repeat: no-repeat;
        background-position: center top;
        background-size: 80%;
        background-position-y: 60px;
        padding-top: 320px;
        height: fit-content;
        min-height: fit-content;
        position: relative;
        z-index: auto;
        margin: -64px auto 0;
    }
    .new_title:before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        display: block;
        background-image: url(../image/back_kofun.png);
        top: 0;
        left: 0;
        background-size: contain;
        opacity: .4;
        background-repeat: no-repeat;
        z-index: -1;
    }
    .new_title li {
        width: calc(50% - 12px);
        margin-bottom: 6px;
    }
    .new_title li:nth-child(5) {
    margin-bottom: 24px;
    }
    .sec01 .title_img_box {
        display: none;
    }
    .tab_b01,.tab_b02 {
        width: 50%;
    }
    .home .tab_b01 {
        left: 0;
    }
    .home .tab_b02 {
        left: 50%;
    }
    #archives_whats_n .flex_box li {
    width: calc(50% - 12px);
    }
}

@media screen and (max-width: 600px) {
    .new_title {
        background-size: cover;
        background-position-y: 0;
        padding-top: 220px;
    }
    .new_title li {
        width: calc(50% - 12px);
        border-radius: 50px;
    }
    .sec01 .flex_box {
        justify-content: center;
    }
    .b_text_box {
        padding: 0;
    }
    .sec01 .flex_box li {
        width: 100%;
        background-color: unset;
        box-shadow: unset;
    }
    .sec01 h4 {
        margin: 6px 0;
        min-height: unset;
    }
    .cate_name {
        padding: 6px 36px;
        background-color: #cd3e3e;
    }
    .sec07 .flex_box {
        flex-flow: column;
        align-items: center;
    }
    .sec07 .flex_box li {
        width: 100%;
        max-width: 400px;
        margin: 0 auto 18px;
    }
    .sec10 .flex_box {
        padding-left: 2%;
    }
    .sec10 .flex_box li {
        max-width: 31.333333%;
        margin: 0 2% 2% 0;
    }
    .mobile_column {
        display: block;
    }
    .category-k-news .content {
        flex-flow: column;
    }
    .right_content,.left_content {
        max-width: 100%;
    }
    .left_content li {
    text-align: left;
    margin-right: 0;
    }
    .right_content .item_head, #news_list a {
        flex-flow: column;
    }
    .date_post {
        min-width: 100%;
        padding-left: 0;
    }
    .left_content .item_head {
        text-align: left;
    }
    .s_g_wrap .flex_box {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    }
}


@media screen and (max-width: 428px) {
    .new_title {
        padding-top: 170px;
        background-size: 110%;
        background-position-y: 55%;
    }
    .sec05 .title_img_box {
        min-height: 240px;
    }
    .sec05 .title_img_box img {
        width: 100%;
        max-width: 220px;
    }
    .title_img_box img.img01 {
        top: 42px;
        left: calc(50% - 110px);
    }
    .title_img_box img.img02 {
        top: -6px;
        left: 24px;
    }
    .title_img_box img.img03 {
        right: 24px;
    }
    .sec10 .flex_box li {
        max-width: 48%;
        margin: 0 2% 2% 0;
    }
        #archives_whats_n .flex_box li {
    width: 100%;
    }
}

/* ページタイトル */
.item_head,#about h3 {
    font-size: clamp(1.2rem, 2.8vw, 1.5rem);
    border-bottom: 8px solid #417b25;
    padding: 0;
    margin: 60px 0 42px;
}
.green_title {
    background-color: #417B25;
    color: #fff;
    text-align: center;
    width: 100%;
    height: fit-content;
    padding: 6px;
    margin: 36px auto;
    font-size: 1.2rem;
    box-sizing: border-box;
}

/* archiveページ */
ul.archive_wrap li {
    display: flex;
    padding: 60px 0 80px;
    border-bottom: 1px solid #aaa;
}
ul.archive_wrap li:last-child,
.category-news .archive_box li:last-child {
    border-bottom: none;
}
.archive_wrap img,#about .flex_box img {
    aspect-ratio: 3 / 2;
    width: 360px;
    height: fit-content;
    object-fit: cover;
}
.r_text_box {
    margin: 0 0 0 36px;
    width: 100%;
}

/* タクソノミ― */
.tax_wrap h4 {
    color: #417b25;
    padding: 12px 0;
    font-size: 1rem;
}
.s_g_wrap a.link_b02 {
    margin: 12px auto;
    width: 320px;
    min-width: fit-content;
    max-width: 100%;
}

@media screen and (max-width: 768px) {
    .archive_wrap li,#about #main .flex_box {
        flex-flow: column;
        align-items: center;
    }
    .archive_wrap img,#about .flex_box img {
    max-width: 100%;
    }
    .r_text_box {
        margin: 18px auto 0;
    }
}