@charset "utf-8";
/* ------------------------------------------------------- */
/* Share ------------------------------------------------- */
/* ------------------------------------------------------- */
/*パーツサンプル内でレスポンシブにならなかったので追加*/
pre {
white-space: pre-wrap;
}

/* display */
.dispinline {display: inline;}
.dispb {display: block!important;}
.dispinlineb {display: inline-block;}
.dispnone {display: none;}
.nonePc {display: none;}
.oHidden {overflow: hidden;}
/* display-固定ページでtest=trueを使用した場合の切り替え用 */
/*.disp_true,
.disp_false {
  display: none;
}*/


@media only screen and (max-width:999px) {
    .nonePc {display: inline-block;}
    .noneSp {display:none;}
    .dispb.noneSp{display:none!important;}
}

/* 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;}

.pt15{padding-top: 15px!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: 700;}
.bold2 {font-weight: 500;}
.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;}
.fc1 {color: #ff5c52;}

/* font family */
.fontFamily1 {
	font-family:'Noto Serif JP', Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.fontFamily2 {
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.leadSentence {
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
	margin-bottom: 15px;
	color: #ff5c52;
}

/* 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;
}
.imgMaxw2 {
	max-width: 700px;
}
@media only screen and (max-width:999px) {
    img.imgLeftN1, img.imgRightN1 {
        padding: 0;
        float: none;
        display: block;
        margin: 0 auto 15px;
    }
	.imgmaxsize1 {
		width: 100%;
		max-width: 400px;
	}
	.imgMaxw {
		max-width: 300px;
	}
	.imgMaxw2 {
		max-width: 100%;
	}
}


/* link ---------------------------------------------------*/
a {
	text-decoration: underline;
	color: #1e70b8;
	transition: all 0.3s ease;
}
a:hover {
	color: #ff5c52;
}

/*電話番号*/
.noPhoneLink {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
	color: #000;
}
@media only screen and (max-width:999px) {
    .noPhoneLink {
		pointer-events: initial;
		cursor: pointer;
		color: #1e70b8;
		text-decoration: underline;
    }
}

/*フリーダイヤルのアイコン付きspan*/
.freedialIcon {
	position: relative;
	font-weight: 700;
	color: #FF0004;
	font-size: 2.3rem;
	padding:10px 10px 10px 45px;
}
.freedialIcon::before {
	content: "";
	display: block;
	width: 43px;
	height: 25px;
	background: url("../images/base/freedial.png") no-repeat;
	background-size: 100%;
	position: absolute;
	top:13px;
	left: 0;
}

/*blank用ポイント付*/
#container a[target="_blank"]::after,
.externalLink::after {
	font-family: "Font Awesome 5 Free";
	content: "\f35d";
	font-weight: 900;
    margin-left: 5px;
    display: inline-block;
}
#container a[target="_blank"].noExternal::after { display: none; }

/* ボタン用 */
.buttonLink1, .buttonLink2 {
	margin: 0 auto 25px;
	padding: 0;
}
.buttonLink1 a, .buttonLink2 a {
	display: block;
	position: relative;
	color: #fff;
	text-decoration: none;
	padding: 10px 30px 10px 5px;
	border-radius: 5px;
	text-align: center;
}
.buttonLink1 a {background: #ff5c52;}
.buttonLink2 a {background: #1e70b8;}
.buttonLink1 a:hover {background: #ff8b84;}
.buttonLink2 a:hover {background: #3c97e6;}
.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;
}

.buttonLink3,
.buttonLink4 {
	margin-bottom: 25px;
	text-align: center;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.buttonLink3 > a,
.buttonLink4 > a {
	display: inline-block;
	position: relative;
	border-radius: 40px;
	color: #000;
	padding: 5px 40px 5px 25px;
	min-width: 300px;
	text-align: center;
	text-decoration: none;
	font-weight: 500;
	background: #fff;
}
.buttonLink3 > a {border: 2px solid #ff8b84;}
.buttonLink4 > a {border: 2px solid #3c97e6;}
.buttonLink3 > a::before,
.buttonLink4 > a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	font-size: 1.8rem;
}
.buttonLink3 > a::before {color: #ff5c52;}
.buttonLink4 > a::before {color: #1e70b8;}
.buttonLink3 > a:hover {background: #ffe9e7;}
.buttonLink4 > a:hover {background: #eaf3fb;}
@media only screen and (max-width:999px) {
	.buttonLink3 > a,
	.buttonLink4 > a {
		min-width: auto;
		min-width: initial;
		width: 100%;
	}
}
/*もっとみる*/
/*.linkMore1 {
	text-align: center;
    margin-bottom: 25px;
}
.linkMore1 a {
	display: inline-block;
	border: 1px solid #ccc;
	padding: 10px 50px 10px 25px;
	position: relative;
	text-decoration: none;
	border-radius: 10px;
    background: rgba(255,255,255,0.3);
    transition: all 0.3s ease;
}
.linkMore1 a:hover {background: rgba(255,255,255,0.8);}
.linkMore1 a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f101";
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -12px;
}*/

/*アンカーリンク用*/
/*.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: #f5f5f5;
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.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;
}
@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: #f5f5f5;
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.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;
}
@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: 20px;
	margin-bottom: 25px;
	border-radius: 5px;
}
.box1 {
	border: 2px solid #ddd;
}
.box2 {
	background: #ffe9e7;
}
.box3 {
	background: #eaf3fb;
}

@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 均等3つ並びスマホ余白狭めて維持*/
.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,
.flexBox7 > div{
    width: calc((100% - 50px) / 3);
    margin-right: 24.9px;
}
.flexBox4 > div:nth-of-type(3),
.flexBox7 > div:nth-of-type(3){margin-right: 0;}
@media only screen and (max-width:999px) {
    .flexBox1,
    .flexBox2,
    .flexBox3,
    .flexBox4,
	.flexBox5,
	.flexBox6{
        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){
        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){
        width: 100%;
        margin-bottom: 0;
    }
	.flexBox7 > div{
		width: calc((100% - 10px) / 3);
		margin-right: 4.9px;
	}
}

/* dl ----------------------------------------------*/
dl.dl1 {
	margin-bottom: 25px;
}
.dl1 dt,
.dl1 dd {
	border-left:5px solid #1e70b8;
	padding: 10px;
}
.dl1 dt {
	font-weight: 700;
	font-size: 1.8rem;
	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: 130px 0 0 0;
	overflow: hidden;
}

@media only screen and (max-width:999px) {
	.topContents {
		min-width: 100px;
		margin: 80px 0 0 0;
	}
}*/

/* pagetitle navi ----------------------------------------------*/
.pageTitleBox {
	padding: 0 0 50px 0;
	position: relative;
	background: url("../images/contents/pageTitleBox-bg.jpg") center top no-repeat;
	background-size: cover;
	color: #fff;
	text-shadow: 0 0 15px rgba(0,0,0,0.7);
}
.pageTitleBox::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(173,13,3,0.6);
	position: absolute;
	top: 0;
	left: 0;
}
.pageTitleBox.ambassador {
	padding: 0 0 50px 0;
	position: static;
	background: none;
	color: #000;
	text-shadow: none;
}
.pageTitleBox.ambassador::after {
	display:none;
}
.pageTitle {
	position: relative;
	z-index: 1;
}
.pageTitle h1 {
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto;
	font-size: 3.3rem;
	font-weight: 700;
	text-align: center;
	font-family:'Noto Serif JP', Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding: 20px 0;
}
.pageTitleBox.ambassador .pageTitle h1{
    text-align: left;
    padding:15px;
}
.breadcrumbs {
	background: rgba(173,13,3,0.5);
	position: relative;
	z-index: 1;
	padding: 5px 0;
}
.breadcrumbsInner {
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto;
	font-size: 1.3rem;
}
.breadcrumbs a {
	color: #fff;
	text-decoration: none;
}
.breadcrumbs br {display: none;}
.pageTitleBox.ambassador .breadcrumbs {
	background-color:transparent;
	position: static;
	z-index: 1;
	padding: 5px 0;
}
.pageTitleBox.ambassador .breadcrumbs a {
	color: #000;
}
@media only screen and (max-width:999px) {
	.pageTitleBox {
		padding: 0 0 50px 0;
	}
	.pageTitle h1 {
		width: 100%;
		min-width: 100px;
		font-size: 2.6rem;
		padding: 15px 0;
	}
	.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:90px;
    }
}

/* ------------------------------------------------------- */
/* 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.float2col2, .tagBox ul.float3col1, .tagBox ul.float3col2, .tagBox ul.float4col1, .tagBox ul.float4col2,
ul.ul1, ol.ol1, 
ul.float2col1, ul.float2col2, ul.float3col1, ul.float3col2, ul.float4col1, ul.float4col2 {
	margin-bottom: 25px;
}

/*デフォルト*/
.tagBox ul, .tagBox ol {
	margin-bottom: 25px;
}
.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つ並びのリスト 999px以下で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;
    }
}
/*二つ並びリストflex版*/
.tagBox ul.float2col2,
ul.float2col2{
	display: flex;
	flex-wrap: wrap;
}
.tagBox ul.float2col2 li,
ul.float2col2 li{
	list-style: none;
	width: calc((100% - 25px) / 2);
	margin: 0 24.9px 15px 0;
}
.tagBox ul.float2col2 li:nth-of-type(2n) {
	margin-right: 0;
}
@media only screen and (max-width:999px) {
	.tagBox ul.float2col2,
	ul.float2col2{
		display:block;
	}
	.tagBox ul.float2col2 li,
	ul.float2col2 li{
		width: 100%;
		margin: 0 0 15px 0;
	}
}
/* 3つ並びのリスト 999px以下で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つ並びのリスト 999px以下で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つ並びのリスト 999px以下で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つ並びのリスト 999px以下で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;
    background: #ffefe4;
	padding: 15px;
    border-radius: 5px;
}
.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;
    }
}

/*olの数字変更*/
.tagBox ol.olNumStyle1 li{
	list-style-type: lower-latin;
}
.tagBox ol.olNumStyle2{
	counter-reset: olNumStyle2 0;
}
.tagBox ol.olNumStyle2 li{
    list-style-type: none;
    margin: 0 0 15px 0;
    position: relative;
    padding: 4px 0 0 40px;
}
.tagBox ol.olNumStyle2 li::before {
    counter-increment: olNumStyle2 1;
    content: counter(olNumStyle2);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	background: #1e70b8;
	color: #fff;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 700;
	line-height: 1;
}

/*ulのliにボーダーとboxshadowをつける*/
.liBox li {
	box-shadow: 0 0 15px rgba(150,150,150,0.3);
	padding: 15px;
}

/* 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: #ffe9e7;}
.td2 {background: #eaf3fb;}
.thw1 th {width: 250px;}
.thw2 th {width: 350px;}
.tagBox table.thLeft th {
	text-align: left;
}
.tagBox .tableMw2 th, .tagBox .tableMw2 td {/*PCでも一段にする*/
	display: block;
	border: none;
	width: 100%;
}

@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,
	.tableMw1.thw2 th,
	.tagBox .tableMw1.thw2 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;
	line-height: 1.5;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.tagBox h2 {
	font-size: 2.6rem;
	margin-bottom: 30px;
	background: #ffe9e7;
	border-radius: 5px;
	padding: 10px 10px 10px 20px;
	border-left: 5px solid #ff8b84;
}
.tagBox h3 {
	font-size: 2.2rem;
	color: #fe701b;
	position: relative;
	margin-bottom: 40px;
}
.tagBox h3::before,
.tagBox h3::after {
	content: "";
	display: block;
	height: 4px;
	position: absolute;
	bottom: -10px;
	left: 0;
}
.tagBox h3::before {
	background: #ddd;
	width: 100%;
}
.tagBox h3::after {
	background: #fe701b;
	width: 200px;
}
.tagBox h4 {
	font-size: 2.0rem;
	position: relative;
	padding: 8px 8px 8px 20px;
	color: #1e70b8;
	margin-bottom: 20px;
	background: #eaf3fb;
}
.tagBox h4::before {
	content:"";
	display: block;
	width: 5px;
	height: calc(100% - 10px);
	position: absolute;
	top: 5px;
	left: 5px;
	background: #3c97e6;
	border-radius: 2px;
}
.tagBox h5 {
	font-size: 1.8rem;
	color: #ff5c52;
	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: 3px double #ccc;
}
.tagBox h6 {
	font-size: 1.7rem;
	position: relative;
	padding-left: 15px;
	margin-bottom: 10px;
}
.tagBox h6::before {
	content: "-";
	position: absolute;
	top: 0;
	left: 0;
}

@media only screen and (max-width:999px) {
	.tagBox h2 {
		font-size: 2.2rem;
		padding: 10px 10px 10px 20px;
	}
	.tagBox h3 {
		font-size: 1.9rem;
	}
	.tagBox h4 {
		font-size: 1.8rem;
	}
	.tagBox h5 {
		font-size: 1.7rem;
	}
	.tagBox h5::before {
		width: 13px;
		height: 13px;
		top: 9px;
	}
	.tagBox h6 {
		font-size: 1.6rem;
	}
}

/*blockquote 引用専用*/
.tagBox blockquote {
	border: 1px solid #ddd;
	margin-bottom: 25px;
	padding: 45px;
	position: relative;
	border-radius: 10px;
}
.tagBox blockquote::before,
.tagBox blockquote::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	color: #999;
	font-size: 2.2rem;
}
.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;
	}
}

/* ------------------------------------------------------- */
/* 共通リスト投稿用一覧 ---------------------- */
/* ------------------------------------------------------- */
/* アイキャッチOGPサイズ用 ---- */
.newsListImg > a,
.voiceListImg > a{
    width:100%;
    display:block;
    overflow: hidden;
    position:relative;
}
.newsListImg > a > img,
.voiceListImg > 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: 100%;
    object-fit: cover;
}
.newsListImg > a::before,
.voiceListImg > a::before{
    content:"";
    padding-top:52.6%;
    display:block;
}
/* お知らせ一覧 ---- */
.newsList {
	display: flex;
	flex-wrap: wrap;
}
.tagBox .newsList {
	padding: 0;
	margin: 0;	
	margin-bottom: 25px;
}
.newsList li,
.tagBox .newsList li{
	list-style: none;
	width: calc((100% - 50px) / 3);
	margin: 0 24.9px 25px 0;
	position: relative;
}
.newsList li:nth-of-type(3n),
.tagBox .newsList li:nth-of-type(3n){margin-right: 0;}
.newsListImg {
	margin-bottom: 5px;
}
.newsListCate {
	position: absolute;
	top: 0;
	left: 0;
}
.newsListCate a {
	display: block;
	width: 100px;
}
.newsListCate span a {
	display: block;	
	padding: 2px;
	text-align: center;
	color: #fff;
	font-size: 1.3rem;
	font-weight: 700;
	background: #666;
	text-decoration: none;
}
.newsListCate span.cat_news a {
	background: #1e70b8;
}
.newsListCate span.cat_event a {
	background: #ff5c52;
}
.newsListDate {
	font-weight: 500;
	font-size: 1.2rem;
	color: #666666;
}
.newsListDate .new {
	background: #f50000;
	color: #fff;
	display: inline-block;
	padding: 1px 5px;
	font-size: 1.0rem;
}
.newsListTitle a {
	font-weight: 500;
	text-decoration: none;
	color: #000;
}
@media only screen and (max-width:999px) {
	.newsList li,
	.tagBox .newsList li{
		width: calc((100% - 25px) / 2);
	}
	.newsList li:nth-of-type(3n),
	.tagBox .newsList li:nth-of-type(3n){margin-right: 24.9px;}
	.newsList li:nth-of-type(2n),
	.tagBox .newsList li:nth-of-type(2n){margin-right: 0;}
}
@media only screen and (max-width:767px) {
	.newsList,
	.tagBox .newsList{
		display: block;
	}
	.newsList li,
	.tagBox .newsList li{
		width: 100%;
		margin: 0 0 25px 0;
		position: relative;
	}
}

/* お客様の声一覧 ---- */
.voiceList,
.tagBox .voiceList{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 25px;
}
.voiceList li,
.tagBox .voiceList li{
	width: calc((100% - 75px) / 4);
	margin: 0 24.9px 25px 0;
	list-style: none;
}
.voiceList li:nth-of-type(4n),
.tagBox .voiceList li:nth-of-type(4n){
	margin-right: 0;
}
.voiceListImg {
	margin-bottom: 5px;
}
.voiceListTitle {
	font-weight: 700;
	margin-bottom: 5px;
}
.voiceListTitle a {
	text-decoration: none;
	color: #000;
}
.voiceListKojin,
.voiceListFacility{
	font-size: 1.2rem;
}
@media only screen and (max-width:999px) {
	.voiceList li,
	.tagBox .voiceList li{
		width: calc((100% - 25px) / 2);
		margin: 0 24.9px 25px 0;
	}
	.voiceList li:nth-of-type(4n),
	.tagBox .voiceList li:nth-of-type(4n){
		margin-right: 24.9px;
	}
	.voiceList li:nth-of-type(2n),
	.tagBox .voiceList li:nth-of-type(2n){
		margin-right: 0;
	}
}
@media only screen and (max-width:767px) {
	.voiceList,
	.tagBox .voiceList{
		display: block;
	}
	.voiceList li,
	.tagBox .voiceList li{
		width: 100%;
		margin: 0 0 25px 0;
	}
}

/* 豆知識一覧 ---- */
.blogList {
	display: flex;
	flex-wrap: wrap;
}
.blogList li{
	width: calc((100% - 25px) / 2);
	margin: 0 24.9px 25px 0;
	position: relative;
	display: flex;
}
.blogList li:nth-of-type(2n) {margin-right: 0;}
.blogListImg {
	width: 80px;
}
.blogListImg > a{
    width:100%;
    display:block;
    overflow: hidden;
    position:relative;
}
.blogListImg > 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: 100%;
    object-fit: cover;
}
.blogListImg > a::before{
    content:"";
    padding-top:100%;
    display:block;
}
.blogListBox {
	width: calc(100% - 80px);
	padding-left: 10px;
}
.blogListTitle a {
	color: #000;
	text-decoration: none;
	font-weight: 500;
}
.blogListCate {
	font-size: 1.2rem;
	color: #999;
}
.blogListCate::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0e8";
	font-size: 1.0rem;
}
.blogListCate > a {
	text-decoration: none;
	color: #999;
}
.blogListCate > a::after {
	content: "/";
	display: inline-block;
	margin: 0 4px;
	color: #ccc;
}
.blogListCate > a:last-of-type::after {display: none;}
@media only screen and (max-width:767px) {
	.blogList {
		display: block;
	}
	.blogList li{
		width: 100%;
		margin: 0 0 25px 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;
}

/* ------------------------------------------------------- */
/* YouTube ----------------------------------------------- */
/* ------------------------------------------------------- */
/* <div class="youtube"> で埋め込みコードを囲む */

.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-bottom: 20px;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
/*.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: 20px;
}
.youtube iframe {
    width: 100%;
    height: 100%;
}*/

/*ご相談リンクリスト（トップページとスマートフォンメニュー用）*/
.sodanMenuList,
.tagBox ul.sodanMenuList{
	display: flex;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.sodanMenuList li,
.tagBox ul.sodanMenuList li {
	width: calc((100% - 50px) / 3);
	margin: 0 25px 0 0;
	list-style: none;
	padding: 0;
}
.sodanMenuList li:nth-of-type(3),
.tagBox ul.sodanMenuList li:nth-of-type(3){
	margin-right: 0;
}
.sodanMenuList li a {
	display: flex;
	align-items: center;
	width: 100%;
	height: 150px;
	position: relative;
	background-size: 100%;
	color: #fff;
	text-decoration: none;
	border-radius:5px;	
	overflow: hidden;
	border: 1px solid #fff;
	box-shadow: 0 0 20px 10px rgba(227,224,183,0.8);
}
.tagBox ul.sodanMenuList li a {
	box-shadow: 0 0 10px 5px rgba(100,100,100,0.2);
}
.sodanMenuList li:nth-of-type(1) a {background: url("../images/contents/sodanMenuList-bg1.webp") no-repeat center center;}
.sodanMenuList li:nth-of-type(2) a {background: url("../images/contents/sodanMenuList-bg2.webp") no-repeat center center;}
.sodanMenuList li:nth-of-type(3) a {background: url("../images/contents/sodanMenuList-bg3.webp") no-repeat center center;}
.sodanMenuList li:nth-of-type(1) a,
.sodanMenuList li:nth-of-type(2) a,
.sodanMenuList li:nth-of-type(3) a{
	background-size: cover;
}
.sodanMenuList li a::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f054";
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 20px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	transition: all 0.3s ease;
	padding-right: 10px;
}
.sodanMenuList li:nth-of-type(1) a::after {background: rgba(59,28,0,0.7);}
.sodanMenuList li:nth-of-type(2) a::after {background: rgba(91,16,3,0.7);}
.sodanMenuList li:nth-of-type(3) a::after {background: rgba(0,30,74,0.7);}
.sodanMenuList li:nth-of-type(1) a:hover::after,
.sodanMenuList li:nth-of-type(2) a:hover::after,
.sodanMenuList li:nth-of-type(3) a:hover::after{
	width: 100%;
}
.sodanMenuList li:nth-of-type(1) a:hover::after {background: rgba(59,28,0,0.5);}
.sodanMenuList li:nth-of-type(2) a:hover::after {background: rgba(91,16,3,0.5);}
.sodanMenuList li:nth-of-type(3) a:hover::after {background: rgba(0,30,74,0.5);}
.sodanMenuListTxt {
	font-weight: 700;
	font-size: 2.3rem;
	display: block;
	width: 100%;
	text-align: center;
	padding: 0 40px 0 10px;
	text-shadow: 0 0 20px rgba(0,0,0,0.3),0 0 10px rgba(0,0,0,1.0);
	position: relative;
	z-index: 1;
}
.sodanMenuListTxt > span {
	display: block;
	position: relative;
	margin-bottom: 20px;
	font-size: 1.8rem;
	font-weight: 500;
}
.sodanMenuListTxt > span::after {
	content: "";
	display: block;
	width: 235px;
	height: 20px;
	background: url("../images/contents/sodanMenuList-line.png") no-repeat;
	background-size: 100%;
	position: absolute;
	bottom: -20px;
	left: calc(50% - 117px);
}
@media only screen and (max-width:999px) {
	.sodanMenuList,
	.tagBox ul.sodanMenuList{
		display: block;
	}
	.sodanMenuList li,
	.tagBox ul.sodanMenuList li{
		width:100%;
		margin: 0 0 5px 0;
	}
	.sodanMenuList li a {
		height: auto;
		box-shadow: 0 0 5px 5px rgba(227,224,183,0.8);
		padding: 10px;
	}
	.sodanMenuList li a::after {
		width: 15px;
		padding-right: 5px;
	}
	.sodanMenuListTxt {
		font-size: 2.0rem;
		padding: 0 25px 0 5px;
	}
	.sodanMenuListTxt > span {
		margin-bottom: 10px;
		font-size: 1.6rem;
	}
	.sodanMenuListTxt > span::after {
		width: 200px;
		height: 17px;
		bottom: -10px;
		left: calc(50% - 100px);
	}
	#drawernav .sodanMenuList {
		padding: 25px 10px;
		background: #f8f7ea;
	}
	#drawernav .sodanMenuList li a {
		box-shadow: none;
	}
	#drawernav .sodanMenuListTxt {
		font-size: 1.7rem;
	}
	#drawernav .sodanMenuListTxt > span {
		font-size: 1.4rem;
	}
	#drawernav .sodanMenuListTxt > span::after {
		width: 180px;
		height: 15px;
		left: calc(50% - 90px);
	}
}

