@charset "utf-8";
/*
Theme Name: i-flower
Theme URI: https://www.dik.co.jp/
Version: 2.0.1
Author: DIK
*/

#humberger {
    -vendor-animation-duration: 3s;
    -vendor-animation-delay: 2s;
    -vendor-animation-iteration-count: infinite;
}
* { box-sizing: border-box; }
html { font-size: 62.5%; /* 15px x 0.625 = 10px(=1rem) */ }
body {
	background: #f7f6ec;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;*/
	font-size: 1.6rem;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
	line-height: 1.7;
}
/*img {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-touch-callout: none;
    -moz-user-select: none;
    user-select: none;
}*/

/* ------------------------------------------------------- */
/* layout ------------------------------------------------ */
/* ------------------------------------------------------- */

/* base サイトレイアウトの基本設定 ----------------------- */

#top {
	width: 100%;
}
#container {
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto 40px;
	padding: 0;
	clear: both;
}
#main {
	/*width: calc(100% - 285px);
	float: left;*/
    width: 100%;
    background: #fff;
    padding: 32px;
}
/*#side {
	width: 260px;
	float: right;
}*/
#footer {
	width: 100%;
	min-width: 1000px;
}
@media only screen and (max-width:999px) {
    #container {
        min-width: 100px;
        width: 100%;
        padding: 0 15px 0 15px;
    }
    #main {
        width: 100%;
        margin: 0 0 15px 0;
        padding: 15px
    }
    /*#side {
        width: 100%;
        float: none;
    }*/
    #footer {
        min-width: 100px;
        width: 100%;
    }
}

/* ------------------------------------------------------- */
/* header ------------------------------------------------ */
/* ------------------------------------------------------- */

#header {
	height: 150px;
	width: 100%;
	position: fixed;
	z-index: 10;
	background: linear-gradient(to bottom, rgba(255,255,255,1) 50%,rgba(255,255,255,0.9) 100%);
	top: 0;
	left: 0;
    border-bottom: 2px solid #dfdfcd;
}
.headerInner {
	max-width: 1115px;
	min-width: 1000px;
	margin: 4px auto;
}
#top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.headerTitle {
	display: flex;
	align-items: center;
    width: calc(100% - 180px);
}
.logo {
	width: 220px;
	height: 80px;
    margin: 0 0 10px;
}
.logo a {
	display: block;
    width: 100%;
    height: 100%;
	background: url(../../../../images/base/logo.png);
    background-size: 100%;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.headerMenu li {
    display: inline-block;
    font-size: 1.4rem;
    background: #008449;
    width: 170px;
}
.headerMenu li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f54e";
    margin-right: 4px;
    color: #fff;
}
.headerMenu li a{
    display: block;
    padding: 10px 16px;
    color: #fff;
    text-decoration: none;
    text-align: center;
}
@media only screen and (max-width:999px) {
	#header {
		height: auto;
        width: 100%;
        position: static;
		background: rgba(255,255,255,1.0);
	}
	.headerInner {
		width: 100%;
		min-width: 100px;
		padding: 5px;
        margin: 0 auto;
	}
    #top {display: block;}
	.headerTitle {
		flex-wrap: wrap;
		padding: 0;
	}
	.logoTxt {
		width: 100%;
		font-size: 1.2rem;
		padding-left: 0;
        order: 1;
	}
	.logo {
        width: 160px;
        height: 44px;
		margin-bottom: 5px;
        order: 2;
	}
	.logo a {
		background: url(../../../../images/base/logoSp.png) no-repeat;
		background-size: 160px 44px;
	}
    .headerMenu {display: none;}
}

/* ------------------------------------------------------- */
/* footer ------------------------------------------------ */
/* ------------------------------------------------------- */

#footer {
	background: #efeddb;
}
.footerInner {
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto;
    padding: 24px 0;
    /*display: flex;
    align-items: center;
    justify-content: space-between;*/
}
/*.footerInfo,
.footerMenu {width: 50%;}
.footerInfo {
    order: 1;
    text-align: left;
    padding-right: 25px;
}
.footerMenu {
    order: 2;
    text-align: right;
}*/
.footerInfo{
    text-align: center;
    font-size: 1.9rem;
}
.footerInfo span{
    display: inline-block;
    position: relative;
    padding-left: 48px;
}
.footerInfo span::before{
    content: "";
    display: inline-block;
    width: 40px;
    height: 24px;
    background: url(../../../../images/base/footerLogo.png) top center no-repeat;
    position: absolute;
    left: 0;
}
.footerMenu{
    padding-top: 24px;
    margin-bottom: 24px;
}
.footerMenu ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.footerMenu ul li:nth-child(odd){
    /*margin-right: 12px;*/
}
.footerMenu ul li {
    display: inline-block;
    float: left;
    margin-bottom: 8px;
    width: calc((100% - 24px) / 2);
}
.footerMenu li a {
    display: block;
    text-decoration: none;
    color: #000;
    background: #fff;
    padding: 18px 16px;
    position: relative;
    font-size: 1.5rem;
}
.footerMenu ul li a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    padding: 0 5px;
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -13px;
    color: #008449;
}
#copyright {
    text-align: center;
    font-size: 1.2rem;
    padding: 2px 0;
    background: #bdd9cc;
    color: #008449;
}

