@charset "utf-8";
/* CSS Document */

/* =======================================
	2025.11  No.205
    p03/ スウェーデンハウスができるまで
======================================= */


/*#area1,#area2{
    display:none;
}*/

/*---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.swedi img.posi05{
    right:-70px;
    top:-70px;
}




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 h6{
    font-size:25px;
    line-height:1.3em;
}

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;
}

strong{
    display:inline-block;
    margin-top:0.2em;
}

strong.txt-ll{
    font-size:38px;
}

/* =======================================
	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;
}



div.conv,
div.step{
    margin:0 auto 5em;
    width:90%;
    position:relative;
}

div.step{
    animation-delay: 0.6s;
}

div.step h5{
    width:100%;
    font-size:18px;
    text-align: center;
    color:#009AAA;
    margin:0 auto 0.5em;
}

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:60%;
    margin:-70px auto 0;
    position:relative;
    z-index:10;
}

div#ill_main2{
    width:40%;
    left:45%;
    top:-2.5em;
    position:absolute;
    z-index:10;
}

/*cont1*/
#cont1-1{
    max-width:1200px;
    position:relative;
}

#cont1-1 div.moose#mse01{
    width:55%;
    position:relative;
    z-index:2;
    margin-left:5%;
}

#cont1-1 div.moose#mse01 p{
    padding-bottom:3em;
}

#cont1-1 div.swedi#swd01{
    position:absolute;
    right:10px;
    bottom:30px;
    top:auto;
    width:33%;
}


#cont1-2{
    position:relative;
    margin-top:-5em;
}

div#cont1-2 div.moose#mse02{
    width:46%;
    margin:6%;
    position:relative;
    z-index:1;
}

/*cont2*/

#area2{
    margin-bottom:5em;
}

div#cont2-1{
    display:block;
    margin-bottom:5em;
}

div#cont2-1 div.ill-wrap{
    position:relative;
}

div#cont2-1 dl{
    width:56%;
    display:inline-block;
    position:relative; 
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    justify-content:none;
    margin:2.5em 0 0;
}

div#cont2-1 dl dt{
    width:46%;
    margin-bottom:5%;
    display: flex;
    align-items: center;
    justify-content: center;
}

div#cont2-1 dl dt img{
    width:100%;
}

div#cont2-1 dl dd{
    width:45%;
    margin-bottom:5%;
    margin-left:1.5%;
    text-align: left;
    height:auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

div#cont2-1 dl dd.eq{
    width:5%;
    font-size:40px;
}

div#cont2-1 dl dd p{
    line-height:1.3em;
}

div#cont2-1 dl dd.tt1 p{
    line-height:1em;
    margin-top:0.15em;
}

div#cont2-1 div.ill-wrap .ill#ill01{
    width:36%;
    position:absolute;
    right:1.5em;
    bottom:5em;
}

div#cont2-1 div.ill-wrap .ill#ill01 img{
    width:100%;
}

div#cont2-1 div#mse03{
    width:50%;
    margin-left:25%;
}

div.moose#mse03 img.posi02{
    right:-15%;
}

#area2 .step div.txt,
#area3 .step div.txt{
    width:48%;
    margin:0;
    display:inline-block;
}

#area2 .step h6,
#area3 .step h6{
    font-size:20px;
    text-align: center;
    color:#009AAA;
    padding-bottom:0.5em;
    border-bottom:solid 1px #009AAA;
    margin:0.5em 0 1em;
}

div.ill#ill02{
    width:44%;
    margin-left:3%;
    position:relative;
    display:inline-block;
    vertical-align: top;
}

div.ill#ill02 img.layer{
    top:auto;
    bottom:0;
}

div.ill#ill03{
    width:44%;
    margin-left:3%;
    position:relative;
    display:inline-block;
    vertical-align: top;
}

#area2 .step div.txt img.yaji_wh{
    width:50%;
    margin:1.5em 25% 0;
}

div.txt p.reason{
    font-size:22px;
    font-weight:bold;
    text-align:center;
    color:#000000;
    width:100%;
    margin-bottom:0.8em;
    background:url("../img/h6_bg.png") no-repeat;
    background-size:100% 100%;
}

div.txt.cont2-3{
    position:absolute;
    right:2%;
    top:0;
}

#area2 div#cont2-4{
    padding-top:5em;
    margin-bottom:2.5em;
}

#area2 .step .column{
    width:100%;
    padding-top:0.5em;
    padding-bottom:0.5em;
}

#area2 .step .column h5{
    font-size:22px;
    text-align:left;
    color:#000;
    margin-bottom:0.5em;
}