/*施設一覧　トップ次回層共有*/
.facilityList,
.tagBox ul.facilityList{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	width: 100%;
}
.facilityList li,
.tagBox ul.facilityList li{
	width: calc((100% - 20px) / 3);
	margin: 0 9.9px 10px 0;
	padding: 0;
	list-style: none;
}
.facilityList li:nth-of-type(3n),
.tagBox ul.facilityList li:nth-of-type(3n) {
	margin-right: 0;
}
.facilityList li a {
	display: flex;
	align-items: center;
	background: #f5f5f5;
	height: 85px;
	position: relative;
	color: #000;
	text-decoration: none;
	line-height: 1.4;
}
.facilityList li a:hover {
	background: #ffe9e7;
}
.facilityList li a::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0da";
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ff8b84;
	color: #fff;
	position: absolute;
	top: 0;
	right:0;
	width: 15px;
	height: 100%;
}
.facilityList li a > span:nth-of-type(1) {
	width: 90px;
}
.facilityList li a > span:nth-of-type(2) {
	width: calc(100% - 90px);	
	padding: 5px 20px 5px 10px;
}
.facilityList li a img {
	display: block;
}
@media only screen and (max-width:999px) {
	.facilityList,
	.tagBox ul.facilityList{
		display: block;
	}
	.facilityList li,
	.tagBox ul.facilityList li{
		width: 100%;
		margin: 0 0 1px 0;
	}
	.facilityList li a {
		height: 66px;
	}
	.facilityList li a > span:nth-of-type(1) {
		width: 70px;
	}
	.facilityList li a > span:nth-of-type(2) {
		width: calc(100% - 90px);	
		padding: 5px 20px 5px 5px;
	}
	.facilityList li a img {
		display: block;
	}
}

