/*!
Theme Name: イグゼあまるめ2026
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: temp_base
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */ 
@media print, screen and (min-width:900px) { 

html {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 98%;
	-webkit-text-size-adjust: 100%;
}

/*font*/
.kiwimaru400 {
  font-family: "Kiwi Maru", serif;
  font-weight: 400;
  font-style: normal;
}
.kiwimaru500 {
  font-family: "Kiwi Maru", serif;
  font-weight: 500;
  font-style: normal;
}

/* Box sizing
--------------------------------------------- */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #333333;
	font-family:inherit;
	line-height: 1.6;
	letter-spacing: 0.08em;
}
b,
strong {
	font-weight: bolder;
}
small {
	font-size: 80%;
}
blockquote {
	margin: 0 1.5em 1.6em;
	padding: 15px;
	border: 1px solid #e2e2e2;
	border-radius: 5px;
}
address {
	margin: 0 0 1.5em;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
	overflow-x: hidden;
	position: relative;
	transition: all .2s;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
dt {
	font-weight: 700;
}
dd {
	margin: 0 1.5em 1.5em;
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}
img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
figure {
	margin: 1em 0;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
/*SP用の要素を非表示*/
.sp_show {
	display: none !important;
}

/*作業中*/
.attention {
/*	display: inline-block;
	position: fixed;
	left: 0;
	bottom: 100px;
	padding: 1em;
	background: #fff;
	color: rgba(228,0,106,1.00);
	font-size: 80%;
	font-weight: 700;
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
	z-index: 1000;*/
	display: none;
}

/* Links
--------------------------------------------- */
a {
	color: #0C6CC1;
}
a:visited {
	color: #0C6CC1;
}
a:hover,
a:focus,
a:active {
	color: #0C6CC1;
	text-decoration: none;
}
a:focus {
	outline: none;
}
a:hover,
a:active {
	outline: 0;
}
.page_project_menu a:hover img
,header a:hover img
,.contents_1col_top a:hover img {
	opacity:0.78;
	-webkit-transition:0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.2em .5em 0.6em;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}
button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: inherit;
	border: 1px solid #969696;
	border-radius: 3px;
	padding: .3em .6em;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
	background: rgba(240,240,240,1.00);
}
select {
	border: 1px solid #ccc;
}
textarea {
	width: 100%;
}

/* animation
--------------------------------------------- */
:root {
  /* Quint（Quartより強く、Expoより弱い） */
  /*--ease-quint-in: cubic-bezier(0.755, 0.05, 0.855, 0.06);*/
 /* --ease-quint-out: cubic-bezier(0.23, 1, 0.32, 1);*/
  /*--ease-quint-inout: cubic-bezier(0.86, 0, 0.07, 1);*/

  /* Expo（もっとも強い） */
  /*--ease-expo-in: cubic-bezier(0.95, 0.05, 0.795, 0.035);*/
  /*--ease-expo-out: cubic-bezier(0.19, 1, 0.22, 1);*/
  /*--ease-expo-inout: cubic-bezier(0.87, 0, 0.13, 1);*/
}



/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
main.contents_top {
	margin: 0 auto;
}
main .contents_page {
	
}
main .contents_page_inner {
	margin: 0 auto 55px;
	padding: 0;
	width: 85%;
	max-width: 1300px;
}
.page-id-12 main .contents_page_inner {
	width: 93%;
}
main .contents_page_inner.page_2col {
	display: flex;
	justify-content: space-between;
	
}
main .contents_page_inner.page_2col article {
	width: 72%;
}
main .contents_page_inner.page_2col aside {
	margin-left: 5%;
	width: clamp(250px, 28%, 320px);
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* header
--------------------------------------------- */
.header {
	position: absolute;
	width: 100%;
	height: auto;
}
.header_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: nowrap;
	margin: 0 auto;
	padding: 15px 0;
	width: 100%;
	max-width: 2300px;
}
.site_title {
	width: 25%;
	padding-left: 1.5%;
	z-index: 10;
}
.header_links {
	width: 74%;
	display: flex;
	justify-content: flex-end;
	align-items: stretch;
}
.header_links .head_btn {
	padding-right: clamp(100px,10vw,130px);
	z-index: 10;
}
.header_links .head_btn img {
	width: clamp(150px,15vw,239px);
}


@media print, screen and (max-width:1100px) { 


}

/* Navigation
--------------------------------------------- */
/*ボタン外側*/
.openbtn{
	position: fixed;
	top: 3.5%;
	right: 2%;
	background:none;
	background-size: contain;
	cursor: pointer;
    width: 60px;
    height:60px;
	z-index: 100;
	
}
/*ボタン内側*/
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
	left: 15%;
    height: 3px;
    border-radius: 10px;
	background: #000;
  	width: 70%;
}
.openbtn span:nth-of-type(1) {
	top: 2px;
}
.openbtn span:nth-of-type(2) {
	top: 14px;
	/*left: unset;*/
	/*right: 0;*/
}
.openbtn span:nth-of-type(3) {
	top: 27px;
}
.openbtn span:nth-of-type(3)::after {
	content:"MENU";/*3つ目の要素のafterにメニュー表示を指定*/
	position: absolute;
	top:6px;
	left:-7px;
	width: 60px;
	text-align: center;
	color: #000;
	font-size: 18px;
	font-weight: 700;
	text-transform: uppercase;
}

/*activeクラスが付与*/
.openbtn.active span {
	background: #fff;
	z-index: 100;
}
.openbtn.active span:nth-of-type(1) {
    top: 13px;
    transform: translateY(6px) rotate(-42deg);
    width: 70%;
	height: 3px;
}
.openbtn.active span:nth-of-type(2) {
	opacity: 0;
	transform: translateX(40px);
}
.openbtn.active span:nth-of-type(3){
    top: 26px;
    transform: translateY(-6px) rotate(42deg);
    width: 70%;
	height: 3px;
}
.openbtn.active span:nth-of-type(3)::after {
	content:"CLOSE";/*3つ目の要素のafterにとじる表示を指定*/
    transform: translateY(0) rotate(-42deg);
	position: absolute;
	top:8px;
	left:8px;
	width: 60px;
	color: #fff;
	text-align: center;
}




