@charset "UTF-8";
/* CSS Document */

html {
	text-size-adjust: 100%;
	overflow: auto;
	font-size: calc(137.5%)
}
:-ms-lang(x), html {
 font-size: 18px;
}
body {
	margin: 0;
	padding: 0;
	height: 100%;
	background: #fff;
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	/*font-size: 12px;
	font-size: 1.2rem;*/
	line-height: 1.6;
	overflow: hidden;
}
a {
	position: relative;
	display: inline-block;
	transition: .3s;
	text-decoration: none;
	color: #62a1aa;
}
a::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #ccc;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
a:hover::after {
	width: 100%;
}
img {
	width: 100%;
}
#wrapper {
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
}
header {
	background: #fff;
}
header#contact_head {
	background: #62a1aa;
}
header .inner, #change .inner {
	max-width: 1000px;
	height: 100px;
	overflow: hidden;
	margin: 0 auto;
	padding: 2vh 1vw;
}
header .inner h1, #change h1 {
	float: left;
	margin: 1% 0 0;
	line-height: 1;
}
header h1 img, #change h1 svg {
	width: 100%;
	max-width: 200px;
}
#change {
	background: rgba(98, 161, 170, 0.95);
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	display: none;
	z-index: 9999;
}
#change ul {
	float: left;
	font-size: 8px;
	font-size: 0.8rem;
	margin: 20px 0 10px 20px;
}
svg {
	height: auto;
}
.logo_svg path {
	color: #fff !important;
	fill: currentColor;
	width: 200px;
	height: 100px;
}
.button {
	float: right;
	font-size: 12px;
	font-size: .8rem;
	margin: 2% 1% 1% 2%;
	padding: 2% 1.5%;
	display: inline-block;
	max-width: 200px;
	text-align: center;
	text-decoration: none;
	outline: none;
	background-color: #DE7682;
	border: 2px solid #DE7682;
	color: #fff;
}
.button::before, .button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button, .button::before, .button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button:hover {
	background-color: #fff;
	border-color: #DE7682;
	color: #DE7682;
}
/*スライダー*/
.swiper-container .swiper-slide img {
	max-width: 100%;
	height: auto;
}
/*メインコンテンツ*/

