@charset "utf-8";
/* CSS Document */

/* =======================================
	2025.08  No.204
    p03/ スウェーデンハウスができるまで
======================================= */

/*---Text---*/

p,
ul li{
  font-size:17px;
  line-height:32px;
  margin-bottom:1em;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:500;
    letter-spacing:0.1em;
}

span{
    display: inline-block;
    letter-spacing:0;
}

h3,h4,h5,h6,dt{
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:700;
}

span.anno{
    display:inline-block;
    font-size:13px;
    line-height:22px;
   font-family: 'Zen Maru Gothic', sans-serif;
   font-weight:500; 
}

div.moose,
div.swedi{
    width:52%;
    position:relative;
    z-index:2;
}

div.moose img{
    position:absolute;
    width:160px;
}

div.swedi img{
    position:absolute;
    width:160px;
}

div.moose img.posi01{
    left:0;
    top:-110px;
}
div.moose img.posi01s{
    left:-80px;
    top:-60px;
}

div.moose img.posi02{
    right:0;
    top:-110px;
}

div.moose img.posi03{
    left:-80px;
    bottom:-20px;
}

div.moose img.posi04{
    right:-80px;
    bottom:-20px;
}
div.moose img.posi04b{
    right:-170px;
    bottom:-20px;
}

div.swedi img.posi01{
    left:-80px;
    top:-50px;
}

div.swedi img.posi02{
    right:-100px;
    top:-60px;
}

div.swedi img.posi02b{
    right:-30px;
    top:-100px;
}

div.swedi img.posi03{
    left:-100px;
    bottom:-60px;
}

div.swedi img.posi04{
    right:-30px;
    bottom:-45px;
}





div.moose p,
div.swedi p{
    background:#FFF;
    border-radius:60px;
    line-height:1.8em;
    text-align: center;
    padding:2em;
    transition:2s;
}

div.moose p{
    color:#009AAA;
}

div.swedi p{
    color:#EE7800;
}

a.btn_map{
    display:block;
    border:solid 2px #009AAA;
    color:#009AAA;
    background:#F7F1E3;
    border-radius:30px;
    padding:1em 0;
    text-align:center;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:bold;
    font-size:1.2em;
    line-height:1.2em;
    margin:1.5em auto;
    transition:1s;
}

a.btn_map span{
    font-size:0.8em;
}

a.btn_map:hover{
    color:#FFF;
    background:#009AAA;
    text-decoration: none;
}

.column h3{
    font-size:2.5em;
    text-align: center;
    line-height: 1em;
    letter-spacing:0.1em;
    margin:0 auto;
    padding:0;
}

.bg_bl{
    width:90%;
    margin:0 auto 1.3em;
    background:#CEE4E3;
    padding:0.8em 0;
    text-align:center;
    line-height:1.5em;
    color:#000;
    border-radius:75px;
    letter-spacing:0.1em;
}

h3.bg_bl{
    font-size:33px;
}

h4{
    z-index:2;
}
h5{
    z-index:3;
}

.column h5,
.column h6{
    font-size:20px;
    line-height:1.5em;
}

.step h4{
    font-size:31px;
    letter-spacing:0.1em;
    line-height:1.5em;
    color:#009aaa;
    border-bottom:dashed 4px #009aaa;
    padding-bottom:0.3em;
    margin-bottom:1.5em;
    text-align:center;
}

.step h5{
    font-size:30px;
    line-height:1.3em;
}
.step h6{
    font-size:25px;
    line-height:1.3em;
}

.reason h5{
    font-size:30px;
    letter-spacing:0.1em;
    color:#009aaa;
    padding-bottom:0.5em;
}

.reason h5 span.cap{
    display:block;
    color:#000;
    font-size:0.8em;
}

span.txt-ll{
    font-size:1.8em;
    letter-spacing:0.1em;
    line-height:1.5em;
}

span.ja{
    font-family:
    "Hiragino Kaku Gothic ProN","Hiragino Sans",
    Meiryo,sans-serif;
    font-size:1em!important;
}

span.txt-s{
    letter-spacing:0.1em;
}

[data-ruby]::before {
    width:2.5em;
    text-align:left;
}

a.link_btn{
    width:40%;
    display:block;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight:bold;
    font-size:22px;
    letter-spacing:0.1em;
    color:#009aaa;
    border:solid 5px #009aaa;
    padding:1em 0;
    margin:1em auto;
    text-align:center;
    border-radius:35px;
}

a.link_btn:hover{
    background:#009aaa;
    color:#FFF;
    text-decoration: none;
}


/* =======================================
	PC
======================================= */

/*---Layout---*/

div.pageNavi{
    display:block;
}

#mainArea{
    background:#F7F1E3;
    padding-bottom:2em;
    overflow-x: hidden;
}

