@charset "UTF-8";
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,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}

.clearfix:after{
    content: ".";
    display: block;
    height: 0;
    font-size:0;
    clear: both;
visibility:hidden;
}
.clearfix{ display: inline-block; }
/* Hides from IE Mac */
* html .clearfix{ height: 1%; }
.clearfix{ display:block; }

/* ---------- 初期 ---------- */
body { letter-spacing: 0; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;}
img { width: 100%; max-width: 100%; height: auto;}
a { text-decoration: none;}
strong { font-weight: bold;}
/* ---------- /共通部分 ---------- */
#jougetyuou { position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit-transform: translateY(-50%) translateX(-50%); margin: auto;}
#kadomaru { border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px;}
#resbtn { -webkit-appearance: none;}
.ancr { position: relative; transition: 0.5s;}
.anca { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; z-index: 10; cursor: pointer;}
.ancr:hover { opacity: 0.75; transition: 0.5s; cursor: pointer;}
/* ---------- /参考タグ部分 ---------- */
.hiragino_w3 {font-family: hiragino-mincho-pron, sans-serif; font-weight: 300;}
.hiragino_w6 {font-family: hiragino-mincho-pron, sans-serif; font-weight: 600;}


/* PC */
@media screen and (min-width: 769px) { 
	.wrap { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
	.sponly { display: none!important;}
	
	.mv { width: 100%; margin-bottom: 124px;}
	.inner { width: 95%; max-width: 1366px; margin: 0 auto;}
	.txt { font-size: 16px; letter-spacing: -0.03em; line-height: 1.75em; color: #3B3B3B;}
	.txt01 { text-align: center; margin-bottom: 80px;}
	.txt02 { width: 69.14%; max-width: 944px; margin: -35px auto 30px;}
	.txt03 { width: 69.14%; max-width: 944px; margin: 0 auto 109px;}
	.txt04 { width: 41.898%; float: right;}
	.txt05 { width: 37.96%; margin-top: 25px;}
	.txt06 { width: 65%; margin: 0 auto 180px;}
	.txt07 { text-align: center; margin-bottom: 180px;}
	
	.image01 { width: 69.14%; max-width: 944px; margin: 0 auto; flex-direction: row-reverse;}
	.image01 .head_img { width: 53.838%;}
	.image01 .btm_img { width: 44.15%;}
	.image01 .btm_img .img { margin-bottom: 10px;}
	.image02 { width: 41.898%; float: right; margin-bottom: 80px;}
	.image03 { width: 50.089%; float: left; margin-top: 120px;}
	.image04 { width: 87.262%; margin: 0 auto 180px;}
	.image04 .img { width: 31.842%;}
	.image04 .img:nth-child(2) { margin-top: 56px;}
	.image04 .img:last-child { margin-top: 120px;}
	.image05 { width: 57.4%;}
	.image06 { width: 55.27%; margin: 0 auto 35px;}
	
	.box01 { width: 81.405%; max-width: 1112px; margin-left: 11.71%; margin-bottom: 87px;}
	.box02 { width: 94.875%; margin: 0 auto 142px; flex-direction: row-reverse;}
	
	.banner { width: 95%; max-width: 750px; margin: 0 auto 150px;}
	.banner a { display: block; width: 100%; height: 100%; transition: 0.3s;}
	.banner a:hover { opacity: 0.8; transition: 0.3s;}
	.banner a img { box-shadow: 1px 5px 10px rgba(0,0,0,0.18);}
	
	footer { padding-bottom: 60px;}
	footer .logo { width: 236px; margin: 0 auto;}
}

/* SP */
@media screen and (max-width: 768px) { 
	.spwrap { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;}
	.pconly { display: none!important;}
	
	.mv { width: 100%; margin-bottom: 16vw;}
	.txt { font-size: 4.26vw; letter-spacing: -0.03em; line-height: 1.75em; margin-left: 13.2vw; margin-bottom: 16vw; color: #3B3B3B;}
	.txt02 { margin-bottom: 10.66vw;}
	.txt04 { margin-bottom: 24vw;}
	
	.image01 { width: 82.133vw; margin: 0 auto 16vw;}
	.image01 .head_img { margin-bottom: 2.13vw;}
	.image01 .btm_img .img { width: 38.33vw;}
	.image02 { width: 81.35vw; margin-left: auto; margin-bottom: 9.33vw;}
	.image03 { width: 88.18vw; margin-bottom: 13.33vw;}
	.image04 { width: 70.4vw; margin: 0 auto 13.86vw;}
	.image04 .img { margin-bottom: 4.8vw;}
	.image04 .img:last-child { margin-bottom: 0;}
	.image05 { margin-bottom: 16vw;}
	.image06 { margin-bottom: 10.66vw;}
	
	.banner { padding: 13.73vw 0 10.8vw; margin-bottom: 16vw; background: url("../images/banner_bg_sp.png")no-repeat center; background-size: cover;}
	.banner a { display: block; width: 70.66vw; height: 100%; margin: 0 auto;}
	
	footer { padding-bottom: 13.33vw;}
	footer .logo { width: 62.93vw; margin: 0 auto;}
}

.fade-in {
  opacity: 0;
  transition-duration: 1000ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 50px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-50px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