.menu_box{
  opacity:0;
  transform:translateY(-30px);
}
/* 出現 */
.menu_box.show{
  animation:menuFadeIn 0.6s cubic-bezier(0.76, 0, 0.24, 1) forwards;
}
/* 消える */
.menu_box.hide{
  animation:menuFadeOut 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
@keyframes menuFadeIn{
  from{
    opacity:0;
    transform:translateY(-30px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}
@keyframes menuFadeOut{
  from{
    opacity:1;
    transform:translateY(0);
  }
  to{
    opacity:0;
    transform:translateY(-30px);
  }
}



















/*ハンバーガーメニュー中身*/
nav.navigation {
	position: fixed;
	width: 100%;
	height: 100vh;
	background: rgba(255,255,255,0.6);
	backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
	display: none;
	z-index: 20;
}
nav.navigation a {
	color: #fff;
	text-decoration: none;
}
nav.navigation .innerwrap {
	display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
	margin: 0 0 0 auto;
	width: 70%;
	max-width: 710px;
	height: 100vh;
	background: #1E1D1D;
	overflow-y: scroll;
}
nav.navigation .innerwrap .menu_box {
	width: 75%;
	max-width: 460px;
    height: 83%;
	color: #fff;
	font-size: 90%;
}
nav.navigation .innerwrap .menu_box > p {
	padding: .5em 0;
	border-bottom: 1px solid rgba(183,178,178,0.70);
}


/*ハンバーガーメニュー中身　事業紹介*/
nav.navigation ul.project {
	margin: 1em 10px;
}
nav.navigation ul.project > li {
	position: relative;
	padding: 7px 0 7px 55px;
}
nav.navigation ul.project > li:nth-child(1):before {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	display: inline-block;
	background: url("images/navi/nav_list01.svg")no-repeat left/ contain;
	width: 42px;
	height: 42px;
}
nav.navigation ul.project > li:nth-child(2):before {
	content: "";
	position: absolute;
	top:5px;
	left: 0;
	display: inline-block;
	background: url("images/navi/nav_list02.svg")no-repeat left/ contain;
	width: 42px;
	height: 42px;
}
nav.navigation ul.project > li:nth-child(3):before {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	display: inline-block;
	background: url("images/navi/nav_list03.svg")no-repeat left/ contain;
	width: 42px;
	height: 42px;
}
nav.navigation ul.project > li:nth-child(4):before {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	display: inline-block;
	background: url("images/navi/nav_list04.svg")no-repeat left/ contain;
	width: 42px;
	height: 42px;
}
nav.navigation ul.project > li a {
	display: block;
	color: #F6E0AC;
	font-size: 130%;
	transition: all .2s;
}
nav.navigation ul.project > li > ul > li {
	position: relative;
	padding: 8px 0 0px 50px;
}
nav.navigation ul.project > li > ul > li:before {
	content: "ー";
	position: absolute;
	top: .5em;
	left: 20px;
}
nav.navigation ul.project > li > ul > li a {
	font-size: 108%;
}
nav.navigation ul.project > li > ul > li a:hover,
nav.navigation ul.project > li > ul > li a:active {
	text-decoration: underline;
}
nav.navigation ul.project > li > ul > li a span {
	display: inline-block;
	margin-right: 5px;
	padding: .2em;
	color: #fff;
	background: #986E09;
	border-radius: 3px;
	line-height: 1em;
}

nav.navigation ul.project > li > a:before {
	content: "";
	position: absolute;
	right: 30px;
	top: 20px;
	width: 11px;
	height: 4px;
	background: #F6E0AC;
	margin-top: 6px;
  -webkit-transform: rotate(-46deg);
          transform: rotate(-46deg);
	border-radius: 5px;
	transition: all .2s;
}
nav.navigation ul.project > li > a:after {
	content: "";
	position: absolute;
	right: 30px;
	top: 20px;
	width: 11px;
	height: 4px;
	background: #F6E0AC;
  -webkit-transform: rotate(46deg);
          transform: rotate(46deg);
	border-radius: 5px;
	transition: all .2s;
}
nav.navigation ul.project > li > a:hover,
nav.navigation ul.project > li > a:active {
	color: #BB7501;
	transition: all .2s;
}
nav.navigation ul.project > li > a:hover:before,
nav.navigation ul.project > li > a:active:before,
nav.navigation ul.project > li > a:hover:after,
nav.navigation ul.project > li > a:active:after {
	right: 15px;
	transition: all .2s;
}


/*ハンバーガーメニュー中身　基本コンテンツ群*/
nav.navigation dl {
	display: flex;
	flex-wrap: wrap;
	padding: 1.5em 0 1.5em 30px;
	border-top: 1px solid rgba(183,178,178,0.70);
	border-bottom: 1px solid rgba(183,178,178,0.70);
}

nav.navigation dl dt {
	position: relative;
	margin-bottom: 8px;
	padding-left: 15px;
	width: 200px;
}
nav.navigation dl dt a:hover,
nav.navigation dl dt a:active {
	text-decoration: underline;
}
nav.navigation dl dt:before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	display: inline-block;
	clip-path: polygon(0 0, 0% 100%, 50% 50%);
	background: #fff;
	width: 10px;
	height: 10px;
}
nav.navigation dl dt.with_line a:after {
	content: "";
	position: relative;
	top: -6px;
	right: -35px;
	display: inline-block;
	background: #C5C5C5;
	width: 50px;
	height: 1px;
}
nav.navigation dl dd {
	margin: 0 0 1em;
	width: calc(100% - 200px);
}
nav.navigation dl dd a {
	display: inline-block;
	margin-bottom: 5px;
}
nav.navigation dl dd a:hover,
nav.navigation dl dd a:active {
	text-decoration: underline;
}
nav.navigation .navi_tel {
	padding: 15px 10px 100px;
}
nav.navigation .navi_tel img {
	width: 340px;
}

/*ヘッダーテキストメニュー*/
.pc_nav {
	margin-right: 1.5%;
	z-index: 10;
	background: rgba(255,255,255,0.55);
	border-radius: 100px;
}
.pc_nav ul.pc_nav_menu {
	display: flex;
	justify-content: space-between;
	column-gap: 2em;
	flex-wrap: nowrap;
	margin: .9em 1.8em;
	font-size: clamp(70%,1vw,97%);
}
.pc_nav ul.pc_nav_menu > li {
	flex-grow: 1;
	position: relative;
}

/*リンクのスタイル*/
.pc_nav a,
.pc_nav a:hover,
.pc_nav a:active,
.pc_nav a:visited {
	color: #222;
	text-decoration: none;
	/*font-size: 100%;*/
	font-weight: 500;
	letter-spacing: 0.08em;
}


/*親メニュー*/
.pc_nav ul.pc_nav_menu > li > a {
	position: relative;
	display: block;
	padding: .2em 0;
	text-align: center;
}
.pc_nav ul.pc_nav_menu > li > a::after {
  background-color: #b03132;
  bottom: -5px;
  content: "";
  height: 3px;
  left: 0;
  opacity: 0;
  position: absolute;
  transition: all .2s;
  width: 100%;
}
.pc_nav ul.pc_nav_menu > li > a:hover {
	color: #b03132;
	transition: all .1s;
}
/* リンクにホバーした際の下線の表示 */
.pc_nav ul.pc_nav_menu > li > a:hover::after {
  bottom: -1px;
  opacity: 1;
}



/* TOPコンテンツ　共通パーツ
--------------------------------------------- */
/*左寄せ*/
h2.semicircle {
	padding-top: 30px;
	color: #000;
	font-size: 180%;
	letter-spacing: 0.11em;
}
/*中央寄せ*/
h2.semicircle.align_center {
	text-align: center;
}
h2.semicircle span {
	position: relative;
}
h2.semicircle span:before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background: url("images/pages/h2title_illust.svg")no-repeat center bottom / contain;
	width: 62px;
	height: 23px;
}

/* TOPコンテンツ　MV
--------------------------------------------- */
.mv {
	position: relative;
	width: 100%;
	height: 109vh;
	background: url("images/mv/sample_a.JPG")no-repeat center/ cover;
}

.mv:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 100%;
	height: 100px;
	background: url("images/mv/wave.svg")no-repeat center bottom / 105%;
}
.mv_slider,
.slick-list,
.slick-track,
.slick-slide {
	width: 100%;
	height: 100%;
}
.mv_slider .slick-slide img {
	width: 100%;
	height: 100%;
    object-fit: cover;
}
.mv_slider .slick-slide {
	position: relative;
	overflow: hidden;
}
.mv_slider .slick-slide img.mv01 {
	object-position: 50% 50%;
}
.mv_slider .slick-slide img.mv02 {
	object-position: 50% 55%;
}
.mv_txt {
	position: absolute;
	top: 30%;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 872px;
}
.mv_txt img {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.6s ease;
	margin: 10px 6px;
	width: 97px;
}
.mv_txt img.show {
	opacity: 1;
	transform: translateY(0);
}
.mv_txt .second img {
	transition-delay: .3s;
}
.mv_txt span {
	display: inline-block;
}
.mv_txt .second {
	margin-left: calc(194px + 24px);
}
@media print, screen and (max-width:1450px) {
.mv_txt {
	width: 660px;
}
.mv_txt img {
	width: 70px;
}
.mv_txt .second {
	margin-left: calc(140px + 24px);
}


}