.contArea{
    width:88%;
    max-width:1200px;
    min-width:850px;
    margin:0 auto;
    position:relative;
}

div.videoArea{
    width:80%;
}

.titleArea{
    width:90%;
    padding:3em 0;
    margin:0 auto;
}

.titleArea h2{
    width:84%;
    max-width:900px;
    margin:0 auto 1.5em;
    position:relative;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
}

.titleArea h2 img{
    animation-fill-mode: forwards;
    opacity:0;
}

.titleArea img#fuki{
    opacity:0;
    width:22%;
    position: absolute;
    left:10%;
    top:20.5%;
}

.titleArea h4{
    width:50%;
    min-width:450px;
    margin:0 auto 2em;
}


h3{
    width:90%;
    margin:0 auto 3em;
}

h2 img,
h3 img{
    width:100%;
}

.titleArea p{
    text-align: center;
    margin:0 auto;
    position:relative;
    z-index:5;
    animation-duration: 3s;
}

img.layer{
    position:absolute;
    left:0;
    top:0;
}

.tgt{
    width:100%;
    /*margin:0 auto 1em;
    position:relative;*/
}

div.conv,
div.reason,
div.step{
    margin:0 auto 5em;
    width:90%;
    position:relative;
}

div.step{
    animation-delay: 1s;
}

div.step h5{
    width:100%;
    font-size:25px;
    margin-bottom:0.8em;
}

div.step h6{
    width:100%;
    font-size:18px;
    margin-bottom:0.8em;
}


div.step p{
    width:100%;
    margin:0 auto;
    line-height:1.6em;
}

div.column{
    width:90%;
    position:relative;
    background:#CEE4E3;
    border-radius:40px;
    padding:2.5em 0 1em;
}

div.column.nobg{
    background:none;
    border-radius:none;
    padding:2.5em 0 2em;
}

div.column h5{
    width:88%;
    font-size:22px;
    line-height:1.5em;
    letter-spacing:0.1em;
    text-align: center;
    border-bottom:solid 1px #000;
    padding-bottom:0.5em;
    margin:0 auto 0.5em;
}

div.column.nobg h5{
    width:88%;
    font-size:28px;
    line-height:1.5em;
    letter-spacing:0.1em;
    text-align: left;
    border-bottom:none;
    margin:0 auto;
}

div.column hr{
    width:88%;
    height:0;
    padding:0;
    margin:0 auto 1.5em;
	border-top: 1px solid #000;
}

/*div.column ul{
    width:88%;
    margin:0 auto;
    padding-top:2em;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    justify-content: space-between;
	gap: 1.5%;
}

div.column ul li{
    width:28%;
    position:relative;
    margin:0 auto 1.5em;
}

div.column ul li img{
    width:25%;
    display:inline-block;
    margin-right:0.2em;
    vertical-align: middle;
}

div.column ul li:nth-child(2) > img{
    animation-delay: 0.5s;
}
div.column ul li:nth-child(3) > img{
    animation-delay: 1s;
}
div.column ul li:nth-child(4) > img{
    animation-delay: 1.1s;
}
div.column ul li:nth-child(5) > img{
    animation-delay: 1.5s;
}
div.column ul li:nth-child(6) > img{
    animation-delay: 1.8s;
}

div.column ul li:nth-child(2){
    animation-delay: 0.5s;
}
div.column ul li:nth-child(3){
    animation-delay: 1s;
}
div.column ul li:nth-child(4){
    animation-delay: 1.1s;
}
div.column ul li:nth-child(5){
    animation-delay: 1.5s;
}
div.column ul li:nth-child(6){
    animation-delay: 1.8s;
}

div.column ul li h6{
    width:72%;
    font-size:19px;
    letter-spacing: 0.1em;
    display:inline-block;
    vertical-align: middle;
}*/

div.column p{
    width:88%;
    margin:0 auto 1.5em;
    letter-spacing:0.5px;
}

div.column ul li p{
    width:100%;
}

div.ill{
    position:relative;
}

div.ill img{
    width:100%;
}

div.ill .anime{
    width:100%;
    height:auto;
    position:absolute;
    left:0;
    top:0;
}


/*area1*/

div#area1{
   margin-top:2em;
   margin-bottom:8em;
}

div#ill_main{
    width:80%;
    margin:0 auto;
    position:relative;
}

div#ill_main2{
    position:relative;
    z-index:10;
}
div#ill_main2 img.main_p{
    width:45%;
    position:absolute;
    left:12%;
    bottom:-100px;
    z-index:1;
}

/*cont1*/
#cont1{
    max-width:1200px;
}

#cont1 div.ill#ill_main{
    position:relative;
    z-index:3;
    width:80%;
    margin:-15% 0 0 16%;
}

#cont1 div.moose#mse01{
    width:55%;
    margin-left:40%;
    position:relative;
    z-index:2;
}

