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

@import url('https://fonts.googleapis.com/css2?family=Allura&family=Noto+Serif+JP:wght@200..900&display=swap');
@import '_default';
@import '_general';
@import '_animation';

/*------------------
*  共通
*------------------*/
/*-----------------------
		


			PC



--------------------------*/
.pc{
	/* display: block; */
}

.sp{
	display: none;
}

/*-----------------------
		


			SP



--------------------------*/



@media screen and (max-width:768px){	
	
	
	.pc{
		display: none;
	}	
	
	.spbr{
		display: block;
	}
	/*------------------
	*  共通
	*------------------*/
	
	.sp{
		display: block;
		float: none;
		
	}
	
}
	
	


/*ここでsp終わり*/


html{
	font-size: 20px;
	font-family: "Noto Serif JP", serif;
	color: #000000;
  	scroll-behavior: smooth;
	font-feature-settings: "palt";
    font-weight: normal;
    font-style: normal;
	
}

body{
    /* min-width: 1100px; */
    min-width: inherit;
    /* max-width: 1000px; */
}

#slider {
    width: 100%;
    height: 100vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
}

.maincopy{
    position: absolute;
    margin-right: auto;
    width: 40%;
    top: 55%;
    left: 5%;
}
@media screen and (max-width:768px){
    
    .maincopy{
    position: absolute;
    margin-right: auto;
    width: 80%;
    top: 60%;
    left: 2%;
}
    
    
}
/*=== 9-1-2 丸が動いてスクロールを促す ====*/

/*スクロールダウン全体の場所*/
.scrolldown2{
    /*描画位置※位置は適宜調整してください*/
    position: fixed;
    bottom:10px;
    left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
	position: absolute;
	left:10px;
	bottom:10px;
    /*テキストの形状*/
	color: #808080;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#808080;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
    /*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
    /*線の形状*/
	width:2px;
	height: 50px;
	background:#808080;
}





h1{
	margin:15px 0;
	text-align:center;
	padding:5px 0;
	font-size: 20px;
	color: #303030;
	font-weight: normal;
}
h2{
	margin:20px auto 0;
	background:#595757;
	padding:5px 10px 4px;
	color:#fff;
	font-size:15px;
	font-weight:normal;
}

h4{
}




.wrap{
	max-width: 1000px;
	margin: 0 auto;
	overflow: hidden;
	padding: 100px 0;
	font-family: "Noto Serif JP", serif;
}
.wrap2{
	margin: 0 auto;
	overflow: hidden;
	/* padding: 100px 0; */
	font-family: "Noto Serif JP", serif;
	color: #4c4c4c;
}

.wrap h3{
    font-size: 1.2rem;
    text-align: center;
    padding: 40px 0 30px;
    font-weight: normal;
}

.wrap2 h3{
    font-size: 1.2rem;
    text-align: center;
    padding: 40px 0 30px;
    font-weight: normal;
}

@media screen and (max-width: 768px) {
  
.wrap h3{
    font-size: 1rem;
    text-align: center;
    padding: 50px 0 20px;
}

.wrap{/* width: 300px; */margin: 0 auto;overflow: hidden;padding-top: 50px;font-family: "Noto Serif JP", serif;color: #4c4c4c;}
    
}
img{
	width: 100%;
	height: auto;
}

	br.sp{
	display: none;
}


.text_center{
	text-align: center;
}
.under{
	border-bottom: double 3px #b80000;
	font-weight: bold;
}





.button{
	display: flex;
	justify-content: center;
	margin-top: 60px;
	
}
	span,a{
        /* cursor: pointer; */
        /* display: inline-block; */
        padding: 0px;
        /* text-align: center; */
        transition: opacity .2s;
        }
a{
	color: #231815;
}
.text_link ::before{
	position: relative;
	display: inline-block;
	
		content: "";
		width: 0;
		height: 1px;
		background: #231815;
		position: absolute;
		top: 50%;
		left: -10px;
		transition: width .2s;
	}
	
.text_link :hover ::before{
			width: calc(100% + 20px);
		}
	
.text_link .active{
		pointer-events: none;
	
	
}
.text_link .active ::before{
	width: calc(100% + 20px);
		}



#content_wrap{
	
	overflow: hidden;
	position: relative;
	padding-top: 130px;
	
}

.content_width{
	width: vw_lt(880);
	
}

.content_width_wide{
	width: vw_lt(940);
	
}


#header pc{
    display: flex;
}
@media screen and (max-width:768px){
    #header pc{
    display: none;
}
}




/*========= PC    ナビゲーションドロップダウンのためのCSS ===============*/