#area2 .step .column h5::before{
    content:" ";
    position:absolute;
    width:5%;
    height:100%;
    left:0;
    top:0;
    background:url("../img/column_bracket.png") no-repeat left;
    background-size:contain;
}

#area2 .step .column h5::after{
    content:" ";
    position:absolute;
    width:5%;
    height:100%;
    right:0;
    top:0;
    background:url("../img/column_bracket.png") no-repeat right;
    background-size:contain;
    transform: scaleX(-1);
}

.step#cont2-4 .column p{
    line-height:1.8em;
}

div#cont2-4 div#mse04{
    width:35%;
    position:absolute;
    right:10%;
    top:-10%;
}

div#mse04 img.posi03{
    bottom:auto;
    top:-20px;
}

#area2 div.conv#cont2-5{
    width:80%;
    margin:0 auto;
    position:relative;
}

div.conv#cont2-5 div#mse05{
    margin-left:5%;
}

div.conv#cont2-5 div#swd02{
    width:40%;
    margin-left:50%;
    margin-top:-12%;
}

div.conv#cont2-5 div#swd03{
    width:30%;
    margin-left:65%;
    margin-top:-3%;
}

div.conv#cont2-5 div#mse06{
    margin-left:10%;
    margin-top:-8%;
}


/*cont3*/

#area3{
    margin-top:5em;
}

#area3 div#area3 div.step{
    margin-bottom:3em;
}

#cont3-1.step{
    margin-bottom:2em;
}

#cont3-1.step > div.ill-wrap{
    position:relative;
    margin-bottom:3em;
}

#cont3-1.step > div.txt p{
    width:100%;
    margin-left:0;
    margin-bottom:1.5em;
    position:relative;
}

#cont3-1.step > div.ill-wrap > div.ill#ill04{
    width:83%;
    margin-left:-3%;
    margin-top:0%;
    transition:1s;
}



#cont3-1.step > div.ill-wrap > div.ill#ill02 img.layer{
    top:auto;
    bottom:0;
}

#cont3-1.step > div.ill-wrap img.num{
    width:30px;
    position:absolute;
    z-index:6;
    /*display:none;*/
}

img.num#num01,
.tgtcircle#tgt01{
    left:40.2%;
    top:63%;
}
img.num#num02,
.tgtcircle#tgt02{
    left:42%;
    top:83%;
}
img.num#num03,
.tgtcircle#tgt03{
    left:78.8%;
    top:71.2%;
}
img.num#num04,
.tgtcircle#tgt04{
    left:68%;
    top:36%;
}
img.num#num05,
.tgtcircle#tgt05{
    left:40.2%;
    top:5%;
}
img.num#num06,
.tgtcircle#tgt06{
    left:12%;
    top:33.4%;
}
img.num#num07,
.tgtcircle#tgt07{
    left:14%;
    top:54%;
}

#cont3-1.step > div.ill-wrap div.tgtcircle{
    /*width:16.6%;
    height:17.5%;*/
    width:30px;
    height:30px;
    background:url("../img/circle.png")no-repeat center;
    background-size:cover;
    /*mix-blend-mode: multiply;*/
    position:absolute;
    transform: scale(4,4);
    transform-orign:center;
    transition:1.2s;
    z-index:5;
}

#cont3-1.step > div.ill-wrap div.tgtcircle.move{
    -webkit-animation:circle_move 10s linear infinite;
    -moz-animation:circle_move 10s linear infinite;
    animation:circle_move 10s linear infinite;
}

@keyframes circle_move {
  0% {
    transform:scale(4,4) rotate(0deg);
  }
  100% {
    transform:scale(4,4) rotate(360deg);
  }
}

#cont3-1.step div.pointlist{
    width:45%;
    position:absolute;
    right:0;
    top:100px;
    transititon:1s;
}

#cont3-1.step div.pointlist h5{
    width:70%;
    margin:0 0 1.2em 18%;
    position:relative;
}

#cont3-1.step div.pointlist h5 img.tt{
    width:100%;
}

#cont3-1.step div.pointlist h5 img.chara{
    width:30%;
    position:absolute;
    left:-30%;
    top:0;
}

#cont3-1 ul{
    margin-left:20%;
}

#cont3-1 ul li{
    font-size:18px;
    font-weight:bold;
    color:#C13A1E;
    margin-bottom:0.6em;
    display:block;
    transition:1s;
}

.tp{
    opacity:0.2;
}

#cont3-1 ul li a::after{
    content:" ";
    display:inline-block;
    width:12px;
    height:12px;
    margin-left:5px;
    background:url("../img/ntarrow.png") no-repeat center;
    background-size:contain;
    transition:2s;
}