#cont1 div.moose#mse01 p{
    padding-bottom:3em;
}

div#cont1 div.moose#mse02{
    width:43%;
    margin:-5% 0 0 12%;
    position:relative;
    z-index:1;
}

#cont1 div.swedi#swd01{
    position:relative;
    z-index:4;
    width:33%;
    margin:-4% 0 0 14%;
}

div#cont1 div.moose#mse03{
    position:relative;
    z-index:5;
    width:52%;
    margin:-8% 0 0 43%;
}

div#cont1 div.moose#mse03 img{
    left:-100px;
    bottom:-40px;
}

/*cont2*/

#area2{
    margin-top:2em;
}

#cont2-1.step >p{
    width:48%;
    margin-bottom:2.5em;
    margin-left:0;
}

div#cont2-1 div#mse04{
    position:absolute;
    top:15em;
    left:52%;
    width:42%;
}

div.moose#mse04 img.posi02{
    right:-15%;
}

#cont2-1.step > h6{
    width:48%;
    font-size:20px;
    text-align: center;
    color:#009AAA;
    padding-bottom:0.5em;
    border-bottom:solid 1px #009AAA;
    margin:3em 0 1em;
}

div#cont2-1 div#mse05,
div#cont2-1 div#mse06{
    width:40%;
}

div#cont2-1 div#mse05 p,
div#cont2-1 div#mse06 p{
    padding:3em;
}

div#cont2-1 div#mse06{
    margin-left:8%;
    margin-top:8em;
}

#cont3-1 div#mse06 > img{
    width:58%;
    top:-65%;
}

div.ill#ill01{
    width:45%;
    position:absolute;
    left:46%;
    top:35%;
    z-index:5;
}

div.ill#ill01 div{
    position:relative;
    z-index:6;
}

div.ill#ill01 div img.layer{
    width:100%;
    position:absolute;
    right:0;
    top:0;
}

div#cont2-1 div#swd02{
    width:70%;
    margin-top:-8%;
    position:relative;
    z-index:4;
}

/*cont3*/

#area3{
    margin-top:2em;
}

#cont3-1.step{
    margin-bottom:2em;
}

#cont3-1.step > div.ill-wrap{
    position:relative;
    margin-bottom:2em;
}

#cont3-1.step > div.ill-wrap > p{
    width:40%;
    position:absolute;
    left:0;
    top:0;
}

#cont3-1.step > div.ill-wrap > div.ill#ill02{
    width:60%;
    margin-left:40%;
}

#cont3-1.step > div.ill-wrap > div.ill#ill02 img.layer{
    top:auto;
    bottom:0;
}

div.ill#ill02 .sys img{
    transition:0.8s;
}

#cont3-1.step > div.ill-wrap > div.ill#ill02 img.layer.p{
    z-index:5;
}

#cont3-1.step > div.ill-wrap > div.ill#ill02 img#room_2{
    position:absolute;
    width:33%;
    left:35%;
    top:52%;
}

#cont3-1.step > div.ill-wrap > div.ill#ill02-2{
    width:40%;
    position:absolute;
    left:2%;
    top:38%;
}

div.ill#ill02-2 #ill02-fukidashi_txt{
    width:64%;
    position:absolute;
    left:15%;
    top:17%;
}

div.ill#ill02-2 #ill02-fukidashi_txt img{
    width:100%;
    margin-bottom:0.3em;
}


/**/

div.ill#ill02 #kabe img,
div.ill#ill02 #room img,
div.ill#ill02 #yuka img,
div.ill#ill02 #yuka_1wrap{
    transition:1s;
    opacity:0;
    /*animation-play-state: paused;*/
}

div.ill#ill02 .sys img,
div.ill#ill02 .sys #yuka_1{
    opacity:1;
}

div.ill#ill02 .pause{
    opacity:0.2;
}

div.ill#ill02 .pause img,
div.ill#ill02 .pause #yuka_1{
    animation-play-state: paused;
}

div.ill#ill02 .sys #kabe_s{
    animation:fadeIn 1s 0.5s forwards;
    z-index:5;
}
div.ill#ill02 .sys #kabe_1{
    animation:fadeInUp 1.5s 0.5s forwards;
}
div.ill#ill02 .sys #kabe_2{
    animation:fadeInUp 1.5s 1s forwards;
}
div.ill#ill02 .sys #kabe_3{
    animation:fadeInUp 2s 1.4s forwards;
}
div.ill#ill02 .sys .kabe_3-2lwrap{
    animation:fadeInLeft 2s 1.6s forwards;
}
div.ill#ill02 .sys #kabe_3-2l{
    animation:fadeInUp 1.8s 1.6s forwards;
}
div.ill#ill02 .sys .kabe_3-2rwrap{
    animation:fadeInRight 2s 1.6s forwards;
}
div.ill#ill02 .sys #kabe_3-2r{
    animation:fadeInUp 1.8s 1.6s forwards;
}
div.ill#ill02 .sys #kabe_3-3{
    animation:fadeInUp 1.8s 2.2s forwards;
}
div.ill#ill02 .sys #kabe_4{
    animation:fadeInLeft 2s 2.5s forwards;
}
div.ill#ill02 .sys #kabe_5{
    animation:fadeInRight 2s 2.5s forwards;
}
div.ill#ill02 .sys #kabe_6{
    animation:fadeIn 2s 3.6s forwards;
}
div.ill#ill02 .sys #kabe_7{
    animation:fadeIn 2s 4s forwards;
}

