@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700&display=swap');


/*reset-----------*/
html {font-size: 62.5%;}
/*size10px*/

body { font-family: "Zen Kaku Gothic New", 'Noto Sans JP',"Hiragino Kaku Gothic ProN",Meiryo, sans-serif;}

@font-face {
font-family: 'myfont_bold';
src: url('font/MOBO-Bold.woff') format('woff');
font-display: swap;
}
@font-face {
font-family: 'myfont_semi';
src: url('font/MOBO-SemiBold.woff') format('woff');
font-display: swap;
}

* {
margin: 0;
padding: 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

@media all and (-ms-high-contrast:none) {
body { overflow-x: hidden;}
}

a {text-decoration: none;}
a:link {color: #000;}
a:visited{ color: #000;}
ul,ol {list-style: none;}
h1,h2,h3,h4,h5,h6 { font-weight: normal; font-size:1rem; line-height: 2.5rem;}
p { font-size:1rem; line-height: 2.5rem;}
img {vertical-align: middle;}

p,a {
	color: rgba(51,51,51,1);
}
/*-----------reset*/

/*
共通スタイル common_
-------------------------*/
@media (min-width:960px){
.pc {display: inherit;}
.tb {display: none;}
.pctb {display: inherit;}
.tbsp {display: none;}
.sp {display: none;}
.pcsp {display: inherit;}

/*animation*/
#animation_window {
animation-fill-mode:both;
animation-duration:1s;
animation-name: animation_window;
visibility: visible !important;
}
@keyframes animation_window {
0% { opacity: 0; transform: translateY(15px); }
100% { opacity: 1; transform: translateY(0); }
}
#animation_window_2 {
animation-fill-mode:both;
animation-duration:1s;
animation-delay: .2s;
animation-name: animation_window;
visibility: visible !important;
}

@keyframes animation_window {
0% { opacity: 0; transform: translateY(10px); }
100% { opacity: 1; transform: translateY(0); }
}
#animation_window_opa {
animation-fill-mode:both;
animation-duration:1.5s;
animation-timing-function:linear;
animation-name: animation_window_opa;
visibility: visible !important;
}
#animation_window_opa_2 {
animation-fill-mode:both;
animation-duration:1.5s;
animation-delay: .8s;
animation-timing-function:linear;
animation-name: animation_window_opa;
visibility: visible !important;
}
@keyframes animation_window_opa {
0% { opacity: 0;
 transform: scale(1.02);
}
100% { opacity: 1;
 transform: scale(1.0);
}
}

/* 1. アニメーション前の初期状態 */
.fade_left {
opacity: 0;
transform: translateX(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.fade_left.active {
opacity: 1;
transform: translateX(0);
}
.fade_up {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.fade_up.active {
opacity: 1;
transform: translateY(0);
}
.fade_up_delay {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
transition-delay: 0.3s;
}
.fade_up_delay.active {
opacity: 1;
transform: translateY(0);
}
#scroll {
position: fixed;
bottom: -500px;
background: #f15a24;
background: rgba(241,90,36,.8);
padding: 20px 0 10px;
width: 100%;
z-index: 100;
}
#scroll a {
position: relative;
display: block;
background: linear-gradient(180deg, #ffdc61 0%, #ffdc61 50%, #feca35 50%, #feca35 100%);
border-radius: 10px;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
margin: 0 auto;
padding: 25px 0 20px;
width: 500px;
}
#scroll a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
#scroll a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
#scroll a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*hover*/
.head_wrap nav a:hover,
.head_wrap_under nav a:hover,
.side a:hover,
.door_top a:hover,
.door a:hover,
.door_2 a:hover,
.accordionclick:hover .accordion_icon_txt,
.foot_wrap nav a:hover {
opacity: .4;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.pc {display: none;}
.tb {display: inherit;}
.pctb {display: inherit;}
.tbsp {display: inherit;}
.sp {display: none;}
.pcsp {display: none;}

/*animation*/
#animation_window {
animation-fill-mode:both;
animation-duration:1s;
animation-name: animation_window;
visibility: visible !important;
}
@keyframes animation_window {
0% { opacity: 0; transform: translateY(15px); }
100% { opacity: 1; transform: translateY(0); }
}
#animation_window_2 {
animation-fill-mode:both;
animation-duration:1s;
animation-delay: .2s;
animation-name: animation_window;
visibility: visible !important;
}

@keyframes animation_window {
0% { opacity: 0; transform: translateY(10px); }
100% { opacity: 1; transform: translateY(0); }
}
#animation_window_opa {
animation-fill-mode:both;
animation-duration:1.5s;
animation-timing-function:linear;
animation-name: animation_window_opa;
visibility: visible !important;
}
#animation_window_opa_2 {
animation-fill-mode:both;
animation-duration:1.5s;
animation-delay: .8s;
animation-timing-function:linear;
animation-name: animation_window_opa;
visibility: visible !important;
}
@keyframes animation_window_opa {
0% { opacity: 0;
 transform: scale(1.02);
}
100% { opacity: 1;
 transform: scale(1.0);
}
}

/* 1. アニメーション前の初期状態 */
.fade_left {
opacity: 0;
transform: translateX(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.fade_left.active {
opacity: 1;
transform: translateX(0);
}
.fade_up {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.fade_up.active {
opacity: 1;
transform: translateY(0);
}
.fade_up_delay {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.8s ease-out, transform 0.8s ease-out;
transition-delay: 0.3s;
}
.fade_up_delay.active {
opacity: 1;
transform: translateY(0);
}
#scroll {
position: fixed;
background: #f15a24;
background: rgba(241,90,36,.8);
padding: 20px 0 10px;
width: 100%;
z-index: 100;
overflow: hidden;
}
#scroll a {
position: relative;
display: block;
background: linear-gradient(180deg, #ffdc61 0%, #ffdc61 50%, #feca35 50%, #feca35 100%);
border-radius: 10px;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
margin: 0 auto;
padding: 25px 0 20px;
width: 500px;
}
#scroll a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
#scroll a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
#scroll a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
}/*close*/

@media (max-width:599px){
.pc {display: none;}
.tb {display: none;}
.pctb {display: none;}
.tbsp {display: inherit;}
.sp {display: inherit;}
.pcsp {display: inherit;}
/*animation*/
#animation_window {
animation-fill-mode:both;
animation-duration:1s;
animation-name: animation_window;
visibility: visible !important;
}
@keyframes animation_window {
0% { opacity: 0; transform: translateY(15px); }
100% { opacity: 1; transform: translateY(0); }
}
#animation_window_2 {
animation-fill-mode:both;
animation-duration:1s;
animation-delay: .2s;
animation-name: animation_window;
visibility: visible !important;
}

@keyframes animation_window {
0% { opacity: 0; transform: translateY(10px); }
100% { opacity: 1; transform: translateY(0); }
}
#animation_window_opa {
animation-fill-mode:both;
animation-duration:1.5s;
animation-timing-function:linear;
animation-name: animation_window_opa;
visibility: visible !important;
}
#animation_window_opa_2 {
animation-fill-mode:both;
animation-duration:1.5s;
animation-delay: .8s;
animation-timing-function:linear;
animation-name: animation_window_opa;
visibility: visible !important;
}
@keyframes animation_window_opa {
0% { opacity: 0;
 transform: scale(1.02);
}
100% { opacity: 1;
 transform: scale(1.0);
}
}

/* 1. アニメーション前の初期状態 */
.fade_left {
opacity: 0;
transform: translateX(20px);
transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}
.fade_left.active {
opacity: 1;
transform: translateX(0);
}
.fade_up {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}
.fade_up.active {
opacity: 1;
transform: translateY(0);
}
.fade_up_delay {
opacity: 0;
transform: translateY(20px);
transition: opacity 0.7s ease-out, transform 0.7s ease-out;
transition-delay: 0.2s;
}
.fade_up_delay.active {
opacity: 1;
transform: translateY(0);
}
#scroll {
position: fixed;
background: #f15a24;
background: rgba(241,90,36,.8);
padding: 20px 0 10px;
width: 100%;
overflow: hidden;
z-index: 100;
}
#scroll a {
position: relative;
display: block;
background: linear-gradient(180deg, #ffdc61 0%, #ffdc61 50%, #feca35 50%, #feca35 100%);
border-radius: 10px;
font-size: 1.3rem;
font-weight: bold;
text-align: center;
margin: 0 auto;
padding: 15px 0 15px;
width: 90%;
}
#scroll a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.1rem;
font-weight: bold;
padding: 3px 30px 5px;
border-radius: 100vh;
 white-space: nowrap; 
}
#scroll a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 15px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
#scroll a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
}/*close*/

