@charset "UTF-8";
#jmain_title {
display: flex;
align-items: center;
}
#jomon_logo {
display: block;
width: 160px;
height: 160px;
background-color: #fff;
padding: 43px 40px;
}
#jomon_logo img {
width: 80px;
height: 74px;
}
#jmain_title h1 {
font-size: 2.8rem;
letter-spacing: 0.14em;
margin: 12px 0 10px 50px;
}
#jmain_title h1 span {
display: block;
font-size: 1.8rem;
color: #9e1414;
}
#jomon_mainimg_wrap {
display: flex;
margin-bottom: 50px;
}
#jomon_mainimg_wrap .jmain_img {
width: 50%;
}
#jomon_mainimg_wrap .jmain_img div {
display: flex;
justify-content: space-between;
width: 590px;
height: 52px;
background-image: url(/asset/img/jomon/main_name_back_590x52.svgz);
background-repeat: no-repeat;
}
#jomon_mainimg_wrap .jmain_img div span:first-child {
color: #fff;
font-weight: bold;
font-size: 1.8rem;
letter-spacing: 0.1em;
line-height: 52px;
padding-left: 20px;
}
#jomon_mainimg_wrap .jmain_img div span:last-child {
color: #fff;
line-height: 52px;
padding-right: 20px;
}
#jomon_campaign_bannar {
padding: 30px 30px 20px;
background-color: #fff;
}
#jomon_campaign_bannar a {
display: block;
width: 800px;
margin: 0 auto;
border:solid 1px #d4d4d4;
}
#jomon_campaign_bannar a img {
height: auto;
}
#jomon_dcontents_area {
padding: 0px 50px 50px;
position: relative;
}

