@charset "utf-8";

/*PCSP共通設定*/
section:nth-of-type(odd){
    background-color:#ffeab6;
background-image: url("../images/bg_moyou.jpg");
background-size: contain;
background-repeat: repeat-y;
}
section:nth-of-type(even){background-color:#fff;}
html {scroll-behavior: smooth;}/*smooth scroll*/
.t_red {
    color:red;
}

/*title slider*/
@keyframes slider-8 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  1.7% {
    opacity: 1;
  }
  12% {
    opacity: 1;
  }
  17.8% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
  }
}
@keyframes slider-7 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  2.2% {
    opacity: 1;
  }
  15.2% {
    opacity: 1;
  }
  21.7% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
  }
}
@keyframes slider-6 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  2.08% {
    opacity: 1;
  }
  14.58% {
    opacity: 1;
  }
  20.08% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
  }
}
@keyframes slider-5 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  2.5% {
    opacity: 1;
  }
  17.5% {
    opacity: 1;
  }
  25% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
  }
}
@keyframes slider-4 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  3.1% {
    opacity: 1;
  }
  21.8% {
    opacity: 1;
  }
  31.2% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
  }
}
@keyframes slider-3 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  4.16% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  41.66% {
    opacity: 0;
    transform: scale(1);
  }
  100% {
    opacity: 0;
  }
}

/*759px以下*/
@media screen and (max-width: 759.9px) {
#wrapper {line-height: 1.4;}
.spnone{display:none;}

/* CSS */
#dirPathBlock,
#anchorLinkBlock {
	font-size: 10px;
	margin: 1% 1% 0 1%;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
	font-size: 12px;
	margin: 0 1%;
}
h2 {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 10px;
	width: 100%;
	clear: both;
    line-height: 1.6;
}
div.top_txt {
	font-weight: bold;
	text-align: center;
	padding: 15px;
	clear: both;
    border: 10px solid rgba(189, 155, 4, 0.5);
    margin:0px 10px 25px;
}
    div.top_txt span.txt01 {
        display: inline-block;
        font-size: 18px;
        line-height: 1.8!important;
        margin-bottom: 10px;
    }
    div.top_txt span.txt02 {
        display: inline-block;
        font-size: 12px;
        line-height: 1.4;
    }
.inner{
	width: 96%;
	margin: 0 2%;
	padding: 24px 0;
	box-sizing: border-box;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, "serif";
}

/*title*/
img#mainphoto {
	width: 100%;
	margin-bottom: 5%;
}
    
/*titleBox---------------------------------------------------
#titleBox{
	text-align: center;
    padding: 15px 0 0;
    margin: 0 0 0 0;
}
#titleBox img{
	width:100%;
	height:auto;
	vertical-align: top;
}
#titleBox p{
	width: 100%;
    height: auto;
    text-align: center;
    margin: 0;
    padding: 0;
}
*/   
    
/*title---------------------------------------------------*/

#title{
	overflow:hidden;
	padding:0 0 0 0;
    margin-bottom: -3px;
}
#title{
position: relative;
width:100%;
height:46vh;
overflow: hidden;
text-align: center;
}
.slide-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  /*animation: slider-8 64s linear infinite; 8枚の時 */
  /* animation: slider-7 56s linear infinite; 7枚の時 */
 /*animation: slider-6 48s linear infinite; /* 6枚の時 */
   /*animation: slider-5 40s linear infinite; /*5枚の時 */
  animation: slider-4 32s linear infinite; /* 4枚の時 */
  /*animation: slider-3 24s linear infinite; 3枚の時 */
}
.slide-image:nth-child(1) {
  background-image: url("../images/bg2_smp.png");
  animation-delay: -2s;
}
.slide-image:nth-child(2) {
  background-image: url("../images/bg_smp.png");
  animation-delay: 6s;
}
.slide-image:nth-child(3) {
  background-image: url("../images/bg2_smp.png");
  animation-delay: 14s;
}
.slide-image:nth-child(4) {
  background-image: url("../images/bg_smp.png");
  animation-delay: 22s;
}


