/* =========================================================
 reset html5doctor
========================================================= */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:700}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
*,
*::before,
*::after {
  box-sizing: border-box;
}
li{
	list-style: none;
}
/* =========================================================
 base 
========================================================= */

html {
  font-size: 16px;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  color: #333;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
	line-height: 1.8;
}
.bg{
    position: absolute;
    top: 600px;
    width: 100%;
    z-index: 1;
    overflow: hidden;
}


.bg01{
	height: 1200px;
	position: relative;
}
.bg01:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
    height: 100%;
      margin: 25% -10% 0%;
  background: #820008;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: rotate(-6deg);
  -ms-transform: rotate(-6deg);
  transform: rotate(-6deg);
  z-index: 1;
}
.bg02{
	height: 900px;
	position: relative;
  overflow: hidden;
	 background: #820008;
	width: 120%;
  margin: -15% -10% 0;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: rotate(6deg);
  -ms-transform: rotate(6deg);
  transform: rotate(6deg);
	  z-index: 1;
}

.bg03{
	height: 2340px;
		position: relative;
  overflow: hidden;
	width: 120%;
  margin: 3% -10% 0;
  background: #820008;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: rotate(-6deg);
  -ms-transform: rotate(-6deg);
  transform: rotate(-6deg);
  z-index: 1;
}


article {
	  animation: bodyFadeIn 1s ease 0s 1 normal;
  -webkit-animation: bodyFadeIn 1s ease 0s 1 normal;
	overflow: hidden;
	padding-top: 120px;
}
@keyframes bodyFadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes bodyFadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
/* link */
a {
  color: #191919;
  text-decoration: none;
}
a:visited {
  color: #191919;
}
a:hover {
  color: #ada491;
}
a:active {
  color: #191919;
}
 a { outline: none; }

a img {
  -webkit-transition: opacity, 300ms;
  transition: opacity, 300ms;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  vertical-align: bottom;
}

img {
  max-width: 100%;
  height: auto;
}
/* clear */
.cf {
  *zoom: 1;
}
.cf::before, .cf::after {
  content: "";
  display: table;
}
.cf:after {
  clear: both;
}
/* sppc */
.only-pc {
  display: block;
}
.only-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
  .only-sp {
    display: block;
  }
}

/* fadein */
.fadein {
  opacity: 0;
  transform: translate(0, 0px);
  -webkit-transform: translate(0, 0px);
  transition: .8s;
}
.fadein-on {
  opacity: 1.0;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}
a img:hover {
  transition: .4s;
}
:target:before {
  height: 95px; /* ヘッダの高さ */
  margin: -95px 0 0; /* ヘッダの高さ */
  content: '';
  display: block;
}

/* =========================================================
text
========================================================= */
html .pageid  {
  visibility: hidden;
}
html.wf-alex-brush-n4-active.wf-a-otf-futo-min-a101-pr6n-n4-active.wf-active .pageid  {
visibility: visible;
}

span.supText {
font-size: 11px;
vertical-align: top;
position: relative;
top: 0em;
}
.indent li {
 padding-left: 1em;
 text-indent: -1em;
}
.indent dd {
 padding-left: 1em;
 text-indent: -1em;
}
.maru-g400 {
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 400;
font-style: normal;
}
.jp700 {
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;
}

.jp400 {
font-family: source-han-sans-japanese, sans-serif;
font-weight: 400;
font-style: normal;
}

p,dl,li,table,figcaption{
    line-height: 2.5;
}
.sup {
	font-size: 13px;
	line-height: 2.1em;
}
.summary {
    font-size: .813em;
    line-height: 2.2em;
    padding-bottom: 16px;
}
.txt {
	font-size: 1em;
	line-height: 2.3em;
	padding-bottom: 24px;
}

.site-title{
	font-size: 3em;
	line-height: 1.5em;
}
.page-title{
	font-size: 4em;
	line-height: 1em;
}

