@charset "utf-8";

/* Login Page
------------------------------------------------------------*/

/* 管理画面の設定 */

body.login,#login h1 {
    background:#fff;
}
#login h1 a {
    background:#fff url(images/admin_logo.png)no-repeat center center;
    background-size: 200px 120px;
    padding-bottom: 30px;
    width: 200px;
    height: 120px;
}

/* Reset
------------------------------------------------------------*/

html { scroll-behavior: smooth;}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,form,input,textarea,p,th,td,select,header,nav,section,footer {
	margin: 0;
	padding: 0;
	color: #333;
	line-height: 1.6;
	word-wrap: break-word;
	box-sizing: border-box;
}

address,em,i {
	font-style: normal;
}
strong,th,b {
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
}
img {
	border: 0;
}
li {
	list-style-type: none;
}
small{
	font-size: 100%;
}
iframe {
	border: 0;
}

/*----------------- img -------------------*/

img{
	max-width: 100%;
	height: auto;
}
a img:hover{
	opacity:0.7;
}

/*----------------- link -------------------*/

a{
	color: #333;
	text-decoration: none;
}
a:hover{
	color: #999;
}
a:link{}
a:visited{}
a:active{}

/*----------------- font -------------------*/
body {
	font-size: 100%; /* IE */
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}
html>/**/body {
font-size: 16px; /* Except IE */
}

body {
    -webkit-text-size-adjust: 100%
}

img {
    max-width: 100%;
    height: auto
}

h1,h2,h3,h4,h5,h6{
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif!important;
}

.pc {
    display: block
}

@media only screen and (max-width: 640px) {
    .pc {
        display:none
    }
}

.sp {
    display: none
}

@media only screen and (max-width: 640px) {
    .sp {
        display:block
    }
}

#sp-nav {
         display:block;
        top: 25px;
        right: 10px;
        position: fixed;
        z-index: 9999
}

@media only screen and (max-width: 960px) {
    #sp-nav {

    }
}

#nav-drawer {
    position: relative
}

.nav-unshown {
    display: none;
}

#nav-open {
    display: inline-block;
    width: 30px;
    height: 22px;
    vertical-align: middle
}

#nav-open span,#nav-open span:before,#nav-open span:after {
    position: absolute;
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background: #868686;
    display: block;
    content: '';
    cursor: pointer
}

#nav-open span:before {
    bottom: -8px
}

#nav-open span:after {
    bottom: -16px
}

#nav-close {
    display: none;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff00;
    opacity: 0;
    transition: .3s ease-in-out
}

#nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 90%;
    max-width: 330px;
    height: 100%;
    background: rgb(255 255 255 / 95%);
    transition: .3s ease-in-out;
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%)
}

#nav-input:checked~#nav-close {
    display: block;
    opacity: .5
}

#nav-input:checked~#nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    box-shadow: 6px 0 25px rgba(0,0,0,.15);
}

#nav-content h1 {
    background: #ffffff;
    padding: 4% 2% 2%;
    text-align: center
}

#nav-content h1 img {
    width: 160px;
}

#nav-content ul {
    padding: 1%;
    margin: 1%
}

#nav-content ul li {
    list-style: none;
    color: #757575;
    margin: 1%;
    padding: 1%;
}

#nav-content ul li a {
    display: block;
    margin: 0;
    padding: 0;
    color: #343434;
    font-size: 80%;
}

#nav-content ul li a:hover {
    background: #ffe3e3;
    opacity: 1
}

#nav-content ul li a:before {
    content: "・"
}

#nav-content ul li em {
    padding: 2%;
    font-size: 80%
}

#nav-content form {
    padding: 1%;
    margin: 0 5%
}

.fa {
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: 400;
    line-height: 1.9;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}


/* Content
------------------------------------------------------------*/
body{
	background: #fef8f1;
}

@media only screen and (max-width: 1280px){
	body {

	}
}
@media only screen and (max-width: 960px){
	body {

	}
}

@media only screen and (max-width: 640px){
	body {

	}
}

/*----------------- #header -------------------*/

#header{
    width: 960px;
    margin: 0 auto;
}
@media only screen and (max-width: 960px){
	#header{
    width: 100%;
	}
}
#header header{}
#header header h1{
    padding: 2% 0;
}
#header header h1 a{}
#header header h1 a:hover{}
#header header h1 img{
	width: 200px;
}
@media only screen and (max-width: 960px){
	#header header h1 img{
	width: 200px;
		display:block;
margin:0 auto;
		padding:15px 0 0;
}
}