div.ill#ill02 .sys #room_s{
    animation:fadeIn 1s 0s forwards;
    z-index:5;
}

div.ill#ill02 .sys #room_1{
    animation:fadeInDown 2s 0.5s forwards;
}

div.ill#ill02 .sys #room_2{
    animation:fadeInRight 1.8s 1.2s forwards;
}
div.ill#ill02 .sys #room_3wrap{
    animation:slideInUp 1s 1s forwards;
}
div.ill#ill02 .sys #room_3{
    animation:fadeInRight 2s 1.5s forwards;
}
div.ill#ill02 .sys #room_4{
    animation:fadeInUp 2.5s 1.5s forwards;
}

div.ill#ill02 .sys #yuka_s{
    animation:fadeIn 1s 0s forwards;
    z-index:5;
}
div.ill#ill02 .sys #yuka_1wrap{
    animation:fadeInUp 1.5s 2s forwards;
}
div.ill#ill02 .sys #yuka_1{
    animation:bounce 1.5s 2s forwards;
}
div.ill#ill02 .sys #yuka_2{
    animation:fadeInLeft 2.5s 0.5s forwards;
}
div.ill#ill02 .sys #yuka_3{
    animation:fadeInRight 2.5s 0.5s forwards;
}
div.ill#ill02 .sys #yuka_4{
    animation:fadeInRight 2.5s 1.5s forwards;
}
div.ill#ill02 .sys #yuka_5{
    animation:fadeInLeft 2.5s 1.5s forwards;
}

#ill02-fukidashi_txt img{
    transition:1s;
}

#ill02-fukidashi_txt a:hover img{
    opacity:0.6;
}

#ill02-fukidashi_txt img.pause{
    opacity:0.2;
}


/**/
div#area3 h5{
    width:80%;
    font-size:18px;
    text-align: center;
    color:#009AAA;
    margin:0 auto 0.5em;
}

div#area3 dl{
    margin:0 auto;
    padding-top:2em;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    justify-content: space-between;
	gap: 1.5%;
}

div#area3 dl > div{
    width:28%;
}

div#area3 dt{
    font-size:20px;
    text-align: center;
    color:#009AAA;
    margin:0 auto 0.8em;
    padding-bottom:0.5em;
    border-bottom:solid 1px #009AAA;
}

div#area3 dt > span{
    background:#009AAA;
    color:#FFF;
    border-radius:15px;
    padding:0.3em 0.5em;
    margin-right:0.1em;
}

div#area3 dd h5{
    width:100%;
    margin-bottom:0.8em;
    letter-spacing:0.1em;
}

div#area3 dd a.link_btn{
    font-size:1em;
    width:60%;
    padding:0.5em;
    border:solid 3px;
    background:#FFF;
}

div#area3 dd a.link_btn:hover{
    border:solid 3px #009AAA;
    background:#009AAA;
}

#cont3-2.step div.column.line{
    width:100%;
    background:none;
    border-radius:50px;
    border:solid 1px #009AAA;
}

#cont3-2.step div.column.line h5{
    border-bottom:none;
    font-size:23px;
}

div#cont3-2 div#swd03{
    width:40%;
    margin:1.8em 0 0 15%;
}

div#cont3-2 div#mse07{
    width:45%;
    margin:1.8em 0 0 35%;
}
div#cont3-2 div#mse07 img.posi02{
    right:-120px;
    top:-50px;
}
div#cont3-2 div#mse08{
    width:35%;
    margin:-1.5em 0 0 10%;
}
/*cont4*/

#area4{
    padding:0 0 2em;
}

#area4 .column h3{
    font-size:2.3em;
    color:#009AAA;
    position:relative;
    margin-bottom:1em;
    width:100%;
}

#area4 .column h3 span{
    display:inline-block;
    background:#F7F1E3;
    padding:0 0.3em;
    position:relative;
}

#area4 .column h3::before{
    content:"";
    display:block;
    width:100%;
    height:3px;
    background:#009AAA;
    border-radius:1px;
    position:absolute;
    top:50%;
}
#area4 div.column{
    margin-left:auto;
    margin-right:auto;
}