/* TOPコンテンツ　お知らせ
--------------------------------------------- */
section.news {
	margin-bottom: 70px;
	padding: 20px 0;
	background: url("images/pages/news_bg.png")repeat;
}
.news_inner {
	margin: 0 auto;
	width: 80%;
	max-width: 1000px;
}
ul.news_wrapper {
	margin: 15px 0;
	font-size: 85%;
}
li.news_box {
	display: flex;
	align-items: flex-start;
	border-bottom: 1px dotted #888888;
	padding: 1.2em;
}
li.news_box time {
	font-size: .95em;
}
li.news_box .catname {
	margin: 3px 2em 0;
	padding: 1px 0 2px;
	min-width: 8em;
	color: #fff;
	font-size: .76em;
	font-weight: 500;
	text-align: center;
	border-radius: 2px;
}
.catname {
	background: #6A9A49;
}
.catname.cat-office {
	background: #B03132;
}
.catname.cat-machiyu {
	background: #D49414;
}
li.news_box .title {
	flex: 1;
	font-weight: 600;
}

/*リンク色*/
ul.news_wrapper li.news_box a,
ul.news_wrapper li.news_box a:visited {
	color: #222;
	text-decoration: none;
}
ul.news_wrapper li.news_box a:hover,
ul.news_wrapper li.news_box a:active {
	text-decoration: underline;
}
img.mark_new {
	position: relative;
	top: 0;
    right: 0;
	width: 37px;
    height: auto;
}

/*過去一覧*/
.news_more {
	margin-top: 20px;
	text-align: right;
}
.news_more a {
	display: inline-block;
	padding: 4px 1.5em;
	color: #333;
	font-size: .8em;
	text-decoration: none;
	transition: all .2s;
	background: #fff;
	border: 1px solid #333;
	border-radius: 2px;
}
.news_more a:hover,
.news_more a:active {
	transition: all .2s;
	color: #999;
	border: 1px solid #999;
}

/* TOPコンテンツ　イグゼあまるめについて
--------------------------------------------- */
section.about {
	margin: 80px 0;
}
section.about .about_inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin: 0 auto;
	padding: 2.5% 0;
	width: 88%;
	height: 86vh;
	max-width: 1800px;
	max-height: 950px;
	min-height: 550px;
	background: url("images/pages/concept_bg.webp")no-repeat 50% 50% / cover;
	border-right: 1px solid #e3e7e8;
	border-bottom: 1px solid #e3e7e8;
	box-shadow: 15px 15px 0 rgba(238,234,223,0.75);
}
@media print, screen and (max-width:1100px) {
section.about .about_inner {
	height: 70vh;
	background: url("images/pages/concept_bg_sp.webp")no-repeat 50% 50% / cover;
}
}
/*@media print, screen and (max-width:950px) {
section.about .about_inner {

}
}*/
section.about h2 {
	margin-left: -3%;
}
section.about h2 img {
	width: 80%;
	max-width: 950px;
}
section.about .txt_wrap {
	align-self: flex-end;
	margin-right: -5%;
}
section.about .txt_wrap .txt p {
	margin-bottom: 50px;
	font-size: clamp(140%,2vw,170%);
	font-weight: 700;
	line-height: 1em;
	letter-spacing: 0.11em;
}
section.about .txt_wrap .txt p span {
	display: inline-block;
	margin: 9px 0;
	padding: 3px 3px 5px 8px;
	background: #fff;
	border-radius: 5px;
	box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}