/*----------------------
▼共通_door▼
----------------------*/
@media (min-width:960px){
/*door*/
.door_top {
background: #cf010b;
padding: 40px 0;
}
.door_top .range {
margin: 0 auto;
max-width: 1000px;
width: 80%;
}
.door_top p {
color: #fff;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
margin: 0 0 30px;
}
.door_top .box {
display: flex;
justify-content: space-between;
}
.door_top .box .item {
width: 48%;
}
.door_top .box a {
position: relative;
display: block;
background: linear-gradient(180deg, #ffdc61 0%, #ffdc61 50%, #feca35 50%, #feca35 100%);
border-radius: 10px;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
padding: 25px 0;
}
.door_top .box a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door_top .box a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door_top .box a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*door*/
.door {
background: 
linear-gradient(#fff 0 60px, transparent 60px),#cf010b;
}
.door_backcolor .door {
background: 
linear-gradient(#f9f5ef 0 60px, transparent 60px),#cf010b;
}
.door .range {
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 auto;
max-width: 1300px;
width: 95%;
}
.door .pic {
width: 20%;
}
.door .pic img {
height: 270px;
width: auto;
object-fit: cover;
max-width: 100%;
}
.door .right {
display: flex;
justify-content: space-between;
width: 80%;
}
.door .txt {
padding: 55px 0 0;
width: 48%;
}
.door .txt p:first-of-type {
font-family: myfont_bold;
color: #fff;
font-size: 3rem;
font-weight: bold;
line-height: 1.1em;
margin: 0 0 20px;
}
.door .txt p:first-of-type span {
font-family: myfont_bold;
color: #fff;
font-size: 2.3rem;
font-weight: bold;
line-height: 1.1em;
margin: 0 0 20px;
}
.door .txt p:last-of-type {
color: #fff;
font-size: 1.5rem;
font-weight: bold;
}
.door .link {
padding: 90px 0 0;
width: 48%;
}
.door .link a {
position: relative;
display: block;
background: #feca35;
border-radius: 100vh;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
padding: 30px 0;
}
.door .link a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door .link a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door .link a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*door_2*/
.door_2 {
background: #cf010b;
}
.door_2 .range {
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 auto;
padding: 50px 0;
max-width: 1000px;
width: 95%;
}
.door_2 .txt {
width: 55%;
}
.door_2 .txt p {
font-family: myfont_bold;
color: #fff;
font-size: 2.5rem;
font-weight: bold;
line-height: 1.2em;
margin: 0 0 20px;
}
.door_2 .link {
width: 40%;
}
.door_2 .link a {
position: relative;
display: block;
background: #feca35;
border-radius: 100vh;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
padding: 30px 0;
}
.door_2 .link a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door_2 .link a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door_2 .link a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
/*door*/
.door_top {
background: #cf010b;
padding: 40px 0;
}
.door_top .range {
margin: 0 auto;
width: 95%;
}
.door_top p {
color: #fff;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
margin: 0 0 30px;
}
.door_top .box {
display: flex;
justify-content: space-between;
}
.door_top .box .item {
width: 48%;
}
.door_top .box a {
position: relative;
display: block;
background: linear-gradient(180deg, #ffdc61 0%, #ffdc61 50%, #feca35 50%, #feca35 100%);
border-radius: 10px;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
padding: 25px 0;
}
.door_top .box a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door_top .box a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door_top .box a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*door*/
.door {
background: #cf010b;
padding: 20px 0;
/*linear-gradient(#fff 0 60px, transparent 60px),#cf010b;
*/}
.door_backcolor .door {
background: #cf010b;
}
.door .range {
display: flex;
justify-content: space-between;
align-items: flex-end;

margin: 0 auto;
max-width: 1300px;
width: 95%;
}
.door .pic {
margin: 0 0 -20px;
width: 15%;
}
.door .right {
width: 80%;
}
.door .pic img {
height: auto;
width: 100%;
}
.door .txt {
padding: 0px 0 0;
width: 100%;
}
.door .txt p:first-of-type {
font-family: myfont_bold;
color: #fff;
font-size: 2.8vw;
font-weight: bold;
line-height: 1.1em;
margin: 0 0 10px;
}
.door .txt p:first-of-type span {
font-family: myfont_bold;
color: #fff;
font-size: 2.3rem;
font-weight: bold;
line-height: 1.1em;
margin: 0 0 10px;
}
.door .txt p:last-of-type {
color: #fff;
font-size: 1.5rem;
font-weight: bold;
}
.door .link {
padding: 30px 0 0;
width: 100%;
}
.door .link a {
position: relative;
display: block;
background: #feca35;
border-radius: 100vh;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
padding: 30px 0;
}
.door .link a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door .link a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door .link a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*door_2*/
.door_2 {
background: #cf010b;
}
.door_2 .range {
margin: 0 auto;
padding: 40px 0 50px;
max-width: 1000px;
width: 95%;
}
.door_2 .txt {
text-align: center;
margin: 0 0 30px;
width: 100%;
}
.door_2 .txt p {
font-family: myfont_bold;
color: #fff;
font-size: 2.5rem;
font-weight: bold;
line-height: 1.2em;
margin: 0 0 40px;
}
.door_2 .link {
width: 100%;
}
.door_2 .link a {
position: relative;
display: block;
background: #feca35;
border-radius: 100vh;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
padding: 30px 0;
}
.door_2 .link a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.5rem;
font-weight: bold;
padding: 5px 40px 10px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door_2 .link a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door_2 .link a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 25px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}

}/*close*/

@media (max-width:599px){
/*door*/
.door_top {
background: #cf010b;
padding: 30px 0;
}
.door_top .range {
margin: 0 auto;
width: 95%;
}
.door_top .box {
}
.door_top .box .item {
width: 100%;
}
.door_top .box a {
position: relative;
display: block;
background: linear-gradient(180deg, #ffdc61 0%, #ffdc61 50%, #feca35 50%, #feca35 100%);
border-radius: 10px;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
padding: 25px 0;
margin: 0 0 30px;
}
.door_top .box .item:last-of-type a {
margin: 0;
}
.door_top .box a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 30px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door_top .box a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 15px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door_top .box a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*door*/
.door {
position: relative;
background: #cf010b;
/*background: linear-gradient(#c1272d 0 50px, transparent 50px),#cf010b;
*/padding: 10px 0 20px;
}
.door_backcolor .door {
background: #cf010b;
}
.door .range {
display: flex;
justify-content: space-between;
align-items: flex-end;
margin: 0 auto;
max-width: 1300px;
width: 95%;
}
.door .pic {
position: absolute;
top: -20px;
width: 20%;
}
.door_backcolor .door .pic {
position: absolute;
top: -20px;
width: 20%;
}
.door .right {
width: 100%;
}
.door .pic img {
height: 85px;
width: auto;
}
.door_backcolor .door .pic img {
height: 100px;
width: auto;
}

.door .txt {
padding: 0px 0 0;
width: 100%;
}
.door .txt p:first-of-type {
font-family: myfont_bold;
color: #fff;
font-size: 4.6vw;
font-weight: bold;
line-height: 1.3em;
margin: 5px 0 20px 90px;
}
.door_backcolor .door .txt p:first-of-type {
font-family: myfont_bold;
color: #fff;
font-size: 4vw;
font-weight: bold;
line-height: 1.3em;
margin: 5px 0 20px 90px;
}
.door .txt p:first-of-type span {
font-family: myfont_bold;
color: #fff;
font-size: 4vw;
font-weight: bold;
line-height: 1.1em;
margin: 0 0 10px;
}
.door .txt p:last-of-type {
color: #fff;
font-size: 1.3rem;
font-weight: bold;
line-height: 1.3em;
}
.door .link {
padding: 30px 0 0;
width: 100%;
}
.door .link a {
position: relative;
display: block;
background: #feca35;
border-radius: 100vh;
font-size: 3.8vw;
font-weight: bold;
text-align: center;
padding: 30px 0;
width: 100%;
}
.door .link a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 20px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door .link a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 15px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door .link a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}
/*door_2*/
.door_2 {
background: #cf010b;
}
.door_2 .range {
margin: 0 auto;
padding: 20px 0 30px;
max-width: 1000px;
width: 95%;
}
.door_2 .txt {
text-align: center;
margin: 0 0 30px;
width: 100%;
}
.door_2 .txt p {
font-family: myfont_bold;
color: #fff;
font-size: 1.8rem;
font-weight: bold;
line-height: 1.2em;
margin: 0 0 30px;
text-align: left;
}
.door_2 .txt p span {
font-size: 1.5rem;
font-weight: bold;
}
.door_2 .link {
width: 100%;
}
.door_2 .link a {
position: relative;
display: block;
background: #feca35;
border-radius: 100vh;
font-size: 3.8vw;
font-weight: bold;
text-align: center;
padding: 30px 0;
}
.door_2 .link a span {
position: absolute;
top: -13px;
left: 50%;
transform: translate(-50%, 0%);
display: block;
background: rgba(0,0,0,1.00);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 7px 20px 10px;
border-radius: 100vh;
 white-space: nowrap; 
}
.door_2 .link a::before{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 15px;
width: 20px;
height: 20px;
margin: auto;
border-radius: 20px;
background-color: #000;
}
.door_2 .link a::after{
content: '';
position: absolute;
top: 0;
bottom: 0;
right: 20px;
width: 0;
height: 0;
margin: auto;
border-top: 4px solid transparent;
border-right: 0 solid transparent;
border-left: 7px solid #ffdc61;
border-bottom: 4px solid transparent;
}

}/*close*/

/*----------------------
▼ヘッダー▼
----------------------*/
@media (min-width:960px){

.head_wrap {
position: relative;
background: #eaeef7;
height: 500px;
}
.head_wrap_under {
position: relative;
background: #eaeef7;
height: 120px;
}
.head_wrap .logo,
.head_wrap_under .logo {
position: absolute;
top: 20px;
left: 30px;
}
.head_wrap .logo img,
.head_wrap_under .logo img {
height: auto;
width: 200px;
}
/*nav*/
.head_wrap nav ul,
.head_wrap_under nav ul {
display: flex;
justify-content: flex-end;
padding: 20px 0 0;
}
.head_wrap nav a,
.head_wrap_under nav a {
color: rgba(39,39,39,1.00);
font-size: 1.5rem;
font-weight: bold;
margin: 20px 30px 0 0;
}
.head_wrap nav .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 3px solid #000;
border-right: 3px solid #000;
transform: rotate(45deg);
}
.head_wrap_under nav .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 3px solid #000;
border-right: 3px solid #000;
transform: rotate(-45deg);
}
.head_wrap nav li:last-of-type a,
.head_wrap_under nav li:last-of-type a {
color: #fff;
}
.head_wrap nav .contact,
.head_wrap_under nav .contact {
background-image: linear-gradient(#ff0000, #c1272d);
color: #fff;
padding: 20px 30px;
margin: 0;
}
#close,.youtbe_nav,.home,.insta_nav {
display: none;
}
/*mv*/
.head_wrap .mv {
}
.head_wrap .mv .human {
position: absolute;
right: 15%;
bottom: 0;
}
.head_wrap .mv .human img {
height: 400px;
width: auto;
}
.head_wrap .mv .txt {
position: absolute;
top: 55%;
left: 50%;
transform: translate(-50%, -50%);
overflow: hidden;
width: 100%;
}
.head_wrap .mv .txt img {
height: auto;
width: 100%;
}
/*main_txt*/
.head_wrap .main_txt {
position: absolute;
top: 55%;
left: 30px;
transform: translate(0, -50%);
}
.head_wrap .main_txt img {
height: auto;
margin: 0 0 30px;
width: 500px;
}
.head_wrap .main_txt h2 {
font-family: myfont_semi;
font-size: 1.8rem;
line-height: 1.5em;
}
/*side*/
.side .side_youtube {
position: absolute;
top: 350px;
right: 0;
writing-mode: vertical-rl;
background-image: linear-gradient(#ff0000, #c1272d);
border: solid 2px #fff;
padding: 40px 10px 40px 15px;
}
.side .side_youtube a {
color: #fff;
font-size: 1.8rem;
font-weight: bold;
}
.side .side_youtube img {
height: auto;
margin: 10px 10px 0 0;
width: 30px;
}
.side .side_insta {
position: absolute;
top: 620px;
right: 0;
writing-mode: vertical-rl;
background-image: linear-gradient(45deg, #405de6, #e1306c, #fcaf45);
border: solid 2px #fff;
padding: 10px;
}
.side .side_insta img {
height: auto;
margin: 7px;
width: 30px;
}
/*PCナビハンバーガーメニュー*/
body.menu_scroll .head_wrap nav ul,
body.menu_scroll .head_wrap_under nav ul {
display: inherit;
}
body.menu_scroll #close,
body.menu_scroll .youtbe_nav,
body.menu_scroll .home,
body.menu_scroll .insta_nav {
display: inherit;
cursor: pointer;
}
body.menu_scroll #close:hover {
opacity: .4;
}
body.menu_scroll #top_head {
/* ナビ全体位置調整 */
position: fixed;
top: 0px;
right: 0px;
background: #c1272d;
height: 70px;
width: 70px;
transition: .4s;
z-index: 1;
cursor: pointer;
}
body.menu_scroll #mobile_head {
position: relative;
z-index: 999;
}
/* ナビOPEN時 */
body.menu_scroll #global_nav {
background: rgba(255,255,255,1);
height: auto;
max-height: 80vh;
overflow-y: auto; /*scroll用*/
z-index: 999;
/* 開いてないとき画面外配置 */
position: fixed;
top: 100px;
right: -500px;
transition: .35s ease-in-out;
padding: 10px 0 20px;
width: 500px;
}
body.menu_scroll #global_nav ul li .arrow::after {
display: none;
}
body.menu_scroll #global_nav::-webkit-scrollbar {
width: 10px;
}
body.menu_scroll #global_nav::-webkit-scrollbar-thumb{
background: rgba(100,100,100,1.00);
border-radius: 10px;
}
body.menu_scroll #global_nav::-webkit-scrollbar-track-piece {
background: rgba(204,204,204,1);
}
body.menu_scroll #global_nav ul {
padding: 0 20px;
z-index: 999;
}
body.menu_scroll #global_nav li {
text-align: left;
height: 45px;
line-height: 45px;
width: 460px;
}
body.menu_scroll #global_nav li:nth-child(-n+4) a {
display: block;
color: rgba(51,51,51,1);
font-size: 1.3rem;
font-weight: bold;
padding: 0 0 0 10px;
border-bottom: dashed thin rgba(150,150,150,1.00);
height: 45px;
line-height: 45px;
margin: 0;
}
body.menu_scroll #global_nav li:nth-of-type(5) a {
display: block;
color: rgba(51,51,51,1);
font-size: 1.3rem;
font-weight: bold;
padding: 0 0 0 10px;
border-bottom: dashed thin rgba(150,150,150,1.00);
height: 45px;
line-height: 45px;
margin: 0;
}
body.menu_scroll #global_nav li:nth-of-type(6) a {
display: block;
color: rgba(51,51,51,1);
font-size: 1.3rem;
font-weight: bold;
padding: 0 0 0 10px;
height: 45px;
line-height: 45px;
margin: 0;
}
body.menu_scroll #global_nav li:nth-of-type(7) a {
display: block;
background-image: linear-gradient(#ff0000, #c1272d);
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 0 0 0 10px;
height: 50px;
line-height: 50px;
margin: 0;
}
/*CLOSE*/
body.menu_scroll #global_nav #close {
color: #000;
font-size: 1.2rem;
font-weight: bold;
padding: 10px 0 00px;
margin: 10px 0 0;
text-align: center;
border: none;
}

body.menu_scroll #global_nav img {
height: .8em;
margin: 0 5px 1px 0;
}