#area4 div.column #ill03_txt1-2{
    position:absolute;
    right:19%;
    top:9%;
    width:39%;
}

#area4 div.column #ill03_txt2{
    position:absolute;
    left:0;
    top:37%;
    width:18%;
}

#area4 div.column #ill03_txt3{
    position:absolute;
    right:-2%;
    bottom:19%;
    width:28.5%;
}

#area4 div.column #circle_wrap{
    position:absolute;
    width:28%;
    left:35%;
    top:37%;
    text-align: center;
}

#area4 div.column #circle_wrap > img{
    display:block;
}

#area4 div.column #circle_wrap img#circle{
    width:100%;
    animation:none;
}

#area4 div.column #circle_wrap.active img#circle{
    animation: circle_move 10s linear infinite;
}

@keyframes circle_move {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

#area4 div.column #circle_wrap a:link img#circle{
    transition:2s;
}

#area4 div.column #circle_wrap a:hover img#circle{
    animation:none;
    opacity:0.5;
}

#area4 div.column #circle_wrap img#line{
    width:3%;
    margin:0 auto;
    opacity:1;
    transition:1s;
}

#area4 div.column #circle_wrap.active img#line{
    opacity:0;
}

#area4 > div.step{
    margin-bottom:0;
}

#area4 div.reason{
    width:100%;
}

#cont4-1 h3.bg_bl{
    margin-bottom:1.5em;
}

#cont4-1 h4{
    width:100%;
    margin:0;
    color:#009aaa;
    text-align: center;
    font-size:1.6em;
    line-height:1.8em;
    padding:0.5em 0 0.5em;
    letter-spacing:0.1em;
    position:relative;
    z-index:10;
    border-top:solid 3px #009AAA;
    border-bottom:solid 3px #009AAA;
}
#cont4-1 h4::after{
    content: "";
    display: inline-block;
    width: 100%;
    height:20px;
    position:absolute;
    left:0;
    bottom:-20px;
    background:url("../img/cont4-1_h4.png") bottom no-repeat;
    background-size:auto 20px;
}


#cont4-1 #ill03{
    width:70%;
    margin:0 0 0 15%;
    position:relative;
}

#cont4-1 #ill03 img.layer{
    position:absolute;
    left:0;
    top:0;
}

#cont4-1 #ill03 img.layer#ill05_txt2{
    width:24%;
    left:auto;
    right:-8%;
    top:12%;
}

#cont4-1 img.num{
    width:5%;
    position:absolute;
    animation-name:fadeIn;
    animation-delay:1s;
}

#cont4-1 img.num#num01{
    left:24%;
    bottom:33%;
}

#cont4-1 .modal_btn img:hover{
    opacity:0.5;
}

#cont4-1 a.blink.active img{
    -webkit-animation:blink 0.5s ease-in-out infinite alternate;
    -moz-animation:blink 0.5s ease-in-out infinite alternate;
    animation:blink 0.5s ease-in-out infinite alternate;
}

@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}


#cont4-1 div.modal#modal_03 img#ill06_2{
    width:60%;
    margin:0 auto 0 20%;
}

#cont4-1 #ill06_txt{
    width:38%;
    position:absolute;
    left:60%;
    top:13%;
}

#cont4-1 #ill06_txt h5{
    margin-bottom:0.5em;
}



/*#cont4-1 #ill06 a.pop > img:hover,
#cont4-1 #ill06 a.pop > p:hover{
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
    opacity:0.8;
}*/



div#back_btn{
    position:fixed;
    right:1em;
    top:1em;
    width:120px;
    height:150px;
    background: url("../img/pop_back.png") no-repeat;
    background-size:contain;
    z-index:30;
    transition:0.3s;
    display:none;
}

div#back_btn:hover{
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
    opacity:0.8;
}

/*cont4-2*/
div#cont4-2{
    width:70%;
    margin:-10em 16% 2em 14%;
    position:relative;
    padding-top:1em;
}

div#cont4-2.ill img{
    position:absolute;
    display:block;
}

div#cont4-2.ill img#ill_cross_sec_bg{
    position:relative;
    width:100%;
    height:auto;
}

div#cont4-2.ill img.main{
    width:56%;
    left:22%;
    top:16%;
    /*opacity:0.5;*/
}

div#cont4-2.ill img.icon{
    width:13.5%;
    top:47.5%;
    z-index:5;
    transition:0.5s;
}

div#cont4-2.ill img.icon#sec_out{
    left:0%;
}

div#cont4-2.ill img#sec_in{
    right:0%;
}

div#cont4-2.ill img#ill_cross_sec_txt{
    width:100%;
    left:0;
    top:0;
}

div#cont4-2.ill img#cross_sec_link1{
    width:29.5%;
    top:63%;
    left:16%;
    transform-origin: right;
}


