﻿/*----------タテ向き非表示----------*/

@media (orientation: landscape) {
body,html {
	 display : none;
} 
}

* {
     margin : 0;
     padding : 0;
}

img {
	border : 0;
	vertical-align : top;
	font-size : 0;
	line-height : 0;
}

@font-face {
	src : url("googlefonts/NotoSansJP-Regular.ttf") format("truetype");
	font-family : "Noto Sans JP";
	font-weight : 400;
	font-style : normal;
	font-display : swap;
}

@font-face {
	src : url("googlefonts/NotoSansJP-SemiBold.ttf") format("truetype");
	font-family : "Noto Sans JP";
	font-weight : 600;
	font-style : normal;
	font-display : swap;
}

@font-face {
	src: url("googlefonts/BebasNeue-Regular.ttf") format("truetype");
	font-family : "bebas-neue";
	font-weight : 400;
	font-style : normal;
	font-display : swap;
}

body {
	margin : 0;
	padding : 0;
	font-family : "Noto Sans JP","sans-serif";
	font-style : normal;
	font-weight : 400;
	font-size : 100%;
	color : #3c3c3c;
	background : #ffffff;
}

/*----------HEADER----------*/

#header {
	position: relative;
	width : 100%;
	margin-bottom : 7%;
}

#hbg {
    position : absolute;
	width : calc(50% + 27%);
	height : 340px;
	border-bottom-right-radius : 20px;
	top : 0;
	left : 0;
	z-index : 1;
    background:
    radial-gradient(circle at 80% 80%, rgba(207,238,224,0.6) 0%, transparent 50%),
    radial-gradient(circle at 30% 80%, rgba(223,245,234,0.5) 0%, transparent 50%),
    radial-gradient(circle at 20% 60%, rgba(255,241,204,0.6) 0%, transparent 50%),
    radial-gradient(circle at 70% 20%, rgba(255,232,163,0.6) 0%, transparent 50%),
    radial-gradient(circle at 25% 25%, rgba(255,244,204,0.6) 0%, transparent 50%),
    #fffdf7;
}

#hbox {
	position : relative;
	width : 100%;
	margin : 0 auto 0 auto;
	z-index : 2;
}

#hbox h1 {
    width : 100%;
    padding : 9px 0 9px 0;
    font-weight : 400;
    font-size : 80%;
    color : #ffffff;
    background : #50ad9b;
    text-align : center;
}

#hbox h1 span {
    display : none;
}

#hbox h1 a {
    color : #ffffff;
    text-decoration : none;
}

dl#hlogo {
    position : absolute;
    top : 57px;
    left : 20px;
}

dl#hlogo dt {
    float : right;
}

dl#hlogo dt img {
    display : block;
    width : 168px;
    margin : 4px 0 6px 0;
}

dl#hlogo dt h2 {
    font-size : 76%;
    font-weight : 600;
    letter-spacing : 1px;
}

dl#hlogo dt a {
    color : #3c3c3c;
    text-decoration : none;
}

dl#hlogo dd {
    float : left;
    width : 54px;
    margin-right : 15px;
}

dl#hlogo dd img {
    width : 100%;
    height : 100%;
}

ul#gnavi,p#htel,p#hline {
    display : none;
}

p#mdmenu {
	position : absolute;
	width : 58px;
	top : 55px;
	right : 15px;
	z-index : 10;
}

p#mdmenu img {
	width : 100%;
	height : 100%;
}

p#timg {
    width : 95%;
    margin : 100px 0 6% 5%;
}

p#timg img {
    width : 100%;
    height : 100%;
    border-top-left-radius : 8px;
    border-bottom-left-radius : 8px;
}

h2#ptitle1 {
    margin : 0 0 10% 7.5%;
    font-size : 160%;
    font-weight : 600;
    color : #4b6e69;
}

p#pttxt {
    margin : 0 7.5% 0 7.5%;
    line-height : 1.5em;
}

/*----------CONTENTS----------*/

#contents {
    width : 90%;
    margin : 0 auto 8% auto;
}

p#txt404 {
	width : 90%;
    margin : 0 auto 10% auto;
	padding : 5%;
	background : #ecede6;
	border-radius : 10px;
	box-sizing : border-box;
}

p#txt404 a {
	color : #3c3c3c;
}

/*----------FOOTER----------*/

#footer {
    width : 100%;
    margin-bottom : 7%;
    padding : 8% 0 10% 0;
    background : #50ad9b;
}

#fbox {
    overflow : hidden;
    width : 90%;
    margin : 0 auto 0 auto;
    color : #ffffff;
}

#fbox dl {
    margin-bottom : 8%;
    text-align : center;
}

#fbox dl dt {
    width : 80%;
    margin : 0 auto 5% auto;
}

#fbox dl dt img {
    width : 100%;
    height : 100%;
}

#fbox dl dd {
    line-height : 1.6em;
}

#fbox dl dd span {
    display : block;
}

#fbox dl dd font {
    display : none;
}

#fbox dl dd a {
    color : #ffffff;
    text-decoration : underline;
}

#fbox dl dd em {
    margin-left : 2px;
    font-style : normal;
    letter-spacing : 1px;
}

ul#fnavi1 {
    float : left;
    list-style : none;
    width : 47%;
    padding-top : 3px;
    font-weight : 600;
    border-top : solid 1px rgba(255,255,255,0.5);
}