/* スライドアニメーション_li要素全体の移動調整 */
body.menu_scroll .open #global_nav {
transform: translateX(-500px);
}
/*3本ライン*/
body.menu_scroll #nav_toggle {
/* 3本ライン位置調整 */
position: absolute;
right: 18px;
top: 16px;
width: 35px;
height: 36px;
z-index: 999;
}
body.menu_scroll #nav_toggle span {
/* 3本ラインデザイン */
display: block;
position: absolute;
left: 0;
background: #fff;
height: 2px;
width: 100%;
transition: .35s ease-in-out;
}
body.menu_scroll #nav_toggle span:nth-child(1) {top: 7px;}
body.menu_scroll #nav_toggle span:nth-child(2) {top: 18px;}
body.menu_scroll #nav_toggle span:nth-child(3) {top: 29px;}
/* Fixed reset */
body.menu_scroll #top_head .fixed {
padding-top: 0;
background: transparent;
}
body.menu_scroll #nav_toggle {
display: block;
}	
/* #nav-toggle 切り替えアニメーション */
body.menu_scroll .open #nav_toggle span:nth-child(1) {
top: 17px;
transform: rotate(45deg);
}
body.menu_scroll .open #nav_toggle span:nth-child(2) {
width: 0;
left: 50%;
}
body.menu_scroll .open #nav_toggle span:nth-child(3) {
top: 17px;
transform: rotate(-45deg);
}
/*モーダル*/
body.menu_scroll .open .modal_wrap {
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
background: rgba(0,0,0,.5);
transition: .5s;
z-index: 1;
}



}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.head_wrap {
position: relative;
background: #eaeef7;
height: 450px;
}
.head_wrap_under {
position: relative;
background: #eaeef7;
height: 100px;
}
.head_wrap .logo,
.head_wrap_under .logo {
position: absolute;
top: 20px;
left: 30px;
}
.head_wrap .logo img,
.head_wrap_under .logo img {
height: auto;
width: 150px;
}
/*mv*/
.head_wrap .mv {
}
.head_wrap .mv .human {
position: absolute;
right: 10%;
bottom: 0;
}
.head_wrap .mv .human img {
height: 300px;
width: auto;
}
.head_wrap .mv .txt {
position: absolute;
top: 55%;
left: 50%;
transform: translate(-50%, -50%);
overflow: hidden;
width: 100%;
}
.head_wrap .mv .txt img {
height: auto;
width: 100%;
}
/*main_txt*/
.head_wrap .main_txt {
position: absolute;
top: 55%;
left: 30px;
transform: translate(0, -50%);
}
.head_wrap .main_txt img {
height: auto;
margin: 0 0 30px;
width: 50%;
}
.head_wrap .main_txt h2 {
font-family: myfont_semi;
font-size: 1.8rem;
line-height: 1.5em;
}
/*side*/
.side {
display: none;
}
/*ナビゲーション*/
#top_head {
/* ナビ全体位置調整 */
position: fixed;
top: 0px;
right: 0px;
background: #c1272d;
height: 70px;
width: 70px;
transition: .4s;
z-index: 1;
}
#mobile_head {
position: relative;
z-index: 999;
}
/* ナビOPEN時 */
#global_nav {
background: rgba(255,255,255,1);
height: auto;
max-height: 80vh;
overflow-y: auto; /*scroll用*/
z-index: 999;
/* 開いてないとき画面外配置 */
position: fixed;
top: 100px;
right: -500px;
transition: .35s ease-in-out;
padding: 20px 0;
width: 500px;
}
#global_nav::-webkit-scrollbar {
width: 10px;
}
#global_nav::-webkit-scrollbar-thumb{
background: rgba(100,100,100,1.00);
border-radius: 10px;
}
#global_nav::-webkit-scrollbar-track-piece {
background: rgba(204,204,204,1);
}
#global_nav ul {
z-index: 999;
}
#global_nav li {
padding: 10px 10px 0px 20px;
text-align: left;
width: 490px;
}
#global_nav a:link,
#global_nav a:visited,
#global_nav a {
display: block;
color: rgba(51,51,51,1);
font-size: 1.5rem;
font-weight: bold;
padding: 0 0 10px 10px;
}
/* スライドアニメーション_li要素全体の移動調整 */
.open #global_nav {
transform: translateX(-500px);
}
/*3本ライン*/
#nav_toggle {
/* 3本ライン位置調整 */
position: absolute;
right: 18px;
top: 16px;
width: 35px;
height: 36px;
z-index: 999;
}
#nav_toggle span {
/* 3本ラインデザイン */
display: block;
position: absolute;
left: 0;
background: #fff;
height: 2px;
width: 100%;
transition: .35s ease-in-out;
}
#nav_toggle span:nth-child(1) {top: 7px;}
#nav_toggle span:nth-child(2) {top: 18px;}
#nav_toggle span:nth-child(3) {top: 29px;}
/* Fixed reset */
#top_head .fixed {
padding-top: 0;
background: transparent;
}
#nav_toggle {
display: block;
}	
/* #nav-toggle 切り替えアニメーション */
.open #nav_toggle span:nth-child(1) {
top: 17px;
transform: rotate(45deg);
}
.open #nav_toggle span:nth-child(2) {
width: 0;
left: 50%;
}
.open #nav_toggle span:nth-child(3) {
top: 17px;
transform: rotate(-45deg);
}
/*CLOSE*/
#global_nav #close {
color: #000;
font-size: 1.5rem;
font-weight: bold;
padding: 10px 0 00px;
margin: 10px 0 0;
text-align: center;
}
/*モーダル*/
.open .modal_wrap {
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
background: rgba(0,0,0,.5);
transition: .5s;
z-index: 1;
}
#global_nav .contact:link,
#global_nav .contact:visited {
background-image: linear-gradient(#ff0000, #c1272d);
color: #fff;
padding: 20px 20px;
margin: 0;
}
#global_nav img {
height: .8em;
margin: 0 5px 1px 0;
}

}/*close*/

@media (max-width:599px){
.head_wrap {
position: relative;
background: #eaeef7;
height: 400px;
overflow: hidden;
width: 100%;
}
.head_wrap_under {
position: relative;
background: #eaeef7;
height: 70px;
overflow: hidden;
width: 100%;
}
.head_wrap .logo,
.head_wrap_under .logo {
position: absolute;
top: 20px;
left: 20px;
}
.head_wrap_under .logo {
position: absolute;
top: 10px;
left: 10px;
}
.head_wrap .logo img,
.head_wrap_under .logo img {
height: auto;
width: 140px;
}
/*mv*/
.head_wrap .mv {
}
.head_wrap .mv .human {
position: absolute;
right: -7%;
bottom: 0;
}
.head_wrap .mv .human img {
height: 230px;
width: auto;
}
.head_wrap .mv .txt {
position: absolute;
top: 66%;
left: 50%;
transform: translate(-50%, -50%);
overflow: hidden;
width: 100%;
}
.head_wrap .mv .txt img {
height: auto;
width: 150%;
}
/*main_txt*/
.head_wrap .main_txt {
position: absolute;
top: 50%;
left: 20px;
transform: translate(0, -50%);
}
.head_wrap .main_txt img {
height: auto;
margin: 0 0 30px;
width: 85%;
}
.head_wrap .main_txt h2 {
font-family: myfont_semi;
font-size: 3.8vw;
line-height: 1.5em;
}
/*side*/
.side {
display: none;
}
/*ナビゲーション*/
#top_head {
/* ナビ全体位置調整 */
position: fixed;
top: 0px;
right: 0px;
background: #000;
height: 50px;
width: 50px;
transition: .4s;
z-index: 1;
}
#mobile_head {
position: relative;
z-index: 999;
}
/* ナビOPEN時 */
#global_nav {
background: rgba(255,255,255,1);
height: auto;
max-height: 80vh;
overflow-y: auto; /*scroll用*/
z-index: 999;
/* 開いてないとき画面外配置 */
position: fixed;
top: 70px;
right: -500px;
transition: .35s ease-in-out;
padding: 10px 0;
width: 90%;
}
#global_nav::-webkit-scrollbar {
width: 10px;
}
#global_nav::-webkit-scrollbar-thumb{
background: rgba(100,100,100,1.00);
border-radius: 10px;
}
#global_nav::-webkit-scrollbar-track-piece {
background: rgba(204,204,204,1);
}
#global_nav ul {
z-index: 999;
}
#global_nav li {
padding: 10px 10px 0px 20px;
text-align: left;
width: 95%;
}
#global_nav a:link,
#global_nav a:visited,
#global_nav a {
display: block;
color: rgba(51,51,51,1);
font-size: 1.3rem;
font-weight: bold;
padding: 0 0 10px 10px;
border-bottom: dashed thin rgba(150,150,150,1.00);
}
/* スライドアニメーション_li要素全体の移動調整 */
.open #global_nav {
transform: translateX(-500px);
}
/*3本ライン*/
#nav_toggle {
/* 3本ライン位置調整 */
position: absolute;
right: 7px;
top: 7px;
width: 35px;
height: 36px;
z-index: 999;
}
#nav_toggle span {
/* 3本ラインデザイン */
display: block;
position: absolute;
left: 0;
background: #fff;
height: 2px;
width: 100%;
transition: .35s ease-in-out;
}
#nav_toggle span:nth-child(1) {top: 7px;}
#nav_toggle span:nth-child(2) {top: 18px;}
#nav_toggle span:nth-child(3) {top: 29px;}
/* Fixed reset */
#top_head .fixed {
padding-top: 0;
background: transparent;
}
#nav_toggle {
display: block;
}	
/* #nav-toggle 切り替えアニメーション */
.open #nav_toggle span:nth-child(1) {
top: 17px;
transform: rotate(45deg);
}
.open #nav_toggle span:nth-child(2) {
width: 0;
left: 50%;
}
.open #nav_toggle span:nth-child(3) {
top: 17px;
transform: rotate(-45deg);
}
/*CLOSE*/
#global_nav #close {
color: #000;
font-size: 1rem;
font-weight: bold;
padding: 10px 0 00px;
margin: 0px 0 0;
text-align: center;
}
/*モーダル*/
.open .modal_wrap {
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
background: rgba(0,0,0,.5);
transition: .5s;
z-index: 1;
}
#global_nav .contact:link,
#global_nav .contact:visited {
background-image: linear-gradient(#ff0000, #c1272d);
color: #fff;
padding: 15px 15px;
margin: 0;
border: none;
}
#global_nav .insta_nav:link,
#global_nav .insta_nav:visited {
border: none;
}
#global_nav img {
height: .8em;
margin: 0 5px 1px 0;
}

}/*close*/

/*----------------------
▼about_wrap▼
----------------------*/
@media (min-width:960px){
.about_wrap {
background: #f9f5ef;
}
.about_wrap .range {
position: relative;
padding: 100px 0;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.about_wrap .title {
display: flex;
align-items: center;
margin: 0 0 100px;
}
.about_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 5rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.about_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
.about_wrap .title .left {
margin: 0 100px 0 0;
}
.about_wrap .title .right {
margin: 0 0 20px 0;
}
.about_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
}
.about_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
/*box*/
.about_wrap .box {
display: flex;
justify-content: space-between;
}
.about_wrap .box .item {
width: 31%;
}
.about_wrap .box .item img {
height: auto;
width: 100%;
}
.about_wrap .box .item p {
}
.about_wrap .box .item p {
position: relative;
display: inline-block;
left: 50%;
transform: translate(-50%, 0);
padding: 15px 20px;
border-radius: 4px;
background: #fff;
font-size: 1.5rem;
font-weight: bold;
margin: -10px auto 0;
width: 90%;
box-shadow: 0 4px 10px rgba(0,0,0,0.15);
line-height: 1.3em;
}
.about_wrap .box .item p::after {
content: "";
position: absolute;
top: 0;
left: 10%;
border-style: solid;
border-width: 0 15px 20px 15px;
border-color: transparent transparent #fff;
translate: -50% -100%;
}
.about_wrap .triangle {
position: absolute;
bottom: -50px;
left: 50px;
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-top: 50px solid #f3ece0;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.about_wrap {
background: #f9f5ef;
}
.about_wrap .range {
position: relative;
padding: 50px 0;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.about_wrap .title {
display: flex;
align-items: center;
margin: 0 0 50px;
}
.about_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.about_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
.about_wrap .title .left {
margin: 0 50px 0 0;
width: 30%;
}
.about_wrap .title .right {
margin: 0 0 20px 0;
width: 70%;
}
.about_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 3vw;
line-height: 1.5em;
}
.about_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
/*box*/
.about_wrap .box {
display: flex;
justify-content: space-between;
}
.about_wrap .box .item {
width: 31%;
}
.about_wrap .box .item img {
height: auto;
width: 100%;
}
.about_wrap .box .item p {
}
.about_wrap .box .item p {
position: relative;
display: inline-block;
left: 50%;
transform: translate(-50%, 0);
padding: 15px 20px;
border-radius: 4px;
background: #fff;
font-size: 1.5rem;
font-weight: bold;
margin: -10px auto 0;
width: 90%;
box-shadow: 0 4px 10px rgba(0,0,0,0.15);
line-height: 1.3em;
}
.about_wrap .box .item p::after {
content: "";
position: absolute;
top: 0;
left: 10%;
border-style: solid;
border-width: 0 15px 20px 15px;
border-color: transparent transparent #fff;
translate: -50% -100%;
}
.about_wrap .triangle {
position: absolute;
bottom: -50px;
left: 50px;
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-top: 50px solid #f3ece0;
}
}/*close*/