/*==ナビゲーション全体の設定*/
nav{
	color: #000;
	text-align: center;
	margin: inherit;
}
/*ナビゲーションを横並びに*/
nav ul{
	list-style: none;
	display: flex;
	justify-content: center;
}
/*2階層目以降は横並びにしない*/
nav ul ul{
	display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li{
	position: relative;
    text-align: left;
}

/*ナビゲーションのリンク設定*/
nav ul li a{
	font-size: 16px;
	letter-spacing: 1px;
	display: block;
	text-decoration: none;
	color: #303030;
	padding: 20px 20px;
	transition:all .3s;
}

nav ul li li a{
	padding: 15px 15px;
	width: 130px;
}

nav ul li a:hover{
	color:#edf3fa;
    text-decoration: none;
}

/*==矢印の設定*/

/*2階層目を持つliの矢印の設定*/
nav ul li.has-child::before{
	content:'';
	position: absolute;
	left:15px;
	top:25px;
	width: 6px;
	height:6px;
	/* border-top: 2px solid #999; */
	/* border-right:2px solid #999; */
	transform: rotate(135deg);
}

/*3階層目を持つliの矢印の設定*/
nav ul ul li.has-child::before{
	content:'';
	position: absolute;
	left:6px;
	top:17px;
	width:6px;
	height:6px;
    border-top: 2px solid #fff;
    border-right:2px solid #fff;
    transform: rotate(45deg);
}

/*== 2・3階層目の共通設定 */

/*下の階層を持っているulの指定*/
nav li.has-child ul{
    /*絶対配置で位置を指定*/
    position: absolute;
    left: 9px;
    top:69px;
    z-index: 4;
    /*形状を指定*/
    background-color: rgba(255, 255, 255, 0.562);
    width: 160px;
    /*はじめは非表示*/
    visibility: hidden;
    opacity: 0;
    /*アニメーション設定*/
    transition: all .3s;
}

/*hoverしたら表示*/
nav li.has-child:hover > ul,
nav li.has-child ul li:hover > ul,
nav li.has-child:active > ul,
nav li.has-child ul li:active > ul{
  visibility: visible;
  opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
	color: #000;
	border-bottom:solid 1px rgba(255,255,255,0.6);
}

nav li.has-child ul li:last-child > a{
 border-bottom:none;
 }

/*
nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
	background:#e2e2e2;
}
*/


/*==3階層目*/

/*3階層目の位置*/
nav li.has-child ul ul{
	top:0;
	left:182px;
	background:#66ADF5;
}

nav li.has-child ul ul li a:hover,
nav li.has-child ul ul li a:active{
	background:#448ED3;
}


/*==768px以下の形状*/

@media screen and (max-width:768px){
	nav{
		padding: 0;
	}
	
	nav ul{
		display: block;
	}
	
	nav li.has-child ul,
	nav li.has-child ul ul{
  	position: relative;
	left:0;
	top:0;
	width:100%;
	visibility:visible;/*JSで制御するため一旦表示*/
	opacity:1;/*JSで制御するため一旦表示*/
	display: none;/*JSのslidetoggleで表示させるため非表示に*/
	transition:none;/*JSで制御するためCSSのアニメーションを切る*/
}
	
nav ul li a{
    font-size: 13px;
	border-bottom:1px solid #ccc;
}

/*矢印の位置と向き*/

nav ul li.has-child::before{
	left:20px;	
}

nav ul ul li.has-child::before{
    transform: rotate(135deg);
	left:20px;
}
    
nav ul li.has-child.active::before{
    transform: rotate(-45deg);
}

}


/*==================================================
　5-3-3 左から右に線が伸びる（下部）
===================================*/
.gnavi li a{
    /*線の基点とするためrelativeを指定*/
	position: relative;
}

.gnavi li.current a,
.gnavi li a:hover{
	color:#303030;
}

.gnavi li a::after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    bottom: 10%;
    left: 10%;
    /*線の形状*/
    width: 80%;
    height: 1px;
    background: #b0b0b0;
    /*アニメーションの指定*/
    transition: all .3s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: left top;/*左上基点*/
}

/*現在地とhoverの設定*/
.gnavi li.current a::after,
.gnavi li a:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}



/*========= SP  ナビゲーションのためのCSS ===============*/

#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
    top:0;
    left: -120%;
    width: 75%;
    height: 100vh;/*ナビの高さ*/
    background: #edf3fa;
    /*動き*/
    transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    left: 0;
}


/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
    /*ナビゲーション天地中央揃え*/
    position: absolute;
    width: 350px;
    z-index: 999;
    top: 52%;
    left:50%;
    transform: translate(-50%,-65%);
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
	text-align: center;
}

#g-nav li a{
	width: 63%;
	color: #303030;
	text-decoration: none;
	padding: 15px;
	display: block;
	letter-spacing: 0.1em;
	font-weight: normal;
	text-align: left;
}
.sns {
    /* display: flex; */
    margin: 540px 0 0 -3px;
    /* transform: translate(-9%, 693%); */
    width: 25%;
    padding: 10px 20px;
}

.line{margin: 0 0 0 0px;}
.insta{margin: 0 0px 0 10px;}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
	top:10px;
	left: 10px;
	cursor: pointer;
    width: 50px;
    height:50px;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 1px;
    /* border-radius: 2px; */
    background-color: #b0b0b0;
    width: 50%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 50%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 50%;
}


/*========= 上部固定させるためのCSS ===============*/
.mizuirobox{
    background-color: #a1c5ed;
    margin: 0 auto;
    height: 60px;
    
}
.header{
    /* background-color: #fff; */
    margin: 0 auto;
    height: 80px;
    text-align: center;
    display: flex;
    align-items: center;
    /*    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05); これを付け足し*/
    max-width: 1000px;
}
.header img{
    /* text-align: center; */
    /*    margin: 0 0px 0 20px;*/
    margin: 0 auto;
    width: 95%;
    max-width: 200px;
}
#header{
	/*高さ指定*/
	width:100%;/*横幅指定*/
	/*以下はレイアウトのためのCSS*/
	/* display: flex; */
	justify-content: space-between;
	align-items: center;
	color:#000;
	text-align: left;
	padding: 0;
	position: fixed;
	z-index: 999;
	border-bottom: 1px solid #e1e1e1;
	background-color: rgba(255, 255, 255, 0.562);
}

/*JSを使いfixedクラスが付与された際の設定*/
#header.fixed{
  position: fixed;/*fixedを設定して固定*/
  z-index: 800;/*最前面へ*/
  top:0;/*位置指定*/
  left:0;/*位置指定*/
}




@media screen and (max-width:768px){
    .mizuirobox{
    background-color: #a1c5ed;
    margin: 0 auto;
    height: 60px;
    
}
.header{
    margin: 0 auto;
    text-align: center;
    display: block;
}
.header img{
    text-align: center;
    margin: 10px auto;
    width: 40%;
}
    #header{
	height: 60px;/*高さ指定*/
	width:100%;/*横幅指定*/
	/*以下はレイアウトのためのCSS*/
	/*	display: flex;*/
	color:#fff;
	text-align: center;
	padding: 0;
	border-bottom: 1px solid #e1e1e1;
	background-color: rgba(255, 255, 255, 0.562);
}
    
    
  
}
/*========= 上部固定させるためのCSS 終わり===============*/


.insta_account{
    max-width: 1000px;
    width: 65%;
    margin: 100px auto;
}
.insta_account h6{
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: 2px;
}


.insta_account .btnbule{
    text-align: center;
    margin: 0 auto;
}
.insta_account .btnbule a{
    font-size: 13px;
}
.insta_account .btnbulein{
    width: 215px;
    display: inline-block;
    margin: 20px 0;
    background-color: #739bc8;
    color: #fff;
    padding: 10px 50px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
}
.insta_account .btnbulein:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}