ul#fnavi2 {
    float : right;
    list-style : none;
    width : 47%;
    padding-top : 2px;
    font-weight : 600;
    border-top : solid 1px rgba(255,255,255,0.5);
}

ul#fnavi1 li a,ul#fnavi2 li a {
    display : block;
    padding : 7px 0 9px 5px;
    color : #ffffff;
    border-bottom : solid 1px rgba(255,255,255,0.5);
}

/*----------LBOX----------*/

#lbox {
    clear : both;
    width : 90%;
    margin : 0 auto 22% auto;
}

address {
    clear : both;
    font-size : 90%;
    font-style : normal;
    letter-spacing : 1px;
    text-align : center;
}

address span {
    display : none;
}

#lbox ul {
    clear : both;
    list-style : none;
    overflow : hidden;
    margin : 0 10% 5% 10%;
    font-size : 92%;
    text-align : center;
}

#lbox ul li {
    float : left;
    width : 50%;
    margin-bottom : 7px;
    padding : 1px 10px 3px 10px;
    border-left : solid 1px #c8c8c8;
    box-sizing : border-box;
}

#lbox ul li:nth-child(2n) {
    border-right : solid 1px #c8c8c8;
}

#lbox ul li span {
    display : none;
}

#lbox ul li a {
    color : #282828;
    text-decoration : underline;
}

/*----------PAGETOP----------*/

#toPageTop {
	position : fixed;
	bottom : 25px;
	right : 20px;
    z-index : 999;
}

#toPageTop a {
	display : block;
	width : 60px;
	background-image : url(ptop_ov.svg);
	background-size : 100%;
	background-repeat : no-repeat;
}

#toPageTop img,#bline img {
	width : 100%;
	height : 100%;
}

#toPageTop a:hover img {
	visibility : hidden;
}

#bline {
	position : fixed;
    width : 60px;
	bottom : 25px;
	left : 20px;
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease; /* 変化のスピード */
}

#bline.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/*----------MODALWINDOW----------*/

#modalarea {
	position : absolute;
	width : 90%;
	top : 50%;
	left : 50%;
	-webkit-transform : translate(-50%,-50%);
	-moz-transform : translate(-50%,-50%);
	-ms-transform : translate(-50%,-50%);
	-o-transform : translate(-50%,-50%);
	transform : translate(-50%,-50%);
	text-align : center;
}

ul#mdnavi1 {
    list-style : none;
    overflow : hidden;
    width : 100%;
    margin-bottom : 6%;
    font-size : 120%;
    font-weight : 600;
    text-align : center;
}

ul#mdnavi1 li {
    float : left;
    width : 49.5%;
    margin : 0 1% 1% 0;
    text-align : center;
}

ul#mdnavi1 li:nth-child(2n) {
    margin : 0 0 1% 0;
}

ul#mdnavi1 li a {
    display : block;
    padding : 13px 0 15px 0;
    color : #ffffff;
    background : #7dc31e;
    text-decoration : none;
}

ul#mdnavi1 li:nth-child(1) a {
    border-top-left-radius : 10px;
}

ul#mdnavi1 li:nth-child(2) a {
    border-top-right-radius : 10px;
}

ul#mdnavi1 li:nth-child(9) a {
    border-bottom-left-radius : 10px;
}

ul#mdnavi1 li:nth-child(10) a {
    border-bottom-right-radius : 10px;
}

ul#mdnavi2 {
    clear : both;
    list-style : none;
    overflow : hidden;
    margin : 0 10% 4% 10%;
    font-size : 92%;
}

ul#mdnavi2 li {
    float : left;
    width : 50%;
    margin-bottom : 7px;
    padding : 1px 10px 3px 10px;
    border-left : solid 1px #c8c8c8;
    box-sizing : border-box;
}

ul#mdnavi2 li:nth-child(2n) {
    border-right : solid 1px #c8c8c8;
}

ul#mdnavi2 li a {
    color : #3c3c3c;
    text-decoration : underline;
}

#modalarea div {
    clear : both;
    position : relative;
    width : 74%;
    margin : 0 auto 10% auto;
    text-align : left;
}

#modalarea div dl {
    display : inline-block;
    clear : both;
    margin : 0 auto 0 auto;
    text-align : left;
}

#modalarea div dl dt {
    padding : 5px 0 0 28px;
	font-size : 190%;
	font-family : "bebas-neue",sans-serif;
	font-weight : 400;
	font-style : normal;
	letter-spacing : 1px;
    background-image : url(telicon.svg);
    background-size : 22px;
    background-repeat : no-repeat;
    background-position : 0 10px;
}

#modalarea div dl dt a {
    color : #ff9132;
    text-decoration : none;
}

#modalarea div dl dd {
    display : block;
    font-size : 84%;
    padding-left : 5px;
    text-align : center;
}

#modalarea div dl dd em {
    margin-left : 11px;
    font-style : normal;
    letter-spacing : 2px;
}

#modalarea div dl dd span {
    letter-spacing : 3px;
}

#modalarea div dl dd font {
    margin-left : 9px;
}

#modalarea div p {
    position : absolute;
    width : 54px;
    top : 15px;
    right : 0;
}

#modalarea div p img {
    width : 100%;
    height : 100%;
}

span.close-modal-01 {
    clear : both;
    padding : 7px 25px 9px 25px;
    border-bottom : solid 1px #dddddd;
    font-weight : 600;
    background : #ececec;
    border-radius : 36px;
	cursor: pointer;
}