@media (max-width:599px){
.about_wrap {
background: #f9f5ef;
}
.about_wrap .range {
position: relative;
padding: 50px 0 20px;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.about_wrap .title {
margin: 0 0 30px;
}
.about_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.about_wrap .title h3 span {
display: block;
font-size: 1.3rem;
font-weight: bold;
padding: 15px 0 0;
}
.about_wrap .title .left {
margin: 0 0 50px 0;
}
.about_wrap .title .right {
margin: 0 0 20px 0;
}
.about_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 7vw;
line-height: 1.3em;
margin: 0 0 20px;
}
.about_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.3rem;
line-height: 1.5em;
}
/*box*/
.about_wrap .box {
}
.about_wrap .box .item {
margin: 0 0 30px;
width: 100%;
}
.about_wrap .box .item img {
height: auto;
width: 100%;
}
.about_wrap .box .item p {
}
.about_wrap .box .item p {
position: relative;
display: inline-block;
left: 50%;
transform: translate(-50%, 0);
padding: 15px 20px;
border-radius: 4px;
background: #fff;
font-size: 1.3rem;
font-weight: bold;
margin: -10px auto 0;
width: 95%;
box-shadow: 0 4px 10px rgba(0,0,0,0.15);
line-height: 1.3em;
}
.about_wrap .box .item p::after {
content: "";
position: absolute;
top: 0;
left: 10%;
border-style: solid;
border-width: 0 15px 20px 15px;
border-color: transparent transparent #fff;
translate: -50% -100%;
}
.about_wrap .triangle {
position: absolute;
bottom: -50px;
left: 5%;
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-top: 50px solid #f3ece0;
}
}/*close*/

/*----------------------
▼problem_wrap▼
----------------------*/
@media (min-width:960px){
.problem_wrap {
margin: 100px auto;
max-width: 1500px;
width: 95%;
}
.problem_wrap .title {
margin: 0 0 100px;
}
.problem_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 5rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.problem_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
/*box_1*/
.problem_wrap .box_1 {
display: flex;
justify-content: space-between;
margin: 0 0 100px;
}
.problem_wrap .box_1 .left {
width: 48%;
}
.problem_wrap .box_1 .left p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 2em;
line-height: 1.8em;
}
.problem_wrap .box_1 .left p span {
font-size: 2rem;
font-weight: bold;
}
.problem_wrap .box_1 .right {
width: 45%;
}
.problem_wrap .box_1 .right img {
width: 100%;
}
/*box_2*/
.problem_wrap .box_2 {
display: flex;
justify-content: space-between;
}
.problem_wrap .box_2 .pic_item {
width: 20%;
}
.problem_wrap .box_2 .pic_item img {
height: auto;
width: 100%;
}
.problem_wrap .box_2 .txt_item {
background-image:
repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px);
background-position:
0 0,   /* 横線はそのまま */
5px 0; /* ←縦線だけ1px右にずらす（左端の縦線が消える） */
background-color: #fff;
padding: 40px 20px;
width: 30%;
}
.problem_wrap .box_2 .txt_item p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 1em;
padding-left: 1em;
text-indent: -1em;  
}
.problem_wrap .box_2 .txt_item p:first-of-type {
font-size: 2.5rem;
font-weight: bold;
margin: 0 0 30px;
}
.problem_wrap .box_2 .txt_item p:first-of-type span {
background: linear-gradient(transparent 60%, #ede2d0 60%);
}
.problem_wrap .box_2 .txt_item p:first-of-type img {
height: 1.2em;
width: auto;
margin: 0 20px 5px 0;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.problem_wrap {
margin: 100px auto 50px;
max-width: 1500px;
width: 95%;
}
.problem_wrap .title {
margin: 0 0 50px;
}
.problem_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.problem_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
/*box_1*/
.problem_wrap .box_1 {
display: flex;
justify-content: space-between;
align-items: center;
margin: 0 0 50px;
}
.problem_wrap .box_1 .left {
width: 48%;
}
.problem_wrap .box_1 .left p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 2em;
line-height: 1.5em;
}
.problem_wrap .box_1 .left p span {
font-size: 2rem;
font-weight: bold;
}
.problem_wrap .box_1 .right {
width: 45%;
}
.problem_wrap .box_1 .right img {
width: 100%;
}
/*box_2*/
.problem_wrap .box_2 {
display: flex;
justify-content: space-between;
}
.problem_wrap .box_2 .pic_item {
display: none;
}
.problem_wrap .box_2 .txt_item {
background-image:
repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px);
background-position:
0 0,   /* 横線はそのまま */
5px 0; /* ←縦線だけ1px右にずらす（左端の縦線が消える） */
background-color: #fff;
padding: 40px 20px;
width: 48%;
}
.problem_wrap .box_2 .txt_item p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 1em;
padding-left: 1em;
text-indent: -1em;  
}
.problem_wrap .box_2 .txt_item p:first-of-type {
font-size: 2.5rem;
font-weight: bold;
margin: 0 0 30px;
}
.problem_wrap .box_2 .txt_item p:first-of-type span {
background: linear-gradient(transparent 60%, #ede2d0 60%);
}
.problem_wrap .box_2 .txt_item p:first-of-type img {
height: 1.2em;
width: auto;
margin: 0 20px 5px 0;
}

}/*close*/

@media (max-width:599px){
.problem_wrap {
margin: 100px auto 50px;
max-width: 1500px;
width: 95%;
}
.problem_wrap .title {
margin: 0 0 50px;
}
.problem_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.problem_wrap .title h3 span {
display: block;
font-size: 1.3rem;
font-weight: bold;
padding: 15px 0 0;
white-space: nowrap;
}
/*box_1*/
.problem_wrap .box_1 {
margin: 0 0 50px;
}
.problem_wrap .box_1 .left {
width: 100%;
}
.problem_wrap .box_1 .left p {
font-size: 1.3rem;
font-weight: bold;
margin: 0 0 2em;
line-height: 1.5em;
}
.problem_wrap .box_1 .left p span {
font-size: 1.5rem;
font-weight: bold;
}
.problem_wrap .box_1 .right {
height: 250px;
overflow: hidden;
width: 100%;
}
.problem_wrap .box_1 .right img {
object-fit: cover;
height: 100%;
width: 100%;
}
/*box_2*/
.problem_wrap .box_2 {
display: -webkit-flex;
display: -ms-flex;
display: flex;
-webkit-flex-direction: column-reverse;
-ms-flex-direction: column-reverse;
flex-direction: column-reverse;

}
.problem_wrap .box_2 .pic_item {
height: 250px;
overflow: hidden;
width: 100%;
}
.problem_wrap .box_2 .pic_item img {
object-fit: cover;
height: 100%;
width: 100%;
}
.problem_wrap .box_2 .txt_item {
background-image:
repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px);
background-position:
0 0,   /* 横線はそのまま */
5px 0; /* ←縦線だけ1px右にずらす（左端の縦線が消える） */
background-color: #fff;
padding: 30px 10px;
width: 100%;
}
.problem_wrap .box_2 .txt_item p {
font-size: 1.3rem;
font-weight: bold;
margin: 0 0 1em;
padding-left: 1em;
text-indent: -1em;
line-height: 1.4em;
}
.problem_wrap .box_2 .txt_item p:first-of-type {
font-size: 2rem;
font-weight: bold;
margin: 0 0 20px;
}
.problem_wrap .box_2 .txt_item p:first-of-type span {
background: linear-gradient(transparent 60%, #ede2d0 60%);
}
.problem_wrap .box_2 .txt_item p:first-of-type img {
height: 1.2em;
width: auto;
margin: 0 15px 5px 0;
}

}/*close*/

/*----------------------
▼concept_wrap▼
----------------------*/
@media (min-width:960px){
.concept_wrap {
margin: 100px auto;
max-width: 1500px;
width: 95%;
}
.concept_wrap p:first-of-type {
font-size: 1.8rem;
font-weight: bold;
}
.concept_wrap p:nth-of-type(2) {
font-size: 1.8rem;
font-weight: bold;
}
.concept_wrap p:nth-of-type(2) span {
display: block;
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
margin: 0 0 5px;
}
/*line*/
.concept_wrap .line {
position: relative;
width: 40px;              /* 左の横線の長さ */
height: 2px;               /* 線の太さ */
background: #3a3939;
border-radius: 999px;
margin: 10px 0 30px 0px;
}
.concept_wrap .line::before,
.concept_wrap .line::after {
content: "";
position: absolute;
height: 2px;
background: #3a3939;
border-radius: 999px;
}
.concept_wrap .line::before {
width: 23px;
left: 40px;               /* 左線の終端からスタート */
top: 0;
transform-origin: left center;
transform: rotate(45deg);  /* 下向きに傾ける角度 */
}
.concept_wrap .line::after {
width: 250px;
left: 50px;               /* 斜め線の先から少し空ける */
top: 0;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.concept_wrap {
margin: 50px auto;
max-width: 1500px;
width: 95%;
}
.concept_wrap p:first-of-type {
font-size: 1.8rem;
font-weight: bold;
}
.concept_wrap p:nth-of-type(2) {
font-size: 1.8rem;
font-weight: bold;
}
.concept_wrap p:nth-of-type(2) span {
display: block;
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
margin: 0 0 5px;
}
/*line*/
.concept_wrap .line {
position: relative;
width: 40px;              /* 左の横線の長さ */
height: 2px;               /* 線の太さ */
background: #3a3939;
border-radius: 999px;
margin: 10px 0 30px 0px;
}
.concept_wrap .line::before,
.concept_wrap .line::after {
content: "";
position: absolute;
height: 2px;
background: #3a3939;
border-radius: 999px;
}
.concept_wrap .line::before {
width: 23px;
left: 40px;               /* 左線の終端からスタート */
top: 0;
transform-origin: left center;
transform: rotate(45deg);  /* 下向きに傾ける角度 */
}
.concept_wrap .line::after {
width: 250px;
left: 50px;               /* 斜め線の先から少し空ける */
top: 0;
}

}/*close*/

@media (max-width:599px){
.concept_wrap {
margin: 50px auto;
max-width: 1500px;
width: 95%;
}
.concept_wrap p:first-of-type {
font-size: 1.5rem;
font-weight: bold;
}
.concept_wrap p:nth-of-type(2) {
font-size: 1.5rem;
font-weight: bold;
}
.concept_wrap p:nth-of-type(2) span {
display: block;
font-family: myfont_bold;
font-size: 7vw;
line-height: 1.2em;
margin: 0 0 5px;
}
/*line*/
.concept_wrap .line {
position: relative;
width: 40px;              /* 左の横線の長さ */
height: 2px;               /* 線の太さ */
background: #3a3939;
border-radius: 999px;
margin: 10px 0 30px 0px;
}
.concept_wrap .line::before,
.concept_wrap .line::after {
content: "";
position: absolute;
height: 2px;
background: #3a3939;
border-radius: 999px;
}
.concept_wrap .line::before {
width: 23px;
left: 40px;               /* 左線の終端からスタート */
top: 0;
transform-origin: left center;
transform: rotate(45deg);  /* 下向きに傾ける角度 */
}
.concept_wrap .line::after {
width: 50px;
left: 50px;               /* 斜め線の先から少し空ける */
top: 0;
}


}/*close*/

/*----------------------
▼feature_wrap▼
----------------------*/
@media (min-width:960px){
.feature_wrap {
background: #f9f5ef;
}
.feature_wrap .range {
position: relative;
padding: 100px 0 10px;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.feature_wrap .title {
display: flex;
align-items: center;
margin: 0 0 100px;
}
.feature_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 5rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.feature_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
.feature_wrap .title .left {
margin: 0 100px 0 0;
}
.feature_wrap .title .right {
margin: 0 0 20px 0;
}
.feature_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
}
.feature_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
/*box*/
.feature_wrap .box {
position: relative;
background: #fff;
display: flex;
justify-content: space-between;
/*上下*/
align-items: center;
margin: 0 0 150px;
}
.feature_wrap .box .txt_item {
background: #fff;
padding: 50px;
min-height: 100%;
width: 50%;
}
.number_content {
position: absolute;
top: -20px;
left: 20px;
}
.feature_wrap .box:nth-of-type(odd) .number_content {
position: absolute;
top: -20px;
left:52%;
}
.feature_wrap .box .txt_item .number {
position: relative;
display: grid;
place-items: center;
background: #fff;
width: 50px;
height: 50px;
border: 2px solid #333333;
border-radius: 50%;
font-size: 1.5rem;
font-weight: bold;
}
.feature_wrap .box .txt_item .number::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
width: 10px;
height: 2px;
transform: rotate(50deg);
box-sizing: border-box;
background-color: #333333;
box-shadow: 0 2px 0 #ffffff, 0 -2px 0 #ffffff; /* 背景色と同じ色を指定 */
}

.feature_wrap .box .txt_item h4 {
font-family: 'myfont_bold';
font-size: 3.5rem;
font-weight: bold;
margin: 0 0 30px;
line-height: 1.2em;
}
.feature_wrap .box .txt_item h4 span {
display: block;
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 1.8rem;
font-weight: bold;
margin: 0 0 0px;
}
.feature_wrap .box .txt_item .txt p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 20px;
}
.feature_wrap .box .txt_item .txt p span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
.feature_wrap .box .txt_item .point {
background-image:
repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px);
background-position:
0 0,   /* 横線はそのまま */
5px 0; /* ←縦線だけ1px右にずらす（左端の縦線が消える） */
background-color: #fff;
padding: 15px 10px;
}
.feature_wrap .box .txt_item .point img {
height: 35px;
width: auto;
}
.feature_wrap .box .txt_item .point p {
font-size: 2.3rem;
font-weight: bold;
line-height: 1.4em;
}
.feature_wrap .box .pic_item {
background: #fff;
width: 50%;
}
.feature_wrap .box .pic_item img {
height: auto;
width: 100%;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.feature_wrap {
background: #f9f5ef;
}
.feature_wrap .range {
position: relative;
padding: 50px 0 10px;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.feature_wrap .title {
display: flex;
align-items: center;
margin: 0 0 50px;
}
.feature_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.feature_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
.feature_wrap .title .left {
margin: 0 50px 0 0;
width: 30%
}
.feature_wrap .title .right {
margin: 0 0 20px 0;
width: 70%;
}
.feature_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 2.8vw;
line-height: 1.5em;
}
.feature_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
/*box*/
.feature_wrap .box {
margin: 0 0 50px;
}
.feature_wrap .box:nth-of-type(odd) {
display: -webkit-flex;
display: -ms-flex;
display: flex;
-webkit-flex-direction: column-reverse;
-ms-flex-direction: column-reverse;
flex-direction: column-reverse;

}
.feature_wrap .box .txt_item {
position: relative;
background: #fff;
padding: 50px;
width: 100%;
}
.number_content {
position: absolute;
top: -20px;
left: 20px;
}
.feature_wrap .box .txt_item .number {
position: relative;
display: grid;
place-items: center;
background: #fff;
width: 50px;
height: 50px;
border: 2px solid #333333;
border-radius: 50%;
font-size: 1.5rem;
font-weight: bold;
}
.feature_wrap .box .txt_item .number::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
width: 10px;
height: 2px;
transform: rotate(50deg);
box-sizing: border-box;
background-color: #333333;
box-shadow: 0 2px 0 #ffffff, 0 -2px 0 #ffffff; /* 背景色と同じ色を指定 */
}