.sec-title{
		font-size: 1.375em;
	line-height: 1.5em;
}
.sub-title{
	font-size: 1.5em;
	line-height: 1.5em;
}

.item-title{
	font-size: 1.5em;
	line-height: 1.5em;
}
.hero-copy{
	font-size: 1.750em;
	line-height: 1.5em;
}

.a-box a {
	color: #5a5958;
    display: inline-block;
    border: #5a5958 solid 1px;
    padding: 14px 40px;
    font-size: 14px;
	transition: .4s;
}
@media screen\0 {
  #home-contact .a-box a{
    padding: 14px 40px;
  }
}
@media screen\0 {
  .a-box a{
    padding: 16px 40px 10px;
  }
}
.a-box a:hover {
	color: #fff;
    background: #5a5958;
	transition: .4s;
}
.dropdown-content a {
     color: #fff;
    display: block;
}
a img:hover{
	opacity: 0.7;
		transition: .4s;
}
a img{
		transition: .4s;
}

/*====== link ========*/

/*============================
#layout
============================*/
.pref-logo {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 100px;
	    background: #fff;
    line-height: 0;
    padding: 10px;
}


.pride-logo {
    position: absolute;
    top: 30px;
    left: 30px;
    width: 120px;
    padding: 5px;
}
.container-xs{
width: 720px;
    max-width: 760px;
    position: relative;
    margin: 0 auto;
}

.container-md{
    width: 100%;
    position: relative;
    margin: 0 auto;
}
.container {
	width: 72%;
	max-width: 1160px;
	position: relative;
	margin: 0 auto;
}
.container-lg{
   width: 1000px;
    position: relative;
    margin: 0 auto;  
	z-index: 2;
}
.container-xl{
	max-width: 100%;
	position: relative;
	margin: 0 auto;
	  
}
.l-sec {

    position: relative;
    z-index: 2;
}

/*====== Flex ========*/

.col-parent{
	display: flex;
	justify-content: space-between;
}
.col-parent.row-reverse:nth-child(odd) {
	flex-direction: row-reverse;
}
.col-5-4{
width:calc(80% - 40px); 
}
.col-4-3{
width:calc(75% - 32px); 
}
.col-3-2{
width:calc(66.6% - 24px); 
}
.col-2-1{
width:calc(50% - 24px); 
}
.col-3-1{
width:calc(33.3% - 16px);
}
.col-4-1{
width:calc(25% - 16px);
}
.col-5-1{
	width:calc(20% - 8px);
}
/*====== header ========*/
header {
	width: 100%;
	background: #fff;
}



/*====== l-nav-side ========*/

.l-nav-side li {
	display: inline-block;
}
.l-nav-side li:after {
  content: '/';
  padding: 0 0.3em;
}
.l-nav-side li:last-child:after {
  content: '';
}
.l-nav-side li:nth-child(5):after {
  content: '';
	padding-right: 40px;
}
.l-nav-side li a {
	display: inline-block;
}
.l-nav-side li a {
	position: relative;
	display: inline-block;
	color: #191919;
	text-decoration: none;
	    padding-bottom: 8px;
}

.l-nav-side li a:hover {
	color: #191919;
}

.hover-ef-line a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	-webkit-transform: scaleX(0);
	-ms-transform: scaleX(0);
	transform: scaleX(0);
	background-color: #191919;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

.hover-ef-line a:hover::after {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}
.hover-ef-line-w a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	-webkit-transform: scaleX(0);
	-ms-transform: scaleX(0);
	transform: scaleX(0);
	background-color: #ccc;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}

.hover-ef-line-w a:hover::after {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}
.l-modal-menu{
	display: none;
}

/*============================
#layout
============================*/