section.about .txt_wrap .btn_about a {
	position: relative;
	display: inline-block;
	padding: 1em 100px 1em 3em;
	color: #fff;
	font-size: 130%;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-decoration: none;
	background: #B03132;
	border: 4px solid #B03132;
	border-radius: 50px;
	transition: all .2s;
}
section.about .txt_wrap .btn_about a:before {
	content: "";
	position: absolute;
	right: 40px;
	top: 44%;
	width: 11px;
	height: 4px;
	background: #fff;
	margin-top: 6px;
  -webkit-transform: rotate(-46deg);
          transform: rotate(-46deg);
	border-radius: 5px;
	transition: all .2s;
}
section.about .txt_wrap .btn_about a:after {
	content: "";
	position: absolute;
	right: 40px;
	top: 44%;
	width: 11px;
	height: 4px;
	background: #fff;
  -webkit-transform: rotate(46deg);
          transform: rotate(46deg);
	border-radius: 5px;
	transition: all .2s;
}
section.about .txt_wrap .btn_about a:hover,
section.about .txt_wrap .btn_about a:active {
	color: #B03132;
	background: #fff;
	transition: all .2s;
}
section.about .txt_wrap .btn_about a:hover:before,
section.about .txt_wrap .btn_about a:active:before,
section.about .txt_wrap .btn_about a:hover:after,
section.about .txt_wrap .btn_about a:active:after {
	background: #B03132;
	right: 25px;
	transition: all .2s;
}

/* TOPコンテンツ　私たちの事業
--------------------------------------------- */
section.project {
	margin: 120px 0;
}
/*見出し、共通パーツ*/
section.project h2 {
	font-size: 200%;	
}
/*見出しナンバリング*/
section.project .project01 hgroup {
	background: url("images/pages/h3top_illust01.svg")no-repeat left center/ 115px;
}
section.project .project02 hgroup {
	background: url("images/pages/h3top_illust02.svg")no-repeat left top/ 90px;
}
section.project .project03 hgroup {
	background: url("images/pages/h3top_illust03.svg")no-repeat left top/ 90px;
}
section.project .project04 hgroup {
	background: url("images/pages/h3top_illust04.svg")no-repeat left top/ 90px;
}
/*レイアウト*/
section.project .project_wrap {
	margin: 80px auto 0;
	width: 90%;
	max-width: 1400px;
}
section.project .project_wrap.upper {
	width: 80%;
	max-width: 1150px;
}
section.project .project_btn_col2 {
	position: relative;
	display: flex;
	justify-content: space-around;
	margin-top: 40px;
}
section.project .project_btn_col3 {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin-top: 120px;
}
section.project .project_btn_col3 > div {
	width: 30.5%;
}
/*ボタンのレイアウト*/
a.project_btn {
	transition: all .2s;
}
a.project_btn .pic img {
	width: 100%;
    height: 100%;
    object-fit: contain;
	object-position: center;
}
a.project_btn:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: calc(100% + 24px);
	right: -10px;
	width: 100%;
	height: 28px;
	background: url("images/pages/jigyo_more.svg")no-repeat right center/ contain;
	opacity: 0.25;
	transition: all .1s;
}
/*導入文*/
section.project .intro {
	margin: 40px 0;
	text-align: center;
}
section.project .intro p {
	display: inline-block;
	padding: 1.3em 1em;
	font-size: clamp(75%,1.3vw,104%);
	font-weight: 500;
	line-height: 1.9;
	border-top: 1px solid #555;
	border-bottom: 1px solid #555;
}
/*ボタンリンクのスタイル*/
a.project_btn.machiyu:hover,a.project_btn.addeba:hover,
a.project_btn.machiyu:active,a.project_btn.addeba:active {
	box-shadow: 0 0 0 6px #F0E8CB;
	background: rgba(251,243,212,0.70) url("images/pages/bg_btn_texture.png")repeat;
	transition: all .2s;
}
a.project_btn.furusato:hover,
a.project_btn.furusato:active {
	box-shadow: 0 0 0 6px #F3DFDF;
	background: rgba(255,230,230,0.7) url("images/pages/bg_btn_texture.png")repeat;
	transition: all .2s;
}
a.project_btn.nandemoya:hover,
a.project_btn.nandemoya:active {
	box-shadow: 0 0 0 6px #D5E7EF;
	background: rgba(213,237,248,0.7) url("images/pages/bg_btn_texture.png")repeat;
	transition: all .2s;
}
a.project_btn.kamekome:hover,
a.project_btn.kamekome:active {
	box-shadow: 0 0 0 6px #E2EDDE;
	background: rgba(225,248,218,0.65) url("images/pages/bg_btn_texture.png")repeat;
	transition: all .2s;
}
a.project_btn:hover:after {
	right: -30px;
	opacity: 1;
	transform: scale(1.05);
	transition: all .3s;
}

/*01 まちの施設 管理運営*/
section.project .project01 hgroup {
	padding: 10px 10px 20px 145px;
}
section.project .project01 hgroup h3 {
	font-size: 290%;
}
section.project .project01 .subtitle{
	color: #B03132;
	font-size: 125%;
	font-weight: 700;
}
a.project_btn.machiyu,
a.project_btn.addeba {
	width: 41%;
	position: relative;
	display: block;
	aspect-ratio: 1/1;
	text-decoration: none;
	color: #333;
	background: rgba(255,247,213,0.35) url("images/pages/bg_btn_texture.png")repeat;
	border: 1px solid #f2efe3;
	border-radius: 25px;
}
a.project_btn.machiyu .pic {
	position: relative;
	overflow: hidden;
	aspect-ratio: 9/7.4;
	padding: 1%;
}
a.project_btn.addeba .pic {
	position: relative;
	overflow: hidden;
	aspect-ratio: 9/6.5;
	margin-top: 7%;
    padding: 0 7%;
}
a.project_btn.machiyu .txt,
a.project_btn.addeba .txt {
	position: absolute;
	bottom: 6%;
	width: 100%;
}
a.project_btn.machiyu .txt p,
a.project_btn.addeba .txt p {
	color: #544a41;
	font-size: clamp(110%,1.5vw,130%);
	font-weight: 600;
	text-align: center;
}
a.project_btn.machiyu .txt p span,
a.project_btn.addeba .txt p span {
	display: inline-block;
	margin: 0 10px;
	font-size: 200%;
	position: relative;
	top: .15em;
}
a.project_btn.machiyu .txt p span {
	letter-spacing: 0.2em;
}