.feature_wrap .box .txt_item h4 {
font-family: 'myfont_bold';
font-size: 3.5rem;
font-weight: bold;
margin: 0 0 30px;
line-height: 1.2em;
}
.feature_wrap .box .txt_item h4 span {
display: block;
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 1.8rem;
font-weight: bold;
margin: 0 0 0px;
}
.feature_wrap .box .txt_item .txt p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 20px;
}
.feature_wrap .box .txt_item .txt p span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
.feature_wrap .box .txt_item .point {
background-image:
repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px);
background-position:
0 0,   /* 横線はそのまま */
5px 0; /* ←縦線だけ1px右にずらす（左端の縦線が消える） */
background-color: #fff;
padding: 15px 10px;
}
.feature_wrap .box .txt_item .point img {
height: 35px;
width: auto;
}
.feature_wrap .box .txt_item .point p {
font-size: 2.3rem;
font-weight: bold;
line-height: 1.4em;
}
.feature_wrap .box .pic_item {
background: #fff;
text-align: center;
padding: 0 0 5%;
width: 100%;
}
.feature_wrap .box .pic_item img {
height: auto;
width: 90%;
}

}/*close*/

@media (max-width:599px){
.feature_wrap {
background: #f9f5ef;
}
.feature_wrap .range {
position: relative;
padding: 50px 0 10px;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.feature_wrap .title {
margin: 0 0 50px;
}
.feature_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.feature_wrap .title h3 span {
display: block;
font-size: 1.3rem;
font-weight: bold;
padding: 15px 0 0;
}
.feature_wrap .title .left {
margin: 0 0 30px;
width: 100%
}
.feature_wrap .title .right {
margin: 0 0 20px 0;
width: 100%;
}
.feature_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 7vw;
line-height: 1.3em;
margin: 0 0 10px;
}
.feature_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.3rem;
line-height: 1.5em;
}
/*box*/
.feature_wrap .box {
margin: 0 0 50px;
}
.feature_wrap .box:nth-of-type(odd) {
display: -webkit-flex;
display: -ms-flex;
display: flex;
-webkit-flex-direction: column-reverse;
-ms-flex-direction: column-reverse;
flex-direction: column-reverse;

}
.feature_wrap .box .txt_item {
position: relative;
background: #fff;
padding: 45px 20px 40px;
width: 100%;
}
.number_content {
position: absolute;
top: -20px;
left: 20px;
}
.feature_wrap .box .txt_item .number {
position: relative;
display: grid;
place-items: center;
background: #fff;
width: 50px;
height: 50px;
border: 2px solid #333333;
border-radius: 50%;
font-size: 1.5rem;
font-weight: bold;
}
.feature_wrap .box .txt_item .number::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
width: 10px;
height: 2px;
transform: rotate(50deg);
box-sizing: border-box;
background-color: #333333;
box-shadow: 0 2px 0 #ffffff, 0 -2px 0 #ffffff; /* 背景色と同じ色を指定 */
}

.feature_wrap .box .txt_item h4 {
font-family: 'myfont_bold';
font-size: 2.5rem;
font-weight: bold;
margin: 0 0 20px;
line-height: 1.2em;
}
.feature_wrap .box .txt_item h4 span {
display: block;
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 10px;
line-height: 1.3em;
}
.feature_wrap .box .txt_item .txt p {
font-size: 1.3rem;
font-weight: bold;
margin: 0 0 20px;
line-height: 1.5em;
}
.feature_wrap .box .txt_item .txt p span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
.feature_wrap .box .txt_item .point {
background-image:
repeating-linear-gradient(0deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px),
repeating-linear-gradient(90deg, rgba(0,0,0,0.1) 0 1px, transparent 1px 40px);
background-position:
0 0,   /* 横線はそのまま */
5px 0; /* ←縦線だけ1px右にずらす（左端の縦線が消える） */
background-color: #fff;
padding: 15px 10px;
}
.feature_wrap .box .txt_item .point img {
height: 30px;
margin: 0 0 10px;
width: auto;
}
.feature_wrap .box .txt_item .point p {
font-size: 1.5rem;
font-weight: bold;
line-height: 1.4em;
}
.feature_wrap .box .pic_item {
background: #fff;
text-align: center;
padding: 0 0 5%;
width: 100%;
}
.feature_wrap .box .pic_item img {
height: auto;
width: 90%;
}

}/*close*/

/*----------------------
▼smile_wrap▼
----------------------*/
@media (min-width:960px){
.smile_wrap {
margin: 100px auto;
max-width: 1500px;
width: 95%;
}
.smile_wrap .pic {
width: 100%;
}
.smile_wrap .pic img {
height: auto;
width: 100%;
}
.smile_wrap .box {
display: flex;
justify-content: space-between;
align-items: center;
padding: 100px 0 0;
}
.smile_wrap .box .left {
padding: 0 0 0 10%;
width: 50%;
}
.smile_wrap .box .left p {
font-size: 3rem;
font-weight: bold;
line-height: 1.5em;
}
.smile_wrap .box .right {
padding: 0 0 0 10%;
width: 50%;
}
.smile_wrap .box .right p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 1em;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.smile_wrap {
margin: 50px auto;
max-width: 1500px;
width: 95%;
}
.smile_wrap .pic {
width: 100%;
}
.smile_wrap .pic img {
height: auto;
width: 100%;
}
.smile_wrap .box {
display: flex;
justify-content: space-between;
align-items: center;
padding: 50px 0 0;
}
.smile_wrap .box .left {
padding: 0 0 0 10%;
width: 30%;
}
.smile_wrap .box .left p {
font-size: 2rem;
font-weight: bold;
line-height: 1.5em;
}
.smile_wrap .box .right {
padding: 0 0 0 10%;
width: 70%;
}
.smile_wrap .box .right p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 1em;
}
}/*close*/

@media (max-width:599px){
.smile_wrap {
margin: 50px auto;
max-width: 1500px;
width: 95%;
}
.smile_wrap .pic {
width: 100%;
}
.smile_wrap .pic img {
height: auto;
width: 100%;
}
.smile_wrap .box {
padding: 30px 0 0;
}
.smile_wrap .box .left {
width: 100%;
}
.smile_wrap .box .left p {
font-size: 2rem;
font-weight: bold;
line-height: 1.5em;
margin: 0 0 30px;
}
.smile_wrap .box .right {
width: 100%;
}
.smile_wrap .box .right p {
font-size: 1.3rem;
font-weight: bold;
margin: 0 0 1em;
}

}/*close*/

