@charset "utf-8";
/* ------------------------------------------------------- */
/* Share ------------------------------------------------- */
/* ------------------------------------------------------- */

/* display */
.dispinline {display: inline;}
.dispb {display: block!important;}
.dispinlineb {display: inline-block;}
.dispnone {display: none;}
.nonePc {display: none;}
.oHidden {overflow: hidden;}

@media only screen and (max-width:999px) {
    .nonePc {display: inline-block;}
    .noneSp {display:none;}
}

/* margin */
.mauto {margin-left: auto;margin-right: auto;}
.mb0 {margin-bottom: 0px!important;}
.mb1 {margin-bottom: 1px!important;}
.mb5 {margin-bottom: 5px!important;}
.mb10 {margin-bottom: 10px!important;}
.mb15 {margin-bottom: 15px!important;}
.mb20 {margin-bottom: 20px!important;}
.mb25 {margin-bottom: 25px!important;}
.mb30 {margin-bottom: 30px!important;}
.mb35 {margin-bottom: 35px!important;}
.mb40 {margin-bottom: 40px!important;}
.mb45 {margin-bottom: 45px!important;}
.mb50 {margin-bottom: 50px!important;}
.mb55 {margin-bottom: 55px!important;}
.mb60 {margin-bottom: 60px!important;}
.mb65 {margin-bottom: 65px!important;}
.mb70 {margin-bottom: 70px!important;}
.mb75 {margin-bottom: 75px!important;}
.mb80 {margin-bottom: 80px!important;}
.mb85 {margin-bottom: 85px!important;}
.mb90 {margin-bottom: 90px!important;}
.mb95 {margin-bottom: 95px!important;}
.mb100 {margin-bottom: 100px!important;}

/* width */
.w100 {width: 100%;}
.w50, .w50sp100 {width: 50%;}
@media only screen and (max-width:999px) {
    .w50sp100 {width: 100%;}
}

/* vertical align */
.vaTop {vertical-align: top;}
.vaBottom {vertical-align: bottom;}
.vaMiddle {vertical-align: middle;}
.aiCenter {align-items: center;}

/* indent */
.indent {text-indent: 1.6rem;}
.indent1 {
	margin-left: 1.6rem;
	text-indent: -1.6rem;
}

/* 改ページ */
.bpa {page-break-before: always;}

/* font ---------------------------------------------------*/

/* font style */
strong, .bold {font-weight: bold;}
.nbold {font-weight: normal;}
.underLine {text-decoration: underline;}

/* font size */
.small1 {font-size: 1.4rem;}
.small2 {font-size: 1.2rem;}
.big1 {font-size: 1.8rem;}
.big2 {font-size: 2.0rem;}

/* text align */
.txtRight {text-align: right;}
.txtLeft {text-align: left;}
.txtCenter, .txtCenter2 {text-align: center;}
@media only screen and (max-width:999px) {
    .txtCenter2{text-align: left;}
}