/*02ふるさと納税、03なんでも屋、04かめこめ*/
section.project .project02 hgroup,
section.project .project03 hgroup {
	margin-bottom: 10px;
	padding: 105px 0px 0px 0;
	/*min-height: 210px;*/
}
section.project .project04 hgroup {
	margin-bottom: 10px;
	padding: 105px 0px 0px 0;
	/*min-height: 210px;*/
}
section.project .project02 hgroup h3,
section.project .project03 hgroup h3,
section.project .project04 hgroup h3 {
	font-size: clamp(150%,2.8vw,230%);
	line-height: 1.1;
	height: 2em;
}
section.project .project02 hgroup h3,
section.project .project03 hgroup h3 {
	padding-top: 8px;
}
section.project .project02 .subtitle,
section.project .project03 .subtitle,
section.project .project04 .subtitle {
	margin-top: .7em;
	color: #B03132;
	font-size: clamp(60%,1.2vw,110%);
	font-weight: 700;
}
/*通販アイコン*/
section.project .project03 hgroup h3 img {
	position: relative;
	top: .18em;
	width: 1.3em;
	height: 1.3em;
}
/*ふるさと納税ボタン*/
a.project_btn.furusato {
	position: relative;
	display: block;
	aspect-ratio: 11/9;
	text-decoration: none;
	color: #333;
	background: rgba(255,230,230,0.3) url("images/pages/bg_btn_texture.png")repeat;
	border: 1px solid #F1E6E6;
	border-radius: 20px;
}
a.project_btn.furusato .pic {
	position: relative;
	overflow: hidden;
	aspect-ratio: 11/9;
    padding: 4% 5% 1%;
}
/*何でも屋ボタン*/
a.project_btn.nandemoya {
	position: relative;
	display: block;
	aspect-ratio: 11/9;
	text-decoration: none;
	color: #333;
	background: rgba(213,237,248,0.35) url("images/pages/bg_btn_texture.png")repeat;
	border: 1px solid #DFEBF0;
	border-radius: 20px;
}
a.project_btn.nandemoya .pic {
	position: relative;
	overflow: hidden;
	aspect-ratio: 11/9;
	padding: 4% 4% 3%;
}
/*かめこめボタン*/
a.project_btn.kamekome {
	position: relative;
	display: block;
	aspect-ratio: 11/9;
	text-decoration: none;
	color: #333;
	background: rgba(225,248,218,0.35) url("images/pages/bg_btn_texture.png")repeat;
	border: 1px solid #E9F2E6;
	border-radius: 20px;
}
a.project_btn.kamekome .pic {
	position: relative;
	overflow: hidden;
	aspect-ratio: 11/9;
	padding: 8% 0% 0%;
}
a.project_btn.kamekome .pic img {
	object-fit: cover;
}




/* Posts and pages
--------------------------------------------- */
/*パンくずリスト*/
#breadcrumb {
	margin: 0 0 60px;
	padding: 3px 0;
	font-size: 75%;
	text-align: left;
}
#breadcrumb_inner {
	margin: 0 auto;
	padding: 0;
	width: 96%;
	max-width:1300px;
	color:#222;
}
#breadcrumb_inner a {
	display: inline-block;
	margin: 0 3px;
	padding: 2px;
	color:#666;
	text-decoration: none;
}
#breadcrumb_inner a.home {
	padding-left: 20px;
	background: url("icon/icon_home.png")no-repeat left center/14px;
}
#breadcrumb_inner a:hover {
	text-decoration:none;
	text-decoration: underline;
}
#breadcrumb_inner .current-item {
	display: inline-block;
	margin: 0 3px;
	padding: 2px;
	color:#222;
	font-weight: 600;
}

.entry-content p {
	margin-bottom: 25px;
}
.entry-content ul,
.entry-content ol {
	margin: 0 0 1.5em 3em;
}

.entry-content ul {
	list-style: disc;
}

.entry-content ol {
	list-style: decimal;
}

.entry-content ul li,
.entry-content ol li {
	margin: 0 0 .5em;
}


.entry-content li > ul,
.entry-content li > ol {
	margin-bottom: 0;
	margin-left: 1.2em;
}
.entry-content .entry_meta {
	margin: 0 10px 20px;
	text-align: right;
	font-size: 90%;
}

.sticky {
	display: block;
}

/*.post,
.page {
	margin: 0 0 1.5em;
}*/

.updated:not(.published) {
	display: none;
}

/*.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}*/

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}


/* Posts and pages（共通パーツ：見出し）
--------------------------------------------- */
/* H1 */
h1.entry-title {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 60px 0 0;
	width: 100%;
	height: 71vh;
	min-height: 480px;
	max-height: 780px;
	background: url("images/pages/page_h1bg_about.jpg")no-repeat 50% 61%/ cover;
}
h1.entry-title:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	display: inline-block;
	width: 100%;
	height: 100px;
	background: url("images/pages/wave.svg")no-repeat center bottom/ 105%;
}
.page-id-8 h1.entry-title {
	background: url("images/pages/page_h1bg_about.jpg")no-repeat 50% 61%/ cover;
}
.page-id-12 h1.entry-title {
	background: url("images/pages/page_h1bg_project.jpg")no-repeat 50% 45%/ cover;
}
.page-id-14 h1.entry-title,
.page-id-362 h1.entry-title {
	background: url("images/pages/page_h1bg_recruit_b.jpg")no-repeat 50% 65%/ cover;
}


h1.entry-title span {
	position: relative;
	display: inline-block;
	padding: 0.5em 3.5em;
	min-width: 550px;
	color: #412F22;
	font-size: 190%;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.15em;
	background: rgba(255,255,255,0.92);
	
}
.single h1.entry-title span {
	padding: 0.8em 2.5em;
	font-size: 150%;
	max-width: 1200px;
}
/* H2 */
.entry-content .h2-style {
	margin: 55px 0 35px;
}
.entry-content .h2-style h2 {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 15px 3px 13px;
	font-size: 180%;
	font-weight: 700;
	background: url("images/pages/page_h3_line.svg")repeat-x left bottom;
}
.entry-content .h2-style h2:before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 2px;
	bottom: -5px;
	width: 100%;
	height: 10px;
	background: rgba(176,49,50,0.10);
}
/* H3 */
.entry-content h3 {
	display: inline-block;
	margin: 8px 0;
	padding: 8px .5em;
	font-size: 100%;
	font-weight: 500;
}