img#cross_sec_link2{
    width:34%;
    top:77.5%;
    right:12.8%;
    transform-origin: left;
}

div#cont4-2.ill img#cross_sec_link3{
    width:27%;
    top:28.5%;
    right:27.5%;
    transform-origin: left;
}

div#cont4-2.ill a:link img{
    transition:0.5s;
}

div#cont4-2.ill a:hover img{
    transform:scale(1.08);
}

/*cont4-3*/

div#cont4-3{
    margin:0 auto;
}

div#cont4-3 div.pointArea{
    margin-bottom:3.5em;
}

div#cont4-3 div.pointArea > div{
    display:inline-block;
    vertical-align: top;
}

div#cont4-3 div.pointArea > div.txt{
    width:40%;
    margin-left:5%;
    position:relative;
}

div#cont4-3 div.pointArea > div.moose{
    width:50%;
    margin-top:5em;
    margin-left:3%;
}

div#cont4-3 div.pointArea > div.moose p{
    padding-top:3em;
}

div#cont4-3 div.pointArea > div.txt h4{
    width:92%;
    margin:0 auto 0.5em;
    border-radius:20px;
    font-size:24px;
    color:#000;
    padding:0.5em 0;
    text-align: center;
}

div#cont4-3 div.pointArea > div.txt h5{
    font-size:20px;
    text-align: center;
    color:#009AAA;
    margin:0 auto 0.5em;
    border-bottom:solid 1px #009AAA;
}

.outdoor{
    background:#f8d049;
}

.indoor{
    background:#6eb6de;
}


div.moose img.posipoint{
    left:30%;
    top:-110px;
}

div.moose img.point{
    width:110px;
    position:absolute;
    left:calc(30% + 98px );
    top:-65px;
}

div#cont4-3 div.pointArea > div#mse10{
    width:40%;
    margin:0 0 0 3%;
}

div#cont4-3 div.pointArea > div#mse10 p{
    padding-top:2em;
}

div#cont4-3 div.pointArea > div#mse10 img{
    right:-120px;
    top:-5px;
}

div#cont4-3 div#mse11{
    width:100%;
    margin:0;
}

div#cont4-3 div#mse11 p{
    width:100%;
    padding:3em 0;
}

/*cont4-4*/

div.miniColumn{
    width:90%;
    margin:2em auto;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    -webkit-box-pack: space-between;
    justify-content: space-between;
}


div.miniColumn > div.txt{
    width:45%;
    position:relative;
}

div.miniColumn div.txt h4{
    font-size:22px;
    text-align: center;
    color:#009AAA;
    margin:0 auto 0.8em;
}

div.miniColumn div.txt h4 img{
    width:40px;
    display:inline-block;
    margin-right:0.5em;
}

div.miniColumn div.txt h4 span{
    display:inline-block;
    vertical-align: top;
    margin-top:0.8em;
}

div.miniColumn div.txt h5{
    font-size:24px;
    width:100%;
    font-weight:bold;
    line-height:1.5em;
    text-align:center;
}

div.miniColumn a.link_btn{
    width:100%;
    line-height:1.4em;
    border-radius:50px;
}

div.miniColumn div p{
    margin:0 auto 1.5em;
    letter-spacing:0.1em;
    width:98%;
}

div.miniColumn div p span.anno{
    letter-spacing:0.05em;
}

/**/

div#cont3-3{
    margin-left:auto;
    margin-right:auto;
    position:relative;
}

div#cont3-3 div.txt h5{
    color:#009AAA;
    text-align:left;
}
div#cont3-3 div.txt h5 img{
    width:auto;
    height:2em;
    margin-right:0.5em;
    vertical-align: bottom;
}

div#cont3-3 div.txt h6{
    font-size:28px;
    text-align:center;
    color:#009AAA;
    width:100%;
    margin-bottom:0.8em;
    background:url("../img/h6_bg.png") no-repeat;
    background-size:100% 100%;
}

/*div#cont3-3 div.txt h6::before{
    width:1em;
    height:2em;
    display: inline-block;
    content=" ";
    background: url("../img/bracket_blu.png") no-repeat;
    background-size:contain;
    position:absolute;
    left:0;
    top:0;
}*/

div#cont3-3 div.txt#outer{
    width:48%;
    margin-left:52%;
    margin-top:-38%;
}

img.circle#circle02{
    left:55%;
    top:0;
    width:35%;
}

div#cont3-3 div#mse08{
    width:35%;
    position:absolute;
    right:0;
    left:auto;
    top:22%;
}

div#cont3-3 div#mse09{
    width:48%;
    margin-left:55%;
    margin-top:14%;
}

div#cont3-3 div#mse09 p,
div#cont3-3 div#mse10 p{
    padding:2.5em 0;
}