/* font color */
.fcRed {color: #FF0004;}
.fcBlue {color: #06C;}
.fcWhite {color: #fff;}

/* font family */
.fontFamily1 {
	font-family: Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

/* image -------------------------------------------------*/
/*イメージのはみ出し防止*/
img {
	max-width: 100%;
	height:auto;
}
/* image align */
img.imgCenter {
	margin-left: auto;
	margin-right: auto;
	display: block;
}
img.imgLeft {
	padding: 0px 25px 25px 0px;
	float: left;
}
img.imgRight {
	padding: 0px 0px 25px 25px;
	float: right;
}
/* image align スマートフォンでフロート解除 */
img.imgLeftN1 {
	padding: 0 25px 25px 0;
	float: left;
}
img.imgRightN1 {
	padding: 0 0 25px 25px;
	float: right;
}
@media only screen and (max-width:999px) {
    img.imgLeftN1, img.imgRightN1 {
        padding: 0;
        float: none;
        display: block;
        margin: 0 auto 15px;
    }
}
/* link ---------------------------------------------------*/
a {
	text-decoration: underline;
	/*color: #0781d5;*/
	color: #1558d6;
}
a:hover {
	color: #333;
}

/*blank用ポイント付*/
#container a[target="_blank"]::after,
.externalLink::after {
	font-family: "Font Awesome 5 Free";
	content: "\f35d";
	font-weight: 900;
    margin-left: 5px;
}
#container a[target="_blank"].noExternal::after {content: "";}

/* ボタン用 */
.buttonLink1, .buttonLink2 {
	margin: 0 auto 25px;
	padding: 0;
	text-align:center;
}
.buttonLink1 a, .buttonLink2 a {
	display: block;
	position: relative;
	color: #fff;
	text-decoration: none;
	padding: 10px 30px 10px 5px;
	border-radius:6px;
}
.buttonLink1 a {background: #56914d;}
.buttonLink2 a {background: #7e5456;}
.buttonLink1 a:hover {background: #346e2d;}
.buttonLink2 a:hover {background: #623c3d;}
.buttonLink1 a::before, .buttonLink2 a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -17px;
	color: #fff;
	font-size: 2.0rem;
}
.buttonLink1.line a{
	background:#06C755;
	&::before{
		display:none;
	}
	&:hover{
		background:#4cc764;
	}
}
.lineFriendBtn a,
.front a .lineFriendBtn{
    display:inline-block;
    padding:10px 20px;
    text-align:center;
    color:#fff;
    text-decoration:none;
    background-color:#06c755;
    border-radius: 10px;
}
.lineFriendBtn a:hover,
.front a:hover .lineFriendBtn{
    background-color:#02a52f;
}

/*もっとみる*/
.linkMore1 {
	text-align: center;
    margin-bottom: 25px;
}
.linkMore1 a {
	display: inline-block;
	border: 1px solid #ccc;
	padding: 15px 50px 15px 30px;
	position: relative;
	text-decoration: none;
    background: rgba(255,255,255,1.0);
    transition: all 0.3s ease;
	color: #000;
}
.linkMore1 a:hover {background: rgba(255,255,255,0.8);}
.linkMore1 a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f054";
	position: absolute;
	right: 0;
	top: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 100%;
}

.linkMore2 a {
	display: block;
	background: #eef4ed;
	padding: 10px 40px;
	border-radius: 4px;
	color: #56914d;
	text-align: center;
	position: relative;
	font-weight: 700;
	cursor: pointer;
	margin-bottom: 25px;
	text-decoration: none;
}
.linkMore2 a::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
	color: #56914d;
	width: 40px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right:0;
	top: 0;
	font-size: 2.2rem;
}
.linkMore2 a:hover {
	background: #56914d;
	color: #fff;
}
.linkMore2 a:hover::after {color: #fff;}

/*アンカーリンク用*/
.anchor::before {
   content:"";
   display:block;
   height:130px;
   margin:-130px 0 0;
}
@media only screen and (max-width:999px) {
	.anchor::before {
	   content:"";
	   display:block;
       height:80px;
       margin:-80px 0 0;
	}
}

/*ページ内リンクリスト1*/
.tagBox .pageLinkList1 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox .pageLinkList1 li {
    width: calc((100% - 10px) / 3);
    list-style-type: none;
	margin: 0 4.9px 5px 0;
}
.tagBox .pageLinkList1 li:nth-of-type(3n) {margin-right: 0;}
.tagBox .pageLinkList1 li a {
    padding: 10px 20px 10px 10px;
    border-radius: 5px;
    background: #eef4ed;
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
	color: #000;
}
.tagBox .pageLinkList1 li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    width: 20px;
    height: 100%;
    justify-content: center;
    align-items: center;
	color: #56914d;
}
@media only screen and (max-width:999px) {
    .tagBox .pageLinkList1 {
        display: block;
    }
    .tagBox .pageLinkList1 li {
        width: 100%;
        margin: 0 0 5px 0;
    }
}

/*ページ内リンクリスト2*/
.tagBox .pageLinkList2 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox .pageLinkList2 li {
    width: calc((100% - 5px) / 2);
    list-style-type: none;
	margin: 0 4.9px 5px 0;
}
.tagBox .pageLinkList2 li:nth-of-type(2n) {margin-right: 0;}
.tagBox .pageLinkList2 li a {
    padding: 10px 20px 10px 10px;
    border-radius: 5px;
    background: #eef4ed;
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
	color: #000;
}
.tagBox .pageLinkList2 li a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0da";
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    width: 20px;
    height: 100%;
    justify-content: center;
    align-items: center;
	color: #56914d;
}
@media only screen and (max-width:999px) {
    .tagBox .pageLinkList2 {
        display: block;
    }
    .tagBox .pageLinkList2 li {
        width: 100%;
        margin: 0 0 5px 0;
    }
}

/* file type icon - text */
/*a[href$=".pdf"],
a[href$=".docx"], a[href$=".doc"],
a[href$=".xlsx"], a[href$=".xls"],
a[href$=".pptx"], a[href$=".ppt"],
a[href$=".zip"] {
    position: relative;
    text-decoration: none;
    color: #000;
}
a[href$=".pdf"]:hover,
a[href$=".docx"]:hover, a[href$=".doc"]:hover,
a[href$=".xlsx"]:hover, a[href$=".xls"]:hover,
a[href$=".pptx"]:hover, a[href$=".ppt"]:hover,
a[href$=".zip"]:hover {
    color: #658dc8;
}
a[href$=".pdf"]::before,
a[href$=".docx"]::before, a[href$=".doc"]::before,
a[href$=".xlsx"]::before, a[href$=".xls"]::before,
a[href$=".pptx"]::before, a[href$=".ppt"]::before,
a[href$=".zip"]::before {
    font-family: "UDデジタル教科書体 R JIS2004", UDDigiKyokasho R JIS2004;
    padding: 3px 6px;
    border-radius: 3px;
    position: relative;
    top: -2px;
    font-size: 1.1rem!important;
    margin-right: 5px;
}
a[href$=".pdf"]::before {
    content: "PDF"!important;
    background: #f00;
	color: #fff;
}
a[href$=".docx"]::before, a[href$=".doc"]::before {
    content: "Word"!important;
    background: #295394;
	color: #fff;
}
a[href$=".xlsx"]::before, a[href$=".xls"]::before {
    content: "Excel"!important;
    background: #007c00;
	color: #fff;
}
a[href$=".pptx"]::before, a[href$=".ppt"]::before {
    content: "PPT"!important;
    background: #ca4223;
	color: #fff;
}
a[href$=".zip"]::before {
    content: "zip"!important;
    background: #e2860f;
	color: #fff;
}*/

/* float ----------------------------------------------*/
.floatLeft {float: left;}
.floatRight {float: right;}

/* 2つ並びのボックス スマートフォンで解除 */
.floatLeft2col1,
.floatRight2col1 {
	width: calc((100% - 25px) / 2);
	margin-bottom: 10px;
}
.floatLeft2col1 {
	float: left;
	clear: left;
}
.floatRight2col1 {float:right;}
@media only screen and (max-width:999px) {
    .floatLeft2col1,
    .floatRight2col1 {
        width: 100%;
        float: none;
    }
}

/* box -----------------------------------------------*/
.box1, .box2, .box3 {
	padding: 25px;
	margin-bottom: 25px;
	border-radius: 10px;
}
.box1 {
	border: 1px solid #ccc;
}
.box2 {
	background: #eef4ed;
}
.box3 {
	background: #f2eeee;
}

@media only screen and (max-width:999px) {
    .box1, .box2, .box3 {
        padding: 10px;
    }
}

/*container 幅固定用box*/
/*
.contentsBox1：スマートフォンで幅100%＋左右余白なし
.contentsBox2：スマートフォンで幅100%＋左右余白あり
*/
.contentsBox1,
.contentsBox2 {
	max-width: 1115px;
	min-width: 1000px;
	margin:0 auto;
}
@media only screen and (max-width:999px) {
	.contentsBox1,
	.contentsBox2 {
		width:100%;
		min-width: 100px;
	}
	.contentsBox2{
		padding:0 15px;
	}
}

/*flexBox1 左右50%*/
/*flexBox2 左260px*/
/*flexBox3 右260px*/
/*flexBox4 均等3つ並び*/
/*flexBox5 左355px*/
/*flexBox6 右355px*/
/*flexBox7 均等4つ並び*/
.flexBox1,
.flexBox2,
.flexBox3,
.flexBox4,
.flexBox5,
.flexBox6,
.flexBox7{
    display: flex;
    margin-bottom: 25px;
}
.flexBox1 > div:nth-of-type(1),
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(1),
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(1){
    margin-right: 25px;
}
.flexBox1 > div {width: calc((100% - 25px) / 2);}
.flexBox2 > div:nth-of-type(1),
.flexBox3 > div:nth-of-type(2){
    width: 260px;
}
.flexBox5 > div:nth-of-type(1),
.flexBox6 > div:nth-of-type(2){
    width: 355px;
}
.flexBox2 > div:nth-of-type(2),
.flexBox3 > div:nth-of-type(1){
    width: calc(100% - 285px);
}
.flexBox5 > div:nth-of-type(2),
.flexBox6 > div:nth-of-type(1){
    width: calc(100% - 380px);
}
.flexBox4 > div {
    width: calc((100% - 50px) / 3);
    margin-right: 24.9px;
}
.flexBox7 > div {
    width: calc((100% - 75px) / 4);
    margin-right: 24.9px;
}
.flexBox4 > div:nth-of-type(3),.flexBox7 > div:nth-of-type(4) {margin-right: 0;}
@media only screen and (max-width:999px) {
    .flexBox1,
    .flexBox2,
    .flexBox3,
    .flexBox4,
	.flexBox5,
	.flexBox6,
    .flexBox7{
        display: block;
    }
    .flexBox1 > div:nth-of-type(1),
    .flexBox2 > div:nth-of-type(1),
    .flexBox3 > div:nth-of-type(1),
    .flexBox4 > div,
	.flexBox5 > div:nth-of-type(1),
	.flexBox6 > div:nth-of-type(1),
    .flexBox7 > div{
        width: 100%;
        margin: 0 0 15px 0;
    }
    .flexBox1 > div:nth-of-type(2),
    .flexBox2 > div:nth-of-type(2),
    .flexBox3 > div:nth-of-type(2),
    .flexBox4 > div:nth-of-type(3),
	.flexBox5 > div:nth-of-type(2),
    .flexBox6 > div:nth-of-type(2),
    .flexBox7 > div:nth-of-type(4){
        width: 100%;
        margin-bottom: 0;
    }
}

/* dl ----------------------------------------------*/
dl.dl1 {
	margin-bottom: 25px;
}
.dl1 dt,
.dl1 dd {
	border-left:5px solid #4b8345;
	padding: 10px;
}
.dl1 dt {
	font-weight: bold;
	background: #f5f5f5;
}
.dl1 dd {
	margin-bottom: 15px;
}
.dl1 dd:last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------- */
/* contents ---------------------------------------------- */
/* ------------------------------------------------------- */
#main p {
    margin-bottom: 25px;
}
.topContents {
	width: 100%;
	min-width: 1000px;
	margin: 0;
	overflow: hidden;
}

@media only screen and (max-width:999px) {
	.topContents {
		min-width: auto;
		min-width: initial;
		margin: 0;
	}
}

/* pagetitle navi ----------------------------------------------*/
.pageTitle {
    background: #fffdf0;
    padding: 20px 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid #f5f1d4;
}
.pageTitle h1 {
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto;
	font-size: 2.5rem;
}
.breadcrumbs {
	font-size: 1.3rem;
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto 60px;
}
.breadcrumbs br {display: none;}

@media only screen and (max-width:999px) {
	.pageTitle {
		padding: 10px 10px 8px 10px;
		margin-bottom: 5px;
		border-top: 1px solid #d7cc83;
		border-bottom: 1px solid #d7cc83;
	}
	.pageTitle h1 {
		width: 100%;
		min-width: 100px;
		margin: 0 auto;
		font-size: 2.0rem;
	}
	.breadcrumbs {
		width: 100%;
		min-width: 100px;
		margin: 0 auto 15px;
		overflow-x: scroll;
		white-space: nowrap;
		padding: 5px 15px;
	}
	.breadcrumbs::-webkit-scrollbar {
		height: 5px;
	}
	.breadcrumbs::-webkit-scrollbar-track {
	}
	.breadcrumbs::-webkit-scrollbar-thumb {
		background-color: rgba( 100, 100, 100, 0.2);
	}
}

/* ------------------------------------------------------- */
/* Move Top ---------------------------------------------- */
/* ------------------------------------------------------- */
/* ページ上部に戻る スクロールで自動表示 */
#pageTop {
    width: 45px;
    height: 45px;
    display: none;
    position: fixed;
	right: 15px;
	bottom: 15px;
    z-index: 5;
}
#pageTop div {
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.8);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    border-radius: 50%;
}
#pageTop div span {display: none;}
#pageTop div:hover {background: rgba(0,0,0,0.5);}
#movePageTop {
    color: #fff;
    text-decoration: none;
    cursor: pointer;
    display: flex;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
}
#movePageTop::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f062";
    color: #fff;
    font-size: 3.0rem;
}
@media only screen and (max-width:999px) {
    #pageTop {
		right: 10px;
		bottom:65px;
    }
}