/* Posts and pages（共通パーツ：ボタン）
--------------------------------------------- */
.entry-content p.btn_red {
	margin: 40px 0;
}
.entry-content p.btn_red a {
	position: relative;
	display: inline-block;
	padding: 1em 70px 1em 60px;
	min-width: 370px;
	color: #fff;
	font-size: 105%;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	background: #B03132;
	border: 4px solid #B03132;
	border-radius: 50px;
	transition: all .2s;
}
.entry-content p.btn_red a:before {
	content: "";
	position: absolute;
	right: 30px;
	top: 44%;
	width: 11px;
	height: 4px;
	background: #fff;
	margin-top: 6px;
  -webkit-transform: rotate(-46deg);
          transform: rotate(-46deg);
	border-radius: 5px;
	transition: all .2s;
}
.entry-content p.btn_red a:after {
	content: "";
	position: absolute;
	right: 30px;
	top: 44%;
	width: 11px;
	height: 4px;
	background: #fff;
  -webkit-transform: rotate(46deg);
          transform: rotate(46deg);
	border-radius: 5px;
	transition: all .2s;
}
.entry-content p.btn_red a:hover,
.entry-content p.btn_red a:active {
	color: #B03132;
	background: #fff;
	transition: all .2s;
}
.entry-content p.btn_red a:hover:before,
.entry-content p.btn_red a:active:before,
.entry-content p.btn_red a:hover:after,
.entry-content p.btn_red a:active:after {
	background: #B03132;
	right: 15px;
	transition: all .2s;
}



/* Posts and pages（会社案内）
--------------------------------------------- */
.first_message {
	position: relative;
	margin: 70px calc(50% - 50vw) 0;
	padding: 15px calc(50vw - 50%) 30px;
	background: url("images/pages/seamless_texture_beige.png")repeat;
	border-top: 2px solid #E9E2D3;
	border-bottom: 2px solid #E9E2D3;
}
.first_message .pic_area {
	position: relative;
	margin-top: -45px;
	padding-bottom: 60px;
	min-width: 320px;
}
.first_message .pic_area:before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -10px;
	left: -40px;
	background: url("images/pages/page_illust_rice.svg")no-repeat left bottom/contain;
	width: 25%;
	height: 100%;
}
.first_message .pic_area figure {
	margin: 0;
}
.first_message .pic_area figure img {
	box-shadow: 8px 8px 0px 0px #D6CEB2;
	border-radius: 2px;
}
.first_message .txt_area {
	position: relative;
}
.first_message .txt_area:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -45px;
	right: -30px;
	background: url("images/pages/page_illust_circle.svg")no-repeat right top/contain;
	width: 25%;
	height: 100%;
	z-index: 0;
}
.first_message .txt_area h3 {
	margin: 0;
	padding: 35px 0 45px 15px;
	font-size: 200%;
	line-height: 1.5;	
}
.first_message .txt_area h3 span.line_yellow {
	background: linear-gradient(transparent 55%, rgba(251,237,113,0.8) 55%);
}
.first_message .txt_area .txt {
	padding-left: 1.5em;
	font-size: 120%;
	font-weight: 500;
}

/*「イグゼあまるめ」由来*/
.our-thoughts {
	position: relative;
	margin: 20px calc(50% - 50vw) 0;
	padding: clamp(120px,13vw,230px) calc(50vw - 50%);
	background: url("images/pages/about_exe_bg.webp")no-repeat center 41%/cover;
}
.our-thoughts .white_box {
	padding: 3em 1em;
	font-size: clamp(110%,2vw,150%);
	font-weight: 700;
	background: rgba(255,255,255,0.7);
	
}

/*事業沿革*/
dl.enkaku {
	display: flex;
	flex-wrap: wrap;
	padding: 15px 0;
}
dl.enkaku dt {
	position: relative;
	width: 11em;
	text-align: center;
	border-right: 1px dotted #B03132;
}
dl.enkaku dt:first-child {
	
}
dl.enkaku dt:after {
	content: "●";
	position: absolute;
	right: -7px;
	top: 5px;
	font-size: 65%;
	color: #B03132;
}

dl.enkaku dd {
	margin: 0 0 2.2em;
	padding-left: 2.5em;
	width: calc(100% - 11em);
}
dl.enkaku dd:last-child {
	margin: 0;
}

/*企業情報*/
.info table {
	margin: 0 auto;
	width: 94%;
	max-width: 850px;
}
.info table tr td:nth-child(1){
	color: #fff;
	font-weight: 700;
	width: 15em;
	background: #412424;
}
.info table tr:last-child td:nth-child(1) {
	border-bottom: 1px solid #412424;
}
.info table tr td:nth-child(2) {
	border-top: none;
	border-right: none;
	padding: .7em 1.2em;
}

/* Posts and pages（事業紹介）
--------------------------------------------- */
.project_firsttxt {
	font-family: "Kiwi Maru", serif;
	font-weight: 500;
	font-style: normal;
	font-size: 250%;
}

ul.page_project_menu {
	list-style: none;
	display: flex;
	justify-content: center;
	margin: 0 0 80px;
	column-gap: 5%;
}
ul.page_project_menu li:nth-child(2),
ul.page_project_menu li:nth-child(3) {
	padding-top: 80px;
}
.entry-content .project_h2 {
	position: relative;
	margin: 0 0 30px;
	padding-top: 60px;
}
.entry-content .project_h2:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 15px;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background: url("images/pages/h2title_illust.svg")no-repeat center bottom / contain;
	width: 62px;
	height: 23px;
}
.entry-content .project_h2 p {
	margin: 0;
	font-size: 115%;
	font-weight: 700;
}
.entry-content .project_h2 .h2-style {
	margin: 0;
	text-align: center;
}
.entry-content .project_h2 .h2-style h2 {
	padding: 0;
	font-size: 240%;
	background: none;
}
.entry-content .project_h2 .h2-style h2::before {
	display: none;
}

.projectwrap.odd {
	margin-top: 50px;
	margin-bottom: 100px;
	margin-right: calc(50% - 50vw);
	padding-right: calc(50vw - 50%);
	border: 1px solid #F3F3F3;
	border-radius: 3px 0 0 3px;
	margin-left: 20px;
}
.projectwrap.even {
	margin-top: 50px;
	margin-bottom: 100px;
	margin-left: calc(50% - 50vw);
	padding-left: calc(50vw - 50%);
	padding-right: 30px;
	border: 1px solid #F3F3F3;
	border-radius: 0 3px 3px 0;
}

/*背景色指定*/
.projectwrap.machiyu,
.projectwrap.addeba {
	background: rgba(255,243,209,0.65) url("images/pages/bg_noise30.png")repeat;

}
.projectwrap.furusato {
	background: rgba(255,235,241,0.65) url("images/pages/bg_noise30.png")repeat;
}
.projectwrap.nandemoya {
	background: rgba(213,237,248,0.45) url("images/pages/bg_noise30.png")repeat;
}
.projectwrap.kamekome {
	background: rgba(225,248,218,0.65) url("images/pages/bg_noise30.png")repeat;
}

