
/********************************************
 * reset
 ********************************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	padding: 0;
	margin:0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 100%;
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	padding: 0;
	margin:0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 100%;
}
}
h1, h2, h3, h4, h5, h6 ,th{ font-weight:normal;}
body{ background-color:#FFFFFF; color:#3f2520;
font-weight: 500;}
dd{ display:block;}
ol, ul{
	list-style: none;
}
a img{ border:0;}
em{ font-style:normal;}

/********************************************
 * opacity
 ********************************************/
a:hover img{
	filter:alpha(opacity=80);
	-moz-opacity:0.80;
	opacity:0.80;
}

/********************************************
 * clearfix
 ********************************************/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix{ clear:both;}
* html .clearfix{ height:1%;}
.clearfix {
	display: block;
	line-height:0;
	height: 0px;
}
a {
	outline: none;
	color:#3f2520;
}
a:link {
     text-decoration: none;
}
 a:visited {
	text-decoration: none;
 }
 a:hover {
	text-decoration: none;
	color: #bf8177;
 }

 a:active {
	text-decoration: none;
	color: #bf8177;
 }

/********************************************
 * color
 ********************************************/
.txt_white {
	color: #FFFFFF!important;
}
.txt_black {
	color: #3f2520;
}
.txt_gold {
    color:#917f34;
}
.txt_red {
	color: #FF3333;
}
.txt_pink{
    color: #bf8177;
}
.txt_yellow {
    color:#FC0;
}
.txt_green {
	color: #1cae67;
}
.txt_blue {
	color: #008cd0;
}
.txt_orange {
	color: #e88c2f;
}
.txt_gray {
	color: #666666;
}
.txt_bold{
	font-weight: bold;
}
.txt_center {
 text-align:center;
}
.txt_left {
 text-align:left;
}
.txt_right {
 text-align:right;
}
/********************************************
 * margin paddin
 ********************************************/
.mg5{ margin:5px;}
.mg10{ margin:10px;}
.mg20{ margin:20px;}

.mgt5{ margin-top:5px;}
.mgt10{ margin-top:10px;}
.mgt20{ margin-top:20px;}
.mgb5{ margin-bottom:5px;}
.mgb10{ margin-bottom:10px;}
.mgb20{ margin-bottom:20px;}
.mgr5{ margin-right:5px;}
.mgr10{ margin-right:10px;}
.mgr20{ margin-right:20px;}
.mgl5{ margin-left:5px;}
.mgl10{ margin-left:10px;}
.mgl20{ margin-left:20px;}
.pd5{ padding:5px;}
.pd10{ padding:10px;}
.pd20{padding:20px;}
.pdt5{ padding-top:5px;}
.pdt10{ padding-top:10px;}
.pdt15{ padding-top:15px;}
.pdt20{ padding-top:20px;}
.pdb5{ padding-bottom:5px;}
.pdb10{ padding-bottom:10px;}
.pdb20{ padding-bottom:20px;}
.pdr5{ padding-right:5px;}
.pdr10{ padding-right:10px;}
.pdr20{ padding-right:20px;}
.pdl5{ padding-left:5px;}
.pdl10{ padding-left:10px;}
.pdl20{ padding-left:20px;}

/********************************************
 * 背景
 ********************************************/