/* ------------------------------------------------------- */
/* iframe ----------------------------------------------- */
/* ------------------------------------------------------- */
iframe.googlemap {
	width: 100%;
	height: 400px;
}
@media only screen and (max-width:999px) {
	iframe.googlemap {
		height: 300px;
	}
}

/* ------------------------------------------------------- */
/* デフォルトのHTMLタグでスタイルを適用させる------------- */
/* ------------------------------------------------------- */
.tagBox {
}

/*改行する*/
.tagBox {
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.wordBreakTable {
	width: 100%;
	table-layout: fixed;
}
.wordBreakTable td {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

/*デフォルトスタイル復帰*/
.tagBox em{font-style:italic;}

/*wpスタイル復帰*/
img.aligncenter {
    display: block;
    margin: 0 auto;
}

/* list ----------------------------------------------*/
.tagBox ul.ul1, .tagBox ol.ol1, 
.tagBox ul.float2col1, .tagBox ul.float3col1, .tagBox ul.float3col2, .tagBox ul.float4col1, .tagBox ul.float4col2,
ul.ul1, ol.ol1, 
ul.float2col1, ul.float3col1, ul.float3col2, ul.float4col1, ul.float4col2 {
	margin-bottom: 25px;
    overflow: hidden;
}

/*デフォルト*/
.tagBox ul, .tagBox ol {
	margin-bottom: 25px;
	overflow: hidden;
}
.tagBox ul li,
ul.ul1 li{
	list-style-type: disc;
	margin: 0 0 10px 20px;
}
.tagBox ol li,
ol.ol1 li {
	list-style-type: decimal;
	margin: 0 0 10px 30px;
}
.tagBox ul li ul, .tagBox ol li ul {
	margin-bottom: 0;
}
.tagBox ul li ul li, .tagBox ol li ul li,
ul.ul1 li ul li, ol.ol1 li ul li {
	list-style-type: circle;
}

/*リストの飾り不要時*/
.tagBox ul.listNonStyle li,
.tagBox ol.listNonStyle li {
    list-style-type: none;
	margin: 0 0 10px 0;
}

/* 2つ並びのリスト 768px以下で1列に */
.tagBox ul.float2col1 li,
ul.float2col1 li{
    list-style-type: none;
	width: calc((100% - 25px) / 2);
	float: left;
    margin: 0 24.9px 15px 0;
}
.tagBox ul.float2col1 li:nth-child(odd), ul.float2col1 li:nth-child(odd) {clear: left;}
.tagBox ul.float2col1 li:nth-child(even), ul.float2col1 li:nth-child(even) {margin-right: 0;}
@media only screen and (max-width:999px) {
    .tagBox ul.float2col1 li,
    ul.float2col1 li{
        width: 100%;
        float: none;
        margin: 0 0 15px 0;
    }
}

/* 3つ並びのリスト 768px以下で1列に */
.tagBox ul.float3col1 li,
ul.float3col1 li{
    list-style-type: none;
	width: calc((100% - 50px) / 3);
	float: left;
	margin: 0 24.9px 15px 0;
}
.tagBox ul.float3col1 li:nth-child(3n), ul.float3col1 li:nth-child(3n) {margin-right: 0;}
.tagBox ul.float3col1 li:nth-child(3n+1), ul.float3col1 li:nth-child(3n+1) {clear: left;}
@media only screen and (max-width:999px) {
	.tagBox ul.float3col1 li,
    ul.float3col1 li{
        width: 100%;
        float: none;
        margin: 0 0 15px 0;
	}
}

/* 3つ並びのリスト 768px以下で1列に Flex版 */
.tagBox ul.float3col2,
ul.float3col2 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox ul.float3col2 li,
ul.float3col2 li{
    list-style-type: none;
	width: calc((100% - 50px) / 3);
	margin: 0 24.9px 15px 0;
}
.tagBox ul.float3col2 li:nth-child(3n), ul.float3col2 li:nth-child(3n) {margin-right: 0;}

@media only screen and (max-width:999px) {
    ul.float3col2 li,
    .tagBox ul.float3col2 li{
       width: calc((100% - 15px) / 2);
        float: none;
        margin: 0 0 15px 0;
    }
    ul.float3col2 li:nth-child(3n), .tagBox ul.float3col2 li:nth-child(3n) {margin:0 0 15px 0;}
    
	ul.float3col2 li:nth-child(2n), .tagBox ul.float3col2 li:nth-child(2n) {float: right; margin-left: 15px;}
	ul.float3col2 li:nth-child(2n+1), .tagBox ul.float3col2 li:nth-child(2n+1) {float: left; clear: right;}
}

/* 4つ並びのリスト 768px以下で1列に */
ul.float4col1 li,
.tagBox ul.float4col1 li{
    list-style-type: none;
	width: calc((100% - 75px) / 4);
	float: left;
	margin: 0 24.9px 15px 0;
}
ul.float4col1 li:nth-child(4n), .tagBox ul.float4col1 li:nth-child(4n) {margin: 0 0 15px 0;}
ul.float4col1 li:nth-child(4n+1), .tagBox ul.float4col1 li:nth-child(4n+1) {clear: left;}
@media only screen and (max-width:999px) {
    ul.float4col1 li,
    .tagBox ul.float4col1 li{
        width: 100%;
        float: none;
        margin: 0 0 15px 0;
    }
}

/* 4つ並びのリスト 768px以下で2列に */
ul.float4col2 li,
.tagBox ul.float4col2 li{
    list-style-type: none;
	width: calc((100% - 75px) / 4);
	float: left;
	margin: 0 24.9px 15px 0;
}
ul.float4col2 li:nth-child(4n), .tagBox ul.float4col2 li:nth-child(4n) {margin: 0 0 15px 0;}
ul.float4col2 li:nth-child(4n+1), .tagBox ul.float4col2 li:nth-child(4n+1) {clear: left;}
@media only screen and (max-width:999px) {
    ul.float4col2 li,
    .tagBox ul.float4col2 li{
       width: calc((100% - 15px) / 2);
        float: none;
        margin: 0 0 15px 0;
    }
    ul.float4col2 li:nth-child(4n), .tagBox ul.float4col2 li:nth-child(4n) {margin:0 0 15px 0;}
    ul.float4col2 li:nth-child(4n+1), .tagBox ul.float4col2 li:nth-child(4n+1) {float: none;}
    
	ul.float4col2 li:nth-child(2n), .tagBox ul.float4col2 li:nth-child(2n) {float: right;}
	ul.float4col2 li:nth-child(2n+1), .tagBox ul.float4col2 li:nth-child(2n+1) {float: left; clear: right;}
}

/* 横並びリストの画像はPCでも自動で幅最大100%に設定 */
.tagBox ul.float2col1 img, .tagBox ul.float3col1 img, .tagBox ul.float3col2 img, .tagBox ul.float4col1 img,
ul.float2col1 img, ul.float3col1 img, ul.float3col2 img, ul.float4col1 img{
	max-width: 100%;
	height: auto;
}

/*横に並ぶ背景色付きのリスト*/
.tagBox ul.boxList1,
.tagBox ul.boxList2 {
    display: flex;
    flex-wrap: wrap;
}
.tagBox ul.boxList1 li,
.tagBox ul.boxList2 li{
    list-style: none;
    margin: 0 10px 10px 0;  
    display: flex;
    align-items: center;
    background: #f5f5f5;
    padding: 15px 5px;
    border-radius: 5px;
    text-align: center;
    justify-content: center;
}
.tagBox ul.boxList1 li{width: calc((100% - 30px) / 4);}
.tagBox ul.boxList2 li{width: calc((100% - 30px) / 3);}
.tagBox ul.boxList1 li:nth-of-type(4n),
.tagBox ul.boxList2 li:nth-of-type(3n){margin-right: 0;}
@media only screen and (max-width:999px) {
    .tagBox ul.boxList1,
    .tagBox ul.boxList2 {
        display: block;
    }
    .tagBox ul.boxList1 li,
    .tagBox ul.boxList2 li{
        display: block;
        width: 100%;
        margin: 0 0 5px 0;
        padding: 10px 5px;
        background: none;
        border-bottom: 1px dotted #ccc;
    }
}

/* table ----------------------------------------------*/
.table1, .table1 td, .table1 th,
.tagBox table, .tagBox table td, .tagBox table th{
	border: 1px solid #ccc;
	box-sizing: border-box;
}
table caption {
	margin-bottom: 10px;
}
.table1,
.tagBox table{
	border-collapse: collapse;
	margin-bottom: 25px;
}
.table1 th, .table1 td,
.tagBox table th, .tagBox table td {
	padding: 10px;
}
.table1 th,
.tagBox table th {
	background-color: #f5f5f5;
    vertical-align: middle;
}
.tdw {background: #fff;}
.td1 {background: #eef4ed;}
.td2 {background: #f2eeee;}
.thw1 th {width: 180px;}

@media only screen and (max-width:999px) {
	/*639px以下で段組み解除*/
	.tableMw1 th, .tableMw1 td,
	.tagBox .tableMw1 th, .tagBox .tableMw1 td{
		display: block;
		border: none;
		width: 100%;
	}
    .thw1 th {width: 150px;}
	.tableMw1.thw1 th,
	.tagBox .tableMw1.thw1 th {width: 100%;}
}

/*テーブルスクロール*/
@media screen and (max-width: 999px) {
    /*ブレイクポイントは各自指定*/
	.scroll table {
		overflow: auto;
		white-space:normal;
		display:block;
		width:auto;
	}
	.scroll table tbody {
		width: 1000px;
		display:table;
	}
	/*スクロールバーを追加するCSS*/
	.scroll table::-webkit-scrollbar {height: 4px;}
	.scroll table::-webkit-scrollbar-track {background: #F1F1F1;}
	.scroll table::-webkit-scrollbar-thumb {background: #BCBCBC;}
	.scroll td,.scroll th{width:auto;}
}

/*見出しHタグ*/
.tagBox h2, .tagBox h3, .tagBox h4, .tagBox h5, .tagBox h6 {
	margin-bottom: 25px;
	font-weight: 700;
}
.tagBox h2 {
	background: #eef4ed;
	box-shadow: 0px 0px 0px 5px #eef4ed;
	border: dashed 1px #56914d;
	padding: 10px 20px;
	border-radius: 5px;
	font-size: 2.6rem;
	font-weight: 700;
	color: #56914d;
	text-align: center;
	margin-bottom: 35px;
}
.tagBox h3 {
	font-size:2.2rem;
	border-bottom: 2px solid rgba(126,84,86,0.3);
	padding-bottom: 10px;
	padding-left: 35px;
	font-weight: 700;
	color: #7e5456;
	position: relative;
}
.tagBox h3::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	/*content: "\f069";*/
	content: "\f02e";
	position: absolute;
	top: 0;
	left: 0;
}
.tagBox h4 {
	font-size: 1.9rem;
	border-left: 5px solid #7e5456;
	padding-left: 20px;
	color: #7e5456;
}
.tagBox h5 {
	font-size: 1.8rem;
	position: relative;
	padding-left: 28px;
	color: #56914d;
}
.tagBox h5::before {
	content: "";
	display: block;
	width: 23px;
	height: 24px;
	background: url("../images/contents/h5.png") no-repeat;
	background-size: 100%;
	position: absolute;
	top: 2px;
	left: 0;
}
.tagBox h6 {
	border-bottom: 2px dotted #ccc;
	padding-bottom: 5px;
	color: #333;
}

@media only screen and (max-width:999px) {
	.tagBox h2 {
		font-size: 2.2rem;
		padding: 10px;
	}
	.tagBox h3 {
		font-size:1.9rem;
		padding-left: 25px;
	}
	.tagBox h3::before {
		font-size: 1.7rem;
		top: 2px;
	}
	.tagBox h4 {
		font-size:1.8rem;
		border-left: 4px solid #a769c1;
		padding-left: 16px;
	}
	.tagBox h5 {
		font-size: 1.7rem;
		padding-left: 25px;
	}
	.tagBox h5::before {
		width: 20px;
		height: 21px;
		top: 2px;
		left: -2px;
	}
}

/*blockquote 引用専用*/
.tagBox blockquote {
	border: 1px solid #eee;
	margin-bottom: 25px;
	padding: 45px;
	position: relative;
	border-radius: 15px;
}
.tagBox blockquote::before,
.tagBox blockquote::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	color: #999;
	font-size: 2.8rem;
}
.tagBox blockquote::before {
	content: "\f10d";
	top: 5px;
	left: 10px;
}
.tagBox blockquote::after {
	content: "\f10e";
	right: 10px;
	bottom: 5px;
}
@media only screen and (max-width:999px) {
	.tagBox blockquote::before,
	.tagBox blockquote::after {
		font-size: 2.4rem;
	}
}


/* お客様の声リスト ---------------------- */
.voiceList1 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.voiceList1 li {
	width: calc((100% - 25px ) / 2);
	margin: 0 24.9px 30px 0;
	display: flex;
	justify-content: space-between;
}
.voiceList1 li:nth-of-type(2n) {margin-right: 0;}
.voiceList1-img {
	width: 170px;
	height: 170px;
	overflow: hidden;
	border-radius: 5%;
    border:solid 1px #aac8a6;
}
.voiceList1-img > a{
	width:100%;
	display:block;
	overflow: hidden;
	position:relative;
}
.voiceList1-img > a > img{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: auto;
}
.voiceList1-img > a::before{
	content:"";
	padding-top:100%;
	display:block;
}
.voiceList1-info {
	width: calc(100% - 190px);
	background: #eef4ed;
	padding: 30px;
	border-radius: 20px;
	position: relative;
}
.voiceList1-info::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0d9";
	color: #eef4ed;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 23px;
	height: 100%;
	position: absolute;
	top: 0;
	left: -20px;
	font-size: 5.0rem;
}
.voiceList1-title {
	font-size: 1.8rem;
	margin-bottom: 15px;
}
.voiceList1-title a {color: #000;}
.voiceList1-txt1 {
	font-size: 1.5rem;
}
@media only screen and (max-width:999px) {
	.voiceList1 {
		display: block;
		margin-bottom: 30px;
	}
	.voiceList1 li {
		width: 100%;
		margin: 0 0 30px 0;
		display: block;
	}
	.voiceList1-img {
		margin: 0 auto 10px;
	}
	.voiceList1-info {
		width: 100%;
		padding: 15px;
		border-radius: 15px;
	}
	.voiceList1-info::before {
		content: "\f0d8";
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 23px;
		top: -20px;
		left: 0;
	}
	.voiceList1-title {
		font-size: 1.7rem;
		margin-bottom: 13px;
	}
}

/* よくある質問リスト ---------------------- */
.faqList1 {
}
.faqList1 li {
    list-style-type: none;
	margin: 0;
    position: relative;
    padding: 0;
}
.faqList1-q {
	border-bottom: 2px solid #ddd;
	display: flex;
	align-items: center;
	min-height: 50px;
	padding: 0 50px 10px 50px;
	margin-bottom: 10px;
	position: relative;
	cursor: pointer;
}
.faqList1-q::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0fe";
	position: absolute;
	right: 0;
	top: 0;
	color: #a769c1;
	font-size: 2.6rem;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	width: 30px;
}
.faqList1-q.active::after {content: "\f146";}
.faqList1-q > div:nth-of-type(1) {
    width: 40px;
	height: 40px;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 700;
    position: absolute;
    left: 0;
    top: 0;
	border-radius: 7px;
	background: #a769c1;
}
.faqList1-a {
	display: block;
	display: none;
	margin-bottom: 40px;
	position: relative;
	align-items: center;
}
.faqList1-a > div:nth-of-type(1) {
	width: 40px;
	position: absolute;
	top: -6px;
	left: 0;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	font-weight: 700;
	color: #a769c1;
	font-size: 2.4rem;
}
.faqList1-a > div:nth-of-type(2) {
	padding-left: 50px;
}
@media only screen and (max-width:999px) {
	.faqList1-q {
		min-height: 50px;
		padding: 0 30px 10px 45px;
	}
	.faqList1-q::after {
		font-size: 2.3rem;
		width: 30px;
	}
	.faqList1-q > div:nth-of-type(1) {
		width: 35px;
		height: 35px;
		font-size: 1.4rem;
	}
	.faqList1-a > div:nth-of-type(1) {
		width: 30px;
		font-size: 2.2rem;
	}
	.faqList1-a > div:nth-of-type(2) {
		padding-left: 45px;
	}
}

/* ------------------------------------------------------- */
/* 共通リストお知らせ用（テキスト） ---------------------- */
/* ------------------------------------------------------- */
.newsList1 {
	margin-bottom:30px;
}
/*ul版*/
.newsList1 li{
    border-bottom:1px dotted #ccc;
	margin-bottom:15px;
	padding-bottom:15px;
    display: flex;
}
.newsList1Date {
    width: 170px;
    color: #666;
}
.newsList1Date::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    content: "\f073";
    margin-right: 5px;
    color: #999;
}
.newsList1Title {
    width: calc(100% - 190px);
    padding-left: 20px;
}
.newsList1Cate {
    width: 120px;
    padding-left: 20px;
}
.newsList1Cate a {
    display: block;
    background: #ccc;
    font-size: 1.3rem;
    text-decoration: none;
    color: #fff;
    padding:2px 5px;
    text-align: center;
}
@media only screen and (max-width:999px) {
    .newsList1 li{
        margin-bottom:10px;
        padding-bottom:10px;
        flex-wrap: wrap;
    }
    .newsList1Date {
        width: 50%;
        font-size: 1.3rem;
        margin-bottom: 5px;
    }
    .newsList1Cate {
        width: 50%;
        margin-bottom: 5px;
    }
    .newsList1Title {
        width: 100%;
        padding-left: 0;
    }
}

/* ------------------------------------------------------- */
/* page-nate --------------------------------------------- */
/* ------------------------------------------------------- */

div.pagenate {
	margin-top: 15px;
}
.pagenate span, .pagenate a {
	padding: 2px 5px;
}
.pagenate span {
	border: 1px solid #DDD;
}
div.wp-pagenavi {
	margin-top: 30px;
	padding: 15px 0;
	text-align: center;
}
.wp-pagenavi span, .wp-pagenavi a {
	background: #fff;
	border: 1px solid #ccc;
	margin: 2px 2px 2px 0;
	padding: 6px 9px 5px 9px;
	text-decoration: none;
	color: #000;
}
.wp-pagenavi span {
    background: #DDD;
}
.wp-pagenavi a:hover{
	background: #999;
	color: #fff;
}
@media only screen and (max-width:999px) {
	div.wp-pagenavi {
		padding: 0;
		font-size: 1.2rem;
		line-height: 300%;
	}
	.wp-pagenavi span, .wp-pagenavi a {
		padding: 6px 6px 5px 6px;
	}
}

/* ------------------------------------------------------- */
/* カレンダー -------------------------------------------- */
/* ------------------------------------------------------- */

#wp-calendar {
	border-collapse: collapse;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #999;
	border-right-color: #999;
	width: 100%;
	margin-bottom: 15px;
	font-size: 1.2rem;
}
#wp-calendar thead tr th {
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #999;
	border-left-color: #999;
}
#wp-calendar th {
	height: 20px;
	text-align: center;
}
#wp-calendar td {
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #999;
	border-left-color: #999;
	height:20px;
	padding-top: 5px;
	text-align: center;
}
#wp-calendar #calendar-caption {
	font-weight: bold;
	text-align: center;
}
#calendar_wrap a {
	text-decoration: none;
	color: #CCC;
}
#wp-calendar #today {
	background-color: #CCC;
}
#wp-calendar #today a {
	color:#fff;
}
#calendar_wrap {
	position: relative;
}