#jomon_outline_wrap {
padding: 50px 0;
background-image: url(/asset/img/jomon/map.png);
background-repeat: no-repeat;
border-bottom: solid 5px #fff;
}
#jomon_outline_wrap section {
width: 530px;
margin: 0 0 0 auto;
}
#jomon_outline_wrap section h2 {
font-size: 2.2rem;
letter-spacing: 0.1em;
margin: 0px 0px 20px;
}
#jomon_outline_wrap section h2 i, 
#jomon_hakodate_wrap section h2 i, 
#jomon_minamihokkaido_wrap section h2 i{
width: 22px;
height: 22px;
}
#jomon_hakodate_wrap section h2, 
#jomon_minamihokkaido_wrap section h2 {
font-size: 2.2rem;
letter-spacing: 0.1em;
margin: 0px 0px 30px;
}
#jomon_hakodate_wrap section h2 i, 
#jomon_minamihokkaido_wrap section h2 i {
margin-right: 15px;
}
/*#jomon_minamihokkaido_wrap {
padding-bottom: 50px;
border-bottom: solid 2px #fff;
}*/
#jomon_outline_wrap section p {
font-size: 1.5rem;
line-height: 1.8;
margin-bottom: 40px;
letter-spacing: 0em;
}
.jomon_ol_kilist {
background-color: #fff;
padding: 36px 40px;
}
.jomon_ol_kilist dl {
display: flex;
border-bottom: 1px dotted #666666;
padding: 18px 0px 16px;
margin: 0px;
}
.jomon_ol_kilist dl:first-child {
padding-top: 0px;
}
.jomon_ol_kilist dl:nth-child(4) {
margin-bottom: 10px;
}
.jomon_ol_kilist dl dt {
    display: block;
    background-color: #7c4698;
    color: #fff;
    width: 90px;
    height: 26px;
    line-height: 1;
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
    padding-top: 6px;
}
.jomon_ol_kilist dl:nth-child(2) dt {
background-color: #e14a54;
}
.jomon_ol_kilist dl:nth-child(3) dt {
background-color: #007984;
}
.jomon_ol_kilist dl:nth-child(4) dt {
background-color: #c87336;
}
.jomon_ol_kilist dl dd {
display: block;
margin: 0px 0px 0px 16px ;
line-height: 1.6;
}
.jomon_ol_kilist dl:first-child dd {
letter-spacing: 0em;
}
.jomon_ol_kilist dl:nth-child(3) dd,
.jomon_ol_kilist dl:nth-child(4) dd {
padding-top: 4px;
}
.jomon_ol_kilist a i {
    width: 14px;
    height: 14px;
}
#jomon_hakodate_wrap {
padding: 60px 0 70px;
}
.jomon_mv {
display: flex;
justify-content: space-between;
margin-bottom: 60px;
}
.jomon_mv .jomon_youtube {
background-color: #fff;
width: 508px;
padding: 30px;
}
.jomon_mv .jomon_youtube span {
display: block;
margin-top: 10px;
font-weight: bold;
} 
.hakodates_con {
border:solid 6px #fff;
padding: 44px;
display: flex;
justify-content: space-between;
margin-bottom: 50px;
}
.hakodates_con:last-of-type {
margin-bottom: 0px;
}
.hakodates_con .img_wrap {
width: 508px;
}
.hakodates_con .txt_wrap {
width: 402px;
position: relative;
}
.hakodates_con .img_wrap ul {
display: flex;
flex-wrap: wrap;
}
.hakodates_con .img_wrap ul li {
width: 50%;
}
.hakodates_con .img_wrap ul li:first-child {
width: 100%;
margin-bottom: 14px;
}
.hakodates_con .img_wrap ul li span {
display: block;
font-size: 1.0rem;
margin-top: 5px;
letter-spacing: 0em;
}
.hakodates_con .img_wrap ul li img {
height: auto;
}
.hakodates_con .txt_wrap h3 {
background-image: url(/asset/img/jomon/con_name_back_402x44.svgz);
    background-repeat: no-repeat;
    color: #fff;
    font-size: 1.8rem;
    width: 402px;
    height: 44px;
    line-height: 1;
    text-indent: 20px;
    letter-spacing: 0.1em;
    margin: 0px 0px 20px;
    padding-top: 14px;
}
.hakodates_con .txt_wrap .date {
display: block;
padding-bottom: 14px;
border-bottom: dotted 1px #666666;
margin-bottom: 30px;
letter-spacing: 0.03em;
}
.hakodates_con .txt_wrap p {
font-size: 1.5rem;
line-height: 1.8;
letter-spacing: 0em;
}
.hakodates_con .txt_wrap p span {
display: block;
font-weight: bold;
margin-bottom: 20px;
}
.hakodates_con .txt_wrap .adress {
position: absolute;
background-color: #fff;
width: 392px;
height: 40px;
text-align: center;
line-height: 40px;
border-radius: 20px;
bottom:0px;
}
.jomon_mhmap {
background-color: #fff;
padding: 40px;
margin-bottom: 40px;
}
.jomon_mhmap div iframe {
border:none;
}
.mhokkaidos_con {
border: solid 6px #fff;
padding: 44px 44px 14px;
position: relative;
}
.mhokkaidos_con.kousei {
margin-bottom: 40px;
}
.mhokkaidos_con.kanren .kflg {
background-color: #9970b0;
}
.mhokkaidos_con .kflg {
display: block;
    text-align: center;
    letter-spacing: 0.1em;
    position: absolute;
    width: 189px;
    height: 40px;
    line-height: 1;
    color: #fff;
    background-color: #7c4698;
    font-size: 1.6rem;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin-top: -6px;
    padding-top: 13px;
}
.mhokkaidos_con .kousei_list {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.mhokkaidos_con .kousei_list section {
background-color: #fff;
padding: 30px;
width: calc( (100% - 40px) / 2 );
margin-bottom: 30px;
}
.kousei_list .txt_wrap a i, 
.kanren_list .txt_wrap a i {
width: 14px;
height: 14px;
}
.kousei_list section.flexsb {
width: 100%;
display: flex;
justify-content: space-between;
}
.kanren_list section.flexsb {
display: flex;
justify-content: space-between;
}
.kanren_list section {
background-color: #fff;
width: 100%;
padding: 30px;
margin-bottom: 30px;
}
.kousei_list .img_wrap {
width: 244px;
}
.kousei_list section.flexsb .img_wrap img, 
.kanren_list section.flexsb .img_wrap img {
height: auto;
}
.kanren_list section.flexsb .img_wrap {
width: 488px;
}
.kousei_list section.flexsb .txt_wrap {
width: calc( 100% - 274px );
}
.kanren_list section.flexsb .txt_wrap {
width: calc( 100% - 518px );
}
.kousei_list section.flexsb .img_wrap span {
height: 30px;
display: block;
margin-bottom: 5px;
border: solid 1px #7c4698;
line-height: 30px;
text-indent: 15px;
color: #7c4698
}
.kanren_list section.flexsb .img_wrap ul {
display: flex;
}
.kanren_list section.flexsb .img_wrap ul li:first-child {
width: 256px;
}
.kanren_list section.flexsb .img_wrap ul li:last-child {
width: 232px;
}
.kanren_list section.flexsb .img_wrap ul li span {
    display: block;
    font-size: 1.0rem;
    margin-top: 5px;
    letter-spacing: 0em;
}
.kousei_list .txt_wrap h4, 
.kanren_list .txt_wrap h4{
font-size: 1.8rem;
letter-spacing: 0.1em;
margin: 0px 0px 10px;
}
.kousei_list .txt_wrap h4 span, 
.kanren_list .txt_wrap h4 span {
letter-spacing: 0em;
display: inline-block;
color: #fff;
background-color: #7c4698;
width: 28px;
height: 28px;
border-radius: 14px;
text-align: center;
line-height: 28px;
margin-right: 8px;
font-weight: normal;
}
.kousei_list .txt_wrap p, 
.kanren_list .txt_wrap p {
font-size: 1.5rem;
margin: 0px 0px 10px;
letter-spacing: 0.03em;
}
.kousei_list .txt_wrap .jaccess, 
.kanren_list .txt_wrap .jaccess {
display: block;
font-size: 108%;
padding: 10px 0px;
border-top:dotted 1px #666666;
}
.kanren_list .txt_wrap .facicat {
height: 30px;
    display: block;
    margin-bottom: 10px;
    border: solid 1px #7c4698;
    line-height: 30px;
    text-indent: 15px;
    color: #7c4698;
}
.kousei_list section:first-child .jaccess {
padding-bottom: 32px;
}
.jomon_ks_linkbtn {
display: block;
width: 430px;
margin: 40px auto 0;
}
.jomon_ks_linkbtn a.linkbtn {
font-size:1.5rem;
font-weight: bold;
color:#9e1414;
background-color: #fff;
border: solid 2px #c47070;
height: 66px;
line-height: 66px;
display: block;
text-align: center;
}
.jomon_ks_linkbtn a.linkbtn i {
width: 15px;
height: 15px;
}
.jomon_other_com {
padding: 76px 0;
border-bottom: solid 2px #fff;
}
.jomon_other_com:last-of-type {
border-bottom: none;
padding-bottom: 0px;
}
.jomon_other_com h2 {
font-size: 2.2rem;
line-height: 1;
letter-spacing: 0.1em;
margin: 0px 0px 40px;
}
.jomon_other_com h2 i {
width: 22px;
height: 22px;
margin-right: 15px;
}
.jomon_other_com p {
font-size: 1.5rem;
margin: 0px 0px 20px 0px;
}
#jomon_flyer_wrap dl {
margin: 0px;
}
#jomon_flyer_wrap dl dt {
width: 500px;
margin-bottom: 14px;
}
#jomon_flyer_wrap dl dt a {
display: block;
}
#jomon_flyer_wrap dl dd {
margin: 0px;
font-size: 108%;
}
/*campaign*/
#jomon_campaign .nmds {
background-color: #9e1414;
color: #fff;
font-size: 1.5rem;
padding: 8px;
margin-bottom: 15px;
text-align: center;
}
#jomon_campaign p {
margin-bottom: 40px;
}
#jomon_campaign p span {
font-size: 1.8rem;
font-weight: bold;
}
#jomon_camp_con {
border: solid 6px #fff;
padding: 44px;
}
.jcamp_present {
display: block;
width: 750px;
margin-bottom: 50px;
}
#jomon_camp_con h3 {
color: #e08043;
font-weight: bold;
font-size: 2.0rem;
padding-bottom: 8px;
border-bottom: solid 1px #e08043;
margin-bottom: 30px;
}
#jomon_camp_con p {
font-weight: bold;
margin-bottom: 30px;
}
#jomon_camp_con ul {
display: flex;
justify-content: space-between;
margin-bottom: 40px;
}
#jomon_camp_con ul li {
position: relative;
width: calc( (100% - 40px) / 2 );
background-color: #fff;
padding: 60px 30px 30px;
font-weight: bold;
border-radius: 5px;
}
#jomon_camp_con ul li span {
position: absolute;
display: block;
width: 188px;
height: 40px;
background-color: #e08043;
color: #fff;
text-align: center;
left: 0;
top: 0;
font-size: 1.6rem;
line-height: 1;
padding-top: 13px;
}
#jcamp_tw {
width: 610px;
padding: 30px;
background-color: #fff;
}
#jomon_1stani {
position: absolute;
display: block;
width: 140px;
height: 140px;
left: 20px;
top:20px;
}
#jomon_1stani img {
display: block;
width: 100%;
}
/*kids ------------- */
#jomon_kids_con {
border: solid 6px #fff;
padding: 44px 44px 44px;
display: flex;
justify-content: space-between;
}
#jomon_kids_con .jomon_youtube {
background-color: #fff;
width: 508px;
padding: 30px 30px 26px;
}
#jomon_kids_con .jomon_youtube span {
display: block;
margin-top: 6px;
font-weight: bold;
}
#jomon_kidstxt_wrp {
width: 416px;
}
.jomon_kidstxt_mds {
display: block;
font-size: 1.6rem;
letter-spacing: 0.05em;
font-weight: bold;
border-bottom: solid 1px #d4d4d4;
padding: 8px 0 14px;
margin-bottom: 20px;
}