@media screen and (max-width:768px){
    
.insta_account{
    max-width: 1000px;
    width: 90%;
    margin: 100px auto;
    
}
.insta_account h6{
    text-align: left;
    font-size: 1rem;
    font-weight: normal;
    letter-spacing: 2px;
}



.insta_account .btnbule{
    text-align: center;
    margin: 0 auto;
}
.insta_account .btnbule a{
    font-size: 12px;
}
.insta_account .btnbulein{
    width: 215px;
    display: inline-block;
    margin: 20px 0;
    background-color: #739bc8;
    color: #fff;
    padding: 8px 30px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.insta_account .btnbulein:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}
    
    
}
/*========= インスタ埋め込み用===============*/
.insta_list{
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 20px 0;
}

.insta_list li{
    position: relative;
    width: calc((100% - 40px)/3);
}

/*　画像の拡大　*/
.insta_list img{
  width: 100%;
  height: 100%;
  object-fit: cover;
    transform: scale(1);
	transition: .5s ease-in-out;/*移り変わる速さを変更したい場合はこの数値を変更*/
}
.insta_list a:hover img{
   transform: scale(1.2);/*拡大の値を変更したい場合はこの数値を変更*/
}

.insta_list span{
    display: block;
    line-height: 0;/*行の高さを0にする*/
    overflow: hidden;/*拡大してはみ出る要素を隠す*/
    height: 100%;
}
.insta_list span:hover{
     border-radius: 30px;
     transition: .5s ease-in-out;
}

@media screen and (max-width: 750px){
.insta_list li{
        width: calc((100% - 20px)/2);
    }
}

.insta_list li::before{
	content: "";
	display: block;
	padding-top: 100%;
}

.insta_list a{
	position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}


.insta_btn{
    background-color: #000;
    padding: .5em 1em;
    width: fit-content;
    margin: 0 auto;
    cursor: pointer;
    transition: .3s
}

.insta_btn a{
    color: #fff;
    text-decoration: none;
}

.insta_btn:hover{
    background-color: #999;
}



/*========= インスタ埋め込み用　終わり===============*/

/*==================================================
ふわっ
===================================*/

/* その場で */
.fadeIn{
animation-name:fadeInAnime;
animation-duration:2s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}


/* 下から */
/* fadeUp */

.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration:2s;
    animation-fill-mode:forwards;
    opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
 
.fadeInTrigger,
.fadeUpTrigger,
.fadeDownTrigger,
.fadeLeftTrigger,
.fadeRightTrigger{
    opacity: 0;
}

/*==================================================
じわっ
===================================*/

/* ぼかしから出現 */
.blur{
  animation-name:blurAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.blurTrigger{
    opacity: 0;
}


/*========= 流れるテキスト ===============*/

/*全共通*/

.slide-in {
	overflow: hidden;
	display: inline-block;
}

.slide-in_inner {
	display: inline-block;

}

/*左右のアニメーション*/
.leftAnime{
    opacity: 0;/*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
	animation-name:slideTextX100;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes slideTextX100 {
  from {
	transform: translateX(-100%); /*要素を左の枠外に移動*/
        opacity: 0;
  }

  to {
	transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

.slideAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
    opacity: 0;
}


@keyframes slideTextX-100 {
  from {
	transform: translateX(100%);/*要素を右の枠外に移動*/
    opacity: 0;
  }

  to {
	transform: translateX(0);/*要素を元の位置に移動*/
    opacity: 1;
  }
}

/*========= テキストが1文字ずつ出てきます ===============*/

.eachTextAnime span{opacity: 0;}
.eachTextAnime.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}
/*========= 背景　テキストが1文字ずつ出てきます ===============*/

/*------------------
	*  footer
*------------------*/
footer{
    text-align: center;
    /* margin: 50px auto 0; */
}
#cards {
  border-top: solid 1px #b0b0b0;
  display: flex;
  justify-content: center;
}

.card {
  max-width: 1000px;
  margin: 70px 0;
  width: 300px;
  height: 315px;
}

.card:nth-child(2) {
  margin-right: 30px;
  margin-left: 30px;
}

.picture img {
  width: 100%;
  /* height: 200px; */
  padding-bottom: 15px;
}

.description {
  width: 100%;
  height: 145px;
  padding-right: 12px;
  padding-left: 12px;
  box-sizing: border-box;
  text-align: center;
}

.description p {
  text-align: center;
  font-size: 15px;
  color: dimgray;
}

.button07 {
  width: 140px;
  display: inline-block;
  margin: 20px 0;
  background-color: #739bc8;
  color: #fff;
  padding: 10px 35px;
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 1px;
  font-weight: lighter;
  box-shadow: 3px 3px 3px 0px #d9d9d9;
  transition: .3s ease-in-out;
}
.button07:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}

.footer{
    height: 165px;
    background-color: #edf3fa;
    text-align: center;
}
.footer p{
    color: #303030;
    font-size: 13px;
    text-align: center;
}
.footer a:hover{
    color: #303030;
    opacity: 0.6;
    text-decoration: none;
    transition: opacity .2s;
}
.footer img{
    margin: 30px auto 10px;
    width: 100%;
    max-width: 200px;
    text-align: center;
}


@media screen and (max-width:768px){
    
footer{
    text-align: center;
    margin: 0px auto 0;
}
#cards {
  border-top: solid 1px #b0b0b0;
  display: block;
}
#cards h1{
        text-align: left;
        padding-bottom: 15px;
    }
#cards p{
        text-align: left;
        
    }
.card {
  max-width: 1000px;
  margin: 70px auto;
  height: 315px;
}

.card:nth-child(2) {
  margin: 0 auto;
}

.picture img {
  width: 100%;
  /* height: 200px; */
  padding-bottom: 15px;
}

.description {
  width: 100%;
  height: 145px;
  padding-right: 0px;
  padding-left: 0px;
  box-sizing: border-box;
  text-align: center;
}

.description p {
  text-align: center;
  font-size: 15px;
  color: dimgray;
}

.button07 {
  width: 135px;
  display: inline-block;
  margin: 20px 0;
  background-color: #739bc8;
  color: #fff;
  padding: 10px 35px;
  text-decoration: none;
  font-size: 12px;
  font-weight: lighter;
  letter-spacing: 1px;
  box-shadow: 3px 3px 3px 0px #d9d9d9;
}
.button07:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}

