﻿/*----------BODY&HTML----------*/

* {
	margin : 0;
	padding : 0;
}

img {
	border : 0;
	vertical-align : top;
	font-size : 0;
	line-height : 0;
	-webkit-backface-visibility : hidden;
}

@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 : 105%;
	color : #3c3c3c;
	background : #ffffff;
}

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

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

#hbg {
    position : absolute;
	width : calc(50% + 700px);/*元は250px*/
	height : 285px;
	border-bottom-right-radius : 30px;
	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;
	overflow : hidden;
	width : 1250px;
	margin : 0 auto 0 auto;
	z-index : 2;
}

#hbox h1 {
	position : absolute;
    font-weight : 400;
    font-size : 80%;
    top : 32px;
    right : 250px;
}

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

dl#hlogo {
    position : absolute;
    top : 32px;
    left : 0;
}

dl#hlogo dt {
    float : right;
}

dl#hlogo dt h2 {
    width : 290px;
    margin-top : 3px;
}

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

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

dl#hlogo dd {
    float : left;
    width : 86px;
    margin-right : 20px;
}

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

ul#gnavi {
    position : absolute;
    list-style : none;
    padding-top : 13px;
    border-top : solid 1px #c8c8c8;
    font-size : 120%;
    font-weight : 600;
    top : 68px;
    right : 165px;
}

ul#gnavi li {
    float : left;
    margin-left : 25px;
}

ul#gnavi li:first-child {
    margin-left : 38px;
}

ul#gnavi li a {
    color : #3c3c3c;
    text-decoration : none;
}

p#htel {
    position : absolute;
    padding-left : 20px;
	color : #ff9132;
	font-size : 140%;
	font-family : "bebas-neue",sans-serif;
	font-weight : 400;
	font-style : normal;
	letter-spacing : 1px;
    background-image : url(telicon.svg);
    background-size : 18px;
    background-repeat : no-repeat;
    background-position : 0 2px;
    top : 30px;
    right : 105px;
}

p#hline {
    position : absolute;
    width : 46px;
    top : 70px;
    right : 100px;
}

p#mdmenu {
	position : absolute;
	width : 84px;
	top : 30px;
	right : 0;
	z-index : 10;
}

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

h2#ptitle1 {
    position : absolute;
    font-size : 300%;
    font-weight : 600;
    color : #4b6e69;
    top : 180px;
    left : 0;
}

h2#ptitle2 {
    position : absolute;
    font-size : 220%;
    font-weight : 600;
    color : #4b6e69;
    top : 200px;
    left : 0;
}

p#pttxt {
    position : absolute;
    width : 450px;
    line-height : 1.8em;
    left : 0;
    top : 320px;
}

p#timg {
    width : 750px;
    margin : 160px 0 0 500px;
}

p#timg img {
    border-radius : 10px;
}

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

#contents {
	width : 1250px;
	margin : 0 auto 60px auto;
}

p#txt404 {
	width : 750px;
	margin : 0 auto 70px auto;
	padding : 40px;
	background : #ecede6;
	border-radius : 12px;
	box-sizing : border-box;
	text-align : center;
}

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

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

#footer {
    width : 100%;
    margin-bottom : 50px;
    padding : 60px 0 75px 0;
    background : #50ad9b;
}

#fbox {
    position : relative;
    width : 1250px;
    margin : 0 auto 0 auto;
    color : #ffffff;
}

#fbox dl dt {
    width : 330px;
    margin-bottom : 20px;
}

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

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

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

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

ul#fnavi1 {
    position : absolute;
    list-style : none;
    font-weight : 600;
    font-size : 120%;
    top : 10px;
    right : 0;
}

ul#fnavi1 li {
    float : left;
    margin-left : 23px;
}

ul#fnavi2 {
    position : absolute;
    list-style : none;
    padding-top : 23px;
    border-top : solid 3px #ffffff;
    top : 60px;
    right : 0;
}

ul#fnavi2 li {
    float : left;
    margin-left : 13px;
    padding : 1px 0 3px 13px;
    border-left : solid 1px rgba(255,255,255,0.4);
}

ul#fnavi2 li:last-child {
    padding : 1px 13px 3px 13px;
    border-right : solid 1px rgba(255,255,255,0.4);
}

ul#fnavi1 li:first-child,ul#fnavi2 li:first-child {
    margin : 0;
}

ul#fnavi1 li a {
    color : #ffffff;
    text-decoration : none;
}

ul#fnavi2 li a {
    color : #ffffff;
    text-decoration : underline;
}

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

#lbox {
    clear : both;
    position : relative;
    width : 1250px;
    margin : 0 auto 150px auto;
}

address {
    font-style : normal;
    letter-spacing : 1px;
}

#lbox ul {
    position : absolute;
    list-style : none;
    top : 0;
    right : 0;
}

#lbox ul li {
    float : left;
    margin-left : 13px;
    padding : 1px 0 3px 13px;
    border-left : solid 1px #b4b4b4;
}

#lbox ul li:last-child {
    padding : 1px 13px 3px 13px;
    border-right : solid 1px #b4b4b4;
}

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

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

#toPageTop {
	position : fixed;
	bottom : 60px;
	right : 60px;
}

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

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

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

#bline {
    display : none;
}

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

#modalarea {
	position : absolute;
	width : 1062px;
	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;
    width : 1062px;
    margin : 0 auto 25px auto;
    font-size : 130%;
    font-weight : 600;
    text-align : center;
}

ul#mdnavi1 li {
    display : inline-block;
    width : 210px;
    margin : 0 3px 3px 0;
    text-align : center;
}

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

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

ul#mdnavi1 li a:hover {
    background : #90e50a;
}

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

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

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

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

ul#mdnavi2 {
    clear : both;
    list-style : none;
    margin-bottom : 30px;
}

ul#mdnavi2 li {
    display : inline-block;
    margin-left : 15px;
    padding : 0 0 3px 15px;
    border-left : solid 1px #c8c8c8;
}

ul#mdnavi2 li:last-child {
    padding : 0 15px 3px 15px;
    border-right : solid 1px #c8c8c8;
}

ul#mdnavi2 li:first-child {
    margin : 0;
}

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

#modalarea div {
    clear : both;
    position : relative;
    width : 450px;
    margin : 0 auto 40px auto;
}

#modalarea div dl {
    clear : both;
    margin : 0 auto 0 auto;
}

#modalarea div dl dt {
    float : left;
    margin-right : 15px;
    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;
    pointer-events : none;
}

#modalarea div dl dd {
    font-size : 80%;
    text-align : left;
}

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

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

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

#modalarea div p {
    position : absolute;
    width : 46px;
    top : 0;
    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;
}