#title .inner{
position: relative;
width: 100%;
height:100%;
background: 0;
margin: 0 auto;
padding:0;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding-top: 10px;
}
#title h2 img{
    width:100%;
}

    
/* =========================================================
◆navigation
========================================================= */
.topNavi {
	width: 100%!important;
	/*background: #1ab34b;*/
	background: #8d0b14;
	text-align: center;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, "serif";
}

.topNavi ul {
	text-align: center;
	margin: 0;
	overflow: hidden;
	padding: 0;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	justify-content: space-between;
}

.topNavi ul li {
	font-size: 123.1%;
	font-weight: bold;
	width: 50%;
	/*width: 99%;*/
	float: left;
	margin: 0;
    padding: 2% 0;
	border-right: 1px dashed #ffffff;
	border-bottom: 1px dashed #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
    box-sizing: border-box;
}

	/*.topNavi ul li:last-child{
	width: 100%;
}*/

.topNavi ul li:nth-child(n+5) {
	border-bottom: none;
}
/*
.topNavi ul li:nth-child(1) {
	border-left: none;
}*/

.topNavi ul li:nth-child(even) { /*偶数*/
	border-right: none;
}
/*	
.topNavi ul li:last-child {background-color: #ffff00;}
	.topNavi ul li:last-child a{
		color: #070707;
	}*/

.topNavi ul li a {
    color: #ffffff;
}
    