/*----------------- #main -------------------*/

#main{
    width: 960px;
    margin: 0 auto;
}
@media only screen and (max-width: 960px){
	#main{
    width: 100%;
	}
}


/*----------------- #main -------------------*/

#main{}
#main main{}
#main section{
}
section h3{
    padding: 10% 5% 0;
}
section h3 img{
    height: 80px;
    width: auto;
}

div.mainbox001{
    display: flex;
    flex-wrap: wrap;
    background: url(images/mirage2_bg001.png) no-repeat center bottom;
    background-size: 100% auto;
}
div.mainbox001 .box_l{
    width: 50%;
    padding: 5%;
}
@media only screen and (max-width: 640px) {
    div.mainbox001 .box_l{
    width: 100%;
}
}
div.mainbox001 .box_l h2{}
div.mainbox001 .box_l h2 img{}
div.mainbox001 .box_l ul{
    display: flex;
    flex-wrap: wrap;
}
div.mainbox001 .box_l ul li{
    padding: 2%;
    width: 50%;
}

div.mainbox001 .box_l ul li a{}
div.mainbox001 .box_l ul li a img{
}
@media only screen and (max-width: 640px) {
    div.mainbox001 .box_l ul li a img{
    height: auto;
    width: auto;
}
}
div.mainbox001 .box_r{
    width: 50%;
    padding: 5% 10% 15%;
}
@media only screen and (max-width: 640px) {
    div.mainbox001 .box_r{
    width: 100%;
    padding: 5% 10% 15%;
}
}
div.mainbox001 .box_r p{}
div.mainbox001 .box_r p img{}

section.homebox001{
	display: flex;
	flex-wrap:	wrap;
	background: url(images/mirage2_bg002.png) no-repeat center -0%;
	background-size: 100% auto;
	justify-content: space-between;
	padding: 0 0 5%;
}
@media only screen and (max-width: 640px) {
    section.homebox001{
	display: block;
	background: url(images/mirage2_bg002.png) no-repeat center -0%;
	background-size: 100% auto;
	justify-content: space-between;
	padding: 0 0 5%;
}
}
section.homebox001 h3{
    padding: 10% 5% 0;
}
section.homebox001 h3 img{
    height: 80px;
    width: auto;
}
section.homebox001 p{
    width: 40%;
    padding: 0% 5%;
    margin: 0;
}
@media only screen and (max-width: 640px) {
    section.homebox001 p{
    width: 100%;
    padding: 0% 5%;
}
}
section.homebox001 p.txt001{
    width: 100%;
	text-align:right;
    padding: 0 5%;
    margin: 0;
}
@media only screen and (max-width: 640px) {
	section.homebox001 p.txt001{
	text-align:left;
}
}
section.homebox001 p img{}
section.homebox001 ul{
    width: 100%;
}
section.homebox001 ul li{
    display: flex;
    background: #fff;
    padding: 2%;
    margin: 5%;
}
@media only screen and (max-width: 640px) {
   section.homebox001 ul li{
    display: block;
    background: #fff;
    padding: 2%;
    margin: 5%;
}
}
section.homebox001 ul li p{
    width: auto;
    padding: 2%;
}
section.homebox001 ul li p i{
    background: #f992a0;
    border-radius: 15px;
    padding: 5px 10px;
    color: #fff;
}
section.homebox001 ul li p em{
    font-size: 140%;
    display: inline-block;
    padding: 10px 0;
    color: #761e3b;
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif!important;
    font-weight: bold;
}
section.homebox001 ul li p b{
    color: #ff586f;
}

section.homebox002{
}
section.homebox002 h3{}
section.homebox002 h3 img{}
section.homebox002 p{
    line-height: 0;
}
section.homebox002 p img{}
section.homebox002 div.homebox002_col001{
	background: #fff url(images/mirage2_bg003.png) no-repeat right 0;
	background-size:400px auto;
	padding: 0 0 5%;
}
@media only screen and (max-width: 640px) {
	section.homebox002 div.homebox002_col001{
	background: #fff url(images/mirage2_bg003.png) no-repeat center 0;
	background-size:400px auto;
	padding: 350px 0 5%;
}
}
section.homebox002 div.homebox002_col001 p{
	width:50%;
}
@media only screen and (max-width: 640px) {
    section.homebox002 div.homebox002_col001 p{
	width:100%;
	padding:0 10%;
}
}
section.homebox002 div.homebox002_col001 p img{}

