/* CSS Document */
.mainimage {
    clear: both;
    height: 350px;
    text-align: center;
}
.mainimage img {
    height: 100%;
    width: auto;
}
.oneblock_re {
    clear: both;
    background-color: #FFF;
    display: block;
    margin: 15px auto 30px;
    padding: 15px 40px;
}
.oneblock_re h3 {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 24px;
    color: #be9017;
    border-left: 8px solid #be9017;
    border-bottom: 1px solid #be9017;
    padding-left: 15px;
    margin: 12px 0 10px;
}
.oneblock_re p {
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1.8;
}
.sahi {
    clear: both;
    width: 100%;
    margin: 10px auto 0;
}
.sahi img {
    width: 100%;
    height: auto;
}
.narade {
    clear: both;
    width: 28%;
    margin: 10px;
}
.narade img {
    width: 100%;
    height: auto;
}
.empa {
    font-size: 17px;
    font-weight: bold;
}
.ore {
    color: #ea502a;
    font-weight: bold;
}
.reform_kakaku {
    clear: both;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.reform_kakaku ul {
    clear: both;
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
}
.reform_kakaku li {
    float: left;
    width: 30%;
    margin: 2px 1%;
}
.full {
    border: 5px solid #bba898;
    border-radius: 10px;
}
.semi {
    border: 5px solid #95b3b9;
    border-radius: 10px;
}
.ligh {
    border: 5px solid #adaeae;
    border-radius: 10px;
}
.stit {
    clear: both;
    margin: 0;
    padding: 30px 0 10px;
    background-color: #bba898;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #FFF;
    letter-spacing: 1px;
    font-weight: bold;
}
.stit_small {
    clear: both;
    margin: 0;
    padding: 10px 0 20px;
    background-color: #bba898;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.6;
}
.stit_s {
    clear: both;
    margin: 0;
    padding: 30px 0 10px;
    background-color: #95b3b9;
    text-align: center;
    font-size: 24px;
    color: #FFF;
    letter-spacing: 1px;
    font-weight: bold;
}
.stit_small_s {
    clear: both;
    margin: 0;
    padding: 10px 0 20px;
    background-color: #95b3b9;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.6;
}
.stit_l {
    clear: both;
    margin: 0;
    padding: 30px 0 10px;
    background-color: #adaeae;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #FFF;
    letter-spacing: 1px;
}
.stit_small_l {
    clear: both;
    margin: 0;
    padding: 10px 0 20px;
    background-color: #adaeae;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #FFF;
    letter-spacing: 1px;
    line-height: 1.6;
}
.kakaku_small {
    font-size: 16px;
}
.kakaku {
    padding: 10px 0;
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 1px;
}
.naiyo {
    background-color: #f1f1f1;
    width: 80%;
    margin: 10px auto;
    padding: 15px 10px;
    font-size: 15px;
}
.naiyo ol {
    overflow: hidden;
    margin-top: 5px;
    margin-left: -10px;
    height: 185px;
}
.naiyo li {
    clear: both;
    width: 100%;
    padding: 5px 0;
    border-bottom: 1px solid #CCC;
}
.con_freq {
    clear: both;
    margin: 0;
    padding: 0;
}
.con_freq dl {
    clear: both;
    margin: 0;
    padding: 10px;
}
.con_freq dt {
    clear: both;
    margin: 0;
    padding: 5px;
    border-bottom: 1px dotted #666;
    line-height: 1.6;
    font-weight: bold;
}
.con_freq dd {
    clear: both;
    margin: 0;
    padding: 5px;
    line-height: 1.6;
}
.re_wrap {
    width: 100%;
    overflow: hidden;
    background-image: url("../images/re_back.jpg");
    background-repeat: no-repeat;
    background-position: center center; /* 中央基準 */
    background-size: auto 100%;
}
.re_wrap_inn {
    width: 940px;
    margin: 0 auto;
    padding-top: 20px;
}
.box {
    float: left;
    width: 25%; /* PC時は4つ横並び */
    height: 300px;
    background: #ccc;
    text-align: center;
    line-height: 100px;
    box-sizing: border-box;
    background-image: none;
}
.A {
    width: 180px;
}
.B {
    width: 480px;
}
.C {
    width: 100px;
}
.D {
    width: 180px;
}
.E {
    display: none;
}
.A img {
    width: 150px;
    height: auto;
}
.C img {
    width: 60px;
    height: auto;
}
.D img {
    width: 135px;
    height: auto;
}
.B p {
    line-height: 1.9;
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 19px;
    font-weight: bold;
    letter-spacing: 1px;
}

/* --- スマホ表示（例：768px以下） --- */
@media (max-width: 768px) {
.re_wrap {
    background-image: url("../images/re_back_sp.jpg");
    background-repeat: no-repeat;
    background-position: center center; /* 中央基準 */
    background-size: auto 100%;
}
.re_wrap_inn {
    width: 100%;
}
.box {
    width: 33.333%; /* 3つ横並び */
}
.A {
    width: 35%;
}
.B {
    display: none;
}
.C {
    width: 29%;
}
.D {
    width: 35%!important;
    float: right;
}
.E {
    display: block;
}
.D {
    width: 100%;
}
.A img {
    width: 90%;
    height: auto;
    padding-top: 20px;
}
.C img {
    width: 45%;
    height: auto;
    padding-top: 20px;
}
.D img {
    width: 82%;
    height: auto;
    padding-top: 20px;
}
.box.E {
    clear: both;   /* ここで改行！ */
    width: 100%;   /* Cだけ1段目の下に配置 */
}
.E p {
    line-height: 1.9;
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 1px;
}
}

@media (max-width: 766px) {
.oneblock_re {
    clear: both;
    width: 84%;
    background-color: #FFF;
    display: block;
    margin: 15px auto 30px;
    padding: 10px 4%;
}
.oneblock_re h3 {
    font-size: 19px;
    padding-left: 8px;
    line-height: 1.5;
}
.narade {
    width: 60%;
    margin: 10px;
}
.reform_kakaku li {
    clear: both;
    width: 80%;
    margin: 5px 9% 15px;
}
.naiyo {
    margin: 10px auto;
    padding: 15px 10px;
    font-size: 15px;
}
.naiyo ol {
    margin-left: 0px;
    height: auto;
}
.naiyo li {
    clear: both;
    width: 100%;
    margin: 0 0 0 -10px;
    padding: 5px 0;
    border-bottom: 1px solid #CCC;
}
}

	
	.oneblock_staff{clear:both;margin:30px auto;text-align:center;background-color:#FFF;padding:20px 0;}
	.oneblock_staff h3{clear:both;margin:0;padding:0;font-size:36px;font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;color:#984294;}
	.oneblock_staff p{text-align:center;padding-top:18px;font-size:18px;letter-spacing:2px;line-height:1.7;}
	
.staff_warp {
    margin: 15px auto 30px;
    display: flex;          /* 横並びに */
    gap: 20px;              /* 要素間のすき間 */
    align-items: stretch;   /* ←高さをそろえる重要ポイント */
}
.staff_left {
    flex: 0 0 30%;
    width: 340px;
    background-color: #FFF;
    padding: 50px 20px 20px;
    box-sizing: border-box;
}
.staff_right {
    flex: 1;
    width: 590px;
    background-color: #FFF;
    padding: 20px 40px;
    box-sizing: border-box;
}
.staff_right ul {
    clear: both;
    marign: 0;
    padding: 0;
    list-style: none;
}
.staff_right li {
    border-bottom: 1px dotted #CCC;
    padding: 3px;
    margin: 5px;
    font-size: 15px;
    line-height: 1.6;
}
.staff_right .s_name {
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 2px;
	transform: scaleY(1.5);
	padding-top:6px;
}
.staff_right p {
    width: 98%;
    margin: 0 auto;
    line-height: 1.6;
    letter-spacing: 1px;
    font-size: 15px;
}
.imageArea {
    width: 300px;
    height: 391px;
    position: relative;
    overflow: hidden;
}
.imageArea_cats {
    width: 300px;
    height: 391px;
    position: relative;
    overflow: hidden;
}
.imageArea_cats img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.imageArea img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 0.6s ease; /* ← フェードアニメーション */
}
.imageArea img.active {
    opacity: 1;
    z-index: 1;
}
.btns {
    margin-top: 12px;
    text-align: center;
    margin-bottom: 10px;
}
.btns img {
    width: 30px;
    height: auto;
}
.btns button {
    background: #FFF;
    border: none;
    padding: 4px 4px 0;
    margin-right: 6px;
    border-radius: 20px;
    cursor: pointer;
    transition: background 0.3s;
}
.btns button.active {
    background: #CCC;
    color: #fff;
    font-weight: bold;
}
.btns button:hover {
    background: #CCC;
}

	
@media (max-width: 766px) {
	
	.oneblock_staff{margin:30px auto;width:90%;padding:20px 0;}
	.oneblock_staff h3{clear:both;margin:0;padding:20px 0 0 0;font-size:28px;color:#984294;}
	.oneblock_staff p{text-align:center;padding:10px;margin:10px auto;font-size:16px;letter-spacing:0;line-height:1.7;width:90%;}
.staff_warp {
    margin: 15px auto 30px;
    display: block;         
          
}
.staff_left {
    display: block;
    width: 90%;
	margin:0 auto;
    padding: 10px 20px 20px;
}
.staff_right {
    display: block;
    width: 90%;
    margin:0 auto;
    padding: 0 4% 20px;
    
}

.staff_right li {
    border-bottom: 1px dotted #CCC;
    padding: 3px;
    margin: 5px;
    font-size: 15px;
    line-height: 1.6;
}
	
	
	.imageArea {
    width: 100%;
    height: 100ev;
	margin:0 auto;
    position: relative;
    overflow: hidden;
}
.imageArea_cats {
    width: 100%;
    height: 100ev;
	margin:0 auto;
    position: relative;
    overflow: hidden;
}
.imageArea_cats img {
    position: absolute;
    top: 25px;
    left: 5%;
    width: 90%;
    height: 90%;
    
}
.imageArea img {
    position: absolute;
    top: 0;
	left:5%;
    width: 90%;
    height: 90%;
	margin:0 auto;
    
}

	}
.toitel_t2{width:100%;text-align:center;}
.toitel_t2 img{width:70%;height:auto;}
	
@media screen and (min-width: 600px) and (max-width: 1024px) and (orientation: portrait) {
.mailform{width:45%;}
	.mailform img{width:90%;height:auto;}
	.toitel{width:54%;}
	.toitel img{width:90%;height:auto;}
	.ft_annai{width:90%;}	
	
}
	
	
.setumei {
  display: flex;
	margin:0 auto;
  align-items: center;   /* 画像と文字を縦中央揃え */
  gap: 6px;              /* 画像と文字の間に少し余白 */
  font-size: 15px;
  color: #666;
	width:90%;
max-width:350px;
	text-align:center;
}

.setumei img {
  display: inline-block;
  vertical-align: middle;
	width:20px;height:auto;
}


