/*
Theme Name: SOTSU MEDICAL CO.,LTD.
Author: Sotsu Medical
Author URI: https://www.st-medical.jp/reserch-develop/
Description:
Version: 1.0
*/

/***************************************************************
*
* ブラウザのデフォルトCSSをリセットします
*
***************************************************************/

.fs{
font-family: 'Times New Roman', 'YuMincho', 'Hiragino Mincho ProN', 'Yu Mincho', 'MS PMincho', serif !important;
}
.fg{
font-family: 'Helvetica Neue', 'Helvetica', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Arial', 'Yu Gothic', 'Meiryo', sans-serif !important;
}

@media screen and (max-width: 767px) {
}
@media screen and (min-width: 768px) {
}


/* A -------------------------------------------------------------- */
@media screen and (max-width: 767px) {
.a1{
position: relative;
height: 140vw;
}
.a1 img{
width: 90vw;
position: absolute;
top: -17.8vw;
right: 0;
}
.a1_inner{
position: absolute;
top: 18vw;
width: 100%;
}
.a1_box{
padding: 0 4vw 0 5vw;
border-left: solid 1px #c4cacd;
}
.a1_ttl{
font-size: 5.3vw;
line-height: 7.5vw;
letter-spacing: .3vw;
color: #444446;
padding-bottom: 4.5vw;
}
.a1_txt{
font-size: 2.7vw;
line-height: 5vw;
letter-spacing: .15vw;
color: #444446;
}
.a1_box2 img{
width: 100vw;
position: absolute;
left: 0;
top: 60vw;
}
.a1_box3 img{
width: 50vw;
position: absolute;
right: 0;
top: 78vw;
}
.a1_box4 img{
width: 50vw;
position: absolute;
left: 0vw;
top: 10vw;
}
.b1{
padding: 10vw 0vw;
}
.b1 img{
width:100%;
}
.b1_inner{

top: 6.8vw;
width: 100%;
}
.b1_box{
padding: 0 0vw 0 0vw;
}
.b1_ttl_box{
background: #edefef;
padding: 3vw 4vw;
}
.b1_ttl{
font-size: 4.5vw;
line-height: 7vw;
letter-spacing: .6vw;
color: #444446;
padding: 6vw 4vw 4vw;
}
.b1_ttl2{
font-size: 3.1vw;
line-height: 3.1vw;
letter-spacing: .05vw;
float: left;
padding-left: 21vw;
}
.b1_ttl2_line{
font-size: 2.4vw;
line-height: 3.4vw;
display: flex;
align-items: center;
width: 30vw;
padding-left: 1.8vw;
}
.b1_ttl2_line::before,
.b1_ttl2_line::after {
content: '';
flex-grow: 1;
height: 1px;
background: #444446;
margin: 0 0.4vw;
}
.b1_txt{
font-size: 3vw;
line-height: 5.4vw;
letter-spacing: 0.2vw;
color: #444446;
padding: 0vw 4vw 4vw 4vw;
}
.b1_box0{
padding:0vw 4vw;
}
.b1_box2 img{
width: 61vw;
float: left;
}
.b1_box3 img{
width: 26.5vw;
float: left;
}
.b1_box4 img{
width: 100%;
padding-bottom: 15vw;
}
.c1{
padding:0vw 0vw 10vw;
}
.c1_box{
padding: 0vw 1vw;
}
.c1_box img{
width:100%;
}
.c1_box2{
padding: 1vw 1vw;
}

.c1_box3 img{
width:100%;
padding: 2vw 6vw 2vw;
}
.c1_box4 img{
width:100%;
padding: 6vw 6vw 6vw;
}
.c1_ttl_box{
background: 
	#edefef;
padding: 3vw 4vw;
}
.c1_ttl2{
font-size: 3.1vw;
line-height: 3.1vw;
letter-spacing: .05vw;
float: left;
padding-left: 21vw;
}
.c1_ttl2_line{
font-size: 2.4vw;
line-height: 3.4vw;
display: flex;
align-items: center;
width: 30vw;
padding-left: 1.8vw;
}
.c1_ttl2_line::before,
.c1_ttl2_line::after {
content: '';
flex-grow: 1;
height: 1px;
background: #444446;
margin: 0 1.9vw;
}
.d1{
margin-bottom: 10vw;
}
.d1 img{
width:100%;
}
.d1_inner{
width: 100%;
}
.d1_box{
padding: 0 0vw 0 0vw;
}
.d1_ttl{
font-size: 4.5vw;
line-height: 7vw;
letter-spacing: .6vw;
color: #444446;
padding: 6vw 4vw 4vw;
}
.d1_ttl_box{
background: 
	#edefef;
padding: 3vw 4vw;
}
.d1_ttl2{
font-size: 3.1vw;
line-height: 3.1vw;
letter-spacing: .05vw;
float: left;
padding-left: 9vw;
}
.d1_ttl2_line{
font-size: 2.4vw;
line-height: 3.4vw;
display: flex;
align-items: center;
width: 40vw;
padding-left: 1.8vw;
}
.d1_ttl2_line::before,
.d1_ttl2_line::after {
content: '';
flex-grow: 1;
height: 1px;
background: #444446;
margin: 0 1.9vw;
}
.d1_txt{
font-size: 3vw;
line-height: 5.4vw;
letter-spacing: 0.2vw;
color: #444446;
padding: 0vw 4vw 4vw 4vw;
}
.d1_box2 img{
width: 100%;
padding: 6vw 6vw 0vw;
}
}
@media screen and (min-width: 768px) {
.a1{
position: relative;
height: 57vw;
}
.a1 img{
width: 20vw;
position: absolute;
top: -8vw;
right: 0vw;
}
.a1_inner{
position: absolute;
top: 18vw;
width: 100%;
}
.a1_box{
padding: 0 4vw 0 5vw;
border-left: solid 1px #c4cacd;
}
.a1_ttl{
font-size: 2.3vw;
line-height: 3.5vw;
letter-spacing: .3vw;
color: #444446;
padding-bottom: 2.4vw;
}
.a1_txt{
font-size: 1.0vw;
line-height: 2.0vw;
letter-spacing: .05vw;
color: #444446;
}
.a1_box2 img{
width: 44vw;
position: absolute;
left: 0;
top: 6vw;
}
.a1_box3 img{
width: 46vw;
position: absolute;
left: 0;
top: 6vw;
}
.a1_box4 img{
width: 50vw;
position: absolute;
left: 0vw;
top: 10vw;
}
.b1{
position:relative;
margin-bottom: 10vw;
}
.b1 img{
width:100%;
}
.b1_inner{
position: absolute;
top: 6.8vw;
width: 100%;
}
.b1_box{
padding: 0 0vw 0 3vw;
}
.b1_ttl{
font-size: 2.0vw;
line-height: 3.0vw;
letter-spacing: .2vw;
color: #444446;
padding-bottom: 2vw;
}
.b1_ttl2{
font-size: 1.1vw;
line-height: 1.1vw;
letter-spacing: 0.05vw;
padding-bottom: 2.0vw;
float: left;
}
.b1_ttl2_line{
font-size: .7vw;
line-height: 1.2vw;
display: flex;
align-items: center;
width: 11vw;
padding-left: 0.8vw;
}
.b1_ttl2_line::before,
.b1_ttl2_line::after {
content: '';
flex-grow: 1;
height: 1px;
background: #444446;
margin: 0 0.4vw;
}
.b1_txt{
font-size: 1vw;
line-height: 2.1vw;
letter-spacing: .03vw;
color: #444446;
}
.b1_box2 img{
width: 58vw;
position: absolute;
right: 0vw;
top: 0vw;
}
.b1_box3 img{
width: 27.5vw;
position: absolute;
right: 21vw;
top: 4.5vw;
}
.b1_box4 img{
width: 11vw;
position: absolute;
right: 11vw;
top: 5vw;
}
.c1{
padding:0vw 0vw 10vw;
}
.c1_box{
padding: 0vw 1vw;
}
.c1_box img{
width:100%;
}
.c1_box2{
padding: 1vw 1vw;
}
.c1_box3{
padding: 6vw 1vw 0vw;
}
.c1_box3 img{
width:100%;
}
.c1_ttl2_line{
font-size: .7vw;
line-height: 1.2vw;
display: flex;
align-items: center;
width: 8vw;
padding-left: .8vw;
}
.c1_ttl2_line::before,
.c1_ttl2_line::after {
content: '';
flex-grow: 1;
height: 1px;
background: #444446;
margin: 0px 0.4vw;
}
.d1{
position:relative;
margin-bottom: 10vw;
}
.d1 img{
width:100%;
}
.d1_inner{
position: absolute;
top: 6.8vw;
width: 100%;
}
.d1_box{
padding: 0 0vw 0 3vw;
}
.d1_ttl{
font-size: 2.0vw;
line-height: 3.0vw;
letter-spacing: .2vw;
color: #444446;
padding-bottom: 2vw;
}
.d1_ttl2{
font-size: 1.1vw;
line-height: 1.1vw;
letter-spacing: 0.05vw;
padding-bottom: 2.0vw;
float: left;
}
.d1_ttl2_line{
font-size: .7vw;
line-height: 1.2vw;
display: flex;
align-items: center;
width: 11vw;
padding-left: 0.8vw;
}
.d1_ttl2_line::before,
.d1_ttl2_line::after {
content: '';
flex-grow: 1;
height: 1px;
background: #444446;
margin: 0 0.4vw;
}
.d1_txt{
font-size: 1vw;
line-height: 2.1vw;
letter-spacing: .03vw;
color: #444446;
}
.d1_box2 img{
width: 39vw;
position: absolute;
right: 11vw;
top: 5.2vw;
}
}


/* A -------------------------------------------------------------- */