/*----------------------
▼design_wrap▼
----------------------*/
@media (min-width:960px){
.design_wrap {
padding: 100px 0;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.design_wrap .title {
display: flex;
align-items: center;
justify-content: space-between;
margin: 0 0 100px;
}
.design_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 5rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.design_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
.design_wrap .title .left {
margin: 0 100px 0 0;
}
.design_wrap .title .right {
margin: 0 0 20px 0;
}
.design_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
}
.design_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
/*top_txt*/
.design_wrap .top_txt {
margin: 0 0 50px;
}
.design_wrap .top_txt p {
font-size: 2.5rem;
font-weight: bold;
line-height: 1.5em;
}
/*box*/
.design_wrap .box {
display: flex;
justify-content: space-between;
}
.design_wrap .box .pic {
width: 35%;
}
.design_wrap .box .pic img {
height: auto;
width: 100%;
}
.design_wrap .box .txt {
width: 60%;
}
.design_wrap .box .txt h4 {
font-size: 2rem;
font-weight: bold;
}
/*line*/
.design_wrap .line {
position: relative;
width: 40px;              /* 左の横線の長さ */
height: 2px;               /* 線の太さ */
background: #3a3939;
border-radius: 999px;
margin: 10px 0 30px 0px;
}
.design_wrap .line::before,
.design_wrap .line::after {
content: "";
position: absolute;
height: 2px;
background: #3a3939;
border-radius: 999px;
}
.design_wrap .line::before {
width: 23px;
left: 40px;               /* 左線の終端からスタート */
top: 0;
transform-origin: left center;
transform: rotate(45deg);  /* 下向きに傾ける角度 */
}
.design_wrap .line::after {
width: 250px;
left: 50px;               /* 斜め線の先から少し空ける */
top: 0;
}
/*txt_box*/
.design_wrap .txt_box {
display:flex;
flex-wrap:wrap;
margin: 0 0 20px;
}
.design_wrap .txt_box .item {
padding: 40px;
}
.design_wrap .txt_box .item:first-of-type {
border-right: solid thin rgba(200,200,200,1.00);
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f6f7f6;
width: 45%;
}
.design_wrap .txt_box .item:nth-of-type(2) {
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f9f5ef;
width: 55%;
}
.design_wrap .txt_box .item:nth-of-type(3) {
border-right: solid thin rgba(200,200,200,1.00);
background: #f9f5ef;
width: 55%;
}
.design_wrap .txt_box .item:nth-of-type(4) {
background: #f6f7f6;
width: 45%;
}
.design_wrap .txt_box .item h5 {
display: inline-block;
border-top: solid thin rgba(200,200,200,1.00);
border-bottom: solid thin rgba(200,200,200,1.00);
background: #fff;
font-size: 1.8rem;
font-weight: bold;
margin: 0 0 20px;
padding: 10px 20px;
}
.design_wrap .txt_box .item p {
font-size: 1.5rem;
font-weight: bold;
}
.design_wrap .under p {
font-size: 2rem;
font-weight: bold;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.design_wrap {
padding: 50px 0;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.design_wrap .title {
display: flex;
align-items: center;
justify-content: space-between;
margin: 0 0 50px;
}
.design_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.design_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
.design_wrap .title .left {
margin: 0 50px 0 0;
width: 50%;
}
.design_wrap .title .right {
margin: 0 0 20px 0;
}
.design_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
}
.design_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
.design_wrap .right {
width: 50%;
}
.design_wrap .right img {
height: auto;
width: 100%;
}
/*top_txt*/
.design_wrap .top_txt {
margin: 0 0 50px;
}
.design_wrap .top_txt p {
font-size: 2.5rem;
font-weight: bold;
line-height: 1.5em;
}
/*box*/
.design_wrap .box {
}
.design_wrap .box .pic {
height: 320px;
overflow: hidden;
margin: 0 0 50px;
width: 100%;
}
.design_wrap .box .pic img {
height: 100%;
object-fit: cover;  /* 縦横比を維持したまま、はみ出し分を中央基準でカット */
  object-position: center;
width: 100%;
}
.design_wrap .box .txt {
width: 100%;
}
.design_wrap .box .txt h4 {
font-size: 2rem;
font-weight: bold;
}
/*line*/
.design_wrap .line {
position: relative;
width: 40px;              /* 左の横線の長さ */
height: 2px;               /* 線の太さ */
background: #3a3939;
border-radius: 999px;
margin: 10px 0 30px 0px;
}
.design_wrap .line::before,
.design_wrap .line::after {
content: "";
position: absolute;
height: 2px;
background: #3a3939;
border-radius: 999px;
}
.design_wrap .line::before {
width: 23px;
left: 40px;               /* 左線の終端からスタート */
top: 0;
transform-origin: left center;
transform: rotate(45deg);  /* 下向きに傾ける角度 */
}
.design_wrap .line::after {
width: 250px;
left: 50px;               /* 斜め線の先から少し空ける */
top: 0;
}
/*txt_box*/
.design_wrap .txt_box {
display:flex;
flex-wrap:wrap;
margin: 0 0 20px;
}
.design_wrap .txt_box .item {
padding: 40px;
}
.design_wrap .txt_box .item:first-of-type {
border-right: solid thin rgba(200,200,200,1.00);
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f6f7f6;
width: 45%;
}
.design_wrap .txt_box .item:nth-of-type(2) {
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f9f5ef;
width: 55%;
}
.design_wrap .txt_box .item:nth-of-type(3) {
border-right: solid thin rgba(200,200,200,1.00);
background: #f9f5ef;
width: 55%;
}
.design_wrap .txt_box .item:nth-of-type(4) {
background: #f6f7f6;
width: 45%;
}
.design_wrap .txt_box .item h5 {
display: inline-block;
border-top: solid thin rgba(200,200,200,1.00);
border-bottom: solid thin rgba(200,200,200,1.00);
background: #fff;
font-size: 1.8rem;
font-weight: bold;
margin: 0 0 20px;
padding: 10px 20px;
}
.design_wrap .txt_box .item p {
font-size: 1.5rem;
font-weight: bold;
}
.design_wrap .under p {
font-size: 2rem;
font-weight: bold;
}

}/*close*/

@media (max-width:599px){
.design_wrap {
padding: 50px 0;
margin: 0 auto;
max-width: 1500px;
width: 95%;
}
.design_wrap .title {
margin: 0 0 50px;
}
.design_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
line-height: 1em;
}
.design_wrap .title h3 span {
display: block;
font-size: 1.3rem;
font-weight: bold;
padding: 15px 0 0;
}
.design_wrap .title .left {
margin: 0 0 20px 0;
}

.design_wrap .title p:first-of-type {
font-family: myfont_bold;
font-size: 3.5rem;
line-height: 1.5em;
}
.design_wrap .title p:last-of-type {
font-family: myfont_semi;
font-size: 1.5rem;
line-height: 1.5em;
}
.design_wrap .right {
width: 100%;
}
.design_wrap .right img {
height: auto;
width: 100%;
}
/*top_txt*/
.design_wrap .top_txt {
margin: 0 0 50px;
}
.design_wrap .top_txt p {
font-size: 1.5rem;
font-weight: bold;
line-height: 1.5em;
}
/*box*/
.design_wrap .box {
}
.design_wrap .box .pic {
height: 320px;
overflow: hidden;
margin: 0 0 50px;
width: 100%;
}
.design_wrap .box .pic img {
height: 100%;
object-fit: cover;  /* 縦横比を維持したまま、はみ出し分を中央基準でカット */
  object-position: center;
width: 100%;
}
.design_wrap .box .txt {
width: 100%;
}
.design_wrap .box .txt h4 {
font-size: 5vw;
font-weight: bold;
}
/*line*/
.design_wrap .line {
position: relative;
width: 40px;              /* 左の横線の長さ */
height: 2px;               /* 線の太さ */
background: #3a3939;
border-radius: 999px;
margin: 10px 0 30px 0px;
}
.design_wrap .line::before,
.design_wrap .line::after {
content: "";
position: absolute;
height: 2px;
background: #3a3939;
border-radius: 999px;
}
.design_wrap .line::before {
width: 23px;
left: 40px;               /* 左線の終端からスタート */
top: 0;
transform-origin: left center;
transform: rotate(45deg);  /* 下向きに傾ける角度 */
}
.design_wrap .line::after {
width: 40px;
left: 50px;               /* 斜め線の先から少し空ける */
top: 0;
}
/*txt_box*/
.design_wrap .txt_box {
margin: 0 0 20px;
}
.design_wrap .txt_box .item {
padding: 20px 10px;
}
.design_wrap .txt_box .item:first-of-type {
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f6f7f6;
width: 100%;
}
.design_wrap .txt_box .item:nth-of-type(2) {
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f9f5ef;
width: 100%;
}
.design_wrap .txt_box .item:nth-of-type(3) {
border-bottom: solid thin rgba(200,200,200,1.00);
background: #f9f5ef;
width: 100%;
}
.design_wrap .txt_box .item:nth-of-type(4) {
background: #f6f7f6;
width: 100%;
}
.design_wrap .txt_box .item h5 {
display: inline-block;
border-top: solid thin rgba(200,200,200,1.00);
border-bottom: solid thin rgba(200,200,200,1.00);
background: #fff;
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 10px;
padding: 10px 20px;
}
.design_wrap .txt_box .item p {
font-size: 1.3rem;
font-weight: bold;
}
.design_wrap .under p {
font-size: 1.5rem;
font-weight: bold;
}

}/*close*/