section.homebox003{
    background: #eee3e5;
}
section.homebox003 h3{}
section.homebox003 h3 img{}
section.homebox003 p{}
section.homebox003 p.pbox001{
    width: 80%;
    margin: 0 auto;
}
@media only screen and (max-width: 640px) {
   section.homebox003 p.pbox001{
    width: 98%;
    margin: 0 auto;
}
}
section.homebox003 p img{}
section.homebox003 p.pbox002{
    width: 100%;
    margin: 0 auto;
    background: #fff;
	padding:2%;
}
section.homebox003 p.pbox002 img{
	width:80%;
	margin:0 auto;
	display:block;
}
@media only screen and (max-width: 640px) {
   section.homebox003 p.pbox002 img{
	width:100%;
}
}
section.homebox003 div.homebox003_col001{
	background: url(images/mirage2_bg004.png) no-repeat center 0;
	background-size:100% auto;
}
section.homebox003 div.homebox003_col001 p{
    width: 60%;
    margin: 0 auto;
    padding: 25% 0 5%;
}
@media only screen and (max-width: 640px) {
   section.homebox003 div.homebox003_col001 p{
    width: 90%;
    margin: 0 auto;
    padding: 25% 0 15%;
}
}
section.homebox003 div.homebox003_col001 p img{}
section.homebox003 div.homebox003_col002{
    background: #fff;
    display: flex;
    flex-wrap: wrap;
}
section.homebox003 div.homebox003_col002 .box_l{
	width:50%;
}
@media only screen and (max-width: 640px) {
   section.homebox003 div.homebox003_col002 .box_l{
	width:90%;
}
}
section.homebox003 div.homebox003_col002 .box_l p{}
section.homebox003 div.homebox003_col002 .box_l p img{}
section.homebox003 div.homebox003_col002 .box_r{
	width:50%;
	padding:0 2% 2%;
}
@media only screen and (max-width: 640px) {
   section.homebox003 div.homebox003_col002 .box_r{
	width:100%;
	padding:0 5% 2%;
}
}
section.homebox003 div.homebox003_col002 .box_r h4{
    font-size: 160%;
    font-weight: bold;
}
section.homebox003 div.homebox003_col002 .box_r h4 i{
	font-size:60%;
}
section.homebox003 div.homebox003_col002 .box_r p{}
section.homebox003 div.homebox003_col002 .box_r{}
section.homebox003 div.homebox003_col002 .box_r p{}
section.homebox003 div.homebox003_col002 .box_r p img{
    border-bottom: solid 1px #666;
}
section.homebox003 div.homebox003_col002 .box_r ul{
    display: flex;
    margin: 5% 0;
}
section.homebox003 div.homebox003_col002 .box_r ul li{
    padding: 2%;
}
section.homebox003 div.homebox003_col002 .box_r ul li a{}
section.homebox003 div.homebox003_col002 .box_r ul li a:hover{}
section.homebox003 div.homebox003_col002 .box_r ul li a img{}