/*プラン一覧*/
.planList {
	display: flex;
	margin-bottom: 25px;
}
.planList > div {
	width: calc((100% - 30px) / 4);
	margin-right: 10px;
}
.planList > div:nth-of-type(4) {margin-right: 0;}
.planList > div > a {
	display: block;
	border: 2px solid #eeede3;
	position: relative;
	overflow: hidden;
	padding-top: 25px;
	padding-bottom: 40px;
	text-decoration: none;
	text-align: center;
	color: #000;
	height: 100%;
}
.planList > div > a:hover {
	border: 2px solid #ff8b84;
	border-radius: 20px;
}
.planList > div > a::before {
	content: "";
	display: block;
	width: 84px;
	height: 30px;
	background: #ff8b84;
	border-radius: 50%;
	position: absolute;
	top: -20px;
	left: calc(50% - 42px);
}
.tagBox .planList > div > a > p:nth-of-type(1),
.tagBox .planList > div > a + p,
.planList > div > a + p,
.planList > div > a > p:nth-of-type(1),
.planListPrice > p{display: none;}
.planListMidashi,
.planListPrice,
.planListMemberPrice,
.planListInclude,
.planList-info {
	margin-right: 10px;
	margin-left: 10px;
}
.planListMidashi,
.planListPrice,
.planListMemberPrice,
.planListInclude li,
.planList-more{
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.tagBox h3.planListMidashi::before,
.tagBox h3.planListMidashi::after{
	display: none;
}
.planListMidashi,
.tagBox h3.planListMidashi{
	font-size: 2.2rem;
	font-weight: 700;
	color: #ff5c52;
	line-height: 1.4;
	margin-bottom: 15px;
}
.planListImg img {
	display: block;
	margin: 0 auto;
}
.planListPrice {
	font-weight: 700;
	position: relative;
	margin-bottom: 25px;
}
.planListPrice > div {
	font-size: 1.4rem;
	color: #ff5c52;
}
.planListPrice::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f063";
	color: #ff5c52;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 25px;
	position: absolute;
	left: 0;
	bottom: -25px;
	font-size: 2.0rem;
}
.planListMemberPrice {
	border: 2px solid #ff5c52;
	margin-bottom: 10px;
}
.planListMemberPrice > div:nth-of-type(1) {
	background: #ff5c52;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 700;
}
.planListMemberPrice > div:nth-of-type(2) {
	font-family:'Noto Serif JP', Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 900;
	font-size: 2.2rem;
	letter-spacing: -0.1rem;
	padding: 3px 0;
}
.planListMemberPrice > div:nth-of-type(2) span {
	font-size: 1.6rem;
}
.planListInclude,
.tagBox .planListInclude{
	display: flex;
	margin-bottom: 10px;
	padding: 0;
}
.planListInclude li,
.tagBox .planListInclude li{
	list-style: none;
	width: calc((100% - 5px) / 6);
	margin: 0 1px 0 0;
	text-align: center;
	background: #ffe9e7;
	color: #ff5c52;
	padding: 5px 1px 1px;
}
.planListInclude li.planListInclude-no {
	background: #e8e8e8;
	color: #999;
}
.planListInclude li:nth-of-type(6),
.tagBox .planListInclude li:nth-of-type(6){
	margin-right: 0;
}
.planListInclude li > span {
	writing-mode: vertical-rl;
	font-size: 1.2rem;
	font-weight: 500;
}
.planListInclude li > span img {
	width: 25px;
	display: inline-block;
	margin-bottom: 3px;
}
.planList-info {
	text-align: left;
}
.planList-more {
	width: calc(100% - 20px);
	position: absolute;
	bottom: 10px;
	left: 10px;
}
.planList-more > span {
	position: relative;
	display: block;
	background: #f5f5f5;
	font-weight: 500;
	border-radius: 40px;
	padding: 5px;
}
.planList > div > a:hover .planList-more > span {
	background: #ffe9e7;
}
.planList-more > span::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
	color: #ff5c52;
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 1.8rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 30px;
	height: 100%;
}
@media only screen and (max-width:999px) {
	.planList {
		flex-wrap: wrap;
	}
	.planList > div {
		width: calc((100% - 10px) / 2);
		margin-right: 9.9px;
		margin-bottom: 10px;
	}
	.planList > div:nth-of-type(2n) {margin-right: 0;}
}
@media only screen and (max-width:767px) {
	.planList {
		display: block;
	}
	.planList > div {
		width: 100%;
		margin: 0 0 10px 0;
	}
}