#cont3-1 ul li > img,
#cont3-1 div.modal h5 > img{
    width:22px;
    margin-right:6px;
    vertical-align: middle;
    margin-top:-3px;
}

#cont3-1 ul li a{
    transition:1s;
    color:#C13A1E;
}

#cont3-1 ul li a#m06{
    letter-spacing:0;
}

#cont3-1 ul li a:hover{
    text-decoration: none;
}

#cont3-1 div#mse07{
    width:25%;
    position:absolute;
    left:0;
    bottom:5%;
}

#cont3-1 div#mse07 img{
    left:0;
}

div.step img.point{
    width:70px;
    position:absolute;
    left:0;
    top:-15px;
}

#cont3-2 div.txt h6,
#cont3-3 div.txt h6,
#cont3-4 div.txt h6{
    margin-top:50px;
    font-size:20px;
}

#cont3-2 img.point{
    left:28%;
    margin-left:-200px;
}

#cont3-3 img.point{
    left:50%;
    margin-left:-160px;
}

#t_point3{
    left:5%;
    top:-22px;
}

#cont3-2 div.txt{
    width:38%;
    position:absolute;
    left:0;
    top:0;
}

#cont3-2 div.ill{
    width:43%;
    margin-left:55%;
}

#cont3-3 div.txt{
    width:42%;
    position:absolute;
    right:0;
    top:0;
}

#cont3-2 #ill05 #ill05_txt1{
    position:absolute;
    width:auto;
    height:16px;
    left:60%;
    top:10.8%;
}

#cont3-2 #ill05 #ill05_txt2{
    position:absolute;
    width:auto;
    height:16px;
    left:70%;
    top:53%;
}

#cont3-3 div.ill{
    width:45%;
    margin-top:-1.5em;
    margin-left:3%;
}

#cont3-3 #ill06 #ill06_yaji{
    position:absolute;
    width:6.4%;
    height:auto;
    left:47%;
    top:35.1%;
}

#cont3-3 #ill06 #ill06_txt1{
    position:absolute;
    width:auto;
    height:40px;
    left:0;
    top:39%;
}

#cont3-3 #ill06 #ill06_txt2{
    position:absolute;
    width:auto;
    height:16px;
    left:68.7%;
    top:43.7%;
}

div#cont3-4 > div.win01{
    position:relative;
    padding-bottom:8em;
    /*
    width:100%;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    */
}

#cont3-4 div.win01 div.txt{
    width:33%;
    position:absolute;
    left:0;
    /*padding-top:20px;*/
}


#cont3-4 div.ill_wrap{
    width:60%;
    margin-left:40%;
    position:relative;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}

#cont3-4 div.ill_wrap div.ill{
    width:49.8%;
}

#cont3-4 div.ill_wrap div.ill p{
    width:80%;
    margin:0 auto;
    font-size:15px;
}

#cont3-4 div.ill_wrap div.ill img{
    width:100%;
    margin-bottom:1em;
}

div#window_sh,
div#window_ot{
    position:relative;
}

#cont3-4 #ill07 #ill07_txt1{
    position:absolute;
    width:auto;
    height:16px;
    left:69.2%;
    top:13%;
}

#cont3-4 #ill07 #ill07_txt2{
    position:absolute;
    width:auto;
    height:16px;
    left:67.2%;
    top:22.4%;
}
#cont3-4 #ill07 #ill07_txt3{
    position:absolute;
    width:auto;
    height:16px;
    left:69.2%;
    top:92%;
}

#cont3-4 #ill07 #ill07_txt4{
    position:absolute;
    width:auto;
    height:16px;
    left:67.2%;
    top:83%;
}

#cont3-4 div#mse08{
    width:30%;
    position:absolute;
    left:0;
    bottom:0;
}

#cont3-4 div#mse08 p{
    padding-bottom:4em;
}


div#cont3-3 > div.win02{
    position:relative;
    z-index:5;
}

#area3 div.step div.win02 h6{
    color:#000;
    border-bottom:none;
    font-size:20px;
}

div#cont3-5 h4{
    font-size:24px;
    padding:0.5em 0 0.5em;
    display:block;
    border:solid 3px #009AAA;
    background:#F7F1E3;
    border-radius:30px;
    margin-bottom:3.5em;
}

div.ill#ill09 div#window_tape{
    width:53%;
    margin-left:2%;
    margin-right:0;
    margin-top:-4em;
    position:relative;
    z-index:5;
}

div.ill#ill09 div#window_tape img{
    width:100%;
}

div.ill#ill09 div#window_tape #ill09_txt{
    position:absolute;
    left:61.7%;
    top:28%;
    height:16px;
    width:auto;
}