/*事業写真*/
.projectwrap figure.leftpic {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16/9;
	margin: 0;
}
.projectwrap figure.leftpic img {
	width: 100%;
    height: 100%;
    object-fit: cover;
	object-position: 50% 30%;
}
.projectwrap.odd figure.leftpic,
.projectwrap.odd figure.leftmovie {
	margin-top: -15px;
	margin-left: -15px;
}
.projectwrap.even figure.leftpic {
	margin-top: -15px;
}

/*スタッフコメント*/
div.comment_wrap {
	position: relative;
	margin: 0;
	margin: 3.5em 22% 3em 10%;
	padding: 1.5em 1em 10px 1em;
    font-size: 90%;
	background: rgba(255,255,255,0.6);
	border-radius: 15px;
	border: 1px solid rgba(0, 0, 0, 0.1);
}
div.comment_wrap:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: -2em;
	left: -22%;
	background: url("images/pages/comment_head.svg")no-repeat left top/contain;
	width: 32%;
	height: 100%;
}
/*p.comment_wrap:after,
div.comment_wrap:after {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: -85px;
	right: -37%;
	background: url("images/pages/comment_staff.png")no-repeat center bottom/ contain;
	width: clamp(140px,14vw,200px);
	height: 231%;
}*/
.comment_wrap p,
.comment_wrap a {
	margin-bottom: 15px;
}
.comment_wrap a {
	color: #333;
	font-weight: 700;
}


.staff_pic {
	position: absolute;
	bottom: -60%;
    right: -35%;
	width: clamp(160px,14vw,180px);
}
.staff_pic img{
	transform-origin: bottom center;
}
.staff_pic.shake img{
	animation: fanShake 0.9s cubic-bezier(.36,.07,.19,.97);
}

@keyframes fanShake{

  0%   { transform: rotate(0deg); }

  20%  { transform: rotate(-8deg); }

  80%  { transform: rotate(7deg); }

  100% { transform: rotate(0deg); }

}


/*紹介文*/
p.about_txt {
	margin: 10% .5em 6%;
	font-size: clamp(100%,1.7vw,125%);
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 1.8;
}
/*インフォメーション*/
dl.project_info {
	display: flex;
	flex-wrap: wrap;
	font-size: 92%;
}
dl.project_info dt {
	width: 8em;
	margin: 0;
    padding: .7em 2em .7em 0;
	text-align: right;
    border-bottom: 1px solid #A7A7A7;
}
dl.project_info dd {
	margin: 0;
	padding: .7em 0;
	width: calc(100% - 8em);
	border-bottom: 1px solid #A7A7A7;
}
/*ラストテキスト*/
.lasttxt_s {
	margin: 1.5em;
}

/*あっでばラインボタン*/
span.addeba_line {
	position: relative;
}
span.addeba_line:after {
	content: "";
	position: absolute;
	top: -2px;
	left: 96%;
	display: inline-block;
	background: url("icon/line-app-icon.png")no-repeat;
	width: 48px;
	height: 30px;
}
/*かめこめ商品*/
.entry-content p.items {
	position: relative;
	margin: 0 0 10px;
	padding-left: 1em;
	font-weight: 700;
}
.entry-content p.items:before {
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	display: inline-block;
	clip-path: polygon(0 0, 0% 100%, 50% 50%);
	background: #333;
	width: 1em;
	height: 1em;
}
.projectwrap.kamekome figure {
	margin: 0;
}
.projectwrap.kamekome figcaption {
	text-align: center;
	font-size:clamp(50%,.8vw,70%) !important;
}


/* Posts and pages（採用情報）
--------------------------------------------- */
.recruit_firsttxt {
	font-family: "Kiwi Maru", serif;
	font-weight: 500;
	font-style: normal;
	font-size: 250%;
}
ul.job_list {
	list-style: none;
	margin: 0 0 60px 1em;
}
ul.job_list li {
	margin-bottom: 1.5em;
}
ul.job_list li span {
	display: inline-block;
	margin: 0 0 7px -10px;
	padding: .2em .6em;
	color: #fff;
	font-size: 120%;
	font-weight: 700;
	background: #572F2F;
	border-radius: 2px;
}
.voice_wrap img {
	box-shadow: 10px 10px 0px #EFECEC;
}


/* Posts and pages（ページナビ）
--------------------------------------------- */
main .wp-pagenavi {
	margin: 30px 0 0;
	text-align: left;
	font-size: 85%;
}
main .wp-pagenavi span,
main .wp-pagenavi a {
	display: inline-block;
	padding: 3px 9px 3px;
	color: #222;
	border-radius: 2px;
	border: 1px solid #444;
}
main .wp-pagenavi a 
,main .wp-pagenavi a:visited {
	color: #222;
}
main .wp-pagenavi a:hover
,main .wp-pagenavi a:active {
	background: #EFE9DE;
	text-decoration: none;
	color: #222;
	border: 1px solid #444;
}

main .wp-pagenavi span.pages {
	display: block;
	margin: 10px 5px;
	padding: 0;
	font-size: 80%;
	text-align: left;
	border: none;
}
main .wp-pagenavi span.current {
	color: #fff;
	background: #444;
	border: 1px solid #444;
}

main .wp-pagenavi span.extend {
	border: none;
	padding-right: 0px;
	padding-left: 0px;
}

/* Posts and pages（アーカイブぺージ）
--------------------------------------------- */
.archive .news_inner {
	max-width: 1200px;
    width: 100%;
}

/* Posts and pages（検索結果ぺージ）
--------------------------------------------- */
/*ul.search_result {
	list-style: disc;
	padding-left: 30px;
}
ul.search_result li {
	margin-bottom: 0.6em;
}*/

/* Posts and pages（お問い合わせ）
--------------------------------------------- */
.inquiry_list {
	margin: 60px auto 0;
	width: 90%;
	max-width: 1000px;
}
.inquiry_list dt.inquiry_title {
	display: inline-block;
	width: 14em;
	vertical-align: top;
	font-weight: 400;
}
.inquiry_list dd {
	display: inline-block;
	margin: 0;
	padding: 0;
	width: calc(100% - 15em);
}

.inquiry_list .must-txt {
	position: relative;
	top: -1px;
	left: 3px;
	padding: 0px 4px 1px;
	color: #fff;
	font-size: 60%;
	font-weight: 500;
	background: #db3b3b;
	border-radius: 2px;
	cursor: default;
	user-select: none;
}
.wpcf7-not-valid-tip {
	font-size: 80%;
}