.mahoroba_logo {
        text-align: center;
        padding-bottom: 10px;
}
    .mahoroba_logo img {
        width:50%;
    }
    
 .banner img {
        width:100%;
    }
    
    .concept {
        background: #dcb196;
        line-height: 1.6;
        padding: 20px;
        text-align: center;
    }
    .concept span {
        font-size: 120%;
        display: block;
        padding-bottom: 10px;
    }
    
    .train_wrap {
        padding: 20px;
        color: #ffffff;
        margin-top:40px;
        margin-bottom:30px;
        line-height: 1.6;
    }
    .annei_color {
        background:#8d0b14;
    }
    .yukyu_color {
        background:#4b545f;
    }
    .train_wrap p.tit {
        font-size: 18px;
    }
    .train_wrap p.tit span {
        font-size: 22px;
    }
    .train_wrap div.imgbox {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 15px 0 0;
    }
    .train_wrap div.imgbox img {
        width:100%!important;
        box-sizing: border-box;
        padding: 5px;
    }
    .train_wrap div.iconbox {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 10px 0 0;
    }
    .train_wrap div.iconbox div {
        background: #000000;
        border-radius: 10px;
        width:24%;
        padding: 10px 5px;
        box-sizing: border-box;
        text-align: center;
        margin-bottom: 15px;
        font-size: 10px;
        align-items: center;
    }
    
    .plan_btn2 {
        font-size: 20px;
        font-weight: bold;
        margin-top:20px;
    }
    
    .plan_btn2 a{
    width:80%;
    border-radius: 10px;
    background: #bf4002;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    margin: 10px auto 20px;
    font-size: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.plan_btn2 a:hover {
    text-decoration: none!important;
    color: #ffffff;
    opacity: 0.8;
}
    
    .plan_btn a{
    width:80%;
    border-radius: 10px;
    background: #bf4002;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    margin: 20px auto;
    font-size: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.plan_btn a:hover {
    text-decoration: none!important;
    color: #ffffff;
    opacity: 0.8;
}
    
.head-border {
    display: flex;
    align-items: center;
    padding-bottom: 0px;
}

.head-border:before,
.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

.head-border:before {
    margin-right: 1rem;
}

.head-border:after {
    margin-left: 1rem;
}
    
.head-border {
    display: flex;
    align-items: center;
    padding-bottom: 0px;
}

.head-border:before,
.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

.head-border:before {
    margin-right: 1rem;
}

.head-border:after {
    margin-left: 1rem;
}
    .headWrap {
        color: #fff;
        background:#8d0b14;
        padding: 10px 15px;
        margin-top:30px;
        margin-bottom: 15px;
        width:100%;
        box-sizing: border-box;
    }
    .planWrap {
        text-align: center;
        margin-bottom:60px;
    }
    .plan_tit {
        font-size: 21px;
        margin-bottom: 10px;
    }
    .plan_point {
	margin: 0 auto 0;
    }
    .plan_point p {
        width: 80%;
        background: linear-gradient(transparent 40%, #ffffff 40%);
        font-size: 19px;
        color: #8d0b14;
        font-weight: bold;
        margin: 10px auto;
        text-align: center;
    }
    .plan_point.plan_point2 p {
        width: 90%;
    }
    .plan_price {
        margin:20px 0;
        color: #dc0600;
        font-size: 24px;
    }
    .plan_price span {
        font-weight: bold;
        font-size: 32px;
    }
    .plan_img {
        margin:15px 0;
    }
    .plan_img img {
        width:100%;
    }
    
.design01 {
 width: 100%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
    margin-bottom: 15px;
}
.design01 th {
 padding: 10px;
 background: #DCB196;
 border: solid 1px #000;
    text-align: center;
}
.design01 td {
 padding: 10px;
 border: solid 1px #778ca3;
    background: #fff;
}
    .tableWrap {
     width:100%;
        display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	-o-justify-content: space-between;
	justify-content: space-between;
	margin: 30px auto 20px;   
    } 
    .tableWrap div {
        width:100%;
        margin:0 5px;
    }
    .tableWrap div p {
        margin:0 0 10px;
        text-align: left;
    }
    .annai {
        text-align: left;
        margin-top: 20px;
    }
    .annai p{
        padding: 5px;
        line-height: 1.5;
    }
.design02 {
 width: 100%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
    margin-bottom: 10px;
}
.design02 th {
 padding: 5px;
 background: #DCB196;
 border: solid 1px #000;
    text-align: center;
}
.design02 td {
 padding: 5px;
 border: solid 1px #778ca3;
    background: #fff;
}
    p.dashed {
        padding-bottom: 20px;
        border-bottom: dashed 1px;
    }
    .about p {
        padding-bottom: 5px;
    }
    .map_img {
        width:100%;
        margin:0 auto;
    }
    .about img {
        margin-top:10px;
        width:100%;
    }


.about p {
    text-align: center;
    line-height: 1.5;
}

}

/*760px以上*/
@media screen and (min-width: 760px),print {
/* CSS */
#wrapper {line-height: 1.231;}
#dirPathBlock,
h1,
.iframe_end-content_gadget,
#anchorLinkBlock{
	width: 100%;
	max-width:970px;
	min-width:760px;
	margin: auto;
}

/*panlist&back*/
#dirPathBlock,
#anchorLinkBlock {
	width: 100%;
	margin: 0 auto;
	display: block;
	font-size: 12px;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
	font-size: 14px;
    width: auto;
	max-width:970px;
	min-width:760px;
    margin: 0 auto 5px;
}
h2 {
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 30px;
	clear: both;
    line-height: 1.8;
}
div.top_txt {
	font-weight: bold;
	text-align: center;
	padding: 30px;
	clear: both;
    border: 15px solid rgba(189, 155, 4, 0.5);
    margin:20px 20px 35px;
}
div.top_txt span.txt01 {
        display: inline-block;
        font-size: 28px;
        line-height: 1.8!important;
        margin-bottom: 20px;
    }
    div.top_txt span.txt02 {
        display: inline-block;
        font-size: 16px;
        line-height: 1.4;
    }
.inner{
	width: 96%;
	max-width:970px;
	min-width:760px;
	margin: 0 auto;
	padding:50px 0;
	display: block;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, "serif";
    font-size: 18px;
}

/*title*/
img#mainphoto {
	width: 100%;
	max-width:970px;
	margin:0 auto 2%;
	display:block;
}
    