#wp-calendar-pn {
	top: 5px;
	left: 0;
	width: 250px;
	margin-left: 35px;
	position: absolute;
}
#prev{
	margin-left: 20px;
	float: left;
}
#next{
	margin-right: 20px;
	float: right;
}
#wp-calendar .pad {
	color: #FFCCFF;
}

/* ------------------------------------------------------- */
/* 検索ボックス ------------------------------------------ */
/* ------------------------------------------------------- */
.searchform{
	position: relative;
}
form input.searchfield { 
	padding: 12px;
	width: 100%;
	border-radius: 24px;
	border:1px solid #ccc;
	margin-bottom: 30px;
}
form input.searchsubmit { 
	width: 35px;
	height: 35px;
	padding: 0;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 20px; 
	border: none;
	background: transparent;
	cursor: pointer;
	position: absolute;
	top:3px;
	right:3px;
	color: #635d49;
}

/* 教材タイプ ------------------------------------------ */
.typeDetail-list1,
.tagBox .typeDetail-list1 {
	margin-bottom: 35px;
	letter-spacing: -0.5em;
}
.typeDetail-list1 li,
.tagBox .typeDetail-list1 li{
	list-style: none;
	display: inline-block;
	padding: 5px 10px;
	border-radius: 4px;
	background: #f5f5f5;
	margin: 0 5px 5px 0;
	letter-spacing: normal;
}
.typeDetail-box1 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 35px;
}
.tagBox .typeDetail-box1 {
	margin-bottom: 50px;
}
.typeDetail-box1 > div:nth-of-type(1) {
	width: 260px;
	order: 2;
	text-align: center;
}
.typeDetail-box1 > div:nth-of-type(2) {
	width: calc(100% - 285px);
	order: 1;
}
@media only screen and (max-width:999px) {
	.typeDetail-list1 li,
	.tagBox .typeDetail-list1 li{
		display: block;
		padding: 0 0 5px 15px;
		border-radius: 0;
		background: none;
		margin: 0 0 5px 0;
		position: relative;
		border-bottom: 1px dotted #ccc;
		font-size: 1.5rem;
	}
	.tagBox .typeDetail-list1 li {
		padding: 0 0 5px 20px;
		font-size: 1.6rem;
	}
	.typeDetail-list1 li::before,
	.tagBox .typeDetail-list1 li::before {
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		content: "\f111";
		position: absolute;
		top: 5px;
		left: 0;
		font-size: 1.0rem;
		color: #56914d;
	}
	.typeDetail-box1 {
		display: block;
		margin-bottom: 35px;
	}
	.typeDetail-box1 > div:nth-of-type(1) {
		width: 100%;
		margin-bottom: 10px;
	}
	.typeDetail-box1 > div:nth-of-type(2) {
		width: 100%;
	}
}