section.homebox004{
    background: #fef5f1;
}
section.homebox004 div.homebox004_col001{
    display: flex;
    flex-wrap: wrap;
  background-image: linear-gradient(0deg, transparent 80%, #ffffff 70% 100%);
}
@media only screen and (max-width: 640px) {
   section.homebox004 div.homebox004_col001{
    display: flex;
    flex-wrap: wrap;
  background:#fef5f1 ;
}
}
section.homebox004 div.homebox004_col001 h3{
    width: 50%;
    padding: 20% 5% 0;
}
section.homebox004 div.homebox004_col001 h3 img{}
section.homebox004 div.homebox004_col001 p{
    width: 50%;
}
@media only screen and (max-width: 640px) {
   section.homebox004 div.homebox004_col001 p{
    width: 100%;
	   padding:0 10%;
}
}
section.homebox004 div.homebox004_col001 p img{}
section.homebox004 p{
    width: 80%;
    margin: 5% auto;
}
@media only screen and (max-width: 640px) {
  section.homebox004 p{
    width: 100%;
}
}
section.homebox004 div.homebox004_col002{}
section.homebox004 div.homebox004_col002 p{
    width: 100%;
    margin: 0;
}
section.homebox004 div.homebox004_col002 p img{}
section.homebox004 p img{}
section.homebox004 table{
    border: solid 1px #666;
    border-radius: 20px;
    border-collapse: separate;
    width: 90%;
    margin: 0 auto;
}
@media only screen and (max-width: 640px) {
   section.homebox004 table{
    width: 100%;
    font-size:60%;
    border-radius: 0;
}
}
.radius-table{
    border-radius: 10px;
    border-spacing: 0;
    border: none;
    border-left: 1px solid #999;
    border-top: 1px solid #999;
}
@media only screen and (max-width: 640px) {
  .radius-table{
    border-radius: 0;
}
}
.radius-table tr>*{
    /* padding: 5px 10px; */
    border: none;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
}
@media only screen and (max-width: 640px) {
 .radius-table tr>*{
    border-radius: 0;
}
}
.radius-table tr:first-child>*:first-child{
    border-radius: 10px 0 0 0;
}
@media only screen and (max-width: 640px) {
 .radius-table tr:first-child>*:first-child{
    border-radius: 0;
}
}
.radius-table tr:first-child>*:last-child{
    border-radius: 0 10px 0 0;
}
@media only screen and (max-width: 640px) {
 .radius-table tr:first-child>*:first-child{
     border-radius: 0;
}
}
.radius-table tr:last-child>*:first-child{
    border-radius: 0 0 0 10px;
}
@media only screen and (max-width: 640px) {
 .radius-table tr:last-child>*:first-child{
     border-radius: 0;
}
}
.radius-table tr:last-child>*:last-child{
    border-radius: 0 0 10px 0;
}
@media only screen and (max-width: 640px) {
 .radius-table tr:last-child>*:last-child{
     border-radius: 00;
}
}
section.homebox004 table tr{}
section.homebox004 table tr th{
    padding: 20px;
}
@media only screen and (max-width: 640px) {
   section.homebox004 table tr th{
    padding: 5px;
}
}
section.homebox004 table tr td{
    padding: 1%;
    text-align: center;
}
@media only screen and (max-width: 640px) {
   section.homebox004 table tr td{
    padding: 5px;
    text-align: center;
}
}
section.homebox004 table tr td em{
    background: #761e3b;
    color: #fff;
    padding: 5px 20px;
    border-radius: 15px;
}
section.homebox004 table tr td img{}
section.homebox004 div.homebox004_col002 p{}
section.homebox004 div.homebox004_col002 p img{}

section.homebox005{}
section.homebox005 h3{}
section.homebox005 h3 img{}
section.homebox005 p{
    width: 80%;
    margin: 1% auto;
}
section.homebox005 p img{}
section.homebox005 ul{
    display: flex;
    flex-wrap: wrap;
    width: 96%;
    margin: 1% auto 5%;
}

section.homebox005 ul li{
    width: 25%;
    font-size: 80%;
}
@media only screen and (max-width: 640px) {
   section.homebox005 ul li{
    width: 100%;
	   padding:0 10% 10%;
}
}
section.homebox005 ul li p{}
section.homebox005 ul li p img{}
section.homebox005 ul li p.sp img{
	width: 100px;
	display:block;
	margin:0 auto;
}

section.homebox006{}
section.homebox006 h3{
    margin: 0;
    padding: 0;
    width: 100%;
}
section.homebox006 h3 img{
    width: 100%;
    height: auto;
}
section.homebox006 p{}
section.homebox006 p img{}

section.homebox007{
	background: url(images/mirage2_bg005.png) no-repeat center bottom;
	background-size:100% auto;
}
section.homebox007 h3{}
section.homebox007 h3 img{}
section.homebox007 p{
    width: 80%;
    margin: 5% auto 0;
    padding: 5% 5% 10%;
}
@media only screen and (max-width: 640px) {
   section.homebox007 p{
    width: 100%;
    padding: 0 5% 10%;
}
}
section.homebox007 p img{}

section.homebox008{
    padding: 5%;
    background: #fef5f1;
}
section.homebox008 h3{
    padding: 0;
}
@media only screen and (max-width: 640px) {
   section.homebox008 h3{
    padding: 10%;
}
}
section.homebox008 h3 img{
    width: 100%;
    height: auto;
}
section.homebox008 p{}
section.homebox008 p img{}

section.homebox009{
    background: #fef5f1;
}
section.homebox009 h3{}
section.homebox009 h3 img{}
section.homebox009 p{}
section.homebox009 p img{}

section.homebox010{
    background: #fff;
}
section.homebox010 h3{}
section.homebox010 h3 img{}
section.homebox010 div.mainbox002{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 2%;
}
section.homebox010 div.box_l{
    width: 40%;
    padding: 2%;
}
@media only screen and (max-width: 640px) {
   section.homebox010 div.box_l{
    width: 100%;
    padding: 5%;
}
}
section.homebox010 div.box_l p{}
section.homebox010 div.box_l p img{}
section.homebox010 div.box_r{
    width: 60%;
    padding: 2%;
}
@media only screen and (max-width: 640px) {
   section.homebox010 div.box_r{
    width: 100%;
    padding: 5%;
}
}
section.homebox010 div.box_r table{
    border: solid 1px #ccc;
}
section.homebox010 div.box_r table tr{}
section.homebox010 div.box_r table tr th{
    border: solid 1px #ccc;
    padding: 10px;
    white-space: nowrap;
}
section.homebox010 div.box_r table tr td{
    border: solid 1px #ccc;
    padding: 10px;
}
section.homebox010 div.box_r table tr td em{
	border:solid 1px #999;
	background:#eaeaea;
	padding:5px 20px;
	border-radius:15px;
}
section.homebox010 div.box_r table tr td em a{}
section.homebox010 div.box_r table tr td em a:hover{}

section.homebox011{background: #fff;padding: 0 0 10%;}
section.homebox011 h3{}
section.homebox011 h3 img{}
section.homebox011 p{}
section.homebox011 p img{}
section.homebox011 ul{
    display: flex;
    justify-content: center;
}
section.homebox011 ul li{
    width: 50%;
}
@media only screen and (max-width: 640px) {
   section.homebox011 ul li{
    width: 90%;
}
}
section.homebox011 ul li img{}
section.homebox011 ul li img a{}
section.homebox011 ul li img a:hover{}

/*----------------- #footer -------------------*/

#footer{background: #fff;border-top: solid 1px #812845;}
#footer footer{
	padding: 5% 0 0;
	width: 100%;
	margin: 0 auto;
}
@media only screen and (max-width: 960px){
	#footer footer{
		width: 98%;
	}
}
#footer footer .footbox01{
}
@media only screen and (max-width: 960px){
	#footer footer .footbox01{
		float:none;
		width: 100%;
	}
}
#footer footer .footbox01 h1{
	padding:0 2%;
	font-size: 110%;
	text-align: center;
}
#footer footer .footbox01 h1 a{
	color: #832846;
}
#footer footer .footbox01 h1 a img{
	width:60px;
}
#footer footer .footbox01 ul{
	font-size:80%;
	text-align: center;
}
#footer footer .footbox01 ul li.address{
	color: #812845;
	width: 100%;
}
#footer footer .footbox01 ul li.tel{
	color: #812845;
	width: 100%;
}