/*----------------------
▼package_wrap▼
----------------------*/
@media (min-width:960px){
.package_wrap {
background: linear-gradient(#fff 0 10px, transparent 10px),#f9f5ef;
padding: 0 0 10px;
}
.package_wrap .link {
margin: 0 auto 80px;
max-width: 1500px;
width: 95%;
}
.package_wrap .link a {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #fff;
font-size: 1.5rem;
font-weight: bold;
padding: 5px 20px;
}
.package_wrap .link .arrow {
margin: 20px 15px 0 0;
}
.package_wrap .link .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid #fff;
border-right: 2px solid #fff;
transform: rotate(45deg);
}
.package_wrap .link .green {
background: #95a082;
}
.package_wrap .link .orange {
background: #c68f71;
}
.package_wrap .link .purple {
background: #90767b;
}
.package_wrap .link .gley {
background: #8c8c8c;
}
.package_wrap .link .blue {
background: #636977;
}
/*content*/
.package_wrap .wrap {
display:flex;
flex-wrap:wrap;
margin: 0 auto 30px;
max-width: 1500px;
width: 95%;
}
.package_wrap .content {
margin: 0 0 4%;
width: 48%;
}
.package_wrap .content:nth-of-type(even) {
margin: 0 0 0 4%;
}
/*content title*/
.package_wrap .content .title {
display: flex;
justify-content: space-between;
margin: 0 0 10px;
padding: 12px 20px;
}
.package_wrap .content .title h4 {
color: #fff;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-size: 1.8rem;
font-weight: bold;
padding: 5px 0 0;
}
.package_wrap .content .title p {
background: #fff;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
padding: 0px 60px 2px 20px;
position: relative;
display: inline-block;
}
.package_wrap .content .title p::after {
content: "";
position: absolute;
top: 50%;
right: 20px;
width: 30px;   /* 線の長さ */
height: 1px;
transform: translateY(-50%);
}
.package_wrap .natural_content .title {background: #95a082;}
.package_wrap .natural_content .title p {color: #95a082;}
.package_wrap .natural_content .title p::after {background: #7a8a6a;}
.package_wrap .japandi_content .title {background: #c68f71;}
.package_wrap .japandi_content .title p {color: #c68f71;}
.package_wrap .japandi_content .title p::after {background: #c68f71;}
.package_wrap .hotel_content .title {background: #90767b;}
.package_wrap .hotel_content .title p {color: #90767b;}
.package_wrap .hotel_content .title p::after {background: #90767b;}
.package_wrap .industrial_content .title {background: #8c8c8c;}
.package_wrap .industrial_content .title p {color: #8c8c8c;}
.package_wrap .industrial_content .title p::after {background: #8c8c8c;}
.package_wrap .modern_content .title {background: #636977;}
.package_wrap .modern_content .title p {color: #636977;}
.package_wrap .modern_content .title p::after {background: #636977;}

/*content pic*/
.package_wrap .content .pic {
overflow: hidden;
}
.package_wrap .content .pic img {
transition: transform 0.8s ease, filter 0.8s ease;
height: auto;
width: 100%;
}
/*content des*/
.package_wrap .content .des {
background: #fff;
padding: 20px 30px;
}
.package_wrap .content .des p {
font-size: 1.5rem;
font-weight: bold;
}
/*hover*/
.package_wrap .content:hover .pic img {
transform: scale(1.05);
filter: brightness(0.8); 
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.package_wrap {
background: #f9f5ef;
padding: 10px 0 10px;
}
.package_wrap .link {
display:flex;
flex-wrap:wrap;
justify-content: center;
margin: 0 auto 50px;
max-width: 1500px;
width: 95%;
}
.package_wrap .link a {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #fff;
font-size: 1.5rem;
font-weight: bold;
padding: 5px 15px;
}
.package_wrap .link .arrow {
margin: 20px 15px 0 0;
}
.package_wrap .link .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid #fff;
border-right: 2px solid #fff;
transform: rotate(45deg);
}

.package_wrap .link .green {
background: #95a082;
}
.package_wrap .link .orange {
background: #c68f71;
}
.package_wrap .link .purple {
background: #90767b;
}
.package_wrap .link .gley {
background: #8c8c8c;
}
.package_wrap .link .blue {
background: #636977;
}
/*content*/
.package_wrap .wrap {
display:flex;
flex-wrap:wrap;
margin: 0 auto 20px;
max-width: 1500px;
width: 95%;
}
.package_wrap .content {
margin: 0 0 4%;
width: 48%;
}
.package_wrap .content:nth-of-type(even) {
margin: 0 0 0 4%;
}
/*content title*/
.package_wrap .content .title {
display: flex;
justify-content: space-between;
margin: 0 0 10px;
padding: 10px 10px;
}
.package_wrap .content .title h4 {
color: #fff;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-size: 1.5rem;
font-weight: bold;
padding: 5px 0 0;
}
.package_wrap .content .title p {
background: #fff;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
padding: 0px 40px 2px 20px;
position: relative;
display: inline-block;
}
.package_wrap .content .title p::after {
content: "";
position: absolute;
top: 50%;
right: 10px;
width: 20px;   /* 線の長さ */
height: 1px;
transform: translateY(-50%);
}
.package_wrap .natural_content .title {background: #95a082;}
.package_wrap .natural_content .title p {color: #95a082;}
.package_wrap .natural_content .title p::after {background: #7a8a6a;}
.package_wrap .japandi_content .title {background: #c68f71;}
.package_wrap .japandi_content .title p {color: #c68f71;}
.package_wrap .japandi_content .title p::after {background: #c68f71;}
.package_wrap .hotel_content .title {background: #90767b;}
.package_wrap .hotel_content .title p {color: #90767b;}
.package_wrap .hotel_content .title p::after {background: #90767b;}
.package_wrap .industrial_content .title {background: #8c8c8c;}
.package_wrap .industrial_content .title p {color: #8c8c8c;}
.package_wrap .industrial_content .title p::after {background: #8c8c8c;}
.package_wrap .modern_content .title {background: #636977;}
.package_wrap .modern_content .title p {color: #636977;}
.package_wrap .modern_content .title p::after {background: #636977;}
/*content pic*/
.package_wrap .content .pic {
overflow: hidden;
}
.package_wrap .content .pic img {
transition: transform 0.8s ease, filter 0.8s ease;
height: auto;
width: 100%;
}
/*content des*/
.package_wrap .content .des {
background: #fff;
padding: 15px 10px;
}
.package_wrap .content .des p {
font-size: 1.5rem;
font-weight: bold;
line-height: 1.3em;
}

}/*close*/

@media (max-width:599px){

.package_wrap {
background: #f9f5ef;
padding: 10px 0 10px;
}
.package_wrap .link {
margin: 0 auto 50px;
max-width: 1500px;
width: 95%;
}
.package_wrap .link a {
display: block;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 5px 15px;
}
.package_wrap .link .arrow {
margin: 0 0 10px;
}
.package_wrap .link .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid #fff;
border-right: 2px solid #fff;
transform: rotate(45deg);
}

.package_wrap .link .green {
background: #95a082;
}
.package_wrap .link .orange {
background: #c68f71;
}
.package_wrap .link .purple {
background: #90767b;
}
.package_wrap .link .gley {
background: #8c8c8c;
}
.package_wrap .link .blue {
background: #636977;
}
/*content*/
.package_wrap .wrap {
margin: 0 auto 20px;
max-width: 1500px;
width: 95%;
}
.package_wrap .content {
margin: 0 0 4%;
width: 100%;
}
/*content title*/
.package_wrap .content .title {
display: flex;
justify-content: space-between;
margin: 0 0 10px;
padding: 10px 10px;
}
.package_wrap .content .title h4 {
color: #fff;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-size: 1.5rem;
font-weight: bold;
padding: 5px 0 0;
}
.package_wrap .content .title p {
background: #fff;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
padding: 0px 40px 2px 20px;
position: relative;
display: inline-block;
}
.package_wrap .content .title p::after {
content: "";
position: absolute;
top: 50%;
right: 10px;
width: 20px;   /* 線の長さ */
height: 1px;
transform: translateY(-50%);
}
.package_wrap .natural_content .title {background: #95a082;}
.package_wrap .natural_content .title p {color: #95a082;}
.package_wrap .natural_content .title p::after {background: #7a8a6a;}
.package_wrap .japandi_content .title {background: #c68f71;}
.package_wrap .japandi_content .title p {color: #c68f71;}
.package_wrap .japandi_content .title p::after {background: #c68f71;}
.package_wrap .hotel_content .title {background: #90767b;}
.package_wrap .hotel_content .title p {color: #90767b;}
.package_wrap .hotel_content .title p::after {background: #90767b;}
.package_wrap .industrial_content .title {background: #8c8c8c;}
.package_wrap .industrial_content .title p {color: #8c8c8c;}
.package_wrap .industrial_content .title p::after {background: #8c8c8c;}
.package_wrap .modern_content .title {background: #636977;}
.package_wrap .modern_content .title p {color: #636977;}
.package_wrap .modern_content .title p::after {background: #636977;}
/*content pic*/
.package_wrap .content .pic {
overflow: hidden;
}
.package_wrap .content .pic img {
transition: transform 0.8s ease, filter 0.8s ease;
height: auto;
width: 100%;
}
/*content des*/
.package_wrap .content .des {
background: #fff;
padding: 10px 10px;
}
.package_wrap .content .des p {
font-size: 1.3rem;
font-weight: bold;
line-height: 1.4em;
}
}/*close*/

/*----------------------
▼package_detail▼
----------------------*/
@media (min-width:960px){
.detail_wrap {
padding: 50px 0;
margin: 0 auto;
max-width: 1000px;
width: 95%;
}
.detail_wrap .title {
margin: 0 0 50px;
}
.detail_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 5rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.detail_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
/*link*/
.detail_wrap .link {
padding: 25px 20px;
background: rgba(230,230,230,1.00);
margin: 0 0 30px;
}
.detail_wrap .link a {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #fff;
font-size: 1.5rem;
font-weight: bold;
padding: 10px 20px;
margin: 20px 10px 0 0;
}
.detail_wrap .link .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid #fff;
border-right: 2px solid #fff;
transform: rotate(-45deg);
}
.detail_wrap .link .green {
background: #95a082;
}
.detail_wrap .link .orange {
background: #c68f71;
}
.detail_wrap .link .purple {
background: #90767b;
}
.detail_wrap .link .gley {
background: rgba(100,100,100,1.00);
}
.detail_wrap .link .blue {
background: #636977;
}
.detail_wrap .link .noactive {
background: rgba(180,180,180,1.00);
}
/*h4*/
.detail_wrap h4 {
font-size: 2.5rem;
font-weight: bold;
line-height: 1.5em;
margin: 0 0 50px;
}
.detail_wrap h4 span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
/*link_2*/
.detail_wrap .link_2 {
margin: 0 0 30px;
}
.detail_wrap .link_2 a {
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 7px 15px;
margin: 20px 10px 0 0;
}
.detail_wrap .link_2 .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid rgba(100,100,100,1.00);
border-right: 2px solid rgba(100,100,100,1.00);
transform: rotate(-45deg);
}
.detail_wrap .link_2 .green {
background: #95a082;
}
.detail_wrap .link_2 .orange {
background: #c68f71;
}
.detail_wrap .link_2 .purple {
background: #90767b;
}
.detail_wrap .link_2 .gley {
background: rgba(100,100,100,1.00);
}
.detail_wrap .link_2 .blue {
background: #636977;
}

.detail_wrap .link_2 .noactive {
border: solid thin rgba(150,150,150,1.00);
color: rgba(100,100,100,1.00);
}
/*des*/
.detail_wrap .des {
margin: 0 0 50px;
}
.detail_wrap .des dl {
display:flex;
flex-wrap:wrap;
border-top: solid thin rgba(150,150,150,1.00);
border-bottom: solid thin rgba(150,150,150,1.00);
padding: 15px 0;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl dt {
padding: 3px 0;
width: 150px;
}
.detail_wrap .des dl dd {
padding: 3px 0;
width: calc(100% - 150px);
}
.detail_wrap .des dl .green {
color: #95a082;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .orange {
color: #c68f71;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .purple {
color: #90767b;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .gley {
color: #8c8c8c;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .blue {
color: #636977;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl dd .green_kagu {
background: #95a082;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .orange_kagu {
background: #c68f71;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .purple_kagu {
background: #90767b;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .gley_kagu {
background: #8c8c8c;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .blue_kagu {
background: #636977;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
/*txt*/
.detail_wrap .txt p {
font-size: 2.5rem;
font-weight: bold;
line-height: 1.5em;
margin: 0 0 50px;
}
.detail_wrap .txt p span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
/*pic*/
.detail_wrap .pic_1 img,
.detail_wrap .pic_2 img,
.detail_wrap .pic_3 img {
height: auto;
width: 100%;
}
.detail_wrap .pic_1,
.detail_wrap .pic_2 {
margin: 0 0 40px;
}
/*miratap*/
.detail_wrap .miratap_wrap {
margin: 80px 0 0;
}
.detail_wrap .miratap_wrap .miratap_spec {
display: inline-block;
color: #fff;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-style: italic;
font-size: 1.5rem;
font-weight: bold;
background: #c68f71;
border-radius: 100vh;
padding: 5px 25px;
margin: 0 0 10px;
}
.detail_wrap .miratap_wrap h4 {
margin: 0 0 30px;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.detail_wrap {
padding: 50px 0;
margin: 0 auto;
max-width: 1000px;
width: 95%;
}
.detail_wrap .title {
margin: 0 0 50px;
}
.detail_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.detail_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
/*link*/
.detail_wrap .link {
padding: 25px 20px;
background: rgba(230,230,230,1.00);
margin: 0 0 30px;
}
.detail_wrap .link a {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #fff;
font-size: 1.5rem;
font-weight: bold;
padding: 10px 20px;
margin: 20px 10px 0 0;
}
.detail_wrap .link .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid #fff;
border-right: 2px solid #fff;
transform: rotate(-45deg);
}
.detail_wrap .link .green {
background: #95a082;
}
.detail_wrap .link .orange {
background: #c68f71;
}
.detail_wrap .link .purple {
background: #90767b;
}
.detail_wrap .link .gley {
background: rgba(100,100,100,1.00);
}
.detail_wrap .link .blue {
background: #636977;
}
.detail_wrap .link .noactive {
background: rgba(180,180,180,1.00);
}
/*h4*/
.detail_wrap h4 {
font-size: 2.5rem;
font-weight: bold;
line-height: 1.5em;
margin: 0 0 50px;
}
.detail_wrap h4 span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
/*link_2*/
.detail_wrap .link_2 {
margin: 0 0 30px;
}
.detail_wrap .link_2 a {
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 7px 15px;
margin: 20px 10px 0 0;
}
.detail_wrap .link_2 .arrow::after {
content:"";
display: inline-block;
width: 6px;
height: 6px;
margin: 0 0 2px 10px;
border-bottom: 2px solid rgba(100,100,100,1.00);
border-right: 2px solid rgba(100,100,100,1.00);
transform: rotate(-45deg);
}
.detail_wrap .link_2 .green {
background: #95a082;
}
.detail_wrap .link_2 .orange {
background: #c68f71;
}
.detail_wrap .link_2 .purple {
background: #90767b;
}
.detail_wrap .link_2 .gley {
background: rgba(100,100,100,1.00);
}
.detail_wrap .link_2 .blue {
background: #636977;
}

.detail_wrap .link_2 .noactive {
border: solid thin rgba(150,150,150,1.00);
color: rgba(100,100,100,1.00);
}
/*des*/
.detail_wrap .des {
margin: 0 0 50px;
}
.detail_wrap .des dl {
display:flex;
flex-wrap:wrap;
border-top: solid thin rgba(150,150,150,1.00);
border-bottom: solid thin rgba(150,150,150,1.00);
padding: 15px 0;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl dt {
padding: 3px 0;
width: 150px;
}
.detail_wrap .des dl dd {
padding: 3px 0;
width: calc(100% - 150px);
}
.detail_wrap .des dl .green {
color: #95a082;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .orange {
color: #c68f71;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .purple {
color: #90767b;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .gley {
color: #8c8c8c;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .blue {
color: #636977;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl dd .green_kagu {
background: #95a082;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .orange_kagu {
background: #c68f71;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .purple_kagu {
background: #90767b;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .gley_kagu {
background: #8c8c8c;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .blue_kagu {
background: #636977;
color: #fff;
margin: 0 8px 0 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
/*txt*/
.detail_wrap .txt p {
font-size: 2.5rem;
font-weight: bold;
line-height: 1.5em;
margin: 0 0 50px;
}
.detail_wrap .txt p span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
/*pic*/
.detail_wrap .pic_1 img,
.detail_wrap .pic_2 img,
.detail_wrap .pic_3 img {
height: auto;
width: 100%;
}
.detail_wrap .pic_1,
.detail_wrap .pic_2 {
margin: 0 0 40px;
}
/*miratap*/
.detail_wrap .miratap_wrap {
margin: 80px 0 0;
}
.detail_wrap .miratap_wrap .miratap_spec {
display: inline-block;
color: #fff;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-style: italic;
font-size: 1.5rem;
font-weight: bold;
background: #c68f71;
border-radius: 100vh;
padding: 5px 25px;
margin: 0 0 10px;
}
.detail_wrap .miratap_wrap h4 {
margin: 0 0 30px;
}
}/*close*/

@media (max-width:599px){
.detail_wrap {
padding: 30px 0 0;
margin: 0 auto;
max-width: 1000px;
width: 95%;
}
.detail_wrap .title {
margin: 0 0 30px;
}
.detail_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 3.5rem;
font-weight: bold;
padding: 0 0 0 20px;
line-height: 1em;
}
.detail_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
/*link*/
.detail_wrap .link {
padding: 10px 10px;
background: rgba(230,230,230,1.00);
margin: 0 0 30px;
}
.detail_wrap .link a {
display: block;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 7px 15px;
margin: 0 0 7px 0;
}
.detail_wrap .link .arrow::after {
content:"";
display: inline-block;
width: 5px;
height: 5px;
margin: 0 0 1px 10px;
border-bottom: 2px solid #fff;
border-right: 2px solid #fff;
transform: rotate(-45deg);
}
.detail_wrap .link .green {
background: #95a082;
}
.detail_wrap .link .orange {
background: #c68f71;
}
.detail_wrap .link .purple {
background: #90767b;
}
.detail_wrap .link .gley {
background: rgba(100,100,100,1.00);
}
.detail_wrap .link .blue {
background: #636977;
}
.detail_wrap .link .noactive {
background: rgba(180,180,180,1.00);
padding: 2px 15px;
}
/*h4*/
.detail_wrap h4 {
font-size: 2rem;
font-weight: bold;
line-height: 1.3em;
margin: 0 0 30px;
}
.detail_wrap h4 span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
/*link_2*/
.detail_wrap .link_2 {
margin: 0 0 30px;
}
.detail_wrap .link_2 a {
display: block;
color: #fff;
font-size: 1.3rem;
font-weight: bold;
padding: 7px 10px;
margin: 0 0 7px 0;

}
.detail_wrap .link_2 .arrow::after {
content:"";
display: inline-block;
width: 5px;
height: 5px;
margin: 0 0 1px 10px;
border-bottom: 2px solid rgba(100,100,100,1.00);
border-right: 2px solid rgba(100,100,100,1.00);
transform: rotate(-45deg);
}
.detail_wrap .link_2 .green {
background: #95a082;
}
.detail_wrap .link_2 .orange {
background: #c68f71;
}
.detail_wrap .link_2 .purple {
background: #90767b;
}
.detail_wrap .link_2 .gley {
background: rgba(100,100,100,1.00);
}
.detail_wrap .link_2 .blue {
background: #636977;
}

.detail_wrap .link_2 .noactive {
border: solid thin rgba(150,150,150,1.00);
color: rgba(100,100,100,1.00);
}
/*des*/
.detail_wrap .des {
margin: 0 0 40px;
}
.detail_wrap .des dl {
border-top: solid thin rgba(150,150,150,1.00);
border-bottom: solid thin rgba(150,150,150,1.00);
padding: 5px 0 0;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dt {
color: rgba(150,150,150,1.00);
padding: 5px 10px;
}
.detail_wrap .des dl dd {
border-bottom: dashed thin rgba(150,150,150,1.00);
padding: 0 10px 10px;
}
.detail_wrap .des dl dd:last-of-type {
border: none;
}
.detail_wrap .des dl .green {
color: #95a082;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .orange {
color: #c68f71;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .purple {
color: #90767b;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .gley {
color: #8c8c8c;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl .blue {
color: #636977;
font-size: 1.5rem;
font-weight: bold;
}
.detail_wrap .des dl dd .green_kagu {
display: inline-block;
background: #95a082;
color: #fff;
margin: 6px 8px 6px 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .orange_kagu {
display: inline-block;
background: #c68f71;
color: #fff;
margin: 6px 8px 6px 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .purple_kagu {
display: inline-block;
background: #90767b;
color: #fff;
margin: 6px 8px 6px 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .gley_kagu {
display: inline-block;
background: #8c8c8c;
color: #fff;
margin: 6px 8px 6px 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
.detail_wrap .des dl dd .blue_kagu {
display: inline-block;
background: #636977;
color: #fff;
margin: 6px 8px 6px 0;
padding: 0 15px 2px;
border-radius: 100vh;
font-size: 1.3rem;
font-weight: bold;
}
/*txt*/
.detail_wrap .txt p {
font-size: 2rem;
font-weight: bold;
line-height: 1.3em;
margin: 0 0 30px;
}
.detail_wrap .txt p span {
background: linear-gradient(transparent 60%, #faed00 60%);
}
/*pic*/
.detail_wrap .pic_1 img,
.detail_wrap .pic_2 img,
.detail_wrap .pic_3 img {
height: auto;
width: 100%;
}
.detail_wrap .pic_1,
.detail_wrap .pic_2 {
margin: 0 0 40px;
}
/*miratap*/
.detail_wrap .miratap_wrap {
margin: 50px 0 0;
}
.detail_wrap .miratap_wrap .miratap_spec {
display: inline-block;
color: #fff;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-style: italic;
font-size: 1.5rem;
font-weight: bold;
background: #c68f71;
border-radius: 100vh;
padding: 5px 15px;
margin: 0 0 10px;
}
.detail_wrap .miratap_wrap h4 {
margin: 0 0 30px;
}
}/*close*/

/*----------------------
▼qa▼
----------------------*/
@media (min-width:960px){
.qa_wrap {
margin: 100px auto;
max-width: 1500px;
width: 95%;

}
.qa_wrap .title {
display: flex;
align-items: center;
margin: 0 0 100px;
}
.qa_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 5rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.qa_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 20px 0 0;
}
.qa_wrap .title .left {
margin: 0 100px 0 0;
}
.qa_wrap .title .right {
margin: 0 0 20px 0;
}
.qa_wrap .title p {
font-family: myfont_semi;
font-size: 2.5rem;
line-height: 1.5em;
}
/*box*/
.qa_wrap .box {
display: flex;
justify-content: space-between;
}
.qa_wrap .box .left,
.qa_wrap .box .right {
width: 48%;
}
.qa_wrap .box .right {
margin: 40px 0 0;
width: 48%;
}
.qa_wrap .box article {
border: solid thin rgba(180,180,180,1.00);
box-shadow: 10px 10px #e7e7e7;
margin: 0 0 30px;
padding: 30px;
}
.qa_wrap .box article h4 {
font-size: 2rem;
font-weight: bold;
margin: 0 0 20px;
}
.qa_wrap .box article h4 span {
display: inline-block;
background: #cf010b;
color: #fff;
border-radius: 100vh;
text-align: center;
margin: 0 10px 0 0;
height: 30px;
width: 30px;
}
.qa_wrap .box article p {
font-size: 1.5rem;
font-weight: bold;
line-height: 2em;
}
.qa_wrap .box article p span {
border-bottom: solid thin rgba(150,150,150,1.00);
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.qa_wrap {
margin: 50px auto;
max-width: 1500px;
width: 95%;
}
.qa_wrap .title {
display: flex;
align-items: center;
margin: 0 0 50px;
}
.qa_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
}
.qa_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
.qa_wrap .title .left {
margin: 0 50px 0 0;
width: 30%;
}
.qa_wrap .title .right {
margin: 0 0 20px 0;
}
.qa_wrap .title p {
font-family: myfont_semi;
font-size: 2rem;
line-height: 1.5em;
}
/*box*/
.qa_wrap .box {
display: flex;
justify-content: space-between;
}
.qa_wrap .box .left,
.qa_wrap .box .right {
width: 48%;
}
.qa_wrap .box .right {
margin: 40px 0 0;
width: 48%;
}
.qa_wrap .box article {
border: solid thin rgba(180,180,180,1.00);
box-shadow: 10px 10px #e7e7e7;
margin: 0 0 30px;
padding: 30px;
}
.qa_wrap .box article h4 {
font-size: 2rem;
font-weight: bold;
margin: 0 0 20px;
display: flex;          /* Qとテキストを横並びにする */
align-items: flex-start; 
}
.qa_wrap .box article h4 span {
display: inline-block;
background: #cf010b;
color: #fff;
border-radius: 100vh;
text-align: center;
margin: 0 10px 0 0;
height: 30px;
width: 30px;
flex-shrink: 0;         /* 文字数が増えてもQが潰れないように固定 */
}
.qa_wrap .box article p {
font-size: 1.5rem;
font-weight: bold;
line-height: 2em;
}
.qa_wrap .box article p span {
border-bottom: solid thin rgba(150,150,150,1.00);
}

}/*close*/

@media (max-width:599px){
.qa_wrap {
margin: 50px auto;
max-width: 1500px;
width: 95%;
}
.qa_wrap .title {
margin: 0 0 30px;
}
.qa_wrap .title h3 {
border-left: solid 2px rgba(0,0,0,1.00);
font-family: "Zen Kaku Gothic New", sans-serif;
font-size: 4rem;
font-weight: bold;
padding: 0 0 0 20px;
margin: 0 0 30px;
}
.qa_wrap .title h3 span {
display: block;
font-size: 1.5rem;
font-weight: bold;
padding: 15px 0 0;
}
.qa_wrap .title .left {
}
.qa_wrap .title .right {
}
.qa_wrap .title p {
font-family: myfont_semi;
font-size: 1.3rem;
line-height: 1.5em;
}
/*box*/
.qa_wrap .box {
}
.qa_wrap .box .left,
.qa_wrap .box .right {
}
.qa_wrap .box .right {
margin: 40px 0 0;
}
.qa_wrap .box article {
border: solid thin rgba(180,180,180,1.00);
box-shadow: 10px 10px #e7e7e7;
margin: 0 0 30px;
padding: 20px;
}
.qa_wrap .box article h4 {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 15px;
display: flex;          /* Qとテキストを横並びにする */
align-items: flex-start; 
}
.qa_wrap .box article h4 span {
display: inline-block;
background: #cf010b;
color: #fff;
border-radius: 100vh;
text-align: center;
margin: 0 10px 0 0;
height: 30px;
width: 30px;
flex-shrink: 0;         /* 文字数が増えてもQが潰れないように固定 */
}
.qa_wrap .box article p {
font-size: 1.3rem;
font-weight: bold;
line-height: 2em;
}
.qa_wrap .box article p span {
border-bottom: solid thin rgba(150,150,150,1.00);
}

}/*close*/

/*----------------------
▼finish▼
----------------------*/
@media (min-width:960px){

.finish_wrap {
width: 100%;
overflow-x: hidden;
}
.finish_wrap .pic {
margin-left: calc(50% - 50vw);
width: 50vw;
}
.finish_wrap .pic img {
object-fit: cover;
height: 100%;
width: 100%;
}
.finish_wrap .range {
display: flex;
justify-content: space-between;
margin: 50px auto 100px;
width: 95%;
max-width: 1500px;
}
.finish_wrap .txt {
writing-mode: vertical-rl;
padding: 30px 5% 0;
width: 50%;
}
.finish_wrap .txt p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 0 2em;
line-height: 2.3em;
}
.finish_wrap .txt .title {
font-size: 2.3rem;
font-weight: bold;
line-height: 1.5em;
}

}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.finish_wrap {
width: 100%;
}
.finish_wrap .pic {
width: 100%;
}
.finish_wrap .pic img {
object-fit: cover;
height: 100%;
width: 100%;
}
.finish_wrap .range {
margin: 50px auto 50px;
width: 95%;
max-width: 1500px;
}
.finish_wrap .txt {
position: relative;
top: -50px;
left: 50%;
transform: translate(-50%, -0%);
background: #fff;
writing-mode: vertical-rl;
padding: 30px 50px 0;
}
.finish_wrap .txt p {
font-size: 1.5rem;
font-weight: bold;
margin: 0 0 0 2em;
line-height: 2.3em;
}
.finish_wrap .txt p:last-of-type {
margin: 0;
}
.finish_wrap .txt .title {
font-size: 2.3rem;
font-weight: bold;
line-height: 1.5em;
}
}/*close*/

@media (max-width:599px){
.finish_wrap {
width: 100%;
}
.finish_wrap .pic {
margin: 0 0 30px;
width: 100%;
}
.finish_wrap .pic img {
object-fit: cover;
height: 100%;
width: 100%;
}
.finish_wrap .range {
margin: 50px auto 50px;
width: 95%;
}
.finish_wrap .txt {
}
.finish_wrap .txt p {
font-size: 1.3rem;
font-weight: bold;
margin: 0 0 1.5em 0;
line-height: 2em;
}
.finish_wrap .txt p:last-of-type {
margin: 0;
}
.finish_wrap .txt .title {
font-size: 1.5rem;
font-weight: bold;
line-height: 1.5em;
}
}/*close*/

/*----------------------
▼footer▼
----------------------*/
@media (min-width:960px){
.foot_wrap {
margin: 0 auto;
padding: 30px 0 130px;
width: 95%;
max-width: 1000px;
display: flex;
justify-content: space-between;
}
.foot_under {
padding: 30px 0 50px;
}
.foot_wrap nav a {
display: inline-block;
border-left: solid thin rgba(100,100,100,1.00);
font-size: 1.2rem;
font-weight: bold;
padding: 0 15px;
}
.foot_wrap nav a:last-of-type {
border-right: solid thin rgba(100,100,100,1.00);
}
.foot_wrap nav a img {
margin: 0 0 2px 7px;
height: .7em;
}
small {
font-size: 1.2rem;
font-weight: bold;
}


}/*close*/

@media (min-width: 600px) and (max-width: 959px) {
.foot_wrap {
margin: 0 auto;
padding: 30px 0 130px;
width: 95%;
max-width: 1000px;
}
.foot_under {
padding: 30px 0 50px;
}
.foot_wrap nav a {
display: inline-block;
border-left: solid thin rgba(100,100,100,1.00);
font-size: 1.3rem;
font-weight: bold;
padding: 0 20px;
margin: 0 0 15px;
}
.foot_wrap nav a:last-of-type {
border-right: solid thin rgba(100,100,100,1.00);
}
.foot_wrap nav a img {
margin: 0 0 2px 7px;
height: .7em;
}
small {
display: block;
margin: 20px 0 0;
font-size: 1.5rem;
font-weight: bold;
}
}/*close*/

@media (max-width:599px){
.foot_wrap {
margin: 0 auto;
padding: 30px 0 130px;
width: 95%;
max-width: 1000px;
}
.foot_under {
padding: 30px 0 30px;
}

.foot_wrap nav a {
display: inline-block;
border-right: solid thin rgba(100,100,100,1.00);
font-size: 1.2rem;
font-weight: bold;
margin: 0 0 10px;
padding: 0 10px;
}
.foot_wrap nav a:first-of-type {
}
.foot_wrap nav a img {
margin: 0 0 2px 7px;
height: .7em;
}
small {
display: block;
margin: 20px 0 0 15px;
font-size: 1.3rem;
font-weight: bold;
}

}/*close*/