div#cont3-3 div#mse09 img.posi02{
    right:40%;
}

div#cont3-3 div#mse09 img.point{
    right:26.5%;
    top:-40%;
    left:auto;
    width:22%;
}

div#ill07{
    margin-top:15%;
}

div#ill08{
    width:40%;
    position:absolute;
    right:0;
    top:-6%;
}

div#cont3-3 div.txt#inner{
    padding-top:10%;
    width:52%;
}

div#cont3-3 div#mse10{
    margin-top:17%;
}

div#cont3-3 div#mse10 img.posi02{
    right:40%;
    top:-55%;
}

div#cont3-3 div#mse10 img.point{
    right:25%;
    top:-40%;
    left:auto;
    width:22%;
}

div#cont3-3 div#swd03{
    width:30%;
    margin-top:-6%;
    margin-left:43%;
}

div#cont3-3 div#swd03 img{
    /*right:-25%;
    top:-60%;*/
}

div#ill09{
    width:60%;

}

div#cont3-3 div.txt.extra{
    position:absolute;
    right:0;
    top:0;
    width:35%;
}

div#cont3-3 div.txt.extra p,
div#cont3-4 div.txt.extra p{
    line-height:1.5em;
    margin:0;
    width:100%;
}

div#cont3-3 div.txt.extra h4,
div#cont3-4 div.txt.extra h4{
    font-size:26px;
    line-height:1.5em;
    margin-bottom:1em;
}

div#mse11{
    width:90%;
    margin-top:3%;
    margin-left:10%;
    position:relative;
}

div#mse11 img.posi02{
    top:-110px;
    right:6%;
}

div#mse11 img.point{
    width:12%;
    top:-68px;
    left:auto;
    right:-0.7%;
}

div#ill10{
    width:40%;
    mix-blend-mode: multiply;
    margin-top:-5%;
}

div#txt_ill10{
    width:60%!important;
    position:absolute!important;
    right:0;
    top:30%;
}

div#cont3-4{
    margin:0 auto;
}

div#ill11{
    width:40%;
    margin-left:57%;
}

div.txt#ill11_txt{
    position:absolute!important;
    left:0;
    top:0;
}

div#cont3-4 img.circle#circle03{
        width:43%;
        top:-8%;
}

div#cont3-4 div.txt.extra h5{
    font-size:20px;
    margin:0;
}

div#cont3-4 div.txt.extra p{
    line-height:1.5em;
    margin-bottom:1.5em;
}

/*cont5 まとめ*/

#area5{
    padding:0 0 2em;
}

#cont5-1{
    margin-bottom:0;
}

#area5 div#mse12{
    margin-top:-4em;
    margin-left:3%;
}

#area5 div#swd04{
    width:40%;
    margin-top:-5em;
    margin-left:50%;
}

#area5 div#swd04 img.posi02{
    right:-70px;
}

#matome{
    position:relative;
    margin:-3em auto 3em;
    padding:3.5em 0 2em;
}

#matome p{
    width:90%;
}

div#area5 h6#sum{
    width:30%;
    position:relative;
    margin:0;
    left:10%;
    top:-20%;
    z-index:10;
}


div.textArea p a.btn{
    display:block;
    width:40%;
    min-width:400px;
    padding:0.3em 0;
    border:dashed 1px #009AAA;
    color:#009AAA;
    border-radius:40px;
    font-size:17px;
    font-weight:700;
    text-align: center;
    transition:0.5s;
    margin:0 auto 5em;
    position:relative;
}

div.textArea p a.btn img.swedi{
    width:30%;
    position:absolute;
    left:-12%;
    bottom:-1.2em;
}
div.textArea p a.btn img.flag{
    width:15%;
    position:absolute;
    right:-6%;
    top:-1em;
}

div.textArea p a.btn:hover{
    text-decoration: none;
    background:#009AAA;
    color:#FFF;
}

footer{
    width:100%;
    padding:20px 0 35px;
    text-align:center;
    background:#FFF;
    border-top:solid 1px #000;
}

footer div.next{
    width:500px;
    height:auto;
    margin:0 auto 1.5em;
}

footer div.next a img{
    width:100%;
}

footer div.next a{
    transition:1s;
}

footer div.next a:hover{
    opacity:0.5;
}

footer copyright{
    width:21.5%;
    margin:0.8em auto;
    display:inline-block;
}

footer copyright picture img{
    width:100%;
}


/* =======================================
	DISPLAY LARGE
======================================= */

@media screen and  (min-width:1400px){
    
}

/* =======================================
	TABLET
======================================= */