div.ill#ill09 div.txt{
    width:42%;
    position:absolute;
    right:0;
    bottom:20%;
}

#area3 div.step div.gap h6{
    color:#000;
    border-bottom:none;
    font-size:20px;
    text-align:left;
    display:inline-block;
    margin-left:80px;
}

#area3 div.step div.gap img.point{
    top:-50px;
    
}

div#cont3-5 div.ill_wrap.gap{
    position:relative;
    margin-bottom:5em;
}

div#cont3-5 div.ill_wrap.gap div.ill{
    position:relative;
    width:38%;
}

div#cont3-5 div.ill_wrap.gap:nth-child(even) div.ill{
    margin-left:61.5%;
}

div#cont3-5 div.ill_wrap.gap div.txt{
    position:absolute;
    left:2%;
    top:15%;
    width:56%;
}

div#cont3-5 div.ill_wrap.gap:nth-child(odd) div.txt{
    margin-left:40%;
}

div#cont3-5 div#mse09{
    width:33%;
    margin-top:-2em;
    margin-left:37%;
}

div#cont3-5 div#mse09 .posi01s{
    left:-80px;
    top:-40px;
}


/*cont4*/

#area4{
    padding:0 0 2em;
}

#area4 #cont4-1 div#swd04{
    width:50%;
    margin-left:40%;
}

#area4 #cont4-1 div#mse10{
    width:50%;
    margin-left:0;
    margin-top:-5em;
}

#area4 #cont4-1 div#mse11{
    width:90%;
    margin:1em auto 0 1%;
}

#cont4-1 p span.anno{
    display:inline-block;
    margin-left:60%;
}

/**/
/*#area4 div.column #circle_wrap.active img#circle{
    animation: circle_move 10s linear infinite;
}*/




@-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;}
}



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;
}

/**/


/*cont5 まとめ*/

#area5{
    padding:0 0 2em;
}

#cont5-1{
    margin-bottom:1.5em;
}

#cont5-1 > div.ill_wrap{
    position:relative;
}

#cont5-1 div.txt{
    width:50%;
    position:relative;
    z-index:5;
}

#cont5-1 div.txt h6{
    text-align: center;
    font-size:20px;
    line-height:1.4em;
}

#cont5-1 div.txt p{
    margin-bottom:5em;
}

#cont5-1 div.ill{
    width:55%;
    position:absolute;
    right:0;
    top:0;
}

#matome{
    position:relative;
    margin:-3em auto 3em;
    padding:3.5em 0 2em;
}

#matome p{
    width:85%;
}

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,h5,h4,h3,li,dd,a{
    font-size:95%;
    }
    
    a.link_btn{
     font-size:98%;
    }
    
    div.moose img,
    div.swedi img{
    transform: scale(0.8);
    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 );
}
    
    /*↓205*/
    
   #area2 .step div.txt img.yaji_wh{
    width:20%;
    margin:1.5em 40% 0;
    }
    
    #cont5-1 div.txt p{
    margin-bottom:1.5em;
    }
    
    #cont3-1 ul li{
    font-size:17px;
    margin-bottom:0.5em;
}


    /*↑205*/

}

@media screen and ( max-width:1023px) {
    
    .contArea{
    width:92%;
    min-width:700px;
    margin:0 auto;
}

    p,h6,h5,h4,h3,li,dd,a{
    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 );
}
    


/*↓205*/

    #area2 .step div.txt img.yaji_wh{
    width:20%;
    margin:1.5em 40% 0;
    }

      #cont2-2 #ill03_txt{
        padding-bottom:20em;
    }
    
    #cont3-1 ul li{
    font-size:16px;
    margin-bottom:0.3em;
}
    
    #cont3-1 ul li a{
        letter-spacing: 0;
    }
    
    
    
/*↑205*/
    
  
}

/*間取り図 高さ調整*/
@media screen and ( max-height:768px) {
    #cont3-1.step > div.ill-wrap > div.ill#ill04{
    width:68%;
    margin-left:0;
    margin-top:0%;
    }
    
    #cont3-1.step div.pointlist{
    right:-3%;
    top:18%;
}
    
    #cont3-1.step > div.ill-wrap div.tgtcircle{
    transform: scale(3,3);
}
    
    #cont3-1.step > div.ill-wrap div.tgtcircle.move{
    -webkit-animation:circle_move2 10s linear infinite;
    -moz-animation:circle_move2 10s linear infinite;
    animation:circle_move2 10s linear infinite;
}

}

@keyframes circle_move2 {
  0% {
    transform:scale(3,3) rotate(0deg);
  }
  100% {
    transform:scale(3,3) rotate(360deg);
  }
}

/* =======================================
	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;
}

}