/*会員制度バナー*/
.aboutMember {
	margin-bottom: 40px;
}
body.front .aboutMember{margin-bottom: 0;}
/* .aboutMember a {
	display: flex;
	align-items: center;
	height: 200px;
	background: url("../images/contents/index/aboutMember-bg.jpg") no-repeat right top #cbe5f9;
	padding: 30px;
	text-decoration: none;
	font-weight: 900;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
} */
.aboutMember-Image{
	max-width: 1115px;
	margin: 0 auto;
}
/* .aboutMember a > div {
	width: 850px;
}
.aboutMember a + p {display: none;}
.aboutMember-info {
	color: #000;
	font-size: 2.2rem;
	text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;
}
.aboutMember-info > span {
	font-size: 3.6rem;
	color: #ff4e00;
}
.aboutMember-info > span > span {
	font-size: 4.4rem;
}
.aboutMember-more {
	background: #005bab;
	color: #fff;
	font-weight: 500;
	font-size: 2.0rem;
	text-align: center;
	padding: 5px;
	border-radius: 30px;
	box-shadow: 0 0 5px 0 #fff,0 0 5px 0 #fff,0 0 5px 0 #fff,0 0 5px 0 #fff,0 0 5px 0 #fff;
}
.aboutMember-more > span {
	color: #ffff00;
} */
/* @media only screen and (max-width:999px) {
	.aboutMember a {
		padding: 15px 10px;
		align-items: flex-end;
		height: 280px;
		background-position: right -40px top;
	}
	.aboutMember a > div {
		width: 100%;
	}
	.aboutMember-info {
		font-size: 1.5rem;
		line-height: 1.4;
		margin-bottom: 10px;
		text-align: center;
	}
	.aboutMember-info > span {
		font-size: 2.6rem;
	}
	.aboutMember-info > span > span {
		font-size: 3.4rem;
	}
	.aboutMember-more {
		font-size: 1.4rem;
		border-radius: 30px;
	}
}
@media only screen and (max-width:320px) {
	.aboutMember a {
		background-position: right -75px top;
	}
} */