.typeDetail-box2 {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
.typeDetail-box2 > div {
	width: calc((100% - 25px) / 2);
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f5f5f5;
}
.typeDetail-box2 > div:nth-of-type(2) {margin-left: 24.9px;}
@media only screen and (max-width:999px) {
	.typeDetail-box2 {
		display: block;
		margin-bottom: 30px;
	}
	.typeDetail-box2 > div {
		width: 100%;
	}
	.typeDetail-box2 > div:nth-of-type(1) {margin-bottom: 5px;}
	.typeDetail-box2 > div:nth-of-type(2) {margin-left: 0px;}
}

/*選べる3つの見積もり方法*/
/*.choose3estimateは[nop]テキスト[/nop]で囲んで自動Pを消さないとうまく行かない*/
.tagBox .choose3estimate1 ul{
    display:flex;
}
.tagBox .choose3estimate1 ul li {
    list-style-type:none;
    width:calc((100% - 50px) /3);
    margin:0 24.9px 0px 0;
	text-align: center;
}
.tagBox .choose3estimate1 ul li:nth-child(3){
    margin: 0 0 0 0;
}
.tagBox .choose3estimate1 ul li a {
	border: 1px solid #ffcc00;
	background: #fff;
	border-radius: 5px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 15px;
	text-decoration: none;
	color: #666;
	font-weight: 700;
	font-size: 1.4rem;
}
.tagBox .choose3estimate1 ul li a > div:nth-of-type(1) {
	width: 60px;
}
.tagBox .choose3estimate1 ul li a > div:nth-of-type(1) img {
	display: block;
	margin: 0 auto;
}
.tagBox .choose3estimate1 ul li a > div:nth-of-type(2) {
	width:  calc(100% - 75px);
}
.tagBox .choose3estimate1 ul li a > div:nth-of-type(2) > span:last-of-type {
	display: block;
	font-size: 2.5rem;
	color: #000;
}
.tagBox .choose3estimate-freedial {
	font-size: 2.5rem!important;
}
.tagBox .choose3estimate-freedial img {
	width: 36px;
	display: inline-block;
	line-height: 0;
	margin-right: 5px;
}
@media only screen and (max-width:999px) {
    .tagBox .choose3estimate1 ul{
        /*display:block;*/
        flex-wrap: wrap;
    }
    .tagBox .choose3estimate1 ul li {
        width:100%;
        margin:0 0px 5px 0;
    }
	.tagBox .choose3estimate1 ul li {margin-bottom: 10px;}
    .tagBox .choose3estimate1 ul li:nth-of-type(1){
        order:1; 
    }
    .tagBox .choose3estimate1 ul li:nth-of-type(2){
        order:0; 
    }
    .tagBox .choose3estimate1 ul li:nth-of-type(3){
        order:2; 
    }
	.tagBox .choose3estimate1 ul li a {
		display: block;
		padding: 25px 15px 20px;
		text-align: center;
	}
	.tagBox .choose3estimate1 ul li a > div:nth-of-type(1) {
		width: 60px;
		margin: 0 auto 20px;
	}
	.tagBox .choose3estimate1 ul li a > div:nth-of-type(2) {
		width: 100%;
	}
	.tagBox .choose3estimate1 ul li a > div:nth-of-type(2) > span {
		font-size: 2.2rem;
	}
	.choose3estimate-freedial {
		font-size: 2.4rem!important;
		display: block;
	}
	.choose3estimate-freedial img {
		width: 40px;
	}
}
/*flow*/
.tagBox ol.flow1{
    counter-reset : flowNum 0;
    list-style : none ; 
}
.tagBox ol.flow1 > li { 
    display: block ;
    list-style-type:none;
    margin:0 0 10px 0px;
    position:relative;
}
.tagBox ol.flow1 > li h3{
    position: relative;
    padding-left: 125px;
    border-bottom:none;
    line-height:50px;
    color:#7e5456;
    font-size:2.4rem;
    display:inline-block;
    text-align: center;
}
.tagBox ol.flow1 > li h3::before {
    content: "STEP" counter(flowNum);
    counter-increment: flowNum 1;
    position: absolute;
    top: 0;
    left: 0;
    height:50px;
    color: #fff;
    background: #7e5456;
    text-align:center;
    width:100px;
    display:flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
}
.tagBox ol.flow1 > li h3::after {
    position: absolute;
    top: calc(50% - 7px);
    left: 100px;
    width: 0;
    height: 0;
    content: '';
    border-width: 7px 0 7px 12px;
    border-style: solid;
    border-color: transparent transparent transparent #7e5456;
}
.tagBox ol.flow1 > li{
    padding:20px;
    border-radius: 20px;
    background:#f2eeee;
    margin-bottom:80px;
}
.tagBox ol.flow1 > li::after{
    font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f078";
    position:absolute;
    font-size:50px;
    left:calc(50% - 25px);
    z-index:2;
    bottom:-80px;    
    color: #7e5456;
}
.tagBox ol.flow1 > li:last-of-type{
    margin-bottom:0px;
}
.tagBox ol.flow1 > li:last-of-type::after{
    content: "";
}
@media only screen and (max-width:999px) {
    .tagBox ol.flow1 > li h3{
        padding-top: 65px;
        padding-left: 0px;
        display:block;
        margin-bottom:10px;
    }
    .tagBox ol.flow1 > li h3::before {
        width:100%;
    }
    .tagBox ol.flow1 > li h3::after {
        top: 50px;
        left: calc(50% - 7px);
        border-width: 12px 7px 0 7px;
        border-color:#fa5e5e transparent transparent transparent;
    }
}
ul.infoList1,.topicsSlide > div > div{
    display:flex;
    flex-wrap: wrap;
}
ul.infoList1 > li,
.topicsSlide .topicsSlideItem{
    width:calc((100% - 75px) /4);
    margin:0 24.9px 25px 0;
}
ul.infoList1 > li:nth-child(4n),
.topicsSlide > div > div > div:nth-child(3n){
    margin:0 0px 25px 0;
}
ul.infoList1 > li div.thumbPic,
.topicsSlide div.thumbPic{
    position: relative;
    width: 100%;
    overflow:hidden;
    border-radius: 5px;
    border:1px solid #ccc;
    margin-bottom:10px;
}
ul.infoList1 > li div.thumbPic::before,
.topicsSlide div.thumbPic::before {
    content:"";
    display: block;
    padding-top: 50%;
}
ul.infoList1 > li div.thumbPic a,
.topicsSlide div.thumbPic a{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}
ul.infoList1 > li .thumbPic img,
.topicsSlide .thumbPic img{
    display:block;
    width:100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
}
ul.infoList1 > li .thumbTxt,
.topicsSlide > li .thumbTxt {}
ul.infoList1 > li .thumbTxt .thumbTxt-title,
.topicsSlide .thumbTxt .thumbTxt-title{
    font-size:1.8rem;
    text-align: center;
}
/*202303追加*/
.infoList1Date {
	font-size: 1.4rem;
	margin-bottom: 4px;
}
.infoList1Cate {
	font-size: 1.4rem;
	padding-top: 7px;
}
.infoList1Cate::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0e8";
	color: #0781d5;
	font-size: 1.3rem;
}
.infoList1Cate > a::after {
	content: "/";
	display: inline-block;
	padding: 0 5px;
}
.infoList1Cate > a:last-of-type::after {display: none;}
.blogList.infoList1 > li .thumbTxt .thumbTxt-title {
	text-align: left;
	font-weight: 700;
}
/*202303追加ここまで*/
@media only screen and (max-width:999px) {
    ul.infoList1 > li,
    .topicsSlide .topicsSlideItem {
        width:100%;
        margin:0 0px 25px 0;
    }
    ul.infoList1 > li:nth-child(3n),
    .topicsSlide > div > div > div:nth-child(4n){
        margin:0 0px 25px 0;
    }
    ul.infoList1 > li .thumbTxt,
    .topicsSlide .thumbTxt{}
    ul.infoList1 > li .thumbTxt .thumbTxt-title,
    .topicsSlide .thumbTxt .thumbTxt-title{
        font-size:1.8rem;
        text-align: center;
    }
}
/*買取事例 20240828*/
ul.buybackList{
    display:flex;
    flex-wrap:wrap;
}
.buybackList > li{
    width:calc((100% - 25px)/2);
    margin:0 24.9px 15px 0;
    border:1px solid #aac8a6;
    padding:15px 20px;
    background-color:#fff;
    border-radius: 10px;
    overflow: hidden;
}
.buybackList > li:nth-child(2n){
    margin:0 0px 15px 0;
}
.buybackList > li h3{
    font-size: 2.0rem;
    margin-bottom:15px;
}
.buybackList > li > a{
    text-decoration: none;
    color:#000;
}
.buybackList > li > a > div{
    display:flex;
    justify-content: space-between;
    align-items:flex-start;
}
.buybackList .thumbArea{
    position: relative;
    width:50%;
}
.buybackList .thumbArea::before{
    content:"";
    display: block;
    padding-top: 62%;
}
.buybackList .thumbAreaInner{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
}
.buybackList .thumbAreaInner img{
    width:100%;
    height:100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    object-fit: cover;
}
.buybackList > li > a > div > div:nth-child(2){
    width:calc(100% - 55%);
}
@media only screen and (max-width:999px) {
    .buybackList{
        flex-wrap:nowrap;
        flex-direction: column;
    }
    .buybackList > li{
        width:100%;
        margin:0 0px 15px 0;
        padding:10px 15px;
    }
    .buybackList > li h3{
        font-size: 1.7rem;
        margin-bottom:10px;
        font-weight:bold;
    }
    .buybackList > li > a{
        text-decoration: none;
        color:#000;
    }
    .buybackList > li > a > div{
        flex-direction: column;
        justify-content:flex-start;
        align-items: center;
    }
    .buybackList .thumbArea{
        width:60%;
        height:auto;
        margin-bottom:10px;
    }
    .buybackList > li > a > div > div:nth-child(2){
        width:100%;
    }
}
/*買取詳細*/
.detailbuybackBox > div:first-child{
    display:flex;
    justify-content: space-between;
    align-items:flex-start;
    margin-bottom:15px;
}
.detailbuybackBox .thumbArea{
    position: relative;
    width:50%;
}
.detailbuybackBox .thumbArea::before{
    content:"";
    display: block;
    padding-top: 62%;
}
.detailbuybackBox .thumbAreaInner{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
}
.detailbuybackBox .thumbAreaInner img{
    width:100%;
    height:100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    object-fit: cover;
}
.detailbuybackBox > div:first-child > div:nth-child(2){
    width:calc(100% - 55%);
}
.detailbuybackBox .table1 th{
    background-color:#fffdf0;
    white-space: nowrap;
}
.detailbuybackBox h3{
    color:#FF6600;
    font-size:2.2rem;
    margin-bottom:10px;
    font-weight:700;
}
@media only screen and (max-width:999px) {
    .detailbuybackBox > div:first-child{
        flex-direction: column;
        justify-content: flex-start;
        align-items:flex-start;
        margin-bottom:0;
    }
    .detailbuybackBox .thumbArea{
        width:100%;
        margin-bottom:10px;
    }
    .detailbuybackBox > div:first-child > div:nth-child(2){
        width:100%;
    }
    .detailbuybackBox h3{
        font-size:1.9rem;
        margin-bottom:5px;
    }
}
/*LINEBnrBox*/
.LINEBnrBox {
	display: flex;
	padding-top: 25px;
}
.LINEBnrBox > div:nth-of-type(1) {
	width: calc(100% - 240px);
}
.LINEBnrBox > div:nth-of-type(2) {
	width: 120px;
	padding: 0 20px;
}
.LINEBnrBox > div:nth-of-type(3) {
	width: 120px;
}
.LINEBnrBox > div:nth-of-type(2) img {
	display: block;
}
.LINEBnrBox > div:nth-of-type(1) a {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color:#06c755;
	border-radius: 10px;
    padding:10px 40px;
    text-align:center;
    color:#fff;
    text-decoration:none;
	height: 100%;
	font-weight: 700;
	font-size: 2.0rem;
	position: relative;
}
.LINEBnrBox > div:nth-of-type(1) a::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f054";
	position: absolute;
	right: 0;
	top: 0;
	display: flex;
	align-items: center;
	justify-content:center;
	width: 40px;
	height: 100%;
}
.LINEBnrBox > div:nth-of-type(1) a:hover{
    background-color:#02a52f;
}
/*202303追加*/
.LINEBnrBox > div:nth-of-type(1) a {
	flex-wrap: wrap;
}
.LINEBnrBox > div:nth-of-type(1) a > div {
	width: 100%;
	font-size: 1.5rem;
}
.LINEBnrBox > div:nth-of-type(1) a > div::before,
.LINEBnrBox > div:nth-of-type(1) a > div::after {
	content: "―";
}
/*202303追加ここまで*/
@media only screen and (max-width:999px) {
	.LINEBnrBox {
		display: block;
	}
	.LINEBnrBox > div:nth-of-type(1) {
		width: 100%;
		margin-bottom: 15px;
	}
	.LINEBnrBox > div:nth-of-type(2),
	.LINEBnrBox > div:nth-of-type(3){
		width: 140px;
		padding: 10px;
		margin: 0 auto;
		background: #fff;
	}
	.LINEBnrBox > div:nth-of-type(2) {padding-bottom: 0;}
	.LINEBnrBox > div:nth-of-type(1) a {
		padding:15px 20px;
	}
}
/*利用可能な買取表示*/
.kaitoriOkType{
    font-weight:normal;
    font-size:1.5rem;    
}
.front .kaitoriOkType{
    margin-bottom:25px;
    text-align: right;
}
.kaitoriOkType::before{
    content: "利用可能な買取：";
    display:inline-block;
    margin-right:5px;
    color:#666;
}
.kaitoriOkType span{
    margin:0 2.5px;
    padding:0 5px 2px;
    background-color:#ff6600;
    border-radius: 3px;
    color:#fff;
    font-size: 1.3rem;
}
@media only screen and (max-width:999px) {
    .front .kaitoriOkType{
        text-align: left;
        display:flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    .front .kaitoriOkType::before{
        content: "利用可能な買取";
        display:block;
        margin-right:0px;
        text-align: center;
        margin-bottom:2.5px;
    }
    .kaitoriOkType span{
        margin:0 2.5px 2.5px;;
    }
}