.headerInfo1{
    display: none;
}
@media only screen and (max-width:999px) {
    .footerInner {
        width: 100%;
        min-width: 100px;
        display: block;
	    padding: 15px;
    }
    /*.footerInfo,
    .footerMenu {width: 100%;}*/
    .footerInfo {
        /*text-align: left;*/
        padding-right: 0;
        font-size: 1.7rem;
    }
    .footerMenu {
        margin-bottom: 15px;
        padding-top: 8px;
    }
    
    .footerInfo span{
        padding-left: 38px;
    }
    .footerInner div:nth-of-type(1) span::before{
        width: 30px;
        height: 18px;
        background-size: 30px 18px;
        top: 2px;
    }
    .footerMenu ul li{
        width: 100%;
    }
    #copyright {margin-bottom: 48px;}
    .headerInfo1{
        display: inherit;
        width: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        padding: 5px;
        background: #daede4;
        z-index: 1;
        }
    .headerInfo1 ul{
        display: flex;
        justify-content: space-between;
    }
    .headerInfo1 li a{
        color: #006a3b;
        display: block;
        padding: 10px 16px;
        text-decoration: none;
        text-align: center;
    }
    .headerInfo1 li {
        font-size: 1.3rem;
        background: #fff;
        width: calc((100% - 5px)/2)
    }
    .headerInfo1 li:nth-of-type(1) a:before, .headerInfo1 li:nth-of-type(2) a:before{
        color: #006a3b;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        margin-right: 4px;
    }
    .headerInfo1 li:nth-of-type(1) a:before{content: "\f095";}
    .headerInfo1 li:nth-of-type(2) a:before {content: "\f54e";}
}

/*----- index -----*/
.blogList{
    display: flex;
    flex-wrap: wrap;
}
.blogList li {
    width: calc((100% - 25px)/2);
    /*margin: 0 24.9px 25px 0;*/
    padding: 0 25px 25px 0;
    position: relative;
    display: flex;
}
.blogListImg {
    width: 120px;
}
.blogListImg>a {
    width: 100%;
    display: block;
    overflow: hidden;
    position: relative;
}
.blogListBox {
    width: calc(100% - 120px);
    padding-left: 10px;
}
.blogListTitle a {
    color: #000;
    text-decoration: none;
    font-weight: 500;
}
@media only screen and (max-width:999px){
    .blogListImg{
        width: 80px;
    }
    .blogListBox{
        width: calc(100% - 80px);
    }
    .blogList li{
        width: 100%;
        padding: 0 0 25px 0;
    }
}

/* Widget */
.widget ul li {
	border-bottom: 1px dotted #CCC;
	margin-bottom: 5px;
	padding: 0 10px 0px 10px;
	font-size: 1.4rem;
}
.widget ul li a {
	display: block;
}
.tagcloud a {
	border-bottom: 1px dotted #CCC;
	margin-bottom: 5px;
	padding: 0 10px 0px 10px;
	font-size: 1.4rem !important;
	display: block;
}
.archive_month select {
	width: 96%;
	margin: 0 2%;
}

/* ------------------------------------------------------- */
/* プリント用 -------------------------------------------- */
/* ------------------------------------------------------- */

@media print {	
    #humberger, #pageTop, #pageTop div, #movePageTop, #pageTop p {
        display: none!important;
    }
    #container {
        padding: 0!important;
    }
    #header {
        position: static!important;
    }
    .topContents {
        min-width: 1000px!important;
        width: 100%!important;
        margin: 0!important;
        padding: 0!important;
        overflow: hidden!important;
    }
}

/* ------------------------------------------------------- */
/* dark mode --------------------------------------------- */
/* ------------------------------------------------------- */

/*@media (prefers-color-scheme: dark) {
	html { filter: invert(1) hue-rotate(180deg); }
	html img { filter: invert(1) hue-rotate(180deg); }
}*/

/* Q＆A -------------------------------------------- */
.faq {
	margin-bottom: 32px;
}
.faq dt, .faq dd{
	position: relative;
	line-height:2.6rem;
	border-radius: 4px;
}
.faq dt{
	margin-bottom:16px;
	border-right: 20px solid #bdd9cc;
	padding: 16px 28px 16px 60px;
	cursor: pointer;
	background: #f7f6ec;
	display: flex;
	align-items: center;
}
.faq dd{
	margin-bottom:16px;
	padding: 16px 0 16px 60px;
	display: none;
}
.faq dt span,.faq dd span{
	font-size: 2.50rem;
	border-radius:20px;
	width:40px;
	height:40px;
	display: block;
	text-align: center;
	margin-right:8px;
	padding-top: 6px;
	position: absolute;
	left: 8px;
	top: 8px;
}
.faq dt span{
	background:#bdd9cc;
	color:#fff;
	text-shadow: 1px 1px 0px #a2baaf;  
}
.faq dd span{
	background:#e8e19a;
	color:#fff;	
	text-shadow: 1px 1px 0px #c0ba7f; 
}
.faq dt::after {
	content: "＋";
	position: absolute;
	right: -20px;
	top:50%;
	font-size: 2.0rem;
	line-height: 2.0rem;
	margin-top: -10px;
}
.faq dt.active::after {
	content: "－";
	position: absolute;
	right: -20px;
	top:50%;
	font-size: 2.0rem;
	line-height: 2.0rem;
	margin-top: -10px;
}
.faq dd a {
	text-decoration: none;
	cursor: default;
}
@media only screen and (max-width:768px) {
	.faq dd a {
		display: block;
		border: 1px solid #ccc;
		margin: 16px auto 0;
		border-radius: 4px;
		padding: 8px;
		text-align: center;
		cursor: pointer;
	}
	.faq dd a::after {
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		content: "\f0da";
		margin-left: 8px;
		color: #008449;
	}
}

.midashi1 {
	font-size: 2.4rem;
	line-height: 3.6rem;
	margin-bottom: 24px;
	text-align: center;
	color: #000;
	font-weight: bold;
}
.midashi1::after {
	display: block;
	content: "";
	width: 124px;
	height: 20px;
	background: url("../../../../images/contents/midashi1.png") top center no-repeat;
	margin: 16px auto 0;
}