@media screen and  (min-width:1024px) and ( max-width:1300px) {
    
    p,h6{
    font-size:95%;
    }
    
    a.link_btn{
     font-size:98%;
    }
    
    div.moose img,
    div.swedi img{
    transform: scale(0.8);
}

    div.moose p,
    div.swedi p{
    padding:1.5em;
    font-size:95%;
}
    #cont1-1 div.step ul li>span{
    width:80%;
}
    
    div.moose img.point{
    left:calc(30% + 80px );
}
    
    /*↓204*/
    
    div#area3 h5{
    font-size:95%;
    }
    
    
    div#mse11 img.posi02{
        top:-56px;
    }

    div#mse11 img.point{
        top:-18px;
    }
    
    #cont3-1 #ill06 a.pop{
    width:16%;
    }
    
    #cont3-1 #ill06 a.pop img{
        width:94%;
        margin:0 auto;
    }
    
    #cont3-1 #ill06 a.pop > p{
    font-size:0.8em;
    }
    
    /*↑203*/

}

@media screen and ( max-width:1023px) {
    
    .contArea{
    width:92%;
    min-width:641px;
    margin:0 auto;
}

    p,h6{
    font-size:90%;
}

    div.moose p,
    div.swedi p{
    font-size:80%;
}
    
    div.moose img{
    transform: scale(0.7);
    }

    div.swedi img{
    transform: scale(0.7);
    }
    
    div.moose img.point{
    left:calc(30% + 75px );
}
    


/*↓204*/

    div#area3 h5{
    font-size:90%;
    }
    
    a.link_btn{
     font-size:95%;
    }
    
    div#cont4-3 div.pointArea > div.txt h4,
    div#cont4-3 div.pointArea > div.txt h5{
    font-size:95%;
    }
    
    div.miniColumn div.txt h4,
    div.miniColumn div.txt h5{
    font-size:95%;
    }
    
    div.miniColumn div.txt h4 img{
        transform: scale(0.8);
    }
    
   /* #cont3-1 div#mse06 > img{
    width:80%;
    top:-50%;
        left:-40%;
}
    
    #area4 div.moose img.posi02{
        width:145px;
    }
    
    div#cont3-3 div#mse09{
    margin-top:20%;
        width:60%;
        margin-left:45%;
}
    
    div#cont3-3 div#mse09 img.point{
        margin-top:-20px;
    }
    div#cont3-3 div#mse10{
        padding-top:0.5em;
        margin-top:20%;
        width:60%;
        margin-right:40%;
}
    
    div#cont3-3 div#mse10 img.point{
        margin-top:20px;
        left:48%;
    }
    
    div#mse11{
    margin-top:8%;
        padding-top:5%;
    }
    
    div#mse11 img.posi02{
        top:-50px;
        left:0;
        right:auto;
        width:18%;
    }

    div#mse11 img.point{
        top:-8px;
        left:18%;
        right:auto;
        width:15%;
    }
    
    div#cont3-3 div.txt.extra h4,
    div#cont3-4 div.txt.extra h4{
    font-size:21px;
    }
    
    div.txt h4.bg_bl{
    font-size:24px;
    width:100%;
    }
    
    div#cont3-4 div.txt.extra{
        margin-top:25%;
    }*/

    
/*↑203*/
    
    #cont2-2 #ill03_txt{
        padding-bottom:20em;
    }
    
#cont2-2 #ill03_txt h4{
    font-size:0.8em;
}

#cont2-2 #ill03_txt p{
    margin:0 3% 5em;
}
    
#cont2-2 #ill03_txt p:last-child{
     position:absolute;
    left:-1em;
    bottom:8em;
    z-index:15;
}
    
    
    
#cont2-4{
    margin-top:-8em;
}
#cont2-4 p{
    position:absolute;
    left:5em;
    top:-6em;
    width:50%;
}
    


#cont3-1 #ill06{
    margin:-3em 0 0 6%;
}
#cont3-1 ul{
    top:28%;
}
    
#area5 div.step{
    padding-bottom:2em;
}
    
div#cont4-3 #swe04{
    margin-top:10em;
    margin-left:20%;
}

div#cont4-3 #swe04 img{
    width:100%;
}

div#cont4-3 #mse10 img{
    width:50%;
    position:absolute;
    right:-70px;
    top:-105px;
}

    #cont1-1 div.step ul li>span{
    width:60%;
}
    
    #cont3-1 #ill06{
    width:80%;
    margin:0 0 0 15%;
    position:relative;
}
    
    .reason h5{
        text-align:center;
    }
    
    .reason h5 span{
        display:block;
    }
  
}

/* =======================================
	SMPH
======================================= */

@media screen and (max-width: 642px) {
    
    #sideArea{
        width:2%;
        height:100%;
        float:left;
    }
    #sideArea h1,
    #sideArea > div{
        opacity:0;
    }
    
    div.mainArea{
        padding-top:0;
    }
    
    div.contArea{
        padding:0;
    }
    div.pageNavi{
    opacity:0;
}

}