.footer{
    height: 165px;
    background-color: #edf3fa;
    text-align: center;
}
.footer p{
    color: #303030;
    font-size: 10px;
    text-align: center;
}
.footer a:hover{
    color: #303030;
    opacity: 0.6;
    text-decoration: none;
    transition: opacity .2s;
}
.footer img{
    margin: 20px auto 10px;
    width: 40%;
    max-width: 200px;
    text-align: center;
}
    
    
    
}

/*-----------------------


        top main


------------------------*/
.mainvisual img{
    width: 100%;
    height: auto;
    margin: 80px auto;
}

.concept_main{
    max-width: 1000px;
    width: 65%;
    margin: 100px auto;
    text-align: center;
}
.concept_main img{
    width: 100%;
    margin: 0 auto;
}
.concept_main h4{
    font-size: 1.5rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 20px 0 10px;
}
.concept_main p{
    text-align: left;
    font-size: 16px;
    line-height: 2;
}

.concept_main .btnbulein{
    width: 196px;
}

.menu_main{
    max-width: 1000px;
    width: 65%;
    margin: 100px auto;
    text-align: center;
}
.menu_main h4{
    font-size: 1.5rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 10px 0;
}
.facebody{
    margin: 0 auto;
    display: flex;
}
.facebody img{
    width: 95%;
    padding: 0 0px 10px 0px;
}
.facebody a:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
  transition :ease-in-out 0.3s;
}



.about_main{
    max-width: 1000px;
    width: 65%;
    margin: 100px auto;
    text-align: center;
}
.about_main img{
    width: 100%;
    margin: 0 auto;
}
.about_main h4{
    font-size: 1.5rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: normal;
    padding: 20px 0 10px;
}
.about_main p{
    text-align: left;
    font-size: 16px;
    line-height: 2;
}

.about_main .btnbulein{
    width: 196px;
}

.access{
    max-width: 1000px;
    width: 65%;
    margin: 100px auto;
    text-align: center;
}
.access h6{
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: 2px;
}
.access_flex{
    margin: 50px auto 0;
    display: flex;
    font-size: 14px;
    line-height: 28px;
}
.access_flex img{
    width: 95%;
}
.access_flex table{
    width: 95%;
    margin: 0 auto;
}



.access .btnbule{
    text-align: center;
    margin: 0 auto;
}
.access .btnbule a{
    font-size: 13px;
}
.access .btnbulein{
    width: 215px;
    display: inline-block;
    margin: 20px 0;
    background-color: #739bc8;
    color: #fff;
    padding: 10px 50px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.access .btnbulein:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}

#access{
    display: block;
    padding-top: 80px;
    margin-top: -80px;
}



@media screen and (max-width:768px){
    
.mainvisual img{
    width: 100%;
    height: auto;
    margin: 60px auto 0;
}

.concept_main{
    max-width: 1000px;
    width: 100%;
    margin: 100px auto;
    text-align: center;
}
.concept_main img{
    width: 100%;
    /* margin: 0 auto; */
}
.concept_main h4{
    font-size: 1rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 30px 20px 10px;
}
.concept_main p{
    text-align: left;
    font-size: 12px;
    line-height: 2;
    padding: 0 20px;
}

.concept_main .btnbulein{
    width: 185px;
}

.menu_main{
    max-width: 1000px;
    width: 100%;
    margin: 100px auto;
    text-align: center;
}
.menu_main h4{
    font-size: 1rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 10px 20px;
}
.facebody{
    margin: 0 auto;
    display: block;
}
.facebody img{
    width: 100%;
    padding: 0 0 0 0;
}
.facebody a:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}



.about_main{
    max-width: 1000px;
    width: 100%;
    margin: 100px auto;
    text-align: center;
}
.about_main img{
    width: 100%;
    margin: 0 auto;
}
.about_main h4{
    font-size: 1rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 30px 20px 10px;
}
.about_main p{
    text-align: left;
    font-size: 12px;
    line-height: 2;
    padding: 0 20px;
}

.about_main .btnbulein{
    width: 196px;
}

.access{
    max-width: 1000px;
    width: 95%;
    margin: 100px auto;
    text-align: center;
}
.access h6{
    text-align: left;
    font-size: 1rem;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 0px 10px;
}
.access_flex{
    margin: 30px auto 0;
    display: block;
    font-size: 12px;
    line-height: 25px;
}
.access_flex img{
    width: 95%;
}
.access_flex table{
    width: 95%;
    margin: 0 auto;
}



.access .btnbule{
    text-align: center;
    margin: 0 auto;
}
.access .btnbule a{
    font-size: 12px;
}
.access .btnbulein{
    width: 215px;
    display: inline-block;
    margin: 20px 0;
    background-color: #739bc8;
    color: #fff;
    padding: 8px 30px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.access .btnbulein:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}
    
.umeda{
        margin: 35px 0 0;
    } 
    
    
}
/*-----------------------


         Face menu


------------------------*/

.facemenu_main{
    margin: 50px 50px;
}
.facemenu_main h5{
    color: #4c4c4c;
    text-align: center;
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: 8px;
    padding: 110px 0 30px;
    margin-top: -60px;
}
	
.facemenu2 p{
    margin: 0 25px;
    text-align: justify;
    color: #4c4c4c;
    font-size: 14px;
    letter-spacing: 1px;
    line-height: 27px;
    padding: 20px 0;
}


@media screen and (max-width:768px){
    
.facemenu_main{
    margin: 0 10px;
}
.facemenu_main h5{
    color: #4c4c4c;
    text-align: center;
    font-size: 1rem;
    font-weight: normal;
    letter-spacing: 3px;
    margin: -60px 0 0;
    padding: 110px 0 20px;
}
	
.facemenu2 p{
    margin: 0 15px 10px;
    text-align: justify;
    color: #4c4c4c;
    font-size: 12px;
    letter-spacing: 1px;
    line-height: 24px;
    padding: 0px 0px;
}
    
}
/*-----------------------


         bridal menu


------------------------*/
.bridal_light{
    max-width: 1000px;
    width: 64%;
    margin: 100px auto;
    text-align: left;
}
.bridal_light img{
    width: 100%;
    margin: 0 auto;
}
.bridal_light h7{
    font-size: 1.1rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 40px;
}
.bridal_light p{
    text-align: left;
    font-size: 15px;
    line-height: 2;
}


.bridal_p{
    margin: 40px 0px 40px 20px;
}