/*title---------------------------------------------------
#titleBox {
	position: relative;
    margin: 0;
    padding: 0;
    max-height: 550px;
    overflow: hidden;
    text-align: center;
    background: url(../images/bg.jpg) 50%;
    background-size: cover;
	}	
#titleBox img {
    max-width: 970px;
    width: 100%;
	height: 550px;
    margin: 0 auto;
    padding: 0;
    display: block;
}
*/   
    
    
#title{
position: relative;
width:100%;
height:550px;
overflow: hidden;
text-align: center;
}
.slide-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  /*animation: slider-8 64s linear infinite; 8枚の時 */
  /*animation: slider-7 56s linear infinite; 7枚の時 */
 /*animation: slider-6 48s linear infinite;  /* 6枚の時 */
   /*animation: slider-5 40s linear infinite; /*5枚の時 */
  animation: slider-4 32s linear infinite; /* 4枚の時 */
  /*animation: slider-3 24s linear infinite; 3枚の時 */
}
.slide-image:nth-child(1) {
  background-image: url("../images/bg2.jpg");
  animation-delay: -2s;
}
.slide-image:nth-child(2) {
  background-image: url("../images/bg.jpg");
  animation-delay: 6s;
}
.slide-image:nth-child(3) {
  background-image: url("../images/bg2.jpg");
  animation-delay: 14s;
}
.slide-image:nth-child(4) {
  background-image: url("../images/bg.jpg");
  animation-delay: 22s;
}

/*
.slide-image:nth-child(7) {
  background-image: url("../images/bg_mv7.jpg"); 
  animation-delay: 46s;
}
*/
#title .inner{
position: relative;
width: 96%;
height:550px;
max-width:950px;
background: 0;
margin: 0 auto;
padding:0;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
padding-top: 10px;
}
#title h2 img{
}
    
    
    
/* =========================================================
◆navigation
========================================================= */
.topNavi {
	width: 100%!important;
	/*background:#1ab34a ;*/
	background:#8d0b14 ;
	text-align: center;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 游明朝, "Yu Mincho", YuMincho, "serif";
}