.wpcf7-spinner {
	/*display: none;*/
}


.recaptcha {
	margin: 50px 0 0;
	color: #777;
	font-size: 65%;
	line-height: 1.5em;
}
#agreement {
	margin-top: 30px;
}
#agreement p {
	text-align: center;
}
input[type="submit"].wpcf7-form-control,
input[type="button"].wpcf7-form-control {
	padding: 30px 110px;
	border: solid 1px #999999;
	font-size: 100%;
	font-weight: 600;
	letter-spacing: 0.25em;
	cursor: pointer;
}
input[type="button"].wpcf7-form-control {
	padding: 30px 60px;
	background: #f5f5f5;
}
input[type="submit"].wpcf7-form-control:hover,
input[type="button"].wpcf7-form-control:hover {
	background: #aaa;
	transition: all .2s;
}
input[type="submit"].wpcf7-form-control:active,
input[type="submit"].wpcf7-form-control:focus,
input[type="button"].wpcf7-form-control:active,
input[type="button"].wpcf7-form-control:focus {
	background: #ccc;
	border: solid 1px #999;
	transition: all .2s;
}
select.con_details {
	padding: .3em .6em;
	background: #fff;
	width: 22em;
	border: 1px solid #969696;
	border-radius: 3px;
}
.con_name,
.con_tel {
	width: 70%;
	max-width: 17em;
}
.con_company,
.con_email {
	width: 85%;
	max-width: 28em;
}
.con_inquiry {
	width: 100%;
	height: 12em;
}
.wpcf7-spinner {
	display: block;
	margin: 15px auto 0;
	width: 24px;
	height: 24px;
}


/* sidebar
--------------------------------------------- */
/* ▼side（これまでのお知らせ） */
aside h2 {
	padding: 10px 3px;
	color: #b03132;
	font-size: 95%;
	font-weight: 600;
	border-bottom: 2px solid #b03132;
}
aside a,
aside a:visited {
	color: #333;	
}
.past_entry,
.monthly-eachcat ul {
	margin-bottom: 25px;
}
.past_entry > ul,
.monthly-eachcat > ul {
	margin-top: 15px;
	font-size: 83%;
}
.past_entry ul li {
	position: relative;
	padding:11px 2px 13px 17px;
	border-bottom: 1px dotted #777;
}
.past_entry ul li time {
	display: block;
	margin-bottom: 4px;
	font-size: 90%;
}
.past_entry ul li time:before {
	content: "";
	position: absolute;
	top: 18px;
    left: 6px;
	display: inline-block;
	background: #6b6b6b;
	width: 6px;
	height: 6px;
	border-radius: 10px;
}
.past_entry ul li .catname {
	color: #fff;
	padding: 0 6px;
	font-size: 78%;
	border-radius: 2px;
}
.past_entry .more {
	margin: 0;
	text-align: right;
}
.past_entry .more a {
	font-size: 75%;
}
ul.monthly li {
	margin: 5px;
}
ul.eachcat li {
	margin: 5px;
}
ul.eachcat > li > ul {
	padding-left: 2.3em;
}
ul.eachcat > li > ul > li {
	position: relative;
}
ul.eachcat > li > ul > li:before {
	content: "ー";
	position: absolute;
	top: 0px;
    left: -20px;
	color: #c3c3c3;
	font-weight: 700;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}
.widget select {
	max-width: 100%;
}


/* footer
--------------------------------------------- */
#site_footer {
	position: relative;
	margin-top: 80px;
	padding-top: 90px;
	background: url("images/footers/bg_noise30.png")repeat;
}
#site_footer:after {
	content: "";
	position: absolute;
	top: -2px;
	left: 0;
	display: inline-block;
	background: url("images/footers/wave.svg")no-repeat center bottom/ 105%;
	width: 100%;
	height: 100px;
	transform: rotate(180deg);
}
#site_footer:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 100%;
	height: 100%;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e9ddbc+0,f3e9cd+72,adecea+76,daf3f5+100 */
background: linear-gradient(to bottom,  #E1D1A5 0%,#f3e9cd 83%,#adecea 89%,#daf3f5 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	z-index: -1;

}

.footer_innerwrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 30px 0 0;
	width: 90%;
	max-width: 1250px;
}
.footer_innerwrap .map {
	width: 55%;
}
.footer_innerwrap .about {
	width: 40%;
}

p.footer_title {
	font-size: clamp(150%,2.5vw,170%);
	font-weight: 600;
	letter-spacing: 0.07em;
}
p.footer_info {
	font-size: 90%;
	line-height: 1.4em;
}
p.fotter_tel {
	margin: 25px 0;
}
p.footer_info a.txtlink {
	display: inline-block;
}
.footer_contact a {
	display: inline-block;
	padding: 1.3em 110px 1.3em 4em;
	color: #000;
	font-weight: 600;
	text-decoration: none;
	background:#fff url("images/footers/footer_contact_illust.png")no-repeat 80% center/ 42px;
	border-radius: 50px;
	box-shadow: 0 3px 6px rgba(0,0,0,0.16);
	transition: all .2s;
}
.footer_contact a:hover {
	opacity: 0.75;
	transition: all .2s;
}
.footer_link {
	margin: 10px 5px;
}
.footer_link a {
	position: relative;
	padding-left: 1em;
	color: #333;
	font-size: 80%;
}
.footer_link a:before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	display: inline-block;
	clip-path: polygon(0 0, 0% 100%, 50% 50%);
	background: #333;
	width: 12px;
	height: 12px;
}

/*コピーライト*/
#copyright {
	position: absolute;
	bottom: 0;
	padding: 15px 15px 10px;
	font-size: 60%;
	text-align: center;
	letter-spacing: 0.25em;
}
#copyright a,
#copyright a:visited {
	color: #222;
	text-decoration: none;
}
#copyright a:hover,
#copyright a:active {
	text-decoration: underline;
}


.page-top {
	transform: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
}
.page-top img {
	width: 55px;
	height: 55px;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 100%;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}
.alignleft:after {
   content: "";
   display: block;
   clear: both;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*PDFアイコン*/
a[href $='.pdf'] {
    background:url(icon/ico_pdf.gif) no-repeat right 70%;
    padding:0 18px 0 0;
}
a[href $='.pdf'] a {
    text-decoration:none;
}

a[href $='.pdf'] a:hover {
    text-decoration:none;
}


}