.bg_blue{
	background: rgba(0,94,139,0.6);
}
.bg_white {
	background: #ffffff!important;
}
.bg_gray {
	background: #eeeeee;
}
.bg_black{
    background: rgba(0,0,0,0.4);
}
.bg_pink{
	background: #f2eaea;
}
.bg_1{
    background: #c48f87;
    background: -moz-linear-gradient(left,  #c48f87 0%, #c48f87 60%, #bf8177 60%, #bf8177 100%);
    background: -webkit-linear-gradient(left,  #c48f87 0%,#c48f87 60%,#bf8177 60%,#bf8177 100%);
    background: linear-gradient(to right,  #c48f87 0%,#c48f87 60%,#bf8177 60%,#bf8177 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c48f87', endColorstr='#bf8177',GradientType=1 );
    position: relative;
}
.bg_2{
    background: #d9b2bf;
    background: -moz-linear-gradient(left,  #d9b2bf 0%, #d9b2bf 60%, #d49db0 60%, #d49db0 100%);
    background: -webkit-linear-gradient(left,  #d9b2bf 0%,#d9b2bf 60%,#d49db0 60%,#d49db0 100%);
    background: linear-gradient(to right,  #d9b2bf 0%,#d9b2bf 60%,#d49db0 60%,#d49db0 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d9b2bf', endColorstr='#d49db0',GradientType=1 );
    position: relative;
}
.bg_3{
    background: #ffffff;
    background: -moz-linear-gradient(left,  #ffffff 0%, #ffffff 20%, #f2eaea 20%, #f2eaea 100%);
    background: -webkit-linear-gradient(left,  #ffffff 0%,#ffffff 20%,#f2eaea 20%,#f2eaea 100%);
    background: linear-gradient(to right,  #ffffff 0%,#ffffff 20%,#f2eaea 20%,#f2eaea 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2eaea',GradientType=1 );
    position: relative;
    overflow: hidden;
    width: 100%;
}
img{ 
    max-width:100%;
    height:auto;
}
.font1{
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-weight: bold;
}

/********************************************
 * contents
 ********************************************/

.con1{
	width: 1200px;
	margin:0 auto;
}
.con2{
	width: 1000px;
	margin:0 auto;
}
.con3{
	width: 680px;
	margin:0 auto;
}
.co_p {
	padding-top: 80px;
	padding-bottom: 80px;
}
.co_p2 {
	padding-top: 50px;
	padding-bottom: 50px;
}
.co_p3 {
	padding-top: 30px;
	padding-bottom: 30px;
}
.co_t {
	padding-top: 80px;
}
.co_t2 {
	padding-top: 50px;
}
.co_t3 {
	padding-top: 30px;
}
.space{
    height: 80px;
}
.re{
    position: relative;
}
.re2{
    position: relative;
    z-index: 2;
}
#totop {
	position: fixed;
	bottom: 0px;
	right: 0%;
	z-index: 7;
	display: inline;
}
#totop a {
	display: inline-block;
	text-decoration: none;
	height: 45px;
	width: 45px;
	text-align: center;
	background: #000000;
	-webkit-transition: all .2s linear 0s;
    -moz-transition: all .2s linear 0s;
    -o-transition: all .2s linear 0s;
    transition-property: all .2s linear 0s;
}
#totop a:after {
	color: #FFFFFF;
	content: '>';
    font-family: monospace;
    font-weight: bold;
    font-size: 20px;
    line-height: 45px;
    transform: rotate( -90deg );
    display: inline-block;
}
#totop a:hover {
	background: #0086d1;
}

@media screen and (max-width: 1480px) {

}
@media screen and (max-width: 1280px) {
.con1{
	width: 90%;
}
}
@media screen and (max-width: 1080px) {
.con2{
	width: 90%;
}
.co_p {
	padding-top: 70px;
	padding-bottom: 70px;
}
.co_t {
	padding-top: 70px;
}
.space{
    height: 70px;
}
}
@media screen and (max-width: 900px) {
.con3{
	width: 90%;
}
.co_p {
	padding-top: 60px;
	padding-bottom: 60px;
}
.co_t {
	padding-top: 60px;
}
.co_p2 {
	padding-top: 40px;
	padding-bottom: 40px;
}
.co_t2 {
	padding-top: 40px;
}
.co_t3 {
	padding-top: 20px;
}
.space{
    height: 60px;
}
}
@media screen and (max-width: 700px) {

#totop a {
	height: 40px;
	width: 40px;
}
#totop a:after {
    font-size: 20px;
    line-height: 40px;
    transform: rotate( -90deg );
    display: inline-block;
}
}

#loader_wrap {
	z-index: 999;
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100vw;
	height: 100vh;
	top: 0;
	background: #fff;
	pointer-events: none;
	transition: all 0.4s;
}
/* ぐるぐる */
.loader-rotate {
 	width: 40px;
 	height: 40px;
	margin: 0 auto;
 	border-radius: 50%;
 	border: solid 4px;
 	border-color: #4c6d70 #00000010 #00000010;
 	position: relative;
 	animation: spin 1s infinite linear;
}