.topNavi ul {
	width: 970px;
	margin: 0 auto;
	padding: 10px 0;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.topNavi ul li {
	list-style: none;
	vertical-align: middle;
	border-left: 1px dashed #ffffff;
    font-size: 153.9%;
	font-weight: bold;
    margin: 0;
    padding: 10px;
    text-align: center;
	width: 33.33333%;
	display: flex;
	align-items: center;
	justify-content: center;
}
/*
.topNavi ul li:nth-child(1) {
	width: 40%
}

.topNavi ul li:nth-child(2) {
	width: 30%
}

.topNavi ul li:nth-child(3) {
	width: 30%
}*/

.topNavi ul li:last-child { 
	border-right: 1px dashed #ffffff;
	
}
/*
.topNavi ul li:last-child {background-color: #ffff00;}
	.topNavi ul li:last-child a{
		color: #070707;
	}*/
.topNavi ul li a {
    color: #ffffff;
}
    
    .mahoroba_logo {
        text-align: center;
        padding-bottom: 10px;
}
    .mahoroba_logo img {
        width:200px;
    }
    
    .banner img {
        width:100%;
    }
    
    .concept {
        background: #dcb196;
        line-height: 1.6;
        padding: 30px 25px;
        text-align: center;
    }
    .concept span {
        font-size: 120%;
        display: block;
        padding-bottom: 10px;
    }
    
    .train_wrap {
        padding: 30px;
        color: #ffffff;
        margin-top:60px;
        margin-bottom:60px;
        line-height: 1.6;
    }
    .annei_color {
        background:#8d0b14;
    }
    .yukyu_color {
        background:#4b545f;
    }
    .train_wrap p.tit {
        font-size: 22px;
    }
    .train_wrap p.sub {
        font-size: 16px;
        margin-top: 10px;
    }
    .train_wrap p.tit span {
        font-size: 26px;
    }
    .train_wrap div.imgbox {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 15px 0 0;
    }
    .train_wrap div.imgbox img {
        width:100%!important;
        box-sizing: border-box;
        padding: 5px;
    }
    .train_wrap div.iconbox {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 15px 0 0;
    }
    .train_wrap div.iconbox div {
        background: #000000;
        border-radius: 10px;
        width:24%;
        padding: 15px;
        box-sizing: border-box;
        text-align: center;
        margin-bottom: 20px;
    }
    
    .plan_btn a{
    width:500px;
    border-radius: 10px;
    background: #bf4002;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    margin: 30px auto;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.plan_btn i {
    float: right!important;
    position:absolute;
    right: 15px;
}
.plan_btn a:hover {
    text-decoration: none!important;
    color: #ffffff;
    opacity: 0.8;
}
 
.plan_btn2 {
    margin-top: 30px;
    font-size: 24px;
    font-weight: bold;
    }
.plan_btn2 a{
    width:500px;
    border-radius: 10px;
    background: #bf4002;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    padding: 15px;
    margin: 10px auto 30px;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.plan_btn2 i {
    float: right!important;
    position:absolute;
    right: 15px;
}
.plan_btn2 a:hover {
    text-decoration: none!important;
    color: #ffffff;
    opacity: 0.8;
}
    
.head-border {
    display: flex;
    align-items: center;
    padding-bottom: 0px;
}

.head-border:before,
.head-border:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #666;
}

.head-border:before {
    margin-right: 1rem;
}

.head-border:after {
    margin-left: 1rem;
}
    .headWrap {
        color: #fff;
        background:#8d0b14;
        padding: 10px 15px;
        margin-top:30px;
        margin-bottom: 15px;
    }
    .planWrap {
        text-align: center;
        margin-bottom:60px;
    }
    .plan_tit {
        font-size: 26px;
        margin-bottom: 10px;
    }
    .plan_point {
        width:600px;
        display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	-o-justify-content: space-between;
	justify-content: space-between;
	margin: 30px auto 20px;
    }
    .plan_point.plan_point2 {
        width:700px;
    }
    .plan_point p {
        background: linear-gradient(transparent 40%, #ffffff 40%);
        font-size: 24px;
        color: #8d0b14;
        font-weight: bold;
    }
    .plan_price {
        margin:20px 0;
        color: #dc0600;
        font-size: 24px;
    }
    .plan_price span {
        font-weight: bold;
        font-size: 44px;
    }
    .plan_img {
        margin:15px 0;
    }
    
.design01 {
 width: 80%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
 margin: 0 auto 15px;
}
.design01 th {
 padding: 10px;
 background: #DCB196;
 border: solid 1px #000;
    text-align: center;
}
.design01 td {
 padding: 10px;
 border: solid 1px #778ca3;
    background: #fff;
}
    .tableWrap {
     width:700px;
        display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	-o-justify-content: space-between;
	justify-content: space-between;
	margin: 30px auto 20px;   
    } 
    .tableWrap div {
        width:100%;
        margin:0 10px;
    }
    .tableWrap div p {
        margin:0 0 10px;
        text-align: left;
    }
    .annai {
        text-align: left;
        margin-top: 20px;
    }
    .annai p{
        padding: 5px;
        line-height: 1.5;
    }
.design02 {
 width: 100%;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
    margin-bottom: 10px;
}
.design02 th {
 padding: 10px;
 background: #DCB196;
 border: solid 1px #000;
    text-align: center;
}
.design02 td {
 padding: 10px;
 border: solid 1px #778ca3;
    background: #fff;
}
    p.dashed {
        padding-bottom: 20px;
        border-bottom: dashed 1px;
    }
    .about p {
        padding-bottom: 5px;
    }
    .map_img {
        width:600px;
        margin:0 auto;
    }
    .about img {
        margin-top:10px;
        width:100%;
    }

.about p {
    text-align: center;
    line-height: 1.5;
}

}