#footer footer .footbox01 ul li.tel a{
	color:#fff;
}
#footer footer .footbox02{
	padding: 0;
	margin: 0;
}
#footer footer .footbox02 h2{
	font-size:90%;
	padding: 2%;
}
#footer footer .footbox02 h2 a{
	color:#fff;
}
#footer footer .footbox02 h2 a:hover{
	opacity:0.7;
}
#footer footer .footbox02 ul{
	font-size: 80%;
	padding: 0;
	display: flex;
	justify-content: center;
	margin: 0 0 2%;
}
#footer footer .footbox02 ul li{
	float: none;
	padding: 0 1%;
}
#footer footer .footbox02 ul li a{color: #812845;}
#footer footer .footbox02 ul li a:hover{
	opacity:0.7;
}


#footer footer p{
	clear: both;
	text-align:center;
	background: #812845;
	padding: 2%;
}
#footer footer p small{
	color:#d1d1d1;
	font-size:70%;
	display: block;
	padding: 0;
}
#footer footer p small a{
	color:#d1d1d1;
}
#footer footer p small a:hover{
	color:#d1d1d1;
}
#footer footer p#page-top{
    position: fixed;
    bottom: 10px;
    right: 0;
    background: #7f2844;
    padding: 0;
    border: solid 1px #fff;
}
#footer footer p#page-top a{
	color:#fff;
	font-size:80%;
	padding: 1%;
	display:block;
	width: 60px;
	line-height:1.2;
}
#footer footer p#page-top a:hover{}
#footer footer p#page-top a:before {
	font-family: FontAwesome;
	font-size:100%;
	display:block;
	float:none;
	content:"\f077";
	font-weight: normal;
}