@media screen and (max-width:768px){
.bridal_light{
    max-width: 1000px;
    width: 100%;
    margin: 50px auto;
    text-align: left;
}
.bridal_light img{
    width: 90%;
    /* margin: 0 auto; */
}
.bridal_light h7{
    font-size: 0.7rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
}
.bridal_light p{
    text-align: left;
    font-size: 11px;
    line-height: 2;
}
    .bridal_p{
    margin: 20px 30px 20px 30px;
}


  }




/*-----------------------


         ご利用規約


------------------------*/

.midashi{
    text-align: center;
    margin: 100px 0px 0px;
}
.midashi p{
    text-align: center;
    font-size: 15px;
    line-height: 25px;
}
.midashi a{
    margin: 0 auto;
    width: 100%;
    padding: 25px 0 40px;
    max-width: 572px;
}

.bridal_light2{
    max-width: 1000px;
    width: 64%;
    margin: 10px auto;
    text-align: left;
}
.bridal_light2 img{
    width: 100%;
    margin: 0 auto;
}
.bridal_light2 h7{
    font-size: 1.1rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 40px;
}
.bridal_light2 p{
    text-align: left;
    font-size: 15px;
    line-height: 2;
}


.bridal2_p{
    margin: 40px 0px 40px 20px;
}


@media screen and (max-width:768px){
.bridal_light2{
    max-width: 1000px;
    width: 100%;
    margin: 0px auto;
    text-align: left;
}
.bridal_light2 img{
    width: 90%;
    /* margin: 0 auto; */
}
.bridal_light2 h7{
    font-size: 0.7rem;
    text-align: left;
    font-weight: normal;
    letter-spacing: 2px;
}
.bridal_light2 p{
    text-align: left;
    font-size: 11px;
    line-height: 2;
}
    .bridal2_p{
    margin: 20px 30px 20px 30px;
}

.midashi p{
    text-align: center;
    font-size: 13px;
    line-height: 25px;
}
  }



/*-----------------------


       datsumou menu


------------------------*/

.datsumou_main{
    margin: 50px 50px;
}
.datsumou_main h5{
    color: #4c4c4c;
    text-align: center;
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: 8px;
    padding: 110px 0 30px;
    margin-top: -60px;
}
.datsumou1{
    padding: 0px 0 30px;
}
.datsumou2{
    /* padding: 0 0 40px; */
}
.datsumou2 p{
    margin: 0 20px;
    text-align: justify;
    color: #4c4c4c;
    font-size: 14px;
    letter-spacing: 1px;
    line-height: 27px;
    padding: 20px 0;
}
.datsumou_machine{
    margin: 20px 0px 40px 20px;
}
.datsumou_machine h8{
    color: #4c4c4c;
    text-align: center;
    font-size: 1.1rem;
    font-weight: normal;
}
.machine_title{
    padding: 50px 0 0px;
    border-bottom: 1px solid #7499BD;
}
.machine_title span{
    color: #4c4c4c;
    font-size: 1rem;
}
.datsumou_machine p{
    font-size: 15px;
    line-height: 2;
    color: #4c4c4c;
}
.machine_flex{
    display: flex;
}
.machine_flex img{
    width: 30%;
}
.nagare{
    padding: 50px 0 0px;
}

.menu{
    font-size: 15px;
    padding: 20px 0 20px;
}
.menu dl {
    display: table;
    width: 100%;
}
.menu dt{
    display: table-cell;
    padding:0.4rem;
}
.menu dd{
    text-align: right;
    display: table-cell;
    padding:0.4rem;
}
.menu dd:after{
    display: inline-block;
    content: "";
    width: 1em;
    font-size: 0.7em;
}
@media screen and (max-width:768px){
    
.datsumou_main{
    margin: 0 15px;
}
.datsumou_main h5{
    color: #4c4c4c;
    text-align: center;
    font-size: 1rem;
    font-weight: normal;
    letter-spacing: 3px;
    margin: -60px 0 0;
    padding: 110px 0 20px;
}
    .datsumou1{
    padding: 0px 0 0px;
}
.datsumou2{
    /* padding: 0 0 20px; */
}
	
.datsumou2 p{
    margin: 0px 15px;
    text-align: justify;
    color: #4c4c4c;
    font-size: 11px;
    letter-spacing: 1px;
    line-height: 24px;
    padding: 0px 0px;
}
  .datsumou_machine{
    text-align: left;
    margin: 20px 13px 40px 13px;
}
.datsumou_machine h8{
    color: #4c4c4c;
    text-align: center;
    font-size: 0.8rem;
    font-weight: normal;
}
.machine_title{
    padding: 20px 0 0px;
    border-bottom: 1px solid #7499BD;
}
.machine_title span{
    color: #4c4c4c;
    font-size: 0.8rem;
}
.datsumou_machine p{
    font-size: 11px;
    line-height: 2;
    color: #4c4c4c;
    text-align: left;
}
.machine_flex{
    display: flex;
}
.machine_flexp{
      width: 257px;
}
.machine_flex img{
    width: 40%;
    object-fit: contain;
}
    
    .menu{
    font-size: 11px;
    padding: 0px 0 0px;
}
.menu dl {
    display: table;
    width: 100%;
}
.menu dt{
    display: table-cell;
    padding:0.4rem;
}
.menu dd{
    text-align: right;
    display: table-cell;
    padding:0.4rem;
}
.menu dd:after{
    display: inline-block;
    content: "";
    width: 1em;
    font-size: 0.7em;
}
    
}














/*-----------------------


         trial


------------------------*/
	

/* 横並び */

.flex {
  display: flex; /*横並び*/
  padding: 50px;
  margin: 0 auto;
  align-items: center;
}
.flex .image {
  width: 500px; /*画像サイズ指定*/
  min-width: 300px;
  margin: 0;
  padding: 0;
}
.flex .right {
  width: 400px;
  margin: 0 0 0 20px;
  padding: 0;
}
.flex .left {
  width: 500px;
  margin: 0 20px 0 0;
  padding: 0;
}
.flex .title {
  display: inline-flex;
  align-items: end;
  margin: 10px 0 0 0;
  padding: 0 1px 0 0;
  font-weight: normal;
  font-size: 21px;
  letter-spacing: 1px;
}
.flex .title img{
  width: 90px;
  padding: 0 35px 0 0;
}
.flex .text {
  margin: 25px 0 0;
  padding: 0;
  text-align: justify;
  font-size: 14px;
  letter-spacing: 1px;
  line-height: 25px;
}