#main-content {
	max-width: 1000px;
	margin: 0 auto;
	min-height: calc(100vh - 30vh);
	padding: 0 3vw 18vh;
}
#main-content h2 {
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-size: 30px;
	font-size: 2.8vw;
	color: #2c93a3;
}
section {
}
section .leftbox {
	max-width: 490px;
	width: 49%;
	display: inline-block;
	float: left;
	margin: 0 1% 0 0;
}
section .rightbox {
	max-width: 490px;
	width: 49%;
	display: inline-block;
	float: right;
	margin: 0 0 0 1%;
}
#main-content::after {
}
.box p, .box figure {
	-webkit-transition: all 1s;
	-webkit-transform: translate(0, 0);
	opacity: 1;
}
.box .leftbox p.move, .box .leftbox figure.move {
	-webkit-transform: translate(-10px, 0);
	opacity: 0;
}
.box .rightbox p.move, .box .rightbox figure.move {
	-webkit-transform: translate(10px, 0);
	opacity: 0;
}
.grid {
	display: grid;
}
.pres {
	border-radius: 50%;
	max-width: 420px;
	width: 85%;
	margin: 0 auto 5%;
}
.product {
	margin: 5% auto;
}
#product_h {
	background: url(../img/photo07.jpg) center center / cover no-repeat;
	margin: 0 -50%;
 padding-top: calc(225 / 1038 * 100%);
	padding-left: 50%;
	padding-right: 50%;
}
#product_h h2 {
	padding: 0 0 25% 5%;
	margin: 0;
	color: #fff;
}
#shop {
	background: url(../img/photo12.jpg) center center / cover no-repeat;
	margin: 0 -100%;
	padding: 0 100%;
}
#shop h2 {
	text-align: center;
	padding: 2% 0 0;
	letter-spacing: 1.3rem;
}
#shop dl {
	margin: 3% 3% 5%;
	display: block;
}
#shop dt, #shop dd {
}
#shop dt {
	clear: left;
	float: left;
	width: 30%;
}
#shop p {
	margin: 2% 3%;
}
#shop iframe {
	margin: 0 -100%;
	padding: 0 100%;
}
footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	background: #62a1aa;
	clear: both;
	font-size: 90%;
}
footer #footer_inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: .5% 0 1%;
}
footer .footer_left {
	width: 40%;
}
footer .footer_right {
	width: 60%;
}
footer .footer_left, footer .footer_right {
	float: left;
	overflow: hidden;
}
footer #footer_inner p {
	margin: 0;
}
footer #footer_inner ul {
	display: inline-block;
	width: 100%;
	text-align: right;
	padding: 0;
}
footer #footer_inner ul li {
	display: inline-block;
	padding: 2%;
	border-right: 2px solid #666;
	font-size: 85%;
}
footer #footer_inner ul li:last-child {
	border: none;
}
footer #footer_inner a {
	color: #ccc;
}
footer #footer_inner small {
	text-align: center;
}
/*scroll*/
#scroll {
	position: fixed;
	bottom: 3%;
	right: 3%;
	font-size: 77%;
}
#scroll a {
	color: #868686;
	display: block;
	text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px,  #fff 1px -1px 0px, #fff -1px -1px 0px;
	z-index: 9999;
}
#scroll:after, #scroll:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
#scroll:after {
	border-bottom-color: rgba(255, 255, 255, .6);
	border-width: 18px;
	margin-left: -18px;
}
#scroll:before {
	border-color: rgba(194, 225, 245, 0);
	border-bottom-color: rgba(134, 134, 134, .5);
	border-width: 20px;
	margin-left: -20px;
}
/*mail form*/
form#mail_form {
	width : 1000px;
	margin : 50px auto;
	padding : 10px 0;
	background : #ffffff;
	border : 1px solid #cccccc;
	border-radius : 7px;
	box-shadow : 0 0 5px rgba( 0, 0, 0, 0.2 );
}
form#mail_form dl {
	width : 90%;
	margin : 0 auto;
	overflow : hidden;
}
form#mail_form dl dt {
	clear : both;
	width : 30%;
	float : left;
	border-top : 1px solid #cccccc;
	padding : 15px 0;
	text-align : right;
	overflow : hidden;
}
form#mail_form dl dd {
	width : 65%;
	float : right;
	border-top : 1px solid #cccccc;
	margin: 0;
	padding : 20px 0 15px 5%;
}
form#mail_form dl dt:first-child, form#mail_form dl dt:first-child+dd {
	border : none;
}
form#mail_form dl dt span {
	display : block;
	font-size : 85%;
	color : #3377ff;
}
/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required, form#mail_form dl dt span.optional {
	display : inline-block;
	float : left;
	font-weight : bold;
	color : #ffffff;
	padding : 3px 5px;
	border-radius : 3px;
}
form#mail_form dl dt span.required {
	background : rgba( 255, 50, 50, 1.0 );
}
form#mail_form dl dt span.optional {
	background : rgba( 50, 50, 255, 1.0 );
}
form#mail_form dl dd span.error_blank, form#mail_form dl dd span.error_format, form#mail_form dl dd span.error_match {
	display : block;
	color : #ff0000;
}
span.loading {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border-top: 5px solid rgba( 255, 255, 255, 0.2 );
	border-right: 5px solid rgba( 255, 255, 255, 0.2 );
	border-bottom: 5px solid rgba( 255, 255, 255, 0.2 );
	border-left: 5px solid #ffffff;
	-webkit-transform: translateZ( 0 );
	-ms-transform: translateZ( 0 );
	transform: translateZ( 0 );
	-webkit-animation: load-circle 1.0s linear infinite;
	animation: load-circle 1.0s linear infinite;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -25px;
	margin-left: -25px;
}
 @-webkit-keyframes load-circle {
 0% {
 -webkit-transform: rotate( 0deg );
 transform: rotate( 0deg );
}
 100% {
 -webkit-transform: rotate( 360deg );
 transform: rotate( 360deg );
}
}
 @keyframes load-circle {
 0% {
 -webkit-transform: rotate( 0deg );
 transform: rotate( 0deg );
}
 100% {
 -webkit-transform: rotate( 360deg );
 transform: rotate( 360deg );
}
}
/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */


form#mail_form input {
	height : 2em;
	padding : 2px 2%;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
}
form#mail_form textarea {
	width : 90%;
	max-width : 90%;
	height : 200px;
	padding : 2px 2%;
	resize : vertical;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	-webkit-appearance : none;
}
form#mail_form input:focus, form#mail_form textarea:focus {
	box-shadow : 0px 0px 5px #55ccff;
	border : 1px solid #55ccff;
	background : #ffffff;
}
form#mail_form input#company {
	width : 60%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form input#name_1, form#mail_form input#name_2 {
	width : 30%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form input#read_1, form#mail_form input#read_2 {
	width : 30%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form input#mail_address, form#mail_form input#mail_address_confirm {
	width : 80%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form ul li {
	list-style-type : none;
	margin-bottom : 0.5em;
}
form#mail_form ul li label:hover {
	cursor : pointer;
}
form#mail_form ul li input {
	height : auto;
	margin-right : 0.5em;
}
form#mail_form input#postal {
	width : 30%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form input#address_1, form#mail_form input#address_2 {
	display : block;
	width : 90%;
	max-width : 90%;
	margin-bottom : 7px;
	-webkit-appearance : none;
}
form#mail_form input#phone {
	width : 30%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form input#schedule {
	width : 30%;
	max-width : 90%;
	-webkit-appearance : none;
}
form#mail_form p#form_submit {
	width : 90%;
	margin : 0 auto;
	padding : 15px 0;
	border-top : 1px solid #cccccc;
}
form#mail_form input#form_submit_button {
	width : auto;
	height : auto;
	padding : 7px 15px;
	margin-left : 35%;
	vertical-align : middle;
	color : #444444;
	background : #eeeeee;
	border : 1px solid #cccccc;
	border-radius : 3px;
	font-family : inherit;
	font-weight : bold;
	-webkit-appearance : none;
}
form#mail_form input#form_submit_button:hover {
	cursor : pointer;
	color : #106dff;
	background : #e0e0e0;
}
.inlineframe {
	background-color: #fff;
	height: 20rem;
	margin: 0 0 5%;
	padding: 2%;
	overflow: auto;
	overflow-y: scroll;
	overflow-x: hidden;
	font-size: 85%;
}
/*調整*/
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
.bgopacity {
	height: 100%;
	background: rgba(255,255,255,0.7);
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.m-b2rem {
	margin-bottom: 2rem;
}

/* --responsive----------------------------------------------------------------------------------------------------------------- */
	
/* 768pixel start */

@media screen and (max-width : 768px) {
html {
 font-size: calc(112.5% + 4 * (100vw - 600px) / 400)
}
header h1, #change h1 {
	max-width: 100px;
}
header .inner, #change .inner, #contact_head .inner {
	height: auto;
}
#main-content {
	width: 90%;
}
#main-content h2 {
font-size: calc(130% + 4 * (100vw - 600px) / 400)
}
section .leftbox, section .rightbox {
	width: 85%;
	display: inline;
	float: none;
}
section .leftbox p, section .rightbox p {
	text-align: left;
}
section .leftbox img, section .rightbox img {
	width: 100%;
}
.pres {
	width: 85% !important;
}
footer #footer_inner {
	width: 90%;
	padding: 2%;
	font-size: 90%;
}
footer #footer_inner ul li {
	display: block;
	border-right: none;
	font-size: 85%;
}
form#mail_form {
	width : 95%;
}
form#mail_form dl {
	overflow : visible;
}
form#mail_form dl dt {
	width : auto;
	float : none;
	text-align : left;
	padding : 10px 0 5px;
	font-weight : bold;
}
form#mail_form dl dd {
	width : auto;
	float : none;
	border-top : none;
	padding : 0px 0 13px 0px;
}
form#mail_form dl dt span {
	font-weight : normal;
}
/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required, form#mail_form dl dt span.optional {
	margin-right : 1em;
	margin-bottom : 2em;
}
/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */

form#mail_form input#form_submit_button {
	margin-left : 0;
}
}
/* 768pixel end */