.siteid{
	    width: 130px;
    position: absolute;
    right: 50px;
    top: 50px;
}
.key{
	width: 32%;
    margin: 150px auto 40px;
}
.lead p {
	padding-bottom: 24px;
}
.key img {
    width: 100%;
}
.lead-title {
    font-size: 24px;
    text-align: center;
    padding-bottom: 40px;
	font-weight: 600;
    letter-spacing: 0.05em;
}
#appry {
    background: #f7f2e9;
    padding: 100px 0;
	position: relative;
	overflow: hidden;
}
.sec-subcopy {
    text-align: center;
    font-size: 20px;
    letter-spacing: 0.2em;
}
.sec-copy{
    font-size: 40px;
    line-height: 1.3;
    text-align: center;
   padding: 30px 0 40px;
    letter-spacing: 0.1em;
	    font-weight: 600;
}

.sec-title {
font-size: 20px;
    font-weight: 600;
    text-align: center;
    padding: 10px;
    border-radius: 3px;
    margin-bottom: 60px;
    background: linear-gradient(-135deg, #e4b75f, #c78702);
    color: #fff;
    letter-spacing: 0.05em;
}

#appry h2 {
    font-size: 18px;
    padding-bottom: 20px;
}

.indent li {
    padding-left: 2.5em;
    text-indent: -2.5em;
	    line-height: 2;
    padding-bottom: 10px;
}
#appry .container-xs {
    padding: 0 0 36px 0;
    margin-bottom: 36px;
    border-bottom: #b9b6b0 dotted 1px;
		position: relative;
	z-index: 2;
}
#appry .container-xs.no-border {
    border-bottom:none;

}
.inner {
	width: 800px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.sec-subcopy span {
    color: #c78702;
}

.bg {
	width: 60%;
	position: absolute;
	z-index: 1;
	top: -10%;
	right: -10%;
	opacity: 0.7;
}
footer {
    padding: 80px 0;
    text-align: center;
    font-size: 14px;
}
.footer-siteid{
	font-size: 16px;
	font-weight: 600;
	padding-bottom: 10px;
}

.btn-wrap {
    padding-top: 40px;

}
.btn-wrap a {
display: block;
    color: #333;
    line-height: 1;
    padding: 20px 30px;
    margin-bottom: 15px;
    border: #333 solid 1px;
	position: relative;
	font-weight: 600;
	transition: .4s;
}
.btn-wrap a:hover {
display: block;
    color: #fff;
	background: #333;
		transition: .4s;
}
.btn-wrap a:hover .ico-dl{
background: url(../images/ico-dl3-w.svg) no-repeat;
}


.pagetitle {
    position: absolute;
    top: 30px;
    left: 30px;
    font-size: 12px;
}

.ico-dl{
width: 28px;
    height: 24px;
    background: url(../images/ico-dl4.svg) no-repeat;
    position: absolute;
    top: 15px;
    right: 10px;
}
@media screen and (max-width: 800px) {
	
.inner {
    width: 90%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
}
	.container-xs {
    width: 85%;
	}
	
	.siteid {
    width: 90px;
    position: absolute;
    right: 50px;
    top: 50px;
}
	
	
	
	
}



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


.pagetitle {
    position: absolute;
    top: 30px;
    left: 30px;
    font-size: 10px;
    display: none;
}
	.key {
    width: 45%;
    margin: 180px auto 40px;
}
	.siteid {
    width: 16%;
    position: absolute;
    right: 20px;
    top: 30px;
}
	p, dl, li, table, figcaption {
    line-height: 2.2;
    font-size: 14px;
}
	article {
    padding-top: 80px;
}
	#appry {
    background: #f7f2e9;
        padding: 80px 0 0;
	}
	.sec-subcopy {
    text-align: center;
    font-size: 18px;
	}
	.sec-copy {
    font-size: 24px;
	}
	.sec-title {
    font-size: 18px;
	}
	.btn-wrap a {
    line-height: 1.3;
	}
	.ico-dl {
    top: 32%;
	}
footer p {
    font-size: 11px;
}
	.bg {
    width: 80%;
    position: absolute;
    z-index: 1;
    top: -50px;
    right: -80px;
    opacity: 0.7;
}
	
	
}