/* 画像を天地中央表示 */

.flex .image {
  
}


.flex .image img {
  width: 100%;
  margin: auto;
}

.btnbule{
    text-align: center;
}
.btnbule a{
    font-size: 11px;
    letter-spacing: 1px;
}
.btnbulein{
    width: 145px;
    display: inline-block;
    margin: 20px 0;
    background-color: #739bc8;
    color: #fff;
    border: solid 1px #739bc8;
    padding: 16px 50px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.btnbulein:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}
.btnfff{
    text-align: center;
}
.btnfff a{
    font-size: 10px;
    letter-spacing: 1px;
}
.btnfffin{
    width: 145px;
    display: inline-block;
    margin: 20px 0;
    background-color: #fff;
    color: #739bc8;
    border: solid 1px #739bc8;
    padding: 16px 50px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.btnfffin:hover {
  color: #739bc8;
  opacity: 0.6;
  text-decoration: none;
}

.btnfff2{
    text-align: center;
    padding: 0 5px;
}
.btnfff2_font{
    text-align: center;
    padding: 0 5px;
}
.btnfff2 a{
    font-size: 13px;
    letter-spacing: 1px;
}
.btnfff2_font a{
    font-size: 13px;
    letter-spacing: 1px;
}

.btnfff2in{
    width: 230px;
    display: inline-block;
    margin: 10px 0;
    background-color: #739bc8;
    color: #fff;
    border: solid 1px #739bc8;
    padding: 16px 10px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.btnfff2in:hover {
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
}

.btnflex{
    display: flex;
    margin: 0 auto;
    text-align: center;
    justify-content: space-evenly;
}
.btnflex2{
    width: 100%;
    display: flex;
    margin: 30px auto;
    text-align: center;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
}
.btnflex2::after{
    display: block;
    content: "";
    width: 262px;
}
.btnflex3{
    width: 70%;
    display: flex;
    margin: 30px auto;
    text-align: center;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
}
.btnflex3::after{
    display: block;
    content: "";
    width: 262px;
}
 .step5 {
        font-size: 18px;
    }

@media screen and (max-width: 513px){
.flex {
  display: block; /*横並び*/
  margin: 0 auto;
  padding: 50px 0 0;
}
.flex .image {
  width: 100%; /*画像サイズ指定*/
  margin: 0;
  padding: 0;
}
.flex .right {
  width: 85%;
  margin: 10px auto;
}
.flex .left {
  width: 85%;
  margin: 10px auto;
}
.flex .title {
  display: inline-flex;
  align-items: end;
  margin: 10px 0 0 0;
  padding: 0 1px 0 0;
  font-weight: normal;
  font-size: 20px;
  letter-spacing: 1px;
}
.flex .title img{
  width: 80px;
  padding: 0 20px 0 0;
}
.flex .text {
  margin: 25px 0 0;
  padding: 0;
  text-align: justify;
  font-size: 14px;
  letter-spacing: 1px;
  line-height: 25px;
}

/* 画像を天地中央表示 */

.flex .image {
  
}

.flex .image img {
  width: 100%;
  margin: 0 auto;
}

.btnbule{
    text-align: center;
    margin: 0 auto;
}
.btnbule a{
    font-size: 11px;
    letter-spacing: 1px;
}
.btnbulein{
    width: 185px;
    display: inline-block;
    margin: 20px 0;
    background-color: #739bc8;
    color: #fff;
    padding: 14px 34px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
.btnfff{
    text-align: center;
    margin: 0 auto;
}
.btnfff a{
    font-size: 11px;
    letter-spacing: 1px;
}

.btnfffin{
    width: 185px;
    display: inline-block;
    margin: 20px 0 0;
    background-color: #fff;
    color: #739bc8;
    padding: 14px 34px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
    .btnfff2{
    text-align: center;
    padding: 0;
}
     .btnfff2_font{
    text-align: center;
    padding: 0;
}
.btnfff2 a{
    font-size: 10px;
    letter-spacing: 1px;
}
    .btnfff2_font a{
    font-size: 8px;
    letter-spacing: 1px;
}
.btnfff2in{
    width: 145px;
    display: inline-block;
    margin: 20px 0 0;
    background-color: #739bc8;
    color: #fff;
    padding: 14px 10px;
    text-decoration: none;
    font-weight: lighter;
    box-shadow: 3px 3px 3px 0px #d9d9d9;
    transition: .3s ease-in-out;
}
    
.btnflex{
    display: block;
    
}
.btnflex2{
    width: 100%;
    display: flex;
    margin: 0px auto 30px;
    text-align: center;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-evenly;
}
    .btnflex2::after{
    display: block;
    content: "";
    width: 166px;
}
    .btnflex3{
    width: 100%;
    display: flex;
    margin: 0px auto 30px;
    text-align: center;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-evenly;
}
    .btnflex3::after{
    display: block;
    content: "";
    width: 166px;
}

    .step5 {
        font-size: 14px;
    }   
}

/*-----------------------


         trialここまで


------------------------*/
	
/*-----------------------


         contact


------------------------*/


.main_visual_c{
    background-image: url("../imges/concept/concept_pc_back.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}
.concept1{
    width: 80%;
    text-align: center;
    margin: 0 auto;
}
.concept2{
    width: 80%;
    text-align: center;
    margin: 0 auto;
}
@media screen and (max-width:768px){
    .main_visual_c{
    background-image: url("../imges/concept/concept_sp_back.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}
    .concept1{
    width: 100%;
    margin: 0 auto;
}
.concept2{
    width: 100%;
    text-align: center;
    margin: 0 auto;
}
}




/*-----------------------


         contactここまで


------------------------*/















/*========= 予約フォーム　装飾===============*/
.baner{
    margin: 50px auto;
    width: 60%;
}

.mailwrap{
    max-width: 1000px;
	margin: 0 auto;
	overflow: hidden;
	padding: 100px 0;
	font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
}
.mailwrap h3{
    font-size: 1rem;
    text-align: center;
    padding: 40px 0 30px;
    font-weight: normal;
}
.yoyakumidashi{
    text-align: center;
}
.yoyakumidashi p{
    text-align: center;
    font-size: 15px;
    line-height: 25px;
}
.yoyakumidashi a{
    margin: 0 auto;
    width: 100%;
    padding: 25px 0 40px;
    max-width: 572px;
}

select{
    font-size: medium;
    margin: 0 14px 0 2px;
}
th p{
    margin: 0px 10px 0 0;
    width: 60px;
    height: 25px;
    background-color: #d55353;
    color: #fff;
    text-align: center;
    align-items: center;
    display: grid;
}

.cyuusyaku p{
    width: 100%;
    font-size: 13px;
    text-align: left;
    color: #000;
    background-color: unset;
    line-height: normal;
    padding: 10px 0 10px 0;
}
.namae td{
    display: flex;
}
.polcy{
    padding: 10px;
    text-align: left;
    font-size: 0.7rem;
    width: 552px;
    height: 140px;
    overflow: scroll;
    background-color: #cccccc;
    overflow-x: hidden;
}
.polcy p{
    width: 535px;
    letter-spacing: initial;
    text-align: center;
    line-height: normal;
}

.Form {
margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
  max-width: 720px;
  font-size: 0.8rem;
}
@media screen and (max-width: 767px) {
    
    .baner{
    margin: 30px auto 40px;
    width: 100%;
}

  .Form {
margin-top: 30px;
  }
.mailwrap h3{
    font-size: 1rem;
    text-align: center;
    padding: 50px 0 20px;
}
.yoyakumidashi p{
    text-align: center;
    font-size: 13px;
    line-height: 25px;
}
    
.mailwrap{
	width: 300px;
	margin: 0 auto;
	overflow: hidden;
	padding-top: 50px;
	font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
}
    
.polcy{
    padding: 10px;
    text-align: left;
    font-size: 0.7rem;
    width: 280px;
    overflow: scroll;
    overflow-x: hidden;
}
.polcy p{
    text-align: center;
    width: 100%;
    line-height: normal;
}
.cyuusyaku p{
    margin: 0px 0 20px;
    width: 48%;
    line-height: normal;
    font-size: 12px;
    text-align: left;
    color: #000;
    background-color: unset;
}
}
.Form-Item {
  
  padding-top: 24px;
  padding-bottom: 24px;
  width: 100%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .Form-Item {
    justify-content: center;
    padding-top: 16px;
    padding-bottom: 16px;
    flex-wrap: wrap;
  }
}
.Form-Item:nth-child(5) {

}
.Form-Item-Label {
  width: 100%;
  max-width: 248px;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .Form-Item-Label {
    max-width: inherit;
    display: flex;
    align-items: center;
    font-size: 15px;
  }
}
.Form-Item-Label.isMsg {
  margin-top: 8px;
  margin-bottom: auto;
}
@media screen and (max-width: 768px) {
  .Form-Item-Label.isMsg {
    margin-top: 0;
  }
}
.Form-Item-Label-Required {
  border-radius: 6px;
  margin-right: 8px;
  padding-top: 8px;
  padding-bottom: 8px;
  width: 48px;
  display: inline-block;
  text-align: center;
  background: #5bc8ac;
  color: #fff;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .Form-Item-Label-Required {
    border-radius: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    width: 32px;
    font-size: 10px;
  }
}
.Form-Item-Input {
  border: 1px solid #ddd;
  border-radius: 6px;
 
  padding-left: 1em;
  padding-right: 1em;
  height: 48px;
  flex: 1;
  width: 100%;

 
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .Form-Item-Input {
	 max-width: 300px;
    margin-left: 0;
    margin-top: 18px;

    flex: inherit;
    font-size: 15px;
  }
}
.Form-Item-Textarea {
  border: 1px solid #ddd;
  border-radius: 6px;
 
  padding-left: 1em;
  padding-right: 1em;
  height: 216px;
  flex: 1;
  width: 100%;
 
 
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .Form-Item-Textarea {
	 max-width: 300px;
    margin-top: 18px;
    margin-left: 0;
    height: 200px;
    flex: inherit;
    font-size: 15px;
  }
}
.Form-Btn {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-top: 32px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 20px;
  padding-bottom: 20px;
  width: 720px;
  display: block;
  letter-spacing: 0.05em;
  background: #DB0003;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  .Form-Btn {
    margin-top: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 300px;
    font-size: 16px;
  }
}
	
	
	

/*＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿追加メールフォームレイアウト＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿*/
    
 

/* CSSは出来る限り必要最低限に留めています。CSSは基本的にシステム側には影響しませんので自由に編集下さい。*/
/*---------------------------------
	CommonCSS [初期化,定義]
---------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;padding:0;
}
ol,ul {
	list-style:none;
}
img{border:0}
/*---------------------------------
	        Base CSS 
---------------------------------*/
a {
	color:#36F;
	text-decoration:none;
}
a:hover {
	color:#039;
	text-decoration:underline;
}
/* clearfix */
.clearfix:after { content:"."; display:block; clear:both; height:0; visibility:hidden; }
.clearfix { display:inline-block; }

/* for macIE \*/
* html .clearfix { height:1%; }
.clearfix { display:block; }

body{
	/* font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
}

#contents{
	width:950px;
	margin:0 auto;
	color:#000;
	font-size:14px;
}
p{
	margin: 10px 0;
}
#icon-layout{
	border-collapse:collapse;
	width:600px;
	margin:0 auto 30px;
}


/*フォームテーブル*/
.formTable{
/*	width:100%;*/
	margin:0 auto;
	border-collapse:collapse;
}

.formTable td,.formTable th{
	padding: 5px 0;
	width:100%;
	display: flex;
}
.formTable th{
	text-align:left;
	display: flex;
	align-items: center;
	/* font-size: 15px; */
}
tr .menu{
    width: 532px;
    padding: 20px;
    font-size: 1.2rem;
}

.menu{
	margin: 0px 13px;
	color: #4c4c4c;
}

tr .pulldown{
    width: 532px;
    padding: 20px;
}

.pulldown{
	background-color: #edf3fa;
    margin:10px 0;
    align-items: center;
}

.formTable table{
	border-collapse:collapse;
	width:90%;
}

/*送料テーブル*/
.souryoTable td,.souryoTable th{
	padding:3px 5px;
	text-align:left;
}

.border-box{
	padding:10px;
	border:1px solid #595757;
	margin:10px 0;
}

.border-text{
	display:inline-block;
	padding:1px 10px;
	border:1px solid #595757;
	margin:0 2px;
}


.smallTotalText,#totalText{
	font-size:16px;
}

input[type="text"],textarea{
	vertical-align: middle;
    padding: 18px 10px;
    background-color: #edf3fa;
    border: 1px;
    margin: 0 10px 0 0;
    font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
    font-size: 0.8rem;
    outline: none;
    -webkit-appearance: none;
    border-radius: 0;
}
input[type="tel"],textarea{
	vertical-align: middle;
    padding: 18px 10px;
    background-color: #edf3fa;
    border: 1px;
    margin: 0 10px 0 0;
    font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
    font-size: 0.8rem;
    width: 551px;
    outline: none;
    -webkit-appearance: none;
    border-radius: 0;
}
input[type="email"],textarea{
	vertical-align: middle;
    padding: 18px 10px;
    background-color: #edf3fa;
    border: 1px;
    margin: 0 10px 0 0;
    font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
    font-size: 0.8rem;
    width: 551px;
    outline: none;
    -webkit-appearance: none;
    border-radius: 0;
}

/* 送信ボタン */
.submitBtn {
  /* buttonタグのリセットCSS */
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  appearance: none;

  color: #fff;
  padding: 15px 24px;
  background-color: #265182;
  cursor: pointer; /* ポインターカーソルを表示 */
  -webkit-appearance: none;
  border-radius: 0;
}

.submitBtn[disabled] {
  background-color: #ccc;
  cursor: not-allowed; /* クリック不可のカーソルを表示 */
}
.submitBtn:hover{
  color: #fff;
  opacity: 0.6;
  text-decoration: none;
  transition: opacity .2s;
}
/*
.submitBtn{
	width:200px;
	height:40px;
	cursor:pointer;
}
*/

/*必須エラーメッセージ*/
.error{
	font-size:13px;
	color:#F00;
	padding:2px 18px;
	background:url(../img/error.gif) no-repeat 0px 5px;
}


/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:572px) {

tr .pulldown{
    font-size: 15px;
    padding: 10px;
}
#contents {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	display:flex;
    font-weight: normal;
}
table.formTable th {
	border-bottom:0;
    font-size: 15px;
}
.productTable td,.productTable th{
	padding:4px;
}


input[type="text"], textarea {
	width: 125px;
    padding: 10px;
    font-size: 15px;
    display: block;
    -webkit-appearance: none;
    border-radius: 0;
}
input[type="submit"], input[type="reset"], input[type="button"] {
	height:50px;
    text-align: center;
    -webkit-appearance: none;
    border-radius: 0;
    font-size: 15px;
}
input[type="email"], textarea {
    vertical-align: middle;
    padding: 10px;
    background-color: #edf3fa;
    border: 1px;
/*    margin: 0 10px 0 0;*/
    font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
    font-size: 15px;
    -webkit-appearance: none;
    border-radius: 0;
    font-size: 15px;
   
}
input[type="tel"],textarea{
	vertical-align: middle;
    padding: 10px;
    background-color: #edf3fa;
    border: 1px;
/*    margin: 0 10px 0 0;*/
    font-family: "ヒラギノ明朝 Std W2", "ヒラギノ明朝 Std W3", "ヒラギノ明朝 Std W4", "ヒラギノ明朝 Std W5", "ヒラギノ明朝 Std W6", "ヒラギノ明朝 Std W7", "ヒラギノ明朝 Std W8";
    font-size: 15px;
    width: 100%;
    -webkit-appearance: none;
    border-radius: 0;
}
    
tr .menu{
    font-size: 15px;
    font-weight: bold;
    padding: 15px;
}
.autoImg{
	max-width:100%;
	height:auto;
}
    
.submitBtn {
  /* buttonタグのリセットCSS */
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  appearance: none;

  color: #fff;
  padding: 0px 24px;
  background-color: #265182;
  cursor: pointer; /* ポインターカーソルを表示 */
  -webkit-appearance: none;
  border-radius: 0;
}
}


/*---------------------------------
         class Library
---------------------------------*/
/* Margin・padding class */
.m0{margin:0!important}.mt5{margin-top:5px!important}.mt10{margin-top:10px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mb5{margin-bottom:5px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.mb20{margin-bottom:20px!important}.mr5{margin-right:5px!important}.mr10{margin-right:10px!important}.mr15{margin-right:15px!important}.mr20{margin-right:20px!important}.ml5{margin-left:5px!important}.ml10{margin-left:10px!important}.ml15{margin-left:15px!important}.ml20{margin-left:20px!important}.pt5{padding-top:5px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pb5{padding-bottom:5px!important}.pb10{padding-bottom:10px!important}.pb15{padding-bottom:15px!important}.pr5{padding-right:5px!important}.pr10{padding-right:10px!important}.pr15{padding-right:15px!important}.pl5{padding-left:5px!important}.pl10{padding-left:10px!important}.pl15{padding-left:15px!important}
.pall5{padding:5px!important}.pall10{padding:10px!important}.pall15{padding:15px!important}
/* /Margin・padding class */
.border-none{border:0!important;}
.clear {clear:both;}
.taR {text-align:right!important;}
.taL {text-align:left!important;}
.taC {text-align:center!important;margin: 30px;}
.big {font-size:170%!important;line-height:130%}
/*Font color*/
.bold {font-weight:bold!important;}
.col1 {	color:#FF6600!important;}
.col2 {	color:#FF9933!important}
.col3 {	color:#FF3300!important;}
.col4 {	color:#D9006C!important;}
.col5 {	color:#669999!important}
.col6 {	color:#0000CC!important}
.col7 {	color:#000099!important}
.col8 {	color:#0066FF!important}
.col9 {	color:#333333!important}
.col10 {color:#666666!important}
.col11 {color:#009900!important}
.col12 {color:#009900!important}
.col13 {color:#996633!important}
.col14 {color:#FF66CC!important}
.col15 {color:#669900!important;}
.col16 {color:#00CC99!important;}
.col17 {color:#fff!important;}
.col18{color:#009966!important}
.col19{color:#F00!important}
.floL {float:left;margin-top:0 !important;}
.floR {float:right;margin-top:0 !important;}
.light {font-weight:normal}
.floL img{margin-right:10px;}
.floR img{margin-left:10px;}
.small{font-size:90%!important}
/*---------------------------------
         /class Library
---------------------------------*/





